1
0
Fork 0
mirror of https://github.com/alfg/mp4-rust.git synced 2024-06-11 01:19:21 +00:00

Remove entry_count that is duplacated with entries.len()

This commit is contained in:
Ian Jun 2020-07-29 12:29:40 +09:00
parent 931f60217f
commit 828c6c2ff5
3 changed files with 6 additions and 17 deletions

View file

@ -8,7 +8,6 @@ use crate::*;
pub struct ElstBox {
pub version: u8,
pub flags: u32,
pub entry_count: u32,
pub entries: Vec<ElstEntry>,
}
@ -28,10 +27,10 @@ impl Mp4Box for ElstBox {
fn box_size(&self) -> u64 {
let mut size = HEADER_SIZE + HEADER_EXT_SIZE + 4;
if self.version == 1 {
size += self.entry_count as u64 * 20;
size += self.entries.len() as u64 * 20;
} else {
assert_eq!(self.version, 0);
size += self.entry_count as u64 * 12;
size += self.entries.len() as u64 * 12;
}
size
}
@ -72,7 +71,6 @@ impl<R: Read + Seek> ReadBox<&mut BufReader<R>> for ElstBox {
Ok(ElstBox {
version,
flags,
entry_count,
entries,
})
}
@ -85,8 +83,7 @@ impl<W: Write> WriteBox<&mut BufWriter<W>> for ElstBox {
write_box_header_ext(writer, self.version, self.flags)?;
assert_eq!(self.entry_count as usize, self.entries.len());
writer.write_u32::<BigEndian>(self.entry_count)?;
writer.write_u32::<BigEndian>(self.entries.len() as u32)?;
for entry in self.entries.iter() {
if self.version == 1 {
writer.write_u64::<BigEndian>(entry.segment_duration)?;
@ -114,7 +111,6 @@ mod tests {
let src_box = ElstBox {
version: 0,
flags: 0,
entry_count: 1,
entries: vec![ElstEntry {
segment_duration: 634634,
media_time: 0,
@ -146,7 +142,6 @@ mod tests {
let src_box = ElstBox {
version: 1,
flags: 0,
entry_count: 1,
entries: vec![ElstEntry {
segment_duration: 634634,
media_time: 0,

View file

@ -8,7 +8,6 @@ use crate::*;
pub struct StsdBox {
pub version: u8,
pub flags: u32,
pub entry_count: u32,
}
impl Mp4Box for StsdBox {
@ -28,7 +27,7 @@ impl<R: Read + Seek> ReadBox<&mut BufReader<R>> for StsdBox {
let (version, flags) = read_box_header_ext(reader)?;
let entry_count = reader.read_u32::<BigEndian>()?;
let _entry_count = reader.read_u32::<BigEndian>()?;
let mut start = 0u64;
while start < size {
@ -48,7 +47,6 @@ impl<R: Read + Seek> ReadBox<&mut BufReader<R>> for StsdBox {
Ok(StsdBox {
version,
flags,
entry_count,
})
}
}

View file

@ -8,7 +8,6 @@ use crate::*;
pub struct SttsBox {
pub version: u8,
pub flags: u32,
pub entry_count: u32,
pub entries: Vec<SttsEntry>,
}
@ -24,7 +23,7 @@ impl Mp4Box for SttsBox {
}
fn box_size(&self) -> u64 {
HEADER_SIZE + HEADER_EXT_SIZE + 4 + (8 * self.entry_count as u64)
HEADER_SIZE + HEADER_EXT_SIZE + 4 + (8 * self.entries.len() as u64)
}
}
@ -48,7 +47,6 @@ impl<R: Read + Seek> ReadBox<&mut BufReader<R>> for SttsBox {
Ok(SttsBox {
version,
flags,
entry_count,
entries,
})
}
@ -61,7 +59,7 @@ impl<W: Write> WriteBox<&mut BufWriter<W>> for SttsBox {
write_box_header_ext(writer, self.version, self.flags)?;
writer.write_u32::<BigEndian>(self.entry_count)?;
writer.write_u32::<BigEndian>(self.entries.len() as u32)?;
for entry in self.entries.iter() {
writer.write_u32::<BigEndian>(entry.sample_count)?;
writer.write_u32::<BigEndian>(entry.sample_delta)?;
@ -82,7 +80,6 @@ mod tests {
let src_box = SttsBox {
version: 0,
flags: 0,
entry_count: 2,
entries: vec![
SttsEntry {sample_count: 29726, sample_delta: 1024},
SttsEntry {sample_count: 1, sample_delta: 512},
@ -112,7 +109,6 @@ mod tests {
let src_box = SttsBox {
version: 1,
flags: 0,
entry_count: 2,
entries: vec![
SttsEntry {sample_count: 29726, sample_delta: 1024},
SttsEntry {sample_count: 1, sample_delta: 512},