pub struct MonochromeDataField<'a> {
pub first_segment: bool,
pub last_segment: bool,
pub field_parity: bool,
pub line_offset: u8,
pub first_pixel_position: u16,
pub samples: &'a [u8],
}Expand description
Monochrome 4:2:2 luminance-sample data field — ETSI EN 301 775 §4.9.1,
Table 12 (data_unit_id 0xC6).
Unlike the other units this packs its first byte as [7] first_segment_flag,
[6] last_segment_flag, [5] field_parity, [4:0] line_offset (no 2-bit
reserved prefix), then a 16-bit first_pixel_position, an 8-bit n_pixels,
and n_pixels luminance Y_value bytes.
Fields§
§first_segment: boolfirst_segment_flag (1 for the first segment of a line).
last_segment: boollast_segment_flag (1 for the last segment of a line).
field_parity: boolfield_parity (1 first field, 0 second field).
line_offset: u8line_offset (5 bits, 7..=23 valid; coded per Table 13).
first_pixel_position: u16first_pixel_position (16 bits, 0..=719): position of the first coded
luminance sample of this segment.
samples: &'a [u8]Y_value luminance samples; n_pixels is samples.len() (1..=251).
Implementations§
Source§impl<'a> MonochromeDataField<'a>
impl<'a> MonochromeDataField<'a>
Sourcepub fn serialized_len(&self) -> usize
pub fn serialized_len(&self) -> usize
Bytes this data field occupies (the data_unit_length).
Sourcepub fn parse(data: &'a [u8]) -> Result<Self>
pub fn parse(data: &'a [u8]) -> Result<Self>
Parse exactly one monochrome data field from data (data is the
data-unit body of data_unit_length bytes). n_pixels is taken from the
wire and the sample slice is borrowed from data.
Sourcepub fn serialize_into(&self, out: &mut [u8]) -> Result<usize>
pub fn serialize_into(&self, out: &mut [u8]) -> Result<usize>
Serialize into out, returning the number of bytes written. n_pixels
is derived from samples.len().
Trait Implementations§
Source§impl<'a> Clone for MonochromeDataField<'a>
impl<'a> Clone for MonochromeDataField<'a>
Source§fn clone(&self) -> MonochromeDataField<'a>
fn clone(&self) -> MonochromeDataField<'a>
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl<'a> Debug for MonochromeDataField<'a>
impl<'a> Debug for MonochromeDataField<'a>
impl<'a> Eq for MonochromeDataField<'a>
Source§impl<'a> PartialEq for MonochromeDataField<'a>
impl<'a> PartialEq for MonochromeDataField<'a>
Source§impl<'a> Serialize for MonochromeDataField<'a>
Available on crate feature serde only.
impl<'a> Serialize for MonochromeDataField<'a>
serde only.