树莓派小车系列 - 直播

发布于: 2020 年 05 月 04 日
树莓派小车系列-直播

一、获取直播码

直播嘛,需要开通直播间。 一开始,我自己搭建了视频流服务器,但是,太卡了。

后来我注册了一些直播平台,如bilibili,直播地址每隔一段时间就需要去获取一次,太麻烦了。虽然有非官方的获取直播码的插件,但是可能不稳定,也不安全。

后来看到了腾讯云直播,可以通过接口获取直播链接,但是,收费!由于我也不是一直使用,新用户也有20g流量,暂时够用。

我分别绑定了自己的域名,一个liveplay,一个livepush。

点击livepush的管理,可以看到获取推流地址的方式,也可以在线生成一个。

我先偷个懒,点击直接生成推流地址,腾讯云提供了自己生成地址的示例。



二、树莓派上安装FFMPEG

如果树莓派还没有安装过ffmpeg,那么先安装下ffmpeg

开启ffmpeg的H264功能,需要手动编译。不然,视频帧率就提不上去。



1.安装编译工具

apt-get install autoconf automake build-essential libass-dev libfreetype6-dev libtheora-dev libtool libvorbis-dev pkg-config texinfo zlib1g-dev unzip cmake yasm libx264-dev libmp3lame-dev libopus-dev libbz2-dev git libgnutls28-dev libomxil-bellagio-dev

2.下载编译x64

git clone https://code.videolan.org/videolan/x264.git
cd x264/
git checkout stable
sudo ./configure --disable-shared --enable-static --enable-strip --disable-cli
sudo make -j4
sudo make install

3.下载编译ffmpeg

wget https://github.com/xbmc/FFmpeg/archive/4.0.4-Leia-18.4.tar.gz
tar -xzpf 4.0.4-Leia-18.4.tar.gz
cd FFmpeg-4.0.4-Leia-18.4
PREFIX=/usr/local
./configure --enable-gpl --enable-version3 --enable-nonfree --enable-static --disable-shared --prefix=$PREFIX --disable-opencl --disable-thumb --disable-pic --disable-stripping --enable-small --enable-ffmpeg --enable-ffplay --enable-ffprobe --disable-doc --disable-htmlpages --disable-podpages --disable-txtpages --disable-manpages --disable-everything --enable-libx264 --enable-encoder=libx264 --enable-decoder=h264 --enable-encoder=aac --enable-decoder=aac --enable-encoder=ac3 --enable-decoder=ac3 --enable-encoder=rawvideo --enable-decoder=rawvideo --enable-encoder=mjpeg --enable-decoder=mjpeg --enable-demuxer=concat --enable-muxer=flv --enable-demuxer=flv --enable-demuxer=live_flv --enable-muxer=hls --enable-muxer=segment --enable-muxer=stream_segment --enable-muxer=mov --enable-demuxer=mov --enable-muxer=mp4 --enable-muxer=mpegts --enable-demuxer=mpegts --enable-demuxer=mpegvideo --enable-muxer=matroska --enable-demuxer=matroska --enable-muxer=wav --enable-demuxer=wav --enable-muxer=pcm* --enable-demuxer=pcm* --enable-muxer=rawvideo --enable-demuxer=rawvideo --enable-muxer=rtsp --enable-demuxer=rtsp --enable-muxer=rtsp --enable-demuxer=sdp --enable-muxer=fifo --enable-muxer=tee --enable-parser=h264 --enable-parser=aac --enable-protocol=file --enable-protocol=tcp --enable-protocol=rtmp --enable-protocol=cache --enable-protocol=pipe --enable-filter=aresample --enable-filter=allyuv --enable-filter=scale --enable-libfreetype --enable-indev=v4l2 --enable-indev=alsa --enable-indev=alsa --enable-outdev=alsa --enable-omx --enable-omx-rpi --enable-encoder=h264_omx --enable-mmal --enable-hwaccel=h264_mmal --enable-decoder=h264_mmal
make -j4
make install

4.验证安装

ffmpeg -version





5.推送一段小视频

sudo ffmpeg -re -i big_buck_bunny.mp4 -c copy -f flv "rtmp://livepush.xujialiang.net/live/wibbly?txSecret=xxx&txTime=xxx"

这个地址从哪里来的?点这里的生成推流地址,可直接生成。如果是无人值守,客自己实现生成推流地址。

运行命令成功后,可看到如下图

可以看到,速度还是挺理想的。

6.播放

腾讯云直播也可以直接生成直播地址,mac 可用自带的quicktime播放。









参考文章

https://holmesian.org/Raspberry-Pi-optimized-FFmpeg-with-HW-Acceleration

https://blog.csdn.net/Tang_Chuanlin/article/details/85244429



发布于: 2020 年 05 月 04 日 阅读数: 108
用户头像

每个人都应该为他的梦想付出他的全部! 2018.02.28 加入

一个喜欢搞破坏,研究新技术、新硬件的技术人~

评论

发布
暂无评论
树莓派小车系列-直播