Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
Z
ZLMediaKit
概览
Overview
Details
Activity
Cycle Analytics
版本库
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
问题
0
Issues
0
列表
Board
标记
里程碑
合并请求
0
Merge Requests
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
Snippets
成员
Collapse sidebar
Close sidebar
活动
图像
聊天
创建新问题
作业
提交
Issue Boards
Open sidebar
张翔宇
ZLMediaKit
Commits
236dc46b
Commit
236dc46b
authored
5 years ago
by
xiongziliang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
完成HLS按需生成流
parent
4b4c4e0c
隐藏空白字符变更
内嵌
并排
正在显示
2 个修改的文件
包含
21 行增加
和
7 行删除
+21
-7
src/Record/HlsMediaSource.cpp
+17
-6
src/Record/HlsMediaSource.h
+4
-1
没有找到文件。
src/Record/HlsMediaSource.cpp
查看文件 @
236dc46b
...
...
@@ -30,20 +30,31 @@ namespace mediakit{
HlsCookieData
::
HlsCookieData
(
const
MediaInfo
&
info
)
{
_info
=
info
;
auto
src
=
dynamic_pointer_cast
<
HlsMediaSource
>
(
MediaSource
::
find
(
HLS_SCHEMA
,
_info
.
_vhost
,
_info
.
_app
,
_info
.
_streamid
));
if
(
src
){
src
->
modifyCount
(
true
);
addReaderCount
();
}
void
HlsCookieData
::
addReaderCount
(){
if
(
!
_added
){
auto
src
=
dynamic_pointer_cast
<
HlsMediaSource
>
(
MediaSource
::
find
(
HLS_SCHEMA
,
_info
.
_vhost
,
_info
.
_app
,
_info
.
_streamid
));
if
(
src
){
src
->
modifyReaderCount
(
true
);
_added
=
true
;
}
}
}
HlsCookieData
::~
HlsCookieData
()
{
auto
src
=
dynamic_pointer_cast
<
HlsMediaSource
>
(
MediaSource
::
find
(
HLS_SCHEMA
,
_info
.
_vhost
,
_info
.
_app
,
_info
.
_streamid
));
if
(
src
){
src
->
modifyCount
(
false
);
if
(
_added
){
auto
src
=
dynamic_pointer_cast
<
HlsMediaSource
>
(
MediaSource
::
find
(
HLS_SCHEMA
,
_info
.
_vhost
,
_info
.
_app
,
_info
.
_streamid
));
if
(
src
){
src
->
modifyReaderCount
(
false
);
}
}
}
void
HlsCookieData
::
addByteUsage
(
uint64_t
bytes
)
{
addReaderCount
();
_bytes
+=
bytes
;
}
...
...
This diff is collapsed.
Click to expand it.
src/Record/HlsMediaSource.h
查看文件 @
236dc46b
...
...
@@ -36,8 +36,11 @@ public:
~
HlsCookieData
();
void
addByteUsage
(
uint64_t
bytes
);
private
:
void
addReaderCount
();
private
:
uint64_t
_bytes
=
0
;
MediaInfo
_info
;
bool
_added
=
false
;
};
class
HlsMediaSource
:
public
MediaSource
{
...
...
@@ -73,7 +76,7 @@ private:
* 修改观看者个数
* @param add 添加海思删除
*/
void
modifyCount
(
bool
add
)
{
void
modify
Reader
Count
(
bool
add
)
{
if
(
add
)
{
++
_readerCount
;
return
;
...
...
This diff is collapsed.
Click to expand it.
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论