Воспроизведение OGG, MP4 в .NET

Я хотел бы сделать быстрый и грязный простой медиаплеер в .NET. Я понятия не имею, как я могу воспроизводить музыку, делать паузы и т. д. Я хочу поддерживать ogg, mp3 и, если возможно, mp4.

Как мне на самом деле воспроизвести звук? Минимальные требования: воспроизведение, пауза/возобновление, прекращение поддержки mp3 и ogg (vorbis)


person Community    schedule 13.07.2013    source источник
comment
Это очень широкий вопрос. Вы пытаетесь использовать кодеки? Доступ к звуковой карте? Или вы не заботитесь об этих деталях и просто хотите создать медиаплеер? Если последнее, я предлагаю использовать libVLC.   -  person Brad    schedule 22.07.2013
comment
@Brad: Сделайте это ответом и упомяните libvlcnet sourceforge.net/projects/libvlcnet/?source= dlp и 200 представителей могут стать вашими через 7 дней   -  person    schedule 22.07.2013


Ответы (3)


Поскольку вам нужно поддерживать множество кодеков, я рекомендую libVLC. Это то, что поддерживает VLC и может обрабатывать практически любой кодек и вариант воспроизведения, который вы можете себе представить. Доступно несколько оболочек .NET:

  • Libvlc.Net (GPL)
  • LibVLC.NET (LGPL) (обратите внимание, что это другая библиотека, чем первый!)
  • nVLC (GPL 3.0)
  • VideoLan DotNet (общедоступная лицензия MS)

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

См. эти связанные сообщения StackOverflow:

Недавно у меня был проект, в котором я просто запускал VLC в фоновом режиме, получая его вывод через STDIO. Для того, что я собирался, это было проще, так как моя команда для VLC была «выстрелил-забыл».

person Brad    schedule 22.07.2013

NAudio — отличная библиотека с открытым исходным кодом для .Net, которую можно использовать для воспроизведения файлов MP3. NVorbis можно использовать для воспроизведения файлов .ogg.

person MusiGenesis    schedule 25.07.2013

Для воспроизведения файла ogg вы можете попробовать oggsharp, он написан на чистом C# без каких-либо внешних зависимостей.

Для MP4 вы должны использовать directshow

person Eden    schedule 28.07.2013