視訊直播的實現
由於公司需要開發一款直播軟體,以前也並沒有接觸過直播這一方面,所以就來從0開始做一個直播,本著開放的原則,發此博文以供後者參閱。
視訊直播服務提供商的選擇:
在選擇視訊直播提供商的時候,目標選擇有三家:七牛雲、騰訊雲與阿里雲。由於七牛雲以及騰訊雲的視訊直播需要稽核,而且稽核速度較慢,本次選擇的是阿里雲提供的視訊直播的服務。阿里雲的服務質量也是很可靠的。阿里雲視訊直播服務地址:https://www.aliyun.com/product/live
從上圖可以清楚的看到,我們的身份屬於 管理員,在整個流程中主要負責視訊的推流以及對整個實時視訊流的處理。
可以看到,視訊直播主要是依託於CDN來實現的,因為這樣可以讓 內容消費方(也就是使用者)選擇最佳的視訊觀看節點,減少視訊延時。
具體實現步驟:
1、登陸阿里雲官網視訊直播控制檯:
登陸阿里雲賬號後,進入控制檯,找到左上角的 產品與服務->移動與視訊服務->視訊直播;
2、新增直播域名:
點選新建域名
輸入域名,稽核通過後即可
3、將直播域名繫結到CNAME:
將新增的直播域名的DNS CNAME紀錄修改為直播域名管理詳情頁面上顯示的CNAME繫結地址。
以阿里雲的域名解析為例:
記錄型別選擇CNAME,主機記錄寫新建域名時候的二級域名,記錄值填寫域名的CNAME值。
4、獲取推流和播放地址:
點選管理:
其中推流地址的APPname和streamname可以自定義。
5、推流:
推流地址:
rtmp://video-center.alivecdn.com/APPName/StreamName?vhost=test.example.com
說明
- video-center.alivecdn.com是直播中心伺服器,允許自定義,例如您的域名是your.example.com(注意:該域名不可以和你的直播加速域名相同),可以設定DNS,將您的域名CNAME指向video-center.alivecdn.com即可
- APPName是應用名稱,支援自定義,可以更改
- StreamName是流名稱,支援自定義,可以更改
- vhost引數是最終在邊緣節點播放的域名,即你的直播加速域名。
使用OSB進行推流,OBS下載地址:https://obsproject.com/download#mp
安裝完畢後點選設定:.
在串流中填寫相關配置:
以推流地址:rtmp://video-center.alivecdn.com/APPName/StreamName?vhost=test.example.com
為例,
其中URL填寫:rtmp://video-center.alivecdn.com/APPName
,流祕鑰填寫:StreamName?vhost=test.example.com
;
然後在OBS主介面下方的來源中選擇需要直播的畫面,點選開始串流即可:
6、播放:
回到視訊雲直播控制檯,點選流管理就可以看到當前正在直播的視訊流了:
點選後面的直播地址 即可看到3條直播的連線,將滑鼠放到連線上,後面會顯示一個播放,點選就可以在當前頁面播放:
或者可以將 M3U8格式的直播地址複製到 H5的video標籤進行播放。
到此,一個簡單的直播就已經完成了。
相關文章
- 網路視訊直播系統開發,視訊解碼是如何實現的?
- ffmpeg+nginx+rtmp+web實現視訊直播網站NginxWeb網站
- 如何實現直播連麥?音視訊SDK不可缺少!
- 8┃音視訊直播系統之 WebRTC 信令系統實現以及通訊核心並實現視訊通話Web
- 手機直播原始碼,Android studio 實現簡單的視訊播放原始碼Android
- 12┃音視訊直播系統之 WebRTC 實現1對1直播系統實戰Web
- 視訊直播和實時音視訊區別調研
- 在相親原始碼的多人音視訊聊天中插入現場直播的實現方式原始碼
- 短視訊直播系統開發直播短視訊程式搭建短視訊互動直播
- 視訊直播原始碼,css實現圖片對角邊框線原始碼CSS
- js實現視訊截圖,視訊批量截圖,canvas實現JSCanvas
- 短視訊直播系統,動態內的圖片實現長按儲存
- 短視訊系統原始碼,直播間實現彈幕的自動傳送原始碼
- Vue + WebRTC 實現音視訊直播(附自定義播放器樣式)VueWeb播放器
- 短視訊直播系統,Vue實現element-ui彈框可以拖拽VueUI
- 視訊直播原始碼,實現本地儲存搜尋歷史記錄原始碼
- 直播短視訊原始碼短視訊APP短視訊帶貨系統多商戶直播原始碼APP
- 短視訊直播原始碼,拖動滑塊實現圖片驗證效果原始碼
- 圓形視訊和圓角視訊的一種實現方式
- Android 視訊直播原理探索Android
- 音視訊通訊——直播協議和視訊推流協議
- 在相親交友原始碼中實現視訊連麥直播需要哪些步驟?原始碼
- 直播背後的視訊雲大戰
- 短視訊直播原始碼,實現頂部導航欄背景圖片漸隱漸現效果原始碼
- 視訊會議的實現方式有哪些?
- 3┃音視訊直播系統之瀏覽器中通過 WebRTC 直播視訊實時錄製回放下載瀏覽器Web
- FFmpeg程式碼實現視訊剪下
- 實現播放視訊及彈幕
- php實現ffmpeg處理視訊PHP
- WebRTC + WebSocket 實現視訊通話Web
- 短視訊直播系統,簡單實現個人主頁背景圖片和文字顏色的更改
- 未來直播 “神器”,畫素級視訊分割是如何實現的 | CVPR 冠軍技術解讀
- Flutter實現用視訊背景的登入頁Flutter
- 夾在理想與現實中的長視訊
- web音訊流轉發之音視訊直播Web音訊
- 短視訊直播原始碼,自定義圖片或視訊的迴圈播放原始碼
- 如何使用DeepFake實現視訊換臉
- 兩個視窗如何實現通訊
- video自定義實現視訊播放功能IDE