这个问题一直在我脑海里了几年,我从来没有真正找到了这个答案。

我想要做的是提取MP3文件的实际波形/ PCM,这样我可以使用(当然)声卡播放。

理想情况下,我将尝试一些DSP效果。

我的第一个步骤是寻找到有点扯,但我没有找到相关的有关程序MP3解码或类似的东西东西。

于是我问哪里能找到这样的事情。

我应该使用

什么语言?我在想C,但也许有出有编程语言,将更加有效地完成这项工作。

谢谢!

纪尧姆。

有帮助吗?

解决方案

现在的问题归结为:?什么是你想完成

从您的解码MP3和播放它的声卡上的问题的描述使得它听起来好像你正试图使媒体播放器。

不过,如果你的目的是玩弄DSP效果,那么它听起来像问题是更多关于处理的声音,而不是解码MP3文件。如果是这样的话,很可能寻找到写作的插件为现有媒体播放器(如的 Windows Media Player的 Winamp的)将是你在做什么最简单的途径试图完成。

坦率地说,学习从头开始编写自己的解码器不仅是一个程序问题,而是一个数学之一,所以使用现有的图书馆是要走的路。说到操作系统或库类似的DirectSound输出音频好像如果有任何不必要的工作。我觉得,在插件为现有的球员的工作将是要走的路,除非你的目标是让自己的媒体播放器。

如果你真正想做到的是玩音频数据,然后可能使用任何MP3解码器解码MP3,以未压缩的PCM,那么在您所选择的语言操纵它会实现你的处理与声音效果的目标。

在语言选择是要依赖于你是否会直接与MP3解码库互动,或者你是否可以只使用原始音频输入,这将允许你使用几乎任何你选择的语言。

有一个类似的问题而回,入门纲领性音频,在那里我张贴在一些基本的方法来操作音响,如放大的回答,改变播放速度,并做了一些工作,FFT。

其他提示

libmpg123 应达到目的。

我一直在使用Windows Media SDK,不是为了这个目的,但我敢肯定有钩子让,让你截取音频流,或转换的MP4压缩的WAV。我用C ++。

的数量:

http://www.mp3-tech.org/programmer/decoding.html

挑选你的毒药...

此外,LAME做解码的MP3(看看--decode选项),所以你可能会发现在源有趣的东西。

- 亚当

这要看你是编程,并且希望用代码做什么什么平台。如果你在Windows下你应该看看 Windows Media格式SDK 的DirectShow 。他们都应该有MP3文件解码为原始波形的能力。在Mac上,我希望的QuickTime有这种相同的能力。其他人已经提出源用于Linux /开放源码。

我会建议看Cubase和Wavelab既将MP3转换成WAV等,让你玩的波形

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top