audio_hw_device Referencia de estructura

audio_hw_device Referencia de estructura

#include < audio.h >

Campos de información

estructura hw_device_t común
uint32_t(* get_supported_devices )(const estructura audio_hw_device *dev)
En t(* init_check )(const estructura audio_hw_device *dev)
En t(* set_voice_volume )(struct audio_hw_device *dev, volumen flotante)
En t(* set_master_volume )(struct audio_hw_device *dev, volumen flotante)
En t(* get_master_volume )(struct audio_hw_device *dev, float *volumen)
En t(* set_mode )(struct audio_hw_device *dev, modo audio_mode_t)
En t(* set_mic_mute )(struct audio_hw_device *dev, estado bool)
En t(* get_mic_mute )(const struct audio_hw_device *dev, bool *estado)
En t(* set_parameters )(struct audio_hw_device *dev, const char *kv_pairs)
carácter *(* get_parameters )(const struct audio_hw_device *dev, const char *keys)
tamaño_t(* get_input_buffer_size )(const struct audio_hw_device *dev, const struct audio_config *config)
En t(* 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 *dirección)
vacío(* close_output_stream (struct audio_hw_device *dev, struct audio_stream_out *stream_out)
En t(* 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)
vacío(* close_input_stream (struct audio_hw_device *dev, struct audio_stream_in *stream_in)
En t(* volcado ) (const struct audio_hw_device *dev, int fd)
En t(* set_master_mute )(struct audio_hw_device *dev, bool mute)
En t(* get_master_mute )(struct audio_hw_device *dev, bool *mute)
En t(* create_audio_patch (struct audio_hw_device *dev, unsigned int num_sources, const struct audio_port_config *fuentes, unsigned int num_sinks, const struct audio_port_config *sinks, audio_patch_handle_t *handle)
En t(* release_audio_patch (struct audio_hw_device *dev, audio_patch_handle_t identificador)
En t(* get_audio_port )(struct audio_hw_device *dev, struct audio_port *puerto)
En t(* 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 campo

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 .

estructura hw_device_t común

Métodos comunes del dispositivo de audio. Este debe ser el primer miembro de audio_hw_device ya que los usuarios de esta estructura enviarán un puntero hw_device_t a audio_hw_device en contextos donde 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 *fuentes, 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(* volcado)(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 *puerto)

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)

Obtenga el estado de silencio maestro actual para HAL, si HAL admite el control de silencio maestro. AudioFlinger consultará este valor desde el HAL de audio principal cuando se inicie el servicio y utilizará el valor para configurar el silencio maestro inicial en todos los HAL. Los HAL que no admiten este método pueden dejarlo configurado en NULL.

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

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

Obtenga el valor de volumen maestro actual para HAL, si HAL admite el control de volumen maestro. AudioFlinger consultará este valor desde el HAL de audio principal cuando se inicie el servicio y utilizará el valor para configurar el volumen maestro inicial en todos los HAL. Los HAL que no admiten este método pueden dejarlo configurado en NULL.

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

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

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)

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

El valor de retorno es una máscara de bits de 1 o más valores de audio_devices_t

NOTA: las implementaciones de audio HAL 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 apropiado según la información de este archivo.

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

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

verifique si la interfaz del hardware de audio se ha inicializado. Devuelve 0 en caso de éxito, -ENODEV en caso de 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 del 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 *dirección)

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

  • Los dispositivos Bluetooth utilizan la dirección MAC del dispositivo en el formato "00:11:22:AA:BB:CC"
  • Los dispositivos USB utilizan la tarjeta ALSA y los números de dispositivo en el formato "tarjeta=X;dispositivo=Y"
  • Otros dispositivos pueden utilizar 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 manejar)

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)

establezca el estado de silencio de audio para todas las actividades de audio. Si se devuelve cualquier valor distinto de 0, el mezclador de software emulará esta capacidad.

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

int(* set_master_volume)(struct audio_hw_device *dev, volumen flotante)

configure el volumen de audio para todas las actividades de audio que no sean llamadas de voz. Rango entre 0,0 y 1,0. Si se devuelve cualquier valor distinto de 0, el mezclador de software emulará esta capacidad.

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

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

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

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

Se llama a set_mode cuando cambia el modo de audio. El modo AUDIO_MODE_NORMAL es para 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, volumen flotante)

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 para esta estructura se generó a partir del siguiente archivo:
  • hardware/libhardware/include/hardware/ audio.h