[gst-devel] Problem with recording audio
Markus Westergren
markus.westergren at orexis.se
Wed Jan 29 01:51:02 CET 2003
Hi Ronald,
On Tuesday 28 January 2003 17:33, you wrote:
> Hi Markus,
>
> On Tue, 2003-01-28 at 16:52, Markus Westergren wrote:
> > If I try using OSS instead I can play audio but when I try to record
> > audio the tst.wav file is empty and the process eats all available CPU.
> >
> > gst-launch osssrc device=/dev/dsp ! wavenc ! filesink location
> > =/tmp/tst.wav
> >
> > Is there anything I have missed? This worked with version 0.4.2 of
> > GStreamer and I noticed that there have been some changed to the valid
> > parameters to the OSS plugin.
> >
> > This have been tested on Debian Unstable with kernel 2.4.19
> > ALSA: 0.9.0rc6
> > GStreamer: 0.5.2 and CVS 0.7.0.1
>
> 0.5.2 or CVS? osssrc in CVS is fixed, the one in 0.5.2 is supposedly
> broken (some weirdo patch that shouldn't have been there).
>
Both 0.5.2 and the CVS version 0.7.0.1 from Jan 27 2003. Did a CVS update
today and now osssrc is working. A wav file is created which can be played
and the recorded sound sounds ok.
I get a new warning message, here are the output from the gst-launch command
above:
INFO (11984: 0) Initializing GStreamer Core Library version 0.7.0.1
INFO (11984: 0) CPU features: (c1c7f9ff) MMX 3DNOW MMXEXT
registry: loaded user_registry in 0.000245 seconds
(/home/markus/.gstreamer/registry.xml)
registry: loaded global_registry in 0.423228 seconds
(/usr/local/var/cache/gstreamer-0.7/registry.xml)
GStreamer-INFO: 0 live buffer(s)
GStreamer-INFO: 0 live bufferpool(s)
GStreamer-INFO: 0 live event(s)
RUNNING pipeline
/pipeline0/wavenc0.src: caps = (GstCaps *) { audio/x-wav; }
/pipeline0/filesink0.sink: caps = (GstCaps *) { audio/x-wav; }
/pipeline0/osssrc0.src: active = TRUE
/pipeline0/wavenc0.sink: active = TRUE
/pipeline0/wavenc0.src: active = TRUE
/pipeline0/filesink0.sink: active = TRUE
** (process:11984): WARNING **: couldn't set requested OSS parameters, enjoy
the noise :)
/pipeline0/wavenc0.sink: caps = (GstCaps *) { audio/raw; format=(string)
'int'; depth=(int) 16; endianness=(int) 1234; width=(int) 16; law=(int) 0;
signed=(boolean) TRUE; rate=(int) 44101; channels=(int) 2 }
/pipeline0/osssrc0.src: caps = (GstCaps *) { audio/raw; format=(string)
'int'; depth=(int) 16; endianness=(int) 1234; width=(int) 16; law=(int) 0;
signed=(boolean) TRUE; rate=(int) 44101; channels=(int) 2 }
So I guess I have to set the caps for the src pad on the gstosssrc element if
I want to use this in my own C code.
/Markus
More information about the gstreamer-devel
mailing list