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
Documentação de campo
void(* close_input_stream)(struct audio_hw_device *dev, struct audio_stream_in *stream_in) |
void(* close_output_stream)(struct audio_hw_device *dev, struct audio_stream_out *stream_out) |
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 .
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) |
int(* dump)(const struct audio_hw_device *dev, int fd) |
int(* get_audio_port)(struct audio_hw_device *dev, struct audio_port *porta) |
size_t(* get_input_buffer_size)(const struct audio_hw_device *dev, const struct audio_config *config) |
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.
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.
int(* get_mic_mute)(const struct audio_hw_device *dev, bool *estado) |
char*(* get_parameters)(const struct audio_hw_device *dev, const char *chaves) |
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.
int(* init_check)(const estrutura audio_hw_device *dev) |
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) |
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.
int(* release_audio_patch)(struct audio_hw_device *dev, identificador audio_patch_handle_t) |
int(* set_audio_port_config)(struct audio_hw_device *dev, const struct audio_port_config *config) |
int(* set_master_mute)(struct audio_hw_device *dev, bool mudo) |
int(* set_master_volume)(struct audio_hw_device *dev, volume flutuante) |
int(* set_mic_mute)(struct audio_hw_device *dev, estado bool) |
int(* set_mode)(struct audio_hw_device *dev, modo audio_mode_t) |
int(* set_parameters)(struct audio_hw_device *dev, const char *kv_pairs) |
int(* set_voice_volume)(struct audio_hw_device *dev, volume flutuante) |
A documentação desta estrutura foi gerada a partir do seguinte arquivo:
- hardware/libhardware/include/hardware/ audio.h