You've already forked FFmpeg
							
							
				mirror of
				https://github.com/FFmpeg/FFmpeg.git
				synced 2025-10-30 23:18:11 +02:00 
			
		
		
		
	avcodec/wmv2enc: Inline extradata size
This also enables 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>
This commit is contained in:
		| @@ -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); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user