mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-30 13:41:48 +00:00
gst-libs/gst/play/play.c (gst_play_audio_fixate)
Original commit message from CVS: * gst-libs/gst/play/play.c (gst_play_audio_fixate) (gst_play_video_fixate): Check so the structure has the field before trying to fixate them, this makes it possible to have fakesinks for video and audio output without printing errors on the output console.
This commit is contained in:
parent
1ff9a32224
commit
efe25509ad
2 changed files with 22 additions and 7 deletions
|
@ -1,3 +1,11 @@
|
|||
2004-03-23 Johan Dahlin <johan@gnome.org>
|
||||
|
||||
* gst-libs/gst/play/play.c (gst_play_audio_fixate)
|
||||
(gst_play_video_fixate): Check so the structure has the field
|
||||
before trying to fixate them, this makes it possible to have
|
||||
fakesinks for video and audio output without printing errors on
|
||||
the output console.
|
||||
|
||||
2004-03-22 David Schleef <ds@schleef.org>
|
||||
|
||||
* sys/oss/Makefile.am:
|
||||
|
|
|
@ -480,13 +480,16 @@ gst_play_video_fixate (GstPad * pad, const GstCaps * caps, gpointer user_data)
|
|||
newcaps = gst_caps_copy (caps);
|
||||
structure = gst_caps_get_structure (newcaps, 0);
|
||||
|
||||
if (gst_caps_structure_fixate_field_nearest_int (structure, "width", 320)) {
|
||||
if (gst_structure_has_field (structure, "width") &&
|
||||
gst_caps_structure_fixate_field_nearest_int (structure, "width", 320)) {
|
||||
return newcaps;
|
||||
}
|
||||
if (gst_caps_structure_fixate_field_nearest_int (structure, "height", 240)) {
|
||||
if (gst_structure_has_field (structure, "height") &&
|
||||
gst_caps_structure_fixate_field_nearest_int (structure, "height", 240)) {
|
||||
return newcaps;
|
||||
}
|
||||
if (gst_caps_structure_fixate_field_nearest_double (structure, "framerate",
|
||||
if (gst_structure_has_field (structure, "framerate") &&
|
||||
gst_caps_structure_fixate_field_nearest_double (structure, "framerate",
|
||||
30.0)) {
|
||||
return newcaps;
|
||||
}
|
||||
|
@ -509,16 +512,20 @@ gst_play_audio_fixate (GstPad * pad, const GstCaps * caps, gpointer user_data)
|
|||
NULL);
|
||||
structure = gst_caps_get_structure (newcaps, 0);
|
||||
|
||||
if (gst_caps_structure_fixate_field_nearest_int (structure, "rate", 44100)) {
|
||||
if (gst_structure_has_field (structure, "rate") &&
|
||||
gst_caps_structure_fixate_field_nearest_int (structure, "rate", 44100)) {
|
||||
return newcaps;
|
||||
}
|
||||
if (gst_caps_structure_fixate_field_nearest_int (structure, "depth", 16)) {
|
||||
if (gst_structure_has_field (structure, "depth") &&
|
||||
gst_caps_structure_fixate_field_nearest_int (structure, "depth", 16)) {
|
||||
return newcaps;
|
||||
}
|
||||
if (gst_caps_structure_fixate_field_nearest_int (structure, "width", 16)) {
|
||||
if (gst_structure_has_field (structure, "width") &&
|
||||
gst_caps_structure_fixate_field_nearest_int (structure, "width", 16)) {
|
||||
return newcaps;
|
||||
}
|
||||
if (gst_caps_structure_fixate_field_nearest_int (structure, "channels", 2)) {
|
||||
if (gst_structure_has_field (structure, "channels") &&
|
||||
gst_caps_structure_fixate_field_nearest_int (structure, "channels", 2)) {
|
||||
return newcaps;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue