Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
[O recurso associado a esta página, Waveform Audio, é um recurso legado. Foi substituído por WASAPI e Audio Graphs. WASAPI e Audio Graphs foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda vivamente que o novo código utilize WASAPI e Audio Graphs em vez de Waveform Audio, sempre que possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]
Depois de abrires um dispositivo de entrada de áudio em forma de onda, podes começar a gravar dados de áudio em forma de onda. Os dados de áudio de forma de onda são gravados em buffers fornecidos pelo aplicativo especificados por uma estrutura deWAVEHDR. Estes blocos de dados devem ser preparados antes de serem utilizados; para obter mais informações, consulte Audio Data Blocks.
O Windows fornece as seguintes funções para gerenciar a gravação de áudio em forma de onda.
| Função | Descrição |
|---|---|
| waveInAddBuffer | Envia um buffer para o driver de dispositivo para que ele possa ser preenchido com dados de áudio de forma de onda gravados. |
| waveInReset | Interrompe a gravação de áudio em forma de onda e marca todos os buffers pendentes como concluídos. |
| waveInStart | Inicia a gravação de áudio em forma de onda. |
| waveInStop | Interrompe a gravação de áudio em forma de onda. |
Use o função waveInAddBuffer para enviar buffers para o driver de dispositivo. À medida que os buffers são preenchidos com dados de áudio em forma de onda gravados, a aplicação é notificada com uma mensagem de janela, mensagem de retorno, mensagem de thread ou evento, dependendo do sinalizador especificado quando o dispositivo foi aberto.
Antes de começar a gravar usando waveInStart, você deve enviar pelo menos um buffer para o driver, ou os dados de entrada podem ser perdidos.
Antes de fechar o dispositivo usando waveInClose, chame waveInReset para assinalar quaisquer blocos de dados pendentes como concluídos.
Tópicos relacionados