Как преобразовать сигнал в универсальном оконном телефоне?

uwp signal-processing audio-streaming wasapi rtaudio

103 просмотра

2 ответа

21 Репутация автора

Я использую RTAudio для получения сигнала от микрофона и использую этот сигнал в качестве входа для другого кодера. Кажется, что UWP всегда возвращает фиксированную частоту дискретизации звука, которая отличается от частоты дискретизации, которую хочет мой кодировщик.

WASAPICapture обратный 44100 Hzсигнал, 2 channel(вход). Я хочу преобразовать этот вход в 1600 Hzсигнал 1 channel(выход). Как правильно сделать повторную выборку?

Данные, которые я получил от обратного вызова WASAPICapture. Этот обратный вызов называется каждый 64 ms, и каждый раз, когда он дал мне 480образцы. Мой кодировщик требовал 320каждый образец 20 ms. Что я должен сделать, чтобы получить это (перекадрировать)?

Не могли бы вы предложить мне какую-нибудь библиотеку для этого? или я должен написать код сам?

Автор: Luong Minh Hiep Источник Размещён: 18.07.2016 08:10

Ответы (2)


0 плюса

4073 Репутация автора

Я хочу преобразовать этот вход в сигнал 1600 Гц, 1 канал (выход). Как правильно сделать повторную выборку

Ссылка здесь

WASAPI привязан к частоте дискретизации звукового движка (определяется при запуске) и не может быть изменен в среде WinRT. Вам нужно будет написать свой собственный преобразователь частоты дискретизации, чтобы перейти от частоты дискретизации медиа-движка к целевой целевой частоте дискретизации.

Например, в NAudio есть оболочка WASAPI, в некоторых случаях об этом говорят: измените файл wav (на 16 кГц и 8 бит) с помощью NAudio

Автор: Franklin Chen - MSFT Размещён: 19.07.2016 08:27

0 плюса

877 Репутация автора

Начиная с RtAudio PR 119 , библиотека теперь поддерживает изменения частоты дискретизации для WASAPI.

Этот PR был объединен master16 октября 2018 года, но на момент написания статьи не являлся частью официального релиза.

Из пиара:

Поскольку сам WASAPI не обеспечивает поддержку частот дискретизации, отличных от текущих системных значений по умолчанию, я ввел библиотеку Microsoft MFT (Media Foundation Transform) в RtApiWasapi, чтобы позволить пользователям указывать частоту дискретизации, которую они хотят использовать.

Автор: Paul Masri-Stone Размещён: 29.10.2018 05:03
Вопросы из категории :
32x32