【问题标题】:ffmpeg hwaccel no decoder surfaces leftffmpeg hwaccel 没有剩下的解码器表面
【发布时间】:2021-06-04 22:15:52
【问题描述】:

最近我在 Windows 10 amd64 上原生编译了最新版本的 ffmpeg 4.3。 环境:CUDA11.0、NASM、VS2019、MYSY2 with mingw64。

我也用了补丁https://trac.ffmpeg.org/attachment/ticket/9019/0001-Patch-for-ticket-9019-CUDA-Compile-Broken-Using-MSVC.patch

编译特征是:

--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

我测试了 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

但收到此错误:

[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

我不确定我哪里出错了。

【问题讨论】:

  • 我下载 gyan.dev ffmpeg。面临同样的问题

标签: ffmpeg gpu nvidia


【解决方案1】:

尝试添加 -extra_hw_frames 2。

我在 4.4 版上也遇到了同样的问题。这是针对 4.1 报告的,但仅在某些情况下。有人在 https://trac.ffmpeg.org/ticket/7562 上建议了 -extra_hw_frames 2 解决方法,它对我有用。

【讨论】:

    猜你喜欢
    • 2019-08-31
    • 1970-01-01
    • 1970-01-01
    • 2011-08-24
    • 2020-08-01
    • 1970-01-01
    • 2017-02-09
    • 2014-09-11
    • 1970-01-01
    相关资源
    最近更新 更多