Browse code

Add AVOption support for muxers.

Patch by Anssi Hannula, anssi d hannula a iki d fi

Originally committed as revision 26195 to svn://svn.ffmpeg.org/ffmpeg/trunk

Anssi Hannula authored on 2011/01/02 19:52:34
Showing 2 changed files
... ...
@@ -22,7 +22,7 @@
22 22
 #define AVFORMAT_AVFORMAT_H
23 23
 
24 24
 #define LIBAVFORMAT_VERSION_MAJOR 52
25
-#define LIBAVFORMAT_VERSION_MINOR 91
25
+#define LIBAVFORMAT_VERSION_MINOR 92
26 26
 #define LIBAVFORMAT_VERSION_MICRO  0
27 27
 
28 28
 #define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \
... ...
@@ -368,6 +368,8 @@ typedef struct AVOutputFormat {
368 368
     const AVMetadataConv *metadata_conv;
369 369
 #endif
370 370
 
371
+    const AVClass *priv_class; ///< AVClass for the private context
372
+
371 373
     /* private fields */
372 374
     struct AVOutputFormat *next;
373 375
 } AVOutputFormat;
... ...
@@ -2720,6 +2720,10 @@ int av_set_parameters(AVFormatContext *s, AVFormatParameters *ap)
2720 2720
         s->priv_data = av_mallocz(s->oformat->priv_data_size);
2721 2721
         if (!s->priv_data)
2722 2722
             return AVERROR(ENOMEM);
2723
+        if (s->oformat->priv_class) {
2724
+            *(const AVClass**)s->priv_data= s->oformat->priv_class;
2725
+            av_opt_set_defaults(s->priv_data);
2726
+        }
2723 2727
     } else
2724 2728
         s->priv_data = NULL;
2725 2729