Referência de estrutura audio_hw_device

Referência de estrutura audio_hw_device

#include < audio.h >

Campos de dados

estrutura hw_device_t comum
uint32_t(* get_supported_devices )(const estrutura audio_hw_device *dev)
interno(* init_check )(const estrutura audio_hw_device *dev)
interno(* set_voice_volume )(struct audio_hw_device *dev, volume flutuante)
interno(* set_master_volume )(struct audio_hw_device *dev, volume flutuante)
interno(* get_master_volume )(struct audio_hw_device *dev, float *volume)
interno(* set_mode )(struct audio_hw_device *dev, modo audio_mode_t)
interno(* set_mic_mute )(struct audio_hw_device *dev, estado bool)
interno(* get_mic_mute )(const struct audio_hw_device *dev, bool *estado)
interno(* set_parameters )(struct audio_hw_device *dev, const char *kv_pairs)
Caracteres *(* get_parameters )(const struct audio_hw_device *dev, const char *keys)
tamanho_t(* get_input_buffer_size )(const struct audio_hw_device *dev, const struct audio_config *config)
interno(* open_output_stream )(struct audio_hw_device *dev, identificador audio_io_handle_t, dispositivos audio_devices_t, sinalizadores audio_output_flags_t, struct audio_config *config, struct audio_stream_out **stream_out, const char *endereço)
vazio(* close_output_stream )(struct audio_hw_device *dev, struct audio_stream_out *stream_out)
interno(* open_input_stream )(struct audio_hw_device *dev, identificador audio_io_handle_t, dispositivos audio_devices_t, struct audio_config *config, struct audio_stream_in **stream_in, sinalizadores audio_input_flags_t, const char *endereço, fonte audio_source_t)
vazio(* close_input_stream )(struct audio_hw_device *dev, struct audio_stream_in *stream_in)
interno(* dump )(const struct audio_hw_device *dev, int fd)
interno(* set_master_mute )(struct audio_hw_device *dev, bool mudo)
interno(* get_master_mute )(struct audio_hw_device *dev, bool *mute)
interno(* create_audio_patch )(struct audio_hw_device *dev, unsigned int num_sources, const struct audio_port_config *sources, unsigned int num_sinks, const struct audio_port_config *sinks, audio_patch_handle_t *handle)
interno(* release_audio_patch )(struct audio_hw_device *dev, identificador audio_patch_handle_t)
interno(* get_audio_port )(struct audio_hw_device *dev, struct audio_port *porta)
interno(* set_audio_port_config )(struct audio_hw_device *dev, const struct audio_port_config *config)

Descrição detalhada

Definição na linha 516 do arquivo audio.h .

Documentação de campo

void(* close_input_stream)(struct audio_hw_device *dev, struct audio_stream_in *stream_in)

Definição na linha 620 do arquivo audio.h .

void(* close_output_stream)(struct audio_hw_device *dev, struct audio_stream_out *stream_out)

Definição na linha 607 do arquivo audio.h .

estrutura hw_device_t comum

Métodos comuns do dispositivo de áudio. Este deve ser o primeiro membro de audio_hw_device , pois os usuários desta estrutura lançarão um ponteiro hw_device_t para audio_hw_device em contextos onde é conhecido que hw_device_t faz referência a um audio_hw_device .

Definição na linha 522 do arquivo audio.h .

int(* create_audio_patch)(struct audio_hw_device *dev, unsigned int num_sources, const struct audio_port_config *sources, unsigned int num_sinks, const struct audio_port_config *sinks, audio_patch_handle_t *handle)

Controle de roteamento

Definição na linha 648 do arquivo audio.h .

int(* dump)(const struct audio_hw_device *dev, int fd)

Este método despeja o estado do hardware de áudio

Definição na linha 624 do arquivo audio.h .

int(* get_audio_port)(struct audio_hw_device *dev, struct audio_port *porta)

Definição na linha 665 do arquivo audio.h .

size_t(* get_input_buffer_size)(const struct audio_hw_device *dev, const struct audio_config *config)

Definição na linha 588 do arquivo audio.h .

int(* get_master_mute)(struct audio_hw_device *dev, bool *mute)

Obtenha o status atual do master mute para o HAL, se o HAL suportar o controle master mute. AudioFlinger consultará esse valor do HAL de áudio primário quando o serviço for iniciado e usará o valor para definir o mudo mestre inicial em todos os HALs. HALs que não suportam este método podem deixá-lo definido como NULL.

Definição na linha 639 do arquivo audio.h .

int(* get_master_volume)(struct audio_hw_device *dev, float *volume)

Obtenha o valor atual do volume mestre para o HAL, se o HAL suportar controle de volume mestre. AudioFlinger consultará esse valor do HAL de áudio primário quando o serviço for iniciado e usará o valor para definir o volume mestre inicial em todos os HALs. HALs que não suportam este método podem deixá-lo definido como NULL.

Definição na linha 561 do arquivo audio.h .

int(* get_mic_mute)(const struct audio_hw_device *dev, bool *estado)

Definição na linha 572 do arquivo audio.h .

char*(* get_parameters)(const struct audio_hw_device *dev, const char *chaves)

Definição na linha 581 do arquivo audio.h .

uint32_t(* get_supported_devices)(const struct audio_hw_device *dev)

usado pelo audio defletor para enumerar quais dispositivos são suportados por cada implementação de audio_hw_device .

O valor de retorno é uma máscara de bits de 1 ou mais valores de audio_devices_t

NOTA: implementações HAL de áudio começando com AUDIO_DEVICE_API_VERSION_2_0 não implementam esta função. Todos os dispositivos suportados devem ser listados no arquivo audio_policy.conf e o gerenciador de políticas de áudio deve escolher o módulo de áudio apropriado com base nas informações deste arquivo.

Definição na linha 536 do arquivo audio.h .

int(* init_check)(const estrutura audio_hw_device *dev)

verifique se a interface do hardware de áudio foi inicializada. retorna 0 em caso de sucesso, -ENODEV em caso de falha.

Definição na linha 542 do arquivo audio.h .

int(* open_input_stream)(struct audio_hw_device *dev, identificador audio_io_handle_t, dispositivos audio_devices_t, struct audio_config *config, struct audio_stream_in **stream_in, sinalizadores audio_input_flags_t, const char *endereço, fonte audio_source_t)

Este método cria e abre o fluxo de entrada do hardware de áudio

Definição na linha 611 do arquivo audio.h .

int(* open_output_stream)(struct audio_hw_device *dev, identificador audio_io_handle_t, dispositivos audio_devices_t, sinalizadores audio_output_flags_t, struct audio_config *config, struct audio_stream_out **stream_out, const char *endereço)

Este método cria e abre o fluxo de saída do hardware de áudio. O parâmetro "address" qualifica o tipo de dispositivo de áudio "devices", se necessário. O formato do formato depende do tipo de dispositivo:

  • Dispositivos Bluetooth usam o endereço MAC do dispositivo no formato "00:11:22:AA:BB:CC"
  • Os dispositivos USB usam o cartão ALSA e os números de dispositivo no formato "card=X;device=Y"
  • Outros dispositivos podem usar um número ou qualquer outra sequência.

Definição na linha 599 do arquivo audio.h .

int(* release_audio_patch)(struct audio_hw_device *dev, identificador audio_patch_handle_t)

Definição na linha 656 do arquivo audio.h .

int(* set_audio_port_config)(struct audio_hw_device *dev, const struct audio_port_config *config)

Definição na linha 669 do arquivo audio.h .

int(* set_master_mute)(struct audio_hw_device *dev, bool mudo)

defina o status de áudio mudo para todas as atividades de áudio. Se qualquer valor diferente de 0 for retornado, o mixer de software emulará esse recurso.

Definição na linha 630 do arquivo audio.h .

int(* set_master_volume)(struct audio_hw_device *dev, volume flutuante)

definir o volume do áudio para todas as atividades de áudio, exceto chamadas de voz. Faixa entre 0,0 e 1,0. Se qualquer valor diferente de 0 for retornado, o mixer de software emulará esse recurso.

Definição na linha 552 do arquivo audio.h .

int(* set_mic_mute)(struct audio_hw_device *dev, estado bool)

Definição na linha 571 do arquivo audio.h .

int(* set_mode)(struct audio_hw_device *dev, modo audio_mode_t)

set_mode é chamado quando o modo de áudio muda. O modo AUDIO_MODE_NORMAL é para reprodução de áudio padrão, AUDIO_MODE_RINGTONE quando um toque está sendo reproduzido e AUDIO_MODE_IN_CALL quando uma chamada está em andamento.

Definição na linha 568 do arquivo audio.h .

int(* set_parameters)(struct audio_hw_device *dev, const char *kv_pairs)

Definição na linha 575 do arquivo audio.h .

int(* set_voice_volume)(struct audio_hw_device *dev, volume flutuante)

definir o volume do áudio de uma chamada de voz. O intervalo está entre 0,0 e 1,0

Definição na linha 545 do arquivo audio.h .


A documentação desta estrutura foi gerada a partir do seguinte arquivo:
  • hardware/libhardware/include/hardware/ audio.h