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
Documentación 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) |
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 .
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) |
int(* volcado)(const struct audio_hw_device *dev, int fd) |
int(* get_audio_port)(struct audio_hw_device *dev, struct audio_port *puerto) |
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) |
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.
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.
int(* get_mic_mute)(const struct audio_hw_device *dev, bool *estado) |
char*(* get_parameters)(const struct audio_hw_device *dev, const char *keys) |
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.
int(* init_check)(const estructura audio_hw_device *dev) |
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) |
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.
int(* release_audio_patch)(struct audio_hw_device *dev, audio_patch_handle_t manejar) |
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 mute) |
int(* set_master_volume)(struct audio_hw_device *dev, volumen flotante) |
int(* set_mic_mute)(struct audio_hw_device *dev, estado bool) |
int(* set_mode)(struct audio_hw_device *dev, audio_mode_t modo) |
int(* set_parameters)(struct audio_hw_device *dev, const char *kv_pairs) |
int(* set_voice_volume)(struct audio_hw_device *dev, volumen flotante) |
La documentación para esta estructura se generó a partir del siguiente archivo:
- hardware/libhardware/include/hardware/ audio.h