diff options
author | metamuffin <metamuffin@disroot.org> | 2023-09-30 18:15:16 +0200 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2023-09-30 18:15:16 +0200 |
commit | b15fb338de55df177948a7fdf9704efa4374816b (patch) | |
tree | 11272ac46e775ce9eb303e9a0d4ebdf6571c9555 /common/src/seek_index.rs | |
parent | 09c7eb30a583ebec6c25b8aa539512e4ae26e5e5 (diff) | |
download | jellything-b15fb338de55df177948a7fdf9704efa4374816b.tar jellything-b15fb338de55df177948a7fdf9704efa4374816b.tar.bz2 jellything-b15fb338de55df177948a7fdf9704efa4374816b.tar.zst |
refactor common crate
Diffstat (limited to 'common/src/seek_index.rs')
-rw-r--r-- | common/src/seek_index.rs | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/common/src/seek_index.rs b/common/src/seek_index.rs new file mode 100644 index 0000000..98afcca --- /dev/null +++ b/common/src/seek_index.rs @@ -0,0 +1,32 @@ +/* + This file is part of jellything (https://codeberg.org/metamuffin/jellything) + which is licensed under the GNU Affero General Public License (version 3); see /COPYING. + Copyright (C) 2023 metamuffin <metamuffin.org> +*/ +use bincode::{Decode, Encode}; + +pub const SEEK_INDEX_VERSION: u32 = 0x5eef1de4; + +#[derive(Debug, Clone, Decode, Encode)] +pub struct SeekIndex { + pub version: u32, + pub blocks: Vec<BlockIndex>, + pub keyframes: Vec<usize>, +} + +#[derive(Debug, Clone, Decode, Encode)] +pub struct BlockIndex { + pub pts: u64, + pub source_off: usize, + pub size: usize, +} + +impl Default for SeekIndex { + fn default() -> Self { + Self { + version: SEEK_INDEX_VERSION, + blocks: Vec::new(), + keyframes: Vec::new(), + } + } +} |