From 156cfff22c3a879fe56c20f56cb43b38e2e476fe Mon Sep 17 00:00:00 2001 From: q191201771 <191201771@qq.com> Date: Sun, 27 Dec 2020 10:39:41 +0800 Subject: [PATCH] v0.18.0 -> version.go --- CHANGELOG.md | 23 +++++++++++++++++++++++ README.md | 2 +- pkg/base/version.go | 2 +- pkg/hls/muxer.go | 6 +++--- 4 files changed, 28 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f2ec915..38fc7fb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,26 @@ +#### v0.18.0 (2020-12-27) + +- [feat] 实现rtsp pull session +- [feat] demo,增加`/app/demo/pullrtsp2pushrtmp`,可拉取rtsp流,并使用rtmp转推出去 +- [feat] demo,增加`/app/demo/pullrtsp`,可拉取rtsp流,存储为flv文件 +- [feat] rtsp interleaved(rtp over tcp)模式。pub, sub, pull都已支持 +- [feat] rtsp,pull支持auth digest验证 +- [feat] rtsp,pull支持定时发送`GET_PARAMETER` rtsp message进行保活(对端支持的情况下) +- [feat] rtsp,输入流音频不是AAC格式时,保证视频流可正常remux成其他封装协议 +- [feat] rtsp,pull开始时发送dummy rtp/rtcp数据,保证对端能成功发送数据至本地 +- [feat] rtsp,修改rtsp.AVPacketQueue的行为:当音频或者视频数量队列满了后,直接出队而不是丢弃 +- [feat] logic,rtsp pub转发给rtsp sub +- [feat] logic,rtsp pub转发给relay rtmp push +- [feat] remux,用于处理协议转封装 +- [refactor] 重构所有client session解析url的地方 +- [refactor] 所有session实现ISessionStat接口,用于计算、获取bitrate等流相关的信息 +- [refactor] 所有session实现ISessionURLContext接口,用于获取流url相关的信息 +- [refactor] rtmp/httpflv/rtsp,统一所有PullSession:超时形式;Pull和Wait函数 +- [fix] rtsp,将以下包返回给上层:rtsp pub h265, single rtp packet, VPS, SPS, PPS, SEI +- [fix] sdp,修复解析及使用sdp错误的一些case +- [fix] aac,正确处理大于2字节的AudioSpecificConfig +- [fix] avc,尝试解析scaling matrix + #### v0.17.0 (2020-11-21) - [feat] 增加HTTP Notify事件回调功能,见 https://pengrl.com/p/20101 diff --git a/README.md b/README.md index e911d77..e9881f7 100644 --- a/README.md +++ b/README.md @@ -43,7 +43,7 @@ - [x] **多种编码格式**。视频支持H264/AVC,H265/HEVC,音频支持AAC - [x] **录制**。支持HLS录制(HLS直播与录制可同时开启) - [x] **HTTPS**。支持HTTPS-FLV拉流 -- [x] **RTSP支持interleaved mode模式**。同时支持RTP over UDP/TCP +- [x] **RTSP**。支持interleaved模式。支持digest auth验证。支持`GET_PARAMETER`。 - [x] **HTTP API接口**。用于获取服务信息,向服务发送命令。见[《lal流媒体服务器的HTTP API接口》](https://pengrl.com/p/20100) - [x] **HTTP Notify事件回调**。见[《lal HTTP Notify(or Callback or Webhook)事件回调》](https://pengrl.com/p/20101) - [x] **分布式集群**。 diff --git a/pkg/base/version.go b/pkg/base/version.go index 39d5aca..a057495 100644 --- a/pkg/base/version.go +++ b/pkg/base/version.go @@ -16,7 +16,7 @@ import "strings" // 并且将这些信息打入可执行文件、日志、各协议中的标准版本字段中 // 版本,该变量由外部脚本修改维护 -const LALVersion = "v0.17.0" +const LALVersion = "v0.18.0" var ( LALLibraryName = "lal" diff --git a/pkg/hls/muxer.go b/pkg/hls/muxer.go index 356f89a..24b38f4 100644 --- a/pkg/hls/muxer.go +++ b/pkg/hls/muxer.go @@ -91,9 +91,9 @@ func NewMuxer(streamName string, config *MuxerConfig, observer MuxerObserver) *M playlistFilenameBak: playlistFilenameBak, recordPlayListFilename: recordPlaylistFilename, recordPlayListFilenameBak: recordPlaylistFilenameBak, - config: config, - observer: observer, - frags: frags, + config: config, + observer: observer, + frags: frags, } streamer := NewStreamer(m) m.streamer = streamer