V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
notokoy
V2EX  ›  Go 编程语言

LAL v0.32.0 发布,更好的支持纯视频流

  •  
  •   notokoy · 2022-11-10 19:55:18 +08:00 · 1218 次点击
    这是一个创建于 725 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Go 语言流媒体开源项目 LAL 今天发布了 v0.32.0 版本。距离上个版本刚好一个月时间,LAL 依然保持着高效迭代的状态。

    LAL 项目地址: https://github.com/q191201771/lal

    挑三个比较重要的修改简单介绍一下:

    ▌ 一,自动叠加静音音频

    这个是为了更好的支持 纯视频流 ,解决很多播放器播放纯视频的直播流时,可能出现首帧打开时间特别慢、延迟大的问题。

    详情我单独写了一篇文档: 《 lalserver 自动叠加静音音频》

    ▌ 二,支持 RTMPS ,RTSPS

    基于 TLS/SSL 对 RTMP 和 RTSP 协议进行加密,带来更高的安全性。

    RTMPS 和 RTSPS 可以通过 lalserver 的配置文件开启,比如 RTMPS 对应的配置:

      "rtmp": {
        //. 是否开启 rtmp 服务的监听
        //  注意,配置文件中控制各协议类型的 enable 开关都应该按需打开,避免造成不必要的协议转换的开销
        "enable": true,
    
        //. RTMP 服务监听的端口,客户端向 lalserver 推拉流都是这个地址 //. RTMP 服务监听的端口,客户端向 lalserver 推拉流都是这个地址
        "addr": ":1935",
    
        //. 是否开启 rtmps 服务的监听
        //  注意,rtmp 和 rtmps 可以任意开启一个或全部打开或全部关闭
        "rtmps_enable": true,
    
        //. RTMPS 服务监听的端口地址
        "rtmps_addr": ":4935",
    
        //. RTMPS 的本地 cert 文件 
        "rtmps_cert_file": "./conf/cert.pem",
    
        //. RTMPS 的本地 key 文件
        "rtmps_key_file": "./conf/key.pem",
        ...
      },
    

    提示,以上内容来源 《 lalserver 配置文件说明》 ,打开源文档可以获得更友好的阅读格式。

    ▌ 三,更好的支持更多的 RTSP 摄像头

    比如:

    • rtp 协议栈支持解析 header 中的 padding 和 csrc
    • 修复 aac rtp type 不是标准值导致无法合帧的问题。提高兼容性
    • 修复 rtsp auth 可能失败的 bug

    以上处理都是对社区真实反馈的响应。

    ▌ 更多修改

    还有一些修改不逐个介绍了,大致如下:

    • [feat] demo: pullhttpflv 拉取 http-flv 时可以存储为 flv 文件
    • [opt] 二次开发: 当 DelCustomizePubSession 后,调用被删除对象的 FeedAvPacket 方法将返回错误
    • [opt] 二次开发: 支持直接使用 json 字符串作为配置内容初始化 ILalServer
    • [opt] 兼容性优化。转 ts 时,如果调整时间戳失败则使用调整前的时间戳。
    • [opt] 兼容性优化。当 rtmps 和 rtsps 加载签名文件失败时,只打印日志而不退出 lalserver
    • [fix] http-api: 修复 sub http-flv remote_addr 字段没有值的 bug
    • [log] 打印 rtsp 信令。丰富多处错误日志,比如转 hls 异常
    • [doc] 新增文档:重要概念 https://pengrl.com/lal/#/concept

    以上内容摘取自 《 lal CHANGELOG 版本日志》 ,你可以通过源文档获取更详细的内容。

    进一步了解 lal

    本文完,祝你今天开心。

    yoko, 202211

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3712 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 10:31 · PVG 18:31 · LAX 02:31 · JFK 05:31
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.