当前位置: 首页 > 知识库问答 >
问题:

ffmpeg"低估所需的缓冲区大小"

蒋斯伯
2023-03-14

我在一些Windows机器上看到这个错误,当使用ffmpeg将8K png流转换为ProRes 4444时。命令看起来像

ffmpeg-f image2pipe-framerate 30000/1001-i--c:v prores_ks-y输出。压敏电阻

和输出

ffmpeg版本git-2020-06-17-0b3bd00版权所有(c)2000-2020 ffmpeg开发人员使用gcc 9.3构建。1(GCC)20200523
配置:-启用gpl--enable-version3--enable-sdl2--enable-fontconfig--enable-gnutls--enable-iconv--enable-libass--enable-libdav1d--enable-libfreetype--enable-libmp3lame--enable-libopencore amrnb--enable-libopencore amrwb--enable-libopenjpeg--enable libopus--enable-libshine--enable-libsnapy--启用libsoxr--enable libsrt--enable libthera--enable libtwolame--enable libvpx--enable libwavpack--enable libwebp--enable-libx264--enable-libx265--enable-libxml2--enable libzimg--enable lzma--enable zlibvidstab--enable libvmaf--enable libvorbos--enable libvo amrwbenc--enable libmysofa--enable libspeex--enable libxvid--enable libaom--disable-w32threads--enable libmfx--enable ffnvcodec--enable cuda llvm--enable cuvid--enable-d3d11va--enable nvdec--enable-dxva2--enable avisynch--enable libopenmpt--enable amf libavutil 56。55.100 / 56. 55.100 libav编解码器58。92.100 / 58. 92.100 libav58格式。46.101 / 58. 46.101 libav设备58。11.100 / 58. 11.100 libav过滤器7。86.100 / 7. 86.100 libsw5。8.100 / 5. 8.100磅重采样3。8.100 / 3. 8.100 libpostroc 55。8.100 / 55. 8.100[image2pipe@000002245a96da40]流#0:没有足够的帧来估计速率;考虑增加概率输入0,IMAGE2Bube,从“管道::持续时间:N/A,比特率:N/A流*0:0:视频:PNG,RGBA(PC),7680X840,29.97 TBR,29.97 TBN,29.97 TBC流映射:流α0:0-

考虑到我无法访问有问题的机器(用户可以访问),我如何调试它?“没有足够的帧来估计速率,考虑增加概率”的消息是否与问题有关?

谢谢

编辑:我增加了probesize,警告消失了,但转换一直失败,并显示相同的错误消息“低估了所需的缓冲区大小”。我现在可以在我的一台Windows机器上复制这个。

编辑2:不是一个解决方案,但我发现如果使用ffmpeg 4.2,这个问题就消失了。3,并在4.3中引入

共有1个答案

戚俊健
2023-03-14

由于ffmpeg的错误报告系统似乎不允许新用户(并因此报告),我能建议的唯一解决方案是避免4.3. x版本并保持在4.2.3

更新:这在ffmpeg的新版本中得到修复:https://trac.ffmpeg.org/ticket/9173#ticket

 类似资料:
  • 我在windows和direct show上使用FFMPEG。我正在传输RTMP(下面的命令),我需要非常低的延迟。一旦运行,我会出现以下错误:[dshow@024ce800]实时缓冲区已满204%!框架掉下来了! ffmpeg线程6-f dshow-i video=UScreenCapture-s 1920x1080-an-vco dec libx264-x264opts keyint=25:

  • 我想在我的小libgdx游戏中使用框架缓冲区。 游戏使用了,我修改了s摄像头,使其使用50宽31高的视口。然后我将的投影矩阵设置为。这样做,我有一个分辨率独立的游戏,我可以使用我自己的“世界单位”,而不是使用像素。 但是现在,如果我创建一个,我必须给它一个大小。我必须给它摄像机视口的大小还是屏幕的大小(以像素为单位)? 而且,当我渲染的东西,我可以渲染他们在,这意味着渲染在几乎在游戏窗口的中间?

  • 问题内容: 根据文档,使用默认缓冲区大小,而第二个构造函数允许设置缓冲区大小。 public BufferedReader(Reader in) 创建使用默认大小的输入缓冲区的缓冲字符输入流。 但是,文档没有提到默认的缓冲区大小是多少。 BufferedReader的默认缓冲区大小是多少? 问题答案: 默认缓冲区大小为8192个字符 http://developer.android.com/ref

  • 根据文档,使用默认缓冲区大小,而第二个构造函数,允许设置缓冲区大小。 公共缓冲区读取器(读取器输入) 创建使用默认大小的输入缓冲区的缓冲字符输入流。 但是,文档没有提到默认缓冲区大小。 BufferedReader的默认缓冲区大小是多少?

  • 我在张量流中使用keras创建了一个自定义模型。我使用的版本是tensorflow nightly 1.13.1。我使用官方工具构建了tensorfflow lite模型(方法tf.lite.TFLiteConverter.from_keras_model_file)。 创建模型后,我查看了输入形状,似乎没有什么不好。 tensorflow lite模型中的输入和输出形状为: 您可以注意到输入形状

  • 问题内容: 假设我想在syscall 上的Linux文件系统上写入1 GB的数据,这种情况发生在非常 繁忙的环境中 (许多相似的I / O并发)。什么是在区间的最佳缓冲区大小,说,这样做,当 不使用打开标志,或者 使用? 请没有“自己检查”的答案-我想从“文件系统”的家伙那里得到一些答案。 问题答案: 正如评论中所讨论的那样,我认为确切的大小并不重要,假设是: 文件系统大小的一小部分(请参阅Joa