树莓派打造 Bilibili 直播点歌台

项目地址:blive-raspberry

我使用的是树莓派3B+,系统2020-12-02-raspios-buster-armhf-lite,软件源为清华源,其它配置请自测

环境配置

首先

sudo apt-get update
sudo apt-get -y install autoconf automake build-essential libass-dev libfreetype6-dev libtheora-dev libtool libvorbis-dev pkg-config texinfo wget zlib1g-dev

安装x264编码器(时间较长)

git clone https://code.videolan.org/videolan/x264.git
cd x264
./configure --host=arm-unknown-linux-gnueabi --enable-static --disable-opencl --enable-shared
make
sudo make install
cd ..
rm -rf x264

libmp3lame

sudo apt-get install libmp3lame-dev

libopus

sudo apt-get install libopus-dev

libvpx

sudo apt-get install libvpx-dev

libomxil-bellagio

sudo apt-get install libomxil-bellagio-dev

编译并安装ffmpeg(时间较长,半小时左右)

wget http://ffmpeg.org/releases/ffmpeg-4.0.tar.bz2
tar jxvf ffmpeg-4.0.tar.bz2
cd ffmpeg-4.0
sudo ./configure --arch=armel --target-os=linux --enable-gpl --enable-libx264 --enable-nonfree --enable-libass --enable-libfreetype  --enable-omx --enable-omx-rpi --enable-encoder=h264_omx --enable-mmal --enable-hwaccel=h264_mmal --enable-decoder=h264_mmal
make -j4
sudo make install
cd ..

执行.configure --xxxxxxxx这句代码时可能会报错,解决方法如下:

https://blog.csdn.net/qq_25105163/article/details/107109419

安装python3

sudo apt-get install python3

安装pip3

sudo apt-get install python3-pip

安装python3的mutagen,you-get,moviepy,aiohttp等库

sudo pip3 install mutagen, you-get, moviepy, aiohttp, libatlas-base-dev, requests

安装中文字体

sudo apt install fontconfig
sudo apt-get install ttf-mscorefonts-installer
sudo apt-get install -y --force-yes --no-install-recommends fonts-wqy-microhei
sudo apt-get install -y --force-yes --no-install-recommends ttf-wqy-zenhei
#可能有装不上的,应该问题不大

# 查看中文字体 --确认字体是否安装成功
fc-list :lang=zh-cn

设置显存

打开树莓派设置

sudo raspi-config

选择Performanced Options-> Gpu Memory,把数值改为256,之后sudo reboot重启树莓派

修改参数

请修改config.json中的4个参数值

{
    "rtmp": {
        "url": "",
        "code": ""
    },
    "cookie": "",
    "roomId": 9938967
}

  • 将rtmp中的url填入你的rtmp地址
  • 将rtmp中的code填入你的直播码
  • 在Cookie中填入你的账户的Cookie
  • 在roomId填入你的房间号

运行

在确保直播已开启后,使用python3运行main.py即可

python3 main.py