[FFmpeg-cvslog] ffserver_config: reflow add_codec()
Reynaldo H. Verdejo Pinochet
git at videolan.org
Tue Dec 9 05:12:35 CET 2014
ffmpeg | branch: master | Reynaldo H. Verdejo Pinochet <reynaldo at osg.samsung.com> | Mon Dec 8 18:32:22 2014 -0300| [720dffb843aa780d25b7be224c63ffc0aba13671] | committer: Reynaldo H. Verdejo Pinochet
ffserver_config: reflow add_codec()
Signed-off-by: Reynaldo H. Verdejo Pinochet <reynaldo at osg.samsung.com>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=720dffb843aa780d25b7be224c63ffc0aba13671
---
ffserver_config.c | 52 ++++++++++++++++++++++++++++------------------------
1 file changed, 28 insertions(+), 24 deletions(-)
diff --git a/ffserver_config.c b/ffserver_config.c
index d17b57e..017af48 100644
--- a/ffserver_config.c
+++ b/ffserver_config.c
@@ -195,13 +195,38 @@ static void add_codec(FFServerStream *stream, AVCodecContext *av,
av_dict_copy(&recommended, *opts, 0);
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));
- if (config->stream_use_defaults) {
- //TODO: reident
+ if (!config->stream_use_defaults) {
+ switch(av->codec_type) {
+ case AVMEDIA_TYPE_AUDIO:
+ if (av->bit_rate == 0)
+ report_config_error(config->filename, config->line_num,
+ AV_LOG_ERROR, &config->errors,
+ "audio bit rate is not set\n");
+ if (av->sample_rate == 0)
+ report_config_error(config->filename, config->line_num,
+ AV_LOG_ERROR, &config->errors,
+ "audio sample rate is not set\n");
+ break;
+ case AVMEDIA_TYPE_VIDEO:
+ if (av->width == 0 || av->height == 0)
+ report_config_error(config->filename, config->line_num,
+ AV_LOG_ERROR, &config->errors,
+ "video size is not set\n");
+ break;
+ default:
+ av_assert0(0);
+ }
+ goto done;
+ }
+
+ /* stream_use_defaults = true */
+
/* compute default parameters */
switch(av->codec_type) {
case AVMEDIA_TYPE_AUDIO:
@@ -287,29 +312,8 @@ static void add_codec(FFServerStream *stream, AVCodecContext *av,
default:
abort();
}
- } else {
- switch(av->codec_type) {
- case AVMEDIA_TYPE_AUDIO:
- if (av->bit_rate == 0)
- report_config_error(config->filename, config->line_num,
- AV_LOG_ERROR, &config->errors,
- "audio bit rate is not set\n");
- if (av->sample_rate == 0)
- report_config_error(config->filename, config->line_num,
- AV_LOG_ERROR, &config->errors,
- "audio sample rate is not set\n");
- break;
- case AVMEDIA_TYPE_VIDEO:
- if (av->width == 0 || av->height == 0)
- report_config_error(config->filename, config->line_num,
- AV_LOG_ERROR, &config->errors,
- "video size is not set\n");
- break;
- default:
- av_assert0(0);
- }
- }
+done:
st = av_mallocz(sizeof(AVStream));
if (!st)
return;
More information about the ffmpeg-cvslog
mailing list