BabitMF / bmf

Cross-platform, customizable multimedia/video processing framework. With strong GPU acceleration, heterogeneous design, multi-language support, easy to use, multi-framework compatible and high performance, the framework is ideal for transcoding, AI inference, algorithm integration, live video streaming, and more.
https://babitmf.github.io/
Apache License 2.0
809 stars 71 forks source link

[swscaler @ 0x7fc7d6f80fc0] No accelerated colorspace conversion found from yuv420p to rgb24. #117

Closed JackLau1222 closed 1 month ago

JackLau1222 commented 6 months ago

when i want to run the enhance_demo, i meet the bug, i know it's from ffmpeg, but my computer is in CUDA environment, and the gpu was using by python when i run the demo, i test two computer, still same thing.

i use the docker you provided docker pull babitmf/bmf_runtime:latest

1080Ti CUDA 12.2

+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 535.161.08             Driver Version: 535.161.08   CUDA Version: 12.2     |
|-----------------------------------------+----------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |         Memory-Usage | GPU-Util  Compute M. |
|                                         |                      |               MIG M. |
|=========================================+======================+======================|
|   0  NVIDIA GeForce GTX 1080 Ti     Off | 00000000:03:00.0 Off |                  N/A |
| 31%   53C    P2             221W / 250W |    496MiB / 11264MiB |     26%      Default |
|                                         |                      |                  N/A |
+-----------------------------------------+----------------------+----------------------+

+---------------------------------------------------------------------------------------+
| Processes:                                                                            |
|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |
|        ID   ID                                                             Usage      |
|=======================================================================================|
|    0   N/A  N/A      1872      G   /usr/libexec/Xorg                            56MiB |
|    0   N/A  N/A      2189      G   /usr/bin/gnome-shell                          7MiB |
|    0   N/A  N/A      3434      C   python3.8                                   428MiB |
+---------------------------------------------------------------------------------------+

V100 CUDA 11.4

[root@node02 ~]# nvidia-smi 
Fri May 24 10:59:34 2024       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 470.57.02    Driver Version: 470.57.02    CUDA Version: 11.4     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  Tesla V100-PCIE...  Off  | 00000000:18:00.0 Off |                    0 |
| N/A   44C    P0    37W / 250W |   4846MiB / 16160MiB |     17%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
|   1  Tesla V100-PCIE...  Off  | 00000000:3B:00.0 Off |                    0 |
| N/A   34C    P0    26W / 250W |      4MiB / 16160MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A     51555      C   python3                          3363MiB |
|    0   N/A  N/A     76909      C   python3.8                        1479MiB |
+-----------------------------------------------------------------------------+

maybe the problem is caused by CUDA version, i see the project use CUDA 11.8, but in my machine, the version is not compatible for now

and the output videos meet wrong pixel data because the color space convert not work

image image

i think the program deal with the video data as RGB24 but YUV420P, so the UV color data is wrong, and the Y data is also wrong in every single pixel, because it's 1 byte per single pixel as Y but 4 bytes as RGB24

JackLau1222 commented 6 months ago

fix it refer to this issue