#include <cstdint>
#include <cstring>
#include "mythtvexp.h"
Go to the source code of this file.
|
enum | FrameType_ {
FMT_NONE = -1,
FMT_RGB24 = 0,
FMT_YV12,
FMT_IA44,
FMT_AI44,
FMT_RGB32,
FMT_ARGB32,
FMT_RGBA32,
FMT_YUV422P,
FMT_BGRA,
FMT_VDPAU,
FMT_VAAPI,
FMT_YUY2,
FMT_DXVA2,
FMT_NV12
} |
|
|
void MTV_PUBLIC | framecopy (VideoFrame *dst, const VideoFrame *src, bool useSSE=true) |
|
static void | init (VideoFrame *vf, VideoFrameType _codec, unsigned char *_buf, int _width, int _height, int _size, const int *p=nullptr, const int *o=nullptr, float _aspect=-1.0f, double _rate=-1.0f, int _aligned=64) |
|
static void | clear (VideoFrame *vf) |
|
static bool | compatible (const VideoFrame *a, const VideoFrame *b) |
|
static int | bitsperpixel (VideoFrameType type) |
|
static void | copy (VideoFrame *dst, const VideoFrame *src) |
| copy: copy one frame into another copy only works with the following assumptions: frames are of the same resolution destination frame is in YV12 format source frame is either YV12 or NV12 format More...
|
|
static uint | buffersize (VideoFrameType type, int width, int height, int _aligned=64) |
|
static void | copybuffer (VideoFrame *dst, uint8_t *buffer, int pitch, VideoFrameType type=FMT_YV12) |
|
static void | copybuffer (uint8_t *dstbuffer, const VideoFrame *src, int pitch=0, VideoFrameType type=FMT_YV12) |
|
◆ VideoFrameType
◆ VideoFrame
◆ FrameType_
Enumerator |
---|
FMT_NONE | |
FMT_RGB24 | |
FMT_YV12 | |
FMT_IA44 | |
FMT_AI44 | |
FMT_RGB32 | endian dependent format, ARGB or BGRA
|
FMT_ARGB32 | |
FMT_RGBA32 | |
FMT_YUV422P | |
FMT_BGRA | |
FMT_VDPAU | |
FMT_VAAPI | |
FMT_YUY2 | |
FMT_DXVA2 | |
FMT_NV12 | |
Definition at line 17 of file mythframe.h.
◆ framecopy()
◆ init()
static void init |
( |
VideoFrame * |
vf, |
|
|
VideoFrameType |
_codec, |
|
|
unsigned char * |
_buf, |
|
|
int |
_width, |
|
|
int |
_height, |
|
|
int |
_size, |
|
|
const int * |
p = nullptr , |
|
|
const int * |
o = nullptr , |
|
|
float |
_aspect = -1.0f , |
|
|
double |
_rate = -1.0f , |
|
|
int |
_aligned = 64 |
|
) |
| |
|
inlinestatic |
Definition at line 109 of file mythframe.h.
Referenced by VideoBuffers::AddBuffer(), copybuffer(), VAAPIContext::CopySurfaceToFrame(), VideoBuffers::CreateBuffer(), VideoBuffers::CreateBuffers(), VideoOutputNull::CreatePauseFrame(), VideoOutputOpenGL::CreatePauseFrame(), VideoOutputOMX::CreatePauseFrame(), VideoOutputD3D::CreatePauseFrame(), VideoOutputXv::CreatePauseFrame(), VideoOutputOMX::DeleteBuffers(), NetSearch::DoSearch(), NuppelVideoRecorder::doWriteThread(), PrivateDecoderCrystalHD::FillFrame(), MythAVCopy::FillFrame(), PrivateDecoderOMX::GetBufferedFrame(), MFileInfo::setFile(), VideoOutput::ShowPIP(), Transcode::TranscodeFile(), and VideoOutputOMX::VideoOutputOMX().
◆ clear()
◆ compatible()
◆ bitsperpixel()
◆ copy()
copy: copy one frame into another copy only works with the following assumptions: frames are of the same resolution destination frame is in YV12 format source frame is either YV12 or NV12 format
Definition at line 256 of file mythframe.h.
Referenced by copybuffer().
◆ buffersize()
Definition at line 291 of file mythframe.h.
Referenced by VideoBuffers::AddBuffer(), AVPictureFill(), MythAVCopy::Copy(), VideoBuffers::CreateBuffers(), VideoOutputOMX::CreateBuffers(), VideoOutputOpenGL::CreatePauseFrame(), VideoOutputXv::CreatePauseFrame(), VideoOutput::DoPipResize(), PrivateDecoderCrystalHD::FillFrame(), NuppelVideoRecorder::InitBuffers(), VideoOutputXv::PrepareFrameMem(), and Transcode::TranscodeFile().
◆ copybuffer() [1/2]
◆ copybuffer() [2/2]