前言

博主在逛IT之家时,看到这篇文章——IT之家学院:利用树莓派在B站24小时直播音乐,觉得作者挺厉害的。博主自己也想做直播,但是博主没有树莓派,只有VPS。只好拿VPS来做直播了,用VPS做直播的好处就是比树莓派稳定,不用担心停电,断网什么的。

P.S:欢迎大家可以来博主在bilibili开的直播间看看,博主现在正在直播24小时循环播放的星尘的歌。

如果你看到直播停止了,那就是程序出错或者服务器宕机又或者VPS到期了,请告诉我,我不想让这个直播停止。

教程

首先是执行这些命令,以安装一些必要的软件

sudo apt-get update

sudo apt-get -y install autoconf automake build-essential libass-dev libfreetype6-dev libsdl2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev libxcb1-dev libxcb-shm0-dev libxcb-xfixes0-dev pkg-config texinfo wget zlib1g-dev git

然后安装nasm

wget http://www.nasm.us/pub/nasm/releasebuilds/2.13.01/nasm-2.13.01.tar.bz2 && tar xjvf nasm-2.13.01.tar.bz2 && cd nasm-2.13.01 && ./autogen.sh && ./configure && make && make install

安装libx264

cd && wget http://download.videolan.org/pub/x264/snapshots/last_x264.tar.bz2 && tar xjvf last_x264.tar.bz2 && cd x264-snapshot* && ./configure --enable-static --disable-opencl && make && make install

安装libfdk-aac

cd && wget -O fdk-aac.tar.gz https://github.com/mstorsjo/fdk-aac/tarball/master && tar xzvf fdk-aac.tar.gz && cd mstorsjo-fdk-aac* && autoreconf -fiv && ./configure --disable-shared && make && make install

安装libmp3lame

cd && wget http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz && tar xzvf lame-3.99.5.tar.gz && cd lame-3.99.5 && ./configure --enable-nasm --disable-shared && make && make install

最后是安装FFmpeg

cd && wget http://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2 && tar xjvf ffmpeg-snapshot.tar.bz2 && cd ffmpeg && ./configure --pkg-config-flags="--static" --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-nonfree && make && make install

现在FFmpeg就算安装完成了,我们还要一个视频,这个视频必须是flv格式,你可以用格式转换软件把视频转换成flv格式。

然后去直播间打开直播开关,然后获取rtmp地址和直播码,bilibili直播的rtmp地址和直播码可以在房间管理中获得。

把视频上传到VPS里,执行形如这个的命令:

ffmpeg -re -i "视频路径" -c copy -c:a libfdk_aac -f flv "rtmp地址+直播码"

如果不出意外的话,现在应该可以推流了,去直播间看看,就可以看到要直播的视频了。

P.S:博主是在Ubuntu 14.04上测试的,博主不能保证其他系统也能正常使用。


Clarke的博客原创文章,转载请注明来自:在Ubuntu系统下使用FFmpeg把视频推送到bilibili直播