Commit Graph

16 Commits (0076e5c8287c8e05a250e9ee1cc8a8160da14fe7)

Author SHA1 Message Date
q191201771 17a053c3c2 - [代码] 默认的rtmp地址
- [代码] naza 更新为 0.4.3
- [架构调整] lal 中的服务器更名为 lals
- [其他] 从远端下载 flv 测试文件,跑单元测试
- [其他] 所有源码文件添加 MIT 许可证
- [其他] test.sh 中加入更多 go tool
5 years ago
q191201771 083d05a771 1. 从远端下载flv文件做单元测试 2. 添加微信图片 3. 所有源码文件头部添加MIT许可证 5 years ago
q191201771 84fdaa84f5 修改内容:
- package logic: 增加 func FlvTag2RTMPMsg
- package rtmp:
    - 增加 `example_test.go` 开启了一个 Server,一个 PushSession,一个 PullSession,用于测试整个 rtmp 包的流程
    - ClientSession 和 ServerSession 使用 nezha 中的 connection
    - 增加 struct ChunkDivider
    - 调整一些接口
- package httpflv:
    - 删除了 group, gop 相关的代码,后续会放入 package logic 中
- 更新 nezha -> 0.3.0
5 years ago
q191201771 2de67da06a 1). errors.PanicIfErrorOccur -> log.FatalIfErrorNotNil 2). 新增 pkg/aac/aac_test.go 5 years ago
q191201771 7ec3b9c0e1 pkg/httpflv/client_pull_session.go 更新 nezha 中的 connection 6 years ago
q191201771 0437993a24 提交信息:
* rtmp音频直接转发,不等待视频
* 新增 /pkg/util/assert 用于替换单元测试中的 stretchr/testify/assert
* 补充一些单元测试
6 years ago
q191201771 1be33f77f5 修改内容如下:
- 去除对第三方日志库seelog的依赖,自己实现了一个简单的日志模块 /pkg/util/log
- 去除对 github.com/pkg/errors 的依赖,至此,lal不依赖任何第三方库
- 从flv文件中抽取aac数据写成aac es流格式文件
- 增加 app/rtmppull,一个rtmp拉流客户端
6 years ago
q191201771 03208d5a55 添加 app/flvfile2es 用于从flv文件中抽取h264 es流并写入文件 6 years ago
q191201771 3630b7568d rm coverage.txt, add build_linux.sh 6 years ago
q191201771 ca27679b9d commit messages:
* 加入编译时信息bininfo
* 将rtmp.PubSession的数据转发给rtmp.SubSession,目前先sub再pub可以播放了
* 将lal.Group的功能拆分成httpflv.Group和rtmp.Group两部分
* 整理pkg和/pkg/util包
6 years ago
q191201771 41f0317cd0 rm bin/lal 6 years ago
q191201771 f52241d795 fix cannot use test profile flag with multiple packages 6 years ago
q191201771 763cc241a6 mod:
* 部分rtmp回源代码
* 部分rtmp server代码
* 部分rtmp服务端握手代码
6 years ago
q191201771 209c32d0cb * 优化http-flv gop存储方式。
* 优化http-flv拉流时buffer拷贝。
* 写了一部分rtmp客户端拉流功能。
* 简单的压力测试,在腾讯云两核云主机上,拉300路http-flv流,带宽360Mb,占单核CPU 55%左右。
* 添加日志不初始化时,默认输出控制台。
6 years ago
q191201771 bf6b9502df * PullSession和SubSession的主动关闭、被动关闭
* 引入日志库seelog,添加一些日志
* 缓存gop
* 部分解析avc seq header
6 years ago
q191201771 5a2ea4fadc 初步完成,http-flv直播流播放分发基础功能。http-flv播放,http-flv回源拉流至本地。
代码待整理。

* Group
    * 通过流名称形成群组,1对n挂载,以及广播转发数据
    * 支持配置,http-flv播放时,如果流不存在,是否从另一个节点http-flv回源拉流至本地
    * 相同的流只回源1路
    * Group内无PullSession和SubSession后释放Group
    * 支持配置,冷流超时释放时间。即无播放端时,多久后主动关闭回源的流
* PullSession - 用于回源(session作为连接主动发起端)
    * 支持配置,发起连接的超时时间
    * 连接成功后可设置tcp socket options
    * 支持对端关闭
    * 支持配置,读数据超时时间
* SubSession - 用于http-flv播放(session作为连接被动接受端)
    * 将net.conn对象传递给SubSession持有前可设置tcp socket options
    * 支持对端关闭
    * 支持配置,多长时间无数据发送,主动关闭连接
6 years ago