用意するもの
- Raspberry Pi 3 + ケース + microSD
- 電源
- Raspberry Pi用カメラ V2 (市販のUSBカメラでもできるかもしれないが、失念)
カメラはv1とv2があるが、角が丸くてRaspberry Piのロゴが刻印されているほうがv2。
ちなみに、うちではソーラー発電によって12V電池に蓄電したものを使おうと考えている。
- 12V→5Vへ変換するためのDCDC
- コネクタ一式
- USBソケット (Raspberry PiへのUSB電力供給)
Streaming実験
こちらを参考に設定: https://maxogden.com/hd-live-streaming-cats.html
youtubeのライブ配信の設定は、Googleアカウントでyoutubeにログインし、Live Streamingをクリック
下のほうの、ENCODER SETUPの Server URLとStream name/key をメモしておく。
Raspberry Pi側では、raspividとffmpegを実行できる環境を作っておく。
Streaming開始には
1 |
raspivid -o - -t 0 -vf -hf -fps 30 -b 6000000 | 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/{your stream name/key} |
これについては:
-o -
で、raspividの出力がffmpeg
へpipeされるようにする-t 0
でエンドレスにstreamingできるように-vf -hf
で、正しく見えるようにvertical / horizontal にflipさせる-fps 30
で、frame数を30に設定-b 6000000
で、output bitrate limitを設定。Youtube推奨は400-600kbps-re
で- tells ffmpeg to slow down the reading of the input to the native frame rate of the input (useful when live streaming)-ar 44100 -ac 2 -acodec pcm_s16le -f s16le -ac 2 -i /dev/zero
と-acodec aac -ab 128k
と-strict experimental
で音声を消す(Raspberry Piカメラにはマイクは無い)。マイクを追加する場合はこれを設定すれば良い-g 50
で、keyframe を50 frameごとに挿入する-f h264
と-f flv
で、 ffmpeg に h264 で入力されたものをflv
oで出力するように指定する- ここでは
-w
と-h
はraspividに指定していない。指定しないことで、 1920×1080 の full resolution (1080p)で取得している。低い解像度で撮る場合は指定する
実行すると:
成功!youtubeでライブ配信されているのを確認