C# audio library - wmp или другое

Я искал бесплатную (для коммерческого использования) библиотеку, которая может играть в wav и поддерживать воспроизведение быстрее и медленнее - скорость воспроизведения. NAudio не поддерживает это.

Я пытаюсь использовать WMP-плеер. Это поддерживает, но есть небольшая проблема. Если я пытаюсь написать пример приложения, все работает нормально. Когда я переместил код в производство, приложение потерпело крах. .NET Framework покажет мне исключение System.BadImageFormatException. Я немного "погуглил" и дело оказалось в режиме компиляции. В примере приложения я использую смешанную платформу, но она компилируется, вероятно, как x86. В производстве все должно быть скомпилировано как любая платформа.

Библиотека WMP (Interop.WmpLib и Interop.axWmpLib) является COM и скомпилирована только на 32-битной, поэтому я не могу использовать это с любой платформой - я не могу изменить платформу для x86.

У кого-нибудь может быть исправление - другая библиотека, которая работает с x86/x64, или какой-либо совет по использованию WMP Lib в 64-битной среде?

Спасибо

1 ответ

Существует популярная библиотека для такого рода преобразований, которая называется SoundTouch. С их сайта:

SoundTouch - это библиотека обработки аудио с открытым исходным кодом для изменения темпа, высоты тона и скорости воспроизведения аудиопотоков или аудиофайлов.

Soundtouch выпущен под лицензией GNU Lesser General Public License (LGPL), поэтому вы можете использовать его в коммерческих проектах.

Имеется оболочка.net для soundtouch, называемая soundtouchnet, и у них есть пример использования этой оболочки с NAudio: Как использовать NAudio с SoundTouch

SoundTouchNet также является LGPL.

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