2010-06-06 3 views
1

Я изучал System.Media.SoundPlayer и NAudio, и AFAIK они воспроизводят только потоки WAVE. WAVE-файл состоит из чистых данных PCM и заголовка формата.Как играть в чистый поток PCM с C#?

Я не хочу предоставлять этот заголовок в формате WAVE. Я хочу передать параметры (битрейт и т. Д.) Программно

+0

Вы хотите воспроизвести WAVE-файл, в котором отсутствует заголовок WAVEFORMATEX? Затем вы должны угадать количество каналов, битрейт и количество бит на выборку ... Или вы хотите найти ссылку на этот заголовок? Документация находится здесь: http://msdn.microsoft.com/en-us/library/dd757720(VS.85).aspx –

+0

@Andreas Я хочу, чтобы иметь возможность предоставлять эту информацию программно, за пределами потока –

+1

Использование родной Windows API (waveOutOpen, waveOutPrepareHeader, waveOutWrite и т. Д.), Можно воспроизводить данные осциллограммы по вашему выбору. Тем не менее, я не очень хорошо осведомлен в мире .NET ... –

ответ

3

Как я уже сказал в приведенном выше комментарии, используя собственный Windows API (waveOutOpen, waveOutPrepareHeader, waveOutWrite и т. Д.), Можно воспроизводить данные осциллограммы твой выбор. Я делаю это ответом, чтобы его можно было принять, если на самом деле это то, что ищет OP.