gpt4 book ai didi

ffmpeg - 如何判断ffmpeg是否出错?

转载 作者:行者123 更新时间:2023-12-04 15:01:51 32 4
gpt4 key购买 nike

情况:
我正在使用 ffmpeg(通过 .net)来保存视频文件。我可以从 ffmpeg 获取输出,但我不知道如何自定义输出以获得更好的结果。
我的问题:
我的问题是,成功和失败的操作没有一定的区别。

last line of success:

video:1006kB audio:134kB subtitle:0 global headers:0kB muxing overhead 0.943510%

last lines from fails

c:\x\test-9-8/30/2012-9:29:56-AM.mp4: Invalid argument

rtmp://cdn.tv/cdn-live39/definst/stream01: Unknown error occurred


我的问题:
是否有一个选项(或命令行参数)来添加某种返回码(200:成功,500:错误等)
谢谢!
PS:看到这个话题 How to tell if ffmpeg errored?但在最后一行之前/之后没有数字。我认为最后一个版本没有编号了。

最佳答案

我知道这已经很老了,但是当我遇到并没有找到其他可靠的答案并且经过更多测试后:

检查返回 0 的建议通常是一个很好的建议 - 但并非在所有情况下都有帮助。检查文件是否存在的另一个想法也很好 - 但同样 - 在所有情况下都没有帮助。

例如,当输入文件是具有嵌入式封面的 mp3 文件时,ffmpeg 确实(在我的测试中)使用此图像并将其提取为(不可用的)视频文件。

我现在要做的是获得调试级别的输出并将其解析为多路数据包的数量。
ffmpeg -i "wildlife.mp4" -c:v copy -an -sn "out.mp4" -y -loglevel debug 2> wildlife.txt
使用正则表达式,我搜索此文本:Output stream .+ (video): [0-9][0-9]+ packets muxed \([0-9][0-9]+ bytes\)
(这假设每个视频都有超过 9 个数据包 - 当然可以针对真正的短视频进行优化)。

当然,对于 RTMP 或其他设置,输出可能会有所不同,但我认为解析完整的输出流是唯一的选择。

关于ffmpeg - 如何判断ffmpeg是否出错?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12199216/

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