pub struct TimecodeMeta {
pub hours: u8,
pub minutes: u8,
pub seconds: u8,
pub frames: u8,
pub drop_frame: bool,
pub framerate_q16: Option<u32>,
}Expand description
The SMPTE ST 12M timecode a coded picture carries (H.264 pic_timing /
H.265 time_code SEI, or a container timecode track): where this frame
sits on the source’s own clock, which is what an edit list, a broadcast
log, or a burnt-in overlay refers to.
Fields§
§hours: u8§minutes: u8§seconds: u8§frames: u8§drop_frame: boolNTSC drop-frame counting (the 29.97 / 59.94 fps count that skips two
frame numbers a minute). Rendered with a ; before the frame count.
framerate_q16: Option<u32>Frames per second the count runs at, Q16 fixed point like
Rate::Fixed. None when the source declared
none, so a consumer cannot convert the count to a duration.
Trait Implementations§
Source§impl Clone for TimecodeMeta
impl Clone for TimecodeMeta
Source§fn clone(&self) -> TimecodeMeta
fn clone(&self) -> TimecodeMeta
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for TimecodeMeta
Source§impl Debug for TimecodeMeta
impl Debug for TimecodeMeta
Source§impl Default for TimecodeMeta
impl Default for TimecodeMeta
Source§fn default() -> TimecodeMeta
fn default() -> TimecodeMeta
Returns the “default value” for a type. Read more
impl Eq for TimecodeMeta
Source§impl FrameMeta for TimecodeMeta
impl FrameMeta for TimecodeMeta
Source§fn propagate(&self, _transform: Transform) -> Propagation
fn propagate(&self, _transform: Transform) -> Propagation
A position on the source’s clock: unchanged by any pixel work, and it is exactly what a re-encode should carry into the new bitstream.
fn as_any(&self) -> &dyn Any
fn as_any_mut(&mut self) -> &mut dyn Any
Source§fn clone_box(&self) -> Box<dyn FrameMeta>
fn clone_box(&self) -> Box<dyn FrameMeta>
A boxed deep copy of this meta, the GstMeta
copy_func analog. Backs
the copy-on-write of a shared meta when a tee branch mutates it (see
FrameMetaSet::get_mut); each FrameMeta impl is its own concrete
type, so the duplication can only be expressed on the trait.Source§impl PartialEq for TimecodeMeta
impl PartialEq for TimecodeMeta
impl StructuralPartialEq for TimecodeMeta
Auto Trait Implementations§
impl Freeze for TimecodeMeta
impl RefUnwindSafe for TimecodeMeta
impl Send for TimecodeMeta
impl Sync for TimecodeMeta
impl Unpin for TimecodeMeta
impl UnsafeUnpin for TimecodeMeta
impl UnwindSafe for TimecodeMeta
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