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

LAL v0.32.0发布,更好的支持纯视频流的更多相关文章

  1. terraform v0.12.0 发布了

    v0.12.0 相比以前的有好多新的特性,包括语法,以及函数增强,昨天还在折腾的一个json解码的问题,直接使用 v0.12.0 就可以解决了,同时也包含了for 操作处理同时官方文档对于v0.12. ...

  2. CoreWCF 1.0.0 发布,微软正式支持WCF

    2022年4月28日,我们达到了一个重要的里程碑,并发布了CoreWCF的1.0.0版本.对Matt Connew (微软WCF团队成员)来说,这是5年前即 2017年1月开始的漫长旅程的结束.Mat ...

  3. Plink v0.1.0 发布——基于Flink的流处理平台

    Plink是一个基于Flink的流处理平台,旨在基于 [Apache Flink]封装构建上层平台. 提供常见的作业管理功能.如作业的创建,删除,编辑,更新,保存,启动,停止,重启,管理,多作业模板配 ...

  4. 重大更新!Druid 0.18.0 发布—Join登场,支持Java11

    Apache Druid本质就是一个分布式支持实时数据分析的数据存储系统. 能够快速的实现查询与数据分析,高可用,高扩展能力. 距离上一次更新刚过了二十多天,距离0.17版本刚过了三个多月,Druid ...

  5. Nacos 发布 v0.8.0 Pre-GA版本,安全稳定上生产?

    服务注册和服务配置开源项目 Nacos 本周发布了 v0.8.0 Pre-GA 版本,作为开源项目生命周期中的里程碑版本之一,v0.8.0 Pre-GA版本支持登录.命名空间.Metrics监控(对接 ...

  6. [译]基于ASP.NET Core 3.0的ABP v0.21已发布

    基于ASP.NET Core 3.0的ABP v0.21已发布 在微软发布仅仅一个小时后, 基于ASP.NET Core 3.0的ABP v0.21也紧跟着发布了. v0.21没有新功能.它只是升级到 ...

  7. GraphScope v0.12.0 版本发布

    GraphScope 每月进行常规版本的迭代与发布,GraphScope v0.12.0 全新版本在四月如期而至.v0.12.0 为交互式图查询 GAIA 引入全新的 IR 层以及新增 Giraph ...

  8. SpaceVim 发布 v0.8.0

    This project exists thanks to all the people who have contributed. The last release v0.7.0 is target ...

  9. Visual Studio Code v0.9.1 发布

    微软的跨平台编辑器 Visual Studio Code v0.9.1 已经发布,官方博客上发布文章Visual Studio Code – October Update (0.9.1):http:/ ...

随机推荐

  1. OpenJudge 1.5.15 银行利息

    15:银行利息 总时间限制: 1000ms 内存限制: 65536kB 描述 农夫约翰在去年赚了一大笔钱!他想要把这些钱用于投资,并对自己能得到多少收益感到好奇.已知投资的复合年利率为R(0到20之间 ...

  2. Linux之博客系统的搭建

    博客系统 三种配置:php+nginx+mysql 搭建步骤 改主机名 hostnamectl set-hostname lnmp 传入LNMP压缩包于root下(略) 配置网络(略)及yum源 先检 ...

  3. ClickHouse(05)ClickHouse数据类型详解

    ClickHouse属于分析型数据库,ClickHouse提供了许多数据类型,它们可以划分为基础类型.复合类型和特殊类型.其中基础类型使ClickHouse具备了描述数据的基本能力,而另外两种类型则使 ...

  4. Python 第四次实验

    1.(程序设计)定义函数def GetRandomChar(),返回一个随机的数字或大写或小写字母,每个符号出现的机会相等.调用该函数8次,生成并输出一个8位的验证码.用户输入该验证码,如果验证码正确 ...

  5. 配置联想IMM使用AD账户登录

    IMM是联想(IBM)服务器的管理卡Integrated Management Module的缩写,现在是第二个版本.通过它可以远程管理服务器,就像你在服务器面前操作一样.可以修改BIOS设置,可以重 ...

  6. 【学习笔记】 第05章 pandas入门

    前言 上一篇学习中学成的随笔是我的第一篇随笔,撰写中有颇多不足,比如事无巨细的写入学习过程反而像是在抄书,失去了很多可读性也不利于自己反过头来复习,本章节学习需要多加注意,尽量写下较为关键的内容,犯下 ...

  7. 静态文件:Static Files

    官方文档地址:https://fastapi.tiangolo.com/zh/tutorial/static-files/ from fastapi import FastAPI from fasta ...

  8. 18个一线工作中常用的Shell脚本

    1.检测两台服务器指定目录下的文件一致性 #!/bin/bash ###################################### 检测两台服务器指定目录下的文件一致性 ######### ...

  9. 使用ko安装的nexus想作为maven仓库使用

    默认安装的nexus并不能作为maven仓库使用,只能添加maven仓库来使用,具体可以查看该文档:使用nexus3配置maven私有仓库 https://www.cnblogs.com/sanduz ...

  10. Logstash:运用 memcache 过滤器进行大规模的数据丰富

    文章转载自:https://blog.csdn.net/UbuntuTouch/article/details/106915969 理论上也可以使用redis,有待实践