透過集合功能整理內容
你可以依據偏好儲存及分類內容。
audio_hw_device結構參考
#include < 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 *sin. |
size_t(* get_input_buffer_size)(const struct audio_hw_device *dev, const struct audio_config *config) |
如果 HAL 支援主靜音控制,則取得 HAL 目前的主靜音狀態。當服務啟動時,AudioFlinger 將從主音訊 HAL 中查詢該值,並使用該值在所有 HAL 中設定初始主靜音。不支援此方法的 HAL 可能會將其設為 NULL。
定義位於檔案audio.h的第639行。
如果 HAL 支援主音量控制,則取得 HAL 的目前主音量值。當服務啟動時,AudioFlinger 將從主音訊 HAL 中查詢該值,並使用該值在所有 HAL 中設定初始主音量。不支援此方法的 HAL 可能會將其設為 NULL。
定義位於檔案audio.h的第561行。
char*(* get_parameters)(const struct audio_hw_device *dev, const char *keys) |
音訊flinger 使用它來枚舉每個audio_hw_device實作支援哪些裝置。
傳回值是1個或多個audio_devices_t值的位元遮罩
注意:以 AUDIO_DEVICE_API_VERSION_2_0 開頭的音訊 HAL 實作不實作此函數。所有支援的設備應在audio_policy.conf 檔案中列出,並且音訊策略管理器必須根據該檔案中的資訊選擇適當的音訊模組。
定義位於檔案audio.h的第536行。
檢查音訊硬體介面是否已初始化。成功時回傳 0,失敗時回傳 -ENODEV。
檔案audio.h第542行的定義。
int(* open_input_stream)(結構audio_hw_device *dev、audio_io_handle_t句柄、audio_devices_t裝置、結構audio_config *config、結構audio_stream_in **stream_in、audio_input_flags_t標誌、const char *來源位址、audio_source_flags_t標誌、const char *來源位址、t |
int(* open_output_stream)(結構audio_hw_device *dev、audio_io_handle_t句柄、audio_devices_t裝置、audio_output_flags_t標誌、結構audio_config *config、結構audio_stream_out **stream_out、const char *位址) |
此方法會建立並開啟音訊硬體輸出流。如有需要,「address」參數限定「devices」音訊設備類型。格式格式取決於設備類型:
- 藍牙裝置使用裝置的 MAC 位址,格式為“00:11:22:AA:BB:CC”
- USB 裝置使用 ALSA 卡和裝置編號,格式為“card=X;device=Y”
- 其他設備可以使用數字或任何其他字串。
定義位於檔案audio.h的第599行。
int(* set_audio_port_config)(結構體audio_hw_device *dev, const 結構體audio_port_config *config) |
設定所有音訊活動的音訊靜音狀態。如果傳回 0 以外的任何值,軟體混音器將模擬此功能。
檔案audio.h第630行的定義。
設定除語音通話之外的所有音訊活動的音量。範圍在 0.0 和 1.0 之間。如果傳回 0 以外的任何值,軟體混音器將模擬此功能。
定義位於檔案audio.h的第552行。
當音訊模式改變時呼叫set_mode。 AUDIO_MODE_NORMAL 模式用於標準音訊播放,AUDIO_MODE_RINGTONE 表示正在播放鈴聲,AUDIO_MODE_IN_CALL 表示正在進行通話。
定義位於檔案audio.h的第568行。
該結構的文檔是從以下文件產生的:
- 硬體/libhardware/include/hardware/audio.h
這個頁面中的內容和程式碼範例均受《內容授權》中的授權所規範。Java 與 OpenJDK 是 Oracle 和/或其關係企業的商標或註冊商標。
上次更新時間:2023-12-01 (世界標準時間)。
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["缺少我需要的資訊","missingTheInformationINeed","thumb-down"],["過於複雜/步驟過多","tooComplicatedTooManySteps","thumb-down"],["過時","outOfDate","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["示例/程式碼問題","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2023-12-01 (世界標準時間)。"],[],[]]