李勇

音视频模块视频消息中增加了当前屏幕分辨率的宽高字段

此 diff 太大无法显示。
... ... @@ -28,7 +28,7 @@ import MediaModule from 'apes/MediaModule';
import UTF8 from 'utf-8';
let loger = Loger.getLoger('McuClient');
let _sdkInfo = {"version": "v1.27.14.201705027", "author": "www.3mang.com"};
let _sdkInfo = {"version": "v1.27.16.201705027", "author": "www.3mang.com"};
//APE
let _sass;
... ... @@ -328,7 +328,10 @@ export default class MessageEntrance extends Emiter {
let data = {"nodeId": _param.nodeId};
if (_video_ape) {
_video_ape.stopPublishVideo(data);
_video_ape.stopPublishScreenShare(data);
if(GlobalConfig.nodeId==data.nodeId){
_video_ape.stopPublishScreenShare(data);
}
}
if (_audio_ape) {
_audio_ape.stopPublishAudio(data);
... ... @@ -799,6 +802,10 @@ export default class MessageEntrance extends Emiter {
GlobalConfig.setCurrentStatus(GlobalConfig.statusCode_2);
GlobalConfig.classJoinSuccess=true;
GlobalConfig.screenWidth=window.screen.availWidth;
GlobalConfig.screenHeight=window.screen.availHeight;
//返回给客户端初始化成功的数据
let joinClassSuccessCallBackData = {};
... ...
... ... @@ -288,6 +288,9 @@ GlobalConfig.statusCode_2={"code":2,message:"已经加入课堂"};
GlobalConfig.statusCode_3={"code":3,message:"已经离开课堂"};
GlobalConfig.statusCode_4={"code":4,message:"未知状态"};
GlobalConfig.screenWidth=1024;
GlobalConfig.screenHeight=768;
GlobalConfig.md5="";
GlobalConfig.msType=1;//目前固定用这个
GlobalConfig.messageDelay=false;//是否启用消息延迟
... ...
... ... @@ -366,6 +366,9 @@ class AudioApe extends Ape {
receiveChannelInfo.fromNodeId=unpackChannelInfo.fromNodeId;
receiveChannelInfo.userName=unpackChannelInfo.userName||"";
receiveChannelInfo.userRole=unpackChannelInfo.userRole||ApeConsts.normal;
receiveChannelInfo.mediaType=unpackChannelInfo.mediaType||ApeConsts.MEDIA_TYPE_DEFAULT;
receiveChannelInfo.screenWidth=unpackChannelInfo.screenWidth||GlobalConfig.screenWidth;
receiveChannelInfo.screenHeight=unpackChannelInfo.screenHeight||GlobalConfig.screenHeight;
//消息不是自己同步的,需要处理
if(unpackChannelInfo.status==ApeConsts.CHANNEL_STATUS_OPENING){
//正在推流
... ... @@ -444,6 +447,8 @@ class AudioApe extends Ape {
packPduModel.userName=GlobalConfig.userName||"";
packPduModel.toNodeId = 0;
packPduModel.userRole=GlobalConfig.userRole||ApeConsts.normal;
packPduModel.screenWidth=_param.screenWidth||GlobalConfig.screenWidth;
packPduModel.screenHeight=_param.screenHeight||GlobalConfig.screenHeight;
loger.log("packPdu->",packPduModel);
return packPduModel;
}
... ...
... ... @@ -186,15 +186,7 @@ class VideoApe extends Ape {
}
//==========================屏幕共享=========================================================================
//监听屏幕共享发布成功
onPublishScreenShareSuccess(){
loger.log('屏幕共享推流成功之后才能更新同步消息->');
//屏幕共享推流成功之后才能更新同步消息
let channelInfo=this.shareApe.getPublishChannelInfo();
this.sendTableUpdateHandler(channelInfo);
this._emit( MessageTypes.PUBLISH_SCREEN_SHARE_SUCCESS,{"code": ApeConsts.RETURN_SUCCESS, "data":"桌面共享推流!","mediaId":channelInfo.channelId});
return {"code": ApeConsts.RETURN_SUCCESS, "data":"桌面共享推流!","mediaId":channelInfo.channelId};
}
//屏幕共享连接打开
onPublishScreenShareFaile(){
loger.log('屏幕共享推流失败->');
... ... @@ -223,7 +215,15 @@ class VideoApe extends Ape {
loger.log('屏幕共享视频信息发生改变->');
this._emit(MessageTypes.PUBLISH_SCREEN_VIDEO_INFO_CHANGE,data);
}
//监听屏幕共享发布成功
onPublishScreenShareSuccess(){
loger.log('屏幕共享推流成功之后才能更新同步消息->');
//屏幕共享推流成功之后才能更新同步消息
let channelInfo=this.shareApe.getPublishChannelInfo();
this.sendTableUpdateHandler(channelInfo);
this._emit( MessageTypes.PUBLISH_SCREEN_SHARE_SUCCESS,{"code": ApeConsts.RETURN_SUCCESS, "data":"桌面共享推流!","mediaId":channelInfo.channelId});
return {"code": ApeConsts.RETURN_SUCCESS, "data":"桌面共享推流!","mediaId":channelInfo.channelId};
}
//桌面共享推流
publishScreenShare(_param) {
if(!this.mcu.connected){
... ... @@ -247,7 +247,6 @@ class VideoApe extends Ape {
// loger.warn(GlobalConfig.getCurrentStatus());
// return {"code": ApeConsts.RETURN_FAILED, "data": "已经断开连接"};
//}
let channelInfo=this.shareApe.getDefaultChannelInfo();
channelInfo.status=ApeConsts.CHANNEL_STATUS_RELEASED;
this.sendTableUpdateHandler(channelInfo);
... ... @@ -443,7 +442,7 @@ class VideoApe extends Ape {
unpackChannelInfo.streamId="";
}
//屏幕共享的流不保存
if(unpackChannelInfo.mediaType!=ApeConsts.MEDIA_TYPE_SHARE){
if(unpackChannelInfo.mediaType!=ApeConsts.MEDIA_TYPE_SHARE&&unpackChannelInfo.channelId>0){
this.mediaModule.mediaChannels[itemIdx] = unpackChannelInfo;
}
... ... @@ -454,6 +453,8 @@ class VideoApe extends Ape {
receiveChannelInfo.userName=unpackChannelInfo.userName||"";
receiveChannelInfo.userRole=unpackChannelInfo.userRole||ApeConsts.normal;
receiveChannelInfo.mediaType=unpackChannelInfo.mediaType||ApeConsts.MEDIA_TYPE_DEFAULT;
receiveChannelInfo.screenWidth=unpackChannelInfo.screenWidth||GlobalConfig.screenWidth;
receiveChannelInfo.screenHeight=unpackChannelInfo.screenHeight||GlobalConfig.screenHeight;
//消息不是自己同步的,需要处理
if(unpackChannelInfo.status==ApeConsts.CHANNEL_STATUS_OPENING){
//正在推流
... ... @@ -494,8 +495,13 @@ class VideoApe extends Ape {
this._emit(MessageTypes.VIDEO_STOP, receiveChannelInfo);
}else{
//停止播放屏幕共享
loger.log("SCREEN_SHARE_STOP", receiveChannelInfo);
this._emit(MessageTypes.SCREEN_SHARE_STOP, receiveChannelInfo);
if(unpackChannelInfo.channelId!=0){
loger.log("SCREEN_SHARE_STOP", receiveChannelInfo);
this._emit(MessageTypes.SCREEN_SHARE_STOP, receiveChannelInfo);
}else {
loger.log("停止播放视频->channelId=0->不合法的id", receiveChannelInfo);
}
}
}
... ... @@ -557,6 +563,8 @@ class VideoApe extends Ape {
packPduModel.userName=GlobalConfig.userName||"";
packPduModel.toNodeId = 0;
packPduModel.userRole=GlobalConfig.userRole||ApeConsts.normal;
packPduModel.screenWidth=_param.screenWidth||GlobalConfig.screenWidth;
packPduModel.screenHeight=_param.screenHeight||GlobalConfig.screenHeight;
loger.log(packPduModel);
return packPduModel;
}
... ...
... ... @@ -790,6 +790,8 @@ message RCAudioChannelInfoPdu {
optional string stream_id = 10;//流名称
optional string user_name = 11;//用户的名字
optional string user_role = 12;//用户的身份
optional uint32 screenWidth = 13;//屏幕分辨率宽
optional uint32 screenHeight = 14;//屏幕分辨率高
}
message RCVideoChannelInfoPdu {
... ... @@ -805,6 +807,9 @@ message RCVideoChannelInfoPdu {
optional string stream_id = 10;//流名称
optional string user_name = 11;//用户的名字
optional string user_role = 12;//用户的身份
optional uint32 screenWidth = 13;//屏幕分辨率宽
optional uint32 screenHeight = 14;//屏幕分辨率高
}
message RCVideoChannelInfoRecordPdu {
... ...