Commit Graph

275 Commits (af1a6cc32e513d4685833d01b23df740b7a57856)

Author SHA1 Message Date
ShiBen 5e3bba6aed Merge branch 'master' of https://github.com/BenLocal/lal 4 years ago
ShiBen aeb2455c23
Merge branch 'q191201771:master' into master 4 years ago
ShiBen ac70d57bac fix#102 4 years ago
ShiBen 4f7560fbee fix#102 4 years ago
q191201771 ef8b3d592e (#101) [fix] hls.Muxer没有设置回调导致崩溃 4 years ago
q191201771 4cea1b8cf5 [fix] 确保rtsp sub拉流从关键帧开始发送数据,避免因此引起的花屏 4 years ago
q191201771 d11074958d (#97) [feat] lalserver支持用rtsp协议拉取rtmp的推流 4 years ago
q191201771 cf489cf16d prev commit patch 4 years ago
q191201771 1db76a4e46 [fix] rtmp信令打包参考本地chunk size 4 years ago
q191201771 1f97f1ef50 [fix] rtmp client session兼容对端回复两次publish或play信令的情况 4 years ago
q191201771 7281e62195 (#83) [fix] aac rtp打包 4 years ago
joestarzxh b7e7d42f8a [feat]rtsp补充存在两种论证时的测试 4 years ago
q191201771 cfabc9043c [feat] 新增demo pullrtmp2pushrtsp 4 years ago
q191201771 77c624ab03 [fix] aac rtp打包 4 years ago
q191201771 68470dea1f [fix] rtsp兼容,有的摄像头sdp中包含aac,但是没有config字段(后续也没有aac rtp包),导致连接失败 4 years ago
q191201771 44443c1c1d prev commit patch 4 years ago
joestarzxh 34d33ac026 [feat]FeedWwwAuthenticate中传递string切片,rtsp论证逻辑有此函数处理 4 years ago
joestarzxh 264a53f667 [feat]使用官方 http.Header 替换原来http的头 4 years ago
joestarzxh a224057363 [fix]rtsp论证只取第一个wwwAuthenticate 4 years ago
joestarzxh 94218d5221 [fix] 修正rtsp论证同时存在Digest,Basic时优先Digest论证 4 years ago
q191201771 e386cfee9f (#83) [feat] rtp aac打包 4 years ago
q191201771 32f5465ec9 (#82) [feat] sdp打包 4 years ago
q191201771 0e409102a0 (#83) [feat] package rtprtcp: 支持h265 rtp打包 4 years ago
q191201771 6c6999d7f1 [refator] package httpflv: 新增FlvFilePump,可循环匀速读取flv文件 4 years ago
q191201771 293fd4d607 [refactor] export aac.AdtsHeaderLength 4 years ago
q191201771 1bc140717c [test] sdp test case 4 years ago
q191201771 e8bba061cb (#58) [fix] http服务全部配置为不使用,启动lalserver时指针缺少判空导致崩溃 4 years ago
q191201771 7459a1812a (#83) [fix] 修复rtp h264打包nal type重复的问题 4 years ago
q191201771 7d8883f1db messages:
- [feat] package rtprtcp: 增加RtpPacker用于打包RtpPacket;RtpPackerPayloadAvc支持多种输入形式
- [feat] package aac: 增加adts,asc,seqheader间的转换代码;重构了整个包
4 years ago
q191201771 b11db88259 [refactor] avc.ParseSpsPpsFromSeqHeader, avc.ParseSpsPpsFromSeqHeaderWithoutMalloc, hevc.ParseVpsSpsPpsFromSeqHeader, hevc.ParseVpsSpsPpsFromSeqHeaderWithoutMalloc 4 years ago
q191201771 731bed099a (#87) [refactor] 重构lal整个项目的命名规则 4 years ago
q191201771 d70848d092 [patch] AVPacket2RTMPRemuxer中sps的空值判断 4 years ago
q191201771 24e8887ef8 #74 #85 [feat] 支持海康威视NVR,大华海康IDC的RTSP流(SDP不包含SPS、PPS等数据,而是通过RTP包发送) 4 years ago
q191201771 48a8d8da7b #79 [refactor] package avc: func SplitNALU***, IterateNALU*** 4 years ago
q191201771 a41dc6d8ee messages:
1. #86 [fix] gop缓存设置为0时,可能花屏
2. #84 [fix] rtmp merge write开启时,可能给新加入的sub session发送错误的数据
4 years ago
q191201771 0cf8660d17 messages:
- #77 [feat] lalserver: httpflv,httpts,hls的url pattern路由路径可以在配置文件中配置
- #64 [feat] hls默认提供两种播放url地址
- #77 [refactor] package hls: 将http url路径格式,文件存储路径格式,文件命名格式,映射关系抽象出来,业务方可在外层实现IPathSolver接口做定制
4 years ago
q191201771 229b55936d #84 [feat] 合并发送 4 years ago
q191201771 9d61f04b62 [feat] package rtprtcp: 增加RTPPackerAVC,用于将h264 Nalu包切割成RTP包 4 years ago
q191201771 1fb817e74b Merge branch 'master' of https://github.com/q191201771/lal 4 years ago
q191201771 5333a97b32 [refactor] package avc: add func IterateNALUStartCode, IterateNALUAnnexB, IterateNALUAVCC #79 4 years ago
joestarzxh ec83e0260e [fix]修正HTTP升级为WebSocket时不需要包含包体 4 years ago
q191201771 344a2c82b1 messages:
- [feat] HTTP端口复用:HTTP-FLV, HTTP-TS, HLS可使用相同的监听端口。HTTPS类似 #64
- [feat] HTTPS:支持HTTPS-TS, HLS over HTTPS(之前已支持HTTPS-FLV) #66
- [feat] WebSocket:支持WebSocket[s]-TS(之前已支持WebSocket[s]-FLV)#66
- [feat] 配置灵活。增加`default_http`。HTTP-FLV,HTTP-TS,HLS可以独立配置监听地址相关的项,也可以使用公共的`default_http`
- [refactor] 重构httpflv.SubSession和httpts.SubSession的重复代码
4 years ago
q191201771 c0d600ea1b v0.22.0 -> version.go 4 years ago
q191201771 8bf0331b24 messages:
- [feat] h265新增支持: hls拉流,hls录制;http-ts拉流,mpegts录制。h265支持列表见: https://pengrl.com/lal/#/LALServer (#65)
4 years ago
q191201771 7167d41fb5 [refactor] rtprtcp: 暴露RTPPacketList的属性 (#70) 4 years ago
q191201771 e4df7af23b [refactor] package rtmp: rtmp.ClientSession支持配置选择简单握手或者复杂握手, 默认使用简单握手 (#68) 4 years ago
q191201771 d5d67a51a2 [feat] 支持录制flv和ts文件 #14 4 years ago
q191201771 2e0615b496 patch 4 years ago
q191201771 f26092b890 patch 4 years ago
q191201771 158811d0e8 [fix] rtmp ClientSession握手,c2的发送时机,由收到s0s1s2改为收到s0s1就发送,解决握手失败的case #42 4 years ago
joestarzxh dece388f71 [style]websocket相关代码调整 4 years ago
joestarzxh ec225fd012 [style]websocket单元变量名称修改一下 4 years ago
joestarzxh 3c1d94eb56 [feat]支持ws-flv,ws-ts 4 years ago
q191201771 6b6f227858 [fix] 修复使用ffmpeg向lalserver推送rtsp h265流时报错 #55 4 years ago
q191201771 291ceda116 [feat] hls支持内存切片 #50 4 years ago
joestarzxh 5250b1a0d0 [fix]rtsp转rtmp腾讯X5播放器无法播放H265 4 years ago
joestarzxh cb7f681bae [fix] rtsp中关键数据解析错误时不返回错误,使rtsp能够正常转发 4 years ago
joestarzxh b412473a5a [fix] 解决h265 rtsp转rtmp无法解析出关键帧导致腾讯x5无法播放 4 years ago
q191201771 d352a8bc1a v0.21.0 -> version.go 4 years ago
q191201771 b180363f76 patch 4 years ago
q191201771 736eb0c1b4 Merge branch 'master' of https://github.com/q191201771/lal 4 years ago
q191201771 2c5bb92601 messages:
- [fix] package rtsp: 修复rtsp aac可能出现崩溃。支持aac fragment格式(一个音频帧被拆分成多个rtp包)
- [feat] lalserver: 新增配置项hls.cleanup_mode,支持三种清理hls文件的模式,具体说明见 https://pengrl.com/lal/#/ConfigBrief
- [doc] 启用英文版本README.md作为github首页文档展示
- [refactor] package rtprtcp: 重构rtp unpacker,业务方可以使用默认的container,protocol策略,也可以自己实现特定的协议解析组包策略
- [refactor] lalserver: 整理配置文件加载与日志初始化部分的代码
- [doc] lalserver: 新增配置项conf_version,用于表示配置文件的版本号
- [doc] lalserver: 启动时日志中增加lal logo
- [doc] 新增文章《rtmp中的各种ID》,见 https://pengrl.com/lal/#/RTMPID
- [doc] 新增文章《rtmp handshake握手之简单模式和复杂模式》,见 https://pengrl.com/lal/#/RTMPHandshake
4 years ago
q191201771 ad4f458899 prev commit patch: fix aggregate message 4 years ago
q191201771 f3078efc3c prev commit patch: fix aggregate stream 4 years ago
q191201771 7ce0ad4f35 prev commit patch: fix aggregate timestamp 4 years ago
q191201771 f4c5b91794 [refactor] rtmp aggregate message 4 years ago
joestarzxh 3fa57acfc7 [fix]修正RTMP aggregate 时间戳问题 4 years ago
joestarzxh efdd0eaa6b [fix]忘记的文件,rtmp 支持Aggregate Message 4 years ago
joestarzxh 55a690a989 [feat]rtmp 支持Aggregate Message 4 years ago
joestarzxh 748e1ee09a [fix]解决rtsp sub无响应的问题 4 years ago
q191201771 8c0da36846 fmt 4 years ago
q191201771 15af15fb13 [refactor] package rtprtcp: 重构一些函数名 4 years ago
q191201771 8aea2a98ae [fix] rtsp推流时,rtp包时间戳翻转导致的错误(比如hls一直强制切片) 4 years ago
q191201771 9bb3dac3d1 [fix] 修复lalserver中(rtsp.BaseInSession以及logic.Group)的一些竞态读写,https://github.com/q191201771/lal/issues/47 4 years ago
q191201771 a25b5e4ad0 v0.20.0 -> version.go 4 years ago
q191201771 3df6ee4027 1. [refactor] 使用新的unique id生成器,提高性能 2. [refactor] 统一各Session接口 4 years ago
q191201771 c5f756a51d [fix] 修复32位arm环境使用rtsp崩溃 4 years ago
q191201771 4a48518f5a 1. [feat] 新增app/demo/calcrtmpdelay,可用于测量rtmp服务器的转发延时 2. [refactor] 重构app/demo/pullrtmp2pushrtmp的对象管理逻辑 4 years ago
q191201771 fd0f71f9af [feat] app/demo/pushrtmp 做压测时,修改为完全并行的模式 4 years ago
q191201771 9971c9867a Merge branch 'fix-lack_of_unlock_group' 4 years ago
q191201771 42b7c97e0b v0.19.1 -> version.go 4 years ago
q191201771 98e63a62a2 [fix] 获取group中播放者数量时锁没有释放,导致后续无法转发数据 4 years ago
q191201771 5993af7456 [fix] 获取group中播放者数量时锁没有释放,导致后续无法转发数据 4 years ago
q191201771 e1b89c7eff messages:
- [feat] http notify,session增加完整url字段
- [feat] http notify,补全所有session类型
- [refactor] 重构/app/demo/pullrtmp2pushrtmp
4 years ago
q191201771 68e3557684 v0.19.0 -> version.go 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
joestarzxh 3af1816e46 [fix] RTSP支持Basic方式auth 4 years ago
q191201771 766573741e messages:
- [feat] rtsp,实现PushSession
- [feat] demo,新增app/demo/pullrtsp2pushrtsp,可拉取rtsp流,并使用rtsp转推出去
- [refactor] rtsp,重构部分逻辑,聚合至sdp.LogicContext中
4 years ago
q191201771 7dcd4a6b73 [fix] rtsp,输入流只有单路音频或视频时,接收对象设置错误导致崩溃 4 years ago
q191201771 1a0232f779 [fix] rtsp,只有输入流中的音频和视频格式都支持时才使用queue,避免只有音频或视频时造成延迟增加 4 years ago
q191201771 156cfff22c v0.18.0 -> version.go 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
xianghan228@qq.com 013a26af71 跳出循环,让conect 关闭,释放资源 4 years ago
xianghan228@qq.com 6f76c0f6cf Update server.go
#bug RTP视频通道设置不正错
4 years ago
xianghan228@126.com 219b9fd931 support rtsp over tcp to push stream 4 years ago