This project provides a CUDA-accelerated solution for converting video frames from the V210 (YUV 4:2:2) format to RGB. It's designed for high-performance color space conversion, particularly useful in video processing workflows. English | 简体中文 | 日本語
- V210 to RGB Conversion: Efficiently converts 10-bit YUV 4:2:2 (V210) raw video data into 8-bit RGB format.
- CUDA Acceleration: Leverages NVIDIA GPUs for parallel processing, ensuring fast conversion times.
- Bitmap Output: Generates standard BMP image files from the converted RGB data.
- Resolution Support: Supports various resolutions including 8K, 4K, and HD.
This project uses CUDA, so you will need the NVIDIA CUDA Toolkit installed on your system.
-
Prerequisites:
- NVIDIA GPU
- NVIDIA CUDA Toolkit (including
nvcc
compiler) - A C++ compiler (e.g., GCC, MSVC)
-
Compilation Command: Navigate to the project directory in your terminal and run the following command:
nvcc -o ConvertV210 kernel.cu -lcuda -lcudart
nvcc
: The NVIDIA CUDA Compiler.-o ConvertV210
: Specifies the output executable name.kernel.cu
: The main CUDA source file.-lcuda -lcudart
: Links against the CUDA driver and runtime libraries.
After successful compilation, you can run the executable with a V210 raw video file as input. The program will convert the frames and output a .bmp
file.
./ConvertV210 sample02.raw
Replace sample02.raw
with the path to your V210 raw video file. The output bitmap file will be named sample02.bmp
(or whatever the input file name was, with a .bmp
extension).