Есть ли библиотека .NET для нормализации PCM WAV? - PullRequest
2 голосов
/ 19 октября 2010

Я хочу нормализовать WAV-файлы PCM со стороны клиента (Silverlight). Я использую ASP.NET MVC на стороне сервера. И я нашел здесь программу на C

https://neon1.net/prog/normalizer.html Кто-нибудь знает, что если есть похожие библиотеки C #, которые я могу использовать напрямую?

Ответы [ 2 ]

1 голос
/ 20 октября 2010

«Нормализация» аудиофайлов, как правило, не очень хорошая идея, поскольку, если на полной громкости есть только один сэмпл, он не будет иметь никакого эффекта. Лучшим подходом было бы запустить компрессор динамического диапазона для аудио.

В Skype Voice Changer Я написал пример кода, который использует NAudio и пропускает звук через компрессоры динамического диапазона. Однако, как уже говорили, NAudio не может напрямую использоваться в Silverlight из-за взаимодействия. Но вы должны быть в состоянии скопировать WaveFileReader, WaveFormat и WaveFileWriter и скомпилировать их без необходимости вносить слишком много изменений кода. Кроме того, вы не сможете использовать механизм WaveBuffer для приведения между массивами байтов и шортами / числами с плавающей запятой, поэтому вам нужно выполнить преобразование медленным способом (например, используя BitConverter ).

0 голосов
/ 19 октября 2010

Некоторые идеи (кроме попыток NAudio или Bass.NET )

  1. Вызов скомпилированного исполняемого файла c
  2. Скомпилируйте его как dll и используйте P / Invoke
  3. Преобразование кода C в c #
...