網(wǎng)站開(kāi)發(fā)用什么寫(xiě)seo課程培訓(xùn)
文章目錄
- 引言
- 1、安裝FFmpeg
- 2、安裝EasyDarWin
- 3、實(shí)現(xiàn)本地\虛擬攝像頭推流服務(wù)
- 4、使用VLC或PotPlayer可視化播放器播放視頻
- 5、RTSP / RTMP系列文章
引言
RTSP和RTMP視頻流的區(qū)別
- RTSP (Real-Time Streaming Protocol)實(shí)時(shí)流媒體協(xié)議。 RTSP定義流格式,流數(shù)據(jù)經(jīng)由RTP傳輸;RTSP實(shí)時(shí)效果非常好,適合視頻聊天,視頻監(jiān)控等方向。
- RTMP(Real Time Message Protocol)實(shí)時(shí)消息協(xié)議。 用來(lái)解決多媒體數(shù)據(jù)傳輸流的多路復(fù)用(Multiplexing)和分包(packetizing)的問(wèn)題,優(yōu)勢(shì)在于低延遲,穩(wěn)定性高,支持所有攝像頭格式,瀏覽器加載 flash插件就可以直接播放。
- RTSP是服務(wù)器端推送到客戶端,而RTMP是點(diǎn)對(duì)點(diǎn)傳輸。
- RTSP是基于UDP或TCP,傳輸數(shù)據(jù)時(shí)具有較小的延遲,可用于實(shí)時(shí)流媒體的傳輸。
- RTMP是基于TCP,具有高可靠性,能夠自動(dòng)重連,即使在網(wǎng)絡(luò)環(huán)境不穩(wěn)定時(shí)也能夠保證流媒體傳輸?shù)馁|(zhì)量。
- RTSP也支持多種編碼格式,但通常只用于傳輸單個(gè)音視頻軌道。RTMP支持多種編碼格式,包括H.264和AAC等,支持多個(gè)音視頻軌道。
- RTSP旨在建立和維護(hù)原始數(shù)據(jù)源(客戶端)和流服務(wù)器之間的連接,允許控制流媒體服務(wù)器內(nèi)的娛樂(lè)和通信系統(tǒng),允許暫停和播放功能。RTMP支持整合文本、視頻和音頻,支持MP3和AAC音頻流,也支持MP4、FLV和F4V視頻。
推流和拉流的區(qū)別
- 推流:指的是將攝像頭、屏幕等設(shè)備上的數(shù)據(jù)通過(guò)網(wǎng)絡(luò)傳輸?shù)椒?wù)器,并由服務(wù)器進(jìn)行處理、存儲(chǔ)或直播。比如,在進(jìn)行網(wǎng)絡(luò)直播時(shí),主播需要將自己的攝像頭數(shù)據(jù)通過(guò)網(wǎng)絡(luò)上傳到服務(wù)器,這個(gè)過(guò)程就是推流。
- **拉流:指的是從服務(wù)器上獲取視頻流并在本地播放的過(guò)程,也叫做播放。**比如,在觀看網(wǎng)絡(luò)上的直播時(shí),用戶需要從服務(wù)器上獲取視頻流才能進(jìn)行觀看,這個(gè)過(guò)程就是拉流。
FFmpeg概念
FFmpeg是將音頻和視頻轉(zhuǎn)為流的開(kāi)源計(jì)算機(jī)程序。
EasyDarwin實(shí)現(xiàn)RTSP視頻流服務(wù)步驟
- 安裝FFmpeg
- 安裝EasyDarWin
- 啟動(dòng)本地?cái)z像頭
- 使用VLC或PotPlayer可視化播放器播放視頻
1、安裝FFmpeg
下載FFmpeg
并配置環(huán)境 ,執(zhí)行 ffmpeg -version
測(cè)試安裝是否成功。
- FFmpeg官網(wǎng)
- 下載好的FFmpeg版本
成功配置ffmpeg版本:
2、安裝EasyDarWin
- 下載解壓到本地后
運(yùn)行 EasyDarwin.exe 程序
,點(diǎn)擊運(yùn)行后會(huì)彈出一個(gè) cmd 啟動(dòng)服務(wù)端,注:不要關(guān)閉彈出的命令框; - 在瀏覽器中輸入 http://127.0.0.1:10008 進(jìn)入 web 頁(yè)面,成功安裝EasyDarWin。
- EasyDarWin官網(wǎng)
- 下載好的EasyDarWin版本
3、實(shí)現(xiàn)本地\虛擬攝像頭推流服務(wù)
步驟
- 開(kāi)啟本地?cái)z像頭
- FFmpeg查詢本地?cái)z像頭名
- FFmpeg實(shí)現(xiàn)推流
- EasyDarWin推流列表查詢視頻播放地址
實(shí)現(xiàn)
1、開(kāi)啟本地?cái)z像頭
- window下,按住FN + F6(F6代表是本博主筆記本電腦開(kāi)啟的本地?cái)z像頭按鍵,具體電腦具體分析。如有的筆記本是F5)
- 如果不想用本地?cái)z像頭,可以下載OBS,開(kāi)啟虛擬攝像頭,OBS實(shí)現(xiàn)推流參考文檔
2、FFmpeg查詢本地?cái)z像頭名
- 打開(kāi)另外一個(gè)
CMD命令窗口
,輸入ffmpeg -list_devices true -f dshow -i dummy
- CMD會(huì)打印本機(jī)的多媒體設(shè)備,找到有關(guān)
video
的攝像頭- 如博主這里開(kāi)啟兩個(gè)攝像頭,一個(gè)是本地?cái)z像頭,另外一個(gè)是OBS虛擬攝像頭
- “USB 2.0 Webcam Device” (video),其中 USB 2.0 Webcam Device是本地?cái)z像頭名
- “OBS Virtual Camera” (video),其中 OBS Virtual Camera是OBS虛擬攝像頭名
3、FFmpeg實(shí)現(xiàn)推流
語(yǔ)法
ffmpeg -f dshow -i video="你的 video 設(shè)備名字" -vcodec libx264 -preset:v ultrafast -tune:v zerolatency -rtsp_transport tcp -f rtsp 播放地址;播放地址隨自己設(shè)置,如rtsp://127.0.0.1/test
或rtmp://127.0.0.1:1935/live/test(需要自己開(kāi)啟1935端口)
實(shí)現(xiàn)
播放地址: rtsp://127.0.0.1/test
ffmpeg -f dshow -i video="USB 2.0 Webcam Device" -vcodec libx264 -preset:v ultrafast -tune:v zerolatency -rtsp_transport tcp -f rtsp rtsp://127.0.0.1/test
4、EasyDarWin推流列表查詢視頻播放地址
4、使用VLC或PotPlayer可視化播放器播放視頻
- 方式一:下載PotPlayer播放器,任意一個(gè)瀏覽器,輸入rtsp://127.0.0.1/test,回車(chē),打開(kāi)PotPlayer播放。
- 方式二:打開(kāi)PotPlayer,右下角選擇【添加】—【添加鏈接】—【填寫(xiě)播放地址】
3.方式三:下載 VLC播放器,選擇【媒體】—【打開(kāi)網(wǎng)絡(luò)串流】—【網(wǎng)絡(luò)】,粘貼地址,【播放】即可。
5、RTSP / RTMP系列文章
- Windows搭建RTMP視頻流服務(wù)(Nginx服務(wù)器版)