12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- $OpenBSD: patch-plugins_ffmpeg_params_c,v 1.3 2014/04/06 20:24:01 brad Exp $
- Deal with newer FFmpeg API.
- --- plugins/ffmpeg/params.c.orig Thu Mar 27 17:09:20 2014
- +++ plugins/ffmpeg/params.c Thu Mar 27 17:14:09 2014
- @@ -101,6 +101,17 @@ typedef struct
- } \
- }
-
- +#define PARAM_DICT_INT(name, dict_name) \
- + { \
- + if(!strcasecmp(name, key)) \
- + { \
- + char buf[128]; \
- + snprintf(buf, sizeof(buf), "%d", *(int*)value); \
- + av_dict_set(options, dict_name, buf, 0); \
- + found = 1; \
- + } \
- + }
- +
- #define PARAM_DICT_FLAG(name, dict_name) \
- { \
- if(!strcasecmp(name, key)) \
- @@ -202,8 +213,15 @@ void lqt_ffmpeg_set_parameter(AVCodecContext * ctx,
- PARAM_INT("ff_max_b_frames",max_b_frames);
- PARAM_FLOAT("ff_b_quant_factor",b_quant_factor);
- PARAM_INT("ff_b_frame_strategy",b_frame_strategy);
- +
- +#if LIBAVCODEC_VERSION_MAJOR >= 55
- + PARAM_DICT_INT("ff_luma_elim_threshold","luma_elim_threshold");
- + PARAM_DICT_INT("ff_chroma_elim_threshold","chroma_elim_threshold");
- +#else
- PARAM_INT("ff_luma_elim_threshold",luma_elim_threshold);
- PARAM_INT("ff_chroma_elim_threshold",chroma_elim_threshold);
- +#endif
- +
- PARAM_INT("ff_strict_std_compliance",strict_std_compliance);
- PARAM_QP2LAMBDA("ff_b_quant_offset",b_quant_offset);
- PARAM_INT("ff_rc_min_rate",rc_min_rate);
- @@ -241,8 +259,15 @@ void lqt_ffmpeg_set_parameter(AVCodecContext * ctx,
- PARAM_QP2LAMBDA("ff_lmax", lmax);
- PARAM_INT("ff_noise_reduction",noise_reduction);
- PARAM_INT_SCALE("ff_rc_initial_buffer_occupancy",rc_initial_buffer_occupancy,1000);
- +
- +#if LIBAVCODEC_VERSION_MAJOR >= 55
- + PARAM_DICT_INT("ff_inter_threshold","inter_threshold");
- + PARAM_DICT_INT("ff_quantizer_noise_shaping","quantizer_noise_shaping");
- +#else
- PARAM_INT("ff_inter_threshold",inter_threshold);
- PARAM_INT("ff_quantizer_noise_shaping",quantizer_noise_shaping);
- +#endif
- +
- PARAM_INT("ff_thread_count",thread_count);
- PARAM_INT("ff_me_threshold",me_threshold);
- PARAM_INT("ff_mb_threshold",mb_threshold);
- @@ -272,8 +297,16 @@ void lqt_ffmpeg_set_parameter(AVCodecContext * ctx,
- PARAM_FLAG("ff_flag_bitexact",CODEC_FLAG_BITEXACT);
- PARAM_FLAG("ff_flag_ac_pred",CODEC_FLAG_AC_PRED);
- // PARAM_FLAG("ff_flag_h263p_umv",CODEC_FLAG_H263P_UMV); // Unused
- +
- +#if LIBAVCODEC_VERSION_MAJOR >= 55
- + PARAM_DICT_FLAG("ff_flag_cbp_rd","cbp_rd");
- + PARAM_DICT_FLAG("ff_flag_qp_rd","qp_rd");
- + PARAM_DICT_FLAG("ff_flag2_strict_gop","strict_gop");
- +#else
- PARAM_FLAG("ff_flag_cbp_rd",CODEC_FLAG_CBP_RD);
- PARAM_FLAG("ff_flag_qp_rd",CODEC_FLAG_QP_RD);
- + PARAM_FLAG2("ff_flag2_strict_gop",CODEC_FLAG2_STRICT_GOP);
- +#endif
-
- #if LIBAVCODEC_VERSION_MAJOR >= 54
- PARAM_DICT_FLAG("ff_flag_h263p_aiv", "aiv");
- @@ -288,7 +321,6 @@ void lqt_ffmpeg_set_parameter(AVCodecContext * ctx,
- PARAM_FLAG("ff_flag_loop_filter",CODEC_FLAG_LOOP_FILTER);
- PARAM_FLAG("ff_flag_closed_gop",CODEC_FLAG_CLOSED_GOP);
- PARAM_FLAG2("ff_flag2_fast",CODEC_FLAG2_FAST);
- - PARAM_FLAG2("ff_flag2_strict_gop",CODEC_FLAG2_STRICT_GOP);
- PARAM_ENUM("ff_coder_type",coder_type,coder_type);
-
- }
|