当我使用时,我正在尝试使用ffmpeg / libx264来编码和传输实时视频 ** av_dict_set(& opts,“tune”,“zerolatency”,0); ** 系统运行良好。由于X264编码参数是由ffmpeg使用 av_dict_set 设置的,出于某些研究目的,我想自己更改它们。但是 x264_param_t 中的某些参数不能与 AVCodecContext 中的那些参数相对应,例如 vfr_input 。所以我想知道在ffmpeg中使用libx264时是否有直接的方法将参数传输到X264编码器。
任何人都可以帮助我吗?感谢
答案 0 :(得分:2)
尝试使用编解码器上下文av_opt_set
结构调用priv_data
:
AVCodec *codec = avcodec_find_encoder(AV_CODEC_ID_H264);
AVCodecContext *codecContex = avcodec_alloc_context3(codec);
av_opt_set(codecContex->priv_data, "preset", "ultrafast", 0);
av_opt_set(codecContex->priv_data, "tune", "zerolatency", 0);
为简洁起见,省略了错误检查。