audio_hw_device Yapı Referansı

audio_hw_device Yapı Referansı

#include < audio.h >

Veri Alanları

struct hw_device_t   yaygı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)
 

Ayrıntılı Açıklama

Tanımı, audio.h dosyasının 516 . satırındadır.

Alan Belgeleri

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

Tanımı, audio.h dosyasının 620 satırı

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

Tanımı, audio.h dosyasının 607 satırındadır.

struct hw_device_t common

Ses cihazının yaygın yöntemleri. Bu yapının kullanıcıları, hw_device_t audio_hw_device yönergesine referans verdiği bilinen bağlamlarda hw_device_t audio_hw_device işleyicisi atacağından bu, audio_hw_device yapısının ilk üyesi olmalıdır.

Tanımı, audio.h dosyasının 522. satırı içindedir.

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)

Yönlendirme denetimi

Tanımı, audio.h dosyasının 648. satırındadır.

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

Bu yöntem, ses donanımının durumunu gösterir.

Tanımı, audio.h dosyasının 624. satırı içindedir.

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

Tanımı, audio.h dosyasının 665 satırı

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

Tanımı, audio.h dosyasının 588. satırı içindedir.

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

HAL, ana sessize alma kontrolünü destekliyorsa HAL için geçerli ana sessize alma durumunu alın. AudioFlinger, hizmet başladığında bu değeri birincil ses HAL'inden sorar ve tüm HAL'lerde ilk ana sessizliği ayarlamak için değeri kullanır. Bu yöntemi desteklemeyen HAL'ler, bu değeri NULL olarak ayarlayabilir.

Tanımı, audio.h dosyasının 639 satırı

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

HAL ana ses seviyesi kontrolünü destekliyorsa HAL için geçerli ana ses seviyesi değerini alın. AudioFlinger, hizmet başladığında bu değeri birincil ses HAL'inden sorar ve tüm HAL'lerde ilk ana ses seviyesini ayarlamak için bu değeri kullanır. Bu yöntemi desteklemeyen HAL'ler, bu değeri NULL olarak ayarlayabilir.

Tanımı, audio.h dosyasının 561 satırındadır.

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

Tanımı, audio.h dosyasının 572 satırındadır.

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

Tanımı, audio.h dosyasının 581 satırındadır.

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

audio_hw_device uygulamasının her biri tarafından hangi cihazların desteklendiğini belirtmek için ses atıcısı tarafından kullanılır.

Döndürülen değer, 1 veya daha fazla audio_devices_t değerinin bit maskesidir.

NOT: AUDIO_DEVICE_API_VERSION_2_0 ile başlayan ses HAL uygulamaları bu işlevi uygulamaz. Desteklenen tüm cihazlar audio_policy.conf dosyasında listelenmelidir ve ses politikası yöneticisi bu dosyadaki bilgilere göre uygun ses modülünü seçmelidir.

Tanımı, audio.h dosyasının 536 satırındadır.

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

Ses donanım arayüzünün başlatılıp başlatılmadığını kontrol eder. Başarılı olursa 0, başarısız olursa -ENODEV döndürür.

Tanımı, audio.h dosyasının 542 satırındadır.

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)

Bu yöntem, ses donanım giriş akışını oluşturup açar.

Tanımı, audio.h dosyasının 611. satırı içindedir.

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)

Bu yöntem, ses donanımı çıkış akışını oluşturup açar. "address" parametresi, gerekirse "devices" ses cihazı türünü tanımlar. Biçim biçimi cihaz türüne bağlıdır:

  • Bluetooth cihazlar, cihazın MAC adresini "00:11:22:AA:BB:CC" biçiminde kullanır.
  • USB cihazları, "card=X;device=Y" şeklindeki ALSA kart ve cihaz numaralarını kullanır.
  • Diğer cihazlar bir sayı veya başka bir dize kullanabilir.

Tanımı, audio.h dosyasının 599 satırındadır.

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

Tanımı, audio.h dosyasının 656 satırındadır.

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

Tanımı, audio.h dosyasının 669 satırındadır.

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

Tüm ses etkinlikleri için sessiz mod durumunu ayarlayabilirsiniz. 0 dışında bir değer döndürülürse yazılım karıştırıcı bu özelliği taklit eder.

Tanımı, audio.h dosyasının 630 satırındadır.

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

Sesli arama dışındaki tüm ses etkinlikleri için ses seviyesini ayarlama 0,0 ile 1,0 arasında bir değer. 0 dışında bir değer döndürülürse yazılım karıştırıcı bu özelliği taklit eder.

Tanımı, audio.h dosyasının 552. satırı içindedir.

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

Tanımı, audio.h dosyasının 571. satırı içindedir.

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

set_mode, ses modu değiştiğinde çağrılır. AUDIO_MODE_NORMAL modu standart ses çalma için, AUDIO_MODE_RINGTONE zil sesi çalarken ve AUDIO_MODE_IN_CALL arama devam ederken kullanılır.

Tanımı, audio.h dosyasının 568 satırındadır.

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

Tanımı, audio.h dosyasının 575. satırı içindedir.

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

Sesli aramanın ses düzeyini ayarlama Aralık 0,0 ile 1,0 arasındadır.

Tanımı, audio.h dosyasının 545 satırına bakın.


Bu yapının dokümanları aşağıdaki dosyadan oluşturulmuştur:
  • hardware/libhardware/include/hardware/ audio.h