Есть ли библиотека .NET для универсального декодирования аудиофайлов?

Знаете ли вы какую-либо библиотеку .NET, которая может декодировать несколько типов аудиофайлов? В идеале он должен быть независимым от платформы, чтобы его можно было использовать с .NET и Mono - в Windows и * NIX.

Я уже замучил Google поиском библиотеки, которая мне подходит, но, к сожалению, ничего не нашел. Поэтому, прежде чем писать множество классов-оболочек для GStreamer и друзей, я подумал, что могу спросить здесь. :)

Поддерживаемые аудиофайлы должны быть (как минимум)

  • MP3,
  • OGG Vorbis и
  • FLAC (необязательно).

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

Мне нужно было бы использовать эту библиотеку / эти библиотеки для декодирования аудиофайлов и передачи байта [] в мою оболочку libOFA, чтобы я мог создать для нее отпечаток MusicDNS. Мое экспериментальное приложение, скорее всего, будет работать на сервере на базе Linux.

Кажется, вы уже нашли Alvas.Audio (согласно скрине с ворчанием). Мне это очень нравится, но есть недостатки, которые вы уже заметили :)

Vinko Vrsalovic 27.09.2008 19:53

Ага, я уже наткнулся на Alvas.Audio. Я бы не особо заботился о nagscreen в бесплатной версии, если бы это было настольное приложение, потому что библиотека в любом случае кажется довольно приятной, но служебное приложение с nag screen просто не будет работать, я думаю. : /

hangy 27.09.2008 19:56
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
8
2
1 873
4
Перейти к ответу Данный вопрос помечен как решенный

Ответы 4

Если вы говорите о декодировании файлов для их воспроизведения (например, для прослушивания), я бы предложил перейти в Windows Media Player SDK.

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

http://msdn.microsoft.com/en-us/library/aa969732.aspx

Если вы хотите что-то более похожее на металл (например, для обучения), вы также можете проверить Windows Media Format SDK.

http://msdn.microsoft.com/en-us/library/aa387410.aspx

Спасибо за ваше предложение, therealhoff! К сожалению, это, скорее всего, не будет работать под * NIX и, следовательно, не будет соответствовать среде моего небольшого эксперимента. В любом случае, я думаю, это может быть хорошим подспорьем при разработке настольных / серверных приложений Windows. :)

hangy 27.09.2008 19:52

Звуковая система FMOD Ex - это революционно новый звуковой движок для разработчиков игр, разработчиков мультимедиа, звукорежиссеров, музыкантов и звукорежиссеров. Основываясь на многолетнем опыте работы с предыдущими продуктами Firelight Technologies, FMOD Ex стремится расширить возможности звука для игр, в то же время используя минимальные ресурсы и оставаясь полностью масштабируемым.

Некоммерческая лицензия FMOD

Если ваш продукт не предназначен для получения коммерческой выгоды и не включает библиотеку FMOD для перепродажи, лицензирования или другого коммерческого распространения, то использование FMOD является бесплатным. Да, верно, без лицензионных сборов !.

Впечатляющий список возможностей, но, на мой взгляд, FMOD является разделяемой библиотекой (.so) и не может использоваться как сборка .NET.

hangy 27.09.2008 20:03

ну, есть обертка .net

CiNN 27.09.2008 20:13

Действительно? Блин, такого не видел. Думаю, тогда я еще посмотрю на нее.

hangy 27.09.2008 21:07
Ответ принят как подходящий

Есть библиотека ffmpeg и утилиты, конвертирующие аудио и видео форматы. Затем, вместе с библиотекой FFmpeg.NET, вы можете выполнять кодирование / декодирование в .NET. Поддерживаются все указанные вами форматы.

Обертка .NET для ffmpeg звучит великолепно. К сожалению, кажется, что FFmpeg.NET не поддерживается (последняя фиксация 2007-10-09, без выпуска), но в комментарии к проекту упоминается FFlib.NET (intuitive.sk/fflib), который, похоже, находится в активной разработке и является бесплатным (хотя и не ОС). Посмотрим!

hangy 27.09.2008 20:28

FFmpeg.NET мертв? ffmpeg-sharp мертвый? Tao.FFmpeg действительно сложный. FFlib.NET пока нет окон. SharpFFmpeg устарел.

hangy 28.09.2008 01:21

Alvas.Audio - единственный продукт, который я когда-либо видел, который делает это (и я узнал об этом только из этого поста). Я думаю, что ситуация с лицензированием MP3 помешала разработке продуктов .NET, которые это делают.

Другие вопросы по теме