MythTV
master
|
#include <libmythtv/decoders/mythmediacodeccontext.h>
Public Member Functions | |
MythMediaCodecContext (DecoderBase *Parent, MythCodecID CodecID) | |
void | InitVideoCodec (AVCodecContext *Context, bool SelectedStream, bool &DirectRendering) override |
int | HwDecoderInit (AVCodecContext *Context) override |
bool | RetrieveFrame (AVCodecContext *Context, MythVideoFrame *Frame, AVFrame *AvFrame) override |
void | PostProcessFrame (AVCodecContext *, MythVideoFrame *) override |
Mark all MediaCodec decoded frames as progressive,. More... | |
bool | IsDeinterlacing (bool &DoubleRate, bool=false) override |
![]() | |
MythCodecContext (DecoderBase *Parent, MythCodecID CodecID) | |
virtual | ~MythCodecContext ()=default |
virtual int | FilteredReceiveFrame (AVCodecContext *Context, AVFrame *Frame) |
Retrieve and process/filter AVFrame. More... | |
virtual void | SetDeinterlacing (AVCodecContext *, MythVideoProfile *, bool) |
virtual void | SetDecoderOptions (AVCodecContext *, const AVCodec *) |
virtual bool | DecoderWillResetOnFlush (void) |
virtual bool | DecoderWillResetOnAspect (void) |
virtual bool | DecoderNeedsReset (AVCodecContext *) |
Static Public Member Functions | |
static MythCodecID | GetBestSupportedCodec (AVCodecContext **Context, const AVCodec **Codec, const QString &Decoder, AVStream *Stream, uint StreamType) |
static AVPixelFormat | GetFormat (AVCodecContext *, const AVPixelFormat *PixFmt) |
static void | GetDecoderList (QStringList &Decoders) |
static bool | HaveMediaCodec (bool Reinit=false) |
![]() | |
static MythCodecContext * | CreateContext (DecoderBase *Parent, MythCodecID Codec) |
static void | GetDecoders (RenderOptions &Opts, bool Reinit=false) |
static QStringList | GetDecoderDescription (void) |
static MythCodecID | FindDecoder (const QString &Decoder, AVStream *Stream, AVCodecContext **Context, const AVCodec **Codec) |
static int | GetBuffer (struct AVCodecContext *Context, AVFrame *Frame, int Flags) |
A generic hardware buffer initialisation method when using AVHWFramesContext. More... | |
static bool | GetBuffer2 (struct AVCodecContext *Context, MythVideoFrame *Frame, AVFrame *AvFrame, int Flags) |
A generic hardware buffer initialisation method when AVHWFramesContext is NOT used. More... | |
static int | InitialiseDecoder (AVCodecContext *Context, CreateHWDecoder Callback, const QString &Debug) |
Initialise a hardware decoder that is expected to use AVHWFramesContext. More... | |
static int | InitialiseDecoder2 (AVCodecContext *Context, CreateHWDecoder Callback, const QString &Debug) |
Initialise a hardware decoder that is NOT expected to use AVHWFramesContext. More... | |
static void | ReleaseBuffer (void *Opaque, uint8_t *Data) |
static void | FramesContextFinished (AVHWFramesContext *Context) |
static void | DeviceContextFinished (AVHWDeviceContext *Context) |
static void | CreateDecoderCallback (void *Wait, void *Context, void *Callback) |
static MythPlayerUI * | GetPlayerUI (AVCodecContext *Context) |
static bool | FrameTypeIsSupported (AVCodecContext *Context, VideoFrameType Format) |
static AVBufferRef * | CreateDevice (AVHWDeviceType Type, MythInteropGPU *Interop, const QString &Device=QString()) |
static bool | IsUnsupportedProfile (AVCodecContext *Context) |
Most hardware decoders do not support these codecs/profiles. More... | |
static QString | GetProfileDescription (CodecProfile Profile, QSize Size, VideoFrameType Format=FMT_NONE, uint ColorDepth=0) |
static CodecProfile | FFmpegToMythProfile (AVCodecID CodecID, int Profile) |
Static Private Member Functions | |
static MCProfiles & | GetProfiles (void) |
static int | InitialiseDecoder (AVCodecContext *Context) |
Definition at line 16 of file mythmediacodeccontext.h.
MythMediaCodecContext::MythMediaCodecContext | ( | DecoderBase * | Parent, |
MythCodecID | CodecID | ||
) |
Definition at line 280 of file mythmediacodeccontext.cpp.
|
overridevirtual |
Reimplemented from MythCodecContext.
Definition at line 285 of file mythmediacodeccontext.cpp.
|
overridevirtual |
Reimplemented from MythCodecContext.
Definition at line 298 of file mythmediacodeccontext.cpp.
|
overridevirtual |
Reimplemented from MythCodecContext.
Definition at line 307 of file mythmediacodeccontext.cpp.
|
static |
Definition at line 220 of file mythmediacodeccontext.cpp.
Referenced by MythCodecContext::FindDecoder().
|
static |
Definition at line 316 of file mythmediacodeccontext.cpp.
Referenced by InitVideoCodec().
|
overridevirtual |
Mark all MediaCodec decoded frames as progressive,.
Reimplemented from MythCodecContext.
Definition at line 331 of file mythmediacodeccontext.cpp.
/brief Say yes
Reimplemented from MythCodecContext.
Definition at line 349 of file mythmediacodeccontext.cpp.
|
static |
Definition at line 494 of file mythmediacodeccontext.cpp.
Referenced by MythCodecContext::GetDecoderDescription().
Definition at line 505 of file mythmediacodeccontext.cpp.
Referenced by GetBestSupportedCodec(), and MythCodecContext::GetDecoders().
|
staticprivate |
Definition at line 355 of file mythmediacodeccontext.cpp.
Referenced by GetBestSupportedCodec(), GetDecoderList(), and HaveMediaCodec().
|
staticprivate |
Definition at line 173 of file mythmediacodeccontext.cpp.
Referenced by HwDecoderInit().