@@ -401,16 +401,14 @@ impl RTPReceiverInternal {
401
401
/// [W3C]: https://w3c.github.io/webrtc-pc/#rtcrtpreceiver-interface
402
402
pub struct RTCRtpReceiver {
403
403
receive_mtu : usize ,
404
- kind : RTPCodecType ,
405
- transport : Arc < RTCDtlsTransport > ,
406
404
407
405
pub internal : Arc < RTPReceiverInternal > ,
408
406
}
409
407
410
408
impl std:: fmt:: Debug for RTCRtpReceiver {
411
409
fn fmt ( & self , f : & mut std:: fmt:: Formatter < ' _ > ) -> std:: fmt:: Result {
412
410
f. debug_struct ( "RTCRtpReceiver" )
413
- . field ( "kind" , & self . kind )
411
+ . field ( "kind" , & self . internal . kind )
414
412
. finish ( )
415
413
}
416
414
}
@@ -427,8 +425,6 @@ impl RTCRtpReceiver {
427
425
428
426
RTCRtpReceiver {
429
427
receive_mtu,
430
- kind,
431
- transport : Arc :: clone ( & transport) ,
432
428
433
429
internal : Arc :: new ( RTPReceiverInternal {
434
430
kind,
@@ -447,7 +443,7 @@ impl RTCRtpReceiver {
447
443
}
448
444
449
445
pub fn kind ( & self ) -> RTPCodecType {
450
- self . kind
446
+ self . internal . kind
451
447
}
452
448
453
449
pub ( crate ) fn set_transceiver_codecs (
@@ -460,7 +456,7 @@ impl RTCRtpReceiver {
460
456
/// transport returns the currently-configured *DTLSTransport or nil
461
457
/// if one has not yet been configured
462
458
pub fn transport ( & self ) -> Arc < RTCDtlsTransport > {
463
- Arc :: clone ( & self . transport )
459
+ Arc :: clone ( & self . internal . transport )
464
460
}
465
461
466
462
/// get_parameters describes the current configuration for the encoding and
@@ -539,7 +535,8 @@ impl RTCRtpReceiver {
539
535
& global_params. header_extensions ,
540
536
) ;
541
537
let ( rtp_read_stream, rtp_interceptor, rtcp_read_stream, rtcp_interceptor) =
542
- self . transport
538
+ self . internal
539
+ . transport
543
540
. streams_for_ssrc ( encoding. ssrc , & stream_info, & interceptor)
544
541
. await ?;
545
542
@@ -557,7 +554,7 @@ impl RTCRtpReceiver {
557
554
let t = TrackStreams {
558
555
track : Arc :: new ( TrackRemote :: new (
559
556
self . receive_mtu ,
560
- self . kind ,
557
+ self . internal . kind ,
561
558
encoding. ssrc ,
562
559
encoding. rid . clone ( ) ,
563
560
receiver. clone ( ) ,
@@ -596,6 +593,7 @@ impl RTCRtpReceiver {
596
593
& global_params. header_extensions ,
597
594
) ;
598
595
let ( rtp_read_stream, rtp_interceptor, rtcp_read_stream, rtcp_interceptor) = self
596
+ . internal
599
597
. transport
600
598
. streams_for_ssrc ( rtx_ssrc, & stream_info, & interceptor)
601
599
. await ?;
@@ -766,7 +764,7 @@ impl RTCRtpReceiver {
766
764
let mut tracks = self . internal . tracks . write ( ) . await ;
767
765
for t in & mut * tracks {
768
766
if * t. track . rid ( ) == rid {
769
- t. track . set_kind ( self . kind ) ;
767
+ t. track . set_kind ( self . internal . kind ) ;
770
768
if let Some ( codec) = params. codecs . first ( ) {
771
769
t. track . set_codec ( codec. clone ( ) ) ;
772
770
}
0 commit comments