ক্যামেরা বোকেহ হলো একটি স্বল্প ডেপথ-অফ-ফিল্ড এফেক্ট, যা কোনো দৃশ্যের অংশবিশেষকে ঝাপসা করে দিয়ে তৈরি করা হয়, যাতে সেগুলো ফোকাসের বাইরে থাকে। মোবাইল ডিভাইসের ক্যামেরাগুলোতে, দুটি ক্যামেরার স্টেরিও ভিশন থেকে অথবা একটি ক্যামেরার দুটি ফটোডায়োড (পিডি) থেকে প্রাপ্ত ডেপথ ইনফরমেশন ব্যবহার করে বোকেহ তৈরি করা হয়।
অ্যান্ড্রয়েড ১১ থেকে, অ্যান্ড্রয়েড প্ল্যাটফর্ম বোকেহ ইমপ্লিমেন্টেশন সমর্থন করে এবং থার্ড-পার্টি অ্যাপগুলোর জন্য এই ফিচারটি উপলব্ধ করতে এপিআই প্রদান করে।
বাস্তবায়ন
আপনার ডিভাইসে ক্যামেরা বোকেহ ফিচারটি চালু করতে, নিম্নলিখিতগুলি করুন:
ANDROID_CONTROL_AVAILABLE_EXTENDED_SCENE_MODE_MAX_SIZESবিজ্ঞাপন দিন :এই ট্যাগটি তিনটি পূর্ণসংখ্যার একটি টাপল অ্যারের আকারে থাকে, যেখানে প্রতিটি টাপল
{mode, maxWidth, maxHeight}ফরম্যাটে থাকে।{ANDROID_CONTROL_EXTENDED_SCENE_MODE_DISABLED, 0, 0}ছাড়াও, ক্যামেরার HAL-এ অবশ্যইANDROID_CONTROL_EXTENDED_SCENE_MODE_BOKEH_STILL_CAPTUREএবংANDROID_CONTROL_EXTENDED_SCENE_MODE_BOKEH_CONTINUOUSমোডগুলোর মধ্যে এক বা উভয়টিকে তাদের সংশ্লিষ্ট সর্বোচ্চ স্ট্রিমিং সাইজসহ তালিকাভুক্ত করতে হবে।ANDROID_CONTROL_AVAILABLE_EXTENDED_SCENE_MODE_ZOOM_RATIO_RANGESবিজ্ঞাপন দিন :এই ট্যাগটি একটি
{minZoomRatio, maxZoomRatio}অ্যারের আকারে থাকে, যাANDROID_CONTROL_AVAILABLE_EXTENDED_SCENE_MODE_MAX_SIZESএর মতো একই ক্রমে একটি সক্রিয় এক্সটেন্ডেড সিন মোডের জন্য সমস্ত জুম রেশিও রেঞ্জ ধারণ করে।[1.0, 1.0]জুম রেঞ্জের অর্থ হলো জুম সমর্থিত নয়।ANDROID_CONTROL_USE_EXTENDED_SCENE_MODEএANDROID_CONTROL_AVAILABLE_MODESপূরণ করুন।
কোনো অ্যাপে বোকেহ ফিচারটি চালু করতে হলে, অ্যাপটিকে অবশ্যই ANDROID_CONTROL_MODE কে ANDROID_CONTROL_USE_EXTENDED_SCENE_MODE এ এবং ANDROID_CONTROL_EXTENDED_SCENE_MODE কে সমর্থিত এক্সটেন্ডেড সিন মোডগুলোর মধ্যে যেকোনো একটিতে সেট করতে হবে। উল্লেখ্য যে, স্টেরিও কম্পিউটেশনের কারণে বোকেহ প্রয়োগ করতে গেলে অতিরিক্ত মেমরি খরচ হতে পারে।
যদি কোনো সমর্থিত এক্সটেন্ডেড সিন মোড প্রতি ফ্রেমে প্রয়োগ করা না যায় এবং চালু/বন্ধ করার সময় অপ্রত্যাশিত বিলম্বের কারণ হয়, তাহলে ANDROID_REQUEST_AVAILABLE_SESSION_KEYS এ ANDROID_CONTROL_EXTENDED_SCENE_MODE অন্তর্ভুক্ত করুন। একই সাথে, যেসব এক্সটেন্ডেড সিন মোডের জন্য রিকনফিগারেশনের প্রয়োজন নেই, সেগুলোর জন্য রিকনফিগারেশন এড়াতে ICameraDeviceSession::isReconfigurationRequired() মেথডটি ইমপ্লিমেন্ট করুন।
বৈধতা
আপনার ডিভাইসে বোকেহ ফিচারটি যাচাই করতে, নিম্নলিখিত CTS, VTS, এবং CTS Verifier টেস্টগুলো চালান:
-
CtsCameraTestCases -
VtsHalCameraProviderV2_4TargetTest - CTS ভেরিফায়ারে
CameraBokehTest