[gst-devel] Bug in osxaudiosrc? (Mac OS 10.5.5)

Eric Zhang nicolas.m.zhang at gmail.com
Fri Nov 14 03:01:48 CET 2008


Hi, gstreamer-devel:

    I have not Mac so I cannot test your problem. I'd like to get one but
Mac is expensive in China and seems that scratchbox cannot be installed on
Mac. I need a cross-compile environment so now Linux is the prefer OS for
me.

    Sjoerd, Maybe you should run this pipeline with root privilege? In
Linux, we use `sudo' to get root permission.

Eric Zhang

2008/11/13 Sjoerd Op 't Land <sjoerd at intercue.nl>

> Hello all,
>
> Meanwhile I read some more on autoplugging and capfilters, but I still
> can't seem to get this pipeline to work. To determine whether or not
> this is a bug, could anyone using a Mac try these pipelines and report
> on the results? For example, does it work under 10.4?
>
> I also mailed with the creator of the plugin, but he wrote:
> > Please send to the gstreamer-devel mailing list.
> >
> > Zaheer
>
>
> And so I did...
>
> Thanks in advance for any input,
> Sjoerd Op 't Land
>
> Op 12 nov 2008, om 09:11 heeft Sjoerd Op 't Land het volgende
> geschreven:
>
> > Hi Eric,
> >
> > Thanks for your quick response. In fact my problem is with
> > osxaudiosrc, so let's focus on that element. In the source code of
> > osxaudiosrc, I found this "Example launch line"
> >
> >   gst-launch -v -m osxaudiosrc ! fakesink
> >
> > Which generates (...)osxaudiosrc0: Could not negotiate format.
> > Apparently, either (a) there is no format that satisfies the pads of
> > osxaudiosrc and fakesink, or (b) there are multiple formats that
> > satisfy the pads of osxaudiosrc and fakesink (is this reasoning
> > correct?). Adding audioconvert ! audioresample does not help:
> >
> >   gst-launch -v -m osxaudiosrc ! audioconvert ! audioresample !
> > fakesink
> >
> > Also results in (...)osxaudiosrc0: Could not negotiate format. Perhaps
> > I should force the format:
> >
> >   gst-launch -v -m osxaudiosrc ! audioconvert ! audioresample ! audio/
> > x-raw-float,rate=44100,channels=2,width=32,depth=32 ! fakesink
> >
> >   gst-launch -v -m osxaudiosrc ! audio/x-raw-
> > float,rate=44100,channels=2,width=32,depth=32 ! audioconvert !
> > audioresample ! audio/x-raw-
> > float,rate=44100,channels=2,width=32,depth=32 ! fakesink
> >
> > Both result in (...)osxaudiosrc0: Could not negotiate format. For
> > completeness I added the complete output at the bottom of this e-mail.
> >
> > Thanks in advance for any suggestions,
> > Sjoerd Op 't Land
> >
> > Op 12 nov 2008, om 02:29 heeft Eric Zhang het volgende geschreven:
> >
> >> Hi, gstreamer-devel:
> >>
> >>    Actually, I don't get what your problem is. Maybe this is
> >> because a language limitation. if you wanna use osxaudiosink, add
> >> converter or any other filter elements into your pipeline, otherwise
> >> the not-negotiation error occurs. This is the sample pipeline from
> >> osxaudiosink's manual:
> >>
> >> gst-launch -v filesrc location=sine.ogg ! oggdemux ! vorbisdec !
> >> audioconvert ! audioresample ! osxaudiosink
> >>
> >>    I think your can read gstreamer developer guide and maybe you
> >> will figure out the answer yourself while reading it.
> >>
> >> Eric Zhang
> >>
> >>
> >> 2008/11/11 Sjoerd Op 't Land <sjoerd at intercue.nl>
> >> Hello all,
> >>
> >> I am new to gstreamer, so please forgive me if the errors encountered
> >> are due to my inexperience. I am running Mac OS 10.5.5 on a MacBook
> >> Core 2 Duo and I compiled gstreamer, gst-plugins-base and gst-
> >> plugins-
> >> good from cvs (0.10.21.1).
> >>
> >> To start off, I wanted to create an audio loopthrough. First, I tried
> >> to get the output to work. With a little modification, I was able to
> >> produce a sine:
> >>
> >>> gst-launch audiotestsrc ! audioconvert ! audio/x-raw-
> >> float,channels=2,width=32,depth=32 ! osxaudiosink
> >>
> >> (My first attempt failed, I don't know whether this is expected
> >> behaviour:
> >>> gst-launch audiotestsrc ! osxaudiosink
> >> Setting pipeline to PAUSED ...
> >> Pipeline is PREROLLING ...
> >> ERROR: from element /GstPipeline:pipeline0/
> >> GstAudioTestSrc:audiotestsrc0: Internal data flow error.
> >> Additional debug info:
> >> gstbasesrc.c(2292): gst_base_src_loop (): /GstPipeline:pipeline0/
> >> GstAudioTestSrc:audiotestsrc0:
> >> streaming task paused, reason not-negotiated (-4)
> >> ERROR: pipeline doesn't want to preroll.
> >> Setting pipeline to NULL ...
> >> FREEING pipeline ...)
> >>
> >> The reason I am mailing you, is that I can't seem to get osxaudiosrc
> >> to function, tried various stream types and convert/resample options.
> >> The command line suggested in the source code unfortunately does not
> >> function:
> >>
> >>> gst-launch -v -m osxaudiosrc ! fakesink
> >> Setting pipeline to PAUSED ...
> >> ERROR: Pipeline doesn't want to pause.
> >> Got Message from element "fakesink0" (state-changed):
> >> GstMessageState,
> >> old-state=(GstState)GST_STATE_NULL, new-
> >> state=(GstState)GST_STATE_READY, pending-
> >> state=(GstState)GST_STATE_VOID_PENDING;
> >> Got Message from element "osxaudiosrc0" (state-changed):
> >> GstMessageState, old-state=(GstState)GST_STATE_NULL, new-
> >> state=(GstState)GST_STATE_READY, pending-
> >> state=(GstState)GST_STATE_VOID_PENDING;
> >> Got Message from element "pipeline0" (state-changed):
> >> GstMessageState,
> >> old-state=(GstState)GST_STATE_NULL, new-
> >> state=(GstState)GST_STATE_READY, pending-
> >> state=(GstState)GST_STATE_PAUSED;
> >> Got Message from element "osxaudiosrc0" (error): GstMessageError,
> >> gerror=(GstGError)(NULL), debug=(string)"gstbasesrc.c\(2484\):\
> >> gst_base_src_start\ \(\):\ /GstPipeline:pipeline0/
> >> GstOsxAudioSrc:osxaudiosrc0:\012Check\ your\ filtered\ caps\,\ if\
> >> any";
> >> ERROR: from element /GstPipeline:pipeline0/
> >> GstOsxAudioSrc:osxaudiosrc0: Could not negotiate format
> >> Additional debug info:
> >> gstbasesrc.c(2484): gst_base_src_start (): /GstPipeline:pipeline0/
> >> GstOsxAudioSrc:osxaudiosrc0:
> >> Check your filtered caps, if any
> >> Setting pipeline to NULL ...
> >> FREEING pipeline ...
> >>
> >> Thanks in advance for any suggestions. Again, I apologise beforehand
> >> if this is an error of mine, due to my inexperience with GStreamer.
> >>
> >> Best regards,
> >> Sjoerd Op 't Land
> >
> > ========= Output listing 1 =========
> > $ gst-launch -v -m osxaudiosrc ! fakesink
> > Setting pipeline to PAUSED ...
> > ERROR: Pipeline doesn't want to pause.
> > Got Message from element "fakesink0" (state-changed): GstMessageState,
> > old-state=(GstState)GST_STATE_NULL, new-
> > state=(GstState)GST_STATE_READY, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "osxaudiosrc0" (state-changed):
> > GstMessageState, old-state=(GstState)GST_STATE_NULL, new-
> > state=(GstState)GST_STATE_READY, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "pipeline0" (state-changed): GstMessageState,
> > old-state=(GstState)GST_STATE_NULL, new-
> > state=(GstState)GST_STATE_READY, pending-
> > state=(GstState)GST_STATE_PAUSED;
> > Got Message from element "osxaudiosrc0" (error): GstMessageError,
> > gerror=(GstGError)(NULL), debug=(string)"gstbasesrc.c\(2484\):\
> > gst_base_src_start\ \(\):\ /GstPipeline:pipeline0/
> > GstOsxAudioSrc:osxaudiosrc0:\012Check\ your\ filtered\ caps\,\ if\
> > any";
> > ERROR: from element /GstPipeline:pipeline0/
> > GstOsxAudioSrc:osxaudiosrc0: Could not negotiate format
> > Additional debug info:
> > gstbasesrc.c(2484): gst_base_src_start (): /GstPipeline:pipeline0/
> > GstOsxAudioSrc:osxaudiosrc0:
> > Check your filtered caps, if any
> > Setting pipeline to NULL ...
> > FREEING pipeline ...
> >
> > ========= Output listing 2 =========
> > $ gst-launch -v -m osxaudiosrc ! audioconvert ! audioresample !
> > fakesink
> > Setting pipeline to PAUSED ...
> > ERROR: Pipeline doesn't want to pause.
> > Got Message from element "fakesink0" (state-changed): GstMessageState,
> > old-state=(GstState)GST_STATE_NULL, new-
> > state=(GstState)GST_STATE_READY, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "audioresample0" (state-changed):
> > GstMessageState, old-state=(GstState)GST_STATE_NULL, new-
> > state=(GstState)GST_STATE_READY, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "audioconvert0" (state-changed):
> > GstMessageState, old-state=(GstState)GST_STATE_NULL, new-
> > state=(GstState)GST_STATE_READY, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "osxaudiosrc0" (state-changed):
> > GstMessageState, old-state=(GstState)GST_STATE_NULL, new-
> > state=(GstState)GST_STATE_READY, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "pipeline0" (state-changed): GstMessageState,
> > old-state=(GstState)GST_STATE_NULL, new-
> > state=(GstState)GST_STATE_READY, pending-
> > state=(GstState)GST_STATE_PAUSED;
> > Got Message from element "audioresample0" (state-changed):
> > GstMessageState, old-state=(GstState)GST_STATE_READY, new-
> > state=(GstState)GST_STATE_PAUSED, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "audioconvert0" (state-changed):
> > GstMessageState, old-state=(GstState)GST_STATE_READY, new-
> > state=(GstState)GST_STATE_PAUSED, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "osxaudiosrc0" (error): GstMessageError,
> > gerror=(GstGError)(NULL), debug=(string)"gstbasesrc.c\(2484\):\
> > gst_base_src_start\ \(\):\ /GstPipeline:pipeline0/
> > GstOsxAudioSrc:osxaudiosrc0:\012Check\ your\ filtered\ caps\,\ if\
> > any";
> > ERROR: from element /GstPipeline:pipeline0/
> > GstOsxAudioSrc:osxaudiosrc0: Could not negotiate format
> > Additional debug info:
> > gstbasesrc.c(2484): gst_base_src_start (): /GstPipeline:pipeline0/
> > GstOsxAudioSrc:osxaudiosrc0:
> > Check your filtered caps, if any
> > Setting pipeline to NULL ...
> > FREEING pipeline ...
> >
> > ========= Output listing 3 =========
> > $ gst-launch -v -m osxaudiosrc ! audioconvert ! audioresample ! audio/
> > x-raw-float,rate=44100,channels=2,width=32,depth=32 ! fakesink
> > Setting pipeline to PAUSED ...
> > ERROR: Pipeline doesn't want to pause.
> > Got Message from element "fakesink0" (state-changed): GstMessageState,
> > old-state=(GstState)GST_STATE_NULL, new-
> > state=(GstState)GST_STATE_READY, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "capsfilter0" (state-changed):
> > GstMessageState, old-state=(GstState)GST_STATE_NULL, new-
> > state=(GstState)GST_STATE_READY, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "audioresample0" (state-changed):
> > GstMessageState, old-state=(GstState)GST_STATE_NULL, new-
> > state=(GstState)GST_STATE_READY, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "audioconvert0" (state-changed):
> > GstMessageState, old-state=(GstState)GST_STATE_NULL, new-
> > state=(GstState)GST_STATE_READY, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "osxaudiosrc0" (state-changed):
> > GstMessageState, old-state=(GstState)GST_STATE_NULL, new-
> > state=(GstState)GST_STATE_READY, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "pipeline0" (state-changed): GstMessageState,
> > old-state=(GstState)GST_STATE_NULL, new-
> > state=(GstState)GST_STATE_READY, pending-
> > state=(GstState)GST_STATE_PAUSED;
> > Got Message from element "capsfilter0" (state-changed):
> > GstMessageState, old-state=(GstState)GST_STATE_READY, new-
> > state=(GstState)GST_STATE_PAUSED, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "audioresample0" (state-changed):
> > GstMessageState, old-state=(GstState)GST_STATE_READY, new-
> > state=(GstState)GST_STATE_PAUSED, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "audioconvert0" (state-changed):
> > GstMessageState, old-state=(GstState)GST_STATE_READY, new-
> > state=(GstState)GST_STATE_PAUSED, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "osxaudiosrc0" (error): GstMessageError,
> > gerror=(GstGError)(NULL), debug=(string)"gstbasesrc.c\(2484\):\
> > gst_base_src_start\ \(\):\ /GstPipeline:pipeline0/
> > GstOsxAudioSrc:osxaudiosrc0:\012Check\ your\ filtered\ caps\,\ if\
> > any";
> > ERROR: from element /GstPipeline:pipeline0/
> > GstOsxAudioSrc:osxaudiosrc0: Could not negotiate format
> > Additional debug info:
> > gstbasesrc.c(2484): gst_base_src_start (): /GstPipeline:pipeline0/
> > GstOsxAudioSrc:osxaudiosrc0:
> > Check your filtered caps, if any
> > Setting pipeline to NULL ...
> > FREEING pipeline ...
> >
> > ========= Output listing 4 =========
> > $ gst-launch -v -m osxaudiosrc ! audio/x-raw-
> > float,rate=44100,channels=2,width=32,depth=32 ! audioconvert !
> > audioresample ! audio/x-raw-
> > float,rate=44100,channels=2,width=32,depth=32 ! fakesink
> > Setting pipeline to PAUSED ...
> > ERROR: Pipeline doesn't want to pause.
> > Got Message from element "fakesink0" (state-changed): GstMessageState,
> > old-state=(GstState)GST_STATE_NULL, new-
> > state=(GstState)GST_STATE_READY, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "capsfilter1" (state-changed):
> > GstMessageState, old-state=(GstState)GST_STATE_NULL, new-
> > state=(GstState)GST_STATE_READY, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "audioresample0" (state-changed):
> > GstMessageState, old-state=(GstState)GST_STATE_NULL, new-
> > state=(GstState)GST_STATE_READY, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "audioconvert0" (state-changed):
> > GstMessageState, old-state=(GstState)GST_STATE_NULL, new-
> > state=(GstState)GST_STATE_READY, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "capsfilter0" (state-changed):
> > GstMessageState, old-state=(GstState)GST_STATE_NULL, new-
> > state=(GstState)GST_STATE_READY, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "osxaudiosrc0" (state-changed):
> > GstMessageState, old-state=(GstState)GST_STATE_NULL, new-
> > state=(GstState)GST_STATE_READY, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "pipeline0" (state-changed): GstMessageState,
> > old-state=(GstState)GST_STATE_NULL, new-
> > state=(GstState)GST_STATE_READY, pending-
> > state=(GstState)GST_STATE_PAUSED;
> > Got Message from element "capsfilter1" (state-changed):
> > GstMessageState, old-state=(GstState)GST_STATE_READY, new-
> > state=(GstState)GST_STATE_PAUSED, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "audioresample0" (state-changed):
> > GstMessageState, old-state=(GstState)GST_STATE_READY, new-
> > state=(GstState)GST_STATE_PAUSED, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "audioconvert0" (state-changed):
> > GstMessageState, old-state=(GstState)GST_STATE_READY, new-
> > state=(GstState)GST_STATE_PAUSED, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "capsfilter0" (state-changed):
> > GstMessageState, old-state=(GstState)GST_STATE_READY, new-
> > state=(GstState)GST_STATE_PAUSED, pending-
> > state=(GstState)GST_STATE_VOID_PENDING;
> > Got Message from element "osxaudiosrc0" (error): GstMessageError,
> > gerror=(GstGError)(NULL), debug=(string)"gstbasesrc.c\(2484\):\
> > gst_base_src_start\ \(\):\ /GstPipeline:pipeline0/
> > GstOsxAudioSrc:osxaudiosrc0:\012Check\ your\ filtered\ caps\,\ if\
> > any";
> > ERROR: from element /GstPipeline:pipeline0/
> > GstOsxAudioSrc:osxaudiosrc0: Could not negotiate format
> > Additional debug info:
> > gstbasesrc.c(2484): gst_base_src_start (): /GstPipeline:pipeline0/
> > GstOsxAudioSrc:osxaudiosrc0:
> > Check your filtered caps, if any
> > Setting pipeline to NULL ...
> > FREEING pipeline ...
> >
> >
> >
> >
> > -------------------------------------------------------------------------
> > This SF.Net email is sponsored by the Moblin Your Move Developer's
> > challenge
> > Build the coolest Linux based applications with Moblin SDK & win
> > great prizes
> > Grand prize is a trip for two to an Open Source event anywhere in
> > the world
> > http://moblin-contest.org/redirect.php?banner_id=100&url=/
> > _______________________________________________
> > gstreamer-devel mailing list
> > gstreamer-devel at lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
> >
>
>
> -------------------------------------------------------------------------
> This SF.Net email is sponsored by the Moblin Your Move Developer's
> challenge
> Build the coolest Linux based applications with Moblin SDK & win great
> prizes
> Grand prize is a trip for two to an Open Source event anywhere in the world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20081114/e618cc5d/attachment.htm>


More information about the gstreamer-devel mailing list