Delphi 将系统声音(立体声混音)录制到文件中
Delphi 将系统声音(立体声混音)录制到文件中,delphi,audio,system,record,wmp,Delphi,Audio,System,Record,Wmp,我正试图从播放互联网广播流的activex WMP控件中录制声音,因为没有简单的方法,我决定录制系统声音或所谓的“你听到的”(stereomix,在许多PC中被禁用) 那么,我如何录制系统声音并将其保存为mp3、wav。。。文件,无需启用stereomix,或如何以编程方式启用它,无需用户交互 我没有音频应用的经验,所以请不要说尝试 巴斯-www.un4seen.com NewAC-symmetria.net/NewAC/ WavePlayer-www.delphiarea.com/produc
我正试图从播放互联网广播流的activex WMP控件中录制声音,因为没有简单的方法,我决定录制系统声音或所谓的“你听到的”(stereomix,在许多PC中被禁用) 那么,我如何录制系统声音并将其保存为mp3、wav。。。文件,无需启用stereomix,或如何以编程方式启用它,无需用户交互 我没有音频应用的经验,所以请不要说尝试
[我希望我能得到好答案] 提前感谢:正如我们(在问题评论中)得出的结论所示,最好是录制广播流,而不是从声卡录制: 看看
Indy
,Synapse
或ICS
。(德尔福随印地开箱即用)
这些组件中的每一个都应该有示例,说明如何从HTTP
/TCP
服务器读取数据
请注意,数据可能不仅仅是普通的MP3
或WMV,通常还存在某种框架,用于插入标题信息并将声音数据分成块
有许多流媒体服务器(即,Shoutcast
、Icecast
和其他)都有不同的音频数据编码方式
您应该首先了解您的internet收音机运行的是哪种流媒体服务器。发送httpget请求时发生的第一件事通常是包含一些标识信息的响应
你也可以只得到一个包含真实URL的播放列表文件
附言:你可能想搜索(或问)其他问题,以便获得更多关于我提到的主题的信息
希望这能有所帮助。我强烈建议不要录制立体声混音,因为从广播流中录制会降低质量,因为您可能会重新压缩该流,并录制其他所有内容(如Windows系统声音和其他正在运行的应用程序的声音)。另一种方法是找到流URL并使用TCP转储流。如果使用“立体声混音”方式,请注意并非所有声音驱动程序都支持此功能。我不知道Vista引入的新声音API是否能缓解这个问题。在这种情况下,您可以使用虚拟声卡(如虚拟音频电缆
)。相关(更一般)问题:当然我有流url,我设置activex控件来播放它。那么,关于使用TCP进行转储,您是否有任何代码示例可以开始?谢谢@Jens,这并不能真正解决问题,但至少我知道从哪里开始。无论如何,再次感谢您提供的信息。已接受:]