Commit Graph

221 Commits

Author SHA1 Message Date
xiongguangjie
fe61b572e0
Fix hls fmp4 clear cache bug (#3355)
Fix hls fmp4 clear cache delete init.mp4 result in play failed for #3348
2024-03-08 11:04:59 +08:00
Seto
27217cb1e6 Fix _media_src setIndexFile by mistake for include_delay. 2024-01-06 18:42:57 +08:00
SetoKaiba
b6cbbb4339
Add hls_delay feature (#3158) 2024-01-03 09:05:15 +08:00
xia-chu
c0bb7db476 BugFix: crash when FrameMerger::flush
In a lambda expression, temporary stack variables should not be captured; otherwise,
the variables may have become invalid when FrameMerger::flush is called.
2023-12-14 17:28:21 +08:00
夏楚
64f15202de
Support multi audio/video track 2023-12-09 22:34:22 +08:00
夏楚
bbe8f4a018
release 8.0 2023-12-09 16:23:51 +08:00
xiongziliang
3137b95406 修复hls快速重连时,延迟删除文件夹相关bug (#3039) 2023-12-02 21:53:24 +08:00
xiongziliang
c12a6f0aed 适配ZLToolKit 2023-12-02 19:49:28 +08:00
zjx94
1cbfcd96e2
新增hls快速注册相关配置,提高hls打开速度 (#3024)
新增配置项:hls.fastRegister,默认关闭。
开启后首个切片文件只保存一个gop,可提高hls注册速度,加快播放器打开速度。
但是第一个切片播放完毕,第二个切片需要更长时间生成,可能导致播放器等待加载。
2023-11-30 17:47:22 +08:00
夏楚
db0818c8d2
新增mp4点播接口loadMP4File (#3018 #2972) 2023-11-24 10:44:08 +08:00
fruit Juice
1609fe67d7
Track新增update方法,支持更新宽高采样率等信息 (#2960)
当变分辨率时候,实时更新MP4封装层的参数信息,避免出现封装层与编码(SPS)层视频宽高不一样,造成解码参数错误花屏;同时也支持更新音频采样率等信息。


---------

Co-authored-by: xia-chu <771730766@qq.com>
2023-11-07 23:36:41 +08:00
xiongziliang
2206b031a9 防止析构时抛异常导致的崩溃 2023-11-04 22:24:55 +08:00
imp_rayjay
eedf262059
新增支持mjpeg负载的mp4文件点播 (#2898) 2023-10-12 17:26:53 +08:00
xia-chu
39dd886ec1 优化获取播放器列表相关功能 2023-09-02 12:07:42 +08:00
xia-chu
d286ac1d73 NoticeCenter支持安全类型转换,解决监听者参数类型不一致导致的bug 2023-09-02 11:22:28 +08:00
xia-chu
f3f4b49332 修复设置点播速度后时间戳跳跃问题 2023-08-26 11:34:12 +08:00
xia-chu
08299b6652 mp4录制新增追踪日志 2023-08-12 15:50:09 +08:00
xia-chu
3e9a8b9d8b 优化函数命名
isCfgFrame -> isConfigFrame
getAacCfg -> getConfig
2023-07-22 19:46:26 +08:00
xiongguangjie
788915c7f7
修复mp4解复用器输出sps pps帧时设置起始头长度错误问题 (#2627)
mp4解复用器在解析mp4文件时,当获取到mp4头中sps/pps等配置帧信息时,创建相应的Frame未设置prefix size;导致后续输入H264Track分帧逻辑异常。
2023-07-06 15:47:30 +08:00
XiaoYan Lin
cb0579a16d
新增支持hls-fmp4直播(#2603 #977 #1965)
同时主要优化点包括:
1、编译宏特性开关优化。
2、转协议复用器相关创建代码移动至Recorder类。
3、转协议复用器onAllTrackReady函数修改为addTrackCompleted。
4、startRecord/stopRecord/isRecording接口新增支持ts/fmp4/hls-fmp4协议。

Co-authored-by: xia-chu <771730766@qq.com>
Co-authored-by: linxiaoyan87 <linxiaoyan87@foxmail.com>
2023-07-02 12:02:33 +08:00
xiongguangjie
d5bf99a27b
ts or ps muxer not support mjpeg video codec ignore it (#2593) 2023-06-28 14:56:06 +08:00
夏楚
5ca4ed53b2
防止析构函数抛异常导致崩溃问题 (#2546) 2023-06-11 22:07:15 +08:00
夏楚
d3f1c2fab1
mp4录制文件名添加索引号,防止一秒内生成多个同名文件导致覆盖 (#2542)
实测发现 如果在点播推流时 如果切片大小设置比较小 一秒钟可能产生多个mp4切片
以前切片名称粒度最小为一秒 所以会存在文件覆盖问题
2023-06-10 14:56:23 +08:00
fruit Juice
7970138966
Fix MP4Reader available speed range bug (#2516) 2023-06-01 14:29:19 +08:00
Johnny
0232caf068 add MediaTuple 2023-05-30 11:01:27 +08:00
Per-Arne Andersen
350e262433
Added support for GCC 13 (#2452)
GCC Does not explicitly include stdint. This update includes them where needed.
A very minor change that would allow GCC13 and above to compile
correctly. In newer versions, cstdint is not implicitly included, hence
it errors out during compilation for some files.
2023-05-11 09:58:48 +08:00
xia-chu
ac46f5499e 修复编译错误: #2416 2023-04-28 22:44:57 +08:00
xia-chu
d2349f01bd 使用static_pointer_cast优化性能 2023-04-28 22:04:38 +08:00
xiongziliang
7a95c87a29 优化代码
空构造和析构函数替换为缺省
去除多余分号
2023-04-22 21:59:26 +08:00
xiongguangjie
30182701f5 fix vlc can't play mp4 of jpeg #2388 2023-04-19 19:40:58 +08:00
ziyue
6078ca3e81 修复hls注册抛异常可能导致的bug 2023-02-02 11:21:49 +08:00
Alexandr
afa6465178 Changes to MP4Muxer for CodecJPEG 2022-12-30 08:56:57 +03:00
老衲不出家
f05a9501fa
Unified code style (#2137) 2022-12-02 14:43:06 +08:00
mtdxc
754073918a
Header refactor (#2115)
* 优化MultiMediaSourceMuxer头文件包含

* 将MediaSinkDelegate和Demux移到MediaSink中

* MediaSource头文件重构, 独立出PacketCache.h
精简Frame和Track的头文件

* Rtmp头文件重构

* Rtsp头文件重构

* webrtc头文件重构

* 规范.h头文件包含,并将其移到.cpp中:
- 尽量不包含Common\config.h
- Util\File.h
- Rtsp/RtspPlayer.h
- Rtmp/RtmpPlayer.h

* 删除多余的Stamp.h和Base64包含
2022-11-29 11:07:13 +08:00
xiongziliang
9bb6a2f828 全面整理转协议相关配置文件 2022-11-12 23:56:28 +08:00
xiongziliang
946945ce7b 优化代码
整理代码
2022-11-12 22:06:09 +08:00
ziyue
2b804514e1 修复mp4点播流线程安全检查失败bug 2022-11-01 22:02:28 +08:00
ziyue
ac1abb34da 新增媒体流flush机制:#1996 2022-10-16 19:54:17 +08:00
ziyue
80eef693c6 精确mp4录制时长:#1795 2022-10-16 16:44:54 +08:00
ziyue
15affeff1d 优化关闭媒体源相关逻辑: #1963 2022-09-18 20:36:47 +08:00
cqm
999e0b274e 简化代码:
- MediaSource引入shortUrl和getUrl来简化日志输出
- WebApi引入fillSockInfo
2022-09-07 11:47:15 +08:00
xiongziliang
06c6654ed5 精简代码 2022-09-03 16:32:10 +08:00
xiongzilaing
679c79802f 整理媒体事件相关代码,删除无须重载时的多余代码逻辑 2022-08-28 17:25:56 +08:00
xiongziliang
c2ab45f78d 完善线程安全设计 2022-08-27 10:17:06 +08:00
ziyue
35791aac89 优化代码,去除编译警告,修复拼写错误 2022-08-08 17:36:07 +08:00
ziyue
9c3b8a6a95 时间戳改为64位 2022-08-08 17:13:39 +08:00
Dw9
1c5380eead
Update MP4Recorder.cpp
fix #1679 
_muxer->openMP4 创建非法的文件夹会失败抛出异常  所以_full_path_tmp等都是空字符串
delete_file的时候 就会从此盘符的""(full_path_tmp)目录挨个删除了。 
复现建议新建个盘符...
2022-06-19 17:27:03 +08:00
xiongziliang
f6b4eb418f 优化录制相关代码 2022-06-11 14:18:55 +08:00
WuPeng
5bc313bafe 增加长期保存hls切片的功能,segKeep=0为不长期保存,segKeep=1为长期保存。此功能部分等效于segNum=0的情况,不同的是这个保留不会在m3u8文件中体现。 2022-05-10 17:32:50 +08:00
alexliyu7352
efc3e78ba0
使用emplace_back优化代码 (#1542)
少了一次构造调用,为什么不用呢?
2022-04-05 19:32:02 +08:00