So I followed this until I hit issues.
When compiling ffmpeg for Raspberry Pi 3 I want to use all four cores of processor.
Where these instructions ( http://www.valmueller.net/stream-video-with-raspberry-pi-to-youtube/ ) say:
sudo make install
I replaced it with:
sudo make -j4 install
Testing the install of ffmpeg:
gives this error:
/usr/local/bin/ffmpeg: cannot execute binary file: Exec format error
I noticed that my full version of jessie must have had ffmpeg in it already so I removed it but it did not help:
I did not note the exact way I removed it but it was something like:
sudo apt-get remove ffmpeg
I removed the ffmpeg directory I had previously cloned ( /usr/src/ffmpeg) and cloned from another source:
Then rebuilt with no options to see what happened:
sudo make -j4 install
then ran stream on command line and it worked!
sudo raspivid -o - -t 0 -w 1280 -h 720 -fps 25 -b 4000000 -g 50 | ffmpeg -re -ar 44100 -ac 2 -acodec pcm_s16le -f s16le -ac 2 -i /dev/zero -f h264 -i - -vcodec copy -acodec aac -ab 128k -g 50 -strict experimental -f flv rtmp://a.rtmp.youtube.com/live2/my-utube-code-here
But while steaming I did get some warnings and errors to investigate further:
Using AVStream.codec to pass codec parameters to muxers is deprecated, use AVStream.codecpar instead.
[flv @ 0x16dba70] Timestamps are unset in a packet for stream 0. This is deprecated and will stop working in the future. Fix your code to set the timestamps properly
[h264 @ 0x168e1f0] Thread message queue blocking; consider raising the thread_queue_size option (current value: 8)
^Cmmal: Aborting program.0 size= 56962kB time=00:04:02.11 bitrate=1927.3kbits/s speed= 1x
[flv @ 0x16dba70] Failed to update header with correct duration.
[flv @ 0x16dba70] Failed to update header with correct filesize.
Youtube showed my live stream with a starting delay and a status of 'healthy' in green.
|Raspberry Pi v2 with alternative pi-compatible camera module . Camera sensor is v1 based 5 megapixel with adjustable focus and near fish eye - around 160 degrees angle of view|
Next I can now investigate the errors and consider recompiling my ffmpeg with some of the options if needed.
After some time playing with video, I resolved jerky capturing and added text display with this new run string
sudo raspivid -o - -t 0 -w 1280 -h 720 -fps 30 -ex sports -b 4000000 -g 50 -a 12 -ae 10,0x00,0x8080ff -a "My Camera %m-%d-%y @ %I:%M %P" | /usr/src/ffmpeg/ffmpeg -re -ar 44100 -ac 2 -acodec pcm_s16le -f s16le -ac 2 -i /dev/zero -framerate 30 -f h264 -i - -vcodec copy -acodec aac -ab 128k -g 60 -strict experimental -f flv rtmp://a.rtmp.youtube.com/live2/my-youtube-id