mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 20:21:24 +00:00
gst-libs/gst/riff/riff-media.c: Add codec_data handling (like asfdemux used to do).
Original commit message from CVS: * gst-libs/gst/riff/riff-media.c: (gst_riff_create_video_caps_with_data), (gst_riff_create_audio_caps_with_data): Add codec_data handling (like asfdemux used to do). * gst/asfdemux/gstasf.c: (plugin_init): * gst/asfdemux/gstasfdemux.c: (gst_asf_demux_base_init), (gst_asf_demux_add_audio_stream), (gst_asf_demux_add_video_stream): Use riff-media for caps creation instead of our own (mostly broken) copy of its functions.
This commit is contained in:
parent
c626afd60a
commit
6016a9a033
2 changed files with 28 additions and 5 deletions
12
ChangeLog
12
ChangeLog
|
@ -1,3 +1,15 @@
|
||||||
|
2004-10-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
|
||||||
|
|
||||||
|
* gst-libs/gst/riff/riff-media.c:
|
||||||
|
(gst_riff_create_video_caps_with_data),
|
||||||
|
(gst_riff_create_audio_caps_with_data):
|
||||||
|
Add codec_data handling (like asfdemux used to do).
|
||||||
|
* gst/asfdemux/gstasf.c: (plugin_init):
|
||||||
|
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_base_init),
|
||||||
|
(gst_asf_demux_add_audio_stream), (gst_asf_demux_add_video_stream):
|
||||||
|
Use riff-media for caps creation instead of our own (mostly
|
||||||
|
broken) copy of its functions.
|
||||||
|
|
||||||
2004-10-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
|
2004-10-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
|
||||||
|
|
||||||
* sys/v4l/v4lsrc_calls.c: (gst_v4lsrc_try_capture):
|
* sys/v4l/v4lsrc_calls.c: (gst_v4lsrc_try_capture):
|
||||||
|
|
|
@ -185,6 +185,7 @@ gst_riff_create_video_caps_with_data (guint32 codec_fcc,
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case GST_MAKE_FOURCC ('M', 'P', 'G', '4'):
|
case GST_MAKE_FOURCC ('M', 'P', 'G', '4'):
|
||||||
|
case GST_MAKE_FOURCC ('M', 'P', '4', 'S'):
|
||||||
caps = gst_caps_new_simple ("video/x-msmpeg",
|
caps = gst_caps_new_simple ("video/x-msmpeg",
|
||||||
"msmpegversion", G_TYPE_INT, 41, NULL);
|
"msmpegversion", G_TYPE_INT, 41, NULL);
|
||||||
if (codec_name)
|
if (codec_name)
|
||||||
|
@ -284,6 +285,7 @@ gst_riff_create_video_caps_with_data (guint32 codec_fcc,
|
||||||
"palette_data", &value);
|
"palette_data", &value);
|
||||||
g_value_unset (&value);
|
g_value_unset (&value);
|
||||||
gst_buffer_unref (copy);
|
gst_buffer_unref (copy);
|
||||||
|
strf_data = NULL; /* used */
|
||||||
}
|
}
|
||||||
if (strf) {
|
if (strf) {
|
||||||
gst_caps_set_simple (caps,
|
gst_caps_set_simple (caps,
|
||||||
|
@ -320,6 +322,12 @@ gst_riff_create_video_caps_with_data (guint32 codec_fcc,
|
||||||
"height", GST_TYPE_INT_RANGE, 16, 4096, NULL);
|
"height", GST_TYPE_INT_RANGE, 16, 4096, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* extradata */
|
||||||
|
if (strf_data || strd_data) {
|
||||||
|
gst_caps_set_simple (caps, "codec_data", GST_TYPE_BUFFER,
|
||||||
|
strf_data ? strf_data : strd_data, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
return caps;
|
return caps;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -431,8 +439,9 @@ gst_riff_create_audio_caps_with_data (guint16 codec_id,
|
||||||
break;
|
break;
|
||||||
case GST_RIFF_WAVE_FORMAT_WMAV1:
|
case GST_RIFF_WAVE_FORMAT_WMAV1:
|
||||||
case GST_RIFF_WAVE_FORMAT_WMAV2:
|
case GST_RIFF_WAVE_FORMAT_WMAV2:
|
||||||
|
case GST_RIFF_WAVE_FORMAT_WMAV3:
|
||||||
{
|
{
|
||||||
gint version = codec_id == GST_RIFF_WAVE_FORMAT_WMAV1 ? 1 : 2;
|
gint version = (codec_id - GST_RIFF_WAVE_FORMAT_WMAV1) + 1;
|
||||||
|
|
||||||
block_align = TRUE;
|
block_align = TRUE;
|
||||||
|
|
||||||
|
@ -449,10 +458,6 @@ gst_riff_create_audio_caps_with_data (guint16 codec_id,
|
||||||
gst_caps_set_simple (caps,
|
gst_caps_set_simple (caps,
|
||||||
"bitrate", GST_TYPE_INT_RANGE, 0, G_MAXINT, NULL);
|
"bitrate", GST_TYPE_INT_RANGE, 0, G_MAXINT, NULL);
|
||||||
}
|
}
|
||||||
if (strf_data) {
|
|
||||||
gst_caps_set_simple (caps,
|
|
||||||
"codec_data", GST_TYPE_BUFFER, strf_data, NULL);
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
|
@ -482,6 +487,12 @@ gst_riff_create_audio_caps_with_data (guint16 codec_id,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* extradata */
|
||||||
|
if (strf_data || strd_data) {
|
||||||
|
gst_caps_set_simple (caps, "codec_data", GST_TYPE_BUFFER,
|
||||||
|
strf_data ? strf_data : strd_data, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
return caps;
|
return caps;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue