I have this command that does not play sound and does not record a file (it creates, but the file length is 0 bytes). It is important that I want to save audio to wav from the src0 source.
gst-launch-1.0 audiomixer name=mixer udpsrc name=src0 uri=udp://127.0.0.1:3000 caps="application/x-rtp,media=audio,payload=8,clock-rate=8000,encoding-name=PCMA" ! tee name=app ! queue ! rtppcmadepay ! alawdec ! mixer.sink_0 udpsrc name=src1 uri=udp://127.0.0.1:3010 caps="application/x-rtp,media=audio,payload=8,clock-rate=8000,encoding-name=PCMA" ! queue ! rtppcmadepay ! alawdec ! mixer.sink_1 mixer. ! queue ! audioconvert ! audioresample ! audiorate ! volume name=vol volume=10.0 !audiopanorama name=panorama panorama=0 ! autoaudiosink name=audio_sink app. ! queue ! rtppcmadepay ! alawdec ! decodebin ! audioconvert ! wavenc name=wv ! filesink name=filesink location=input.wav
However, if I don’t use “tee”, then each command separately works:
I hear and receive sound:
gst-launch-1.0 audiomixer name=mixer udpsrc name=src0 uri=udp://127.0.0.1:3000 caps="application/x-rtp,media=audio,payload=8,clock-rate=8000,encoding-name=PCMA" ! queue ! rtppcmadepay ! alawdec ! mixer.sink_0 udpsrc name=src1 uri=udp://127.0.0.1:3010 caps="application/x-rtp,media=audio,payload=8,clock-rate=8000,encoding-name=PCMA" ! queue ! rtppcmadepay ! alawdec ! mixer.sink_1 mixer. ! queue ! audioconvert ! audioresample ! audiorate ! volume name=vol volume=10.0 ! audiopanorama name=panorama panorama=0 ! autoaudiosink name=audio_sink
I record a correct wav file with a non-zero length, which I can then listen to:
gst-launch-1.0 audiomixer name=mixer udpsrc name=src0 uri=udp://127.0.0.1:3000 caps="application/x-rtp,media=audio,payload=8,clock-rate=8000,encoding-name=PCMA" ! queue ! rtppcmadepay ! alawdec ! decodebin ! audioconvert ! wavenc name=wv ! filesink name=filesink location=input.wav
What am I doing wrong in the first command because of which there is no sound or recording to the file?