]> git.sesse.net Git - ffmpeg/blobdiff - libavformat/dvenc.c
movenc: Add a flag for using default-base-is-moof in tfhd atoms
[ffmpeg] / libavformat / dvenc.c
index 27a444ea1ffefec35fbe7faafc0d3a1184d8543b..a33973f19266945af28d43bba980a9b09c3a11fa 100644 (file)
@@ -33,7 +33,7 @@
 #include "avformat.h"
 #include "internal.h"
 #include "libavcodec/dv_profile.h"
-#include "libavcodec/dvdata.h"
+#include "libavcodec/dv.h"
 #include "dv.h"
 #include "libavutil/fifo.h"
 #include "libavutil/mathematics.h"
 #define MAX_AUDIO_FRAME_SIZE 192000 // 1 second of 48khz 32bit audio
 
 struct DVMuxContext {
-    const DVprofile*  sys;           /* current DV profile, e.g.: 525/60, 625/50 */
+    const AVDVProfile*  sys;           /* current DV profile, e.g.: 525/60, 625/50 */
     int               n_ast;         /* number of stereo audio streams (up to 2) */
     AVStream         *ast[2];        /* stereo audio streams */
     AVFifoBuffer     *audio_data[2]; /* FIFO for storing excessive amounts of PCM */
     int               frames;        /* current frame number */
     int64_t           start_time;    /* recording start time */
-    int               has_audio;     /* frame under contruction has audio */
-    int               has_video;     /* frame under contruction has video */
-    uint8_t           frame_buf[DV_MAX_FRAME_SIZE]; /* frame under contruction */
+    int               has_audio;     /* frame under construction has audio */
+    int               has_video;     /* frame under construction has video */
+    uint8_t           frame_buf[DV_MAX_FRAME_SIZE]; /* frame under construction */
 };
 
 static const int dv_aaux_packs_dist[12][9] = {
@@ -67,7 +67,7 @@ static const int dv_aaux_packs_dist[12][9] = {
     { 0x50, 0x51, 0x52, 0x53, 0xff, 0xff, 0xff, 0xff, 0xff },
 };
 
-static int dv_audio_frame_size(const DVprofile* sys, int frame)
+static int dv_audio_frame_size(const AVDVProfile* sys, int frame)
 {
     return sys->audio_samples_dist[frame % (sizeof(sys->audio_samples_dist) /
                                             sizeof(sys->audio_samples_dist[0]))];
@@ -328,7 +328,7 @@ static DVMuxContext* dv_init_mux(AVFormatContext* s)
                           c->ast[i]->codec->channels    != 2))
             goto bail_out;
     }
-    c->sys = avpriv_dv_codec_profile(vst->codec);
+    c->sys = av_dv_codec_profile(vst->codec->width, vst->codec->height, vst->codec->pix_fmt);
     if (!c->sys)
         goto bail_out;
 
@@ -388,7 +388,6 @@ static int dv_write_packet(struct AVFormatContext *s, AVPacket *pkt)
                               pkt->data, pkt->size, &frame);
     if (fsize > 0) {
         avio_write(s->pb, frame, fsize);
-        avio_flush(s->pb);
     }
     return 0;
 }