Я пишу программу, которая поможет мне разорвать мою обширную виниловую коллекцию на цифровой формат, так как я нашел использование Audacity настолько утомительным для использования, меня не беспокоить.NAudio - рассказывая о различиях между музыкой и «тишиной» (виниловый гул между дорожками)
Я намерен выпустить программу на GitHub после ее работы.
В настоящее время программа записывает или открывает wav-файл. Вы говорите программе имя исполнителя и альбома, и он выглядит на MusicBrainz, чтобы получить названия и длины треков.
Затем он отображает короткую звуковую экстракт для начала, промежуток между каждой дорожкой и концом и позволяет вам перетаскивать курсоры, чтобы показать, где треки начинаются и заканчиваются.
Наконец, он разбивает запись на отдельный mp3 или wma-файл для каждой дорожки в папке, названной для альбома, внутри папки, названной для исполнителя, назвав каждый трек и установив свойства, такие как Album Artist, Artist, Название, номер дорожки, издатель и т. Д.
Это прекрасно работает, но я хотел бы немного автоматизировать процесс, распознавая паузы между дорожками и автоматически настраивая начальные и конечные курсоры.
Я попытался проанализировать запись и узнал, находится ли она под определенным уровнем громкости в течение определенного периода времени (с использованием скользящего среднего в надежде на то, чтобы гладить клики), но это просто не делает трюк, поскольку виниловый грохот часто громче музыки (особенно в начале альбома, где игла была сброшена на свинец столько раз).
Когда я слушаю трек, я могу легко сказать, когда музыка начинается и заканчивается. Есть ли какие-либо известные алгоритмы, которые я могу изучить, которые могут распознать разницу?
Дополнительный вопрос - есть ли способ выработать удары в минуту звукового файла?
Если у вас есть интерес, я загрузил законченную программу в GitHub https://github.com/nikkilocke/AlbumRecorder –