Воспроизведение MP3 из кода .net - PullRequest
4 голосов
/ 26 мая 2009

Я женюсь в эту субботу (30 мая 2009 г.). Мы бедны. Поэтому вместо того, чтобы нанимать диджея, я хочу, чтобы мой друг запускал плейлисты в формате mp3 с ноутбука для воспроизведения через систему PA.

Ну, у меня было видение какого-то программного обеспечения, которое идеально для этого подходит. Вот это видение: alt text

Я хочу, чтобы это было так, чтобы мой друг не мог испортить это, и я думаю, что, если бы мое видение было реальностью, тогда не было бы никакого провала.

А теперь по вопросу программирования? Как я могу воспроизводить mp3 из .net кода? В настоящее время я экспериментирую с NAudio, но я не знаю, смогу ли я сделать так, чтобы файлы постепенно исчезали.

Существуют ли другие бесплатные библиотеки, которые могли бы мне помочь? Спасибо за любой вклад. Время имеет значение.

ЛЮДИ!

Сосредоточьтесь на вопросе программирования! Если мне когда-нибудь понадобится работать со звуком в будущем, ваши ответы могут стать ключом к моей судьбе.

Ответы [ 9 ]

11 голосов
/ 26 мая 2009

То, что вы описываете, звучит как функциональные программы, такие как iTunes и Windows Media Player, в течение многих лет, и я бы рекомендовал использовать одну из этих двух программ. Однако, если вы действительно хотите воспроизводить MP3 из .NET, поиск в Google нашел меня следующим образом: http://www.codeproject.com/KB/audio-video/mp3player.aspx и это: http://www.codeproject.com/KB/audio-video/ManWMF.aspx

Кроме того, если ваша свадьба через 4 дня, это, вероятно, не лучшая идея. Я бы не стал тратить ваше время на написание медиаплеера. Если вы хотите, чтобы он был отполирован и защищен от идиотов, используйте iTunes. Если вы хотите написать медиаплеер, сделайте это после свадьбы.

7 голосов
/ 26 мая 2009

Самым простым и легким решением здесь является использование COM-проигрывателя Windows Media Player . Эта страница предлагает хорошее руководство по началу работы с этим подходом. Простая регулировка уровня громкости с помощью таймера может создать эффект постепенного исчезновения.

Если вам нужен полный контроль над воспроизведением, всегда есть опция DirectShow.NET , хотя это, вероятно, излишне для вашей задачи. Более того, его довольно сложно использовать, если у вас уже нет опыта работы с неуправляемым API DirectShow. Однако, как я уже сказал, я постараюсь держаться от этого подальше, если это возможно.

Редактировать: Я также понял, что пространство имен Microsoft.Xna.Framework.Media может предложить хорошее управляемое решение для вашей задачи. Это, безусловно, должно дать больше контроля, чем контроль WMP (и является чисто .NET, а не COM, в качестве бонуса). Единственным небольшим недостатком является то, что он требует ссылки на XNA Framework 3.0.

3 голосов
/ 26 мая 2009

Скачать MediaMonkey . У тебя есть дела поважнее за неделю до свадьбы, чем написать другой MP3-плеер. MediaMonkey даже имеет режим DJ, который блокирует вашу систему, чтобы ваши гости не могли изменять ваши плейлисты.

1 голос
/ 02 июня 2009

Как я уже говорил,

"Есть много отличных предложений по библиотекам, которые помогут с воспроизведением звука, и именно к этому я и стремился. Я не собираюсь пытаться написать программу. Спасибо за отличные ответы."

Только для тех, кому любопытно: для своей свадьбы я использовал Winamp 5. независимо и сохранял плейлисты для разных частей свадьбы, добавляя к именам файлов префиксы 01, 02, ..., чтобы они отображались по порядку в файловая система.

Для нормализации звука я скачал плагин под названием RockSteady , который отлично работал. Для замирания при остановке / паузе / между песнями в меню «Параметры» -> «Настройки» -> «Плагины» -> «Вывод» -> «Nullsoft DirectSound Output Configuration» -> «Вкладка затухания» я устанавливаю «в конце песни» на 6000 мс и «на паузу / стоп» на 15000 мс Затем на другой вкладке я установил флажок «Логарифмическое затухание».

Эти настройки сделали звучание звука приятным и профессиональным.

0 голосов
/ 24 августа 2010

Я упаковал библиотеку mp3-декодеров и сделал ее доступной для разработчиков .net. Вы можете найти его здесь:

http://sourceforge.net/projects/mpg123net/

Включены примеры для преобразования mp3-файла в PCM и считывания тегов ID3.

Вам нужно что-то вроде оболочки WaveOut, я знаю, что она существует, и вот, пожалуйста!

0 голосов
/ 31 мая 2009

Я согласен с остальными, создаю несколько плейлистов и просто загружаю / играю их с помощью Windows Media Player.

0 голосов
/ 27 мая 2009

Действительно интересно, но, на мой взгляд, вы должны использовать уже существующее решение.

Однако вы можете проверить эти ссылки:

Также хорошим выбором должен быть ком-контроль Windows Media Player.

PS: я не знаю, смогу ли я включить вопрос в ответ, но как вы сделали эту графику?

0 голосов
/ 27 мая 2009

Я согласен с большинством других здесь. Я думаю, что вы действительно должны попытаться усложнить ситуацию, используя другую уже бесплатную опцию, такую ​​как itunes, Winamp или WMP. Если вы действительно хотите узнать что-то новое, делайте это просто для удовольствия после того, как вы не будете испытывать большого давления, чтобы заставить его работать.

Если, однако, вы ДЕЙСТВИТЕЛЬНО хотите пройти через это, я думаю, http://code.google.com/p/ffmpeg-sharp/ должен делать то, что вы хотите.

0 голосов
/ 26 мая 2009

Ты изобретаешь колесо. Если «время имеет существенное значение», просто создайте файлы списка воспроизведения для своего друга и поместите их все в один каталог. Маркируйте их 00 - Прелюдия, 01 - Процессия и т. Д.

См. эту статью о формате M3U для получения дополнительной информации. Вы можете перечислить файлы для воспроизведения в этом текстовом формате. Или просто используйте медиаплеер, такой как Winamp или Windows Media Player, для создания файлов списка воспроизведения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...