从视频文件中提取wav文件

时间:2009-06-18 05:41:06

标签: c# winforms video audio

我正在开发一个应用程序,我需要从视频中提取音频。音频需要以.wav格式提取,但我对视频格式没有问题。任何格式都可以,只要我能在wav文件中提取音频。

目前我在Windows窗体中使用Windows Media Player COM控件来播放视频,但任何其他嵌入式播放器也可以。

有关如何执行此操作的任何建议? 感谢

3 个答案:

答案 0 :(得分:2)

可能最容易使用ffmpeg来做这件事...

答案 1 :(得分:2)

关于如何使用GraphEdit提取音频的

Here is a link,GraphEdit是DirectShow API的前端用户界面,因此您可以使用API​​执行所有操作。
您可以使用DirectShow.NET自由包装DirectShow API用于托管世界。

答案 2 :(得分:1)

如果您想使用C#执行此操作,请查看NAudio library。它可以分析音频格式(如FFMpeg)并提供音频流。这是one example

示例中的代码段:

using NAudio.Wave;
using System.IO;

...

// contentAsByteArray consists of video bytes
MemoryStream contentAsMemoryStream = new MemoryStream(contentAsByteArray);

using (WaveStream pcmStream =
    WaveFormatConversionStream.CreatePcmStream(
        new StreamMediaFoundationReader(contentAsMemoryStream)))
{
    WaveStream blockAlignReductionStream = new BlockAlignReductionStream(pcmStream);

    // Do something with the wave stream
}