@@ -29,6 +29,8 @@
#include "wmv2.h"
#include "wmv2enc.h"
+#define WMV2_EXTRADATA_SIZE 4
+
typedef struct WMV2EncContext {
MSMPEG4EncContext msmpeg4;
WMV2Context common;
@@ -49,7 +51,7 @@ static int encode_ext_header(WMV2EncContext *w)
PutBitContext pb;
int code;
- init_put_bits(&pb, s->avctx->extradata, s->avctx->extradata_size);
+ init_put_bits(&pb, s->avctx->extradata, WMV2_EXTRADATA_SIZE);
put_bits(&pb, 5, s->avctx->time_base.den / s->avctx->time_base.num); // yes 29.97 -> 29
put_bits(&pb, 11, FFMIN(s->bit_rate / 1024, 2047));
@@ -80,7 +82,7 @@ static av_cold int wmv2_encode_init(AVCodecContext *avctx)
ff_wmv2_common_init(s);
- avctx->extradata_size = 4;
+ avctx->extradata_size = WMV2_EXTRADATA_SIZE;
avctx->extradata = av_mallocz(avctx->extradata_size + AV_INPUT_BUFFER_PADDING_SIZE);
if (!avctx->extradata)
return AVERROR(ENOMEM);
This also allows the compiler to optimize the implicit checks performed by the PutBit-API away (Clang does so). Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com> --- libavcodec/wmv2enc.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)