内部录音程序

时间:2010-08-18 15:56:06

标签: c# java audio-recording audio

注意:这不是使用麦克风的东西。我想内部录制音频。

我想用C#或Java编写一个程序来记录发送到计算机中扬声器的音频数据。最终产品将允许用户点击“记录”按钮,此时正在播放的任何内容都将在内部记录,直到用户点击“停止”按钮,此时收集的所有数据将保存到音频文件中,如wav,mp3等

我有一台MacBook Pro可以并行运行Windows 7。我可以访问多台PC,因此我也可以在纯Windows平台上工作。理想情况下,无论什么平台都没关系。

我不知道从哪里开始 - 我用音乐做过的最多就是用Java播放.wav文件。如果有人对这两种语言都有任何建议,参考,建议,技术偏好,我很乐意在这里!

2 个答案:

答案 0 :(得分:2)

您要做的是非常依赖于操作系统。你需要编写一个程序来创建一个假的音频输出设备,操作系统可以发送声音。一旦用户点击“记录”而不是播放音频,您将捕获音频流,并在用户点击“停止”时停止捕获。然后,您需要将捕获的音频数据编码为所需的声音文件格式(wav,mp3等)。

可以按照您的要求进行操作,但由于您正在与操作系统的音频硬件抽象层和编码音频进行交互,因此这是一项非常重要的任务。

答案 1 :(得分:0)

如果您打算使用C#,请指向正确的方向。 在.NET框架中不支持这样做,但是您可以从.NET访问Windows API。一个好的起点是http://www.pinvoke.net。 您还可以在C#中找到每个API写入的代码。我不知道你应该使用哪些API调用,但如果有,那么它在Win32 API中退出。我知道一个软件可以满足您的要求。该软件的名称是Spotify Ripper。如果您使用API​​间谍软件,您可能会看到该软件正在使用哪些API调用!