簡介:
手頭有一個樹莓派3B+ 和一塊CSI攝像頭,想要實現(xiàn)一個推拉流直播的效果。
所需材料:開發(fā)板(我用的是樹莓派3B+)、CIS攝像頭、云服務(wù)器(用來搭建SRS服務(wù)器)
具體實現(xiàn)思路:
使用樹莓派+CSI攝像頭來做畫面采集,然后使用FFmpeg推流到SRS云服務(wù)器上,然后用戶可以拉取SRS服務(wù)器上的視頻流。
具體步驟:
1.樹莓派系統(tǒng)燒錄
我之前用樹莓派官方的燒錄工具進行燒錄,由于樹莓派官方提供的鏡像較新,存在的問題較多(可能是我比較菜吧)。比如對CSI攝像頭的支持、以及不在支持raspistill和raspivid。所以我決定重新燒老一點的系統(tǒng)(我把我的樹莓派鏡像放到了下面)。
我的鏡像是這個:2023-05-03-raspios-bullseye-armhf-full.img
鏡像網(wǎng)盤地址:
鏈接:https://pan.baidu.com/s/1IgC4h5TGfSpd26QaNNqGKw?pwd=gk8a?
提取碼:gk8a
推薦一個比較好的燒錄工具
燒錄工具網(wǎng)盤地址:
鏈接:https://pan.baidu.com/s/11bK0YVrZMx5EwDTbU-hIHA?pwd=81ik?
提取碼:81ik
2.樹莓派安裝FFmpeg
樹莓派是自帶ffmpeg的,我們可以使用命令查看ffmpeg的版本:
ffmpeg -version
3.搭建SRS流媒體服務(wù)器
搭建SRS流媒體服務(wù)器需要用到云服務(wù)器,只有將SRS流媒體服務(wù)器搭建在云服務(wù)器上,才能讓所有人都能拉取到你的視頻流。如果你沒有云服務(wù)器也沒事,可以在開發(fā)板上搭建SRS流媒體的局域網(wǎng)服務(wù)器,在同一個局域網(wǎng)內(nèi)的所有用戶的是可以拉取到視頻流的。如果開發(fā)板做了內(nèi)網(wǎng)穿透,那么同樣所有人都可以拉取視頻流。
3.1 SRS流媒體服務(wù)器的搭建
搭建流媒體服務(wù)器查看我的另一篇文章:
4.使用FFmpeg推流到SRS服務(wù)器
4.1?查看video device0設(shè)備
ls -al /dev
你video0就是我們的CSI攝像頭?
?
如果沒有可以重新插一下攝像頭,如果還是沒有說明沒有添加攝像頭的驅(qū)動程序.ko文件和對應(yīng)的raspiberry B3+的硬件使能?
sudo vim /etc/modules
然后添加這段話到最后一段
bcm2835-v4l2
修改Raspberry的啟動配置使能項:
sudo raspi-config
然后重啟,在查看是否存在video0??
參考教程:
樹莓派攝像頭使用教程 (spotpear.cn)
沒問題的話就測試一下這個攝像頭,看看能不能進行拍照截圖
raspistill -o test.jpg
?4.2?FFmpeg推流
ffmpeg -f v4l2 -framerate 30 -video_size 1280x720 -i /dev/video0 -c:v libx264 -preset ultrafast -tune zerolatency -b:v 2M -f flv rtmp://your_streaming_server_address
最后來看一下效果,我推流的是我自己電腦的畫面
? ? ? ? ? ? ? ? 拉流畫面
我使用手機上的軟件MX播放器進行拉流,這個軟件在軟件商店有可以直接下載
根據(jù)下面的提示拉流?
文章來源:http://www.zghlxwxcb.cn/news/detail-816094.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-816094.html
到了這里,關(guān)于樹莓派3B+ /+ CSI攝像頭 + FFmpeg + SRS 實現(xiàn)直播推流的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!