基于网络的音乐库(编程概念)
Posted
技术标签:
【中文标题】基于网络的音乐库(编程概念)【英文标题】:Web-Based Music Library (programming concept) 【发布时间】:2010-10-23 13:20:43 【问题描述】:所以,我一直在脑海中反复思考这个想法。从本质上讲,它主要是一个让我学习编程的项目。这个想法是,我有大量数据,我的音乐收藏。我的音乐有很多数据集。格式、艺术家、标题、专辑、流派、长度、发行年份、文件名、目录等等。理想情况下,我想创建一个数据库,其中存储了所有这些数据,并且在未来,在它之上创建一个 Web 界面,我可以使用它来管理我的音乐收藏。所以,我的问题如下:
-
这听起来像是一个从头开始构建数据库的好项目吗?
您建议我从什么语言开始?我知道 php 的花絮,但我想用它来索引文件系统中的数据会很糟糕。 Python 是我想到的另一种语言,因为它是大多数人认为是初学者的语言。
如果您要在家中实现这种系统(Web 界面)(如果您将 PC 连接到家中的几个立体声音响,并且这是连接的软件),您需要什么样的功能去看看?
我构建索引脚本的想法如下:
让它只用文件名填充数据库 从文件名的扩展名,确定格式 获取文件大小 使用数据库中的文件名作为参考,提取 ID3 或其他适用的元数据(艺术家、曲目名称、专辑等) 检查磁盘上是否仍然存在所有文件,如果不存在,则将该文件标记为不可用另一个脚本稍后会进入并检查文件是否返回,如果没有,将从数据库中删除该行。
【问题讨论】:
【参考方案1】:我认为这是一个学习编程的好项目。通过使用您自己的“产品”,您可以真正得到缺少的东西,并且更有动力去学习和改进您的程序——这被称为dogfooding。奇怪的是,Dive Into Python 这本书虽然有点旧,但详细介绍了如何使用 Python 提取音乐文件的 ID3 信息。既然这是最常推荐给初学者的书,我敢打赌,这也是一个很好的起点。
【讨论】:
【参考方案2】:从事你关心的事情是学习编程的最佳方式,所以我认为这是个好主意。
我还推荐 Python 作为起点。玩得开心!
【讨论】:
【参考方案3】:如果您使用 Python,则可以使用 Google App Engine 构建它。它为您提供了一个非常漂亮的数据库界面,本教程将带您从“Hello world!”开始。到一个正常运行的网络应用程序。
您甚至不需要将结果上传到 Google;您可以在开发环境中运行它,并且可以在您的家庭网络中访问它。
【讨论】:
【参考方案4】:我认为 python 会是很好的选择
-
易于学习,但也具有高级功能
可用的良好 Web 框架,例如django,你可以在你的机器上运行
Word 类提供免费的 python 托管,即谷歌应用引擎
可用于几乎任何可以想象的任何东西的库,例如要阅读您的 mp3 标签,您可以使用 http://id3-py.sourceforge.net/
搜索你可以使用pylucene http://lucene.apache.org/pylucene/
最好的搜索引擎。
【讨论】:
以上是关于基于网络的音乐库(编程概念)的主要内容,如果未能解决你的问题,请参考以下文章
蛋哥的学习笔记之-基于Unity的Shader编程:X-1 音乐水波特效