Referencia de la estructura audio_hw_device

Referencia de la estructura audio_hw_device

#include < audio.h >

Campos de datos

struct hw_device_t   común
 
uint32_t(*  get_supported_devices )(const struct audio_hw_device *dev)
 
int(*  init_check )(const struct audio_hw_device *dev)
 
int(*  set_voice_volume )(struct audio_hw_device *dev, float volume)
 
int(*  set_master_volume )(struct audio_hw_device *dev, float volume)
 
int(*  get_master_volume )(struct audio_hw_device *dev, float *volume)
 
int(*  set_mode )(struct audio_hw_device *dev, audio_mode_t mode)
 
int(*  set_mic_mute )(struct audio_hw_device *dev, bool state)
 
int(*  get_mic_mute )(const struct audio_hw_device *dev, bool *state)
 
int(*  set_parameters )(struct audio_hw_device *dev, const char *kv_pairs)
 
char *(*  get_parameters )(const struct audio_hw_device *dev, const char *keys)
 
size_t(*  get_input_buffer_size )(const struct audio_hw_device *dev, const struct audio_config *config)
 
int(*  open_output_stream )(struct audio_hw_device *dev, audio_io_handle_t handle, audio_devices_t devices, audio_output_flags_t flags, struct audio_config *config, struct audio_stream_out **stream_out, const char *address)
 
void(*  close_output_stream )(struct audio_hw_device *dev, struct audio_stream_out *stream_out)
 
int(*  open_input_stream )(struct audio_hw_device *dev, audio_io_handle_t handle, audio_devices_t devices, struct audio_config *config, struct audio_stream_in **stream_in, audio_input_flags_t flags, const char *address, audio_source_t source)
 
void(*  close_input_stream )(struct audio_hw_device *dev, struct audio_stream_in *stream_in)
 
int(*  dump )(const struct audio_hw_device *dev, int fd)
 
int(*  set_master_mute )(struct audio_hw_device *dev, bool mute)
 
int(*  get_master_mute )(struct audio_hw_device *dev, bool *mute)
 
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(*  release_audio_patch )(struct audio_hw_device *dev, audio_patch_handle_t handle)
 
int(*  get_audio_port )(struct audio_hw_device *dev, struct audio_port *port)
 
int(*  set_audio_port_config )(struct audio_hw_device *dev, const struct audio_port_config *config)
 

Descripción detallada

Definición en la línea 516 del archivo audio.h .

Documentación de campos

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

Definición en la línea 620 del archivo audio.h .

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

Definición en la línea 607 del archivo audio.h .

struct hw_device_t común

Son métodos comunes del dispositivo de audio. Este debe ser el primer miembro de audio_hw_device , ya que los usuarios de esta estructura transmitirán un hw_device_t a un puntero audio_hw_device en contextos en los que se sabe que hw_device_t hace referencia a un audio_hw_device .

Definición en la línea 522 del archivo 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)

Control de enrutamiento

Definición en la línea 648 del archivo audio.h .

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

Este método vuelca el estado del hardware de audio.

Definición en la línea 624 del archivo audio.h .

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

Definición en la línea 665 del archivo audio.h .

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

Definición en la línea 588 del archivo audio.h .

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

Obtén el estado de silenciamiento principal actual del HAL, si este admite el control de silenciamiento principal. AudioFlinger consultará este valor desde el HAL de audio principal cuando se inicie el servicio y usará el valor para establecer la inhabilitación maestra inicial en todos los HAL. Los HAL que no admiten este método pueden dejarlo establecido en NULL.

Definición en la línea 639 del archivo audio.h .

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

Obtén el valor de volumen principal actual para el sistema HAL, si este admite el control de volumen principal. AudioFlinger consultará este valor desde el HAL de audio principal cuando se inicie el servicio y usará el valor para establecer el volumen principal inicial en todos los HAL. Los HAL que no admiten este método pueden dejarlo establecido en NULL.

Definición en la línea 561 del archivo audio.h .

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

Definición en la línea 572 del archivo audio.h .

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

Definición en la línea 581 del archivo audio.h .

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

que usa audio flinger para enumerar qué dispositivos son compatibles con cada implementación de audio_hw_device .

El valor que se muestra es una máscara de bits de 1 o más valores de audio_devices_t.

NOTA: Las implementaciones de HAL de audio que comienzan con AUDIO_DEVICE_API_VERSION_2_0 no implementan esta función. Todos los dispositivos compatibles deben aparecer en el archivo audio_policy.conf, y el administrador de políticas de audio debe elegir el módulo de audio adecuado según la información de este archivo.

Definición en la línea 536 del archivo audio.h .

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

Verifica si se inicializó la interfaz de hardware de audio. Devuelve 0 si se realiza correctamente y -ENODEV si se produce un error.

Definición en la línea 542 del archivo audio.h .

int(* open_input_stream)(struct audio_hw_device *dev, audio_io_handle_t handle, audio_devices_t devices, struct audio_config *config, struct audio_stream_in **stream_in, audio_input_flags_t flags, const char *address, audio_source_t source)

Este método crea y abre el flujo de entrada de hardware de audio.

Definición en la línea 611 del archivo audio.h .

int(* open_output_stream)(struct audio_hw_device *dev, audio_io_handle_t handle, audio_devices_t devices, audio_output_flags_t flags, struct audio_config *config, struct audio_stream_out **stream_out, const char *address)

Este método crea y abre la transmisión de salida de hardware de audio. El parámetro "address" califica el tipo de dispositivo de audio "devices" si es necesario. El formato depende del tipo de dispositivo:

  • Los dispositivos Bluetooth usan la dirección MAC del dispositivo en el formato "00:11:22:AA:BB:CC".
  • Los dispositivos USB usan la tarjeta ALSA y los números de dispositivos en el formato "card=X;device=Y".
  • Otros dispositivos pueden usar un número o cualquier otra cadena.

Definición en la línea 599 del archivo audio.h .

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

Definición en la línea 656 del archivo audio.h .

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

Definición en la línea 669 del archivo audio.h .

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

Establece el estado de silenciamiento de audio para todas las actividades de audio. Si se muestra cualquier valor que no sea 0, el mezclador de software emulará esta función.

Definición en la línea 630 del archivo audio.h .

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

Establece el volumen de audio para todas las actividades de audio, excepto las llamadas de voz. Rango entre 0.0 y 1.0. Si se muestra cualquier valor que no sea 0, el mezclador de software emulará esta función.

Definición en la línea 552 del archivo audio.h .

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

Definición en la línea 571 del archivo audio.h .

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

Se llama a set_mode cuando cambia el modo de audio. El modo AUDIO_MODE_NORMAL es para la reproducción de audio estándar, AUDIO_MODE_RINGTONE cuando se reproduce un tono de llamada y AUDIO_MODE_IN_CALL cuando hay una llamada en curso.

Definición en la línea 568 del archivo audio.h .

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

Definición en la línea 575 del archivo audio.h .

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

establecer el volumen de audio de una llamada de voz El rango está entre 0.0 y 1.0.

Definición en la línea 545 del archivo audio.h .


La documentación de esta struct se generó a partir del siguiente archivo:
  • hardware/libhardware/include/hardware/ audio.h