]> git.sesse.net Git - ffmpeg/blobdiff - libavformat/rawdec.h
avcodec: Constify all the AVCodecParsers
[ffmpeg] / libavformat / rawdec.h
index 3eb416b8ee343c460d9e832564ab93560af6f93e..34c8adcb199a9a7924a318cfd70eecaf216a85ad 100644 (file)
 
 typedef struct FFRawVideoDemuxerContext {
     const AVClass *class;     /**< Class for private options. */
+    int raw_packet_size;
     char *video_size;         /**< String describing video size, set by a private option. */
     char *pixel_format;       /**< Set by a private option. */
     AVRational framerate;     /**< AVRational describing framerate, set by a private option. */
 } FFRawVideoDemuxerContext;
 
+typedef struct FFRawDemuxerContext {
+    const AVClass *class;     /**< Class for private options. */
+    int raw_packet_size;
+} FFRawDemuxerContext;
+
 extern const AVOption ff_rawvideo_options[];
+extern const AVOption ff_raw_options[];
 
 int ff_raw_read_partial_packet(AVFormatContext *s, AVPacket *pkt);
 
@@ -45,6 +52,14 @@ int ff_raw_subtitle_read_header(AVFormatContext *s);
 
 int ff_raw_data_read_header(AVFormatContext *s);
 
+#define FF_RAW_DEMUXER_CLASS(name)\
+static const AVClass name ## _demuxer_class = {\
+    .class_name = #name " demuxer",\
+    .item_name  = av_default_item_name,\
+    .option     = ff_raw_options,\
+    .version    = LIBAVUTIL_VERSION_INT,\
+};
+
 #define FF_RAWVIDEO_DEMUXER_CLASS(name)\
 static const AVClass name ## _demuxer_class = {\
     .class_name = #name " demuxer",\
@@ -75,12 +90,12 @@ FF_DEF_RAWVIDEO_DEMUXER2(shortname, longname, probe, ext, id, AVFMT_GENERIC_INDE
 static const AVClass name ## _demuxer_class = {\
     .class_name = #name " demuxer",\
     .item_name  = av_default_item_name,\
-    .option     = NULL,\
+    .option     = ff_raw_options,\
     .version    = LIBAVUTIL_VERSION_INT,\
 };
 
 #define FF_DEF_RAWSUB_DEMUXER(shortname, longname, probe, ext, id, flag)\
-FF_RAWVIDEO_DEMUXER_CLASS(shortname)\
+FF_RAWSUB_DEMUXER_CLASS(shortname)\
 AVInputFormat ff_ ## shortname ## _demuxer = {\
     .name           = #shortname,\
     .long_name      = NULL_IF_CONFIG_SMALL(longname),\
@@ -90,7 +105,7 @@ AVInputFormat ff_ ## shortname ## _demuxer = {\
     .extensions     = ext,\
     .flags          = flag,\
     .raw_codec_id   = id,\
-    .priv_data_size = 0,\
+    .priv_data_size = sizeof(FFRawDemuxerContext),\
     .priv_class     = &shortname ## _demuxer_class,\
 };