# 用樹梅派做bilibili的直播點歌電台 ## 前情提要之先建立bilibili 24小時直播音樂 1. 安裝ffmpeg與解碼器 ```bash= git clone https://code.videolan.org/videolan/x264.git # 原文是git clone videolan.org/x264 但404 no found cd x264 ./configure --host=arm-unknown-linux-gnueabi --enable-static --disable-opencl --disable-asm # 會跳出make make sudo make install cd .. rm -rf x264 ```  2. 安裝ffmpeg ```bash= git clone git://source.ffmpeg.org/ffmpeg.git cd ffmpeg sudo ./configure --arch=armel --target-os=linux --enable-gpl --enable-libx264 --enable-nonfree make sudo make install cd .. rm -rf ffmpeg ``` 3. 準備要不停循環的影片 我們這邊是拿了youtube裡的音樂歌單來嘗試  轉成mp4下載  將檔案移至pi資料夾裡並且把名字改成了1.mp4  4. 進行推流 先嘗試只播一次是否成功 ```bash= ffmpeg -re -i 1.mp4 -vcodec copy -acodec aac -b:a 192k -f flv http://live.bilibili.com/25172672 ``` 由於bilibili是中國的影音網站,在2019年後不給海外人士直播所以產生了這些數據,意思是連接失敗  原因:  於是我們打算轉戰到youtube試試看,單次的部分 ```bash= ffmpeg -re -i 1.mp4 -vcodec copy -acodec aac -b:a 192k -f flv rtmp://a.rtmp.youtube.com/live2/串流金鑰 ``` 金鑰   進行24/7直播 ```bash= sudo nano live.sh # 裡面內容 #!/bin/bash while true do ffmpeg -re -i 1.mp4 -vcodec copy -acodec aac -b:a 192k -f flv rtmp://a.rtmp.youtube.com/live2/串流金鑰 done ``` 4. 安裝screen然後就可以24/7直播了 ```bash= sudo apt-get install screen screen nohup sh live.sh & ``` ## 點歌電台 1. 安裝python需要的東西 ```bash= sudo pip install eyed3 sudo pip install pathlib ``` 2. 安裝nginx&php環境 ```bash= sudo apt-get install nginx # 啟動 nginx sudo /etc/init.d/nginx start # 修改文件 sudo nano /etc/nginx/sites-available/default ``` 裡面寫入  以及 在index那行再多加index.php  還有location php那裏寫入  安裝php與他的套件 ```bash= # sudo apt-get install php5-fpm php5-sqlite # php5-fpm php5-sqlite不存在 所以改安裝php-fpm php-sqlite sudo apt-get install php-fpm php-sqlite3 # 重啟nginx sudo /etc/init.d/nginx reload # 如果failed 則 (資料:https://stackoverflow.com/questions/51525710/nginx-failed-to-start-a-high-performance-web-server-and-a-reverse-proxy-server # sudo lsof -i:80 # sudo fuser -k 80/tcp # sudo rm /etc/nginx/sites-enabled/default # sudo service nginx restart # 保險起見...裝他... sudo apt-get install php-mysql php-curl php-gd php-intl php-pear php-imagick php-imap php-memcache php-ps php-pspell ph-recode php5-snmp php-tidy php-xmlrpc ``` 下載ngrok 進行內網穿透 ```bash= sudo wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-arm.zip # 解壓 sudo unzip ngrok-stable-linux-arm.zip ``` 去官網取得指令  ```bash= ./ngrok authtoken <你的token> ./ngrok tcp 22 # 進入畫面 ``` 取Forwarding的網址  <可能扯遠了> https://learningsky.io/access-raspberry-pi-from-outside-network/ 建立www並且給予權限 ```bash= cd /usr/share/nginx mkdir www sudo nano /usr/share/nginx/www/songlist.txt #https://gist.github.com/chenxuuu/5e616f84ea2858ba5c941a2149479f20 # 這是他給的code 從網易雲api那裏抓歌下載的樣子 sudo chmod -R 777 /usr/share/nginx/www ``` (to be continued...做不到網頁點歌那個步驟) 前情提要的24小時音樂直播成品: https://youtu.be/56fAyxFj6vg 網址: 歌單網址: https://www.youtube.com/watch?v=M0iNKv5IjhY&ab_channel=RelaxingRadio Referece: bilibili 24hr 直播電台 https://www.chenxublog.com/2017/06/02/raspi-live-24h-bilibili.html bilibili 直播點歌電台 https://www.chenxublog.com/2017/11/23/24h-raspberry-live-on-bilibili-reload.html https://shumeipai.nxez.com/2017/06/11/use-raspberry-pi-to-build-bilibili-vod.html
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.