2009-10-23 6 views
1

Я бы хотел написать собственное приложение для потоковой передачи музыки для личного использования, но я ломаю голову над тем, как управлять им. Существующая музыка и их местоположение редко меняются, но все еще способны (фиксировать имя файла, теги ID3,/The Chemical Brothers вместо/Chemical Brothers). Как сообщество будет управлять всеми этими файлами? Я могу собрать много информации только с помощью считывателя ID3 и моей файловой системы, но было бы неплохо следить за тем, как часто играют и что такое. Будет ли использовать XML-файл iTunes хорошим выбором? Просто сохраняя мою музыку в iTunes и основываясь на данных моих веб-приложений? Я думал о том, чтобы отслеживать всю мою музыку с помощью файла md5 и использовать это как уникальный идентификатор, но если я изменю теги ID3, это изменит значение md5?Управление большой коллекцией музыки

Я полагаю, что мой реальный вопрос в том, как вы можете отслеживать большое количество музыки? Хранить метаинформацию в базе данных? Как я могу подключить файл и запись db - это мой реальный вопрос или просто использовать чтение при необходимости настройки файловой системы.

+0

Какой язык программирования вы думаете об использовании? что может помочь с идеями о том, как обрабатывать взаимодействие. –

+0

PHP предпочтительно. Мне очень нравится использовать CakePHP framework. У меня в моем распоряжении много разных серверов различных разновидностей ОС, но по большей части это, вероятно, будет установка WAMP. – 2009-10-23 20:07:31

+0

Нет прогонов, нет принятого ответа? Даже после 5 дней? – fvu

ответ

0

Я пропустил часть 2 вашего вопроса (вещь md5). Я не думаю, что решение MD5/SHA/... будет работать хорошо, потому что они не позволяют вам найти дубликаты в вашей коллекции (например, популярные треки, которые появляются на многих разных семплерах). И особенно с большими коллекциями, это то, что вы захотите сделать когда-нибудь.

Существует методика, называемая acoustic fingerprinting, которая показывает много обещаний, посмотрите here для быстрого ввода. Даже если есть небольшие различия в уровнях записи (например, эти популярные «нормализованные» треки), акустический отпечаток пальца должен оставаться неизменным - я говорю, должен, потому что ни один из тех методов, которые я тестировал, действительно 100% без ошибок. Еще одним преимуществом этих звуковых отпечатков пальцев является то, что они могут помочь вам с пометкой: такая услуга, как FreeDB, будет работать только на полных компакт-дисках, акустические отпечатки пальцев могут идентифицировать отдельные треки.

+0

Мне это нравится, акустическая отпечатка пальца. Это может быть мой билет. На этой ноте я пытаюсь использовать Ampache, и он работает на удивление хорошо, но удваивает, утроит, а иногда и увеличивает в четыре раза исполнителей и треков. Проблема с ампахом наверняка, но это хорошая база и действительно будет хорошим вдохновением. – 2009-10-23 21:53:44

0

Для вдохновения и, возможно, даже для полного решения, ознакомьтесь с ampache. Я не знаю, что вы называете большим, но ampache (php-приложение, поддерживаемое mysql db) легко обрабатывает музыкальные коллекции из десятков тысяч треков.

Повторно я обнаружил SubSonic, а на веб-сайте говорится: «Управляйте 100 000 + файлами в своей музыкальной коллекции без вреда». Bt Мне еще не удалось его протестировать. Он написан на Java, и источник выглядит довольно аккуратно с первого взгляда, поэтому, возможно, есть вдохновение и там.

+0

Я проверил это, но мне оставалось задаться вопросом, может ли он динамически добавлять/вычитать дорожки в свою библиотеку. – 2009-10-23 20:42:45

+0

Ну хм. http://ampache.org/wiki/install:catalog#maintaining_a_catalog звучит многообещающе. Я надеялся, что смогу что-то сделать сам. Pet проект? – 2009-10-23 20:44:14

+0

Сценарий, который выполняет обслуживание библиотеки - файлы, которые исчезли (удалены с диска), удалены из db, добавляются файлы, которые добавляются и добавляются в db. – fvu

Смежные вопросы