【发布时间】:2014-01-26 09:27:01
【问题描述】:
我希望能够使用 C# 从流(通过 WCF)保存 AAC 音频文件。 NAudio 目前只允许读取 AAC 文件而不是流,无论如何要这样做?
谢谢
【问题讨论】:
我希望能够使用 C# 从流(通过 WCF)保存 AAC 音频文件。 NAudio 目前只允许读取 AAC 文件而不是流,无论如何要这样做?
谢谢
【问题讨论】:
目前(从 NAudio 1.7 开始),最好的方法是保存 WAV,然后转换为 AAC。如果您的 Windows 版本具有 AAC Media Foundation 编码器,那么您可以使用 NAudio 的 MediaFoundationEncoder 类来执行此操作。
如果您想要流支持,一种方法是使用NAudio.SharpMediaFoundation,它利用 SharpDX 允许对流进行编码。
【讨论】:
using (var decoder = new MediaFoundationDecoder(inStream)) { using (var encoder = MediaFoundationEncoder.CreateAACEncoder(decoder.WaveFormat, outStream)) { MediaFoundationEncoder.EncodeWholeSource(encoder, decoder); } }