Go語言流媒體開源專案 LAL 今天發布了v0.35.4版本,
LAL 專案地址:https://github.com/q191201771/lal
老規矩,簡單介紹一下:
? 一. OBS支持RTMP H265推流
新出的標準,一般被稱為enhanced RTMP,OBS新版(29.1+版本,點我去下載安裝包)已經實作可以使用,LAL也做了相應的適配,換言之,你可以使用OBS推送H265的RTMP流給LAL了,
Tips: 使用H265的好處是相較于H264,占用更低的碼率卻擁有更高的影像質量,
值得注意的幾點細節:
- LAL轉換為其他封裝協議(比如RTSP、HLS)后,輸出的協議依然是標準協議,這點和之前沒啥區別,
- LAL輸出是RTMP/FLV時,依然保持enhanced RTMP格式,目前適配了enhanced RTMP的播放器只有mpegts.js,后續ffmpeg和VLC等播放器應該也會很快跟上支持,
- enhanced RTMP和之前金山云搞的HEVC over RTMP(就是codecid=12那個,國內大部分CDN產商都支持了)是兩套東西,LAL兩種格式都支持了,目前的策略是進來的RTMP/FLV是啥格式,出去的RTMP/FLV就是啥格式,后續可能會考慮轉換(比如通過配置或url引數等),
關于enhanced RTMP協議實作細節、OBS對應的使用方法可以看看我們的這篇文章: 《enhanced RTMP》
? 二. G711A/G711U
上個版本支持G711音頻編碼格式時留了個待完成的尾巴,RTSP轉RTMP只有視頻沒有聲音,這個版本支持了,
G711的整體情況我們正在整理中: https://www.yuque.com/pengrl/public/psxbp37r3yqopnxx
? 三. RTSP TCP/UDP 切換
一個優化: 有的RTSP源不支持TCP傳輸音視頻資料,會在SETUP信令階段給對端回復status code 461,用于表明自身不支持TCP,新版本的LAL收到461后會嘗試切換UDP SETUP,反之UDP切TCP也是一樣的道理,
? 更多
還有一些修改不逐個介紹了,大致如下:
- [opt] mpegts根據編碼格式打包patpmt(提高純視頻流的兼容性)
- [opt] HTTP-API: 支持跨域
- [fix] rtmp: 決議amf strict array
- [fix] rtmp轉mpegts處理時間戳錯誤,導致有b幀時ffplay播放hls報錯
- [fix] GetSamplingFrequency missing 24000
- [fix] simplifing logic to enable
fragment_duration_ms
on configuration to be under thousands (but not below hundreds)- [fix] 解決CustomizePubSessionContext使用dumpFile空指標導致崩潰的問題
- [test] unit test for base.DumpFile
以上內容摘取自 《lal CHANGELOG版本日志》 ,你可以通過源檔案獲取更詳細的內容,
? 開發者
感謝參與這個版本的開源貢獻者:yoko, ZSC714725, joaop, sanenchen, yang heng01~, penglh, LiH0820
? 進一步了解lal
- github
- 官方檔案
- 聯系作者
微信掃碼加我好友(進微信群):
本文完,祝你今天開心,
yoko, 202304
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/550416.html
標籤:其他