diff --git a/src/mp4box/avc1.rs b/src/mp4box/avc1.rs index bc11ef5..27f428e 100644 --- a/src/mp4box/avc1.rs +++ b/src/mp4box/avc1.rs @@ -72,7 +72,7 @@ impl ReadBox<&mut R> for Avc1Box { let vertresolution = FixedPointU16::new_raw(reader.read_u32::()?); reader.read_u32::()?; // reserved let frame_count = reader.read_u16::()?; - skip_read(reader, 32)?; // compressorname + skip_bytes(reader, 32)?; // compressorname let depth = reader.read_u16::()?; reader.read_i16::()?; // pre-defined @@ -81,7 +81,7 @@ impl ReadBox<&mut R> for Avc1Box { if name == BoxType::AvcCBox { let avcc = AvcCBox::read_box(reader, s)?; - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(Avc1Box { data_reference_index, @@ -118,7 +118,7 @@ impl WriteBox<&mut W> for Avc1Box { writer.write_u32::(0)?; // reserved writer.write_u16::(self.frame_count)?; // skip compressorname - skip_write(writer, 32)?; + write_zeros(writer, 32)?; writer.write_u16::(self.depth)?; writer.write_i16::(-1)?; // pre-defined @@ -192,7 +192,7 @@ impl ReadBox<&mut R> for AvcCBox { picture_parameter_sets.push(nal_unit); } - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(AvcCBox { configuration_version, diff --git a/src/mp4box/co64.rs b/src/mp4box/co64.rs index c425b4c..511db77 100644 --- a/src/mp4box/co64.rs +++ b/src/mp4box/co64.rs @@ -33,7 +33,7 @@ impl ReadBox<&mut R> for Co64Box { entries.push(chunk_offset); } - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(Co64Box { version, diff --git a/src/mp4box/ctts.rs b/src/mp4box/ctts.rs index c3ee0c3..49d666a 100644 --- a/src/mp4box/ctts.rs +++ b/src/mp4box/ctts.rs @@ -42,7 +42,7 @@ impl ReadBox<&mut R> for CttsBox { entries.push(entry); } - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(CttsBox { version, diff --git a/src/mp4box/edts.rs b/src/mp4box/edts.rs index 4eb1842..c36b59c 100644 --- a/src/mp4box/edts.rs +++ b/src/mp4box/edts.rs @@ -45,7 +45,7 @@ impl ReadBox<&mut R> for EdtsBox { _ => {} } - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(edts) } diff --git a/src/mp4box/elst.rs b/src/mp4box/elst.rs index 75e29a4..ecd1d32 100644 --- a/src/mp4box/elst.rs +++ b/src/mp4box/elst.rs @@ -65,7 +65,7 @@ impl ReadBox<&mut R> for ElstBox { entries.push(entry); } - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(ElstBox { version, diff --git a/src/mp4box/ftyp.rs b/src/mp4box/ftyp.rs index fc8d132..418f3a0 100644 --- a/src/mp4box/ftyp.rs +++ b/src/mp4box/ftyp.rs @@ -37,7 +37,7 @@ impl ReadBox<&mut R> for FtypBox { brands.push(From::from(b)); } - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(FtypBox { major_brand: From::from(major), diff --git a/src/mp4box/hdlr.rs b/src/mp4box/hdlr.rs index 178f223..a7bf34b 100644 --- a/src/mp4box/hdlr.rs +++ b/src/mp4box/hdlr.rs @@ -30,7 +30,7 @@ impl ReadBox<&mut R> for HdlrBox { reader.read_u32::()?; // pre-defined let handler = reader.read_u32::()?; - skip_read(reader, 12)?; // reserved + skip_bytes(reader, 12)?; // reserved let buf_size = size - HEADER_SIZE - HEADER_EXT_SIZE - 20 - 1; let mut buf = vec![0u8; buf_size as usize]; @@ -44,7 +44,7 @@ impl ReadBox<&mut R> for HdlrBox { _ => String::from("null"), }; - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(HdlrBox { version, diff --git a/src/mp4box/mdhd.rs b/src/mp4box/mdhd.rs index 67ef558..5e53982 100644 --- a/src/mp4box/mdhd.rs +++ b/src/mp4box/mdhd.rs @@ -73,7 +73,7 @@ impl ReadBox<&mut R> for MdhdBox { let language_code = reader.read_u16::()?; let language = language_string(language_code); - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(MdhdBox { version, diff --git a/src/mp4box/mdia.rs b/src/mp4box/mdia.rs index 92914b0..cf7ff07 100644 --- a/src/mp4box/mdia.rs +++ b/src/mp4box/mdia.rs @@ -64,7 +64,7 @@ impl ReadBox<&mut R> for MdiaBox { return Err(Error::BoxNotFound(BoxType::MinfBox)); } - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(MdiaBox { mdhd: mdhd.unwrap(), diff --git a/src/mp4box/minf.rs b/src/mp4box/minf.rs index f20f9ab..0da39a9 100644 --- a/src/mp4box/minf.rs +++ b/src/mp4box/minf.rs @@ -70,7 +70,7 @@ impl ReadBox<&mut R> for MinfBox { return Err(Error::BoxNotFound(BoxType::StblBox)); } - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(MinfBox { vmhd, diff --git a/src/mp4box/mod.rs b/src/mp4box/mod.rs index 8367e4b..0721e2c 100644 --- a/src/mp4box/mod.rs +++ b/src/mp4box/mod.rs @@ -180,28 +180,27 @@ pub fn write_box_header_ext(w: &mut W, v: u8, f: u32) -> Result { Ok(4) } -pub fn box_start(reader: &mut R) -> Result { - Ok(reader.seek(SeekFrom::Current(0))? - HEADER_SIZE) +pub fn box_start(seeker: &mut R) -> Result { + Ok(seeker.seek(SeekFrom::Current(0))? - HEADER_SIZE) } -pub fn skip_read(reader: &mut R, size: i64) -> Result<()> { - assert!(size >= 0); - reader.seek(SeekFrom::Current(size))?; +pub fn skip_bytes(seeker: &mut S, size: u64) -> Result<()> { + seeker.seek(SeekFrom::Current(size as i64))?; Ok(()) } -pub fn skip_read_to(reader: &mut R, pos: u64) -> Result<()> { - reader.seek(SeekFrom::Start(pos))?; +pub fn skip_bytes_to(seeker: &mut S, pos: u64) -> Result<()> { + seeker.seek(SeekFrom::Start(pos))?; Ok(()) } -pub fn skip_box(reader: &mut R, size: u64) -> Result<()> { - let start = box_start(reader)?; - skip_read_to(reader, start + size)?; +pub fn skip_box(seeker: &mut S, size: u64) -> Result<()> { + let start = box_start(seeker)?; + skip_bytes_to(seeker, start + size)?; Ok(()) } -pub fn skip_write(writer: &mut W, size: u64) -> Result<()> { +pub fn write_zeros(writer: &mut W, size: u64) -> Result<()> { for _ in 0..size { writer.write_u8(0)?; } diff --git a/src/mp4box/moov.rs b/src/mp4box/moov.rs index 218dc5a..045440e 100644 --- a/src/mp4box/moov.rs +++ b/src/mp4box/moov.rs @@ -62,7 +62,7 @@ impl ReadBox<&mut R> for MoovBox { return Err(Error::BoxNotFound(BoxType::MvhdBox)); } - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(MoovBox { mvhd: mvhd.unwrap(), diff --git a/src/mp4box/mp4a.rs b/src/mp4box/mp4a.rs index f6ac5f3..081f926 100644 --- a/src/mp4box/mp4a.rs +++ b/src/mp4box/mp4a.rs @@ -65,7 +65,7 @@ impl ReadBox<&mut R> for Mp4aBox { if name == BoxType::EsdsBox { let esds = EsdsBox::read_box(reader, s)?; - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(Mp4aBox { data_reference_index, @@ -153,7 +153,7 @@ impl ReadBox<&mut R> for EsdsBox { return Err(Error::InvalidData("ESDescriptor not found")); } - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(EsdsBox { version, @@ -285,7 +285,7 @@ impl ReadDesc<&mut R> for ESDescriptor { sl_config = Some(SLConfigDescriptor::read_desc(reader, desc_size)?); } _ => { - skip_read(reader, desc_size as i64 - 1)?; + skip_bytes(reader, desc_size as u64 - 1)?; } } current = reader.seek(SeekFrom::Current(0))?; @@ -378,7 +378,7 @@ impl ReadDesc<&mut R> for DecoderConfigDescriptor { dec_specific = Some(DecoderSpecificDescriptor::read_desc(reader, desc_size)?); } _ => { - skip_read(reader, desc_size as i64 - 1)?; + skip_bytes(reader, desc_size as u64 - 1)?; } } current = reader.seek(SeekFrom::Current(0))?; diff --git a/src/mp4box/mvhd.rs b/src/mp4box/mvhd.rs index 909ab7d..bd38fbf 100644 --- a/src/mp4box/mvhd.rs +++ b/src/mp4box/mvhd.rs @@ -70,7 +70,7 @@ impl ReadBox<&mut R> for MvhdBox { }; let rate = FixedPointU16::new_raw(reader.read_u32::()?); - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(MvhdBox { version, @@ -106,7 +106,7 @@ impl WriteBox<&mut W> for MvhdBox { writer.write_u32::(self.rate.raw_value())?; // XXX volume, ... - skip_write(writer, 76)?; + write_zeros(writer, 76)?; Ok(size) } diff --git a/src/mp4box/smhd.rs b/src/mp4box/smhd.rs index 5f80ddb..3879a18 100644 --- a/src/mp4box/smhd.rs +++ b/src/mp4box/smhd.rs @@ -38,7 +38,7 @@ impl ReadBox<&mut R> for SmhdBox { let balance = FixedPointI8::new_raw(reader.read_i16::()?); - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(SmhdBox { version, diff --git a/src/mp4box/stbl.rs b/src/mp4box/stbl.rs index 4236f64..8f7db65 100644 --- a/src/mp4box/stbl.rs +++ b/src/mp4box/stbl.rs @@ -114,7 +114,7 @@ impl ReadBox<&mut R> for StblBox { return Err(Error::Box2NotFound(BoxType::StcoBox, BoxType::Co64Box)); } - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(StblBox { stsd: stsd.unwrap(), diff --git a/src/mp4box/stco.rs b/src/mp4box/stco.rs index e6822c1..301cb50 100644 --- a/src/mp4box/stco.rs +++ b/src/mp4box/stco.rs @@ -33,7 +33,7 @@ impl ReadBox<&mut R> for StcoBox { entries.push(chunk_offset); } - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(StcoBox { version, diff --git a/src/mp4box/stsc.rs b/src/mp4box/stsc.rs index e712646..fe83cc7 100644 --- a/src/mp4box/stsc.rs +++ b/src/mp4box/stsc.rs @@ -59,7 +59,7 @@ impl ReadBox<&mut R> for StscBox { } } - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(StscBox { version, diff --git a/src/mp4box/stsd.rs b/src/mp4box/stsd.rs index f83667e..5731c7f 100644 --- a/src/mp4box/stsd.rs +++ b/src/mp4box/stsd.rs @@ -53,7 +53,7 @@ impl ReadBox<&mut R> for StsdBox { _ => {} } - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(StsdBox { version, diff --git a/src/mp4box/stss.rs b/src/mp4box/stss.rs index 422c975..412174b 100644 --- a/src/mp4box/stss.rs +++ b/src/mp4box/stss.rs @@ -33,7 +33,7 @@ impl ReadBox<&mut R> for StssBox { entries.push(sample_number); } - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(StssBox { version, diff --git a/src/mp4box/stsz.rs b/src/mp4box/stsz.rs index 41c1663..99a4de6 100644 --- a/src/mp4box/stsz.rs +++ b/src/mp4box/stsz.rs @@ -38,7 +38,7 @@ impl ReadBox<&mut R> for StszBox { } } - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(StszBox { version, diff --git a/src/mp4box/stts.rs b/src/mp4box/stts.rs index 5a01f82..8ca673f 100644 --- a/src/mp4box/stts.rs +++ b/src/mp4box/stts.rs @@ -42,7 +42,7 @@ impl ReadBox<&mut R> for SttsBox { entries.push(entry); } - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(SttsBox { version, diff --git a/src/mp4box/tkhd.rs b/src/mp4box/tkhd.rs index ff3119b..effe5c2 100644 --- a/src/mp4box/tkhd.rs +++ b/src/mp4box/tkhd.rs @@ -124,7 +124,7 @@ impl ReadBox<&mut R> for TkhdBox { let width = FixedPointU16::new_raw(reader.read_u32::()?); let height = FixedPointU16::new_raw(reader.read_u32::()?); - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(TkhdBox { version, diff --git a/src/mp4box/trak.rs b/src/mp4box/trak.rs index e92683a..30e0353 100644 --- a/src/mp4box/trak.rs +++ b/src/mp4box/trak.rs @@ -67,7 +67,7 @@ impl ReadBox<&mut R> for TrakBox { return Err(Error::BoxNotFound(BoxType::MdiaBox)); } - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(TrakBox { tkhd: tkhd.unwrap(), diff --git a/src/mp4box/vmhd.rs b/src/mp4box/vmhd.rs index 45e420d..623c2ff 100644 --- a/src/mp4box/vmhd.rs +++ b/src/mp4box/vmhd.rs @@ -41,7 +41,7 @@ impl ReadBox<&mut R> for VmhdBox { blue: reader.read_u16::()?, }; - skip_read_to(reader, start + size)?; + skip_bytes_to(reader, start + size)?; Ok(VmhdBox { version,