pub struct Beatgrid {
pub version: Version,
pub non_terminal_markers: Vec<NonTerminalMarker>,
pub terminal_marker: TerminalMarker,
pub footer: u8,
}Expand description
Represents the Serato BeatGrid tag.
It stores the Beatgrid as a sequence of zero or more non-terminal beatgrid markers and a single terminal beatgrid markers.
§Example
use triseratops::tag::{Beatgrid, format::id3::ID3Tag};
// First, read the tag data from the ID3 GEOB tag (the tag name can be accessed using the
// Beatgrid::ID3_TAG), then parse the data like this:
fn parse(data: &[u8]) {
let content = Beatgrid::parse_id3(data).expect("Failed to parse data!");
println!("{:?}", content);
}Fields§
§version: VersionThe analysis version.
non_terminal_markers: Vec<NonTerminalMarker>Zero or more non-terminal beatgrid markers.
terminal_marker: TerminalMarkerThe terminal beatgrid marker.
A single footer byte that is apparently random (?).
Trait Implementations§
Source§impl EnvelopedTag for Beatgrid
impl EnvelopedTag for Beatgrid
Source§impl MP4Tag for Beatgrid
impl MP4Tag for Beatgrid
Source§const MP4_ATOM_FREEFORM_NAME: &'static str = "beatgrid"
const MP4_ATOM_FREEFORM_NAME: &'static str = "beatgrid"
The mean part of the freeform
MP4_ATOM that this data is stored in.Source§const MP4_ATOM_FREEFORM_MEAN: &'static str = "com.serato.dj"
const MP4_ATOM_FREEFORM_MEAN: &'static str = "com.serato.dj"
The mean part of the freeform
MP4_ATOM that this data is stored in.fn parse_mp4(input: &[u8]) -> Result<Self, Error>
fn write_mp4(&self, writer: &mut impl Write) -> Result<usize, Error>
Auto Trait Implementations§
impl Freeze for Beatgrid
impl RefUnwindSafe for Beatgrid
impl Send for Beatgrid
impl Sync for Beatgrid
impl Unpin for Beatgrid
impl UnsafeUnpin for Beatgrid
impl UnwindSafe for Beatgrid
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more