audio_hw_device Dokumentacja struktury

audio_hw_device Dokumentacja struktury

#include < audio.h >

Pola danych

struct hw_device_t wspólny
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, stan bool)
int(* get_mic_mute )(const struct audio_hw_device *dev, bool *state)
int(* set_parameters )(struct audio_hw_device *dev, const char *kv_pairs)
znak *(* get_parameters )(const struct audio_hw_device *dev, const char *keys)
rozmiar_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, urządzenia audio_devices_t, flagi audio_output_flags_t, struct audio_config *config, struct audio_stream_out **stream_out, const char *address)
próżnia(* 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)
próżnia(* 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 )(struktura 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)

szczegółowy opis

Definicja w wierszu 516 pliku audio.h .

Dokumentacja terenowa

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

Definicja w wierszu 620 pliku audio.h .

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

Definicja w wierszu 607 pliku audio.h .

struct hw_device_t common

Typowe metody urządzenia audio. Musi to być pierwszy element elementu audio_hw_device , ponieważ użytkownicy tej struktury będą rzucać hw_device_t na wskaźnik audio_hw_device w kontekstach, w których wiadomo, że hw_device_t odwołuje się do audio_hw_device .

Definicja w wierszu 522 pliku 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 *uchwyt)

Kontrola routingu

Definicja w wierszu 648 pliku audio.h .

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

Ta metoda zrzuca stan sprzętu audio

Definicja w wierszu 624 pliku audio.h .

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

Definicja w wierszu 665 pliku audio.h .

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

Definicja w wierszu 588 pliku audio.h .

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

Uzyskaj aktualny stan wyciszenia głównego dla warstwy HAL, jeśli warstwa HAL obsługuje kontrolę wyciszenia głównego. AudioFlinger zapyta tę wartość z podstawowej warstwy HAL dźwięku po uruchomieniu usługi i użyje tej wartości do ustawienia początkowego głównego wyciszenia we wszystkich warstwach HAL. Warstwy HAL, które nie obsługują tej metody, mogą pozostawić ją ustawioną na NULL.

Definicja w wierszu 639 pliku audio.h .

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

Uzyskaj bieżącą wartość głośności głównej dla warstwy HAL, jeśli warstwa HAL obsługuje sterowanie głośnością główną. AudioFlinger zapyta tę wartość z podstawowej warstwy HAL dźwięku po uruchomieniu usługi i użyje tej wartości do ustawienia początkowej głośności głównej we wszystkich warstwach HAL. Warstwy HAL, które nie obsługują tej metody, mogą pozostawić ją ustawioną na NULL.

Definicja w wierszu 561 pliku audio.h .

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

Definicja w wierszu 572 pliku audio.h .

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

Definicja w wierszu 581 pliku audio.h .

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

używane przez rzucanie dźwięku do wyliczania, jakie urządzenia są obsługiwane przez każdą implementację audio_hw_device .

Wartość zwracana to maska ​​bitowa zawierająca 1 lub więcej wartości audio_devices_t

UWAGA: implementacje audio HAL zaczynające się od AUDIO_DEVICE_API_VERSION_2_0 nie implementują tej funkcji. Wszystkie obsługiwane urządzenia powinny być wymienione w pliku audio_policy.conf, a menedżer polityki audio musi wybrać odpowiedni moduł audio na podstawie informacji zawartych w tym pliku.

Definicja w wierszu 536 pliku audio.h .

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

sprawdź, czy interfejs sprzętowy audio został zainicjowany. zwraca 0 w przypadku sukcesu, -ENODEV w przypadku niepowodzenia.

Definicja w wierszu 542 pliku 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)

Ta metoda tworzy i otwiera sprzętowy strumień wejściowy audio

Definicja w wierszu 611 pliku 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)

Ta metoda tworzy i otwiera sprzętowy strumień wyjściowy audio. Parametr „adres” kwalifikuje w razie potrzeby typ urządzenia audio „urządzenia”. Format formatu zależy od typu urządzenia:

  • Urządzenia Bluetooth używają adresu MAC urządzenia w postaci „00:11:22:AA:BB:CC”
  • Urządzenia USB używają karty ALSA i numerów urządzeń w postaci "card=X;device=Y"
  • Inne urządzenia mogą używać liczby lub dowolnego innego ciągu.

Definicja w wierszu 599 pliku audio.h .

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

Definicja w wierszu 656 pliku audio.h .

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

Definicja w wierszu 669 pliku audio.h .

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

ustawić stan wyciszenia dźwięku dla wszystkich czynności związanych z dźwiękiem. Jeśli zwrócona zostanie jakakolwiek wartość inna niż 0, mikser programowy będzie emulował tę możliwość.

Definicja w wierszu 630 pliku audio.h .

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

ustawić głośność dźwięku dla wszystkich czynności związanych z dźwiękiem innych niż połączenie głosowe. Zakres od 0,0 do 1,0. Jeśli zwrócona zostanie jakakolwiek wartość inna niż 0, mikser programowy będzie emulował tę możliwość.

Definicja w wierszu 552 pliku audio.h .

int(* set_mic_mute)(struct audio_hw_device *dev, stan logiczny)

Definicja w wierszu 571 pliku audio.h .

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

set_mode jest wywoływany, gdy zmienia się tryb audio. Tryb AUDIO_MODE_NORMAL służy do standardowego odtwarzania dźwięku, AUDIO_MODE_RINGTONE, gdy odtwarzany jest dzwonek, i AUDIO_MODE_IN_CALL, gdy trwa połączenie.

Definicja w wierszu 568 pliku audio.h .

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

Definicja w wierszu 575 pliku audio.h .

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

ustawić głośność połączenia głosowego. Zakres wynosi od 0,0 do 1,0

Definicja w wierszu 545 pliku audio.h .


Dokumentacja dla tej struktury została wygenerowana z następującego pliku:
  • sprzęt/libhardware/include/hardware/ audio.h
,

audio_hw_device Dokumentacja struktury

audio_hw_device Dokumentacja struktury

#include < audio.h >

Pola danych

struct hw_device_t wspólny
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, stan bool)
int(* get_mic_mute )(const struct audio_hw_device *dev, bool *state)
int(* set_parameters )(struct audio_hw_device *dev, const char *kv_pairs)
znak *(* get_parameters )(const struct audio_hw_device *dev, const char *keys)
rozmiar_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, urządzenia audio_devices_t, flagi audio_output_flags_t, struct audio_config *config, struct audio_stream_out **stream_out, const char *address)
próżnia(* 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)
próżnia(* 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 )(struktura 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)

szczegółowy opis

Definicja w wierszu 516 pliku audio.h .

Dokumentacja terenowa

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

Definicja w wierszu 620 pliku audio.h .

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

Definicja w wierszu 607 pliku audio.h .

struct hw_device_t common

Typowe metody urządzenia audio. Musi to być pierwszy element elementu audio_hw_device , ponieważ użytkownicy tej struktury będą rzucać hw_device_t na wskaźnik audio_hw_device w kontekstach, w których wiadomo, że hw_device_t odwołuje się do audio_hw_device .

Definicja w wierszu 522 pliku 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 *uchwyt)

Kontrola routingu

Definicja w wierszu 648 pliku audio.h .

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

Ta metoda zrzuca stan sprzętu audio

Definicja w wierszu 624 pliku audio.h .

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

Definicja w wierszu 665 pliku audio.h .

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

Definicja w wierszu 588 pliku audio.h .

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

Uzyskaj aktualny stan wyciszenia głównego dla warstwy HAL, jeśli warstwa HAL obsługuje kontrolę wyciszenia głównego. AudioFlinger zapyta tę wartość z podstawowej warstwy HAL dźwięku po uruchomieniu usługi i użyje tej wartości do ustawienia początkowego głównego wyciszenia we wszystkich warstwach HAL. Warstwy HAL, które nie obsługują tej metody, mogą pozostawić ją ustawioną na NULL.

Definicja w wierszu 639 pliku audio.h .

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

Uzyskaj bieżącą wartość głośności głównej dla warstwy HAL, jeśli warstwa HAL obsługuje sterowanie głośnością główną. AudioFlinger zapyta tę wartość z podstawowej warstwy HAL dźwięku po uruchomieniu usługi i użyje tej wartości do ustawienia początkowej głośności głównej we wszystkich warstwach HAL. Warstwy HAL, które nie obsługują tej metody, mogą pozostawić ją ustawioną na NULL.

Definicja w wierszu 561 pliku audio.h .

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

Definicja w wierszu 572 pliku audio.h .

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

Definicja w wierszu 581 pliku audio.h .

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

używane przez rzucanie dźwięku do wyliczania, jakie urządzenia są obsługiwane przez każdą implementację audio_hw_device .

Wartość zwracana to maska ​​bitowa zawierająca 1 lub więcej wartości audio_devices_t

UWAGA: implementacje audio HAL zaczynające się od AUDIO_DEVICE_API_VERSION_2_0 nie implementują tej funkcji. Wszystkie obsługiwane urządzenia powinny być wymienione w pliku audio_policy.conf, a menedżer polityki audio musi wybrać odpowiedni moduł audio na podstawie informacji zawartych w tym pliku.

Definicja w wierszu 536 pliku audio.h .

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

sprawdź, czy interfejs sprzętowy audio został zainicjowany. zwraca 0 w przypadku sukcesu, -ENODEV w przypadku niepowodzenia.

Definicja w wierszu 542 pliku 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)

Ta metoda tworzy i otwiera sprzętowy strumień wejściowy audio

Definicja w wierszu 611 pliku 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)

Ta metoda tworzy i otwiera sprzętowy strumień wyjściowy audio. Parametr „adres” kwalifikuje w razie potrzeby typ urządzenia audio „urządzenia”. Format formatu zależy od typu urządzenia:

  • Urządzenia Bluetooth używają adresu MAC urządzenia w postaci „00:11:22:AA:BB:CC”
  • Urządzenia USB używają karty ALSA i numerów urządzeń w postaci "card=X;device=Y"
  • Inne urządzenia mogą używać liczby lub dowolnego innego ciągu.

Definicja w wierszu 599 pliku audio.h .

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

Definicja w wierszu 656 pliku audio.h .

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

Definicja w wierszu 669 pliku audio.h .

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

ustawić stan wyciszenia dźwięku dla wszystkich czynności związanych z dźwiękiem. Jeśli zwrócona zostanie jakakolwiek wartość inna niż 0, mikser programowy będzie emulował tę możliwość.

Definicja w wierszu 630 pliku audio.h .

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

ustawić głośność dźwięku dla wszystkich czynności związanych z dźwiękiem innych niż połączenie głosowe. Zakres od 0,0 do 1,0. Jeśli zwrócona zostanie jakakolwiek wartość inna niż 0, mikser programowy będzie emulował tę możliwość.

Definicja w wierszu 552 pliku audio.h .

int(* set_mic_mute)(struct audio_hw_device *dev, stan logiczny)

Definicja w wierszu 571 pliku audio.h .

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

set_mode jest wywoływany, gdy zmienia się tryb audio. Tryb AUDIO_MODE_NORMAL służy do standardowego odtwarzania dźwięku, AUDIO_MODE_RINGTONE, gdy odtwarzany jest dzwonek, i AUDIO_MODE_IN_CALL, gdy trwa połączenie.

Definicja w wierszu 568 pliku audio.h .

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

Definicja w wierszu 575 pliku audio.h .

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

ustawić głośność połączenia głosowego. Zakres wynosi od 0,0 do 1,0

Definicja w wierszu 545 pliku audio.h .


Dokumentacja dla tej struktury została wygenerowana z następującego pliku:
  • sprzęt/libhardware/include/hardware/ audio.h