Good idea.

On date Wednesday 2011-05-25 16:27:46 +0200, Anton Khirnov encoded:
> ---
>  libavformat/cavsvideodec.c |   11 +----------
>  libavformat/diracdec.c     |   11 +----------
>  libavformat/dnxhddec.c     |   11 +----------
>  libavformat/h261dec.c      |   12 +-----------
>  libavformat/h263dec.c      |   12 +-----------
>  libavformat/h264dec.c      |   12 +-----------
>  libavformat/m4vdec.c       |   12 +-----------
>  libavformat/mpegvideodec.c |   11 +----------
>  libavformat/rawdec.c       |   23 ++---------------------
>  libavformat/rawdec.h       |   12 ++++++++++++
>  10 files changed, 22 insertions(+), 105 deletions(-)
> 
> diff --git a/libavformat/cavsvideodec.c b/libavformat/cavsvideodec.c
> index f58c56f..85442f6 100644
> --- a/libavformat/cavsvideodec.c
> +++ b/libavformat/cavsvideodec.c
> @@ -65,13 +65,4 @@ static int cavsvideo_probe(AVProbeData *p)
>      return 0;
>  }
>  
> -AVInputFormat ff_cavsvideo_demuxer = {
> -    "cavsvideo",
> -    NULL_IF_CONFIG_SMALL("raw Chinese AVS video"),
> -    0,
> -    cavsvideo_probe,
> -    ff_raw_video_read_header,
> -    ff_raw_read_partial_packet,
> -    .flags= AVFMT_GENERIC_INDEX,
> -    .value = CODEC_ID_CAVS,
> -};
> +FF_RAWVIDEODEF(cavsvideo, "raw Chinese AVS video", cavsvideo_probe, NULL, 
> CODEC_ID_CAVS)
> diff --git a/libavformat/diracdec.c b/libavformat/diracdec.c
> index b0cb3bf..f777e1b 100644
> --- a/libavformat/diracdec.c
> +++ b/libavformat/diracdec.c
> @@ -31,13 +31,4 @@ static int dirac_probe(AVProbeData *p)
>          return 0;
>  }
>  
> -AVInputFormat ff_dirac_demuxer = {
> -    "dirac",
> -    NULL_IF_CONFIG_SMALL("raw Dirac"),
> -    0,
> -    dirac_probe,
> -    ff_raw_video_read_header,
> -    ff_raw_read_partial_packet,
> -    .flags= AVFMT_GENERIC_INDEX,
> -    .value = CODEC_ID_DIRAC,
> -};
> +FF_RAWVIDEODEF(dirac, "raw Dirac", dirac_probe, NULL, CODEC_ID_DIRAC)
> diff --git a/libavformat/dnxhddec.c b/libavformat/dnxhddec.c
> index df5d2e3..c6d24ba 100644
> --- a/libavformat/dnxhddec.c
> +++ b/libavformat/dnxhddec.c
> @@ -42,13 +42,4 @@ static int dnxhd_probe(AVProbeData *p)
>      return AVPROBE_SCORE_MAX;
>  }
>  
> -AVInputFormat ff_dnxhd_demuxer = {
> -    "dnxhd",
> -    NULL_IF_CONFIG_SMALL("raw DNxHD (SMPTE VC-3)"),
> -    0,
> -    dnxhd_probe,
> -    ff_raw_video_read_header,
> -    ff_raw_read_partial_packet,
> -    .flags= AVFMT_GENERIC_INDEX,
> -    .value = CODEC_ID_DNXHD,
> -};
> +FF_RAWVIDEODEF(dnxhd, "raw DNxHD (SMPTE VC-3)", dnxhd_probe, NULL, 
> CODEC_ID_DNXHD)
> diff --git a/libavformat/h261dec.c b/libavformat/h261dec.c
> index 8d9c5fa..48129be 100644
> --- a/libavformat/h261dec.c
> +++ b/libavformat/h261dec.c
> @@ -62,14 +62,4 @@ static int h261_probe(AVProbeData *p)
>      return 0;
>  }
>  
> -AVInputFormat ff_h261_demuxer = {
> -    "h261",
> -    NULL_IF_CONFIG_SMALL("raw H.261"),
> -    0,
> -    h261_probe,
> -    ff_raw_video_read_header,
> -    ff_raw_read_partial_packet,
> -    .flags= AVFMT_GENERIC_INDEX,
> -    .extensions = "h261",
> -    .value = CODEC_ID_H261,
> -};
> +FF_RAWVIDEODEF(h261, "raw H.261", h261_probe, "h261", CODEC_ID_H261)
> diff --git a/libavformat/h263dec.c b/libavformat/h263dec.c
> index 5eda7af..a301d40 100644
> --- a/libavformat/h263dec.c
> +++ b/libavformat/h263dec.c
> @@ -64,14 +64,4 @@ static int h263_probe(AVProbeData *p)
>      return 0;
>  }
>  
> -AVInputFormat ff_h263_demuxer = {
> -    "h263",
> -    NULL_IF_CONFIG_SMALL("raw H.263"),
> -    0,
> -    h263_probe,
> -    ff_raw_video_read_header,
> -    ff_raw_read_partial_packet,
> -    .flags= AVFMT_GENERIC_INDEX,
> -//    .extensions = "h263", //FIXME remove after writing mpeg4_probe
> -    .value = CODEC_ID_H263,
> -};
> +FF_RAWVIDEODEF(h263, "raw H.263", h263_probe, NULL, CODEC_ID_H263)
> diff --git a/libavformat/h264dec.c b/libavformat/h264dec.c
> index 268492c..5238879 100644
> --- a/libavformat/h264dec.c
> +++ b/libavformat/h264dec.c
> @@ -67,14 +67,4 @@ static int h264_probe(AVProbeData *p)
>      return 0;
>  }
>  
> -AVInputFormat ff_h264_demuxer = {
> -    "h264",
> -    NULL_IF_CONFIG_SMALL("raw H.264 video format"),
> -    0,
> -    h264_probe,
> -    ff_raw_video_read_header,
> -    ff_raw_read_partial_packet,
> -    .flags= AVFMT_GENERIC_INDEX,
> -    .extensions = "h26l,h264,264", //FIXME remove after writing mpeg4_probe
> -    .value = CODEC_ID_H264,
> -};
> +FF_RAWVIDEODEF(h264 , "raw H.264 video format", h264_probe, "h26l,h264,264", 
> CODEC_ID_H264)
> diff --git a/libavformat/m4vdec.c b/libavformat/m4vdec.c
> index 3463901..4bc1381 100644
> --- a/libavformat/m4vdec.c
> +++ b/libavformat/m4vdec.c
> @@ -49,14 +49,4 @@ static int mpeg4video_probe(AVProbeData *probe_packet)
>      return 0;
>  }
>  
> -AVInputFormat ff_m4v_demuxer = {
> -    "m4v",
> -    NULL_IF_CONFIG_SMALL("raw MPEG-4 video format"),
> -    0,
> -    mpeg4video_probe, /** probing for MPEG-4 data */
> -    ff_raw_video_read_header,
> -    ff_raw_read_partial_packet,
> -    .flags= AVFMT_GENERIC_INDEX,
> -    .extensions = "m4v",
> -    .value = CODEC_ID_MPEG4,
> -};
> +FF_RAWVIDEODEF(m4v, "raw MPEG-4 video format", mpeg4video_probe, "m4v", 
> CODEC_ID_MPEG4)
> diff --git a/libavformat/mpegvideodec.c b/libavformat/mpegvideodec.c
> index 0669820..30252c9 100644
> --- a/libavformat/mpegvideodec.c
> +++ b/libavformat/mpegvideodec.c
> @@ -55,13 +55,4 @@ static int mpegvideo_probe(AVProbeData *p)
>      return 0;
>  }
>  
> -AVInputFormat ff_mpegvideo_demuxer = {
> -    "mpegvideo",
> -    NULL_IF_CONFIG_SMALL("raw MPEG video"),
> -    0,
> -    mpegvideo_probe,
> -    ff_raw_video_read_header,
> -    ff_raw_read_partial_packet,
> -    .flags= AVFMT_GENERIC_INDEX,
> -    .value = CODEC_ID_MPEG1VIDEO,
> -};
> +FF_RAWVIDEODEF(mpegvideo, "raw MPEG video", mpegvideo_probe, NULL, 
> CODEC_ID_MPEG1VIDEO)
> diff --git a/libavformat/rawdec.c b/libavformat/rawdec.c
> index d4b56c9..30e7e3a 100644
> --- a/libavformat/rawdec.c
> +++ b/libavformat/rawdec.c
> @@ -223,17 +223,7 @@ AVInputFormat ff_gsm_demuxer = {
>  #endif
>  
>  #if CONFIG_MJPEG_DEMUXER
> -AVInputFormat ff_mjpeg_demuxer = {
> -    "mjpeg",
> -    NULL_IF_CONFIG_SMALL("raw MJPEG video"),
> -    0,
> -    NULL,
> -    ff_raw_video_read_header,
> -    ff_raw_read_partial_packet,
> -    .flags= AVFMT_GENERIC_INDEX,
> -    .extensions = "mjpg,mjpeg",
> -    .value = CODEC_ID_MJPEG,
> -};
> +FF_RAWVIDEODEF(mjpeg, "raw MJPEG video", NULL, "mjpg,mjpeg", CODEC_ID_MJPEG)
>  #endif
>  
>  #if CONFIG_MLP_DEMUXER
> @@ -279,14 +269,5 @@ AVInputFormat ff_shorten_demuxer = {
>  #endif
>  
>  #if CONFIG_VC1_DEMUXER
> -AVInputFormat ff_vc1_demuxer = {
> -    "vc1",
> -    NULL_IF_CONFIG_SMALL("raw VC-1"),
> -    0,
> -    NULL /* vc1_probe */,
> -    ff_raw_video_read_header,
> -    ff_raw_read_partial_packet,
> -    .extensions = "vc1",
> -    .value = CODEC_ID_VC1,
> -};
> +FF_RAWVIDEODEF(vc1, "raw VC-1", NULL, "vc1", CODEC_ID_VC1)
>  #endif
> diff --git a/libavformat/rawdec.h b/libavformat/rawdec.h
> index 16b74ea..b909209 100644
> --- a/libavformat/rawdec.h
> +++ b/libavformat/rawdec.h
> @@ -48,4 +48,16 @@ int ff_raw_audio_read_header(AVFormatContext *s, 
> AVFormatParameters *ap);
>  
>  int ff_raw_video_read_header(AVFormatContext *s, AVFormatParameters *ap);
>  

> +#define FF_RAWVIDEODEF(shortname, longname, probe, ext, id)\

Maybe: FF_DEFINE_RAWVIDEO_DEMUXER is more readable.

-- 
Adapt.  Enjoy.  Survive.
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to