diff options
author | David Schleef <ds@schleef.org> | 2004-03-06 04:51:15 +0000 |
---|---|---|
committer | David Schleef <ds@schleef.org> | 2004-03-06 04:51:15 +0000 |
commit | 6c3fbe6d459d566f51de66a71245eba6bfaee74e (patch) | |
tree | 3fb346e403b84aa8041a03a31f37e61ce5193235 | |
parent | 26d730400e10bfbb9a0bc2ec09eec8023f5c0f97 (diff) |
ext/aalib/gstaasink.c: Add fixate function. (bug #131128)
Original commit message from CVS:
* ext/aalib/gstaasink.c: (gst_aasink_fixate), (gst_aasink_init):
Add fixate function. (bug #131128)
* ext/sdl/sdlvideosink.c: (gst_sdlvideosink_init),
(gst_sdlvideosink_fixate): Add fixate function.
* gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_link):
Fix attempt to print a non-pointer using GST_PTR_FORMAT.
* gst/wavparse/gstwavparse.c: (gst_wavparse_parse_fmt):
Fix missing break that was causing ulaw to be interpreted as
raw int.
-rw-r--r-- | ChangeLog | 12 | ||||
-rw-r--r-- | ext/aalib/gstaasink.c | 27 | ||||
-rw-r--r-- | gst/wavparse/gstwavparse.c | 1 |
3 files changed, 40 insertions, 0 deletions
@@ -1,5 +1,17 @@ 2004-03-05 David Schleef <ds@schleef.org> + * ext/aalib/gstaasink.c: (gst_aasink_fixate), (gst_aasink_init): + Add fixate function. (bug #131128) + * ext/sdl/sdlvideosink.c: (gst_sdlvideosink_init), + (gst_sdlvideosink_fixate): Add fixate function. + * gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_link): + Fix attempt to print a non-pointer using GST_PTR_FORMAT. + * gst/wavparse/gstwavparse.c: (gst_wavparse_parse_fmt): + Fix missing break that was causing ulaw to be interpreted as + raw int. + +2004-03-05 David Schleef <ds@schleef.org> + * gst/mpegstream/gstrfc2250enc.c: (gst_rfc2250_enc_add_slice): Fix code that ignores return value of gst_buffer_merge(). (bug #114560) diff --git a/ext/aalib/gstaasink.c b/ext/aalib/gstaasink.c index f2e60618..6dfdb50c 100644 --- a/ext/aalib/gstaasink.c +++ b/ext/aalib/gstaasink.c @@ -239,6 +239,32 @@ gst_aasink_class_init (GstAASinkClass *klass) gstelement_class->set_clock = gst_aasink_set_clock; } +static GstCaps * +gst_aasink_fixate (GstPad *pad, const GstCaps *caps) +{ + GstStructure *structure; + GstCaps *newcaps; + + if (gst_caps_get_size (caps) > 1) return NULL; + + newcaps = gst_caps_copy (caps); + structure = gst_caps_get_structure (newcaps, 0); + + if (gst_caps_structure_fixate_field_nearest_int (structure, "width", 320)) { + return newcaps; + } + if (gst_caps_structure_fixate_field_nearest_int (structure, "height", 240)) { + return newcaps; + } + if (gst_caps_structure_fixate_field_nearest_double (structure, "framerate", + 30.0)) { + return newcaps; + } + + gst_caps_free (newcaps); + return NULL; +} + static GstPadLinkReturn gst_aasink_sinkconnect (GstPad *pad, const GstCaps *caps) { @@ -278,6 +304,7 @@ gst_aasink_init (GstAASink *aasink) gst_element_add_pad (GST_ELEMENT (aasink), aasink->sinkpad); gst_pad_set_chain_function (aasink->sinkpad, gst_aasink_chain); gst_pad_set_link_function (aasink->sinkpad, gst_aasink_sinkconnect); + gst_pad_set_fixate_function (aasink->sinkpad, gst_aasink_fixate); memcpy(&aasink->ascii_surf, &aa_defparams, sizeof (struct aa_hardware_params)); aasink->ascii_parms.bright = 0; diff --git a/gst/wavparse/gstwavparse.c b/gst/wavparse/gstwavparse.c index 77e18263..889d6514 100644 --- a/gst/wavparse/gstwavparse.c +++ b/gst/wavparse/gstwavparse.c @@ -610,6 +610,7 @@ gst_wavparse_parse_fmt (GstWavParse *wavparse, guint size) "channels", G_TYPE_INT, wavparse->channels, NULL); } + break; case GST_RIFF_WAVE_FORMAT_PCM: caps = gst_caps_new_simple ("audio/x-raw-int", |