gpt4 book ai didi

vb6 - 帮助 ffmpeg

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

我现在可以从 cmd 窗口中执行的 FFmpeg 过程中读取最后一行。
使用脚本主机模型对象引用此源。

Private Sub Command1_Click()
Dim oExec As WshExec
Dim sRow As String

With New WshShell
Set oExec = .Exec("ffmpeg.exe")
End With
Do While oExec.Status = WshRunning
sRow = oExec.StdOut.ReadLine
Loop
End Sub

这条线是这样的。它是 cmd 窗口中的最后一行(在底部)。
frame= 2816 fps=667 q=11.0 Lsize= 13036kB time=187.66 bitrate= 569.1kbits/s

我削减了时间的一部分,以便在我的 vb 6.0 应用程序中构建一个进度条。但是在 cmd 进程中存在一个值 13 排列这个值,它称为总持续时间。但是我看不懂这一行,有人有代码或任何想法可以从 ffmpeg 的 cmd 窗口的最后一行向上读取 ubicated 13 行...

最佳答案

我自己用Java完成了这个。我认为问题在于状态更新行(就像您在上面引用的 time= 子字符串)以 CR(回车)而不是 LF(换行)终止。我的直觉说 ReadLine 正在寻找完整的 CRLF。因此,要做到这一点,您需要:

  • 了解CR、LF和CRLF的区别,分别是什么ASCII码
  • 逐个字符读入输出流,建立一个以 CR 结尾的行,然后将其解析为 time=Durration=代币

  • 如果您在代码中调试打印语句并向我们显示输出,这将对您和我们都有帮助。

    关于vb6 - 帮助 ffmpeg,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2104781/

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