8000 Change RTCRtpSender.track to nullable. · mozomig/flutter-webrtc@44fbefd · GitHub
[go: up one dir, main page]

Skip to content

Commit 44fbefd

Browse files
committed
Change RTCRtpSender.track to nullable.
1 parent ab6e6c8 commit 44fbefd

File tree

3 files changed

+11
-8
lines changed

3 files changed

+11
-8
lines changed

lib/src/interface/rtc_rtp_receiver.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ abstract class RTCRtpReceiver {
1919
/// http://ortc.org/wp-content/uploads/2016/03/ortc.html#rtcrtpparameters*.
2020
RTCRtpParameters get parameters;
2121

22-
MediaStreamTrack get track;
22+
MediaStreamTrack? get track;
2323

2424
String get receiverId;
2525
}

lib/src/interface/rtc_rtp_sender.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ abstract class RTCRtpSender {
2020

2121
RTCRtpParameters get parameters;
2222

23-
MediaStreamTrack get track;
23+
MediaStreamTrack? get track;
2424

2525
String get senderId;
2626

lib/src/native/rtc_rtp_sender_impl.dart

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,12 @@ class RTCRtpSenderNative extends RTCRtpSender {
1818

1919
factory RTCRtpSenderNative.fromMap(Map<dynamic, dynamic> map,
2020
{required String peerConnectionId}) {
21+
Map<dynamic, dynamic> trackMap = map['track'];
2122
return RTCRtpSenderNative(
2223
map['senderId'],
23-
MediaStreamTrackNative.fromMap(map['track']),
24+
(trackMap.isNotEmpty)
25+
? MediaStreamTrackNative.fromMap(map['track'])
26+
: null,
2427
RTCDTMFSenderNative(peerConnectionId, map['senderId']),
2528
RTCRtpParameters.fromMap(map['rtpParameters']),
2629
map['ownsTrack'],
@@ -38,18 +41,18 @@ class RTCRtpSenderNative extends RTCRtpSender {
3841
final MethodChannel _channel = WebRTC.methodChannel();
3942
String _peerConnectionId;
4043
String _id;
41-
MediaStreamTrack _track;
44+
MediaStreamTrack? _track;
4245
RTCDTMFSender _dtmf;
4346
RTCRtpParameters _parameters;
4447
bool _ownsTrack = false;
4548

4649
@override
4750
Future<List<StatsReport>> getStats() async {
4851
try {
49-
final response = await _channel.invokeMethod<Map<dynamic, dynamic>>(
50-
'getStats', <String, dynamic>{
52+
final response = await _channel
53+
.invokeMethod<Map<dynamic, dynamic>>('getStats', <String, dynamic>{
5154
'peerConnectionId': _peerConnectionId,
52-
'track': track.id
55+
if (track != null) 'track': track!.id,
5356
});
5457
var stats = <StatsReport>[];
5558
if (response != null) {
@@ -113,7 +116,7 @@ class RTCRtpSenderNative extends RTCRtpSender {
113116
RTCRtpParameters get parameters => _parameters;
114117

115118
@override
116-
MediaStreamTrack get track => _track;
119+
MediaStreamTrack? get track => _track;
117120

118121
@override
119122
String get senderId => _id;

0 commit comments

Comments
 (0)
0