torch2424 / live-stream-radio

24/7 live stream video radio station CLI / API 📹 📻

Home Page:https://torch2424.github.io/live-stream-radio/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Buffering Consistant on 3 Different Pi Models

stefanbaranowski opened this issue · comments

Hi,

I was recently able to implement the project onto my Pi 3 B+, but have encountered a buffering issue when casting the live stream.

I have also tried this on a Pi 3 A+ as well as a new Pi 4 4gb RAM model, however the buffering remains.

I've recently upgraded my broadband at home to receive on average 14mb upload speed and have the Pi plugged in via ethernet cable.

When I enable the live stream, I receive a red 'stream health' warning on YouTube, stating 'Video Output Low'. I've attempted to optimize the settings within the .json file, but have been unsuccessful in optimizing the stream.

I am playing .mp3 files from the SD and have a short .gif video file playing.

Is there anyone who could help? Please let me know which information you would like to see so I can post a reply.

Thank you.

I would also like to add that when I change the Audio_Codec to 'libfdk_aac' within the .json file (following the instructions within the installation of Live-Stream-Radio) the stream is unable to play.

I wasn't sure if this could be the issue due to not fully optimizing for Pi.

Thanks.

Most of the times, "Video Output Low" means your device isn't fast enough to render the needed frames for the stream. As a first test, you might want to try using mp4 files rather than GIFs, I believe decoding them was faster. Another thing you could do is post your config in here (without your stream key) so we can take a look at your setup.

Hi, thanks for your reply!

I am currently set up on my Pi 3 B+ with a steady 14mbps upload speed via ethernet. The stream is live but is constantly buffering after 2-3 seconds.

I am using a 3.4mb WebM file as my video clip.

Here are the properties currently set within my .json file.

{
"stream_url": "rtmp://a.rtmp.youtube.com/live2/$stream_key",
"stream_key": "xxxx-xxxx-xxxx-xxxx",
"ffmpeg_path": "",
"video_codec": "libx264",
"audio_codec": "aac",
"audio_bit_rate": "128k",
"audio_sample_rate": "44100",
"normalize_audio": true,
"video_height": "720",
"video_width": "1280",
"video_bit_rate": "10000k",
"video_fps": "32",
"bufsize": "1000k",
"crf": "32",
"preset": "ultrafast",
"threads": 2,
"max_gif_size": "1080",
"api": {
"host": "localhost",
"port": "8000",
"key": "super-secret-api-key",
"number_of_history_items": 100
},
"radio": {
"audio_directory": "./audio",
"video_directory": "./video",
"overlay": {
"enabled": false,
"font_path": "./fonts/Lato-Regular.ttf",
"title": {
"enabled": false,
"text": "",
"font_color": "#FFFFFF",
"font_border": "#000000",
"font_size": "10",
"enable_scroll": false,
"font_scroll_speed": "20",
"position_x": "0",
"position_y": "5"
},
"artist": {
"enabled": false,
"label": "Artist: ",
"font_color": "#FFFFFF",
"font_border": "#000000",
"font_size": "10",
"position_x": "2",
"position_y": "15"
},
"album": {
"enabled": false,
"label": "Album: ",
"font_color": "#FFFFFF",
"font_border": "#000000",
"font_size": "10",
"position_x": "2",
"position_y": "25"
},
"song": {
"enabled": false,
"label": "Song: ",
"font_color": "#FFFFFF",
"font_border": "#000000",
"font_size": "10",
"position_x": "2",
"position_y": "25"
},
"image": {
"enabled": false,
"image_path": "./live-stream-radio-overlay-image.png",
"position_x": 0,
"position_y": 0
}
}
},
"interlude": {
"enabled": "false",
"frequency": "0.2",
"audio_directory": "./interludes/audio",
"video_directory": "./interludes/video",
"overlay": {
"enabled": false,
"font_path": "./fonts/Lato-Regular.ttf",
"title": {
"enabled": false,
"text": "Please wait, music shall resume shortly...",
"font_color": "#FFFFFF",
"font_border": "#000000",
"font_size": "10",
"position_x": "2",
"position_y": "5"
},
"image": {
"enabled": false,
"image_path": "/home/pi/myStream/andrew-neel-143525-unsplash.webm",
"position_x": 0,
"position_y": 0
}
}
}
}

Thank you.