@@ -981,7 +981,9 @@ MediaStream getStreamForId(String id, String peerConnectionId) {
981
981
MediaStream stream = null ;
982
982
if (peerConnectionId .length () > 0 ) {
983
983
PeerConnectionObserver pco = mPeerConnectionObservers .get (peerConnectionId );
984
- stream = pco .remoteStreams .get (id );
984
+ if (pco != null ) {
985
+ stream = pco .remoteStreams .get (id );
986
+ }
985
987
} else {
986
988
for (Entry <String , PeerConnectionObserver > entry : mPeerConnectionObservers
987
989
.entrySet ()) {
@@ -1006,6 +1008,11 @@ private MediaStreamTrack getTrackForId(String trackId) {
1006
1008
for (Entry <String , PeerConnectionObserver > entry : mPeerConnectionObservers .entrySet ()) {
1007
1009
PeerConnectionObserver pco = entry .getValue ();
1008
1010
track = pco .remoteTracks .get (trackId );
1011
+
1012
+ if (track == null ) {
1013
+ track = pco .getTransceiversTrack (trackId );
1014
+ }
1015
+
1009
1016
if (track != null ) {
1010
1017
break ;
1011
1018
}
@@ -1128,8 +1135,8 @@ public void mediaStreamTrackSetVolume(final String id, final double volume) {
1128
1135
}
1129
1136
}
1130
1137
1131
- public void mediaStreamAddTrack (final String streaemId , final String trackId , Result result ) {
1132
- MediaStream mediaStream = localStreams .get (streaemId );
1138
+ public void mediaStreamAddTrack (final String streamId , final String trackId , Result result ) {
1139
+ MediaStream mediaStream = localStreams .get (streamId );
1133
1140
if (mediaStream != null ) {
1134
1141
MediaStreamTrack track = getTrackForId (trackId );//localTracks.get(trackId);
1135
1142
if (track != null ) {
@@ -1139,16 +1146,16 @@ public void mediaStreamAddTrack(final String streaemId, final String trackId, Re
1139
1146
mediaStream .addTrack ((VideoTrack ) track );
1140
1147
}
1141
1148
} else {
1142
- resultError ("mediaStreamAddTrack" , "mediaStreamAddTrack() tracking [" + trackId + "] is null" , result );
1149
+ resultError ("mediaStreamAddTrack" , "mediaStreamAddTrack() track [" + trackId + "] is null" , result );
1143
1150
}
1144
1151
} else {
1145
- resultError ("mediaStreamAddTrack" , "mediaStreamAddTrack() streamId [" + streaemId + "] is null" , result );
1152
+ resultError ("mediaStreamAddTrack" , "mediaStreamAddTrack() stream [" + streamId + "] is null" , result );
1146
1153
}
1147
1154
result .success (null );
1148
1155
}
1149
1156
1150
- public void mediaStreamRemoveTrack (final String streaemId , final String trackId , Result result ) {
1151
- MediaStream mediaStream = localStreams .get (streaemId );
1157
+ public void mediaStreamRemoveTrack (final String streamId , final String trackId , Result result ) {
1158
+ MediaStream mediaStream = localStreams .get (streamId );
1152
1159
if (mediaStream != null ) {
1153
1160
MediaStreamTrack track = localTracks .get (trackId );
1154
1161
if (track != null ) {
@@ -1161,7 +1168,7 @@ public void mediaStreamRemoveTrack(final String streaemId, final String trackId,
1161
1168
resultError ("mediaStreamRemoveTrack" , "mediaStreamAddTrack() track [" + trackId + "] is null" , result );
1162
1169
}
1163
1170
} else {
1164
- resultError ("mediaStreamRemoveTrack" , "mediaStreamAddTrack() track [" + trackId + "] is null" , result );
1171
+ resultError ("mediaStreamRemoveTrack" , "mediaStreamAddTrack() stream [" + streamId + "] is null" , result );
1165
1172
}
1166
1173
result .success (null );
1167
1174
}
0 commit comments