Kodi Documentation 23.0
Kodi is an open source media player and entertainment hub.
Loading...
Searching...
No Matches
FrameReduction.h File Reference
#include <cstdint>
#include <vector>

Classes

struct  KODI::VIDEO::GEOMETRY::ReductionSource
 A non-owning view of one decoded 4:2:0 frame with interleaved chroma, as NV12 and P010 lay it out. Samples deeper than 8 bits are little-endian uint16_t, and highAligned says where the significant bits sit in the word. More...
 
struct  KODI::VIDEO::GEOMETRY::ReducedSize
 The extent a reduction produces; zero in both dimensions when none is possible. More...
 
struct  KODI::VIDEO::GEOMETRY::ReducedFrame
 A small CPU-readable copy of a decoded picture: planar 8-bit YUV420, tightly packed. The plane vectors are reused across frames. More...
 

Namespaces

namespace  KODI
 
namespace  KODI::VIDEO
 
namespace  KODI::VIDEO::GEOMETRY
 

Functions

ReducedSize KODI::VIDEO::GEOMETRY::ReductionOutputSize (unsigned int sourceWidth, unsigned int sourceHeight, unsigned int targetWidth)
 The extent ReduceFrame produces: targetWidth clamped to the source, the height following its shape, both even. Exposed so a GPU reducer can size its blit target the same.
 
bool KODI::VIDEO::GEOMETRY::ReduceFrame (const ReductionSource &source, unsigned int targetWidth, ReducedFrame &out)
 Downscale a decoded frame to a small planar 8-bit YUV420 copy on the CPU, each output sample being the box average of the source samples it covers. False when the source is not describable, leaving out untouched.