After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 148617 - AU files encoded with mulaw not working
AU files encoded with mulaw not working
Status: RESOLVED NOTABUG
Product: GStreamer
Classification: Platform
Component: gst-plugins
git master
Other All
: Normal normal
: NONE
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2004-07-27 21:39 UTC by Brian Cameron
Modified: 2004-12-22 21:47 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
au file encoded with mulaw (12.62 KB, application/octet-stream)
2004-07-27 21:40 UTC, Brian Cameron
Details

Description Brian Cameron 2004-07-27 21:39:56 UTC
Attached find a mulaw encoded AU file that the gstreamer au plugin doesn't play.
 gstreamer generates no errors, and looks like it is playing the file, but no sound.
Comment 1 Brian Cameron 2004-07-27 21:40:56 UTC
Created attachment 29968 [details]
au file encoded with mulaw
Comment 2 Johan (not receiving bugmail) Dahlin 2004-07-28 12:19:50 UTC
gst-launch filesrc location=test.mulaw ! mulawdec ! osssink

Works fine here with latest CVS.

Closing, Reopen, if you still can't play it.
Comment 3 Ronald Bultje 2004-07-28 13:57:44 UTC
He's on Solaris, so please test on Solaris before closing, Johan.
Comment 4 Benjamin Otte (Company) 2004-08-01 12:07:52 UTC
1) The file doesn't play back fine with mulawdec, there's a snap at the
beginning that doesn't belong there.
2) This is because it's an au file, not raw mulaw.
3) So the correct pipeline is gst-launch filesrc location=test.au ! auparse !
mulawdec ! osssink
4) The real pipeline to test though is autoplugging, which would be gst-launch
filesrc location=test.au ! spider ! osssink

And the pipelines listed in 3 and 4 work fine (with recent cvs) on both my x86
and PPC, so it's not an endianness issue.


I'm closing the bug, because if I interpret it correctly, Brian tried gst-launch
filesrc location=test.au ! auparse ! osssink which does not ever link auparse to
osssink because auparse uses SOMETIMES pads and those are only linked when possible.
Comment 5 Brian Cameron 2004-08-04 22:49:15 UTC
Even with the pipelines mentioned in #3 and #4, I can't get Sun's au files to
play properly.  gst-launch seems to play them, but I hear no sound.  From your
description, I get the impression that there might be something wrong with Sun's
au files.  Could you explain what you mean by "a snap at the beginning that
doesn't belong there".  And since none of Sun's au files that we ship with
Solaris in /usr/share/audio/samples/au seem to play, are we positive that the
problem is that these files are somehow corrupted?

I'm re-opening the bug just so it gets noticed and my questions can get a
response, though I am agreeable if we end up determining that this isn't a bug.
Comment 6 Ronald Bultje 2004-08-05 13:28:42 UTC
Does auparse or mulawdec by any accident read unaligned integers from buffers
without using the appropriate macros? That'd explain the Solaris-specificness of
this bug.
Comment 7 Brian Cameron 2004-08-16 18:50:54 UTC
pinging again.  Any responses to the querries I've asked.

Also, on Solaris (using gstreamer 0.8.4 and gst-plugins 0.8.3) I see this when
I try to run the "gst-launch filesrc location=flush.au ! spider ! sunaudiosink"
pipeline:

Execution ended after 13 iterations (sum 89236000 ns, average 6864307 ns, min
646000 ns, max 65865000 ns).

(process:29046): GLib-GObject-WARNING **: invalid unclassed pointer in cast to
`GstObject'

(process:29046): GStreamer-CRITICAL **: file gstobject.c: line 223: assertion
`GST_IS_OBJECT (object)' failed

(process:29046): GLib-GObject-WARNING **: invalid uninstantiatable type
`<unknown>' in cast to `GObject'

(process:29046): GLib-GObject-WARNING **: instance of invalid non-instantiatable
type `<unknown>'

(process:29046): GLib-GObject-CRITICAL **: file gsignal.c: line 2122: assertion
`G_TYPE_CHECK_INSTANCE (instance)' failed

(process:29046): GLib-GObject-WARNING **: invalid uninstantiatable type
`<unknown>' in cast to `GstObject'

(process:29046): GStreamer-CRITICAL **: file gstobject.c: line 242: assertion
`GST_IS_OBJECT (object)' failed

(process:29046): GLib-GObject-WARNING **: invalid uninstantiatable type
`<unknown>' in cast to `GstObject'

(process:29046): GLib-GObject-WARNING **: invalid uninstantiatable type
`<unknown>' in cast to `GstElement'

(process:29046): GStreamer-CRITICAL **: file gstelement.c: line 2728: assertion
`GST_IS_ELEMENT (element)' failed

(process:29046): GStreamer-CRITICAL **: file gstelement.c: line 2728: assertion
`GST_IS_ELEMENT (element)' failed

(process:29046): GLib-GObject-WARNING **: invalid uninstantiatable type
`<unknown>' in cast to `GstObject'

(process:29046): GLib-GObject-WARNING **: invalid uninstantiatable type
`<unknown>' in cast to `GstElement'

(process:29046): GStreamer-CRITICAL **: file gstelement.c: line 2728: assertion
`GST_IS_ELEMENT (element)' failed

(process:29046): GStreamer-CRITICAL **: file gstelement.c: line 2728: assertion
`GST_IS_ELEMENT (element)' failed

(process:29046): GLib-GObject-WARNING **: invalid uninstantiatable type
`<unknown>' in cast to `GstObject'

(process:29046): GLib-GObject-WARNING **: invalid uninstantiatable type
`<unknown>' in cast to `GstElement'

(process:29046): GStreamer-CRITICAL **: file gstelement.c: line 2728: assertion
`GST_IS_ELEMENT (element)' failed

(process:29046): GStreamer-CRITICAL **: file gstelement.c: line 2728: assertion
`GST_IS_ELEMENT (element)' failed

(process:29046): GLib-GObject-WARNING **: invalid uninstantiatable type
`<unknown>' in cast to `GstObject'

(process:29046): GLib-GObject-WARNING **: invalid uninstantiatable type
`<unknown>' in cast to `GstElement'

(process:29046): GStreamer-CRITICAL **: file gstelement.c: line 2728: assertion
`GST_IS_ELEMENT (element)' failed

(process:29046): GStreamer-CRITICAL **: file gstelement.c: line 2728: assertion
`GST_IS_ELEMENT (element)' failed

(process:29046): GLib-GObject-WARNING **: invalid uninstantiatable type
`<unknown>' in cast to `GstObject'
Bus Error(coredump)

Here's the stack trace of the core file:

 ff1b0350 gst_bin_unset_element_sched (ff24f3f8, 30343629, 1, 0, 16c, 0) + 318
 febf6b9c g_list_foreach (92e78, ff1b0038, 398d8, ff265acc, 16c, 0) + 44
 ff1b02d8 gst_bin_unset_element_sched (ff24f3f8, 9a338, 1, 0, 255, 0) + 2a0
 ff1b1274 gst_bin_remove_func (9cac0, 995b0, ff24f6dc, ff265b19, 255, 0) + 134
 ff1b1874 gst_bin_remove (ff24f6e8, 9aa98, ff24fb24, ff265baa, 383, 9cac0) + 21c
 ff1b3068 gst_bin_dispose (9cac0, 50, 1, 0, 0, 9cac0) + 138
 ff1fa930 gst_pipeline_dispose (9cac0, 31274, 1, 0, 0, 9cac0) + 110
 fed3aa1c g_object_last_unref (9cac0, 50, 1, 0, f6, 9cac0) + 8c
 fed3f0b4 g_object_unref (9cac0, 50, ff24eb10, ff265621, f6, 9cac0) + 10c
 ff1ab230 gst_object_unref (f6, 9cac0, ff24eb1c, 1, 0, 15) + 210
 0001497c main     (7, ffbfee2c, ffbfee4c, 27800, feee0100, feee0140) + 7dc
 00013000 _start   (0, 0, 0, 0, 0, 0) + 108
Comment 8 Brian Cameron 2004-09-28 17:03:49 UTC
I don't know what happened.  I just tested this again, and it seems to be
working fine now.  Sorry about any confusion.