我正在尝试从与 Flash 兼容的 mp4 文件中提取 mp3,到目前为止,我已经找到了 FFMpeg 和一堆不同的包装器,它们都声称能够完成这项工作。
理想情况下,我不想依赖对 FFMpeg exe 的脱壳,但我尝试过的所有包装器似乎都不起作用......
有没有人有任何关于如何去做的代码或建议?
谢谢!
在我看来,使用 Process 类是要走的路:
创建过程:
private Process GetProc(string workingDirectory)
{
return new Process
{
StartInfo = new ProcessStartInfo
{
WorkingDirectory = workingDirectory,
UseShellExecute = false,
RedirectStandardOutput = true,
FileName = "YOUR_EXECUTABLE"
}
};
}
用参数调用,然后得到结果。在此之后,您需要检查它是否成功。把事情简单化。
public string Execute(string arguments)
{
var action = GetProc();
action.StartInfo.Arguments = arguments;
action.Start();
action.WaitForExit();
return action.StandardOutput.ReadToEnd();
}
另一种方法可能是使用 VLC。有一个库 dll,以及几个半支持的 C# 包装器。您应该能够进行转码、播放甚至流式传输。
不过,不确定它是否比使用 ffmpeg 少。