pub struct PgsOdsSegment {
pub header: PgsSegmentHeader,
pub object_id: u16,
pub object_version_number: u8,
pub last_in_sequence_flag: PgsOdsSequenceFlag,
pub object_data_length: u32,
pub width: u16,
pub height: u16,
pub object_data: Vec<u8>,
}
Expand description
Struct representing an Object Definition Segment (ODS) in a PGS file. The ODS contains the actual image data (subtitle graphics) along with metadata.
Fields§
§header: PgsSegmentHeader
§object_id: u16
§object_version_number: u8
§last_in_sequence_flag: PgsOdsSequenceFlag
§object_data_length: u32
§width: u16
§height: u16
§object_data: Vec<u8>
Implementations§
Source§impl PgsOdsSegment
impl PgsOdsSegment
Sourcepub fn from_data(
header: PgsSegmentHeader,
data: &[u8],
) -> Result<Rc<PgsOdsSegment>>
pub fn from_data( header: PgsSegmentHeader, data: &[u8], ) -> Result<Rc<PgsOdsSegment>>
Constructs a PgsOdsSegment
from the given header and raw data buffer.
This method parses the ODS segment data, extracting the object ID, version number, sequence flag, object data length, and optionally the object width and height (if this is the first or both sequence flag).
§Parameters
header
: The segment header.data
: A slice of raw data representing the contents of the ODS segment.
§Errors
Returns Error::InvalidSegmentDataLength
if the length of the provided data is less than the expected length.
§Returns
An Rc<PgsOdsSegment>
containing the parsed segment.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for PgsOdsSegment
impl RefUnwindSafe for PgsOdsSegment
impl Send for PgsOdsSegment
impl Sync for PgsOdsSegment
impl Unpin for PgsOdsSegment
impl UnwindSafe for PgsOdsSegment
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