#include <DVDVideoCodecDRMPRIME.h>
|
static enum AVPixelFormat | GetFormat (struct AVCodecContext *avctx, const enum AVPixelFormat *fmt) |
|
static int | GetBuffer (struct AVCodecContext *avctx, AVFrame *frame, int flags) |
|
◆ CDVDVideoCodecDRMPRIME()
CDVDVideoCodecDRMPRIME::CDVDVideoCodecDRMPRIME |
( |
CProcessInfo & | processInfo | ) |
|
|
explicit |
◆ ~CDVDVideoCodecDRMPRIME()
CDVDVideoCodecDRMPRIME::~CDVDVideoCodecDRMPRIME |
( |
| ) |
|
|
override |
◆ AddData()
add data, decoder has to consume the entire packet returns true if the packet was consumed or if resubmitting it is useless
- Todo
- : properly handle avpkt side_data. this works around our improper use of the side_data
Implements CDVDVideoCodec.
◆ Create()
◆ Drain()
void CDVDVideoCodecDRMPRIME::Drain |
( |
| ) |
|
|
protected |
◆ GetAllowedReferences()
unsigned CDVDVideoCodecDRMPRIME::GetAllowedReferences |
( |
| ) |
|
|
inlineoverridevirtual |
Number of references to old pictures that are allowed to be retained when calling decode on the next demux packet
Reimplemented from CDVDVideoCodec.
◆ GetBuffer()
int CDVDVideoCodecDRMPRIME::GetBuffer |
( |
struct AVCodecContext * | avctx, |
|
|
AVFrame * | frame, |
|
|
int | flags ) |
|
staticprotected |
◆ GetFormat()
enum AVPixelFormat CDVDVideoCodecDRMPRIME::GetFormat |
( |
struct AVCodecContext * | avctx, |
|
|
const enum AVPixelFormat * | fmt ) |
|
staticprotected |
◆ GetName()
const char * CDVDVideoCodecDRMPRIME::GetName |
( |
| ) |
|
|
inlineoverridevirtual |
◆ GetPicture()
GetPicture controls decoding. Player calls it on every cycle it can signal a picture, request a buffer, or return none, if nothing applies the data is valid until the next GetPicture return VC_PICTURE
Implements CDVDVideoCodec.
◆ Open()
Open the decoder, returns true on success Decoders not capable of running multiple instances should return false in case there is already a instance open
- Todo
- : fix with proper device when dma-hints wayland protocol works
Implements CDVDVideoCodec.
◆ Register()
void CDVDVideoCodecDRMPRIME::Register |
( |
| ) |
|
|
static |
◆ Reset()
void CDVDVideoCodecDRMPRIME::Reset |
( |
| ) |
|
|
overridevirtual |
Reset the decoder. Should be the same as calling Dispose and Open after each other
Implements CDVDVideoCodec.
◆ SetCodecControl()
void CDVDVideoCodecDRMPRIME::SetCodecControl |
( |
int | flags | ) |
|
|
overridevirtual |
Codec can be informed by player with the following flags:
DVD_CODEC_CTRL_NO_POSTPROC : if speed is not normal the codec can switch off postprocessing and de-interlacing
DVD_CODEC_CTRL_HURRY : codecs may do postprocessing and de-interlacing. If video buffers in RenderManager are about to run dry, this is signaled to codec. Codec can wait for post-proc to be finished instead of returning empty and getting another packet.
DVD_CODEC_CTRL_DRAIN : instruct decoder to deliver last pictures without requesting new packets
DVD_CODEC_CTRL_DROP : this packet is going to be dropped. decoder is free to use it for decoding
Reimplemented from CDVDVideoCodec.
◆ SetPictureParams()
◆ UpdateProcessInfo()
void CDVDVideoCodecDRMPRIME::UpdateProcessInfo |
( |
struct AVCodecContext * | avctx, |
|
|
const enum AVPixelFormat | fmt ) |
|
protected |
◆ m_codecControlFlags
int CDVDVideoCodecDRMPRIME::m_codecControlFlags = 0 |
|
protected |
◆ m_DAR
double CDVDVideoCodecDRMPRIME::m_DAR = 1.0 |
|
protected |
◆ m_hints
◆ m_name
std::string CDVDVideoCodecDRMPRIME::m_name |
|
protected |
◆ m_pCodecContext
AVCodecContext* CDVDVideoCodecDRMPRIME::m_pCodecContext = nullptr |
|
protected |
◆ m_pFrame
AVFrame* CDVDVideoCodecDRMPRIME::m_pFrame = nullptr |
|
protected |
◆ m_videoBufferPool
The documentation for this class was generated from the following files: