8

I want to send the livestream of my webcam to YouTube. I can follow YouTube's guide up to step 8. "Stream Connection" tells me there is "No data" and the button "Go Live" remains unclickable. A screenshot of this situation can be seen at

image

As encoding software, I was planning on using FFmpeg because it can run from the target platform, a Raspberry Pi with Raspbian. A USB webcam supported by video4linux2 is used.

FFmpeg's wiki shows that streaming a file can be done with the following:

ffmpeg -re -i input.mkv \
-c:v libx264 -preset veryfast -maxrate 3000k \
-bufsize 6000k -pix_fmt yuv420p -g 50 -c:a aac -b:a 160k -ac 2 \
-ar 44100 -f flv rtmp://live.twitch.tv/app/<stream key>

I modified this command in the following ways: 1. It takes the video stream from the webcam with -f v4l2 -i /dev/video0. 2. It does not broadcast any audio with -an. 3. It broadcasts to YouTube's RTMP server, rtmp://a.rtmp.youtube.com/live2/<stream key>

The final version of the command is now:

RTMP_URL="rtmp://a.rtmp.youtube.com/live2"
STREAM_KEY="secr-etse-cret-secr"
OUTPUT=$RTMP_URL/$STREAM_KEY
ffmpeg -re -f v4l2 -i /dev/video0 \
-c:v libx264 -preset veryfast -maxrate 3000k \
-bufsize 6000k -pix_fmt yuv420p -g 50 -an \
-f flv $OUTPUT

When I run this command, I would expect that "Stream connection" would change to something else than "No data" after a few seconds, but that does not happen.

I have tried recording the stream to a local file with:

ffmpeg -re -f v4l2 -i /dev/video0 \
-c:v libx264 -preset veryfast -maxrate 3000k \
-bufsize 6000k -pix_fmt yuv420p -g 50 -an \
-f flv test.flv

This worked fine. That demonstrates to me that the issue is with getting the video stream accepted by YouTube.

Caconde
  • 4,177
  • 7
  • 35
  • 32
pkok
  • 81
  • 1
  • 1
  • 2

1 Answers1

1

The code below works very well using Windows, you may adjust to fit for your need

ffmpeg -loglevel debug -threads:v 2 -threads:a 8 -filter_threads 2 \
       -thread_queue_size 512  -f dshow -i video="HP Wide Vision HD" \
       -f dshow -i audio="Microphone Array (Realtek Audio)" -pix_fmt yuv420p \
       -c:v libx264 -qp:v 19 -profile:v high -rc:v cbr_ld_hq -level:v 4.2 \
       -r:v 60 -g:v 120 -bf:v 3 -refs:v 16 \
       -f flv rtmp://youtube_stream_url/stream_key
Abayomi Israel
  • 589
  • 6
  • 14