Reputation: 113
I'm experimenting a bit with GStreamer (ossbuild 0.10.7) on Windows, but I can't seem to make audio streaming between two computers work. All I hear at the receiver side is a short beep followed by silence.
This is the sender pipeline:
gst-launch -v audiotestsrc ! audioconvert ! rtpL16pay ! udpsink host=224.0.0.7 auto-multicast=true port=4444
This is the receiver pipeline:
gst-launch -v udpsrc multicast-group=224.0.0.7 port=4444 caps="application/x-rtp, media=(string)audio, channels=(int)1, clock-rate=(int)44100, encoding-name=(string)L16" ! gstrtpbin ! rtpL16depay ! audioconvert ! queue ! autoaudiosink
I've already tried different queue settings and codecs. Same thing when I try to stream an audio file, all I hear is about 1 second of it. What could be the problem?
Upvotes: 2
Views: 5116
Reputation: 113
Appears to be a problem with autoaudiosink and rtpL16. This pipeline works:
Sender:
gst-launch -v directsoundsrc ! audioresample ! audio/x-raw-int, rate=8000 ! audioconvert ! udpsink host=224.0.0.7 port=4444
Receiver:
gst-launch -v udpsrc multicast-group=224.0.0.7 port=4444 caps="audio/x-raw-int, channels=(int)2, rate=(int)8000, width=(int)16, depth=(int)16" ! audioconvert ! directsoundsink
This pipeline also works:
Sender:
gst-launch -v directsoundsrc ! audioresample ! audio/x-raw-int, rate=22000 ! faac ! audio/mpeg,mpegversion=4 ! rtpmp4apay ! udpsink host=224.0.0.7 port=4444
Receiver:
gst-launch -v udpsrc multicast-group=224.0.0.7 port=4444 caps="application/x-rtp, channels=(int)2, clock-rate=(int)22000, encoding-name=(string)MP4A-LATM, config=(string)40002410" ! gstrtpbin ! rtpmp4adepay ! faad ! directsoundsink
Upvotes: 1