ऑडियो_एचडब्ल्यू_डिवाइस संरचना संदर्भ
#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, फ़्लोट वॉल्यूम) |
पूर्णांक(* | सेट_मास्टर_वॉल्यूम )(स्ट्रक्चर ऑडियो_एचडब्ल्यू_डिवाइस *डेव, फ्लोट वॉल्यूम) |
पूर्णांक(* | get_master_volume )(struct ऑडियो_hw_device *dev, फ़्लोट *वॉल्यूम) |
पूर्णांक(* | सेट_मोड )(स्ट्रक्चर ऑडियो_एचडब्ल्यू_डिवाइस *डेव, ऑडियो_मोड_टी मोड) |
पूर्णांक(* | set_mic_mute )(struct Audio_hw_device *dev, bool state) |
पूर्णांक(* | 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) |
पूर्णांक(* | ओपन_आउटपुट_स्ट्रीम )(स्ट्रक्चर ऑडियो_एचडब्ल्यू_डिवाइस *डेव, ऑडियो_आईओ_हैंडल_टी हैंडल, ऑडियो_डिवाइसेस_टी डिवाइस, ऑडियो_आउटपुट_फ्लैग्स_टी फ्लैग, स्ट्रक्चर ऑडियो_कॉन्फिग *कॉन्फिग, स्ट्रक्चर ऑडियो_स्ट्रीम_आउट **स्ट्रीम_आउट, कॉन्स्ट चार *एड्रेस) |
खालीपन(* | क्लोज़_आउटपुट_स्ट्रीम )(स्ट्रक्चर ऑडियो_एचडब्ल्यू_डिवाइस *डेव, स्ट्रक्चर ऑडियो_स्ट्रीम_आउट *स्ट्रीम_आउट) |
पूर्णांक(* | ओपन_इनपुट_स्ट्रीम )(स्ट्रक्चर ऑडियो_एचडब्ल्यू_डिवाइस *डेव, ऑडियो_आईओ_हैंडल_टी हैंडल, ऑडियो_डिवाइसेस_टी डिवाइस, स्ट्रक्चर ऑडियो_कॉन्फिग *कॉन्फिग, स्ट्रक्चर ऑडियो_स्ट्रीम_इन **स्ट्रीम_इन, ऑडियो_इनपुट_फ्लैग्स_टी फ्लैग, कॉन्स चार *एड्रेस, ऑडियो_सोर्स_टी सोर्स) |
खालीपन(* | क्लोज़_इनपुट_स्ट्रीम )(स्ट्रक्चर ऑडियो_एचडब्ल्यू_डिवाइस *डेव, स्ट्रक्चर ऑडियो_स्ट्रीम_इन *स्ट्रीम_इन) |
पूर्णांक(* | डंप )(कॉन्स्ट स्ट्रक्चर ऑडियो_एचडब्ल्यू_डिवाइस *डेव, इंट एफडी) |
पूर्णांक(* | सेट_मास्टर_म्यूट )(स्ट्रक्चर ऑडियो_एचडब्ल्यू_डिवाइस *डेव, बूल म्यूट) |
पूर्णांक(* | get_master_mute )(struct Audio_hw_device *dev, bool *mute) |
पूर्णांक(* | 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) |
पूर्णांक(* | रिलीज_ऑडियो_पैच )(स्ट्रक्चर ऑडियो_एचडब्ल्यू_डिवाइस *डेव, ऑडियो_पैच_हैंडल_टी हैंडल) |
पूर्णांक(* | get_audio_port )(स्ट्रक्चर ऑडियो_hw_device *dev, स्ट्रक्चर ऑडियो_पोर्ट *पोर्ट) |
पूर्णांक(* | सेट_ऑडियो_पोर्ट_कॉन्फिग )(स्ट्रक्चर ऑडियो_एचडब्ल्यू_डिवाइस *देव, कॉन्स्ट स्ट्रक्चर ऑडियो_पोर्ट_कॉन्फिग *कॉन्फिग) |
विस्तृत विवरण
फ़ील्ड दस्तावेज़ीकरण
शून्य(* क्लोज़_इनपुट_स्ट्रीम)(स्ट्रक्चर ऑडियो_एचडब्ल्यू_डिवाइस *डेव, स्ट्रक्चर ऑडियो_स्ट्रीम_इन *स्ट्रीम_इन) |
शून्य(* क्लोज़_आउटपुट_स्ट्रीम)(स्ट्रक्चर ऑडियो_एचडब्ल्यू_डिवाइस *डेव, स्ट्रक्चर ऑडियो_स्ट्रीम_आउट *स्ट्रीम_आउट) |
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, 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(* डंप)(const struct Audio_hw_device *dev, int fd) |
int(* get_audio_port)(स्ट्रक्चर ऑडियो_hw_device *dev, स्ट्रक्चर ऑडियो_पोर्ट *पोर्ट) |
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) |
यदि एचएएल मास्टर म्यूट नियंत्रण का समर्थन करता है, तो एचएएल के लिए वर्तमान मास्टर म्यूट स्थिति प्राप्त करें। सेवा शुरू होने पर AudioFlinger प्राथमिक ऑडियो HAL से इस मान को क्वेरी करेगा और सभी HAL में प्रारंभिक मास्टर म्यूट सेट करने के लिए मान का उपयोग करेगा। जो एचएएल इस पद्धति का समर्थन नहीं करते वे इसे NULL पर सेट छोड़ सकते हैं।
int(* get_master_volume)(struct ऑडियो_hw_device *dev, फ़्लोट *वॉल्यूम) |
यदि एचएएल मास्टर वॉल्यूम नियंत्रण का समर्थन करता है, तो एचएएल के लिए वर्तमान मास्टर वॉल्यूम मान प्राप्त करें। सेवा शुरू होने पर AudioFlinger प्राथमिक ऑडियो HAL से इस मान को क्वेरी करेगा और सभी HAL में प्रारंभिक मास्टर वॉल्यूम सेट करने के लिए मान का उपयोग करेगा। जो एचएएल इस पद्धति का समर्थन नहीं करते वे इसे NULL पर सेट छोड़ सकते हैं।
int(* get_mic_mute)(const struct Audio_hw_device *dev, bool *state) |
char*(* get_parameters)(const struct Audio_hw_device *dev, const char *keys) |
uint32_t(* get_supported_devices)(const struct Audio_hw_device *dev) |
प्रत्येक ऑडियो_एचडब्ल्यू_डिवाइस कार्यान्वयन द्वारा कौन से डिवाइस समर्थित हैं, इसकी गणना करने के लिए ऑडियो फ़्लिंगर द्वारा उपयोग किया जाता है।
रिटर्न वैल्यू Audio_devices_t के 1 या अधिक मानों का बिटमास्क है
ध्यान दें: AUDIO_DEVICE_API_VERSION_2_0 से शुरू होने वाले ऑडियो HAL कार्यान्वयन इस फ़ंक्शन को लागू नहीं करते हैं। सभी समर्थित डिवाइसों को 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 हैंडल, Audio_devices_t डिवाइस, struct Audio_config *config, struct Audio_stream_in **stream_in, Audio_input_flags_t फ़्लैग, स्थिरांक चार *पता, Audio_source_t स्रोत) |
int (* ओपन_आउटपुट_स्ट्रीम) (स्ट्रक्चर ऑडियो_एचडब्ल्यू_डिवाइस * डेव, ऑडियो_आईओ_हैंडल_टी हैंडल, ऑडियो_डिवाइस_टी डिवाइस, ऑडियो_आउटपुट_फ्लैग्स_टी फ्लैग, स्ट्रक्चर ऑडियो_कॉन्फिग * कॉन्फिग, स्ट्रक्चर ऑडियो_स्ट्रीम_आउट ** स्ट्रीम_आउट, कॉन्स्ट चार * पता) |
यह विधि ऑडियो हार्डवेयर आउटपुट स्ट्रीम बनाती और खोलती है। यदि आवश्यक हो तो "पता" पैरामीटर "डिवाइस" ऑडियो डिवाइस प्रकार को योग्य बनाता है। प्रारूप स्वरूप डिवाइस प्रकार पर निर्भर करता है:
- ब्लूटूथ डिवाइस डिवाइस के मैक पते का उपयोग "00:11:22:AA:BB:CC" के रूप में करते हैं।
- USB डिवाइस "card=X;device=Y" फॉर्म में ALSA कार्ड और डिवाइस नंबर का उपयोग करते हैं
- अन्य डिवाइस किसी संख्या या किसी अन्य स्ट्रिंग का उपयोग कर सकते हैं।
int(* रिलीज_ऑडियो_पैच)(स्ट्रक्चर ऑडियो_एचडब्ल्यू_डिवाइस *डेव, ऑडियो_पैच_हैंडल_टी हैंडल) |
int(* set_audio_port_config)(struct Audio_hw_device *dev, const struct Audio_port_config *config) |
int(* set_master_mute)(struct ऑडियो_hw_device *dev, बूल म्यूट) |
int(* set_master_volume)(struct Audio_hw_device *dev, फ़्लोट वॉल्यूम) |
int(* set_mic_mute)(struct Audio_hw_device *dev, bool state) |
int(* set_mode)(struct ऑडियो_hw_device *dev, ऑडियो_मोड_t मोड) |
int(* set_parameters)(struct Audio_hw_device *dev, const char *kv_pairs) |
int(* set_voice_volume)(struct Audio_hw_device *dev, फ़्लोट वॉल्यूम) |
इस संरचना के लिए दस्तावेज़ीकरण निम्नलिखित फ़ाइल से तैयार किया गया था:
- हार्डवेयर/लिबहार्डवेयर/शामिल/हार्डवेयर/ ऑडियो.एच