การอ้างอิงโครงสร้าง audio_hw_device
#include < audio.h >
เขตข้อมูล | |
โครงสร้าง hw_device_t | ทั่วไป |
uint32_t(* | get_supported_devices ) (const struct audio_hw_device *dev) |
อินท์(* | init_check )(const struct audio_hw_device *dev) |
อินท์(* | set_voice_volume ) (struct audio_hw_device *dev, ระดับเสียงลอย) |
อินท์(* | set_master_volume ) (struct audio_hw_device *dev, ระดับเสียงลอย) |
อินท์(* | get_master_volume ) (struct audio_hw_device *dev, float *volume) |
อินท์(* | set_mode ) (struct audio_hw_device *dev, โหมด audio_mode_t) |
อินท์(* | set_mic_mute ) (struct audio_hw_device *dev, สถานะบูล) |
อินท์(* | get_mic_mute ) (const struct audio_hw_device *dev, bool *state) |
อินท์(* | set_parameters ) (struct audio_hw_device *dev, const char *kv_pairs) |
ถ่าน *(* | get_parameters )(const struct audio_hw_device *dev, const char *keys) |
ขนาด_t(* | get_input_buffer_size ) (const struct audio_hw_device *dev, const struct audio_config *config) |
อินท์(* | open_output_stream ) (struct audio_hw_device *dev, จัดการ audio_io_handle_t, อุปกรณ์ audio_devices_t, แฟล็ก audio_output_flags_t, struct audio_config *config, struct audio_stream_out **stream_out, const char *address) |
เป็นโมฆะ(* | close_output_stream ) (struct audio_hw_device *dev, struct audio_stream_out *stream_out) |
อินท์(* | open_input_stream )(struct audio_hw_device *dev, ตัวควบคุม audio_io_handle_t, อุปกรณ์ audio_devices_t, struct audio_config *config, struct audio_stream_in **stream_in, แฟล็ก audio_input_flags_t, const char *address, แหล่งที่มา audio_source_t) |
เป็นโมฆะ(* | close_input_stream ) (struct audio_hw_device *dev, struct audio_stream_in *stream_in) |
อินท์(* | ดัมพ์ )(const struct audio_hw_device *dev, int fd) |
อินท์(* | set_master_mute ) (struct audio_hw_device *dev, บูลปิดเสียง) |
อินท์(* | get_master_mute ) (struct audio_hw_device *dev, bool *mute) |
อินท์(* | create_audio_patch )(struct audio_hw_device *dev, int num_sources ที่ไม่ได้ลงนาม, const struct audio_port_config *sources, int num_sinks ที่ไม่ได้ลงนาม, const struct audio_port_config *sinks, audio_patch_handle_t *handle) |
อินท์(* | release_audio_patch ) (struct audio_hw_device *dev, ตัวจัดการ audio_patch_handle_t) |
อินท์(* | get_audio_port ) (struct audio_hw_device *dev, struct audio_port *port) |
อินท์(* | set_audio_port_config ) (struct audio_hw_device *dev, const struct audio_port_config *config) |
คำอธิบายโดยละเอียด
เอกสารภาคสนาม
เป็นโมฆะ (* close_input_stream) (struct audio_hw_device *dev, struct audio_stream_in *stream_in) |
เป็นโมฆะ (* close_output_stream) (struct audio_hw_device *dev, struct audio_stream_out *stream_out) |
struct hw_device_t ทั่วไป |
วิธีการทั่วไปของอุปกรณ์เสียง นี่ จะต้อง เป็นสมาชิกคนแรกของ audio_hw_device เนื่องจากผู้ใช้ของโครงสร้างนี้จะส่ง hw_device_t ไปยังตัวชี้ audio_hw_device ในบริบทที่ทราบว่า hw_device_t อ้างอิงถึง audio_hw_device
int(* create_audio_patch)(struct audio_hw_device *dev, int num_sources ที่ไม่ได้ลงนาม, const struct audio_port_config * แหล่งที่มา, int num_sinks ที่ไม่ได้ลงนาม, const struct audio_port_config * sinks, audio_patch_handle_t *handle) |
int(* ดัมพ์)(const struct audio_hw_device *dev, int fd) |
int(* get_audio_port)(struct audio_hw_device *dev, struct audio_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) |
รับสถานะการปิดเสียงหลักในปัจจุบันสำหรับ HAL หาก HAL รองรับการควบคุมการปิดเสียงหลัก AudioFlinger จะสอบถามค่านี้จาก HAL เสียงหลักเมื่อบริการเริ่มต้น และใช้ค่าสำหรับการตั้งค่าการปิดเสียงหลักเริ่มต้นใน HAL ทั้งหมด HAL ที่ไม่สนับสนุนวิธีนี้อาจทำให้ตั้งค่าเป็น NULL
int(* get_master_volume)(struct audio_hw_device *dev, float *volume) |
int(* get_mic_mute)(const struct audio_hw_device *dev, bool *state) |
ถ่าน*(* get_parameters)(const struct audio_hw_device *dev, const char *keys) |
uint32_t(* get_supported_devices)(const struct audio_hw_device *dev) |
ใช้โดย audio flinger เพื่อระบุอุปกรณ์ที่รองรับโดยการใช้งาน audio_hw_device แต่ละรายการ
ค่าที่ส่งคืนคือบิตมาสก์ของค่า audio_devices_t 1 ค่าขึ้นไป
หมายเหตุ: การใช้งานเสียง HAL ที่เริ่มต้นด้วย AUDIO_DEVICE_API_VERSION_2_0 จะไม่ใช้ฟังก์ชันนี้ อุปกรณ์ที่รองรับทั้งหมดควรแสดงรายการอยู่ในไฟล์ audio_policy.conf และตัวจัดการนโยบายเสียงจะต้องเลือกโมดูลเสียงที่เหมาะสมตามข้อมูลในไฟล์นี้
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, struct audio_config *config, struct audio_stream_in **stream_in, แฟล็ก audio_input_flags_t, const char *address, แหล่งที่มา audio_source_t) |
int(* open_output_stream)(struct audio_hw_device *dev, audio_io_handle_t handle, อุปกรณ์ audio_devices_t, แฟล็ก audio_output_flags_t, struct audio_config *config, struct audio_stream_out **stream_out, const char *address) |
วิธีการนี้จะสร้างและเปิดสตรีมเอาท์พุตฮาร์ดแวร์เสียง พารามิเตอร์ "ที่อยู่" จะกำหนดประเภทอุปกรณ์เสียง "อุปกรณ์" หากจำเป็น รูปแบบรูปแบบขึ้นอยู่กับประเภทอุปกรณ์:
- อุปกรณ์ Bluetooth ใช้ที่อยู่ MAC ของอุปกรณ์ในรูปแบบ "00:11:22:AA:BB:CC"
- อุปกรณ์ USB ใช้การ์ด ALSA และหมายเลขอุปกรณ์ในรูปแบบ "card=X;device=Y"
- อุปกรณ์อื่นๆ อาจใช้ตัวเลขหรือสตริงอื่นๆ
int (* release_audio_patch) (struct audio_hw_device * dev, ตัวจัดการ audio_patch_handle_t) |
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, บูลปิดเสียง) |
int(* set_master_volume)(struct audio_hw_device *dev, ระดับเสียงลอย) |
int(* set_mic_mute)(struct audio_hw_device *dev, สถานะบูล) |
int(* set_mode)(struct audio_hw_device *dev, โหมด audio_mode_t) |
int(* set_parameters)(struct audio_hw_device *dev, const char *kv_pairs) |
int(* set_voice_volume)(struct audio_hw_device *dev, ระดับเสียงลอย) |
เอกสารประกอบสำหรับโครงสร้างนี้สร้างขึ้นจากไฟล์ต่อไปนี้:
- ฮาร์ดแวร์ / libhardware / รวม / ฮาร์ดแวร์ / audio.h