播放RTMP協議的流媒體的幾種選擇
播放網路視訊,通常解析庫我們可以有多個選擇 FFMPEG,Daniulive 或者 vitamio。
什麼FFMPEG?
官網地址: 地址
FFmpeg是一套可以用來記錄、轉換數字音訊、視訊,並能將其轉化為流的開源計算機程式。採用LGPL或GPL許可證。它提供了錄製、轉換以及流化音視訊的完整解決方案。它包含了非常先進的音訊/視訊編解碼庫libavcodec,為了保證高可移植性和編解碼質量,libavcodec裡很多codec都是從頭開發的。
支援的編碼 源自FFmpeg專案組的兩個視訊編碼 Snow FFV1
支援的格式 ASF、AVI、BFI、IFF、RL2、FLV、MXF、Material eXchange Format、SMPTE、377M、Matroska、Maxis XA、MSN Webcam stream、MPEG transport stream、TXD、OMA、GXF、General eXchange Format、SMPTE、360M、mov、mp4、m4a、3gp。
大牛直播(Daniulive)
官網地址: 地址
github地址:地址
國內外為數不多致力於極致體驗的超強全自研跨平臺(windows/android/iOS)流媒體核心,通過模組化自由組合,支援實時RTMP推流、RTMP/RTSP直播播放、錄影、多路流媒體轉發、音視訊導播、動態視訊合成、音訊混音、直播互動、內建輕量級RTSP服務等,比快更快,業界真正靠譜的超低延遲直播SDK(1秒內,低延遲模式下200~400ms)。
適用於線上教育、無紙化推屏/會議、智慧教室、智慧可視門禁對講、超低延遲娃娃機抓取播放方案、媒體移動直播、應急指揮排程(針對保險、城管、交警、消防、公安等職能管理部門的單兵應急執法系統)、視覺化購物、遠端專家診斷、視覺化巡檢、(如電信/電力線路/鐵路沿線/水利設施/油田/消防設施巡檢)、移動視訊安防監控,企業內訓、金融線上直播室、微信直播、監控對接、活動現場直播、遊戲直播、秀場直播等場景。
支援平臺:windows/android/iOS
功能列表:
- Windows/Android/iOS平臺高穩定、超低延遲的跨平臺RTMP直播播放器;
- Windows/Android/iOS平臺高穩定、超低延遲的跨平臺RTSP直播播放器;
- Windows/Android/iOS平臺完美支援多例項播放(如同時播放多路rtmp/rtsp流);
- Windows平臺支援rtmp擴充套件H.265播放;
- Windows/Android/iOS平臺支援RTSP TCP/UDP模式設定;
- Windows/Android/iOS平臺支援RTSP TCP、UDP模式自動切換;
- Windows/Android/iOS平臺支援rtsp超時時間設定;
- Windows/Android/iOS平臺支援上報rtsp 401事件;
- Windows/Android/iOS平臺支援buffer time設定;
- Windows/Android/iOS平臺支援首屏秒開模式;
- Windows平臺雙擊畫面進入全屏模式;
- Windows/Android/iOS平臺視訊支援H.264(RTMP/RTSP)/H.265(RTSP),音訊支援AAC/PCMA/PCMU和SPEEX(RTMP)播放;
- Windows/Android/iOS平臺支援RTSP H.265播放,並支援RTSP H.265錄製到MP4檔案;
- Windows/Android/iOS平臺均支援回撥音視訊資料(視訊: H.264/YUV 音訊:AAC/PCMA/PCMU/SPEEX)到上層;
- Windows/Android/iOS平臺支援自定義播放佈局;
- Android平臺音視訊多種render機制,視訊支援普通Surface和GLSurface,音訊支援audiotrack和opensl es;
- Windows/Android/iOS平臺支援播放過程中,’實時靜音/取消靜音’;
- Windows/Android/iOS平臺支援播放端視訊view實時旋轉(0° 90° 180° 270°)、水平反轉、垂直反轉;
- Windows/Android/iOS平臺支援播放過程中快速切換URL;
- [錄影SDK同步使用]Windows/Android/iOS平臺播放、錄影完全隔離,同等配置的流,切換url依舊可以錄製到同一個檔案;
- Windows/Android/iOS平臺播放過程中,音視訊資訊改變後自適應;
- Android/iOS平臺支援軟、硬解碼,超低延遲、低資源佔用播放rtsp/rtmp 1080p+;
- Windows/Android/iOS平臺支援播放/錄影過程中,隨時快照;
- [Windows點播播放器]支援本地flv檔案播放(支援獲取flv檔案的duration(時長);支援顯示當前播放位置;支援開始播放或播放過程中seek(跳轉播放位置),也許是行業內seek最快的flv點播播放器);
- Windows/Android/iOS平臺支援類似於線上娃娃機等直播方案的超低延遲模式設定(公網200~400ms)。
什麼是Vitamio?
官網地址: 地址
github地址:地址
Vitamio是一款 Android 與 iOS 平臺上的全能多媒體開發框架,全面支援硬體解碼與 GPU 渲染。
Vitamio能夠流暢播放720P甚至1080P高清MKV,FLV,MP4,MOV,TS,RMVB等常見格式的視訊,還可以在Android 與 iOS 上跨平臺支援 MMS, RTSP, RTMP, HLS(m3u8) 等常見的多種視訊流媒體協議,包括點播與直播。
Vitamio支援各種常見的流媒體協議,可以點播或者直播音訊和視訊,例如如下常見協議均能無縫支援:
MMS、RTSP (RTP, SDP)、RTMP、HTTP progressive streaming、HLS – HTTP live streaming (M3U8)
音訊和視訊格式
Vitamio使用了 FFmpeg 做為媒體解析器和最主要的解碼器,同時開發了針對不同移動平臺的硬解碼方案,能夠完美支援 H.264/AVC、H.263、MPEG4 等常見的視訊編碼,覆蓋上百種多媒體格式。下表只是一些最常見的視訊格式支援,除特殊標明,全部支援硬體加速:
DivX/Xvid、WMV (一般只有軟解碼)、FLV、TS/TP、RMVB (只有軟解碼)、MKV、MOV、M4V、AVI、MP4、3GP。
Vitamio 專案託管在Github 上面,,這裡有很多公司的開源專案,其中:
1、VitamioBundle是Vitamio核心外掛,(大家可以搜一下”Android Library”這個關鍵字,和jar差不多的用途),可以方便整合到專案中。
2、VitamioDemo是Vitamio的官方例子。
使用方式
1.匯入。通過github下載VitamioBundle。下載回來後大家可能發現沒有.project工程檔案,可以通過File-> Import -> Android -> Existing Android Code Into Workspace來匯入工程,然後改一下工程名稱即可。
2、將VitamioBundle工程作為Android Library引入Demo工程使用即可。
相關文章
- 影片直播原始碼開發中的流媒體協議:rtmp協議原始碼協議
- nginx搭建支援http和rtmp協議的流媒體伺服器之一NginxHTTP協議伺服器
- 通過 wireshark 抓包瞭解直播流媒體 RTMP 協議基本過程協議
- 流媒體技術基礎-流媒體傳輸協議(二)協議
- RTSP協議、RTMP協議、HTTP協議的區別協議HTTP
- 流媒體傳輸協議之 RTP (上篇)協議
- 流媒體傳輸協議之 RTP(下篇)協議
- 流媒體技術之傳輸協議協議
- ffmpeg 推流檔案,採用rtmp協議協議
- 1.RTMP流媒體伺服器搭建伺服器
- RTMP視訊直播系統(PC網頁/微信小程式/播放器/流媒體)網頁微信小程式播放器
- Golang開源流媒體伺服器(RTMP/RTSP/HLS/FLV等協議)Golang伺服器協議
- 流媒體技術之複習網路協議協議
- 4種傳輸協議設定,檔案傳輸協議如何選擇?協議
- [SRS流媒體]RTMP/HLS 直播伺服器simple-rtmp-server安裝伺服器Server
- 【開源技術分享】無需流媒體服務,讓瀏覽器直接播放rtsp/rtmp的神器:EasyMedia瀏覽器
- 基於SRS搭建RTMP直播流媒體伺服器伺服器
- 使用Nginx搭建rtmp流媒體伺服器筆記Nginx伺服器筆記
- React 的幾種條件渲染以及選擇React
- RTMP協議相關知識協議
- 選擇CRM的幾點經驗和建議
- 認識流媒體協議,從 RTSP 協議解析開始!協議
- FFmpeg實現監控攝像頭的RTSP協議轉RTMP協議直播協議
- Ubuntu 中使用 Nginx+rtmp 搭建流媒體直播服務.mdUbuntuNginx
- 直播帶貨app原始碼,不得不瞭解的流媒體傳輸協議APP原始碼協議
- 流媒體協議協議
- IOS 整合 Bilibili IJKPlayer播放器,播放rtmp視訊流iOS播放器
- 搭建rtmp流媒體伺服器過程中遇到的一個小問題伺服器
- 直播賣貨系統,全面的流媒體傳輸協議介紹協議
- 流的操作(二)如何選擇流?
- 劉平川:如何選擇開源協議協議
- FFmpeg開發筆記(五十)聊聊幾種流媒體傳輸技術的前世今生筆記
- 如何選擇自媒體平臺?這幾個雷區不要碰!
- 用RUST寫流媒體伺服器實戰——rtmp chunk 深入解析Rust伺服器
- C# Modbus協議 幾種常用格式C#協議
- 執行現有網站的同時,配置FMS使用80埠代理rtmpt協議播放流媒體網站協議
- 音訊和視訊流最佳選擇?SRT 協議解析及報文識別音訊協議
- 在選擇開源時需要基於自身需求選擇合適的開源協議協議