Commit Graph

20 Commits (8bf0331b24b39704c5b578a9e211b7839813bb9c)

Author SHA1 Message Date
q191201771 e1b89c7eff messages:
- [feat] http notify,session增加完整url字段
- [feat] http notify,补全所有session类型
- [refactor] 重构/app/demo/pullrtmp2pushrtmp
4 years ago
q191201771 37d8d1738d messages:
- [doc] 启动lal官方文档页: https://pengrl.com/lal
- [doc] 新增文档《rtmp url,以及vhost》: http://pengrl.com/lal/#/RTMPURLVhost
- [feat] demo,新增/app/demo/pullrtmp2pushrtmp,从远端服务器拉取RTMP流,并使用RTMP转推出去,支持1对n转推
- [fix] rtsp,setup信令header中的transport字段区分record和play,record时添加mode=record
4 years ago
q191201771 1224afe201 messages:
- [fix] rtsp,client session的所有信令都处理401 auth
- [fix] rtsp,in session使用rtp over tcp时,收到sr回复rr
- [fix] avc,整体解析sps数据失败时,只解析最基础部分
- [feat] windows平台下,执行程序缺少运行参数时,等待用户键入回车再退出程序,避免用户双击打开程序时程序闪退,看不到提示信息
- [chore] Go最低版本要求从1.9上升到1.13
4 years ago
q191201771 33fe194d40 messages:
- [feat] rtsp,PushSession支持auth,interleaved
- [refactor] rtsp,新增ClientCommandSession,将PushSession和PullSession中共用的信令部分抽离出来
- [refactor] rtsp,新增BaseOutSession,将PushSession和SubSession中共用的发送数据部分抽离出来
- [refactor] rtsp,整理所有session,包含生命周期,ISessionStat、IURLContext、Interleaved收发等函数,整理debug日志
4 years ago
q191201771 766573741e messages:
- [feat] rtsp,实现PushSession
- [feat] demo,新增app/demo/pullrtsp2pushrtsp,可拉取rtsp流,并使用rtsp转推出去
- [refactor] rtsp,重构部分逻辑,聚合至sdp.LogicContext中
4 years ago
q191201771 942b5da52d messages:
- [feat] rtsp,pull支持interleaved(over tcp)模式。demo/pullrtsp2pushrtmp和demo/pullrtsp可通过运行参数选择是否使用over tcp模式
- [feat] rtsp,pull支持auth digest验证
- [feat] rtsp,pull支持定时发送GET_PARAMETER rtsp message进行保活(对端支持的情况下)
- [fix] rtsp,输入流音频不是AAC格式时,保证视频流可正常remux成其他封装协议
- [fix] rtsp,pull开始时发送dummy rtp/rtcp数据,保证对端能成功发送数据至本地
- [fix] rtsp,将以下包返回给上层:rtsp pub h265, single rtp packet, VPS, SPS, PPS, SEI
- [fix] rtsp,修改rtsp.AVPacketQueue的行为:当音频或者视频数量队列满了后,直接出队而不是丢弃
- [fix] sdp,修复解析及使用sdp错误的一些case
- [refactor] rtmp/httpflv/rtsp,统一所有PullSession:超时形式;Pull和Wait函数
- [fix] avc,尝试解析scaling matrix
4 years ago
q191201771 89f0442ee1 commit messages:
- 增加demo程序:`/app/demo/pullrtsp2pushrtmp`,可拉取rtsp流,并使用rtmp转推出去
- 所有session实现ISessionURLContext接口,用于获取流url相关的信息
- 所有session实现ISessionStat接口,用于计算、获取bitrate等流相关的信息
- 重构所有client session解析url的地方
4 years ago
q191201771 5df6f4b94e commit messages:
- [feat] 新增rtsp pull拉流客户端,`/app/demo/pullrtsp`
- [feat] 实现rtsp pull session
- [feat] rtsp sub支持interleaved模式
- [feat] 新增package remux
- [refactor] 整体重构package rtsp
- [fix] 正确处理大于2字节的AudioSpecificConfig
4 years ago
q191201771 fa6599deff messages:
- [feat] rtsp pub -> rtsp sub
- [refactor] 整体重构package rtsp,未完成
- [feat] rtsp pub -> relay rtmp push
4 years ago
q191201771 34bd5cf004 commit messages:
- `/app/demo/dispatch`处理`on_update`事件回调
- HTTP Notify增加新事件回调`/on_server_start`
- HTTP API `/api/stat/lal_info` 中增加`server_id`字段
- 增加`gen_tag.sh`,用于打tag
4 years ago
q191201771 e5788aeadd [feat] 一部分rtsp sub的代码 4 years ago
q191201771 d7df4d9623 [feat] 支持rtsp pub h265 (lalserver支持接收rtsp h265的推流) 4 years ago
q191201771 ee8de29f7e messages:
- [feat] package rtsp: 支持rtp h264 STAP-A格式
- [fix] package avc: 修复解析sps中PicOrderCntType为2无法解析的bug
- [fix] package sdp: 修复解析sdp fmtp中aac config长度大于4无法解析的bug
- [refactor] package logic: 重构Group,将不同类型的输入流、输出流进行抽象,逻辑统一
- [refactor] package rtprtcp: 将RTPComposer重命名为RTPUnpacker
- [test] 使用wontcry30s.flv作为单元测试用的音视频文件
- [chore] 使用Makefile管理build, test
- [chore] CI跑1.9和master两个Go版本,跑linux、macos、windows三个平台,跑build和test两个脚本
- [doc] 增加文档: https://pengrl.com/p/20080/
5 years ago
q191201771 0509ec5fdd messages:
- [fix] rtsp: rtp和rtcp使用两个连续的端口
- [feat] 增加rtsp.AVPacketQueue,用于处理时间戳问题
- [feat] 处理发送者报告SR,并生成接收者报告RR回复
- [refactor] 整理rtsp.Server代码
- [refactor] 使用nazanet.AvailUDPConnPool和nazanet.UDPConnection
- [feat] rtsp.PubSession资源释放
5 years ago
q191201771 afb7850b87 messages:
- [feat] lalserver集成rtsp pub功能。支持接收rtsp(rtp/rtcp)推流,转换为rtmp,httpflv,hls格式供拉流使用
- [refactor] 新增package sdp,rtprtcp,将package rtsp中对应的内容独立出来
- [refactor] 新增package base,整理lal项目中各package的依赖关系。该工作还在进行中
- [feat] package rtmp: 增加BuildMetadata函数
5 years ago
q191201771 3e8c71f607 messages:
- [feat] rtsp server,将推流上来的h264和aac的rtp数据转换成es流,基本跑通了
- [refactor] package aac,相当于重写了
- [refactor] app/demo下的flvfile2rtmppush,rtmppull,httpflvpull重命名为pushrtmp,pullrtmp,pullhttpflv
5 years ago
q191201771 a11723bde7 1. [feat] package rtsp: 开始处理收到的rtp数据 2. [style] Nalu更改为NALU 5 years ago
q191201771 4f8757579f messages:
- [feat] 部分rtsp代码,目前已经粗略完成pub的前期交互,可接收到rtp,rtcp数据
- [test] innertest中对hls生成的文件做md5验证
- [refactor] 整理日志
- [doc] 增加PR规范
- [chore] 下载单元测试用的test.flv失败,本地文件大小为0时,去备用地址下载
- [refactor] 所有回调函数的名字,从CB后缀改为On前缀
5 years ago
q191201771 23f386fce7 [feat] 部分rtsp代码 5 years ago
q191201771 9af3b44753 Changes:
- [refactor] app/lals重命名为app/lalserver,避免描述时容易和lal造成混淆
 - [refactor] 将app/lalserver的大部分逻辑代码移入pkg/logic中
 - [test] 将所有package的Server、Session等内容的实例测试收缩至package innertest中,多个package都可以共用它做单元测试
 - [refactor] lalserver配置中增加显式enable字段,用于开启关闭特定协议
 - [refactor] 各package的Server对象增加独立的Listen函数,使得绑定监听端口失败时上层可以第一时间感知
 - [feat] demo/analyseflv,增加I帧间隔检查,增加metadata分析
 - [fix] package avc: 修复函数CalcSliceType解析I、P、B帧类型的bug
 - [refactor] package aac: 函数ADTS::PutAACSequenceHeader检查输入切片长度
 - [reafactor] package aac: 删除函数CaptureAAC
 - [feat] 增加demo/learnrtsp,pkg/rtsp,开始学习rtsp
5 years ago