aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarton Balint <cus@passwd.hu>2016-06-19 19:20:00 +0200
committerMarton Balint <cus@passwd.hu>2016-06-26 19:17:29 +0200
commit340cea9f22c162e10d120835661e132721b7454b (patch)
tree7c37d5c0f0cb13edbdf057d42a94657a79455b70
parente9394ca63dab3434bc8e869de019ecd86cb604ac (diff)
downloadffmpeg-n3.2-dev.tar.gz
avdevice/decklink_dec: fix bitrate calculationsn3.2-dev
Reviewed-by: Deti Fliegl <deti@fliegl.de> Signed-off-by: Marton Balint <cus@passwd.hu>
-rw-r--r--libavdevice/decklink_dec.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/libavdevice/decklink_dec.cpp b/libavdevice/decklink_dec.cpp
index 1c305f3f00..3b5d4be56a 100644
--- a/libavdevice/decklink_dec.cpp
+++ b/libavdevice/decklink_dec.cpp
@@ -563,15 +563,16 @@ av_cold int ff_decklink_read_header(AVFormatContext *avctx)
st->time_base.den = ctx->bmd_tb_den;
st->time_base.num = ctx->bmd_tb_num;
- st->codecpar->bit_rate = av_image_get_buffer_size((AVPixelFormat)st->codecpar->format, ctx->bmd_width, ctx->bmd_height, 1) * 1/av_q2d(st->time_base) * 8;
if (cctx->v210) {
st->codecpar->codec_id = AV_CODEC_ID_V210;
st->codecpar->codec_tag = MKTAG('V', '2', '1', '0');
+ st->codecpar->bit_rate = av_rescale(ctx->bmd_width * ctx->bmd_height * 64, st->time_base.den, st->time_base.num * 3);
} else {
st->codecpar->codec_id = AV_CODEC_ID_RAWVIDEO;
st->codecpar->format = AV_PIX_FMT_UYVY422;
st->codecpar->codec_tag = MKTAG('U', 'Y', 'V', 'Y');
+ st->codecpar->bit_rate = av_rescale(ctx->bmd_width * ctx->bmd_height * 16, st->time_base.den, st->time_base.num);
}
avpriv_set_pts_info(st, 64, 1, 1000000); /* 64 bits pts in us */