لقطات شاشة لميزة "النطاق العالي الديناميكية" في Android

بعد طرح فيديوهات النطاق العالي الديناميكية (HDR)، بدأت خدمات البث المباشر ببث فيديوهات HDR مع التركيز على تجارب ملء الشاشة. تتيح تطبيقات وسائل التواصل الاجتماعي الآن تسجيل الفيديو بنطاق عالي الديناميكية (HDR) وبدقة HDR فائقة، ما يشير إلى تزايد الاهتمام باستخدام HDR في مختلف التطبيقات.

التوافق مع النطاق العالي الديناميكية (HDR) على أجهزة Android

أتاح Android استخدام تكنولوجيا HDR من خلال العديد من الإنجازات:

Android 7

  • توفير الدعم الأوّلي لفك ترميز الفيديو وعرضه بنطاق عالي الديناميكية (HDR)
  • تحسينات مستمرة في إمكانات HDR

Android 13

Android 14

تطوّرت ميزة أخذ لقطات شاشة بنطاق HDR وتغيّرت أيضًا.

تحسينات في إمكانات التقاط لقطات شاشة بنطاق عالي الديناميكية

يوضّح هذا القسم تطوّر ميزة أخذ لقطات شاشة بنطاق عالي الديناميكية في تحديثات Android.

Android 9

تتيح أداة SurfaceFlinger، وهي أداة تركيب الرسومات في Android، إمكانية تسجيل الفيديو بنطاق عالي الديناميكية (HDR). يستخدم عرض فيديوهات HDR ولقطات الشاشة باستخدام وحدة معالجة الرسومات أداة معقّدة لضبط درجة اللون متعددة الحدود. لا يكون منحنى ربط الدرجات اللونية هذا مكافئًا دائمًا لأداة ربط الدرجات اللونية في الشاشة، لذا تختلف لقطات الشاشة عن المحتوى المعروض على الشاشة.

Android 13

يتضمّن قسم العرض على وحدة معالجة الرسومات في SurfaceFlinger مكوّنًا إضافيًا لضبط درجة اللون، ما يتيح للمصنّع الأصلي للجهاز توفير برنامج تظليل لوحدة معالجة الرسومات لمطابقة منحنى ضبط درجة اللون في شاشته. تتطابق لقطات الشاشة تقريبًا مع المحتوى الظاهر على الشاشة، ولكن مع الاختلافات التالية:

  • تبقى لقطات الشاشة بتنسيق النطاق العادي الديناميكية (SDR). نتيجةً لذلك، عند عرضها بجانب مشهد HDR، تظهر مناطق HDR داخل لقطة الشاشة بشكل أكثر تعتيمًا.
  • لا تتم إدارة سطوع المحتوى المعروض بتقنية SDR، لذا يظهر المحتوى المعروض بتقنية SDR في لقطة الشاشة بالسطوع نفسه الذي يظهر به المحتوى المعروض بتقنية HDR.

بعبارة أخرى، يحوّل النظام أي فيديو HDR تم التقاطه في لقطة الشاشة إلى فيديو SDR.

Android 14

تشكّل ميزة "دقة HDR فائقة" تحديًا كبيرًا عند أخذ لقطات شاشة. على عكس الفيديوهات، يعرض النظام الصور عادةً ضمن إطار تخزين مؤقت لواجهة المستخدم، ما يؤدي إلى نتيجتين رئيسيتين:

  • يجب ألا تتضمّن الصور معالجة للصور، بما في ذلك تعيين الدرجات اللونية، تختلف عن واجهة المستخدم المحيطة.
  • تكون التطبيقات مسؤولة عن ربط درجات الألوان المستندة إلى المصدر عند عرض واجهة المستخدم.

للتخفيف من حدة هذه المشكلة، ننصحك بتجربة ثلاث طرق محتملة لتنفيذ ميزة أخذ لقطات الشاشة:

  • الحفاظ على تفاصيل النطاق العالي الديناميكية لصورة دقة HDR فائقة، ما يؤدي إلى تعتيم واجهة مستخدم التطبيق في لقطة الشاشة
  • الاحتفاظ بتفاصيل واجهة مستخدم التطبيق، ما يؤدي إلى اقتصاص صورة دقة HDR فائقة
  • يمكنك حلّ هذه المشكلة من خلال زيادة سطوع واجهة مستخدم التطبيق مع قصّ الأجزاء البارزة في الصورة بتقنية HDR.

تستخدم الإصدار 14 من نظام التشغيل Android الطريقة الثالثة لتفتيح واجهة مستخدم التطبيق واقتصاص أبرز التفاصيل في صور HDR.

‫Android 15-QPR1

يتضمّن SurfaceFlinger خوارزمية محلية لربط الدرجات اللونية بلقطات الشاشة. تشمل هذه العملية ما يلي:

  • تقسيم الصورة المدخلة إلى صور أصغر
  • احتساب الحد الأقصى للسطوع في كل صورة، وتجاهل قيم السطوع المنخفضة في كل قسم
  • تضمين قيم الإضاءة المحسوبة من خلال التمويه وإعادة أخذ العينات
  • تطبيق أداة تعيين درجة اللون Reinhard ذات المَعلمات على الصورة المدخلة، استنادًا إلى قيم الإضاءة الساطعة المستوفاة

تحسّنت لقطات الشاشة بشكل كبير بين الإصدارين Android 14 وAndroid 15-QPR1، كما توضّح الأمثلة التالية:

  • المثال 1 هو لقطة شاشة لفيديو نطاق عالي الديناميكية معروض فوق صفحة Chrome تتضمّن دقة HDR فائقة. يتم الاحتفاظ بألوان واجهة المستخدم في الغالب في التنفيذ الجديد، ولن يتم اقتصاص الصورة بعد الآن.

    Android 14 ‫Android 15-QPR1
    المثال 1 في Android 14 المثال 1 في Android 15qpr

    الشكل 1: مقارنة بين الإصدار 14 من نظام التشغيل Android والإصدار 15 من نظام التشغيل Android‏ (QPR1) للمثال 1

  • المثال 2 هو لقطة شاشة لفيديو بنطاق عالي الديناميكية معروضة فوق الإعدادات مع لقطات شاشة لاحقة. في Android 14، تكون ألوان لقطة الشاشة أكثر قتامة بشكل متتابع. في الإصدار Android 15-QPR1، تعمل أداة ربط الدرجات اللونية على تكرار ألوان واجهة المستخدم والحفاظ عليها بشكل صحيح.

    Android 14 ‫Android 15-QPR1
    المثال 2 في Android 14 المثال 2 في الإصدار التجريبي من Android 15

    الشكل 2: مقارنة بين الإصدار 14 من نظام التشغيل Android والإصدار 15 من نظام التشغيل Android‏ (QPR1) للمثال 2

Android 16

على غرار دقة HDR الفائقة، تخزّن لقطات الشاشة بنطاق عالي الديناميكية خريطة كسب في ملف لقطة الشاشة لاسترداد تمثيل النطاق العالي الديناميكية أثناء العرض. ومع ذلك، على عكس Ultra HDR، تظل لقطة الشاشة بتنسيق PNG لتكون متوافقة مع الأنظمة التي تستخدم لقطات شاشة بتنسيق PNG.

تتضمّن عملية إنشاء لقطات الشاشة ما يلي:

  • عند عرض محتوى HDR على الجهاز، يتم إنشاء لقطة شاشة باستخدام وحدات بكسل FP16.
  • تنتج أداة "تعديل الألوان" المحلية الموضّحة في Android 15-QPR1 عرضًا أساسيًا بتنسيق SDR ذي 8 بت.
  • يتم إنشاء خريطة كسب 8 بت من خلال الجمع بين العرض الأساسي بتنسيق SDR والعرض بتنسيق HDR.
  • يتم ترميز العرض الأساسي بنطاق SDR وخريطة الكسب في ملف PNG واحد.

تتضمّن عملية ترميز PNG ما يلي:

  • يتم ترميز خريطة كسب الإضاءة كصورة PNG تتضمّن جزء gmAP يحتوي على البيانات الوصفية ISO 21496-1 الخاصة بخريطة كسب الإضاءة.
  • يتم ترميز العرض الأساسي بتنسيق SDR كصورة PNG تتضمّن جزء gmAP يحتوي على نسخة من البيانات الوصفية ISO 21496-1. تتضمّن صورة PNG هذه أيضًا جزءًا gdAT يحتوي على صورة gainmap PNG بالكامل.

يوضّح الشكل التالي تخطيط أجزاء PNG:

تخطيط أجزاء PNG

الشكل 3: تخطيط أجزاء PNG

في Android 16، يتيح برنامج ترميز PNG ترميز وفك ترميز ملفات PNG هذه. يمكن للتطبيقات عرض ملف PNG مع خريطة كسب بالطريقة نفسها التي يتم بها عرض صور Ultra HDR.