@@ -14,7 +14,6 @@ use portable_atomic::{AtomicBool, AtomicU8};
1414use serde:: { Deserialize , Serialize } ;
1515use smol_str:: SmolStr ;
1616use tokio:: sync:: { Mutex , OnceCell } ;
17- use util:: Unmarshal ;
1817
1918use crate :: api:: media_engine:: MediaEngine ;
2019use crate :: error:: { Error , Result } ;
@@ -527,33 +526,30 @@ pub(crate) async fn satisfy_type_and_direction(
527526/// handle_unknown_rtp_packet consumes a single RTP Packet and returns information that is helpful
528527/// for demuxing and handling an unknown SSRC (usually for Simulcast)
529528pub ( crate ) fn handle_unknown_rtp_packet (
530- buf : & [ u8 ] ,
529+ header : & rtp :: header :: Header ,
531530 mid_extension_id : u8 ,
532531 sid_extension_id : u8 ,
533532 rsid_extension_id : u8 ,
534533) -> Result < ( String , String , String , PayloadType ) > {
535- let mut reader = buf;
536- let rp = rtp:: packet:: Packet :: unmarshal ( & mut reader) ?;
537-
538- if !rp. header . extension {
534+ if !header. extension {
539535 return Ok ( ( String :: new ( ) , String :: new ( ) , String :: new ( ) , 0 ) ) ;
540536 }
541537
542- let payload_type = rp . header . payload_type ;
538+ let payload_type = header. payload_type ;
543539
544- let mid = if let Some ( payload) = rp . header . get_extension ( mid_extension_id) {
540+ let mid = if let Some ( payload) = header. get_extension ( mid_extension_id) {
545541 String :: from_utf8 ( payload. to_vec ( ) ) ?
546542 } else {
547543 String :: new ( )
548544 } ;
549545
550- let rid = if let Some ( payload) = rp . header . get_extension ( sid_extension_id) {
546+ let rid = if let Some ( payload) = header. get_extension ( sid_extension_id) {
551547 String :: from_utf8 ( payload. to_vec ( ) ) ?
552548 } else {
553549 String :: new ( )
554550 } ;
555551
556- let srid = if let Some ( payload) = rp . header . get_extension ( rsid_extension_id) {
552+ let srid = if let Some ( payload) = header. get_extension ( rsid_extension_id) {
557553 String :: from_utf8 ( payload. to_vec ( ) ) ?
558554 } else {
559555 String :: new ( )
0 commit comments