【问题标题】:FFMPEG - moov atom not found after elaborationFFMPEG - 精心设计后未找到 moov 原子
【发布时间】:2019-04-12 16:04:22
【问题描述】:

我有一个命令,可以将叠加图像放在视频上。 之后,我调整输出大小以适合某些尺寸。

通常一切正常,但有时且仅在某台台式计算机上,当第二次精化开始时,命令返回错误:moov atom not found

让我们写一些代码:

我的第一个命令很长,我只是用 2 张图片示例过去了重要的东西:

-i inputVideo.mp4 -i 1.jpg -i 2.jpg
-filter_complex "[1:v]format=yuva422p,[Other effects...][im1];
[2:v]format=yuva422p,[Other effects...][im2];
[0][im1]overlay=(main_w-overlay_w)/2:(main_h - overlay_h)/2[o1];
[o1][im2]overlay=(main_w-overlay_w)/2:(main_h - overlay_h)/2"
-crf 18 -c:a copy output.mp4

我的第二条命令如下:

-i output.mp4 -crf 19 resized.mp4

我想我在第一个命令中遗漏了一些东西,但是什么? 如果我在便携式计算机上执行完全相同的代码,它就可以正常工作。

感谢您的帮助!

这是两个日志ffmpeg logs的链接

最后一次编辑(我希望):)

我在那个 github 存储库中添加了我尝试过的 ffmpeg 命令和重现问题的源文件。我希望有人能找到解决方案

在存储库中有:

  • LAST_CommandLine_Command -> 这是我正在运行的 ffmpeg 命令
  • LAST_CommandLine_Command_Output -> 这是我的 ffmpeg 的运行输出之一(这是我尝试过的最后一个)
  • 文件从 01.jpg10.jpg -> 这些是我用命令覆盖在视频上的图片
  • My input video 用于 ffmpeg 命令。

我尝试使用以下命令运行此命令: - 为我运行它的 Windows 控制台应用程序 - 直接从命令行 - 使用命令行 dotnet myapplication.dll(不是从调试运行我的应用程序,而是从发布运行)

结果:

对于这些特定文件,它在 10 次中工作了 1 次,在其他情况下,它会在几秒钟后随机停止(从 45 英寸到 1 英寸 55 英寸,具体取决于运行)。

注意:我尝试使用 -threads 1-threads 2 并且没有任何线程限制。在所有情况下都失败了

【问题讨论】:

  • 为什么要重新编码output.mp4,而不是在原始命令中重新调整大小?
  • 文件创建方法需要查看日志
  • @llogan 我这样做是因为我需要将视频调整到某个 Mb 尺寸,并且我没有找到任何“单行”命令来执行此操作,所以我尝试递归缩放视频直到它适合所需的尺寸。有没有更快的方法来实现它?
  • 日志文件被截断。
  • @Gyan 缺少的行仅是框架细化的行;我删除了它们,因为答案会很长。我会在顶部添加一些行,在最后添加一些,但我不能全部添加

标签: ffmpeg


【解决方案1】:

在解决这个问题几个月后,我发现这是与我的 Windows 版本和/或安装有关的问题。

我格式化了我的电脑,安装了全新的 Windows 10 版本,现在它可以正常工作了。

感谢大家的支持。

PS:我讨厌 Windows ^.^

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-09-04
    • 2019-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-24
    • 2017-12-26
    • 2021-05-09
    相关资源
    最近更新 更多