在C#中将CD翻录成mp3—第三方组件或api?

在C#中将CD翻录成mp3—第三方组件或api?,c#,mp3,id3,ripping,C#,Mp3,Id3,Ripping,我们正在进行一个项目,该项目要求将音频曲目从CD翻录到MP3(理想情况下,还需要从CDDB或类似设备检索曲目信息) 更多背景信息:各种音乐公司向我们发送音乐CD,然后通过在线传送系统传送给人们。我们正在考虑尽可能自动化将这些CD转换成带有完整曲目信息的MP3的过程。我们想制作一个简单的桌面应用程序,允许编辑人员设置有关我们收到的新音乐的信息。为了简化流程,我们希望包括音频翻录和曲目信息检索。您可以通过COM interop访问Windows Media Player控制库来完成所有这一切(例如,

我们正在进行一个项目,该项目要求将音频曲目从CD翻录到MP3(理想情况下,还需要从CDDB或类似设备检索曲目信息)


更多背景信息:各种音乐公司向我们发送音乐CD,然后通过在线传送系统传送给人们。我们正在考虑尽可能自动化将这些CD转换成带有完整曲目信息的MP3的过程。我们想制作一个简单的桌面应用程序,允许编辑人员设置有关我们收到的新音乐的信息。为了简化流程,我们希望包括音频翻录和曲目信息检索。

您可以通过COM interop访问Windows Media Player控制库来完成所有这一切(例如,
IWMPCdromRip
界面包括CD翻录)。它并不漂亮,看起来也不是很容易控制(你给它一个要翻录的曲目列表,告诉它翻录,然后把它们放在WMP库中,然后你可以自动将这些曲目取出),但它可以端到端工作,包括查询曲目数据和专辑艺术。请查看以开始

一个快速的Google还找到了一篇CodeProject文章的参考,其中作者通过与低级IOCTL API的互操作创建了一个CD翻录库,直接与CD驱动器交互。这可能是一个很好的起点,以建立自己的-找到在

同一位作者使用LAME组装了一个C#编码器,不过您可以直接链接到LAME.EXE,这可能更简单。看

查询CDDB(或者更可能是FREEDB)不是火箭科学,它是一个简单的ish HTTP接口(尽管奇怪的是,我找不到Web服务)。使用
WebRequest
操作简单


你可能会认为现在有人已经为此准备了一个简单的C#库,但这似乎是一个不寻常的要求。也许是时候做一个附带项目了……

虽然CDDB/FREEDB的内容很简单,但如果他们从艺术家那里得到光盘供审查,他们可能还不在数据库中。