gpt4 book ai didi

php - 如何以编程方式检查 .mp4 文件是否未损坏且未丢失电影帧或音频片段

转载 作者:行者123 更新时间:2023-12-04 23:02:33 32 4
gpt4 key购买 nike

使用 youtube-dl,我能够下载相当多的 .mp4 文件。但是,我刚刚发现,在手动播放其中一些之后,它们在某些部分丢失了电影帧,而仍在播放音频(因此显示了一个空白屏幕),或者在播放电影帧时丢失了音频。

因此,
(1) 为什么 youtube-dl 不检测或​​警告这种情况?看起来电影片段和音轨已合并,并且在没有任何警告的情况下生成了 .mp4。有没有办法配置 youtube-dl 来检测这种情况并重新下载电影?
(2) 否则,还有其他方法可以以编程方式检测此类情况吗? (考虑到一个人可能有数千个这样的 .mp4 文件并且可能无法手动通过所有这些文件?)将不胜感激使用 FFmpeg 或 php 的解决方案。

最佳答案

其原因可能是 youtube-dl 在下载文件时跳过了(一些)片段,如果您使用终端/命令提示符,您可以采取一些措施来防止这种情况发生,其中一些是:

  • 要使用 --fragment-retries RETRIES 选项,使用“无限”时要小心,如果片段在服务器端丢失,您的代码将最终执行无限循环

    --fragment-retries infinite

  • 或者启用 --abort-on-unavailable-fragment 标志,以在 youtube-dl 检测到有问题的片段时中止

    --abort-on-unavailable-fragment


  • 这应该可以防止任何 future 的视频/音频出现损坏的片段,阅读更多 here

    NOTE: I'm currently looking for a way to detect downloaded videos whether it's broken or not (i.e. fragment lost, etc.)

    关于php - 如何以编程方式检查 .mp4 文件是否未损坏且未丢失电影帧或音频片段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53636417/

    32 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com