@@ -41,6 +41,7 @@ Component({
41
41
debugPanel : true , // 是否打开组件调试面板
42
42
debug : false , // 是否打开player pusher 的调试信息
43
43
streamList : [ ] , // 用于渲染player列表,存储stram
44
+ visibleStreamList : [ ] , // 有音频或者视频的StreamList
44
45
userList : [ ] , // 扁平化的数据用来返回给用户
45
46
template : '' , // 不能设置默认值,当默认值和传入组件的值不一致时,iOS渲染失败
46
47
cameraPosition : '' , // 摄像头位置,用于debug
@@ -66,7 +67,7 @@ Component({
66
67
console . log ( TAG_NAME , 'created' , ENV )
67
68
MTA . App . init ( {
68
69
appID : '500710685' ,
69
- eventID : '500710697' , // 高级功能-自定义事件统计ID,配置开通后在初始化处填写
70
+ eventID : '500710697' ,
70
71
autoReport : true ,
71
72
statParam : true ,
72
73
} )
@@ -241,6 +242,7 @@ Component({
241
242
pusher : this . data . pusher ,
242
243
userList : result . userList ,
243
244
streamList : result . streamList ,
245
+ visibleStreamList : this . _filterVisibleStream ( event . data . streamList ) ,
244
246
} , ( ) => {
245
247
// 在销毁页面时调用,不会走到这里
246
248
resolve ( { userList : this . data . userList , streamList : this . data . streamList } )
@@ -864,6 +866,7 @@ Component({
864
866
// user.streams引用的对象和 streamList 里的是同一个
865
867
this . setData ( {
866
868
streamList : this . data . streamList ,
869
+ visibleStreamList : this . _filterVisibleStream ( this . data . streamList ) ,
867
870
} , ( ) => {
868
871
// console.log(TAG_NAME, '_setPlayerConfig complete', params, 'streamList:', this.data.streamList)
869
872
resolve ( params )
@@ -1071,6 +1074,7 @@ Component({
1071
1074
this . setData ( {
1072
1075
userList : event . data . userList ,
1073
1076
streamList : event . data . streamList ,
1077
+ visibleStreamList : this . _filterVisibleStream ( event . data . streamList ) ,
1074
1078
} , ( ) => {
1075
1079
this . _emitter . emit ( EVENT . REMOTE_USER_LEAVE , { userID : event . data . userID } )
1076
1080
} )
@@ -1084,6 +1088,7 @@ Component({
1084
1088
this . setData ( {
1085
1089
userList : event . data . userList ,
1086
1090
streamList : event . data . streamList ,
1091
+ visibleStreamList : this . _filterVisibleStream ( event . data . streamList ) ,
1087
1092
} , ( ) => {
1088
1093
// 完善 的stream 的 playerContext
1089
1094
stream . playerContext = wx . createLivePlayerContext ( stream . streamID , this )
@@ -1102,6 +1107,7 @@ Component({
1102
1107
this . setData ( {
1103
1108
userList : event . data . userList ,
1104
1109
streamList : event . data . streamList ,
1110
+ visibleStreamList : this . _filterVisibleStream ( event . data . streamList ) ,
1105
1111
} , ( ) => {
1106
1112
// 有可能先触发了退房事件,用户名下的所有stream都已清除
1107
1113
if ( stream . userID && stream . streamType ) {
@@ -1117,6 +1123,7 @@ Component({
1117
1123
this . setData ( {
1118
1124
userList : event . data . userList ,
1119
1125
streamList : event . data . streamList ,
1126
+ visibleStreamList : this . _filterVisibleStream ( event . data . streamList ) ,
1120
1127
} , ( ) => {
1121
1128
stream . playerContext = wx . createLivePlayerContext ( stream . streamID , this )
1122
1129
// 新增的需要触发一次play 默认属性才能生效
@@ -1133,6 +1140,7 @@ Component({
1133
1140
this . setData ( {
1134
1141
userList : event . data . userList ,
1135
1142
streamList : event . data . streamList ,
1143
+ visibleStreamList : this . _filterVisibleStream ( event . data . streamList ) ,
1136
1144
} , ( ) => {
1137
1145
// 有可能先触发了退房事件,用户名下的所有stream都已清除
1138
1146
if ( stream . userID && stream . streamType ) {
@@ -1314,6 +1322,13 @@ Component({
1314
1322
// console.log(TAG_NAME, '_playerAudioVolumeNotify', event)
1315
1323
this . _emitter . emit ( EVENT . REMOTE_AUDIO_VOLUME_UPDATE , event )
1316
1324
} ,
1325
+ _filterVisibleStream ( streamList ) {
1326
+ const list = streamList . filter ( ( item ) => {
1327
+ return ( item . hasVideo || item . hasAudio )
1328
+ } )
1329
+ console . log ( TAG_NAME , '_filterVisibleStream list:' , list )
1330
+ return list
1331
+ } ,
1317
1332
1318
1333
// ______ __ __ ______ __ __
1319
1334
// | \| \ / \ | \ | \ | \
@@ -1632,10 +1647,10 @@ Component({
1632
1647
} )
1633
1648
if ( stream . muteVideo ) {
1634
1649
this . subscribeRemoteVideo ( { userID, streamType } )
1635
- this . setViewVisible ( { userID, streamType, isVisible : true } )
1650
+ // this.setViewVisible({ userID, streamType, isVisible: true })
1636
1651
} else {
1637
1652
this . unsubscribeRemoteVideo ( { userID, streamType } )
1638
- this . setViewVisible ( { userID, streamType, isVisible : false } )
1653
+ // this.setViewVisible({ userID, streamType, isVisible: false })
1639
1654
}
1640
1655
} ,
1641
1656
_debugToggleRemoteAudio ( event ) {
@@ -1914,9 +1929,6 @@ Component({
1914
1929
* grid布局, 绑定事件
1915
1930
*/
1916
1931
_bindEventGrid ( ) {
1917
- if ( this . data . config . template !== 'grid' ) {
1918
- return
1919
- }
1920
1932
// 远端音量变更
1921
1933
this . on ( EVENT . REMOTE_AUDIO_VOLUME_UPDATE , ( event ) => {
1922
1934
const data = event . data
@@ -1933,6 +1945,7 @@ Component({
1933
1945
}
1934
1946
this . setData ( {
1935
1947
streamList : this . data . streamList ,
1948
+ visibleStreamList : this . _filterVisibleStream ( this . data . streamList ) ,
1936
1949
} , ( ) => {
1937
1950
} )
1938
1951
} )
0 commit comments