我正在寻找一些库或代码,将允许我将mp4视频转换为mp3。我希望它是免费的,并与最新的.NET框架兼容(4)。
此外,如果可能的话,我正在寻找一个免费的ffmpeg包装器,它不需要试用版或messageboxes就可以在我的vb.net应用程序中使用。
如果没有免费的ffmpeg,谁能告诉我如何使用命令行和ffmpeg执行从mp4到mp3的转换?
发布于 2012-04-08 07:06:15
您可以使用以下代码在vb.net中处理/执行ffmpeg命令。
Dim _out As String = ""
Dim _process As New Process()
_process.StartInfo.UseShellExecute = False
_process.StartInfo.RedirectStandardInput = True
_process.StartInfo.RedirectStandardOutput = True
_process.StartInfo.RedirectStandardError = True
_process.StartInfo.CreateNoWindow = True
_process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden
_process.StartInfo.FileName = "ffmpeg";
_process.StartInfo.Arguments = " -i input.mp4 -vn -f mp3 -ab 192k output.mp3";
_process.Start()
_process.StandardOutput.ReadToEnd()
_out = _process.StandardError.ReadToEnd()
_process.WaitForExit()
If Not _process.HasExited Then
_process.Kill()
End If
Return _out因此,您将收到ffmpeg输出和mp3音频文件。为了获得更好的编码性能和解析ffmpeg输出,我推荐使用ffmpeg包装器http://www.mediasoftpro.com/media-handler-pro.html。
发布于 2012-04-08 06:37:01
如果需要,您可以只启动一个进程(System.Diagnostics.Process)并隐藏ffmpeg窗口。控制台输出可以重定向到StringBuilder或类似设备。
对于转换,您可以使用类似于
ffmpeg.exe -i input.mp4 -vn -f mp3 -ab 192k output.mp3如果mp4文件没有视频,则不需要-vn。
https://stackoverflow.com/questions/10058890
复制相似问题