Commit Graph

182 Commits

Author SHA1 Message Date
mtdxc
901c381300
新增获取推流推流代理列表和ffmpeg源列表接口 (#3992) 2024-11-01 10:47:18 +08:00
alex
4152dcd409
AI automatically translates all comments in the code into English (#3917) 2024-09-19 14:53:50 +08:00
xiongguangjie
cb1821cf88
Fix addStreamProxy retry bug (#3830 #3810 #3837)
Fix addStreamProxy retry bug( protocol option overwrite once play
success ), result in some media source not register; it's found by the
issue #3830 #3810
2024-08-22 11:11:04 +08:00
xiongguangjie
47b8435d7c
修复addStreamProxy拉流代理同协议下开关问题 (#3779 #3770) 2024-08-02 21:32:32 +08:00
xia-chu
9463d1291d 修复编译警告 2024-07-21 19:47:36 +08:00
mtdxc
d735aa1797
Media tuple refactor (#3715)
Co-authored-by: cqm <cqm@97kid.com>
2024-07-14 09:32:41 +08:00
sgzed
cf6066b36e bugfix: 修复所有Player的删除器使用同一个线程进行析构导致崩溃的问题 (#3672)
Player的删除器release_func是static类型,weak_poller不会更新了。后面析构使用的就不是正确的poller线程了。
2024-06-28 16:08:10 +08:00
xiongziliang
81b08af0ce Ensure thread safety of player and pusher 2024-02-07 23:06:42 +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
Dw9
d21bdc35c9
修复addstreamproxy拉流瞬间超时的问题 (#3093) 2023-12-07 22:05:20 +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
夏楚
7e117b1c7f
新增支持http-flv播放器 (#2562) 2023-06-17 10:29:27 +08:00
夏楚
5ca4ed53b2
防止析构函数抛异常导致崩溃问题 (#2546) 2023-06-11 22:07:15 +08:00
xia-chu
64b8079ac1 优化函数命名风格
FindField改名为findSubString
2023-06-10 14:55:40 +08:00
Johnny
0232caf068 add MediaTuple 2023-05-30 11:01:27 +08:00
xia-chu
4fa04d6a37 优化PlayerProxy代码 2023-05-13 00:14:35 +08:00
xia-chu
0afe75229e 修复拉流代理获取流信息可能访问空指针的bug
此bug由 #2448 引入,触发条件:
- 1.配置文件rtsp.directProxy设置为0
- 2.调用addStreamProxy代理rtsp流

在非直接代理情况下,PlayerProxy::_media_src为空,导致访问空指针。
2023-05-13 00:02:06 +08:00
codeRATny
1136b0a3c0
Adding new features for proxy player (#2448)
Add some functions for the proxy player, such as:
getting stream information (basic video/audio information)
callbacks for any connection and disconnection from the server
And now you can set delay between reconnections. See proxy player
constructor
2023-05-12 11:20:31 +08:00
xiongguangjie
ffed4b3bb2 format code style for pusher and player 2023-05-03 21:46:25 +08:00
xiongguangjie
7c89c1655f add getProxyPusherInfo and getProxyInfo restful api 2023-05-03 18:52:11 +08:00
lijin
38e05ab8cb
添加addStreamProxy对非法url异常捕获处理 (#2412)
确保抛出异常时,原有代理拉流对象被正常移除,后续可以更新正确url
2023-04-24 14:32:34 +08: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
cqm
ac3d7bd21f add addDelegate with std::function, remove FrameWriterInterfaceHelper 2022-11-01 12:03:04 +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
c8ea6490cd 修复直接拉流代理时同协议流无法注册的问题 2022-09-03 16:32:10 +08:00
xiongziliang
20f1275c58 rtsp拉流、rtp单端口推流新增支持获取丢包率: #1877 2022-09-03 16:32:09 +08:00
xiongzilaing
679c79802f 整理媒体事件相关代码,删除无须重载时的多余代码逻辑 2022-08-28 17:25:56 +08:00
ziyue
24db0454a8 不支持的协议直接抛异常, 防止非法推拉流:#1725 2022-07-29 17:32:30 +08:00
xiongziliang
97116e1208 完善getOwnerPoller相关逻辑 2022-06-11 13:08:58 +08:00
alexliyu7352
a7476e436a
修复HlsPlayer播放器BUG
当拉取加密流时, 因为不能正常播放, 所以不会触发playresult.
因此一直不会回调api请求.
2022-04-01 20:59:58 +08:00
xiongziliang
4dc621e1bb 转协议选项抽象为ProtocolOption对象 2022-03-12 13:24:23 +08:00
alexliyu7352
090593f67c
hls拉取索引文件避免循环重试 (#1474)
当hls拉取索引文件失败时会触发重试.
但是play失败会调用一次rePlay, OnShutdow又会调用一次的rePlay.
由于m3u8文件非常小, 很大可能上短时间马上就会重试成功.
但是由于有两次的rePlay所以很可能再次析构了player, 又循环触发了更多的rePlay.

所以在播放成功后, 应该取消掉定时器
2022-03-12 09:44:47 +08:00
夏楚
c72cf4cbcc
整理命名空间 (#1409)
* feat: remove using namespace mediakit in header files.

(cherry picked from commit d44aeb339a8a0e1f0455be82b21fe4b1b536299f)

* feat: remove using namespace mediakit in FFmpegSource.h

* feat: remove using namespace mediakit in RtpExt.h

* feat: remove using namespace mediakit in header files.

* feat: remove using namespace std in header files.

* feat: remove using namespace std in header files when zltoolkit remove std in header

* 补充命名空间

* 整理命名空间

* 整理命名空间2

* 修复macos ci

* 修复编译问题

* 修复编译问题2

* 修复编译问题3

Co-authored-by: Johnny <hellojinqiang@gmail.com>
Co-authored-by: Xiaofeng Wang <wasphin@gmail.com>
2022-02-02 20:34:50 +08:00
xiongziliang
7b04385bc8 合并http-ts播放器特性: #1336 2022-01-09 15:01:23 +08:00
Alex
4792f6213b 新增Ts拉流 2022-01-04 15:32:59 +08:00
ziyue
8f60ec9900 Refine: 精简复用MediaSink相关代码 2021-12-01 21:38:31 +08:00
ziyue
6f92ef2f3b PlayerProxy: 减少一次MediaSink数据过滤,提高性能 2021-11-10 13:56:58 +08:00
ziyue
b7e187d7af Player: 添加kWaitTrackReady选项决定播放器是否等待所有track ready再回调 2021-11-10 13:56:04 +08:00
ziyue
e38f2253ff Demuxer: 解复用减少一次MediaSink的数据过滤 2021-11-10 13:44:29 +08:00
ziyue
2a8a6cac27 Refine: 优化MultiMediaSourceMuxer创建代码 2021-11-10 12:48:13 +08:00
ziyue
fdfde17ec7 Demuxer/Player: 修改解复用与播放器底层逻辑,确保触发播放成功回调时不丢帧 2021-11-10 11:38:54 +08:00
ziyue
afec4b62b9 全局自动添加静音音频 2021-09-27 13:20:34 +08:00
ziyue
e9008afca0 addTrack/inputFrame接口支持返回值;新增全局添加静音音频接口 2021-09-27 13:12:53 +08:00
baiyfcu
b8aabb5eab
Merge branch 'master' into master 2021-08-13 16:14:49 +08:00
ziyue
4dbe0a1d3e 合并pr:#1025 2021-08-12 20:37:46 +08:00
baiyfcu
0ed902509a player增加speed,pause扩展,seek支持秒级定位,MP4按时间戳生成文件 2021-08-09 18:28:43 +08:00
ziyue
92f879d703 完善PlayerProxy关闭机制,重试次数超限后自动关闭 2021-06-09 15:01:45 +08:00