MythTV  master
mythvdpaucontext.h
Go to the documentation of this file.
1 #ifndef MYTHVDPAUCONTEXT_H
2 #define MYTHVDPAUCONTEXT_H
3 
4 // MythTV
5 #include "mythcodeccontext.h"
6 
8 {
9  public:
10  MythVDPAUContext(DecoderBase *Parent, MythCodecID CodecID);
11 
12  void InitVideoCodec (AVCodecContext *Context, bool SelectedStream, bool &DirectRendering) override;
13  bool RetrieveFrame (AVCodecContext *Context, MythVideoFrame* Frame, AVFrame* AvFrame) override;
14  bool DecoderWillResetOnFlush (void) override;
15  bool DecoderWillResetOnAspect (void) override;
16  bool DecoderNeedsReset (AVCodecContext *Context) override;
17 
18  static MythCodecID GetSupportedCodec (AVCodecContext **CodecContext,
19  const AVCodec **Codec,
20  const QString &Decoder,
21  uint StreamType);
22  static enum AVPixelFormat GetFormat (AVCodecContext *Context,
23  const enum AVPixelFormat *PixFmt);
24  static enum AVPixelFormat GetFormat2 (AVCodecContext *Context,
25  const enum AVPixelFormat *PixFmt);
26 
27  private:
28  static int InitialiseContext (AVCodecContext *Context);
29 };
30 
31 #endif // MYTHVDPAUCONTEXT_H
MythVDPAUContext::DecoderWillResetOnAspect
bool DecoderWillResetOnAspect(void) override
Definition: mythvdpaucontext.cpp:238
MythVDPAUContext::InitialiseContext
static int InitialiseContext(AVCodecContext *Context)
Create a VDPAU device for use with direct rendering.
Definition: mythvdpaucontext.cpp:32
Frame
Definition: zmdefines.h:93
MythVDPAUContext::MythVDPAUContext
MythVDPAUContext(DecoderBase *Parent, MythCodecID CodecID)
Definition: mythvdpaucontext.cpp:26
MythVDPAUContext::GetFormat
static enum AVPixelFormat GetFormat(AVCodecContext *Context, const enum AVPixelFormat *PixFmt)
\ brief Confirm pixel format and create VDPAU device for direct rendering (MythVDPAUInterop required)
Definition: mythvdpaucontext.cpp:190
MythCodecID
MythCodecID
Definition: mythcodecid.h:10
AVFrame
struct AVFrame AVFrame
Definition: BorderDetector.h:15
Decoder
Definition: decoder.h:70
uint
unsigned int uint
Definition: compat.h:81
MythVDPAUContext::GetSupportedCodec
static MythCodecID GetSupportedCodec(AVCodecContext **CodecContext, const AVCodec **Codec, const QString &Decoder, uint StreamType)
Definition: mythvdpaucontext.cpp:120
MythVDPAUContext
Definition: mythvdpaucontext.h:7
MythVDPAUContext::RetrieveFrame
bool RetrieveFrame(AVCodecContext *Context, MythVideoFrame *Frame, AVFrame *AvFrame) override
Definition: mythvdpaucontext.cpp:224
MythVDPAUContext::GetFormat2
static enum AVPixelFormat GetFormat2(AVCodecContext *Context, const enum AVPixelFormat *PixFmt)
\ brief Confirm pixel format and create VDPAU device for copy back (no MythVDPAUInterop required)
Definition: mythvdpaucontext.cpp:203
mythcodeccontext.h
MythVDPAUContext::DecoderWillResetOnFlush
bool DecoderWillResetOnFlush(void) override
Definition: mythvdpaucontext.cpp:233
MythCodecContext
Definition: mythcodeccontext.h:52
MythVideoFrame
Definition: mythframe.h:88
MythVDPAUContext::DecoderNeedsReset
bool DecoderNeedsReset(AVCodecContext *Context) override
Report whether the decoder is known to be errored.
Definition: mythvdpaucontext.cpp:252
MythVDPAUContext::InitVideoCodec
void InitVideoCodec(AVCodecContext *Context, bool SelectedStream, bool &DirectRendering) override
Definition: mythvdpaucontext.cpp:274
DecoderBase
Definition: decoderbase.h:120