在WinRT上用C#中的MP3流绘制波形

时间:2013-01-18 00:14:09

标签: c# .net windows-runtime mp3 waveform

我正在开发一个使用MediaCapture.StartRecordToStreamAsync()的Windows RT应用程序来捕获MP3格式的音频流(16位,44.1 KHz,128Kbps)。我想知道是否有人知道如何有效地将流转换为可以绘制到画布上的浮点数组。

我已经找到了一种使用一些Interop调用将MP3转换为PCM的方法,然后读取波形来绘制波形。但我想我正在寻找一种从直接生成MediaCapture的流中绘制波形的方法。

非常感谢任何建议!

1 个答案:

答案 0 :(得分:1)

我一直在寻找相同的东西,但在这里没有得到任何答案。我试图采用更通用的方式来实现MediaFoundationTransform,它允许在进行MP3编码之前观察流(这里没有回答的问题:Minimum implementation of a bare pass through Media Foundation Audio MFT for Windows RT)。

我尝试按照Anton Polingers“开发Microsoft Media Foundation Applications”(微软出版社)的方式编写MFT,但这种方式在WinRT中似乎也不受支持。我也找不到为WinRT做的教程。

所以,如果您找到解决方案或从某个地方获得一些提示,我会非常感兴趣。