Tham chiếu cấu trúc audio_hw_device

Tham chiếu cấu trúc audio_hw_device

#include < audio.h >

Trường dữ liệu

cấu trúc hw_device_t chung
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, âm lượng nổi)
int(* set_master_volume )(struct audio_hw_device *dev, âm lượng nổi)
int(* get_master_volume )(struct audio_hw_device *dev, float *volume)
int(* set_mode )(struct audio_hw_device *dev, chế độ audio_mode_t)
int(* set_mic_mute )(struct audio_hw_device *dev, trạng thái 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)
ký tự *(* get_parameters )(const struct audio_hw_device *dev, const char *keys)
kích thước_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, thiết bị audio_devices_t, cờ audio_output_flags_t, struct audio_config *config, struct audio_stream_out **stream_out, const char *address)
khoảng trống(* close_output_stream )(struct audio_hw_device *dev, struct audio_stream_out *stream_out)
int(* open_input_stream )(struct audio_hw_device *dev, xử lý audio_io_handle_t, thiết bị audio_devices_t, struct audio_config *config, struct audio_stream_in **stream_in, cờ audio_input_flags_t, địa chỉ const char *, nguồn audio_source_t)
khoảng trống(* 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 xử lý)
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)

miêu tả cụ thể

Định nghĩa tại dòng 516 của file audio.h .

Tài liệu hiện trường

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

Định nghĩa tại dòng 620 của file audio.h .

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

Định nghĩa tại dòng 607 của file audio.h .

cấu trúc hw_device_t chung

Các phương pháp phổ biến của thiết bị âm thanh. Đây phải là thành viên đầu tiên của audio_hw_device vì người dùng cấu trúc này sẽ chuyển một con trỏ hw_device_t tới audio_hw_device trong các ngữ cảnh mà hw_device_t đã biết tham chiếu đến audio_hw_device .

Định nghĩa tại dòng 522 của file 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 *handle)

Kiểm soát định tuyến

Định nghĩa tại dòng 648 của file audio.h .

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

Phương pháp này loại bỏ trạng thái của phần cứng âm thanh

Định nghĩa tại dòng 624 của file audio.h .

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

Định nghĩa tại dòng 665 của file audio.h .

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

Định nghĩa tại dòng 588 của file audio.h .

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

Nhận trạng thái tắt tiếng chính hiện tại cho HAL, nếu HAL hỗ trợ điều khiển tắt tiếng chính. AudioFlinger sẽ truy vấn giá trị này từ HAL âm thanh chính khi dịch vụ khởi động và sử dụng giá trị này để đặt chế độ tắt tiếng chính ban đầu trên tất cả các HAL. HAL không hỗ trợ phương pháp này có thể đặt nó thành NULL.

Định nghĩa tại dòng 639 của file audio.h .

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

Nhận giá trị âm lượng chính hiện tại cho HAL, nếu HAL hỗ trợ điều khiển âm lượng chính. AudioFlinger sẽ truy vấn giá trị này từ HAL âm thanh chính khi dịch vụ khởi động và sử dụng giá trị để đặt âm lượng chính ban đầu trên tất cả các HAL. HAL không hỗ trợ phương pháp này có thể đặt nó thành NULL.

Định nghĩa tại dòng 561 của file audio.h .

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

Định nghĩa tại dòng 572 của file audio.h .

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

Định nghĩa tại dòng 581 của file audio.h .

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

được sử dụng bởi bộ rung âm thanh để liệt kê những thiết bị nào được hỗ trợ bởi mỗi lần triển khai audio_hw_device .

Giá trị trả về là bitmask gồm 1 hoặc nhiều giá trị của audio_devices_t

LƯU Ý: việc triển khai HAL âm thanh bắt đầu bằng AUDIO_DEVICE_API_VERSION_2_0 không triển khai chức năng này. Tất cả các thiết bị được hỗ trợ phải được liệt kê trong tệp audio_policy.conf và trình quản lý chính sách âm thanh phải chọn mô-đun âm thanh phù hợp dựa trên thông tin trong tệp này.

Định nghĩa tại dòng 536 của file audio.h .

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

kiểm tra xem giao diện phần cứng âm thanh đã được khởi tạo chưa. trả về 0 nếu thành công, -ENODEV nếu thất bại.

Định nghĩa tại dòng 542 của file audio.h .

int(* open_input_stream)(struct audio_hw_device *dev, xử lý audio_io_handle_t, thiết bị audio_devices_t, struct audio_config *config, struct audio_stream_in **stream_in, cờ audio_input_flags_t, địa chỉ const char *, nguồn audio_source_t)

Phương pháp này tạo và mở luồng đầu vào phần cứng âm thanh

Định nghĩa tại dòng 611 của file audio.h .

int(* open_output_stream)(struct audio_hw_device *dev, xử lý audio_io_handle_t, thiết bị audio_devices_t, cờ audio_output_flags_t, struct audio_config *config, struct audio_stream_out **stream_out, const char *địa chỉ)

Phương pháp này tạo và mở luồng đầu ra phần cứng âm thanh. Tham số "địa chỉ" sẽ xác định loại thiết bị âm thanh "thiết bị" nếu cần. Định dạng định dạng tùy thuộc vào loại thiết bị:

  • Thiết bị Bluetooth sử dụng địa chỉ MAC của thiết bị có dạng “00:11:22:AA:BB:CC”
  • Thiết bị USB sử dụng thẻ ALSA và số thiết bị ở dạng "card=X;device=Y"
  • Các thiết bị khác có thể sử dụng một số hoặc bất kỳ chuỗi nào khác.

Định nghĩa tại dòng 599 của file audio.h .

int(* Release_audio_patch)(struct audio_hw_device *dev, xử lý audio_patch_handle_t)

Định nghĩa tại dòng 656 của file audio.h .

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

Định nghĩa tại dòng 669 của file audio.h .

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

đặt trạng thái tắt âm thanh cho mọi hoạt động âm thanh. Nếu bất kỳ giá trị nào khác 0 được trả về, bộ trộn phần mềm sẽ mô phỏng khả năng này.

Định nghĩa tại dòng 630 của file audio.h .

int(* set_master_volume)(struct audio_hw_device *dev, khối lượng float)

đặt âm lượng cho tất cả các hoạt động âm thanh ngoài cuộc gọi thoại. Phạm vi từ 0,0 đến 1,0. Nếu bất kỳ giá trị nào khác 0 được trả về, bộ trộn phần mềm sẽ mô phỏng khả năng này.

Định nghĩa tại dòng 552 của file audio.h .

int(* set_mic_mute)(struct audio_hw_device *dev, trạng thái bool)

Định nghĩa tại dòng 571 của file audio.h .

int(* set_mode)(struct audio_hw_device *dev, chế độ audio_mode_t)

set_mode được gọi khi chế độ âm thanh thay đổi. Chế độ AUDIO_MODE_NORMAL dành cho phát lại âm thanh tiêu chuẩn, AUDIO_MODE_RINGTONE khi nhạc chuông đang phát và AUDIO_MODE_IN_CALL khi cuộc gọi đang diễn ra.

Định nghĩa tại dòng 568 của file audio.h .

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

Định nghĩa tại dòng 575 của file audio.h .

int(* set_voice_volume)(struct audio_hw_device *dev, âm lượng nổi)

đặt âm lượng của cuộc gọi thoại. Phạm vi nằm trong khoảng từ 0,0 đến 1,0

Định nghĩa tại dòng 545 của file audio.h .


Tài liệu cho cấu trúc này được tạo từ tệp sau:
  • phần cứng/libhardware/bao gồm/phần cứng/ audio.h
,

Tham chiếu cấu trúc audio_hw_device

Tham chiếu cấu trúc audio_hw_device

#include < audio.h >

Trường dữ liệu

cấu trúc hw_device_t chung
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, âm lượng nổi)
int(* set_master_volume )(struct audio_hw_device *dev, âm lượng nổi)
int(* get_master_volume )(struct audio_hw_device *dev, float *volume)
int(* set_mode )(struct audio_hw_device *dev, chế độ audio_mode_t)
int(* set_mic_mute )(struct audio_hw_device *dev, trạng thái 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)
ký tự *(* get_parameters )(const struct audio_hw_device *dev, const char *keys)
kích thước_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, thiết bị audio_devices_t, cờ audio_output_flags_t, struct audio_config *config, struct audio_stream_out **stream_out, const char *address)
khoảng trống(* 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, thiết bị audio_devices_t, struct audio_config *config, struct audio_stream_in **stream_in, cờ audio_input_flags_t, địa chỉ const char *, nguồn audio_source_t)
khoảng trống(* 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 xử lý)
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)

miêu tả cụ thể

Định nghĩa tại dòng 516 của file audio.h .

Tài liệu hiện trường

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

Định nghĩa tại dòng 620 của file audio.h .

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

Định nghĩa tại dòng 607 của file audio.h .

cấu trúc hw_device_t chung

Các phương pháp phổ biến của thiết bị âm thanh. Đây phải là thành viên đầu tiên của audio_hw_device vì người dùng cấu trúc này sẽ chuyển một con trỏ hw_device_t tới audio_hw_device trong các ngữ cảnh mà hw_device_t đã biết tham chiếu đến audio_hw_device .

Định nghĩa tại dòng 522 của file 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 *handle)

Kiểm soát định tuyến

Định nghĩa tại dòng 648 của file audio.h .

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

Phương pháp này loại bỏ trạng thái của phần cứng âm thanh

Định nghĩa tại dòng 624 của file audio.h .

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

Định nghĩa tại dòng 665 của file audio.h .

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

Định nghĩa tại dòng 588 của file audio.h .

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

Nhận trạng thái tắt tiếng chính hiện tại cho HAL, nếu HAL hỗ trợ điều khiển tắt tiếng chính. AudioFlinger sẽ truy vấn giá trị này từ HAL âm thanh chính khi dịch vụ khởi động và sử dụng giá trị này để đặt chế độ tắt tiếng chính ban đầu trên tất cả các HAL. HAL không hỗ trợ phương pháp này có thể đặt nó thành NULL.

Định nghĩa tại dòng 639 của file audio.h .

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

Nhận giá trị âm lượng chính hiện tại cho HAL, nếu HAL hỗ trợ điều khiển âm lượng chính. AudioFlinger sẽ truy vấn giá trị này từ HAL âm thanh chính khi dịch vụ khởi động và sử dụng giá trị để đặt âm lượng chính ban đầu trên tất cả các HAL. HAL không hỗ trợ phương pháp này có thể đặt nó thành NULL.

Định nghĩa tại dòng 561 của file audio.h .

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

Định nghĩa tại dòng 572 của file audio.h .

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

Định nghĩa tại dòng 581 của file audio.h .

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

được sử dụng bởi bộ rung âm thanh để liệt kê những thiết bị nào được hỗ trợ bởi mỗi lần triển khai audio_hw_device .

Giá trị trả về là bitmask gồm 1 hoặc nhiều giá trị của audio_devices_t

LƯU Ý: việc triển khai HAL âm thanh bắt đầu bằng AUDIO_DEVICE_API_VERSION_2_0 không triển khai chức năng này. Tất cả các thiết bị được hỗ trợ phải được liệt kê trong tệp audio_policy.conf và trình quản lý chính sách âm thanh phải chọn mô-đun âm thanh phù hợp dựa trên thông tin trong tệp này.

Định nghĩa tại dòng 536 của file audio.h .

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

kiểm tra xem giao diện phần cứng âm thanh đã được khởi tạo chưa. trả về 0 nếu thành công, -ENODEV nếu thất bại.

Định nghĩa tại dòng 542 của file audio.h .

int(* open_input_stream)(struct audio_hw_device *dev, xử lý audio_io_handle_t, thiết bị audio_devices_t, struct audio_config *config, struct audio_stream_in **stream_in, cờ audio_input_flags_t, địa chỉ const char *, nguồn audio_source_t)

Phương pháp này tạo và mở luồng đầu vào phần cứng âm thanh

Định nghĩa tại dòng 611 của file audio.h .

int(* open_output_stream)(struct audio_hw_device *dev, xử lý audio_io_handle_t, thiết bị audio_devices_t, cờ audio_output_flags_t, struct audio_config *config, struct audio_stream_out **stream_out, const char *địa chỉ)

Phương pháp này tạo và mở luồng đầu ra phần cứng âm thanh. Tham số "địa chỉ" sẽ xác định loại thiết bị âm thanh "thiết bị" nếu cần. Định dạng định dạng tùy thuộc vào loại thiết bị:

  • Thiết bị Bluetooth sử dụng địa chỉ MAC của thiết bị có dạng “00:11:22:AA:BB:CC”
  • Thiết bị USB sử dụng thẻ ALSA và số thiết bị ở dạng "card=X;device=Y"
  • Các thiết bị khác có thể sử dụng một số hoặc bất kỳ chuỗi nào khác.

Định nghĩa tại dòng 599 của file audio.h .

int(* Release_audio_patch)(struct audio_hw_device *dev, xử lý audio_patch_handle_t)

Định nghĩa tại dòng 656 của file audio.h .

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

Định nghĩa tại dòng 669 của file audio.h .

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

đặt trạng thái tắt âm thanh cho mọi hoạt động âm thanh. Nếu bất kỳ giá trị nào khác 0 được trả về, bộ trộn phần mềm sẽ mô phỏng khả năng này.

Định nghĩa tại dòng 630 của file audio.h .

int(* set_master_volume)(struct audio_hw_device *dev, khối lượng float)

đặt âm lượng cho tất cả các hoạt động âm thanh ngoài cuộc gọi thoại. Phạm vi từ 0,0 đến 1,0. Nếu bất kỳ giá trị nào khác 0 được trả về, bộ trộn phần mềm sẽ mô phỏng khả năng này.

Định nghĩa tại dòng 552 của file audio.h .

int(* set_mic_mute)(struct audio_hw_device *dev, trạng thái bool)

Định nghĩa tại dòng 571 của file audio.h .

int(* set_mode)(struct audio_hw_device *dev, chế độ audio_mode_t)

set_mode được gọi khi chế độ âm thanh thay đổi. Chế độ AUDIO_MODE_NORMAL dành cho phát lại âm thanh tiêu chuẩn, AUDIO_MODE_RINGTONE khi nhạc chuông đang phát và AUDIO_MODE_IN_CALL khi cuộc gọi đang diễn ra.

Định nghĩa tại dòng 568 của file audio.h .

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

Định nghĩa tại dòng 575 của file audio.h .

int(* set_voice_volume)(struct audio_hw_device *dev, âm lượng nổi)

đặt âm lượng của cuộc gọi thoại. Phạm vi nằm trong khoảng từ 0,0 đến 1,0

Định nghĩa tại dòng 545 của file audio.h .


Tài liệu cho cấu trúc này được tạo từ tệp sau:
  • phần cứng/libhardware/bao gồm/phần cứng/ audio.h