ऑडियो_एचडब्ल्यू_डिवाइस संरचना संदर्भ

ऑडियो_एचडब्ल्यू_डिवाइस संरचना संदर्भ

#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, स्ट्रक्चर ऑडियो_पोर्ट *पोर्ट)
पूर्णांक(* सेट_ऑडियो_पोर्ट_कॉन्फिग )(स्ट्रक्चर ऑडियो_एचडब्ल्यू_डिवाइस *देव, कॉन्स्ट स्ट्रक्चर ऑडियो_पोर्ट_कॉन्फिग *कॉन्फिग)

विस्तृत विवरण

फ़ाइल Audio.h की पंक्ति 516 पर परिभाषा।

फ़ील्ड दस्तावेज़ीकरण

शून्य(* क्लोज़_इनपुट_स्ट्रीम)(स्ट्रक्चर ऑडियो_एचडब्ल्यू_डिवाइस *डेव, स्ट्रक्चर ऑडियो_स्ट्रीम_इन *स्ट्रीम_इन)

फ़ाइल Audio.h की पंक्ति 620 पर परिभाषा।

शून्य(* क्लोज़_आउटपुट_स्ट्रीम)(स्ट्रक्चर ऑडियो_एचडब्ल्यू_डिवाइस *डेव, स्ट्रक्चर ऑडियो_स्ट्रीम_आउट *स्ट्रीम_आउट)

फ़ाइल Audio.h की पंक्ति 607 पर परिभाषा।

struct hw_device_t सामान्य

ऑडियो डिवाइस के सामान्य तरीके. यह Audio_hw_device का पहला सदस्य होना चाहिए क्योंकि इस संरचना के उपयोगकर्ता उन संदर्भों में hw_device_t को Audio_hw_device पॉइंटर में डालेंगे जहां यह ज्ञात है कि hw_device_t एक Audio_hw_device का संदर्भ देता है।

फ़ाइल Audio.h की पंक्ति 522 पर परिभाषा।

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)

रूटिंग नियंत्रण

फ़ाइल Audio.h की पंक्ति 648 पर परिभाषा।

int(* डंप)(const struct Audio_hw_device *dev, int fd)

यह विधि ऑडियो हार्डवेयर की स्थिति को डंप कर देती है

फ़ाइल Audio.h की पंक्ति 624 पर परिभाषा।

int(* get_audio_port)(स्ट्रक्चर ऑडियो_hw_device *dev, स्ट्रक्चर ऑडियो_पोर्ट *पोर्ट)

फ़ाइल Audio.h की पंक्ति 665 पर परिभाषा।

size_t(* get_input_buffer_size)(const struct Audio_hw_device *dev, const struct Audio_config *config)

फ़ाइल Audio.h की पंक्ति 588 पर परिभाषा।

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

यदि एचएएल मास्टर म्यूट नियंत्रण का समर्थन करता है, तो एचएएल के लिए वर्तमान मास्टर म्यूट स्थिति प्राप्त करें। सेवा शुरू होने पर AudioFlinger प्राथमिक ऑडियो HAL से इस मान को क्वेरी करेगा और सभी HAL में प्रारंभिक मास्टर म्यूट सेट करने के लिए मान का उपयोग करेगा। जो एचएएल इस पद्धति का समर्थन नहीं करते वे इसे NULL पर सेट छोड़ सकते हैं।

फ़ाइल Audio.h की पंक्ति 639 पर परिभाषा।

int(* get_master_volume)(struct ऑडियो_hw_device *dev, फ़्लोट *वॉल्यूम)

यदि एचएएल मास्टर वॉल्यूम नियंत्रण का समर्थन करता है, तो एचएएल के लिए वर्तमान मास्टर वॉल्यूम मान प्राप्त करें। सेवा शुरू होने पर AudioFlinger प्राथमिक ऑडियो HAL से इस मान को क्वेरी करेगा और सभी HAL में प्रारंभिक मास्टर वॉल्यूम सेट करने के लिए मान का उपयोग करेगा। जो एचएएल इस पद्धति का समर्थन नहीं करते वे इसे NULL पर सेट छोड़ सकते हैं।

फ़ाइल Audio.h की पंक्ति 561 पर परिभाषा।

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

फ़ाइल Audio.h की पंक्ति 572 पर परिभाषा।

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

फ़ाइल Audio.h की पंक्ति 581 पर परिभाषा।

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 फ़ाइल में सूचीबद्ध किया जाना चाहिए और ऑडियो नीति प्रबंधक को इस फ़ाइल में दी गई जानकारी के आधार पर उपयुक्त ऑडियो मॉड्यूल का चयन करना होगा।

फ़ाइल Audio.h की पंक्ति 536 पर परिभाषा।

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

यह देखने के लिए जांचें कि ऑडियो हार्डवेयर इंटरफ़ेस प्रारंभ किया गया है या नहीं। सफलता पर 0 लौटाता है, विफलता पर -ENODEV।

फ़ाइल Audio.h की पंक्ति 542 पर परिभाषा।

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 स्रोत)

यह विधि ऑडियो हार्डवेयर इनपुट स्ट्रीम बनाती और खोलती है

फ़ाइल Audio.h की पंक्ति 611 पर परिभाषा।

int (* ओपन_आउटपुट_स्ट्रीम) (स्ट्रक्चर ऑडियो_एचडब्ल्यू_डिवाइस * डेव, ऑडियो_आईओ_हैंडल_टी हैंडल, ऑडियो_डिवाइस_टी डिवाइस, ऑडियो_आउटपुट_फ्लैग्स_टी फ्लैग, स्ट्रक्चर ऑडियो_कॉन्फिग * कॉन्फिग, स्ट्रक्चर ऑडियो_स्ट्रीम_आउट ** स्ट्रीम_आउट, कॉन्स्ट चार * पता)

यह विधि ऑडियो हार्डवेयर आउटपुट स्ट्रीम बनाती और खोलती है। यदि आवश्यक हो तो "पता" पैरामीटर "डिवाइस" ऑडियो डिवाइस प्रकार को योग्य बनाता है। प्रारूप स्वरूप डिवाइस प्रकार पर निर्भर करता है:

  • ब्लूटूथ डिवाइस डिवाइस के मैक पते का उपयोग "00:11:22:AA:BB:CC" के रूप में करते हैं।
  • USB डिवाइस "card=X;device=Y" फॉर्म में ALSA कार्ड और डिवाइस नंबर का उपयोग करते हैं
  • अन्य डिवाइस किसी संख्या या किसी अन्य स्ट्रिंग का उपयोग कर सकते हैं।

फ़ाइल Audio.h की पंक्ति 599 पर परिभाषा।

int(* रिलीज_ऑडियो_पैच)(स्ट्रक्चर ऑडियो_एचडब्ल्यू_डिवाइस *डेव, ऑडियो_पैच_हैंडल_टी हैंडल)

फ़ाइल Audio.h की पंक्ति 656 पर परिभाषा।

int(* set_audio_port_config)(struct Audio_hw_device *dev, const struct Audio_port_config *config)

फ़ाइल Audio.h की पंक्ति 669 पर परिभाषा।

int(* set_master_mute)(struct ऑडियो_hw_device *dev, बूल म्यूट)

सभी ऑडियो गतिविधियों के लिए ऑडियो म्यूट स्थिति सेट करें। यदि 0 के अलावा कोई भी मान लौटाया जाता है, तो सॉफ़्टवेयर मिक्सर इस क्षमता का अनुकरण करेगा।

फ़ाइल Audio.h की पंक्ति 630 पर परिभाषा।

int(* set_master_volume)(struct Audio_hw_device *dev, फ़्लोट वॉल्यूम)

वॉयस कॉल के अलावा सभी ऑडियो गतिविधियों के लिए ऑडियो वॉल्यूम सेट करें। रेंज 0.0 और 1.0 के बीच. यदि 0 के अलावा कोई भी मान लौटाया जाता है, तो सॉफ़्टवेयर मिक्सर इस क्षमता का अनुकरण करेगा।

फ़ाइल Audio.h की पंक्ति 552 पर परिभाषा।

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

फ़ाइल Audio.h की पंक्ति 571 पर परिभाषा।

int(* set_mode)(struct ऑडियो_hw_device *dev, ऑडियो_मोड_t मोड)

ऑडियो मोड बदलने पर set_mode को कॉल किया जाता है। AUDIO_MODE_NORMAL मोड मानक ऑडियो प्लेबैक के लिए है, जब रिंगटोन बज रही हो तो AUDIO_MODE_RINGTONE, और जब कॉल चल रही हो तो AUDIO_MODE_IN_CALL है।

फ़ाइल Audio.h की पंक्ति 568 पर परिभाषा।

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

फ़ाइल Audio.h की पंक्ति 575 पर परिभाषा।

int(* set_voice_volume)(struct Audio_hw_device *dev, फ़्लोट वॉल्यूम)

वॉयस कॉल का ऑडियो वॉल्यूम सेट करें। रेंज 0.0 और 1.0 के बीच है

फ़ाइल Audio.h की पंक्ति 545 पर परिभाषा।


इस संरचना के लिए दस्तावेज़ीकरण निम्नलिखित फ़ाइल से तैयार किया गया था:
  • हार्डवेयर/लिबहार्डवेयर/शामिल/हार्डवेयर/ ऑडियो.एच