# cpu
ffmpeg -i test.ts -f null /dev/null -benchmark
# gpu
ffmpeg -hwaccel cuvid -hwaccel_output_format cuda -c:v h264_cuvid -i test.ts -f null /dev/null -benchmark
ffmpeg 4.4.2
CPU는 GPU보다 1.5배 빠릅니다.
실제로 GPU가 훨씬 더 빠를 것이라고 기대하는 이유는 무엇입니까?
이 파이프라인에서는 인코딩도 전혀 수행하지 않습니다.
답변1
-c:v h264_cuvid
NVENC보다 느리고 효율성이 떨어지는 CUVID를 호출하고 있습니다. 그것을로 교체하십시오-c:v h264_nvenc
인코딩 및 디코딩을 위한 CUVID는 수십 년이 지났으며 감가상각된 것으로 간주되어야 합니다. 기능을 수행하기 위해 GPU의 모든 CUDA 코어에 불이 들어옵니다. 원하는 동작은 비디오 인코딩과 비디오 디코딩 모두에 대해 더 빠르고 훨씬 더 전력 효율적인 NVENC 또는 NVDEC를 호출하는 것입니다.
FFmpeg로 비디오 인코딩 작업을 가속화하기 위해 CUDA를 사용하는 유용한 방법이 있습니다. 여기에서 NVIDIA의 예를 참조하세요.https://docs.nvidia.com/video-technologies/video-codec-sdk/11.1/ffmpeg-with-nvidia-gpu/index.html
최신 NVENC/NVDEC를 적절하게 호출하는 방법에 대한 FFmpeg 문서도 참조하세요.https://trac.ffmpeg.org/wiki/HWAccelIntro#NVDECCUVID