[SCM] libav/experimental: Deprecate and mark for deletion the function guess_stream_format(), and clone its code to ffserver_guess_format() in ffserver.c.

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 16:56:37 UTC 2013


The following commit has been merged in the experimental branch:
commit 1642ee4337988523207ee8f30be9281e6919d95a
Author: Stefano Sabatini <stefano.sabatini-lala at poste.it>
Date:   Thu Dec 31 14:12:58 2009 +0000

    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

diff --git a/ffserver.c b/ffserver.c
index fdb504f..23665a1 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 8e8ab91..a719937 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 d7241f5..5eb360c 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){

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list