How to Create a Live Radio on YouTube?

Recently one of my customer need to restream their Radio Live Stream on YouTube. So, I helped them to do Live Radio Stream on YouTube.

If you also need to stream Radio Stream to YouTube you will need a VPS server with FFmpeg installed. FFmpeg is a free open source, cross-platform solution to record, convert and stream audio and video.

Ubuntu Install FFmpeg

# apt install ffmpeg

You need to get YouTube Live URL & KEY from YouTube Live Dashboard

radio.sh

#! /bin/bash

VBR="1500k"
FPS="24"
QUAL="superfast"

YOUTUBE_URL="rtmp://a.rtmp.youtube.com/live2"
KEY="xxxx-xxxx-xxxx-xxxx"

VIDEO_SOURCE="/home/radio.gif"
AUDIO_SOURCE="http://[radio-server-ip-address]:[port]/stream"

ffmpeg \
    -re -f lavfi -i "movie=filename=$VIDEO_SOURCE:loop=0, setpts=N/(FRAME_RATE*TB)" \
    -thread_queue_size 512 -i "$AUDIO_SOURCE" \
    -map 0:v:0 -map 1:a:0 \
    -map_metadata:g 1:g \
    -vcodec libx264 -pix_fmt yuv420p -preset $QUAL -r $FPS -g $(($FPS * 2)) -b:v $VBR \
    -acodec libmp3lame -ar 44100 -threads 6 -qscale:v 3 -b:a 320000 -bufsize 512k \
    -f flv "$YOUTUBE_URL/$KEY"

Replace [radio-server-ip-address] with your Radio Server IP Address and [port] with Radio Stream Port

Find valid Radio Stream URL

Replace KEY with YouTube Live stream Key

VIDEO_SOURCE will be used to show animated gif as placeholder for YouTube Video while broadcasting Music from Radio Stream

Run Radio Live Stream for YouTube

# chmod a+x radio.sh
# ./radio.sh

Make this shell script run in background

Make sure your Radio Stream is Online, you can check your radio stream here Is Radio Stream Online?