[gst-devel] Two alsasrc in the one pipeline
Vitaly Mayatskih
v.mayatskih at gmail.com
Wed Jul 4 08:38:57 CEST 2007
I need to mix streams from two soundcards and mux it with some video. I have
built a sample pipeline with one soundcard and it works fine:
gst-launch -v videotestsrc num-buffers=100 ! ffmpegcolorspace !
ffdeinterlace ! tee name="tee0" ! fakesink
\
tee0. ! queue ! ffenc_h263p ! tee name="tee1" ! fakesink
\
tee1. ! queue ! matroskamux name="mux" ! filesink location="/tmp/1.mkv"
\
alsasrc device="hw:0" ! "audio/x-raw-int,width=16,rate=48000,channels=2"
! adder name="mix"
\
! tee name="tee2" ! ffenc_ac3 ! tee name="tee3" !
"audio/x-ac3,width=16,rate=48000,channels=2" ! mux.
\
tee3. ! queue ! fakesink
When I add second card (even without linking to the 'adder' element) then
pipeline stops
alsasrc device="hw:1" ! "audio/x-raw-int,width=16,rate=48000,channels=2"
! fakesink
The error is:
Setting pipeline to PLAYING ...
0:00:00.231934000 15579 0x804f050 WARN pipeline
gstpipeline.c:568:gst_pipeline_change_state:<pipeline0>
error: Selected clock cannot be used in pipeline.
0:00:00.232189000 15579 0x804f050 WARN pipeline
gstpipeline.c:568:gst_pipeline_change_state:<pipeline0>
error: Pipeline cannot operate with selected clock
ERROR: pipeline doesn't want to play
In my C-program I have to manually set pipeline's clock (got it from
alsasrc) and it works, but I don't know how to work correctly with two
alsasrcs.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20070704/723dfe4b/attachment.htm>
More information about the gstreamer-devel
mailing list