Просмотр исходного кода

lavc/dvdec: export bitrate

Changes the result of fate-mxf-probe-dv25, where the bitrate is now
exported.

Also changes the result of fate-bsf-dv-error-marker, where the exported
bitrate is now different. Note that the codec layer bitrate does not
match the container bitrate, because container timing is 25fps, while
the DV profile is 50.
Anton Khirnov 1 год назад
Родитель
Сommit
9b625ab679
3 измененных файлов с 5 добавлено и 2 удалено
  1. 3 0
      libavcodec/dvdec.c
  2. 1 1
      tests/fate/dvvideo.mak
  3. 1 1
      tests/ref/fate/mxf-probe-dv25

+ 3 - 0
libavcodec/dvdec.c

@@ -650,6 +650,9 @@ static int dvvideo_decode_frame(AVCodecContext *avctx, AVFrame *frame,
     frame->pict_type    = AV_PICTURE_TYPE_I;
     avctx->pix_fmt      = s->sys->pix_fmt;
     avctx->framerate    = av_inv_q(s->sys->time_base);
+    avctx->bit_rate     = av_rescale_q(s->sys->frame_size,
+                                       (AVRational) { 8, 1 },
+                                       s->sys->time_base);
 
     ret = ff_set_dimensions(avctx, s->sys->width, s->sys->height);
     if (ret < 0)

+ 1 - 1
tests/fate/dvvideo.mak

@@ -1,7 +1,7 @@
 
 fate-bsf-dv-error-marker: CMD = md5 -i $(TARGET_SAMPLES)/dv/dvcprohd_720p50.mov -flags +bitexact -fflags +bitexact -c:v copy -bsf noise=100,dv_error_marker=color=blue -f avi
 fate-bsf-dv-error-marker: CMP = oneline
-fate-bsf-dv-error-marker: REF = 4e884d3e8045299d0d45ec920fa58a44
+fate-bsf-dv-error-marker: REF = 3190a334b1ceef2d9fd050a1590da7c6
 FATE_DVVIDEO-$(call ALLYES, MOV_DEMUXER DV_ERROR_MARKER_BSF NOISE_BSF AVI_MUXER) += fate-bsf-dv-error-marker
 
 FATE_SAMPLES_FFMPEG += $(FATE_DVVIDEO-yes)

+ 1 - 1
tests/ref/fate/mxf-probe-dv25

@@ -31,7 +31,7 @@ start_pts=0
 start_time=0.000000
 duration_ts=25
 duration=1.000000
-bit_rate=N/A
+bit_rate=28800000
 max_bit_rate=N/A
 bits_per_raw_sample=N/A
 nb_frames=N/A