Original commit message from CVS:
* gst/realmedia/rmdemux.c: (gst_rmdemux_descramble_cook_audio):
After descrambling, push the packets out as individual packets
instead of one big descrambled buffer. Makes cook audio decoding
work with the 'realaudiodec' decoder from gst-plugins-bad.
+2007-05-16 Tim-Philipp Müller <tim at centricular dot net>
+
+ * gst/realmedia/rmdemux.c: (gst_rmdemux_descramble_cook_audio):
+ After descrambling, push the packets out as individual packets
+ instead of one big descrambled buffer. Makes cook audio decoding
+ work with the 'realaudiodec' decoder from gst-plugins-bad.
+
2007-05-16 Tim-Philipp Müller <tim at centricular dot net>
* gst/realmedia/rmdemux.c: (gst_rmdemux_init),
}
}
- ret = gst_pad_push (stream->pad, outbuf);
+ /* some decoders, such as realaudiodec, need to be fed in packet units */
+ for (p = 0; p < height; ++p) {
+ GstBuffer *subbuf;
+
+ subbuf = gst_buffer_create_sub (outbuf, p * packet_size, packet_size);
+ gst_buffer_set_caps (subbuf, GST_PAD_CAPS (stream->pad));
+ ret = gst_pad_push (stream->pad, subbuf);
+ if (ret != GST_FLOW_OK)
+ break;
+ }
+
+ gst_buffer_unref (outbuf);
done: