最近我在Windows 10 amd64上原生编译了最新版本的ffmpeg 4.3。环境:CUDA11.0、NASM、VS2019、MYSY2 和 mingw64。
编译功能为:
--enable-nonfree --enable-cuda-nvcc --enable-libnpp --enable-gpl --enable-libx264 --enable-cuda-llvm --enable-nvenc
--toolchain=msvc --extra-cflags=-I../nv_sdk --extra-ldflags=-libpath:../nv_sdk
Run Code Online (Sandbox Code Playgroud)
我测试了 ffmpeg 的 cuda 加速。CPU是AMD 3500x。GPU 是 RTX 2060Ultra。
发出此命令:
.\ffmpeg -hwaccel cuvid -i .\a.wmv -c:v hevc_nvenc -bf 4 -preset slow -c:a aac -b:a 256k myvideo.mp4
Run Code Online (Sandbox Code Playgroud)
但收到此错误:
[wmv3 @ 000002632DFC5180] No decoder surfaces left
Error while decoding stream #0:0: Cannot allocate memory
[hevc_nvenc @ 00000263300B1740] Failed locking bitstream buffer: out of memory (10):
video encoding failed: Cannot allocate memory
Run Code Online (Sandbox Code Playgroud)
我不确定我哪里出了问题。
尝试添加-extra_hw_frames N
到您的输入并增加 N 直到错误停止。我自己只需要8个。
我在 4.4 版本上也遇到了同样的问题。这是针对 4.1 的报告,但仅限于某些情况。有人在https://trac.ffmpeg.org/ticket/7562上建议了 -extra_hw_frames N 解决方法,它对我有用。
归档时间: |
|
查看次数: |
8184 次 |
最近记录: |