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