From 6c2ed67c2f6f93fe153afba40b29a18d2cff0bd0 Mon Sep 17 00:00:00 2001 From: Lukasz Marek Date: Sun, 16 Nov 2014 01:33:19 +0100 Subject: [PATCH] ffserver_config: remove ffserver_apply_stream_config function This function became very short and can be logically merged with add_codec(). Signed-off-by: Lukasz Marek --- ffserver_config.c | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/ffserver_config.c b/ffserver_config.c index e9218ab8f1..e1d8d8c378 100644 --- a/ffserver_config.c +++ b/ffserver_config.c @@ -174,13 +174,23 @@ void ffserver_parse_acl_row(FFServerStream *stream, FFServerStream* feed, } /* add a codec and set the default parameters */ -static void add_codec(FFServerStream *stream, AVCodecContext *av) +static void add_codec(FFServerStream *stream, AVCodecContext *av, + FFServerConfig *config) { AVStream *st; + AVDictionary **opts; if(stream->nb_streams >= FF_ARRAY_ELEMS(stream->streams)) return; + opts = av->codec_type == AVMEDIA_TYPE_AUDIO ? + &config->audio_opts : &config->video_opts; + av_opt_set_dict2(av->priv_data, opts, AV_OPT_SEARCH_CHILDREN); + av_opt_set_dict2(av, opts, AV_OPT_SEARCH_CHILDREN); + if (av_dict_count(*opts)) + av_log(NULL, AV_LOG_WARNING, + "Something is wrong, %d options are not set!\n", av_dict_count(*opts)); + /* compute default parameters */ switch(av->codec_type) { case AVMEDIA_TYPE_AUDIO: @@ -684,14 +694,6 @@ static int ffserver_parse_config_feed(FFServerConfig *config, const char *cmd, c return 0; } -static void ffserver_apply_stream_config(AVCodecContext *enc, AVDictionary **opts) -{ - av_opt_set_dict2(enc->priv_data, opts, AV_OPT_SEARCH_CHILDREN); - av_opt_set_dict2(enc, opts, AV_OPT_SEARCH_CHILDREN); - if (av_dict_count(*opts)) - av_log(NULL, AV_LOG_ERROR, "Something went wrong, %d options not set!!!\n", av_dict_count(*opts)); -} - static int ffserver_parse_config_stream(FFServerConfig *config, const char *cmd, const char **p, FFServerStream **pstream) { @@ -1013,15 +1015,13 @@ static int ffserver_parse_config_stream(FFServerConfig *config, const char *cmd, config->dummy_actx->codec_id = config->guessed_audio_codec_id; if (!config->no_audio && config->dummy_actx->codec_id != AV_CODEC_ID_NONE) { AVCodecContext *audio_enc = avcodec_alloc_context3(avcodec_find_encoder(config->dummy_actx->codec_id)); - ffserver_apply_stream_config(audio_enc, &config->audio_opts); - add_codec(stream, audio_enc); + add_codec(stream, audio_enc, config); } if (config->dummy_vctx->codec_id == AV_CODEC_ID_NONE) config->dummy_vctx->codec_id = config->guessed_video_codec_id; if (!config->no_video && config->dummy_vctx->codec_id != AV_CODEC_ID_NONE) { AVCodecContext *video_enc = avcodec_alloc_context3(avcodec_find_encoder(config->dummy_vctx->codec_id)); - ffserver_apply_stream_config(video_enc, &config->video_opts); - add_codec(stream, video_enc); + add_codec(stream, video_enc, config); } } av_dict_free(&config->video_opts);