Struct H264

Source
pub struct H264 { /* private fields */ }
Expand description

H264 Encoder (Core)

Implementations§

Source§

impl H264

Source

pub const PTR: *const RegisterBlock = {0x50084000 as *const h264::RegisterBlock}

Pointer to the register block

Source

pub const fn ptr() -> *const RegisterBlock

Return the pointer to the register block

Source

pub unsafe fn steal() -> Self

Steal an instance of this peripheral

§Safety

Ensure that the new instance of the peripheral cannot be used in a way that may race with any existing instances, for example by only accessing read-only or write-only registers, or by consuming the original peripheral and using critical sections to coordinate access between multiple new instances.

Additionally, other software such as HALs may rely on only one peripheral instance existing to ensure memory safety; ensure no stolen instances are passed to such software.

Methods from Deref<Target = RegisterBlock>§

Source

pub fn sys_ctrl(&self) -> &SYS_CTRL

0x00 - H264 system level control register.

Source

pub fn gop_conf(&self) -> &GOP_CONF

0x04 - GOP related configuration register.

Source

pub fn a_sys_mb_res(&self) -> &A_SYS_MB_RES

0x08 - Video A horizontal and vertical MB resolution register.

Source

pub fn a_sys_conf(&self) -> &A_SYS_CONF

0x0c - Video A system level configuration register.

Source

pub fn a_deci_score(&self) -> &A_DECI_SCORE

0x10 - Video A luma and chroma MB decimate score Register.

Source

pub fn a_deci_score_offset(&self) -> &A_DECI_SCORE_OFFSET

0x14 - Video A luma and chroma MB decimate score offset Register.

Source

pub fn a_rc_conf0(&self) -> &A_RC_CONF0

0x18 - Video A rate control configuration register0.

Source

pub fn a_rc_conf1(&self) -> &A_RC_CONF1

0x1c - Video A rate control configuration register1.

Source

pub fn a_db_bypass(&self) -> &A_DB_BYPASS

0x20 - Video A Deblocking bypass register

Source

pub fn a_roi_region0(&self) -> &A_ROI_REGION0

0x24 - Video A H264 ROI region0 range configure register.

Source

pub fn a_roi_region1(&self) -> &A_ROI_REGION1

0x28 - Video A H264 ROI region1 range configure register.

Source

pub fn a_roi_region2(&self) -> &A_ROI_REGION2

0x2c - Video A H264 ROI region2 range configure register.

Source

pub fn a_roi_region3(&self) -> &A_ROI_REGION3

0x30 - Video A H264 ROI region3 range configure register.

Source

pub fn a_roi_region4(&self) -> &A_ROI_REGION4

0x34 - Video A H264 ROI region4 range configure register.

Source

pub fn a_roi_region5(&self) -> &A_ROI_REGION5

0x38 - Video A H264 ROI region5 range configure register.

Source

pub fn a_roi_region6(&self) -> &A_ROI_REGION6

0x3c - Video A H264 ROI region6 range configure register.

Source

pub fn a_roi_region7(&self) -> &A_ROI_REGION7

0x40 - Video A H264 ROI region7 range configure register.

Source

pub fn a_roi_region0_3_qp(&self) -> &A_ROI_REGION0_3_QP

0x44 - Video A H264 ROI region0, region1,region2,region3 QP register.

Source

pub fn a_roi_region4_7_qp(&self) -> &A_ROI_REGION4_7_QP

0x48 - Video A H264 ROI region4, region5,region6,region7 QP register.

Source

pub fn a_no_roi_region_qp_offset(&self) -> &A_NO_ROI_REGION_QP_OFFSET

0x4c - Video A H264 no roi region QP register.

Source

pub fn a_roi_config(&self) -> &A_ROI_CONFIG

0x50 - Video A H264 ROI configure register.

Source

pub fn b_sys_mb_res(&self) -> &B_SYS_MB_RES

0x54 - Video B horizontal and vertical MB resolution register.

Source

pub fn b_sys_conf(&self) -> &B_SYS_CONF

0x58 - Video B system level configuration register.

Source

pub fn b_deci_score(&self) -> &B_DECI_SCORE

0x5c - Video B luma and chroma MB decimate score Register.

Source

pub fn b_deci_score_offset(&self) -> &B_DECI_SCORE_OFFSET

0x60 - Video B luma and chroma MB decimate score offset Register.

Source

pub fn b_rc_conf0(&self) -> &B_RC_CONF0

0x64 - Video B rate control configuration register0.

Source

pub fn b_rc_conf1(&self) -> &B_RC_CONF1

0x68 - Video B rate control configuration register1.

Source

pub fn b_db_bypass(&self) -> &B_DB_BYPASS

0x6c - Video B Deblocking bypass register

Source

pub fn b_roi_region0(&self) -> &B_ROI_REGION0

0x70 - Video B H264 ROI region0 range configure register.

Source

pub fn b_roi_region1(&self) -> &B_ROI_REGION1

0x74 - Video B H264 ROI region1 range configure register.

Source

pub fn b_roi_region2(&self) -> &B_ROI_REGION2

0x78 - Video B H264 ROI region2 range configure register.

Source

pub fn b_roi_region3(&self) -> &B_ROI_REGION3

0x7c - Video B H264 ROI region3 range configure register.

Source

pub fn b_roi_region4(&self) -> &B_ROI_REGION4

0x80 - Video B H264 ROI region4 range configure register.

Source

pub fn b_roi_region5(&self) -> &B_ROI_REGION5

0x84 - Video B H264 ROI region5 range configure register.

Source

pub fn b_roi_region6(&self) -> &B_ROI_REGION6

0x88 - Video B H264 ROI region6 range configure register.

Source

pub fn b_roi_region7(&self) -> &B_ROI_REGION7

0x8c - Video B H264 ROI region7 range configure register.

Source

pub fn b_roi_region0_3_qp(&self) -> &B_ROI_REGION0_3_QP

0x90 - Video B H264 ROI region0, region1,region2,region3 QP register.

Source

pub fn b_roi_region4_7_qp(&self) -> &B_ROI_REGION4_7_QP

0x94 - Video B H264 ROI region4, region5,region6,region7 QP register.

Source

pub fn b_no_roi_region_qp_offset(&self) -> &B_NO_ROI_REGION_QP_OFFSET

0x98 - Video B H264 no roi region QP register.

Source

pub fn b_roi_config(&self) -> &B_ROI_CONFIG

0x9c - Video B H264 ROI configure register.

Source

pub fn rc_status0(&self) -> &RC_STATUS0

0xa0 - Rate control status register0.

Source

pub fn rc_status1(&self) -> &RC_STATUS1

0xa4 - Rate control status register1.

Source

pub fn rc_status2(&self) -> &RC_STATUS2

0xa8 - Rate control status register2.

Source

pub fn slice_header_remain(&self) -> &SLICE_HEADER_REMAIN

0xac - Frame Slice Header remain bit register.

Source

pub fn slice_header_byte_length(&self) -> &SLICE_HEADER_BYTE_LENGTH

0xb0 - Frame Slice Header byte length register.

Source

pub fn bs_threshold(&self) -> &BS_THRESHOLD

0xb4 - Bitstream buffer overflow threshold register

Source

pub fn slice_header_byte0(&self) -> &SLICE_HEADER_BYTE0

0xb8 - Frame Slice Header byte low 32 bit register.

Source

pub fn slice_header_byte1(&self) -> &SLICE_HEADER_BYTE1

0xbc - Frame Slice Header byte high 32 bit register.

Source

pub fn int_raw(&self) -> &INT_RAW

0xc0 - Interrupt raw status register

Source

pub fn int_st(&self) -> &INT_ST

0xc4 - Interrupt masked status register

Source

pub fn int_ena(&self) -> &INT_ENA

0xc8 - Interrupt enable register

Source

pub fn int_clr(&self) -> &INT_CLR

0xcc - Interrupt clear register

Source

pub fn conf(&self) -> &CONF

0xd0 - General configuration register.

Source

pub fn mv_merge_config(&self) -> &MV_MERGE_CONFIG

0xd4 - Mv merge configuration register.

Source

pub fn debug_dma_sel(&self) -> &DEBUG_DMA_SEL

0xd8 - Debug H264 DMA select register

Source

pub fn sys_status(&self) -> &SYS_STATUS

0xdc - System status register.

Source

pub fn frame_code_length(&self) -> &FRAME_CODE_LENGTH

0xe0 - Frame code byte length register.

Source

pub fn debug_info0(&self) -> &DEBUG_INFO0

0xe4 - Debug information register0.

Source

pub fn debug_info1(&self) -> &DEBUG_INFO1

0xe8 - Debug information register1.

Source

pub fn debug_info2(&self) -> &DEBUG_INFO2

0xec - Debug information register2.

Source

pub fn date(&self) -> &DATE

0xf0 - Version control register

Trait Implementations§

Source§

impl Debug for H264

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Deref for H264

Source§

type Target = RegisterBlock

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Self::Target

Dereferences the value.
Source§

impl Send for H264

Auto Trait Implementations§

§

impl Freeze for H264

§

impl RefUnwindSafe for H264

§

impl !Sync for H264

§

impl Unpin for H264

§

impl UnwindSafe for H264

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.