I have 3 AM335x EVM boards.
I am trying to playback simultaneously 2 differents wav audio streams received from 2 Sitara EVMs sending RTP packets... kind like a 3-way telephone conversation where you can hear the 2 other callers if they talk at the same time (even if it is annoying)!
I made following simulation with my 3 Sitara EVM boards (let's name them EVM1, EVM2, EVM3) running linux+Gstreamer:
the host (receiver) test board is EVM1 with ip address=192.168.1.101.
1) I setup up EVM1 as RTP streams receiver:
gst-launch-0.10 -v udpsrc port=5555 caps="application/x-rtp" ! rtppcmadepay ! alawdec ! alsasink
2) The 2 other EVMs (EVM2 and EVM3) start sending RTP stream (differents audio streams for example)
- on EVM2: > gst-launch-0.10 filesrc location=audio2.wav ! wavparse ! audioresample ! alawenc ! rtppcmapay ! udpsink host=192.168.1.101 port=5555
- on EVM3: > gst-launch-0.10 fileserc location=audio3.wav ! audioresample ! alawenc ! rtppcmapay ! udpsink host=192.168.1.101 port=5555
From EVM1 audio Output, I am able to hear both audio sound coming from EVM2 and EVM3 at the same time, but the first audio playback that I started (audio2.wav from EVM2) sounds very corrupted as soon as I started the second audio playback (audio3.wav from EVM3). So, only audio3.wav sounds good while audio2.wav sound very corrupted at the same time.
My goal is to hear both audio simultaneously on EVM1 (even if it is not intelligeable) as in 3-way phone call, but it seems to me that EVM2 and EVM3 RTP streams may need to be mux and demux somewhere?
Can anyone give me a hint on how to achieve this task?