+2004-04-27 Ronald Bultje <rbultje@ronald.bitfreak.net>
+
+ * ext/divx/gstdivxdec.c: (plugin_init):
+ Remove comment that makes no sense.
+ * ext/mad/gstid3tag.c: (gst_id3_tag_set_property):
+ Fix for obvious typo that resulted in warnings during gst-register.
+ * ext/xvid/gstxviddec.c: (gst_xviddec_src_link),
+ (gst_xviddec_sink_link):
+ Fix caps negotiation a bit better.
+ * gst/qtdemux/qtdemux.c: (qtdemux_parse_trak):
+ We call this 'codec_data', not 'esds'.
+
2004-04-27 Benjamin Otte <in7y118@public.uni-hamburg.de>
* gst/monoscope/gstmonoscope.c:
if (xviddec->handle) {
gst_xviddec_unset (xviddec);
}
- g_print ("out: %s\n", gst_caps_to_string (vscaps));
xviddec->csp = gst_xvid_structure_to_csp (structure, xviddec->width,
&xviddec->stride, &xviddec->bpp);
{
GstXvidDec *xviddec = GST_XVIDDEC (gst_pad_get_parent (pad));
GstStructure *structure;
+ GstPadLinkReturn ret;
/* if there's something old around, remove it */
if (xviddec->handle) {
gst_structure_get_int (structure, "width", &xviddec->width);
gst_structure_get_int (structure, "height", &xviddec->height);
gst_structure_get_double (structure, "framerate", &xviddec->fps);
- g_print ("in: %dx%d\n", xviddec->width, xviddec->height);
- /* re-nego? or just await src nego? */
- if (GST_PAD_CAPS (xviddec->srcpad)) {
- GstPadLinkReturn ret;
- GstCaps *vscaps = gst_pad_get_allowed_caps (xviddec->srcpad), *new;
- gint i, csp;
-
- for (i = 0; i < gst_caps_get_size (vscaps); i++) {
- csp = gst_xvid_structure_to_csp (gst_caps_get_structure (vscaps, i),
- 0, NULL, NULL);
- new =
- gst_xvid_csp_to_caps (csp, xviddec->width, xviddec->height,
- xviddec->fps);
- ret = gst_pad_try_set_caps (xviddec->srcpad, new);
- if (ret != GST_PAD_LINK_REFUSED)
- return ret;
- }
- return GST_PAD_LINK_REFUSED;
- }
+ ret = gst_pad_renegotiate (xviddec->srcpad);
+ if (ret == GST_PAD_LINK_DELAYED)
+ ret = GST_PAD_LINK_OK;
- return GST_PAD_LINK_OK;
+ return ret;
}
static GstElementStateReturn
buffer = gst_buffer_new_and_alloc (len - 8);
memcpy (GST_BUFFER_DATA (buffer), esds->data + 8, len - 8);
- gst_caps_set_simple (stream->caps, "esds", GST_TYPE_BUFFER, buffer, NULL);
+ gst_caps_set_simple (stream->caps, "codec_data",
+ GST_TYPE_BUFFER, buffer, NULL);
}
GST_INFO ("type " GST_FOURCC_FORMAT " caps %" GST_PTR_FORMAT,
GST_FOURCC_ARGS (QTDEMUX_FOURCC_GET (stsd->data + 16 + 4)),