[gstreamer-bugs] [Bug 354174] [PATCH] add REAL support by using the proprietary drivers
GStreamer (bugzilla.gnome.org)
bugzilla-daemon at bugzilla.gnome.org
Mon Jan 1 10:23:07 PST 2007
Do not reply to this via email (we are currently unable to handle email
responses and they get discarded). You can add comments to this bug at
http://bugzilla.gnome.org/show_bug.cgi?id=354174
GStreamer | gst-plugins-bad | Ver: HEAD CVS
------- Comment #26 from Lutz Mueller 2007-01-01 18:21 UTC -------
Our ways crossed - I continued to work on the driver and renamed it
gstrealvideodec - in order to be able to provide in the same directory the
audio decoder (gstrealaudiodec). I can't see the work you checked in CVS yet
(anonymous access). What should I do? Can you still rename the decoder or
should I write the audio decoder in another directory?
Regarding the default paths: The debian package w32codecs installs the codecs
in /usr/lib/win32. The default paths should probably be determined by the
configure script.
There is one issue I fixed today in the video decoder: Right after the call to
dec->init in the setcaps function, I've hardcoded some bits. You need to
replace the code by the code below:
res = dec->init (&data, &dec->context);
if (res)
goto could_not_initialize;
if ((v = gst_structure_get_value (s, "codec_data"))) {
GstBuffer *buf = g_value_peek_pointer (v);
guint32 *msg = g_new0 (guint32, 11 + GST_BUFFER_SIZE (buf));
guint i;
if (!msg)
goto could_not_allocate;
msg[ 0] = 0x24;
msg[ 1] = 1 + ((dec->subformat >> 16) & 7);
msg[ 2] = (guint32) &msg[9];
msg[ 9] = dec->width;
msg[10] = dec->height;
for (i = 0; i < GST_BUFFER_SIZE (buf); i++)
msg[i + 11] = 4 * GST_BUFFER_DATA (buf)[i];
res = dec->custom_message (msg, dec->context);
g_free (msg);
if (res)
goto could_not_send_message;
}
(...)
could_not_allocate:
dlclose (dec->handle);
dec->handle = NULL;
GST_DEBUG_OBJECT (dec, "Could not allocate memory.");
return FALSE;
--
Configure bugmail: http://bugzilla.gnome.org/userprefs.cgi?tab=email
More information about the Gstreamer-bugs
mailing list