今天以下文章來源于Go招聘 ,作者歐盆索思
Go招聘 Golang 相關求職和招聘,以及面試題、經驗分享,Go 語言其他知識和職場也是值得分享的。 這幾年直播真的是不要太火,相關技術也很成熟。但沒有接觸過的人,可能不知道怎么實現的。如果你對直播技術感興趣,今天的這個項目很適合你研究。而且是國人開發(fā)的。 項目地址:https://github.com/gwuhaolin/livego,Star 數:5.3k+。 這是一個簡單高效的直播服務器,完全使用 Go 實現,性能高,跨平臺,安裝和使用非常簡單。支持常用的傳輸協(xié)議、文件格式、編碼格式。 你可以通過編譯好的二進制文件:https://github.com/gwuhaolin/livego/releases 安裝,也可以使用 Docker: $ docker run -p 1935:1935 -p 7001:7001 -p 7002:7002 -p 8090:8090 -d gwuhaolin/livego
當然,也可以按普通的 Go 項目進行源碼安裝。 $ go get -v github.com/gwuhaolin/livego
簡單使用 - 啟動服務:執(zhí)行
livego 二進制文件啟動 livego 服務; - 訪問
http://localhost:8090/control/get?room=movie 獲取一個房間的 channelkey(channelkey用于推流,movie用于播放). - 推流: 通過
RTMP 協(xié)議推送視頻流到地址 rtmp://localhost:1935/{appname}/{channelkey} (appname默認是live ), 例如:使用 ffmpeg -re -i demo.flv -c copy -f flv rtmp://localhost:1935/{appname}/{channelkey} 推流(下載demo flv); - 播放: 支持多種播放協(xié)議,播放地址如下:
RTMP :rtmp://localhost:1935/{appname}/movie FLV :http://127.0.0.1:7001/{appname}/movie.flv HLS :http://127.0.0.1:7002/{appname}/movie.m3u8
使用幫助: ./livego -h Usage of ./livego: --api_addr string HTTP管理訪問監(jiān)聽地址 (default ":8090") --config_file string 配置文件路徑 (默認 "livego.yaml") --flv_dir string 輸出的 flv 文件路徑 flvDir/APP/KEY_TIME.flv (默認 "tmp") --gop_num int gop 數量 (default 1) --hls_addr string HLS 服務監(jiān)聽地址 (默認 ":7002") --hls_keep_after_end Maintains the HLS after the stream ends --httpflv_addr string HTTP-FLV server listen address (默認 ":7001") --level string 日志等級 (默認 "info") --read_timeout int 讀超時時間 (默認 10) --rtmp_addr string RTMP 服務監(jiān)聽地址 (默認 ":1935") --write_timeout int 寫超時時間 (默認 10)
文末「閱讀原文」可直達項目首頁。 今天的項目大家覺得怎么樣嗎?如果你喜歡,請在文章底部留言、點贊或關注轉發(fā),你的支持就是我持續(xù)更新的最大動力!
|