contrib/ffmpeg/ffmpeg-x264_fix.patch
2008-12-19 23:51:51 +11:00

43 lines
1.8 KiB
Diff

---
libavcodec/libx264.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
Index: ffmpeg/libavcodec/libx264.c
===================================================================
--- ffmpeg.orig/libavcodec/libx264.c
+++ ffmpeg/libavcodec/libx264.c
@@ -162,7 +162,11 @@ X264_init(AVCodecContext *avctx)
x4->params.i_bframe = avctx->max_b_frames;
x4->params.b_cabac = avctx->coder_type == FF_CODER_TYPE_AC;
- x4->params.b_bframe_adaptive = avctx->b_frame_strategy;
+#if X264_BUILD < 62
+ x4->params.b_bframe_adaptive = avctx->b_frame_strategy;
+#else
+ x4->params.i_bframe_adaptive = avctx->b_frame_strategy;
+#endif
x4->params.i_bframe_bias = avctx->bframebias;
x4->params.b_bframe_pyramid = avctx->flags2 & CODEC_FLAG2_BPYRAMID;
avctx->has_b_frames= avctx->flags2 & CODEC_FLAG2_BPYRAMID ? 2 : !!avctx->max_b_frames;
@@ -227,8 +231,10 @@ X264_init(AVCodecContext *avctx)
x4->params.analyse.i_me_range = avctx->me_range;
x4->params.analyse.i_subpel_refine = avctx->me_subpel_quality;
+#if X264_BUILD < 65
x4->params.analyse.b_bidir_me = avctx->bidir_refine > 0;
x4->params.analyse.b_bframe_rdo = avctx->flags2 & CODEC_FLAG2_BRDO;
+#endif
x4->params.analyse.b_mixed_references =
avctx->flags2 & CODEC_FLAG2_MIXED_REFS;
x4->params.analyse.b_chroma_me = avctx->me_cmp & FF_CMP_CHROMA;
@@ -253,7 +259,9 @@ X264_init(AVCodecContext *avctx)
x4->params.rc.f_ip_factor = 1/fabs(avctx->i_quant_factor);
x4->params.rc.f_pb_factor = avctx->b_quant_factor;
x4->params.analyse.i_chroma_qp_offset = avctx->chromaoffset;
+#if X264_BUILD < 61
x4->params.rc.psz_rc_eq = avctx->rc_eq;
+#endif
x4->params.analyse.b_psnr = avctx->flags & CODEC_FLAG_PSNR;
x4->params.i_log_level = X264_LOG_DEBUG;