ext/ffmpeg/gstffmpegcodecmap.c: Change variadic macro to ISO form. (bug #139460)

Original commit message from CVS:
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps):
Change variadic macro to ISO form.  (bug #139460)
This commit is contained in:
David Schleef 2004-04-09 06:20:31 +00:00
parent 50a9ae3608
commit a4981be0fe
2 changed files with 32 additions and 24 deletions

View file

@ -1,3 +1,8 @@
2004-04-08 David Schleef <ds@schleef.org>
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps):
Change variadic macro to ISO form. (bug #139460)
2004-04-06 Benjamin Otte <otte@gnome.org> 2004-04-06 Benjamin Otte <otte@gnome.org>
* ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_register): * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_register):

View file

@ -41,33 +41,33 @@
* but I'm too lazy today. Maybe later. * but I'm too lazy today. Maybe later.
*/ */
#define GST_FF_VID_CAPS_NEW(mimetype, props...) \ #define GST_FF_VID_CAPS_NEW(mimetype, ...) \
(context != NULL) ? \ (context != NULL) ? \
gst_caps_new_simple (mimetype, \ gst_caps_new_simple (mimetype, \
"width", G_TYPE_INT, context->width, \ "width", G_TYPE_INT, context->width, \
"height", G_TYPE_INT, context->height, \ "height", G_TYPE_INT, context->height, \
"framerate", G_TYPE_DOUBLE, 1. * context->frame_rate / \ "framerate", G_TYPE_DOUBLE, 1. * context->frame_rate / \
context->frame_rate_base, \ context->frame_rate_base, \
##props, NULL) \ __VA_ARGS__, NULL) \
: \ : \
gst_caps_new_simple (mimetype, \ gst_caps_new_simple (mimetype, \
"width", GST_TYPE_INT_RANGE, 16, 4096, \ "width", GST_TYPE_INT_RANGE, 16, 4096, \
"height", GST_TYPE_INT_RANGE, 16, 4096, \ "height", GST_TYPE_INT_RANGE, 16, 4096, \
"framerate", GST_TYPE_DOUBLE_RANGE, 0., G_MAXDOUBLE, \ "framerate", GST_TYPE_DOUBLE_RANGE, 0., G_MAXDOUBLE, \
##props, NULL) __VA_ARGS__, NULL)
/* same for audio - now with channels/sample rate /* same for audio - now with channels/sample rate
*/ */
#define GST_FF_AUD_CAPS_NEW(mimetype, props...) \ #define GST_FF_AUD_CAPS_NEW(mimetype, ...) \
(context != NULL) ? \ (context != NULL) ? \
gst_caps_new_simple (mimetype, \ gst_caps_new_simple (mimetype, \
"rate", G_TYPE_INT, context->sample_rate, \ "rate", G_TYPE_INT, context->sample_rate, \
"channels", G_TYPE_INT, context->channels, \ "channels", G_TYPE_INT, context->channels, \
##props, NULL) \ __VA_ARGS__, NULL) \
: \ : \
gst_caps_new_simple (mimetype, \ gst_caps_new_simple (mimetype, \
##props, NULL) __VA_ARGS__, NULL)
/* Convert a FFMPEG codec ID and optional AVCodecContext /* Convert a FFMPEG codec ID and optional AVCodecContext
* to a GstCaps. If the context is ommitted, no fixed values * to a GstCaps. If the context is ommitted, no fixed values
@ -126,7 +126,7 @@ gst_ffmpeg_codecid_to_caps (enum CodecID codec_id,
case CODEC_ID_H263: case CODEC_ID_H263:
case CODEC_ID_H263P: case CODEC_ID_H263P:
case CODEC_ID_H263I: case CODEC_ID_H263I:
caps = GST_FF_VID_CAPS_NEW ("video/x-h263"); caps = GST_FF_VID_CAPS_NEW ("video/x-h263", NULL);
break; break;
case CODEC_ID_RV10: case CODEC_ID_RV10:
@ -181,7 +181,7 @@ gst_ffmpeg_codecid_to_caps (enum CodecID codec_id,
*/ */
if (encode) { if (encode) {
/* FIXME: bitrate */ /* FIXME: bitrate */
caps = GST_FF_AUD_CAPS_NEW ("audio/x-ac3"); caps = GST_FF_AUD_CAPS_NEW ("audio/x-ac3", NULL);
} }
break; break;
@ -194,7 +194,7 @@ gst_ffmpeg_codecid_to_caps (enum CodecID codec_id,
case CODEC_ID_MJPEGB: case CODEC_ID_MJPEGB:
case CODEC_ID_LJPEG: case CODEC_ID_LJPEG:
case CODEC_ID_SP5X: case CODEC_ID_SP5X:
caps = GST_FF_VID_CAPS_NEW ("video/x-jpeg"); caps = GST_FF_VID_CAPS_NEW ("video/x-jpeg", NULL);
break; break;
case CODEC_ID_MPEG4: case CODEC_ID_MPEG4:
@ -212,8 +212,8 @@ gst_ffmpeg_codecid_to_caps (enum CodecID codec_id,
"systemstream", G_TYPE_BOOLEAN, FALSE, NULL); "systemstream", G_TYPE_BOOLEAN, FALSE, NULL);
gst_caps_append (caps, GST_FF_VID_CAPS_NEW ("video/x-divx", gst_caps_append (caps, GST_FF_VID_CAPS_NEW ("video/x-divx",
"divxversion", GST_TYPE_INT_RANGE, 4, 5, NULL)); "divxversion", GST_TYPE_INT_RANGE, 4, 5, NULL));
gst_caps_append (caps, GST_FF_VID_CAPS_NEW ("video/x-xvid")); gst_caps_append (caps, GST_FF_VID_CAPS_NEW ("video/x-xvid", NULL));
gst_caps_append (caps, GST_FF_VID_CAPS_NEW ("video/x-3ivx")); gst_caps_append (caps, GST_FF_VID_CAPS_NEW ("video/x-3ivx", NULL));
} }
break; break;
@ -267,11 +267,11 @@ gst_ffmpeg_codecid_to_caps (enum CodecID codec_id,
break; break;
case CODEC_ID_DVAUDIO: case CODEC_ID_DVAUDIO:
caps = GST_FF_AUD_CAPS_NEW ("audio/x-dv"); caps = GST_FF_AUD_CAPS_NEW ("audio/x-dv", NULL);
break; break;
case CODEC_ID_DVVIDEO: case CODEC_ID_DVVIDEO:
caps = GST_FF_VID_CAPS_NEW ("video/dv"); caps = GST_FF_VID_CAPS_NEW ("video/dv", NULL);
break; break;
case CODEC_ID_WMAV1: case CODEC_ID_WMAV1:
@ -299,7 +299,7 @@ gst_ffmpeg_codecid_to_caps (enum CodecID codec_id,
break; break;
case CODEC_ID_HUFFYUV: case CODEC_ID_HUFFYUV:
caps = GST_FF_VID_CAPS_NEW ("video/x-huffyuv"); caps = GST_FF_VID_CAPS_NEW ("video/x-huffyuv", NULL);
break; break;
case CODEC_ID_CYUV: case CODEC_ID_CYUV:
@ -307,7 +307,7 @@ gst_ffmpeg_codecid_to_caps (enum CodecID codec_id,
break; break;
case CODEC_ID_H264: case CODEC_ID_H264:
caps = GST_FF_VID_CAPS_NEW ("video/x-h264"); caps = GST_FF_VID_CAPS_NEW ("video/x-h264", NULL);
break; break;
case CODEC_ID_INDEO3: case CODEC_ID_INDEO3:
@ -316,11 +316,11 @@ gst_ffmpeg_codecid_to_caps (enum CodecID codec_id,
break; break;
case CODEC_ID_VP3: case CODEC_ID_VP3:
caps = GST_FF_VID_CAPS_NEW ("video/x-vp3"); caps = GST_FF_VID_CAPS_NEW ("video/x-vp3", NULL);
break; break;
case CODEC_ID_THEORA: case CODEC_ID_THEORA:
caps = GST_FF_VID_CAPS_NEW ("video/x-theora"); caps = GST_FF_VID_CAPS_NEW ("video/x-theora", NULL);
break; break;
case CODEC_ID_AAC: case CODEC_ID_AAC:
@ -341,7 +341,7 @@ gst_ffmpeg_codecid_to_caps (enum CodecID codec_id,
break; break;
case CODEC_ID_4XM: case CODEC_ID_4XM:
caps = GST_FF_VID_CAPS_NEW ("video/x-4xm"); caps = GST_FF_VID_CAPS_NEW ("video/x-4xm", NULL);
break; break;
case CODEC_ID_VCR1: case CODEC_ID_VCR1:
@ -351,12 +351,15 @@ gst_ffmpeg_codecid_to_caps (enum CodecID codec_id,
case CODEC_ID_INTERPLAY_VIDEO: case CODEC_ID_INTERPLAY_VIDEO:
case CODEC_ID_XAN_WC3: case CODEC_ID_XAN_WC3:
case CODEC_ID_XAN_WC4: case CODEC_ID_XAN_WC4:
case CODEC_ID_RPZA:
buildcaps = TRUE; buildcaps = TRUE;
break; break;
case CODEC_ID_RPZA:
caps = GST_FF_VID_CAPS_NEW ("video/x-apple-video", NULL);
break;
case CODEC_ID_CINEPAK: case CODEC_ID_CINEPAK:
caps = GST_FF_VID_CAPS_NEW ("video/x-cinepak"); caps = GST_FF_VID_CAPS_NEW ("video/x-cinepak", NULL);
break; break;
case CODEC_ID_WS_VQA: case CODEC_ID_WS_VQA:
@ -437,11 +440,11 @@ gst_ffmpeg_codecid_to_caps (enum CodecID codec_id,
break; break;
case CODEC_ID_PCM_MULAW: case CODEC_ID_PCM_MULAW:
caps = GST_FF_AUD_CAPS_NEW ("audio/x-mulaw"); caps = GST_FF_AUD_CAPS_NEW ("audio/x-mulaw", NULL);
break; break;
case CODEC_ID_PCM_ALAW: case CODEC_ID_PCM_ALAW:
caps = GST_FF_AUD_CAPS_NEW ("audio/x-alaw"); caps = GST_FF_AUD_CAPS_NEW ("audio/x-alaw", NULL);
break; break;
case CODEC_ID_ADPCM_IMA_QT: case CODEC_ID_ADPCM_IMA_QT:
@ -577,12 +580,12 @@ gst_ffmpeg_codecid_to_caps (enum CodecID codec_id,
switch (codec->type) { switch (codec->type) {
case CODEC_TYPE_VIDEO: case CODEC_TYPE_VIDEO:
mime = g_strdup_printf ("video/x-gst_ff-%s", codec->name); mime = g_strdup_printf ("video/x-gst_ff-%s", codec->name);
caps = GST_FF_VID_CAPS_NEW (mime); caps = GST_FF_VID_CAPS_NEW (mime, NULL);
g_free (mime); g_free (mime);
break; break;
case CODEC_TYPE_AUDIO: case CODEC_TYPE_AUDIO:
mime = g_strdup_printf ("audio/x-gst_ff-%s", codec->name); mime = g_strdup_printf ("audio/x-gst_ff-%s", codec->name);
caps = GST_FF_AUD_CAPS_NEW (mime); caps = GST_FF_AUD_CAPS_NEW (mime, NULL);
g_free (mime); g_free (mime);
break; break;
default: default: