Leviathan  0.8.0.0
Leviathan game engine
YUVToRGB.h
Go to the documentation of this file.
1 // Leviathan Game Engine
2 // Copyright (c) 2012-2019 Henri Hyyryläinen
3 #pragma once
4 #include "Define.h"
5 // ------------------------------------ //
6 #include <array>
7 #include <tuple>
8 
9 namespace Leviathan {
10 
11 enum class YUV_COLOUR_SPACE { BT_601 = 0 };
12 
17 DLLEXPORT bool YUVToRGBA(const std::array<const uint8_t*, 3>& planes,
18  const std::array<int, 3>& strides, const std::array<std::tuple<int, int>, 3>& planesizes,
19  bool bytesare16bit, uint8_t* target, size_t width, size_t height,
21 
22 } // namespace Leviathan
YUV_COLOUR_SPACE
Definition: YUVToRGB.h:11
DLLEXPORT bool YUVToRGBA(const std::array< const uint8_t *, 3 > &planes, const std::array< int, 3 > &strides, const std::array< std::tuple< int, int >, 3 > &planesizes, bool bytesare16bit, uint8_t *target, size_t width, size_t height, YUV_COLOUR_SPACE colourtype=YUV_COLOUR_SPACE::BT_601)
Converts a few kinds of supported YUV formats to RGBA.
Definition: YUVToRGB.cpp:128
unsigned char uint8_t
Definition: core.h:38
#define DLLEXPORT
Definition: Include.h:84
The access mask controls which registered functions and classes a script sees.
Definition: GameModule.h:12