Skip to content

Instantly share code, notes, and snippets.

@philhartung
Last active December 7, 2022 14:20
Show Gist options
  • Save philhartung/7291c1011cf2fb43fe565ead083a91a5 to your computer and use it in GitHub Desktop.
Save philhartung/7291c1011cf2fb43fe565ead083a91a5 to your computer and use it in GitHub Desktop.
AES67 <> Icecast relay with gstreamer
#!/bin/sh
gst-launch-1.0 udpsrc address=239.69.161.58 port=5004 multicast-iface=eth0 !\
application/x-rtp, clock-rate=48000, channels=2 !\
rtpjitterbuffer !\
rtpL24depay !\
audioconvert !\
lamemp3enc !\
shout2send mount=/test.mp3 port=8000 username=source password=XXX ip=10.10.0.100
@FplusOlivier
Copy link

FplusOlivier commented Dec 7, 2022

###Hello,
I try to use this script.

Many thanks because aes67 scripts are something rare...

It runs well but:
when I run it, sometimes Icecast server doesn't recieve anything.
and the script output shows :

déc. 07 14:34:49 aes67_icecast_fm.sh[1437613]: Définition du pipeline à PAUSED...
déc. 07 14:34:49 aes67_icecast_fm.sh[1437613]: Le pipeline est actif et n’a pas besoin de phase PREROLL…
déc. 07 14:34:49 aes67_icecast_fm.sh[1437613]: Le pipeline a terminé la phase PREROLL…
déc. 07 14:34:49 aes67_icecast_fm.sh[1437613]: Passage du pipeline à la phase PLAYING…
déc. 07 14:34:49 aes67_icecast_fm.sh[1437613]: New clock: GstSystemClock

when all is ok, the output looks like that :

déc. 07 14:34:49 aes67_icecast_fm.sh[1437613]: Définition du pipeline à PAUSED...
déc. 07 14:34:49 aes67_icecast_fm.sh[1437613]: Le pipeline est actif et n’a pas besoin de phase PREROLL…
déc. 07 14:34:49 aes67_icecast_fm.sh[1437613]: Le pipeline a terminé la phase PREROLL…
déc. 07 14:34:49 aes67_icecast_fm.sh[1437613]: Passage du pipeline à la phase PLAYING…
déc. 07 14:34:49 aes67_icecast_fm.sh[1437613]: New clock: GstSystemClock
déc. 07 14:34:49 aes67_icecast_fm.sh[1437613]: Redistribution de latence…
déc. 07 14:34:50 aes67_icecast_fm.sh[1437613]: Redistribution de latence…

(note the last 2 lines concerning latency)

Would you have any idea to solve it?
Could you tell me if this script would be ok to run 24/7 for relaying 3 audio streams on the same machine?

Thanks a lot

Have a nice day

Olivier

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment