Cómo leer la tasa de bits del archivo .wav en C #

dado que tengo un archivo .wav, ¿cuál sería la mejor manera de leer su propiedad Bit rate en C #? He intentado Shell, y he hecho una pregunta¿La propiedad "Velocidad de bits" está fija en el índice 28? sin respuestas así para. También creo que Shell no es la mejor manera de leer las propiedades de los archivos de audio. He investigado en diferentes bibliotecas de medios de código abierto, no puedo encontrar mucho.

TagLib #: Este funciona bien pero tiene dos problemas. no refleja la tasa de bits real en algunos casos donde la tasa de bits es muy baja (como menos de 30), solo devuelve 0. En segundo lugar, no estoy seguro de poder usarla para uso comercial. La licencia dicehttp://opensource.org/licenses/LGPL-2.1

NAudio: Simplemente no expone ninguna propiedad para leer el bitrate, así que tengo que calcularlo. Después de la investigación obtuve esta fórmula para calcular la tasa de bits. bitrate = Samplerate * Channels * BitsPerSample. Esto funciona bien en la mayoría de los casos, sin embargo falla si tienes BitsPerSample = 0 para algunos archivos .wav. Sí, el archivo está absolutamente bien, puedo reproducirlo, pero aún así BitsPerSample es 0.

MediaInfo: de nuevo, no es una propiedad directa, tiene que recorrer todas las propiedades del archivo de audio y luego buscar la "tasa de bits general". Además, hay que agregar dos dlls en el proyecto, uno es .net wraper y el otro es dll real.

Disculpas por un resumen tan largo, pero no quería preguntar "hey, ¿cómo puedo obtener la velocidad de bits del archivo de audio" sin mostrar lo que ya he hecho? Entonces, si tiene un archivo de audio .wav, ¿qué biblioteca / método usaría para obtener la tasa de bits?

Respuestas a la pregunta(2)

Su respuesta a la pregunta