mirror of
https://git.um-react.app/um/lib_um_crypto_rust.git
synced 2026-03-07 20:19:51 +00:00
18 lines
576 B
Rust
18 lines
576 B
Rust
pub const SYNC_FRAME_TEST_SIZE: usize = 4096;
|
|
|
|
pub fn is_mp3(magic: u32) -> bool {
|
|
// Frame sync should have the first 11 bits set to 1.
|
|
const MP3_AND_MASK: u32 = 0b1111_1111_1110_0000u32 << 16;
|
|
const MP3_EXPECTED: u32 = 0b1111_1111_1110_0000u32 << 16;
|
|
|
|
(magic & MP3_AND_MASK) == MP3_EXPECTED
|
|
}
|
|
|
|
pub fn is_aac(magic: u32) -> bool {
|
|
// Frame sync should have the first 12 bits set to 1.
|
|
const AAC_AND_MASK: u32 = 0b1111_1111_1111_0110u32 << 16;
|
|
const AAC_EXPECTED: u32 = 0b1111_1111_1111_0000u32 << 16;
|
|
|
|
(magic & AAC_AND_MASK) == AAC_EXPECTED
|
|
}
|