মেটাডেটা সমর্থন
অ্যান্ড্রয়েড ফ্রেমওয়ার্ক দ্বারা কাঁচা চিত্র ফাইল সংরক্ষণের সমর্থন করার জন্য, সেন্সরের বৈশিষ্ট্যগুলি সম্পর্কে যথেষ্ট মেটাডেটা প্রয়োজন৷ এতে রঙের স্থান এবং লেন্স শেডিং ফাংশনের মতো তথ্য অন্তর্ভুক্ত রয়েছে।
এই তথ্যগুলির বেশিরভাগই ক্যামেরা সাবসিস্টেমের একটি স্থির সম্পত্তি এবং তাই কোনও আউটপুট পাইপলাইন কনফিগার করার আগে বা কোনও অনুরোধ জমা দেওয়ার আগে জিজ্ঞাসা করা যেতে পারে। নতুন ক্যামেরা APIs অ্যাপে এই তথ্য প্রদানের জন্য getCameraInfo()
পদ্ধতি দ্বারা প্রদত্ত তথ্যকে ব্যাপকভাবে প্রসারিত করে।
এছাড়াও, ক্যামেরা সাবসিস্টেমের ম্যানুয়াল নিয়ন্ত্রণের জন্য বিভিন্ন ডিভাইস থেকে তাদের বর্তমান অবস্থা এবং একটি প্রদত্ত ফ্রেম ক্যাপচারে ব্যবহৃত প্রকৃত পরামিতি সম্পর্কে প্রতিক্রিয়া প্রয়োজন। নিয়ন্ত্রণের প্রকৃত মান (এক্সপোজার সময়, ফ্রেমের সময়কাল এবং সংবেদনশীলতা) প্রকৃতপক্ষে হার্ডওয়্যার দ্বারা ব্যবহৃত আউটপুট মেটাডেটা অন্তর্ভুক্ত করা আবশ্যক। এটি অত্যাবশ্যক যাতে অ্যাপগুলি জানতে পারে কখন ক্ল্যাম্পিং বা রাউন্ডিং ঘটেছিল এবং যাতে অ্যাপটি চিত্র ক্যাপচারের জন্য ব্যবহৃত আসল সেটিংসের জন্য ক্ষতিপূরণ দিতে পারে৷
উদাহরণস্বরূপ, যদি একটি অ্যাপ্লিকেশন একটি অনুরোধে ফ্রেমের সময়কাল 0 তে সেট করে, HAL অবশ্যই সেই অনুরোধের জন্য ফ্রেমের সময়কালকে প্রকৃত ন্যূনতম ফ্রেমের সময়কালের সাথে ক্ল্যাম্প করতে হবে এবং আউটপুট ফলাফলের মেটাডেটাতে ন্যূনতম সময়কাল ক্ল্যাম্প করা হয়েছে বলে প্রতিবেদন করতে হবে।
তাই যদি একটি অ্যাপকে একটি কাস্টম 3A রুটিন (উদাহরণস্বরূপ, একটি HDR বিস্ফোরণের জন্য সঠিকভাবে মিটার করার জন্য) প্রয়োগ করার প্রয়োজন হয়, তাহলে পরবর্তী অনুরোধের জন্য সেটিংস আপডেট করার জন্য এটি প্রাপ্ত ফলাফলের সর্বশেষ সেট ক্যাপচার করতে ব্যবহৃত সেটিংস জানতে হবে। তাই, নতুন ক্যামেরা API প্রতিটি ক্যাপচার করা ফ্রেমে যথেষ্ট পরিমাণে গতিশীল মেটাডেটা যোগ করে। এটি ক্যাপচারের জন্য ব্যবহৃত অনুরোধকৃত এবং প্রকৃত পরামিতি, সেইসাথে অতিরিক্ত প্রতি-ফ্রেম মেটাডেটা যেমন টাইমস্ট্যাম্প এবং পরিসংখ্যান জেনারেটর আউটপুট অন্তর্ভুক্ত করে।
প্রতি-সেটিং নিয়ন্ত্রণ
বেশিরভাগ সেটিংসের জন্য, প্রত্যাশা হল যে আউটপুট ফ্রেম স্ট্রীমে উল্লেখযোগ্য তোতলামি বা বিলম্ব না করে প্রতিটি ফ্রেমে পরিবর্তন করা যেতে পারে। আদর্শভাবে, আউটপুট ফ্রেম রেট শুধুমাত্র ক্যাপচার অনুরোধের ফ্রেম সময়কাল ক্ষেত্রের দ্বারা নিয়ন্ত্রিত হওয়া উচিত, এবং ব্লকের কনফিগারেশন প্রক্রিয়াকরণের যেকোনো পরিবর্তন থেকে স্বাধীন হওয়া উচিত। বাস্তবে, কিছু নির্দিষ্ট নিয়ন্ত্রণ পরিবর্তন করতে ধীর বলে পরিচিত; এর মধ্যে রয়েছে ক্যামেরা পাইপলাইনের আউটপুট রেজোলিউশন এবং আউটপুট ফর্ম্যাট, সেইসাথে লেন্স ফোকাস দূরত্বের মতো শারীরিক ডিভাইসগুলিকে প্রভাবিত করে এমন নিয়ন্ত্রণগুলি। প্রতিটি নিয়ন্ত্রণ সেটের জন্য সঠিক প্রয়োজনীয়তাগুলি পরে বিশদভাবে বর্ণনা করা হয়েছে।
কাঁচা সেন্সর ডেটা সমর্থন
পুরানো API দ্বারা সমর্থিত পিক্সেল ফর্ম্যাটগুলি ছাড়াও, নতুন এপিআই কাঁচা সেন্সর ডেটা (বেয়ার RAW), উন্নত ক্যামেরা অ্যাপ্লিকেশনগুলির পাশাপাশি কাঁচা চিত্র ফাইলগুলিকে সমর্থন করার জন্য সমর্থনের জন্য একটি প্রয়োজনীয়তা যুক্ত করে।