+2004-08-12 Zaheer Abbas Merali <zaheerabbas at merali dot org>
+
+ * ext/lame/gstlame.c: (gst_lame_src_link):
+ made source pad link function check if sinkpad is ok..fixes the problem
+ where core fixates the output rate of lame stupidly
+
2004-08-12 Thomas Vander Stichele <thomas (at) apestaart (dot) org>
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_src_link), (gst_v4lsrc_fixate):
GstLame *lame;
gint out_samplerate;
GstStructure *structure;
- GstCaps *othercaps, *channelcaps;
+ GstCaps *othercaps, *channelcaps, *ratecaps;
GstPadLinkReturn result;
lame = GST_LAME (gst_pad_get_parent (pad));
!gst_structure_get_int (structure, "channels", &lame->num_channels))
g_return_val_if_reached (GST_PAD_LINK_REFUSED);
+ /* try sample rate */
+ ratecaps =
+ gst_caps_new_simple ("audio/x-raw-int",
+ "channels", G_TYPE_INT, lame->num_channels,
+ "rate", G_TYPE_INT, out_samplerate, NULL);
+ result = gst_pad_try_set_caps (lame->srcpad, ratecaps);
+ gst_caps_free (ratecaps);
+ if (GST_PAD_LINK_FAILED (result))
+ return result;
+
if (lame_set_out_samplerate (lame->lgf, out_samplerate) != 0)
return GST_PAD_LINK_REFUSED;