pub struct VaapiBackend<M, H>{ /* private fields */ }Implementations§
Source§impl<M, H> VaapiBackend<M, H>
impl<M, H> VaapiBackend<M, H>
pub fn new( display: Rc<Display>, va_profile: Type, fourcc: Fourcc, coded_size: Resolution, bitrate_control: u32, low_power: bool, ) -> StatelessBackendResult<Self>
Trait Implementations§
Source§impl<M, H> StatelessAV1EncoderBackend for VaapiBackend<M, H>
impl<M, H> StatelessAV1EncoderBackend for VaapiBackend<M, H>
Source§fn encode_tile_group(
&mut self,
request: BackendRequest<Self::Picture, Self::Reconstructed>,
) -> StatelessBackendResult<(Self::ReconPromise, Self::CodedPromise)>
fn encode_tile_group( &mut self, request: BackendRequest<Self::Picture, Self::Reconstructed>, ) -> StatelessBackendResult<(Self::ReconPromise, Self::CodedPromise)>
Submit a
BackendRequest to the backend. This operation returns both a
StatelessVideoEncoderBackend::ReconPromise and a
StatelessVideoEncoderBackend::CodedPromise with resulting slice data.Source§impl<M, Handle> StatelessEncoderBackendImport<Handle, Handle> for VaapiBackend<M, Handle>
impl<M, Handle> StatelessEncoderBackendImport<Handle, Handle> for VaapiBackend<M, Handle>
Source§fn import_picture(
&mut self,
_metadata: &FrameMetadata,
handle: Handle,
) -> StatelessBackendResult<Handle>
fn import_picture( &mut self, _metadata: &FrameMetadata, handle: Handle, ) -> StatelessBackendResult<Handle>
Imports the input
handle from client and transforms into PictureSource§impl<M> StatelessEncoderBackendImport<M, Surface<M>> for VaapiBackend<M, Surface<M>>where
M: SurfaceMemoryDescriptor,
impl<M> StatelessEncoderBackendImport<M, Surface<M>> for VaapiBackend<M, Surface<M>>where
M: SurfaceMemoryDescriptor,
Source§fn import_picture(
&mut self,
meta: &FrameMetadata,
handle: M,
) -> StatelessBackendResult<Surface<M>>
fn import_picture( &mut self, meta: &FrameMetadata, handle: M, ) -> StatelessBackendResult<Surface<M>>
Imports the input
handle from client and transforms into PictureSource§impl<M, H> StatelessH264EncoderBackend for VaapiBackend<M, H>
impl<M, H> StatelessH264EncoderBackend for VaapiBackend<M, H>
Source§fn encode_slice(
&mut self,
request: BackendRequest<H, Reconstructed>,
) -> StatelessBackendResult<(Self::ReconPromise, Self::CodedPromise)>
fn encode_slice( &mut self, request: BackendRequest<H, Reconstructed>, ) -> StatelessBackendResult<(Self::ReconPromise, Self::CodedPromise)>
Submit a
BackendRequest to the backend. This operation returns both a
StatelessVideoEncoderBackend::CodedPromise and a
StatelessVideoEncoderBackend::ReconPromise with resulting slice data.Source§impl<M, Handle> StatelessVP9EncoderBackend for VaapiBackend<M, Handle>
impl<M, Handle> StatelessVP9EncoderBackend for VaapiBackend<M, Handle>
fn encode_frame( &mut self, request: BackendRequest<Self::Picture, Self::Reconstructed>, ) -> StatelessBackendResult<(Self::ReconPromise, Self::CodedPromise)>
Source§impl<M, Handle> StatelessVideoEncoderBackend<AV1> for VaapiBackend<M, Handle>
impl<M, Handle> StatelessVideoEncoderBackend<AV1> for VaapiBackend<M, Handle>
Source§type Picture = Handle
type Picture = Handle
Backend’s specific representation of the input frame, transformed with
import_picture.
Might be a wrapper of the input handle with additional backend specific data or a copy of
an input frame in internal backend’s representation.Source§type Reconstructed = Reconstructed
type Reconstructed = Reconstructed
Backend’s reconstructed frame handle.
Source§type CodedPromise = CodedOutputPromise<M, Handle>
type CodedPromise = CodedOutputPromise<M, Handle>
Backend’s specific
BackendPromise for bitstream, a result of
StatelessCodec::Request submission.Source§type ReconPromise = ReadyPromise<<VaapiBackend<M, Handle> as StatelessVideoEncoderBackend<AV1>>::Reconstructed>
type ReconPromise = ReadyPromise<<VaapiBackend<M, Handle> as StatelessVideoEncoderBackend<AV1>>::Reconstructed>
Backend’s specific
BackendPromise for StatelessVideoEncoderBackend::Reconstructed,
a result of StatelessCodec::Request submission.Source§impl<M, H> StatelessVideoEncoderBackend<H264> for VaapiBackend<M, H>
impl<M, H> StatelessVideoEncoderBackend<H264> for VaapiBackend<M, H>
Source§type Picture = H
type Picture = H
Backend’s specific representation of the input frame, transformed with
import_picture.
Might be a wrapper of the input handle with additional backend specific data or a copy of
an input frame in internal backend’s representation.Source§type Reconstructed = Reconstructed
type Reconstructed = Reconstructed
Backend’s reconstructed frame handle.
Source§type CodedPromise = CodedOutputPromise<M, H>
type CodedPromise = CodedOutputPromise<M, H>
Backend’s specific
BackendPromise for bitstream, a result of
StatelessCodec::Request submission.Source§type ReconPromise = ReadyPromise<<VaapiBackend<M, H> as StatelessVideoEncoderBackend<H264>>::Reconstructed>
type ReconPromise = ReadyPromise<<VaapiBackend<M, H> as StatelessVideoEncoderBackend<H264>>::Reconstructed>
Backend’s specific
BackendPromise for StatelessVideoEncoderBackend::Reconstructed,
a result of StatelessCodec::Request submission.Source§impl<M, Handle> StatelessVideoEncoderBackend<VP9> for VaapiBackend<M, Handle>
impl<M, Handle> StatelessVideoEncoderBackend<VP9> for VaapiBackend<M, Handle>
Source§type Picture = Handle
type Picture = Handle
Backend’s specific representation of the input frame, transformed with
import_picture.
Might be a wrapper of the input handle with additional backend specific data or a copy of
an input frame in internal backend’s representation.Source§type Reconstructed = Reconstructed
type Reconstructed = Reconstructed
Backend’s reconstructed frame handle.
Source§type CodedPromise = CodedOutputPromise<M, Handle>
type CodedPromise = CodedOutputPromise<M, Handle>
Backend’s specific
BackendPromise for bitstream, a result of
StatelessCodec::Request submission.Source§type ReconPromise = ReadyPromise<<VaapiBackend<M, Handle> as StatelessVideoEncoderBackend<VP9>>::Reconstructed>
type ReconPromise = ReadyPromise<<VaapiBackend<M, Handle> as StatelessVideoEncoderBackend<VP9>>::Reconstructed>
Backend’s specific
BackendPromise for StatelessVideoEncoderBackend::Reconstructed,
a result of StatelessCodec::Request submission.Auto Trait Implementations§
impl<M, H> Freeze for VaapiBackend<M, H>
impl<M, H> !RefUnwindSafe for VaapiBackend<M, H>
impl<M, H> !Send for VaapiBackend<M, H>
impl<M, H> !Sync for VaapiBackend<M, H>
impl<M, H> Unpin for VaapiBackend<M, H>
impl<M, H> !UnwindSafe for VaapiBackend<M, H>
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