summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefano Sabatini <stefano.sabatini-lala@poste.it>2009-12-31 14:12:58 +0000
committerStefano Sabatini <stefano.sabatini-lala@poste.it>2009-12-31 14:12:58 +0000
commit1642ee4337988523207ee8f30be9281e6919d95a (patch)
tree467b25d855fa72a9e6e4435a89ad1c2ca62544f6
parentf9310cbb2fcfcd9e41cafb3789c3b7ae3b90dbf4 (diff)
Deprecate and mark for deletion the function guess_stream_format(),
and clone its code to ffserver_guess_format() in ffserver.c. guess_stream_format() is hackish since it relies on some undocumented properties of the name of the muxers (wich is currently only relevant for the ASF muxer), and has no use outside ffserver.c. Originally committed as revision 20987 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r--ffserver.c23
-rw-r--r--libavformat/avformat.h4
-rw-r--r--libavformat/utils.c2
3 files changed, 26 insertions, 3 deletions
diff --git a/ffserver.c b/ffserver.c
index fdb504f84a..23665a1e22 100644
--- a/ffserver.c
+++ b/ffserver.c
@@ -3731,6 +3731,25 @@ static int ffserver_opt_default(const char *opt, const char *arg,
return ret;
}
+static AVOutputFormat *ffserver_guess_format(const char *short_name, const char *filename,
+ const char *mime_type)
+{
+ AVOutputFormat *fmt = guess_format(short_name, filename, mime_type);
+
+ if (fmt) {
+ AVOutputFormat *stream_fmt;
+ char stream_format_name[64];
+
+ snprintf(stream_format_name, sizeof(stream_format_name), "%s_stream", fmt->name);
+ stream_fmt = guess_format(stream_format_name, NULL, NULL);
+
+ if (stream_fmt)
+ fmt = stream_fmt;
+ }
+
+ return fmt;
+}
+
static int parse_ffconfig(const char *filename)
{
FILE *f;
@@ -3972,7 +3991,7 @@ static int parse_ffconfig(const char *filename)
}
}
- stream->fmt = guess_stream_format(NULL, stream->filename, NULL);
+ stream->fmt = ffserver_guess_format(NULL, stream->filename, NULL);
/* fetch avclass so AVOption works
* FIXME try to use avcodec_get_context_defaults2
* without changing defaults too much */
@@ -4020,7 +4039,7 @@ static int parse_ffconfig(const char *filename)
/* jpeg cannot be used here, so use single frame jpeg */
if (!strcmp(arg, "jpeg"))
strcpy(arg, "mjpeg");
- stream->fmt = guess_stream_format(arg, NULL, NULL);
+ stream->fmt = ffserver_guess_format(arg, NULL, NULL);
if (!stream->fmt) {
fprintf(stderr, "%s:%d: Unknown Format: %s\n",
filename, line_num, arg);
diff --git a/libavformat/avformat.h b/libavformat/avformat.h
index 8e8ab91b2d..a71993708f 100644
--- a/libavformat/avformat.h
+++ b/libavformat/avformat.h
@@ -712,9 +712,11 @@ enum CodecID av_guess_image2_codec(const char *filename);
/* utils.c */
void av_register_input_format(AVInputFormat *format);
void av_register_output_format(AVOutputFormat *format);
-AVOutputFormat *guess_stream_format(const char *short_name,
+#if LIBAVFORMAT_VERSION_MAJOR < 53
+attribute_deprecated AVOutputFormat *guess_stream_format(const char *short_name,
const char *filename,
const char *mime_type);
+#endif
AVOutputFormat *guess_format(const char *short_name,
const char *filename,
const char *mime_type);
diff --git a/libavformat/utils.c b/libavformat/utils.c
index d7241f59a7..5eb360c229 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -219,6 +219,7 @@ AVOutputFormat *guess_format(const char *short_name, const char *filename,
return fmt_found;
}
+#if LIBAVFORMAT_VERSION_MAJOR < 53
AVOutputFormat *guess_stream_format(const char *short_name, const char *filename,
const char *mime_type)
{
@@ -237,6 +238,7 @@ AVOutputFormat *guess_stream_format(const char *short_name, const char *filename
return fmt;
}
+#endif
enum CodecID av_guess_codec(AVOutputFormat *fmt, const char *short_name,
const char *filename, const char *mime_type, enum CodecType type){