Skip to content
On this page

v4 发布日志

升级内容

  • 对核心结构体进行泛型重构
  • RingBuffer中元素存放的是完整的一帧,以确保构建RTP包时可以准确添加marker
  • 去除GOP延迟追帧逻辑,改为跳帧同步最新关键帧技术
  • 缓存形式从[]byte变为net.Buffers,使得可利用writev提高性能
  • 缓存中预构建avcc、flv、rtp三种格式,并且复用内存
  • 支持动态码率、动态分辨率
  • Stream拥有4种状态,从而支持按需拉流,断线重连等复杂场景
  • 去除Track等待逻辑,改为通过事件通知的方式
  • 原有Hook机制修改为事件总线模型,简化了代码逻辑
  • 新增http回调设置
  • 插件安装API更新,更简单
  • 插件通过反射自动注册Web API,并提供中间件机制
  • 自带跨域CORS配置以及基本身份认证功能
  • 插件在订阅发布流的API更新,采用一种统一的可扩展的事件模型
  • 采用zap作为日志库
  • 配置文件格式改为yaml
  • 实现无配置文件也可以启动(采用默认配置)
  • 配置文件中需要显式关闭插件才会使得插件不启用
  • 配置文件中对于订阅、发布、推、拉四种配置包含全局、插件级、流级三级优先级覆盖机制
  • 实现了对远程服务器推拉的基本底层架构,方便插件实现client端逻辑
  • 实现h265的完全支持
  • 新增debug插件用于调试
  • 去除Gateway插件以及summary插件,并入引擎中
  • record插件现支持fmp4格式录制
  • 新增webtransport插件提供WebTransport协议拉流
  • rtsp插件实现h265的拉流播放、实现aac、g711音频流处理
  • rtsp协议转发将不再重新解包和封包——透传
  • rtmp协议实现client端逻辑——可以从远程rtmp服务器推拉流
v4 发布日志 has loaded