خلال Google I/O 2014، قدمت شركة Mountain View Camera2، واجهة برمجة تطبيقات Android الجديدة التي ستتحكم في مستشعرات الصور. زملائنا فيأناندتكعاد إلى الميزات الجديدة التي جلبتها API. باختصار، سيسمح لك Camera2 بالتقاط صور جيدة بسرعة وسهولة باستخدام محطة متنقلة.
لقد تحدث زملاؤنا من موقع Anandtech بالتفصيل عن كيفية عمل Camera2 API الجديد من Google. سيتم دمجه في Android L وسيسمح لك بالتحكم في أجهزة الاستشعار لالتقاط الصور ومقاطع الفيديو.لقد ناقشنا بالفعل الميزات الجديدة التي قدمتها واجهة برمجة التطبيقات (API) قبل بضعة أسابيع،لكننا لم نعرف بعد كيفية عمل Camera2 أو التفاصيل الدقيقة.
تختفي أوضاع الصور والفيديو والمعاينة
حاليًا، مع Camera API، هناك ثلاثة أوضاع لالتقاط الصور: الصورة أو الفيديو أو المعاينة (المباشر). الأول يسمح لك بالتقاط صورة، والثاني فيديو، والثالث يعرض صورة في الوقت الحقيقي على الشاشة. عندما يريد المستخدم التقاط صورة، يرسل Android طلبًا إلى المستشعر ومعالج الصور. يختلف محتوى هذا الطلب حسب الوضع (صورة أو فيديو أو معاينة).مع Camera2 API، تختفي الأوضاع الثلاثة ويتم استبدالها بوضع واحد، وهو نوع من الحرباء، أكثر مهارة ومرونة بكثير كما سنرى.
خط الأنابيب والإعدادات، حجر الزاوية في الصور
بالنسبة لكلا الإصدارين من واجهة برمجة التطبيقات (API)، يتم إنشاء قائمة انتظار يتم فيها إيقاف الطلبات والإعدادات.إنها تتقدم ضمن خط أنابيب (يتكون من المستشعر ومعالج الصور) تدريجيًا عبر المراحل ليتم "تطويرها" إلى صورة.
في السابق، لم يتم تخزين الإعدادات في الاستعلام، ولكن مباشرة على المسارعلى عكس ما يحدث مع واجهة برمجة التطبيقات الجديدة. لنتخيل أن الصورتين A وB مع الصورة A تتم معالجتها عبر خط الأنابيب. إذا قمنا بتغيير إعداد للصورة التالية (ب) ووضعناها في قائمة الانتظار، فسيتم تعديل إعدادات المسار، مما يؤدي بالتالي إلى تغيير إعدادات الصورة الموجودة حاليًا في المسار (أ).لذلك، من المستحيل التقاط لقطات سريعة بسبب وقت الانتظار، وإلا فسوف ينتهي بك الأمر بصور ذات إعدادات غريبة..
مع واجهة برمجة التطبيقات الجديدة، يكون لكل طلب إعداداته الخاصة.وبالتالي من الممكن وضع العديد من الإعدادات المختلفة في قائمة الانتظار مع سرعة المعالجة التي ستعتمد فقط على سرعة معالج الصور وليس على Android. ولهذا السبب تمكنت جوجل على جهاز Nexus 5 من التقاط 8 صور بدقة 8 ميجابكسل بمعدل 30 إطارًا في الثانية مقارنة بـ 1 إلى 3 إطارات/الثانية مع واجهة برمجة التطبيقات القديمة.

وضع فيديو أكثر كفاءة
المساهمة الأخرى لخط الأنابيب الجديد هيإمكانية مزج الصورة والفيديو في نفس الوقت. لنتخيل أن هاتفك الذكي يستخدم المستشعر لتصوير مقطع فيديو. إذا كان معالج الصور (ISP) الخاص بك قويًا بدرجة كافية، فسوف يفعل ذلكمن الممكن التقاط صور (وهي ليست لقطات شاشة بسيطة للفيديو) أو حتى لقطات متتابعة أثناء الفيديو. سيتم وضع كل إطار من مقاطع الفيديو والصور في قائمة الانتظار ومعالجتها على التوالي، دون أن يواجه المستخدم وقت انتظار. وسيكون من الممكن أيضا تحقيقهمقاطع الفيديو بتقنية HDR: تخيل أن المستخدم يقوم بإنشاء مقطع فيديو بمعدل 30 إطارًا في الثانية وأن معالج الصور يدعم 60 إطارًا. وسيقوم بضرب كل إطار من الفيديو في إطارين بإعدادين مختلفين لتركيبهما وجعل إطار واحد أكثر أو أقل سطوعًا حسب المناطق والضوء المحيط.ولجميع هذه الاستخدامات، يجب أن يكون معالج الصور قويًا بدرجة كافية.
إعدادات جديدة يمكن الوصول إليها
بالإضافة إلى العملية الجديدة التي رأيناها سابقاً،ستسمح واجهة برمجة التطبيقات الجديدة للمطورين بالوصول إلى العديد من الإعدادات: وقت التعرض، وISO، ومسافة التركيز، والفلاش، وقفل AE / AWB، وما إلى ذلك. وقبل كل شيء دعمتنسيق RAW الموحد DNG (رقمي أصلي). سيسمح هذا للصورة بعدم المرور عبر تأثيرات ومرشحات معالج الصور وتخزينها مباشرة على الهاتف. ستحتاج بعد ذلك إلى استخدام تطبيق مثل Lightroom "لتطوير" الصورة وإضفاء مظهر نهائي عليها.
RAW وتحرير الصور
عيب RAW هو أنه عليك القيام بذلكيجب عليك تنقيح الصورة وإلا سينتهي بك الأمر مع صورة ليست بالضرورة قابلة للاستخدام كما هي،ولكن الميزة الكبرى هي إمكانية الوصول إلى كافة الإعدادات: الضغط، وتوازن اللون الأبيض، والتعرض، وما إلى ذلك.وبالتالي، ستكون الصورة ذات جودة أفضل في النهاية. يمكننا أيضًا أن نشهد وصول تطبيقات Android التي تتولى جميع تعديلاتها تلقائيًا من الصورة بتنسيق RAW عن طريق تجاوز معالج الصور. وبالتالي، لن يتعين على المستخدم سوى استخدام التطبيق الذي سيلعب دور الكاميرا والذي سيخرج صورة بجودة أفضل من التطبيق الأساسي.
تطبيقات الشركات المصنعة
ومع ذلك، تمكنت الشركات المصنعة من إنشاء تطبيقات الكاميرا التي تسمح بإجراء كل هذه التعديلات ودعم RAW. هذا على سبيل المثال هو الحال بالنسبة لـOppo في هاتفي Find 7 و7a أو حتى Nikon مع أجهزة Android المدمجة الخاصة بها. في الحقيقة،فهم لا يستخدمون واجهة برمجة التطبيقات للكاميرا، بل يستخدمون واجهة برمجة التطبيقات الداخليةلا يتم توزيع كود المصدر الخاص به من قبل الشركات المصنعة، مما يمنع المطورين من تقديم تطبيقات الطرف الثالث.
الصورة 2.0 لالروبوت
وبالتالي، ستسمح واجهة برمجة التطبيقات Camera 2 لنظام Android بالارتقاء إلى مستوى أعلى فيما يتعلق بالتصوير الفوتوغرافي. بفضلها،سيكون بمقدور الشركات المصنعة للكاميرات تقديم المزيد من كاميرات SLR تحت نظام Android(مثل Samsung Galaxy NX الذي تمكنا من اختباره) أو التعاقدات دون الحاجة إلى تطوير واجهة برمجة التطبيقات (API) الخاصة بها وقبل كل شيء من خلال تحقيق أداء مماثل لكاميرات SLR القياسية. تتوفر واجهة برمجة تطبيقات Camera 2 بالفعل في إصدار المعاينة لنظام Android L، ولكن لا توجد تطبيقات تستخدمها حتى الآن.لذلك سيتعين علينا انتظار إصدار Android L وتطوير تطبيقات الطرف الثالث للاستفادة من نظام بيئي للصور أكثر كفاءة وإثارة للاهتمام.