【问题标题】:Change Audio Format in C#在 C# 中更改音频格式
【发布时间】:2009-06-08 06:35:04
【问题描述】:

我想将音频文件格式更改为另一种格式。具体来说,我想将任何音频文件转换为 6khz、16 位、单声道、PCM wav 格式。

我该如何解决这个问题。

再次提前致谢。

【问题讨论】:

    标签: c# .net audio


    【解决方案1】:

    您也可以使用开源 C# 音频库 NAudio 执行此操作。查看 NAudioDemo 项目,了解通过您机器上安装的 ACM 编解码器传递 WAV 文件以转换为另一种格式的示例。如果您的输入文件不是 WAV 或 MP3,您首先需要将其转换为 WAV 的东西。

    【讨论】:

    • 实际上我在等待一个答案,比如包含 Microft Native .NET 库。但我真的需要使用另一个 API 吗?
    【解决方案2】:

    我会使用BASS Library。它有许多使用内置编码/解码功能进行格式转换的可能性。它还有一个可用的 .NET 包装器。

    【讨论】:

      【解决方案3】:

      我不完全确定您是否能够随心所欲地做到这一点。

      首先请参阅处理 RIFF 文件的 windows API(即 WAV 文件的文件组。)

      您需要读取标头、提取数据并解压缩以获取原始数据格式。我相信标题数据会告诉您使用什么编解码器进行压缩。

      您需要对原始数据进行一些处理。转换为单声道和 16 位可能不是问题,但我不太确定采样率的变化。

      然后您可以使用指定的编解码器重新压缩。

      【讨论】:

      • 那你说难搞?我懂了。然后我需要提前搜索商品。
      • 至少你能告诉我在我的项目中实现解决方案所需的命名空间、dll、类。
      • 我必须承认我没有注意到您指定了 C#。我只使用 VC++ 处理过这些文件。我认为这个链接可能对 C# 有所帮助,因为它看起来好像有一个用于 wav 文件的类:msdn.microsoft.com/en-us/library/aa446573.aspx
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-05
      • 2011-12-24
      • 1970-01-01
      • 2011-09-04
      • 1970-01-01
      相关资源
      最近更新 更多