हार्डवेयर संगीतकार एचएएल

हार्डवेयर कंपोज़र (HWC) एचएएल उपलब्ध हार्डवेयर के साथ कंपोजिट बफ़र्स के लिए सबसे कुशल तरीका निर्धारित करता है। एचएएल के रूप में, इसका कार्यान्वयन डिवाइस-विशिष्ट है और आमतौर पर डिस्प्ले हार्डवेयर ओईएम द्वारा किया जाता है।

इस दृष्टिकोण के मूल्य को पहचानना आसान है जब आप ओवरले विमानों पर विचार करते हैं, जो कि GPU के बजाय प्रदर्शन हार्डवेयर में कई बफ़र्स को मिलाते हैं। उदाहरण के लिए, पोर्ट्रेट ओरिएंटेशन में एक विशिष्ट एंड्रॉइड फोन पर विचार करें, शीर्ष पर स्थिति पट्टी, तल पर नेविगेशन बार और हर जगह एप्लिकेशन सामग्री के साथ। प्रत्येक परत की सामग्री अलग-अलग बफ़र्स में हैं। आप निम्न विधियों में से किसी एक का उपयोग करके रचना को संभाल सकते हैं:

  • ऐप कंटेंट को एक स्क्रैच बफर में रेंडर करना, फिर उसके ऊपर स्टेटस बार को रेंडर करना, उसके ऊपर नेविगेशन बार और आखिर में स्क्रैच बफर को डिस्प्ले हार्डवेयर में पास करना।
  • सभी तीन बफ़र्स को डिस्प्ले हार्डवेयर में पास करना और स्क्रीन के विभिन्न हिस्सों के लिए अलग-अलग बफ़र्स से डेटा पढ़ने के लिए निर्देश देना।

उत्तरार्द्ध दृष्टिकोण काफी अधिक कुशल हो सकता है।

प्रदर्शन प्रोसेसर क्षमताओं में काफी भिन्नता है। ओवरले की संख्या, चाहे परतों को घुमाया या मिश्रित किया जा सकता है, और स्थिति और ओवरलैप पर प्रतिबंध एक एपीआई के माध्यम से व्यक्त करना मुश्किल हो सकता है। इन विकल्पों को समायोजित करने के लिए, एचडब्ल्यूसी निम्नलिखित गणना करता है:

  1. सर्फेसफ्लिंगर परतों की पूरी सूची के साथ एचडब्ल्यूसी प्रदान करता है और पूछता है, "आप इसे कैसे संभालना चाहते हैं?"
  2. एचडब्ल्यूसी प्रत्येक परत को डिवाइस या क्लाइंट रचना के रूप में चिह्नित करके प्रतिक्रिया करता है।
  3. सर्फेसफ्लिंगर किसी भी क्लाइंट का ध्यान रखता है, आउटपुट बफर को एचडब्ल्यूसी को पास करता है, और एचडब्ल्यूसी को बाकी को संभालने देता है।

क्योंकि हार्डवेयर विक्रेता कस्टमर निर्णय लेने वाले कोड को कस्टम कर सकते हैं, इसलिए हर डिवाइस से सर्वश्रेष्ठ प्रदर्शन प्राप्त करना संभव है।

जब स्क्रीन पर कुछ भी नहीं बदल रहा हो तो ओवरले प्लेन जीएल कंपोजिशन से कम कुशल हो सकते हैं। यह विशेष रूप से सच है जब ओवरले सामग्री में पारदर्शी पिक्सेल होते हैं और ओवरलैपिंग परतें मिश्रित होती हैं। ऐसे मामलों में, एचडब्ल्यूसी कुछ या सभी परतों के लिए GLES संरचना का अनुरोध कर सकता है और कंपोजिट बफर को बनाए रख सकता है। यदि सर्फेसफिंगर बफ़र्स के एक ही सेट को संमिश्रित करने के लिए कहता है, तो एचडब्ल्यूसी पहले कंपोजिट स्क्रैच बफर दिखा सकता है। यह एक निष्क्रिय डिवाइस की बैटरी जीवन में सुधार कर सकता है।

एंड्रॉइड डिवाइस आमतौर पर चार ओवरले विमानों का समर्थन करते हैं। ओवरले की तुलना में अधिक परतों को संयोजित करने का प्रयास करने से सिस्टम उनमें से कुछ के लिए जीएलईएस संरचना का उपयोग करने का कारण बनता है, जिसका अर्थ है कि ऐप द्वारा उपयोग की जाने वाली परतों की संख्या बिजली की खपत और प्रदर्शन पर एक औसत दर्जे का प्रभाव डाल सकती है।