audio_hw_device-Strukturreferenz
#include < audio.h >
Datenfelder | |
Struktur hw_device_t | gemeinsam |
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 Modus) |
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) |
Leere(* | 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) |
Leere(* | 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) |
detaillierte Beschreibung
Felddokumentation
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) |
struct hw_device_t common |
Gängige Methoden des Audiogeräts. Dies muss das erste Mitglied von audio_hw_device sein, da Benutzer dieser Struktur in Kontexten, in denen bekannt ist , dass hw_device_t auf ein audio_hw_device verweist, einen Zeiger von hw_device_t auf audio_hw_device umwandeln.
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 *port) |
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) |
Rufen Sie den aktuellen Master-Mute-Status für den HAL ab, wenn der HAL die Master-Mute-Steuerung unterstützt. AudioFlinger fragt diesen Wert beim Start des Dienstes vom primären Audio-HAL ab und verwendet den Wert zum Festlegen der anfänglichen Master-Stummschaltung für alle HALs. HALs, die diese Methode nicht unterstützen, lassen sie möglicherweise auf NULL gesetzt.
int(* get_master_volume)(struct audio_hw_device *dev, float *volume) |
Rufen Sie den aktuellen Master-Lautstärkewert für den HAL ab, wenn der HAL die Master-Lautstärkeregelung unterstützt. AudioFlinger fragt diesen Wert beim Start des Dienstes vom primären Audio-HAL ab und verwendet den Wert zum Festlegen der anfänglichen Master-Lautstärke für alle HALs. HALs, die diese Methode nicht unterstützen, lassen sie möglicherweise auf NULL gesetzt.
int(* get_mic_mute)(const struct audio_hw_device *dev, bool *state) |
char*(* get_parameters)(const struct audio_hw_device *dev, const char *keys) |
uint32_t(* get_supported_devices)(const struct audio_hw_device *dev) |
Wird von Audio Flinger verwendet, um aufzuzählen, welche Geräte von jeder audio_hw_device- Implementierung unterstützt werden.
Der Rückgabewert ist eine Bitmaske mit einem oder mehreren Werten von audio_devices_t
HINWEIS: Audio-HAL-Implementierungen, die mit AUDIO_DEVICE_API_VERSION_2_0 beginnen, implementieren diese Funktion nicht. Alle unterstützten Geräte sollten in der Datei audio_policy.conf aufgeführt sein und der Audiorichtlinienmanager muss das entsprechende Audiomodul basierend auf den Informationen in dieser Datei auswählen.
int(* init_check)(const struct 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 *address) |
Diese Methode erstellt und öffnet den Audio-Hardware-Ausgabestream. Der Parameter „address“ qualifiziert bei Bedarf den Audiogerätetyp „devices“. Das Formatformat hängt vom Gerätetyp ab:
- Bluetooth-Geräte verwenden die MAC-Adresse des Geräts in der Form „00:11:22:AA:BB:CC“.
- USB-Geräte verwenden die ALSA-Karten- und Gerätenummern in der Form „Karte=X;Gerät=Y“.
- Andere Geräte verwenden möglicherweise eine Zahl oder eine andere Zeichenfolge.
int(* release_audio_patch)(struct audio_hw_device *dev, audio_patch_handle_t handle) |
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, float volume) |
int(* set_mic_mute)(struct audio_hw_device *dev, bool state) |
int(* set_mode)(struct audio_hw_device *dev, audio_mode_t Modus) |
int(* set_parameters)(struct audio_hw_device *dev, const char *kv_pairs) |
int(* set_voice_volume)(struct audio_hw_device *dev, float volume) |
Die Dokumentation für diese Struktur wurde aus der folgenden Datei generiert:
- hardware/libhardware/include/hardware/ audio.h