NAudio - WaveStram & BlockAlignReductionStream - PullRequest
1 голос
/ 23 ноября 2011

Я использую WaveStream и BlockAlignReductionStream от NAudio для чтения данных из файлов MP3. все это прекрасно работает с использованием метода Read, который считывает данные в буфер byte [], но мне интересно, что происходит, когда формат отличается от 8-битного PCM или когда имеется более 1 канала?

Я имею в виду, что он, вероятно, сначала читает 16-битный формат PCM в качестве старшего байта, а не младшего байта, так что это в основном короткий. а что если есть 2 канала? это читает с обоих? один образец из первого и один образец из другого? или точный опозит ... или что? и то же самое происходит для 32-битного формата с плавающей запятой?

Спасибо.

1 Ответ

1 голос
/ 23 ноября 2011

Все декодеры MP3, доступные в NAudio, распаковывают до 16-битного звука, а не 8-битного.Данные сэмплов будут представлены в виде последовательности 16-битных целых чисел в порядке байтов Intel, а сэмплы будут чередоваться слева, справа и т. Д. Для стереозвука.

...