看到標題可能要有人問了:夏天好像看到過這篇教程了誒……
別急, 這個是新做的哦, 老的那個是使用網頁點歌的, 十分簡陋。
本教程腳本主要功能如下:
彈幕點歌
彈幕點MV
彈幕回饋(彈幕機器人)
舊版已經實現的視頻推流功能
自訂介紹字幕
最基礎的歌詞顯示
切歌
排隊歌曲查詢
閒時隨機播放預留歌曲
播放音樂時背景圖片隨機選擇
已知問題:
樹莓派渲染速度過慢
換歌時會閃斷(預留圖片換為統一的1280x720, 可以在一定程度上緩解該問題, 但是不能根除)
搭建效果:
下面就開始搭建方法介紹吧, 比較繁瑣, 所以不涉及解釋代碼思路及原理, 如果有人需要詳細解釋彈幕獲取與發送原理的話, 請在評論區留言, 我會再投稿進行解釋。
我這裡用的是樹莓派3B(新買的哦), 系統2017-09-07-raspbian-stretch.img, 官方預設軟體源。
板載WiFi的樹莓派3B, 不用連網線, 十分方便
先安裝依賴:
sudo apt-get updatesudo 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 git://git.videolan.org/x264cd x264./configure --host=arm-unknown-linux-gnueabi --enable-static --disable-openclmakesudo make installcd ..rm -rf x264安裝libmp3lame:
sudo apt-get install libmp3lame-dev安裝libopus:
sudo apt-get install libopus-dev安裝libvpx:
sudo apt-get install libvpx-dev編譯並安裝ffmpeg(時間較長, 半小時左右):
wget http://ffmpeg.org/releases/ffmpeg-3.3.2.tar.bz2tar jxvf ffmpeg-3.3.2.tar.bz2cd ffmpeg-3.3.2sudo ./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_mmalmake -j4以上有一部分代碼參考自《ffmpeg源碼編譯安裝(Compile ffmpeg with source)Part 2:擴展安裝-人腦之戰-博客園》。
原文地址:
安裝python3的一個庫:
sudo pip3 install mutagen安裝screen:
sudo apt-get install screen安裝中文字體:
apt install fontconfigapt-get install ttf-mscorefonts-installerapt-get install -y --force-yes --no-install-recommends fonts-wqy-microheiapt-get install -y --force-yes --no-install-recommends ttf-wqy-zenhei#可能有裝不上的, 應該問題不大
#查看中文字體--確認字體是否安裝成功
fc-list :lang=zh-cn字體安裝來自ubuntu下bilibili直播推流ffmpeg rtmp推送:
下載&運行:
下載本項目:
git clone https://github.com/chenxuuu/24h-raspberry-live-on-bilibili.git請修改下載裡的var_set.py檔中的各種變數。 其中, cookie需要使用小號(大號也行)在直播間打開流覽器審查元素, 先發一條彈幕, 再查看network選項卡, 找到name為send的項目, Request head中的Cookie即為cookie變數的值。 注意, 設置後, 換帳號不能點擊網頁上的“退出登陸”按鍵, 換帳號請直接清除當前cookie再刷新。
如有條件, 請務必自己搭建php的下載連結解析服務, 源碼都在“php”資料夾內。
“default_mp3”資料夾內放入mp3格式的音樂, 在無人點歌時播放, 請儘量保證檔案名全英文。
“default_pic”資料夾內放入jpg格式的音樂, 用於做為放音樂時的背景, 請儘量保證檔案名全英文。
所有配置完成後, 開啟直播, 然後啟動腳本即可:
screen python3 post_dm.py#按ctrl+a,按ctrl+d
screen python3 play.py#按ctrl+a,按ctrl+d
如果有任何建議, 歡迎到Github提交issue~
Github位址:
想看到更多這類內容?去APP商店搜IT之家, 天天都有小歡喜。