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

本文关键字:第三方 组件 api mp3 中把 CD | 更新日期: 2023-09-27 17:47:49

我们正在进行一个项目,该项目需要将音轨从CD翻录到MP3(理想情况下还需要从CDDB或类似文件中检索音轨信息)。

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

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

您可以通过COM互操作访问Windows Media Player控制库来完成所有这些操作(例如,IWMPCdromRip接口涵盖CD翻录)。它不漂亮,看起来也不太可控(你给它一个要翻录的曲目列表,告诉它翻录,它把它们翻录并放在WMP库中,然后你可以自动将它们取出),但它可以端到端地工作,包括查询曲目数据和专辑艺术http://msdn.microsoft.com/en-us/library/bb262437(VS.85).aspx开始。

谷歌还发现了一篇引用CodeProject文章的文章,作者通过互操作到低级IOCTL API中,直接与CD驱动器交互,创建了一个CD翻录库。这可能是建立自己的一个很好的起点-在http://www.codeproject.com/KB/cs/csharpripper.aspx.

同一位作者已经使用LAME构建了一个C#编码器,尽管您可以直接链接到LAME.EXE中,这可能更简单。看见http://www.codeproject.com/KB/audio-video/MP3Compressor.aspx.

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

你可能认为现在已经有人为此构建了一个简单的C#库,但这似乎是一个罕见的请求。也许是时候做一个副业了。。。