google + 實踐:最終直播成功。
記錄一下。
**架構為:ffmpeg + crtmpserver + flash ,進一步拆分:flv muxer + librtmp + crtmpserver + flash
進入正題:
編譯crtmpserver: 過程曲折。請參考:
1. 源**根資料夾的readme。
2. google。
3. 我遇到的主要問題是:我將源**包放在了windows的d盤下,在centos虛擬機器中共享的d盤,然後編譯,編譯只是。
解決的方法是:將源**複製到虛擬機器的home資料夾,然後再編譯。成功。
編譯ffmpeg,最好加上librtmp。libx264的支援。
1. 編譯librtmp,libx264庫。
1. ./configure --enable-gpl --enable-libx264 --enable-librtmp, 請參考:
2. 不出意外就成功了。ffmpeg在linux上,比較easy編譯。
1. cd crtmpserver/builders/cmake
2. 改動crtmpserver.lua。加入media file絕對路徑。我的機器上配置是這種:
mediafolder="/root/crtmpserver/media"
4. ./crtmpserver/crtmpserver ./crtmpserver/crtmpserver.lua 注:如成功。
出現 go! go! go!
1. cd crtmpserver/builders/cmake
2. 改動crtmpserver.lua。向flvplayback應用中加入
,3. ./crtmpserver/crtmpserver ./crtmpserver/crtmpserver.lua 注:如成功。出現 go! go! go!
4. ./ffmpeg -re -i ~/wind/movie/sample.mp4 -vcodec copy -acodec copy -f flv rtmp:
5. ./ffplay "rtmp://localhost/flvplayback/test live=1"
補充:這個演示樣例在wowza安裝資料夾下:wowza streaming engine 4.0.5\examples\videoondemandstreaming\flashrtmpplayer 。這個樣例在我的資源中。
位址例如以下:
android下編譯openssl,參考:
android下編譯ffmpeg,參考:
android下編譯crtmpserver,參考:
搭建基於crtmpserver的點播解決方案
1.linux環境下build並啟動crtmpserver 這部分可以參見我寫的專項詳解文章 crtmpserver流 伺服器的介紹與搭建 和 crtmpserver配置檔案詳解 2.修改配置檔案 修改配置檔案 crtmpserver.lua 配置檔案的具體意義見文章 crtmpserver配置檔案...
crtmpserver 基本流程分析
首先我們先分析下基本流程。1 初始化流程 initnetworking 初始化網路 initialize logger init 初始化日誌 lowercase extension lua 載入.lua字尾配置檔案 loadluafile normalize 初始化日誌配置 初始化監聽配置 ioha...
CRtmpServer分析與應用
crtmpserver是一款不錯的開源流 伺服器,用c 語言編寫,跨平台。官方介紹crtmpserver不僅支援adobe rtmp協議,還支援其它常用的協議 crtmpserver從生產環境使用的情況來看,每天都在用,從幾十m到上百m的流量不等,執行幾個月無宕機,cpu,記憶體各方面效能指標穩定,...