播放RTMP协议的流媒体的几种选择
播放網(wǎng)絡(luò)視頻,通常解析庫我們可以有多個選擇 FFMPEG,Daniulive 或者 vitamio。
什么FFMPEG?
官網(wǎng)地址:?地址
FFmpeg是一套可以用來記錄、轉(zhuǎn)換數(shù)字音頻、視頻,并能將其轉(zhuǎn)化為流的開源計算機程序。采用LGPL或GPL許可證。它提供了錄制、轉(zhuǎn)換以及流化音視頻的完整解決方案。它包含了非常先進的音頻/視頻編解碼庫libavcodec,為了保證高可移植性和編解碼質(zhì)量,libavcodec里很多codec都是從頭開發(fā)的。
支持的編碼 源自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地址:地址
國內(nèi)外為數(shù)不多致力于極致體驗的超強全自研跨平臺(windows/android/iOS)流媒體內(nèi)核,通過模塊化自由組合,支持實時RTMP推流、RTMP/RTSP直播播放、錄像、多路流媒體轉(zhuǎn)發(fā)、音視頻導(dǎo)播、動態(tài)視頻合成、音頻混音、直播互動、內(nèi)置輕量級RTSP服務(wù)等,比快更快,業(yè)界真正靠譜的超低延遲直播SDK(1秒內(nèi),低延遲模式下200~400ms)。
適用于在線教育、無紙化推屏/會議、智慧教室、智能可視門禁對講、超低延遲娃娃機抓取播放方案、媒體移動直播、應(yīng)急指揮調(diào)度(針對保險、城管、交警、消防、公安等職能管理部門的單兵應(yīng)急執(zhí)法系統(tǒng))、可視化購物、遠程專家診斷、可視化巡檢、(如電信/電力線路/鐵路沿線/水利設(shè)施/油田/消防設(shè)施巡檢)、移動視頻安防監(jiān)控,企業(yè)內(nèi)訓(xùn)、金融在線直播室、微信直播、監(jiān)控對接、活動現(xiàn)場直播、游戲直播、秀場直播等場景。
支持平臺:windows/android/iOS
功能列表:
- ?Windows/Android/iOS平臺高穩(wěn)定、超低延遲的跨平臺RTMP直播播放器;
- ?Windows/Android/iOS平臺高穩(wěn)定、超低延遲的跨平臺RTSP直播播放器;
- ?Windows/Android/iOS平臺完美支持多實例播放(如同時播放多路rtmp/rtsp流);
- ?Windows平臺支持rtmp擴展H.265播放;
- ?Windows/Android/iOS平臺支持RTSP TCP/UDP模式設(shè)置;
- ?Windows/Android/iOS平臺支持RTSP TCP、UDP模式自動切換;
- ?Windows/Android/iOS平臺支持rtsp超時時間設(shè)置;
- ?Windows/Android/iOS平臺支持上報rtsp 401事件;
- ?Windows/Android/iOS平臺支持buffer time設(shè)置;
- ?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平臺均支持回調(diào)音視頻數(shù)據(jù)(視頻: H.264/YUV 音頻:AAC/PCMA/PCMU/SPEEX)到上層;
- ?Windows/Android/iOS平臺支持自定義播放布局;
- ?Android平臺音視頻多種render機制,視頻支持普通Surface和GLSurface,音頻支持audiotrack和opensl es;
- ?Windows/Android/iOS平臺支持播放過程中,’實時靜音/取消靜音’;
- ?Windows/Android/iOS平臺支持播放端視頻view實時旋轉(zhuǎn)(0° 90° 180° 270°)、水平反轉(zhuǎn)、垂直反轉(zhuǎn);
- ?Windows/Android/iOS平臺支持播放過程中快速切換URL;
- ?[錄像SDK同步使用]Windows/Android/iOS平臺播放、錄像完全隔離,同等配置的流,切換url依舊可以錄制到同一個文件;
- ?Windows/Android/iOS平臺播放過程中,音視頻信息改變后自適應(yīng);
- ?Android/iOS平臺支持軟、硬解碼,超低延遲、低資源占用播放rtsp/rtmp 1080p+;
- ?Windows/Android/iOS平臺支持播放/錄像過程中,隨時快照;
- ?[Windows點播播放器]支持本地flv文件播放(支持獲取flv文件的duration(時長);支持顯示當(dāng)前播放位置;支持開始播放或播放過程中seek(跳轉(zhuǎn)播放位置),也許是行業(yè)內(nèi)seek最快的flv點播播放器);
- ?Windows/Android/iOS平臺支持類似于線上娃娃機等直播方案的超低延遲模式設(shè)置(公網(wǎng)200~400ms)。
什么是Vitamio?
github地址:地址
Vitamio是一款 Android 與 iOS 平臺上的全能多媒體開發(fā)框架,全面支持硬件解碼與 GPU 渲染。
Vitamio能夠流暢播放720P甚至1080P高清MKV,FLV,MP4,MOV,TS,RMVB等常見格式的視頻,還可以在Android 與 iOS 上跨平臺支持 MMS, RTSP, RTMP, HLS(m3u8) 等常見的多種視頻流媒體協(xié)議,包括點播與直播。
Vitamio支持各種常見的流媒體協(xié)議,可以點播或者直播音頻和視頻,例如如下常見協(xié)議均能無縫支持:?
MMS、RTSP (RTP, SDP)、RTMP、HTTP progressive streaming、HLS - HTTP live streaming (M3U8)
音頻和視頻格式?
Vitamio使用了 FFmpeg 做為媒體解析器和最主要的解碼器,同時開發(fā)了針對不同移動平臺的硬解碼方案,能夠完美支持 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"這個關(guān)鍵字,和jar差不多的用途),可以方便集成到項目中。?
2、VitamioDemo是Vitamio的官方例子。
使用方式?
1.導(dǎo)入。通過github下載VitamioBundle。下載回來后大家可能發(fā)現(xiàn)沒有.project工程文件,可以通過File-> Import -> Android -> Existing Android Code Into Workspace來導(dǎo)入工程,然后改一下工程名稱即可。?
2、將VitamioBundle工程作為Android Library引入Demo工程使用即可。
總結(jié)
以上是生活随笔為你收集整理的播放RTMP协议的流媒体的几种选择的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【深度学习】使用深度学习进行手语识别
- 下一篇: 【学术相关】一个博士生接受怎样的训练是完