@@ -2,7 +2,7 @@ use std::io::{
22 Write , { self } ,
33} ;
44
5- use byteorder:: { BigEndian , ReadBytesExt , WriteBytesExt } ;
5+ use byteorder:: { BigEndian , WriteBytesExt } ;
66use scuffle_bytes_util:: zero_copy:: { Deserialize , Serialize } ;
77use scuffle_bytes_util:: { BitReader , BitWriter , BytesCow , IoResultExt } ;
88
@@ -96,24 +96,24 @@ impl<'a> Deserialize<'a> for AVCDecoderConfigurationRecord<'a> {
9696 where
9797 R : scuffle_bytes_util:: zero_copy:: ZeroCopyReader < ' a > ,
9898 {
99- let configuration_version = reader . as_std ( ) . read_u8 ( ) ?;
100- let profile_indication = reader . as_std ( ) . read_u8 ( ) ?;
101- let profile_compatibility = reader . as_std ( ) . read_u8 ( ) ?;
102- let level_indication = reader . as_std ( ) . read_u8 ( ) ?;
103- let length_size_minus_one = reader . as_std ( ) . read_u8 ( ) ? & 0b00000011 ;
104- let num_of_sequence_parameter_sets = reader . as_std ( ) . read_u8 ( ) ? & 0b00011111 ;
99+ let configuration_version = u8 :: deserialize ( & mut reader ) ?;
100+ let profile_indication = u8 :: deserialize ( & mut reader ) ?;
101+ let profile_compatibility = u8 :: deserialize ( & mut reader ) ?;
102+ let level_indication = u8 :: deserialize ( & mut reader ) ?;
103+ let length_size_minus_one = u8 :: deserialize ( & mut reader ) ? & 0b00000011 ;
104+ let num_of_sequence_parameter_sets = u8 :: deserialize ( & mut reader ) ? & 0b00011111 ;
105105
106106 let mut sps = Vec :: with_capacity ( num_of_sequence_parameter_sets as usize ) ;
107107 for _ in 0 ..num_of_sequence_parameter_sets {
108- let sps_length = reader . as_std ( ) . read_u16 :: < BigEndian > ( ) ?;
108+ let sps_length = u16 :: deserialize ( & mut reader ) ?;
109109 let sps_data = reader. try_read ( sps_length as usize ) ?;
110110 sps. push ( sps_data) ;
111111 }
112112
113- let num_of_picture_parameter_sets = reader . as_std ( ) . read_u8 ( ) ?;
113+ let num_of_picture_parameter_sets = u8 :: deserialize ( & mut reader ) ?;
114114 let mut pps = Vec :: with_capacity ( num_of_picture_parameter_sets as usize ) ;
115115 for _ in 0 ..num_of_picture_parameter_sets {
116- let pps_length = reader . as_std ( ) . read_u16 :: < BigEndian > ( ) ?;
116+ let pps_length = u16 :: deserialize ( & mut reader ) ?;
117117 let pps_data = reader. try_read ( pps_length as usize ) ?;
118118 pps. push ( pps_data) ;
119119 }
@@ -124,16 +124,16 @@ impl<'a> Deserialize<'a> for AVCDecoderConfigurationRecord<'a> {
124124 let extended_config = match profile_indication {
125125 66 | 77 | 88 => None ,
126126 _ => {
127- let chroma_format_idc = reader . as_std ( ) . read_u8 ( ) . eof_to_none ( ) ?;
127+ let chroma_format_idc = u8 :: deserialize ( & mut reader ) . eof_to_none ( ) ?;
128128 if let Some ( chroma_format_idc) = chroma_format_idc {
129129 let chroma_format_idc = chroma_format_idc & 0b00000011 ; // 2 bits (6 bits reserved)
130- let bit_depth_luma_minus8 = reader . as_std ( ) . read_u8 ( ) ? & 0b00000111 ; // 3 bits (5 bits reserved)
131- let bit_depth_chroma_minus8 = reader . as_std ( ) . read_u8 ( ) ? & 0b00000111 ; // 3 bits (5 bits reserved)
132- let number_of_sequence_parameter_set_ext = reader . as_std ( ) . read_u8 ( ) ?; // 8 bits
130+ let bit_depth_luma_minus8 = u8 :: deserialize ( & mut reader ) ? & 0b00000111 ; // 3 bits (5 bits reserved)
131+ let bit_depth_chroma_minus8 = u8 :: deserialize ( & mut reader ) ? & 0b00000111 ; // 3 bits (5 bits reserved)
132+ let number_of_sequence_parameter_set_ext = u8 :: deserialize ( & mut reader ) ?; // 8 bits
133133
134134 let mut sequence_parameter_set_ext = Vec :: with_capacity ( number_of_sequence_parameter_set_ext as usize ) ;
135135 for _ in 0 ..number_of_sequence_parameter_set_ext {
136- let sps_ext_length = reader . as_std ( ) . read_u16 :: < BigEndian > ( ) ?;
136+ let sps_ext_length = u16 :: deserialize ( & mut reader ) ?;
137137 let sps_ext_data = reader. try_read ( sps_ext_length as usize ) ?;
138138
139139 let mut bit_reader = BitReader :: new_from_slice ( sps_ext_data) ;
0 commit comments