Toggle navigation
Toggle navigation
此项目
正在载入...
Sign in
李勇
/
McuClient
转到一个项目
Toggle navigation
项目
群组
代码片段
帮助
Toggle navigation pinning
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Authored by
李勇
8 years ago
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
b19f3cb804d4241230819546d45eea6cedc14301
b19f3cb8
1 parent
f9945685
v2.8.7.20170916
隐藏空白字符变更
内嵌
并排对比
正在显示
2 个修改的文件
包含
44 行增加
和
9 行删除
src/EngineEntrance.js
src/apes/WebRtcApe.js
src/EngineEntrance.js
查看文件 @
b19f3cb
...
...
@@ -62,7 +62,7 @@ export default class MessageEntrance extends Emiter {
constructor
()
{
super
();
//sdk 信息
GlobalConfig
.
sdkVersion
=
"v2.8.
2
.20170916"
;
GlobalConfig
.
sdkVersion
=
"v2.8.
7
.20170916"
;
loger
.
warn
(
"sdkVersion:"
+
GlobalConfig
.
sdkVersion
);
//设置
...
...
@@ -2978,7 +2978,7 @@ export default class MessageEntrance extends Emiter {
case
WebRtcApe
.
RECORD_STATUS_0
:
case
WebRtcApe
.
RECORD_STATUS_1
:
//推流/停止推流/开启录制 统一使用一个接口
_webRtc
.
changePublishStatusAndServerRecord
(
_params
.
type
);
_webRtc
.
changePublishStatusAndServerRecord
(
_params
.
status
);
break
;
case
WebRtcApe
.
RECORD_STATUS_2
:
//停止录制
...
...
src/apes/WebRtcApe.js
查看文件 @
b19f3cb
...
...
@@ -24,6 +24,9 @@ class WebRtcApe extends Emiter {
this
.
uid
=
0
;
this
.
info
=
""
this
.
reAddRemoteStreamDelay
=
0
;
//重连远程视频的计时器
this
.
rePublishDelay
=
0
;
//重新推流的间隔
this
.
mode
=
"interop"
;
this
.
client
=
null
;
this
.
localStream
=
null
;
...
...
@@ -113,10 +116,11 @@ class WebRtcApe extends Emiter {
this
.
client
.
on
(
'stream-added'
,
(
evt
)
=>
{
let
stream
=
evt
.
stream
;
loger
.
log
(
"添加一个远程视频流: "
+
stream
.
getId
(),
new
Date
().
getTime
());
/*
loger.log("添加一个远程视频流: " + stream.getId(),new Date().getTime());
this.client.subscribe(stream, (err)=> {
loger.log("添加一个远程视频流->failed", err);
});
});*/
this
.
reAddRemoteStream
(
stream
);
});
this
.
client
.
on
(
'stream-subscribed'
,
(
evt
)
=>
{
...
...
@@ -156,7 +160,6 @@ class WebRtcApe extends Emiter {
}
catch
(
err
){
}
}
});
this
.
client
.
on
(
'stream-removed'
,
(
evt
)
=>
{
...
...
@@ -179,6 +182,30 @@ class WebRtcApe extends Emiter {
loger
.
log
(
"当前正在讲话的uid:"
+
uid
);
});
}
//重新添加远程视频
reAddRemoteStream
(
_stream
){
if
(
!
_stream
){
return
;
}
let
user
=
GlobalConfig
.
getUserRoleFromeNodeId
(
_stream
.
getId
());
if
(
user
.
openCamera
<=
0
){
loger
.
log
(
"远程流已经停止,不需要再连接: "
+
_stream
.
getId
(),
new
Date
().
getTime
());
return
;
}
loger
.
log
(
"添加一个远程视频流: "
+
_stream
.
getId
(),
new
Date
().
getTime
());
this
.
client
.
subscribe
(
_stream
,
(
err
)
=>
{
loger
.
warn
(
"添加一个远程视频流->失败"
,
err
);
clearTimeout
(
this
.
reAddRemoteStreamDelay
);
if
(
err
==
"INVALID_REMOTE_STREAM"
){
//流已经无效,不需要再重连
return
;
}
this
.
reAddRemoteStreamDelay
=
setTimeout
(()
=>
{
loger
.
warn
(
"连接远程的流失败->尝试重新连接"
);
this
.
reAddRemoteStream
(
_stream
);
},
1400
);
});
}
joinChannel
(
_params
)
{
this
.
channelId
=
_params
.
channelId
||
""
;
...
...
@@ -291,6 +318,7 @@ class WebRtcApe extends Emiter {
GlobalConfig
.
openCamera
=
0
;
GlobalConfig
.
openMicrophones
=
0
;
this
.
isPublish
=
false
;
this
.
clearLocalView
();
});
this
.
client
.
on
(
'stream-published'
,
(
evt
)
=>
{
loger
.
log
(
"webRtc->推流成功->"
,
new
Date
().
getTime
());
...
...
@@ -305,11 +333,13 @@ class WebRtcApe extends Emiter {
openCamera
:
GlobalConfig
.
openCamera
,
openMicrophones
:
GlobalConfig
.
openMicrophones
});
this
.
changePublishStatusAndServerRecord
(
WebRtcApe
.
RECORD_STATUS_1
);
});
},
(
err
)
=>
{
loger
.
warn
(
"webRtc->推流->本地流开启失败"
,
err
);
this
.
isPublish
=
false
;
this
.
clearLocalView
();
this
.
_emit
(
MessageTypes
.
WEB_RTC_PUBLISH_FAILED
,
err
);
});
}
...
...
@@ -324,9 +354,9 @@ class WebRtcApe extends Emiter {
loger
.
log
(
"webRtc->停止推流->失败"
+
err
);
});
this
.
localStream
.
close
();
//$(this.localViewId).html("");
$
(
'#localVideoBox_'
+
this
.
uid
).
remove
();
$
(
"#videoOwnerName_"
+
this
.
uid
).
remove
();
//$('#localVideoBox_' + this.uid).remove();
//$("#videoOwnerName_"+this.uid).remove();
this
.
clearLocalView
();
this
.
isPublish
=
false
;
GlobalConfig
.
openCamera
=
0
;
GlobalConfig
.
openMicrophones
=
0
;
...
...
@@ -338,8 +368,13 @@ class WebRtcApe extends Emiter {
openCamera
:
GlobalConfig
.
openCamera
,
openMicrophones
:
GlobalConfig
.
openMicrophones
});
this
.
changePublishStatusAndServerRecord
(
WebRtcApe
.
RECORD_STATUS_0
);
}
//清除本地视图
clearLocalView
(){
$
(
'#localVideoBox_'
+
this
.
uid
).
remove
();
$
(
"#videoOwnerName_"
+
this
.
uid
).
remove
();
}
/*
* 设置本地回显视图
* */
...
...
请
注册
或
登录
后发表评论