vapor-parser 0.1.0

A parser for MPEG files
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
pub const MPEG_HEADER_SIZE: usize = 4;
pub const ID3V2_HEADER_SIZE: usize = 10;
pub const ID3V1_HEADER_SIZE: usize = 128;
pub const XING_BUFFER_SIZE: usize = 12;

pub fn read_synchsafe_bytes(bytes: &[u8]) -> usize {
    let mut value: usize = 0;
    for &byte in bytes {
        value = (value << 7) | usize::from(byte & 0b0111_1111);
    }
    value
}