MediaX v1.0.0rc7 [7e6cb74]
Video streaming for military vehicles
Loading...
Searching...
No Matches
colourspace_cuda.h
Go to the documentation of this file.
1//
2// Copyright (c) 2025, Astute Systems PTY LTD
3//
4// This file is part of the VivoeX project developed by Astute Systems.
5//
6// Licensed under the Attribution-NonCommercial 4.0 International (CC BY-NC 4.0)
7// License. See the LICENSE file in the project root for full license details.
8//
13
14#ifndef UTILS_COLOURSPACE_CUDA_H_
15#define UTILS_COLOURSPACE_CUDA_H_
16
17#include <stdint.h>
18
19#include "utils/colourspace.h"
20
22namespace mediax::video {
23
26 public:
32
41 int RgbToYuv(uint32_t height, uint32_t width, uint8_t *rgb, uint8_t *yuv) const final;
42
51 int RgbToMono8(uint32_t height, uint32_t width, uint8_t *rgb, uint8_t *mono8) const final;
52
61 int RgbToMono16(uint32_t height, uint32_t width, uint8_t *rgb, uint8_t *mono16) const final;
62
71 int RgbaToYuv(uint32_t width, uint32_t height, uint8_t *rgba, uint8_t *yuv) const final;
72
81 int RgbaToRgb(uint32_t width, uint32_t height, uint8_t *rgba, uint8_t *rgb) const final;
82
91 int YuvToBgra(uint32_t height, uint32_t width, uint8_t *yuv, uint8_t *rgba) const final;
92
101 int YuvToRgb(uint32_t height, uint32_t width, uint8_t *yuv, uint8_t *rgb) const final;
102};
103
104} // namespace mediax::video
105
106#endif // UTILS_COLOURSPACE_CUDA_H_
Helper functions for different colour space options, optimised for CUDA (NVidia)
Definition colourspace_cuda.h:25
int RgbaToRgb(uint32_t width, uint32_t height, uint8_t *rgba, uint8_t *rgb) const final
Convert RGBA to RGB.
ColourSpaceCuda() final
Construct a new Colour Space object.
int RgbToMono8(uint32_t height, uint32_t width, uint8_t *rgb, uint8_t *mono8) const final
Convert RGB to Monochrome 8 bits ber pixel.
int YuvToBgra(uint32_t height, uint32_t width, uint8_t *yuv, uint8_t *rgba) const final
Convert YUV to RGBA.
int RgbaToYuv(uint32_t width, uint32_t height, uint8_t *rgba, uint8_t *yuv) const final
Convert RGBA to YUV.
int RgbToYuv(uint32_t height, uint32_t width, uint8_t *rgb, uint8_t *yuv) const final
Convert YUV to RGBA.
int YuvToRgb(uint32_t height, uint32_t width, uint8_t *yuv, uint8_t *rgb) const final
Convert YUV to RGB.
int RgbToMono16(uint32_t height, uint32_t width, uint8_t *rgb, uint8_t *mono16) const final
Convert RGB to Monochrome 16 bits ber pixel.
Helper functions for different colour space options, base class.
Definition colourspace.h:22
Functions to convert between different colour spaces.
The video functions namespace.
Definition colourspace.h:19