Compartilhar via


waveOutOpen

Windows Mobile SupportedWindows Embedded CE Supported

9/8/2008

Essa função abrirá um dispositivo saída de forma de onda especificada para reprodução.

Syntax

MMRESULT waveOutOpen(
  LPHWAVEOUT phwo,
  UINT uDeviceID,
  LPWAVEFORMATEX pwfx,
  DWORD dwCallback,
  DWORD dwInstance,
  DWORD fdwOpen
);

Parameters

  • Phwo
    Endereço preenchido com um identificador que identifica o aberto em formato wave-áudio dispositivo saída. Use o identificador para identificar o dispositivo quando chamado outra forma de onda-áudio funções saída. Este parâmetro pode ser NULL se o sinalizador WAVE_FORMAT_QUERY for especificada para fdwOpen.
  • uDeviceID
    Identificador de dispositivo da forma de onda-áudio dispositivo saída para aberto. Você pode usar o seguinte sinalizador instead of um identificador dispositivo.

    Valor Descrição

    WAVE_MAPPER

    A função seleciona uma forma de onda-áudio saída dispositivo capaz de reproduzir o formato especificado.

  • pwfx
    Ponteiro para uma estrutura WAVEFORMATEX (Waveform Audio) que identifica o formato da forma de onda-áudio dados sejam enviadas para o dispositivo. Você pode livre essa estrutura imediatamente após passando-a waveOutOpen.
  • dwCallback
    Especifica o endereço de uma função callback fixa, um identificador evento, um identificador para uma janela, ou o identificador de um segmento seja chamado durante em formato wave-áudio reprodução às mensagens processo relacionado para o progresso da reprodução. Se nenhuma função callback é exigido, esse valor pode ser zero.
  • dwInstance
    Especifica usuário - instância dados passados para o mecanismo callback. Este parâmetro não é usado com o mecanismo callback janela.
  • fdwOpen
    Sinalizadores para abrir o dispositivo. A seguinte tabela mostra os valores possíveis.

    Valor Descrição

    CALLBACK_EVENT

    O dwCallback parâmetro é um identificador evento.

    CALLBACK_FUNCTION

    O dwCallback parâmetro é um endereço procedimento callback.

    CALLBACK_NULL

    Nenhum mecanismo callback. Essa é a configuração padrão.

    CALLBACK_THREAD

    O dwCallback parâmetro é um identificador segmento.

    CALLBACK_WINDOW

    O dwCallback parâmetro é um identificador janela.

    WAVE_ALLOWSYNC

    Se este sinalizador for especificado, um síncrono em formato wave-áudio dispositivo pode ser aberto. Se este sinalizador não for especificado ao abrir um síncrono driver, o dispositivo não será aberto.

    WAVE_FORMAT_DIRECT

    Se este sinalizador for especificado, o driver ACM Não executar conversões no áudio dados.

    WAVE_FORMAT_QUERY

    Se este sinalizador for especificado, waveOutOpen Consulta o dispositivo para determinar se ele oferece suporte o formato especificado, mas o dispositivo não está realmente aberto.

    WAVE_MAPPED

    Se este sinalizador for especificado, o uDeviceID parâmetro especifica uma forma de onda-áudio dispositivo a ser mapeados para por recurso de mapeamento de onda.

Return Value

Um dos valores descritos a seguinte tabela é retornada.

Valor Descrição

MMSYSERR_NOERROR

O sucesso.

MMSYSERR_INVALHANDLE

Especificado identificador dispositivo é inválido.

MMSYSERR_BADDEVICEID 

Identificador dispositivo especificado é out of intervalo.

MMSYSERR_NODRIVER

Nenhuma driver de dispositivo está presente.

MMSYSERR_NOMEM

Não é possível alocar ou memória bloqueio.

WAVERR_BADFORMAT

Tentou aberto com um sem suporte em formato wave-formato de áudio.

WAVERR_SYNC

Dispositivo é síncrono, mas waveOutOpen foi chamado sem usar o sinalizador WAVE_ALLOWSYNC.

Remarks

Para todas as plataformas

O waveOutOpen função cria dispositivo alças instância que de outras forma de onda saída API funções (por exemplo, waveOutWrite) usado para distinguir um áudio transmitir a partir de outro. Dispositivos de áudio que mistura hardware suporte pode permitir múltiplo dispositivo instâncias que devem ser criado e executado no mesmo tempo.

Além disso, Windows Embedded CE oferece software mistura de múltiplo áudio fluxos. Quando um aplicativo chama um waveOutOpen, a forma de onda API Gerenciador roteia a solicitação para o driver de dispositivo, se ela der suporte a hardware mixagem, ou o mixer software caso contrário.

Use a função waveOutGetNumDevs para determinar o número da forma de onda-áudio dispositivos saída apresentam no sistema. Se o valor especificado pelo uDeviceID parâmetro é um identificador dispositivo, ele pode variar de zero para uma menor do que o número de dispositivos presentes. A constante WAVE_MAPPER também pode ser usado como um identificador dispositivo.

A estrutura apontada pelo pwfx pode ser estendido para incluir informações Type-specific para certos formatos dados usando a estrutura WAVEFORMATEX (Waveform Audio) para especificar o comprimento dos dados adicionais.

Se você escolher para ter uma janela ou segmento receber informações callback, a seguinte mensagens são enviadas para a função procedimento janela para indicar o progresso de forma de onda-áudio saída: MM_WOM_OPEN, MM_WOM_CLOSE e MM_WOM_DONE.

Se você escolher para ter uma função receber informações callback, a seguinte mensagens são enviadas para a função para indicar o progresso de forma de onda-áudio saída: WOM_OPEN, WOM_CLOSE e WOM_DONE.

As notificações de evento retornos de chamada são acionadas quando um ou mais buffers são enviados voltar para o aplicativo. Este é a mesma condição que poderia gerar uma mensagem MM_WOM_DONE para callback uma janela ou uma mensagem WOM_DONE para callback uma função.

Para Windows incorporado CE

O áudio driver é responsável por manter controlar as instâncias que estão atualmente aberto. Se o driver oferecer suporte somente a uma instância única, que geralmente a maiúsculas e minúsculas, e o WODM_OPEN ou WIDM_OPEN mensagens devem falhar com um código de retorno de MMSYSERR_ALLOCATED.

Requirements

Header mmsystem.h
Library coredll.lib
Windows Embedded CE Windows CE 2.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also

Reference

Waveform Audio Functions