MythTV master
mythmmalcontext.h
Go to the documentation of this file.
1#ifndef MYTHMMALCONTEXT_H
2#define MYTHMMALCONTEXT_H
3
4// MythTV
5#include "mythcodeccontext.h"
7
8using MMALProfiles = QList<MythCodecContext::CodecProfile>;
9
11{
12 public:
14 ~MythMMALContext() override;
15 static MythCodecID GetSupportedCodec(AVCodecContext **Context,
16 const AVCodec **Codec,
17 const QString &Decoder,
18 AVStream *Stream,
19 uint StreamType);
20 void InitVideoCodec (AVCodecContext *Context, bool SelectedStream, bool &DirectRendering) override;
21 bool RetrieveFrame (AVCodecContext *Context, MythVideoFrame *Frame, AVFrame *AvFrame) override;
22 int HwDecoderInit (AVCodecContext *Context) override;
23 void SetDecoderOptions (AVCodecContext *Context, const AVCodec *Codec) override;
24 static bool GetBuffer (AVCodecContext *Context, MythVideoFrame *Frame, AVFrame *AvFrame, int);
25 bool GetBuffer2 (AVCodecContext *Context, MythVideoFrame *Frame, AVFrame *AvFrame, int);
26 static enum AVPixelFormat GetFormat (AVCodecContext*, const AVPixelFormat *PixFmt);
27 static void GetDecoderList (QStringList &Decoders);
28 static bool HaveMMAL (bool Reinit = false);
29 static bool CheckCodecSize (int Width, int Height, MythCodecContext::CodecProfile Profile);
30
31 protected:
32 static const MMALProfiles& GetProfiles(void);
34};
35
36#endif // MYTHMMALCONTEXT_H
AVFrame AVFrame
static const MMALProfiles & GetProfiles(void)
static bool GetBuffer(AVCodecContext *Context, MythVideoFrame *Frame, AVFrame *AvFrame, int)
MythMMALInterop * m_interop
int HwDecoderInit(AVCodecContext *Context) override
static bool HaveMMAL(bool Reinit=false)
~MythMMALContext() override
bool RetrieveFrame(AVCodecContext *Context, MythVideoFrame *Frame, AVFrame *AvFrame) override
bool GetBuffer2(AVCodecContext *Context, MythVideoFrame *Frame, AVFrame *AvFrame, int)
void InitVideoCodec(AVCodecContext *Context, bool SelectedStream, bool &DirectRendering) override
static bool CheckCodecSize(int Width, int Height, MythCodecContext::CodecProfile Profile)
void SetDecoderOptions(AVCodecContext *Context, const AVCodec *Codec) override
static void GetDecoderList(QStringList &Decoders)
static MythCodecID GetSupportedCodec(AVCodecContext **Context, const AVCodec **Codec, const QString &Decoder, AVStream *Stream, uint StreamType)
static enum AVPixelFormat GetFormat(AVCodecContext *, const AVPixelFormat *PixFmt)
MythMMALContext(DecoderBase *Parent, MythCodecID Codec)
unsigned int uint
Definition: compat.h:68
MythCodecID
Definition: mythcodecid.h:14
QList< MythCodecContext::CodecProfile > MMALProfiles