এই পৃষ্ঠাটি একটি অ্যান্ড্রয়েড ডিভাইসের জন্য 3A মোড এবং স্টেট মেশিনের বর্ণনা দেয়। ক্যামেরা HAL ইন্টারফেস, যা উচ্চ স্তরে রাষ্ট্রীয় মেশিনগুলিকে সংজ্ঞায়িত করে, HAL বাস্তবায়ন এবং অ্যান্ড্রয়েড ফ্রেমওয়ার্ককে বর্তমান 3A অবস্থার সাথে যোগাযোগ করতে দেয় এবং 3A ইভেন্টগুলিকে ট্রিগার করতে দেয়৷ HAL বাস্তবায়ন 3A অ্যালগরিদমের জন্য দায়ী যা 3A মোড সেটিংস এবং রাষ্ট্রীয় রূপান্তর নিয়ন্ত্রণ করে।
ডিভাইসটি খোলা হলে, সমস্ত পৃথক 3A অবস্থা অবশ্যই STATE_INACTIVE হতে হবে৷ স্ট্রিম কনফিগারেশন 3A রিসেট করে না। উদাহরণস্বরূপ, লক করা ফোকাস অবশ্যই configure()
কল জুড়ে বজায় রাখতে হবে।
একটি 3A অ্যাকশন ট্রিগার করার সাথে ট্রিগারের শুরু নির্দেশ করার জন্য পরবর্তী অনুরোধের জন্য সেটিংসে প্রাসঙ্গিক ট্রিগার এন্ট্রি সেট করা জড়িত। উদাহরণস্বরূপ, একটি অটোফোকাস স্ক্যান শুরু করার ট্রিগারটি একটি অনুরোধের জন্য এন্ট্রি ANDROID_CONTROL_AF_TRIGGER কে ANDROID_CONTROL_AF_TRIGGER_START সেট করছে; এবং ANDROID_CONTROL_AF_TRIGGER কে ANDROID_CONTROL_AF_TRIGGER_CANCEL এ সেট করার মাধ্যমে একটি অটোফোকাস স্ক্যান বাতিল করা হয়৷ অন্যথায়, এন্ট্রিটি বিদ্যমান থাকবে না বা ANDROID_CONTROL_AF_TRIGGER_IDLE এ সেট করা হবে। একটি নন-আইডিএল মান সেট করা একটি ট্রিগার এন্ট্রি সহ প্রতিটি অনুরোধ একটি স্বাধীন ট্রিগারিং ইভেন্ট হিসাবে বিবেচিত হবে।
শীর্ষ স্তরে, 3A ANDROID_CONTROL_MODE সেটিং দ্বারা নিয়ন্ত্রিত হয়৷ এটি কোন 3A (ANDROID_CONTROL_MODE_OFF), স্বাভাবিক অটো মোড (ANDROID_CONTROL_MODE_AUTO), এবং দৃশ্য মোড সেটিং (ANDROID_CONTROL_USE_SCENE_MODE) ব্যবহার করে নির্বাচন করে:
- অফ মোডে, প্রতিটি স্বতন্ত্র অটোফোকাস (AF), অটোএক্সপোজার (AE), এবং অটোহোয়াইটব্যালেন্স (AWB) মোড কার্যকরভাবে বন্ধ থাকে এবং 3A রুটিন দ্বারা ক্যাপচার নিয়ন্ত্রণগুলির কোনওটিই ওভাররাইড করা যায় না।
- অটো মোডে, AF, AE এবং AWB মোডগুলি তাদের নিজস্ব স্বাধীন অ্যালগরিদম চালায় এবং তাদের নিজস্ব মোড, স্টেট এবং ট্রিগার মেটাডেটা এন্ট্রি রয়েছে, যেমনটি পরবর্তী বিভাগে তালিকাভুক্ত করা হয়েছে।
- USE_SCENE_MODE-এ, 3A রুটিনের আচরণ নির্ধারণ করতে ANDROID_CONTROL_SCENE_MODE এন্ট্রির মান ব্যবহার করতে হবে। FACE_PRIORITY ব্যতীত SCENE_MODE-এ, HAL-কে অবশ্যই ANDROID_CONTROL_AE/AWB/AF_MODE-এর মানগুলিকে ওভাররাইড করতে হবে যাতে এটি নির্বাচিত SCENE_MODE-এর জন্য পছন্দ করে৷ উদাহরণস্বরূপ, HAL CONTINUOUS_FOCUS AF মোড ব্যবহার করতে SCENE_MODE_NIGHT পছন্দ করতে পারে৷ AE/AWB/AF_MODE-এর যেকোনো ব্যবহারকারীর নির্বাচন যখন এই দৃশ্য মোডগুলির জন্য দৃশ্যকে উপেক্ষা করতে হবে।
- SCENE_MODE_FACE_PRIORITY-এর জন্য, AE/AWB/AFMODE কন্ট্রোলগুলি ANDROID_CONTROL_MODE_AUTO-এর মতোই কাজ করে, কিন্তু 3A রুটিনগুলিকে অবশ্যই মিটারিংয়ের দিকে পক্ষপাতী হতে হবে এবং দৃশ্যে যে কোনও শনাক্ত করা মুখগুলিতে ফোকাস করতে হবে৷
অটোফোকাস সেটিংস এবং ফলাফল এন্ট্রি
প্রধান মেটাডেটা এন্ট্রি | |
---|---|
ANDROID_CONTROL_AF_MODE | বর্তমান অটোফোকাস মোড নির্বাচন করার জন্য নিয়ন্ত্রণ। অনুরোধ সেটিংসে ফ্রেমওয়ার্ক দ্বারা সেট করুন। |
AF_MODE_OFF | AF অক্ষম; ফ্রেমওয়ার্ক/অ্যাপ সরাসরি লেন্সের অবস্থান নিয়ন্ত্রণ করে। |
AF_MODE_AUTO | একক-সুইপ অটোফোকাস। AF ট্রিগার না হওয়া পর্যন্ত কোন লেন্স আন্দোলন নয়। |
AF_MODE_MACRO | একক-সুইপ আপ-ক্লোজ অটোফোকাস। AF ট্রিগার না হওয়া পর্যন্ত কোন লেন্স আন্দোলন নয় |
AF_MODE_CONTINUOUS_VIDEO | ভিডিও রেকর্ড করার জন্য মসৃণ একটানা ফোকাসিং। অবিলম্বে ট্রিগার করা বর্তমান অবস্থানে ফোকাস লক করে। বাতিল করা অবিরাম ফোকাস করা আবার শুরু করে। |
AF_MODE_CONTINUOUS_PICTURE | শূন্য-শাটার-ল্যাগ এখনও ক্যাপচারের জন্য দ্রুত একটানা ফোকাসিং। বর্তমানে সক্রিয় সুইপ শেষ হলে ট্রিগারিং লক ফোকাস। বাতিল করা অবিরাম ফোকাস করা আবার শুরু করে। |
AF_MODE_EDOF | ক্ষেত্র ফোকাস করার উন্নত বর্ধিত গভীরতা। কোন অটোফোকাস স্ক্যান নেই, তাই একটি ট্রিগার করা বা বাতিল করার কোন প্রভাব নেই। ছবিগুলি HAL দ্বারা স্বয়ংক্রিয়ভাবে ফোকাস করা হয়৷ |
ANDROID_CONTROL_AF_STATE | বর্তমান AF অ্যালগরিদম অবস্থা বর্ণনা করে ডায়নামিক মেটাডেটা, ফলাফলের মেটাডেটাতে HAL দ্বারা রিপোর্ট করা হয়েছে। |
AF_STATE_INACTIVE | কোন ফোকাস করা হয়নি, বা অ্যালগরিদম রিসেট করা হয়েছে। লেন্স নড়ছে না। সর্বদা MODE_OFF বা MODE_EDOF-এর জন্য রাজ্য। ডিভাইসটি খোলা হলে, এটি অবশ্যই এই অবস্থায় শুরু হবে। |
AF_STATE_PASSIVE_SCAN | একটি অবিচ্ছিন্ন ফোকাস অ্যালগরিদম বর্তমানে ভাল ফোকাসের জন্য স্ক্যান করছে। লেন্স নড়ছে। |
AF_STATE_PASSIVE_FOCUSED | একটি অবিচ্ছিন্ন ফোকাস অ্যালগরিদম বিশ্বাস করে যে এটি ভালভাবে ফোকাস করা হয়েছে। লেন্স নড়ছে না। HAL স্বতঃস্ফূর্তভাবে এই রাজ্য ছেড়ে যেতে পারে। |
AF_STATE_PASSIVE_UNFOCUSED | একটি অবিচ্ছিন্ন ফোকাস অ্যালগরিদম বিশ্বাস করে যে এটি ভালভাবে ফোকাস করা হয় না। লেন্স নড়ছে না। HAL স্বতঃস্ফূর্তভাবে এই রাজ্য ছেড়ে যেতে পারে। |
AF_STATE_ACTIVE_SCAN | ব্যবহারকারীর দ্বারা ট্রিগার করা একটি স্ক্যান চলছে। |
AF_STATE_FOCUSED_LOCKED | AF অ্যালগরিদম বিশ্বাস করে যে এটি নিবদ্ধ। লেন্স নড়ছে না। |
AF_STATE_NOT_FOCUSED_LOCKED | AF অ্যালগরিদম ফোকাস করতে অক্ষম হয়েছে. লেন্স নড়ছে না। |
ANDROID_CONTROL_AF_TRIGGER | একটি অটোফোকাস স্ক্যান শুরু করার জন্য নিয়ন্ত্রণ, যার অর্থ মোড এবং অবস্থার উপর নির্ভর করে। অনুরোধ সেটিংসে ফ্রেমওয়ার্ক দ্বারা সেট করুন। |
AF_TRIGGER_IDLE | কোনো বর্তমান ট্রিগার নেই। |
AF_TRIGGER_START | এএফ স্ক্যানের ট্রিগার শুরু। প্রভাব মোড এবং অবস্থার উপর নির্ভর করে। |
AF_TRIGGER_CANCEL | বর্তমান AF স্ক্যান বাতিল করুন যদি থাকে, এবং অ্যালগরিদম ডিফল্টে রিসেট করুন। |
অতিরিক্ত মেটাডেটা এন্ট্রি | |
---|---|
ANDROID_CONTROL_AF_REGIONS | ফিল্ড অফ ভিউ (FOV) এর অঞ্চলগুলি নির্বাচন করার জন্য নিয়ন্ত্রণ যা ভাল ফোকাস নির্ধারণ করতে ব্যবহার করা উচিত। এটি সমস্ত AF মোডগুলিতে প্রযোজ্য যা ফোকাসের জন্য স্ক্যান করে। অনুরোধ সেটিংসে ফ্রেমওয়ার্ক দ্বারা সেট করুন। |
অটোএক্সপোজার সেটিংস এবং ফলাফল এন্ট্রি
প্রধান মেটাডেটা এন্ট্রি | |
---|---|
ANDROID_CONTROL_AE_MODE | বর্তমান অটো এক্সপোজার মোড নির্বাচন করার জন্য নিয়ন্ত্রণ। অনুরোধ সেটিংসে ফ্রেমওয়ার্ক দ্বারা সেট করুন। |
AE_MODE_OFF | অটোএক্সপোজার অক্ষম করা হয়েছে; ব্যবহারকারী এক্সপোজার, লাভ, ফ্রেমের সময়কাল এবং ফ্ল্যাশ নিয়ন্ত্রণ করে। |
AE_MODE_ON | স্ট্যান্ডার্ড অটোএক্সপোজার, ফ্ল্যাশ নিয়ন্ত্রণ অক্ষম সহ। ব্যবহারকারী আগুনে বা টর্চ মোডে ফ্ল্যাশ সেট করতে পারে। |
AE_MODE_ON_AUTO_FLASH | প্রিক্যাপচার এবং এখনও ক্যাপচারের জন্য HAL এর বিবেচনার ভিত্তিতে ফ্ল্যাশ অন সহ স্ট্যান্ডার্ড অটোএক্সপোজার। ফ্ল্যাশ ব্যবহারকারী নিয়ন্ত্রণ নিষ্ক্রিয়. |
AE_MODE_ON_ALWAYS_FLASH | স্ট্যান্ডার্ড অটোএক্সপোজার, ফ্ল্যাশ সহ সর্বদা ক্যাপচারের জন্য গুলি করা হয় এবং প্রিক্যাপচারের জন্য HAL এর বিবেচনার ভিত্তিতে। ফ্ল্যাশ ব্যবহারকারী নিয়ন্ত্রণ নিষ্ক্রিয়. |
AE_MODE_ON_AUTO_FLASH_REDEYE | প্রিক্যাপচার এবং এখনও ক্যাপচারের জন্য HAL এর বিবেচনার ভিত্তিতে ফ্ল্যাশ অন সহ স্ট্যান্ডার্ড অটোএক্সপোজার। চূড়ান্ত ছবিতে রেডআই কমাতে প্রিক্যাপচার সিকোয়েন্সের শেষে একটি ফ্ল্যাশ বার্স্ট ব্যবহার করুন। ফ্ল্যাশ ব্যবহারকারী নিয়ন্ত্রণ নিষ্ক্রিয়. |
AE_MODE_ON_LOW_LIGHT_BOOST_BRIGHTNESS_PRIORITY | লো লাইট বুস্ট স্বয়ংক্রিয়ভাবে স্বয়ংক্রিয়ভাবে কম-আলো অবস্থায় প্রিভিউ স্ট্রিমের উজ্জ্বলতা সামঞ্জস্য করে। এর ফলে কম আলোর পরিস্থিতিতে গতির অস্পষ্টতা এবং শব্দ বৃদ্ধি পেতে পারে। ডিভাইস নির্মাতাদের অবশ্যই নিশ্চিত করতে হবে যে ফ্রেম রেট 10 fps এর নিচে না যায়। |
ANDROID_CONTROL_AE_STATE | ডাইনামিক মেটাডেটা বর্তমান AE অ্যালগরিদম অবস্থা বর্ণনা করে, ফলাফলের মেটাডেটাতে HAL দ্বারা রিপোর্ট করা হয়েছে। |
AE_STATE_INACTIVE | মোড সুইচের পরে প্রাথমিক AE অবস্থা। ডিভাইসটি খোলা হলে, এটি অবশ্যই এই অবস্থায় শুরু হবে। |
AE_STATE_SEARCHING | AE একটি ভাল মান একত্রিত হয় না এবং এক্সপোজার পরামিতি সামঞ্জস্য করা হয়. |
AE_STATE_CONVERGED | AE বর্তমান দৃশ্যের জন্য ভাল এক্সপোজার মান খুঁজে পেয়েছে এবং এক্সপোজার প্যারামিটারগুলি পরিবর্তন হচ্ছে না। HAL স্বতঃস্ফূর্তভাবে একটি ভাল সমাধান খুঁজতে এই রাজ্য ছেড়ে যেতে পারে. |
AE_STATE_LOCKED | AE কে AE_LOCK কন্ট্রোল দিয়ে লক করা হয়েছে। এক্সপোজার মান পরিবর্তন হয় না. |
AE_STATE_FLASH_REQUIRED | HAL একত্রিত এক্সপোজার করেছে কিন্তু বিশ্বাস করে যে যথেষ্ট উজ্জ্বল ছবির জন্য ফ্ল্যাশ প্রয়োজন। একটি শূন্য-শাটার-ল্যাগ ফ্রেম ব্যবহার করা যেতে পারে কিনা তা নির্ধারণের জন্য ব্যবহৃত হয়। |
AE_STATE_PRECAPTURE | HAL একটি precapture ক্রম মাঝখানে আছে. AE মোডের উপর নির্ভর করে, এই মোডে মিটারিং এর জন্য ফ্ল্যাশ ফায়ার করা বা রেডিয় কমানোর জন্য ফ্ল্যাশ পালস ফেটে যাওয়া জড়িত থাকতে পারে। |
ANDROID_CONTROL_AE_PRECAPTURE_TRIGGER | একটি উচ্চ-মানের চিত্র ক্যাপচার করার আগে একটি মিটারিং ক্রম শুরু করার জন্য নিয়ন্ত্রণ। অনুরোধ সেটিংসে ফ্রেমওয়ার্ক দ্বারা সেট করুন। |
PRECAPTURE_TRIGGER_IDLE | কোনো বর্তমান ট্রিগার নেই। |
PRECAPTURE_TRIGGER_START | একটি precapture ক্রম শুরু করুন. আসন্ন উচ্চ-রেজোলিউশন ক্যাপচারের জন্য ভাল এক্সপোজার/হোয়াইট ব্যালেন্স পরিমাপ করার জন্য পরবর্তী অনুরোধগুলি HAL-কে ব্যবহার করা উচিত। |
অতিরিক্ত মেটাডেটা এন্ট্রি | |
---|---|
ANDROID_CONTROL_AE_LOCK৷ | AE নিয়ন্ত্রণগুলিকে তাদের বর্তমান মানগুলিতে লক করার জন্য নিয়ন্ত্রণ। |
ANDROID_CONTROL_AE_EXPOSURE_COMPENSATION | AE অ্যালগরিদম লক্ষ্য উজ্জ্বলতা পয়েন্ট সামঞ্জস্য করার জন্য নিয়ন্ত্রণ। |
ANDROID_CONTROL_AE_TARGET_FPS_RANGE | AE অ্যালগরিদমের জন্য লক্ষ্য ফ্রেম হার পরিসীমা নির্বাচন করার জন্য নিয়ন্ত্রণ। AE রুটিন এই সীমার বাইরে হতে ফ্রেম রেট পরিবর্তন করতে পারে না। |
ANDROID_CONTROL_AE_REGIONS | FOV এর অঞ্চলগুলি নির্বাচন করার জন্য নিয়ন্ত্রণ যা ভাল এক্সপোজার স্তর নির্ধারণ করতে ব্যবহার করা উচিত। এটি বন্ধ ছাড়াও সমস্ত AE মোডে প্রযোজ্য। |
স্বয়ংক্রিয় সাদা ভারসাম্য সেটিংস এবং ফলাফল এন্ট্রি
প্রধান মেটাডেটা এন্ট্রি | |
---|---|
ANDROID_CONTROL_AWB_MODE | বর্তমান সাদা-ব্যালেন্স মোড নির্বাচন করার জন্য নিয়ন্ত্রণ। |
AWB_MODE_OFF | স্বয়ংক্রিয় সাদা ভারসাম্য অক্ষম করা হয়েছে। ব্যবহারকারী রঙ ম্যাট্রিক্স নিয়ন্ত্রণ করে। |
AWB_MODE_AUTO | স্বয়ংক্রিয় সাদা ব্যালেন্স সক্ষম করা হয়েছে; 3A রঙের রূপান্তর নিয়ন্ত্রণ করে, সম্ভবত একটি সাধারণ ম্যাট্রিক্সের চেয়ে আরও জটিল রূপান্তর ব্যবহার করে। |
AWB_MODE_INCANDESCENT | স্থির সাদা ব্যালেন্স সেটিংস অভ্যন্তরীণ ভাস্বর (টাংস্টেন) আলোর জন্য ভাল, মোটামুটি 2700K। |
AWB_MODE_FLUORESCENT | ফ্লুরোসেন্ট আলোর জন্য স্থির সাদা ব্যালেন্স সেটিংস ভাল, মোটামুটি 5000K। |
AWB_MODE_WARM_FLUORESCENT | ফ্লুরোসেন্ট আলোর জন্য স্থির সাদা ব্যালেন্স সেটিংস ভাল, মোটামুটি 3000K। |
AWB_MODE_DAYLIGHT | স্থির সাদা ব্যালেন্স সেটিংস দিনের আলোর জন্য ভাল, মোটামুটি 5500K। |
AWB_MODE_CLOUDY_DAYLIGHT | স্থির সাদা ব্যালেন্স সেটিংস মেঘাচ্ছন্ন দিবালোকের জন্য ভাল, মোটামুটি 6500K। |
AWB_MODE_TWILIGHT | স্থির সাদা ব্যালেন্স সেটিংস কাছাকাছি-সূর্যাস্ত/সূর্যোদয়ের জন্য ভাল, মোটামুটি 15000K। |
AWB_MODE_SHADE | স্থির সাদা ব্যালেন্স সেটিংস পরোক্ষভাবে সূর্য দ্বারা আলোকিত এলাকার জন্য ভাল, মোটামুটি 7500K। |
ANDROID_CONTROL_AWB_STATE | বর্তমান AWB অ্যালগরিদম অবস্থা বর্ণনা করে ডায়নামিক মেটাডেটা, ফলাফলের মেটাডেটাতে HAL দ্বারা রিপোর্ট করা হয়েছে। |
AWB_STATE_INACTIVE | মোড সুইচের পরে প্রাথমিক AWB অবস্থা। ডিভাইসটি খোলা হলে, এটি অবশ্যই এই অবস্থায় শুরু হবে। |
AWB_STATE_SEARCHING | AWB একটি ভাল মানের সাথে একত্রিত হয় না এবং রঙ সমন্বয় পরামিতি পরিবর্তন করছে। |
AWB_STATE_CONVERGED | AWB বর্তমান দৃশ্যের জন্য ভাল রঙ সমন্বয় মান খুঁজে পেয়েছে, এবং পরামিতিগুলি পরিবর্তন হচ্ছে না। HAL স্বতঃস্ফূর্তভাবে একটি ভাল সমাধান খুঁজতে এই রাজ্য ছেড়ে যেতে পারে. |
AWB_STATE_LOCKED | AWB AWB_LOCK কন্ট্রোল দিয়ে লক করা হয়েছে। রঙ সমন্বয় মান পরিবর্তন করা হয় না. |
অতিরিক্ত মেটাডেটা এন্ট্রি | |
---|---|
ANDROID_CONTROL_AWB_LOCK৷ | তাদের বর্তমান মানগুলিতে AWB রঙ সমন্বয় লক করার জন্য নিয়ন্ত্রণ। |
ANDROID_CONTROL_AWB_REGIONS | ভাল রঙের ভারসাম্য নির্ধারণের জন্য FOV-এর অঞ্চলগুলি নির্বাচন করার জন্য নিয়ন্ত্রণ। এটি শুধুমাত্র অটোহোয়াইটব্যালেন্স মোডে প্রযোজ্য। |
জেনারেল স্টেট মেশিন ট্রানজিশন নোট
AF, AE, বা AWB মোডগুলির মধ্যে স্যুইচ করা সর্বদা অ্যালগরিদমের অবস্থাকে নিষ্ক্রিয় অবস্থায় পুনরায় সেট করে৷ একইভাবে, CONTROL_MODE বা CONTROL_SCENE_MODE এর মধ্যে স্যুইচ করা হলে CONTROL_MODE == USE_SCENE_MODE সমস্ত অ্যালগরিদম স্টেটকে INACTIVE তে রিসেট করে।
নীচের টেবিলগুলি প্রতি-মোড।
এএফ রাষ্ট্রীয় মেশিন
মোড = AF_MODE_OFF বা AF_MODE_EDOF | |||
---|---|---|---|
রাজ্য | রূপান্তর কারণ | নতুন রাজ্য | নোট |
নিষ্ক্রিয় | AF অক্ষম |
মোড = AF_MODE_AUTO বা AF_MODE_MACRO | |||
---|---|---|---|
রাজ্য | রূপান্তর কারণ | নতুন রাজ্য | নোট |
নিষ্ক্রিয় | AF_TRIGGER | ACTIVE_SCAN | এএফ সুইপ শুরু করুন লেন্স এখন চলন্ত |
ACTIVE_SCAN | AF সুইপ সম্পন্ন | FOCUSED_LOCKED | যদি এএফ সফল হয় লেন্স এখন লক করা আছে |
ACTIVE_SCAN | AF সুইপ সম্পন্ন | NOT_FOCUSED_LOCKED | যদি এএফ সফল হয় লেন্স এখন লক করা আছে |
ACTIVE_SCAN | AF_CANCEL | নিষ্ক্রিয় | AF বাতিল/রিসেট করুন লেন্স এখন লক করা আছে |
FOCUSED_LOCKED | AF_CANCEL | নিষ্ক্রিয় | AF বাতিল/রিসেট করুন |
FOCUSED_LOCKED | AF_TRIGGER | ACTIVE_SCAN | নতুন ঝাড়ু শুরু করুন লেন্স এখন চলন্ত |
NOT_FOCUSED_LOCKED | AF_CANCEL | নিষ্ক্রিয় | AF বাতিল/রিসেট করুন |
NOT_FOCUSED_LOCKED | AF_TRIGGER | ACTIVE_SCAN | নতুন ঝাড়ু শুরু করুন লেন্স এখন চলন্ত |
সব রাজ্য | মোড পরিবর্তন | নিষ্ক্রিয় |
মোড = AF_MODE_CONTINUOUS_VIDEO | |||
---|---|---|---|
রাজ্য | রূপান্তর কারণ | নতুন রাজ্য | নোট |
নিষ্ক্রিয় | HAL নতুন স্ক্যান শুরু করেছে | PASSIVE_SCAN | এএফ সুইপ শুরু করুন লেন্স এখন চলন্ত |
নিষ্ক্রিয় | AF_TRIGGER | NOT_FOCUSED_LOCKED | এএফ রাষ্ট্র প্রশ্ন লেন্স এখন লক করা আছে |
PASSIVE_SCAN | HAL বর্তমান স্ক্যান সম্পূর্ণ করে | PASSIVE_FOCUSED | AF স্ক্যান শেষ করুন লেন্স এখন লক করা আছে |
PASSIVE_SCAN | AF_TRIGGER | FOCUSED_LOCKED | ফোকাস ভালো হলে তাৎক্ষণিক রূপান্তর লেন্স এখন লক করা আছে |
PASSIVE_SCAN | AF_TRIGGER | NOT_FOCUSED_LOCKED | ফোকাস খারাপ হলে তাৎক্ষণিক রূপান্তর লেন্স এখন লক করা আছে |
PASSIVE_SCAN | AF_CANCEL | নিষ্ক্রিয় | লেন্সের অবস্থান রিসেট করুন লেন্স এখন লক করা আছে |
PASSIVE_FOCUSED | HAL নতুন স্ক্যান শুরু করেছে | PASSIVE_SCAN | AF স্ক্যান শুরু করুন লেন্স এখন চলন্ত |
PASSIVE_FOCUSED | AF_TRIGGER | FOCUSED_LOCKED | ফোকাস ভালো হলে তাৎক্ষণিক রূপান্তর লেন্স এখন লক করা আছে |
PASSIVE_FOCUSED | AF_TRIGGER | NOT_FOCUSED_LOCKED | ফোকাস খারাপ হলে তাৎক্ষণিক রূপান্তর লেন্স এখন লক করা আছে |
FOCUSED_LOCKED | AF_TRIGGER | FOCUSED_LOCKED | কোন প্রভাব নেই |
FOCUSED_LOCKED | AF_CANCEL | নিষ্ক্রিয় | AF স্ক্যান রিস্টার্ট করুন |
NOT_FOCUSED_LOCKED | AF_TRIGGER | NOT_FOCUSED_LOCKED | কোন প্রভাব নেই |
NOT_FOCUSED_LOCKED | AF_CANCEL | নিষ্ক্রিয় | AF স্ক্যান রিস্টার্ট করুন |
মোড = AF_MODE_CONTINUOUS_PICTURE | |||
---|---|---|---|
রাজ্য | রূপান্তর কারণ | নতুন রাজ্য | নোট |
নিষ্ক্রিয় | HAL নতুন স্ক্যান শুরু করেছে | PASSIVE_SCAN | AF স্ক্যান শুরু করুন লেন্স এখন চলন্ত |
নিষ্ক্রিয় | AF_TRIGGER | NOT_FOCUSED_LOCKED | এএফ রাষ্ট্র প্রশ্ন লেন্স এখন লক করা আছে |
PASSIVE_SCAN | HAL বর্তমান স্ক্যান সম্পূর্ণ করে | PASSIVE_FOCUSED | AF স্ক্যান শেষ করুন লেন্স এখন লক করা আছে |
PASSIVE_SCAN | AF_TRIGGER | FOCUSED_LOCKED | ঘটনাক্রমে রূপান্তর একবার ভাল ফোকাস লেন্স এখন লক করা আছে |
PASSIVE_SCAN | AF_TRIGGER | NOT_FOCUSED_LOCKED | ঘটনাক্রমে রূপান্তর যদি ফোকাস করতে না পারে লেন্স এখন লক করা আছে |
PASSIVE_SCAN | AF_CANCEL | নিষ্ক্রিয় | লেন্সের অবস্থান রিসেট করুন লেন্স এখন লক করা আছে |
PASSIVE_FOCUSED | HAL নতুন স্ক্যান শুরু করেছে | PASSIVE_SCAN | AF স্ক্যান শুরু করুন লেন্স এখন চলন্ত |
PASSIVE_FOCUSED | AF_TRIGGER | FOCUSED_LOCKED | ফোকাস ভালো হলে তাৎক্ষণিক রূপান্তর লেন্স এখন লক করা আছে |
PASSIVE_FOCUSED | AF_TRIGGER | NOT_FOCUSED_LOCKED | ফোকাস খারাপ হলে তাৎক্ষণিক রূপান্তর লেন্স এখন লক করা আছে |
FOCUSED_LOCKED | AF_TRIGGER | FOCUSED_LOCKED | কোন প্রভাব নেই |
FOCUSED_LOCKED | AF_CANCEL | নিষ্ক্রিয় | AF স্ক্যান রিস্টার্ট করুন |
NOT_FOCUSED_LOCKED | AF_TRIGGER | NOT_FOCUSED_LOCKED | কোন প্রভাব নেই |
NOT_FOCUSED_LOCKED | AF_CANCEL | নিষ্ক্রিয় | AF স্ক্যান রিস্টার্ট করুন |
AE এবং AWB স্টেট মেশিন
AE এবং AWB স্টেট মেশিনগুলি বেশিরভাগই অভিন্ন। AE এর অতিরিক্ত FLASH_REQUIRED এবং PRECAPTURE অবস্থা রয়েছে৷ সুতরাং নীচের সারিগুলি যে দুটি রাজ্যের উল্লেখ করে AWB রাজ্য মেশিনের জন্য উপেক্ষা করা উচিত।
মোড = AE_MODE_OFF / AWB মোড অটো নয় | |||
---|---|---|---|
রাজ্য | রূপান্তর কারণ | নতুন রাজ্য | নোট |
নিষ্ক্রিয় | AE/AWB নিষ্ক্রিয় |
মোড = AE_MODE_ON_* / AWB_MODE_AUTO | |||
---|---|---|---|
রাজ্য | রূপান্তর কারণ | নতুন রাজ্য | নোট |
নিষ্ক্রিয় | HAL AE/AWB স্ক্যান শুরু করে | অনুসন্ধান করা হচ্ছে | |
নিষ্ক্রিয় | AE/AWB_LOCK চালু | তালাবদ্ধ | মান লক করা |
অনুসন্ধান করা হচ্ছে | HAL AE/AWB স্ক্যান শেষ করে | একত্রিত | ভাল মান, পরিবর্তন না |
অনুসন্ধান করা হচ্ছে | HAL AE স্ক্যান শেষ করে | FLASH_REQUIRED | রূপান্তরিত কিন্তু ফ্ল্যাশ ছাড়া খুব অন্ধকার |
অনুসন্ধান করা হচ্ছে | AE/AWB_LOCK চালু | তালাবদ্ধ | মান লক করা |
একত্রিত | HAL AE/AWB স্ক্যান শুরু করে | অনুসন্ধান করা হচ্ছে | মান লক করা |
একত্রিত | AE/AWB_LOCK চালু | তালাবদ্ধ | মান লক করা |
FLASH_REQUIRED | HAL AE/AWB স্ক্যান শুরু করে | অনুসন্ধান করা হচ্ছে | মান লক করা |
FLASH_REQUIRED | AE/AWB_LOCK চালু | তালাবদ্ধ | মান লক করা |
তালাবদ্ধ | AE/AWB_LOCK বন্ধ | অনুসন্ধান করা হচ্ছে | আনলক করার পরে মান ভাল নয় |
তালাবদ্ধ | AE/AWB_LOCK বন্ধ | একত্রিত | আনলক করার পরে ভাল মান |
তালাবদ্ধ | AE_LOCK বন্ধ | FLASH_REQUIRED | এক্সপোজার ভাল, কিন্তু খুব অন্ধকার |
সমস্ত AE রাজ্য | PRECAPTURE_START | প্রিক্যাপচার | প্রিক্যাপচার ক্রম শুরু করুন |
প্রিক্যাপচার | ক্রম সম্পন্ন, AE_LOCK বন্ধ | একত্রিত | উচ্চ-মানের ক্যাপচারের জন্য প্রস্তুত |
প্রিক্যাপচার | ক্রম সম্পন্ন হয়েছে, AE_LOCK চালু আছে | তালাবদ্ধ | উচ্চ-মানের ক্যাপচারের জন্য প্রস্তুত |
ম্যানুয়াল নিয়ন্ত্রণ সক্ষম করুন
সরাসরি অ্যাপ নিয়ন্ত্রণের জন্য ডিভাইস 3A ব্লক কনফিগার করার জন্য বেশ কিছু নিয়ন্ত্রণও জড়িত।
3A নিয়ন্ত্রণের জন্য HAL মডেল হল যে প্রতিটি অনুরোধের জন্য, HAL 3A নিয়ন্ত্রণ ক্ষেত্রগুলির অবস্থা পরিদর্শন করে। যদি কোনো 3A রুটিন সক্ষম করা থাকে, তাহলে সেই রুটিন সেই রুটিনের সাথে সম্পর্কিত কন্ট্রোল ভেরিয়েবলগুলিকে ওভাররাইড করে এবং এই ওভাররাইড মানগুলি সেই ক্যাপচারের ফলাফল মেটাডেটাতে পাওয়া যায়। সুতরাং উদাহরণস্বরূপ, যদি একটি অনুরোধে অটোএক্সপোজার সক্ষম করা হয়, HAL-এর উচিত অনুরোধের এক্সপোজার, লাভ এবং ফ্রেমের সময়কাল ক্ষেত্রগুলি (এবং সম্ভাব্য ফ্ল্যাশ ক্ষেত্রগুলি, AE মোডের উপর নির্ভর করে) ওভাররাইট করা উচিত৷ প্রাসঙ্গিক নিয়ন্ত্রণের তালিকা হল:
নিয়ন্ত্রণের নাম | ইউনিট | নোট |
---|---|---|
android.control.mode | enum: বন্ধ, অটো, USE_SCENE_MODE | উচ্চ-স্তরের 3A নিয়ন্ত্রণ। বন্ধ সেট করা হলে, HAL দ্বারা সমস্ত 3A নিয়ন্ত্রণ অক্ষম করা হয়। অ্যাপটিকে অবশ্যই ক্যাপচার প্যারামিটারের জন্য ক্ষেত্রগুলি সেট করতে হবে। AUTO-তে সেট করা হলে, android.control.*-এ পৃথক অ্যালগরিদম নিয়ন্ত্রণ কার্যকর হয়, যেমন android.control.afMode। USE_SCENE_MODE এ সেট করা হলে, android.control.*-এ স্বতন্ত্র নিয়ন্ত্রণগুলি বেশিরভাগই অক্ষম থাকে এবং HAL তার ইচ্ছামতো দৃশ্য মোড সেটিংসের একটি (যেমন ACTION, SUNSET, বা PARTY) প্রয়োগ করে৷ |
android.control.afMode | enum | বন্ধ মানে android.lens.focusDistance এর মাধ্যমে ফোকাস করা লেন্সের ম্যানুয়াল নিয়ন্ত্রণ। |
android.control.aeMode | enum | বন্ধ মানে android.sensor.exposureTime / .sensitivity / .frameDuration এর মাধ্যমে এক্সপোজার/গেইন/ফ্রেম সময়কালের ম্যানুয়াল নিয়ন্ত্রণ |
android.control.awbMode | enum | বন্ধ মানে হোয়াইট ব্যালেন্সের ম্যানুয়াল নিয়ন্ত্রণ। |