CameraX
इस टेबल में, androidx.camera
ग्रुप के सभी आर्टफ़ैक्ट की सूची दी गई है.
सह-प्रॉडक्ट | स्टेबल रिलीज़ | रिलीज़ कैंडिडेट | बीटा रिलीज़ | ऐल्फ़ा वर्शन |
---|---|---|---|---|
camera-camera2 | 1.4.2 | - | 1.5.0-beta02 | - |
camera-core | 1.4.2 | - | 1.5.0-beta02 | - |
camera-compose | - | - | 1.5.0-beta02 | - |
camera-effects | 1.4.2 | - | 1.5.0-beta02 | - |
camera-extensions | 1.4.2 | - | 1.5.0-beta02 | - |
camera-feature-combination-query | - | - | - | 1.5.0-alpha06 |
camera-feature-combination-query-play-services | - | - | - | 1.5.0-alpha06 |
camera-lifecycle | 1.4.2 | - | 1.5.0-beta02 | - |
camera-mlkit-vision | 1.4.2 | - | 1.5.0-beta02 | - |
camera-view | 1.4.2 | - | 1.5.0-beta02 | - |
camera-viewfinder | - | - | 1.3.0-beta02 | 1.4.0-alpha07 |
camera-video | 1.4.2 | - | 1.5.0-beta02 | - |
डिवाइस की जांच करना
CameraX की जांच हमारी लैब में कई डिवाइसों पर की जाती है. लैब में मौजूद डिवाइसों की सूची देखने के लिए, CameraX की लैब में टेस्ट किए गए डिवाइस देखें.
डिपेंडेंसी का एलान करना
CameraX पर डिपेंडेंसी जोड़ने के लिए, आपको अपने प्रोजेक्ट में Google Maven रिपॉज़िटरी जोड़नी होगी. ज़्यादा जानकारी के लिए, Google की Maven रिपॉज़िटरी लेख पढ़ें.
अपने ऐप्लिकेशन या मॉड्यूल के लिए, build.gradle
फ़ाइल में उन आर्टफ़ैक्ट की डिपेंडेंसी जोड़ें जिनकी आपको ज़रूरत है:
Groovy
dependencies { // CameraX core library using the camera2 implementation def camerax_version = "1.5.0-beta02" // The following line is optional, as the core library is included indirectly by camera-camera2 implementation "androidx.camera:camera-core:${camerax_version}" implementation "androidx.camera:camera-camera2:${camerax_version}" // If you want to additionally use the CameraX Lifecycle library implementation "androidx.camera:camera-lifecycle:${camerax_version}" // If you want to additionally use the CameraX VideoCapture library implementation "androidx.camera:camera-video:${camerax_version}" // If you want to additionally use the CameraX View class implementation "androidx.camera:camera-view:${camerax_version}" // If you want to additionally add CameraX ML Kit Vision Integration implementation "androidx.camera:camera-mlkit-vision:${camerax_version}" // If you want to additionally use the CameraX Extensions library implementation "androidx.camera:camera-extensions:${camerax_version}" }
Kotlin
dependencies { // CameraX core library using the camera2 implementation val camerax_version = "1.5.0-beta02" // The following line is optional, as the core library is included indirectly by camera-camera2 implementation("androidx.camera:camera-core:${camerax_version}") implementation("androidx.camera:camera-camera2:${camerax_version}") // If you want to additionally use the CameraX Lifecycle library implementation("androidx.camera:camera-lifecycle:${camerax_version}") // If you want to additionally use the CameraX VideoCapture library implementation("androidx.camera:camera-video:${camerax_version}") // If you want to additionally use the CameraX View class implementation("androidx.camera:camera-view:${camerax_version}") // If you want to additionally add CameraX ML Kit Vision Integration implementation("androidx.camera:camera-mlkit-vision:${camerax_version}") // If you want to additionally use the CameraX Extensions library implementation("androidx.camera:camera-extensions:${camerax_version}") }
सुझाव/राय दें या शिकायत करें
आपके सुझाव, शिकायत या राय से Jetpack को बेहतर बनाने में मदद मिलती है. अगर आपको कोई नई समस्या मिलती है या इस लाइब्रेरी को बेहतर बनाने के लिए आपके पास कोई सुझाव है, तो हमें बताएं. कृपया नई लाइब्रेरी बनाने से पहले, इस लाइब्रेरी में मौजूद मौजूदा समस्याओं को देखें. स्टार बटन पर क्लिक करके, किसी मौजूदा समस्या के लिए वोट किया जा सकता है.
ज़्यादा जानकारी के लिए, Issue Tracker का दस्तावेज़ देखें.
Camera Viewfinder Compose Version 1.0
वर्शन 1.0.0-alpha02
12 जून, 2024
androidx.camera:camera-viewfinder-compose:1.0.0-alpha02
रिलीज़ हो गया है. वर्शन 1.0.0-alpha02 में ये कमिट शामिल हैं.
वर्शन 1.0.0-alpha01
14 मई, 2024
androidx.camera:camera-viewfinder-compose:1.0.0-alpha01
रिलीज़ हो गया है. वर्शन 1.0.0-alpha01 में ये कमिट शामिल हैं.
नई सुविधाएं
- नई लाइब्रेरी. इस लाइब्रेरी में, Compose का नेटिव Viewfinder कंपोज़ेबल शामिल है. इसका इस्तेमाल CameraX और Camera2 के साथ किया जा सकता है. कंपोज़ेबल Viewfinder, अलग-अलग आसपेक्ट रेशियो और टच इवेंट को हैंडल करने की सुविधा देता है.
Camera Viewfinder वर्शन 1.4
वर्शन 1.4.0-alpha07
12 जून, 2024
androidx.camera:camera-viewfinder:1.4.0-alpha07
और androidx.camera:camera-viewfinder-core:1.4.0-alpha07
रिलीज़ हो गए हैं. वर्शन 1.4.0-alpha07 में ये कमिट शामिल हैं.
वर्शन 1.4.0-alpha06
14 मई, 2024
androidx.camera:camera-viewfinder:1.4.0-alpha06
और androidx.camera:camera-viewfinder-core:1.4.0-alpha06
रिलीज़ हो गए हैं. वर्शन 1.4.0-alpha06 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
Viewfinder
'sImplementationMode
Enums का नाम बदलें, ताकि वे बेहतर तरीके से लागू हो सकें. साथ ही,TransformationInfo.sourceRotation
के लिए तय किए गए कॉन्स्टेंट जोड़ें. (Ic6149)- ज़ूम करने के जेस्चर की स्थितियों को शामिल करने के लिए,
ZoomGestureDetector.ZoomEvent
जोड़ा गया. (I84cdf)
Camera Version 1.5
वर्शन 1.5.0-beta02
16 जुलाई, 2025
androidx.camera:camera-*:1.5.0-beta02
रिलीज़ हो गया है. वर्शन 1.5.0-beta02 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- ज़्यादा बेहतर तरीके से और सटीक तरीके से, अच्छी क्वालिटी वाली सुविधाओं के ग्रुप को सेट करने या क्वेरी करने के लिए नए एपीआई जोड़े गए हैं. ऐसा इसलिए किया गया है, क्योंकि हो सकता है कि ये सुविधाएं सभी डिवाइसों पर एक साथ काम न करें.
SessionConfig
में अब नए एपीआई शामिल हैं. इनकी मदद से, सुविधाओं के ग्रुप को 'ज़रूरी' या 'पसंदीदा' के तौर पर मार्क किया जा सकता है.CameraInfo.isFeatureGroupSupported
एपीआई की मदद से यह पता लगाया जा सकता है कि किसीSessionConfig
को बाइंड करने से पहले, कोई सुविधा ग्रुप काम करता है या नहीं.SessionConfig
also allows setting a listener to know which features are finally selected when a session config is bound. (Ie4d60) - नए एपीआई
SessoinConfig.Builder.setFrameRateRange(Range<Integer>)
औरCameraInfo.getSupportedFrameRateRanges(SessionConfig)
जोड़े गए हैं. इनकी मदद से डेवलपर, किसी खासSessionConfig
के लिए, गारंटीड तौर पर काम करने वाले फ़्रेम रेट के बारे में क्वेरी कर सकते हैं. इसके बाद,SessionConfig
पर फ़्रेम रेट लागू कर सकते हैं. (Ieacf7) - नया
SessionConfig
एपीआई लॉन्च किया गया है. इसमें इस्तेमाल के उदाहरण, सेशन पैरामीटर,CameraEffect
,ViewPort
वगैरह को कॉन्फ़िगर करने के लिए बेहतर ऐब्स्ट्रैक्शन शामिल है. किसी LifecycleOwner सेSessionConfig
को बाइंड करने पर, कैमरा सेशन खुल जाता है. साथ ही, इस्तेमाल के उदाहरण और सेशन पैरामीटर का इस्तेमाल करके इसे कॉन्फ़िगर किया जाता है. इसके बाद, तय किए गएCameraEffect
औरViewPort
लागू किए जाते हैं. जब किसी नएSessionConfig
को उसीLifecycleOwner
से अपडेट किया जाता है, तो आपको पहलेunbindAll
या अनबाइंड करने की ज़रूरत नहीं होती. इसके बजाय, सीधे तौर पर एक नयाSessionconfig
बाइंड किया जा सकता है. (Iedfc3) - तेज़/स्लो मोशन में वीडियो रिकॉर्ड करने के लिए, नए एपीआई जोड़े गए हैं. ज़्यादा जानकारी के लिए,
HighSpeedVideoSessionConfig
एपीआई देखें. (Ia16f3)
गड़बड़ियां ठीक की गईं
ImageCaptureCapabilities#getSupportedOutputFormats()
एपीआई में यह समस्या ठीक की गई है. इसमें कुछ ऐसे डिवाइसों में रॉ फ़ॉर्मैट को काम करने वाला बताया गया था जिनमें रॉ फ़ॉर्मैट की सुविधा मौजूद नहीं है. (Ibcadb)PreviewView
का इस्तेमाल करने,CameraEffect
चालू होने या इस्तेमाल के चार उदाहरणों(StreamSharing) को बाइंड करने पर होने वाली मेमोरी लीक की समस्या को ठीक किया गया है (I87468)AssertionError
: Invalid internal audio state: IDLING की वजह से, वीडियो रिकॉर्डिंग क्रैश होने की समस्या ठीक की गई. (I38d4b, b/414259796)- जब ऐप्लिकेशन किसी बाहरी डिसप्ले पर लैंडस्केप मोड में चलता है, तब
PreviewView
में मौजूद झलक के खिंचने या तिरछे होने की समस्या को ठीक किया गया है (Ia917a) - उस समस्या को ठीक किया गया है जिसमें कैमरा स्ट्रीम को Preview और VideoCapture के बीच शेयर करने पर, Preview Stabilization की सेटिंग सही तरीके से लागू नहीं होती थीं.(I5430e)
CameraXViewfinder
अबViewfinder
में, सर्फ़ेस रिप्लेसमेंट को सही तरीके से हैंडल करता है. इसमें ऐसे उदाहरण शामिल हैं, जैसे कि एपीआई लेवल 28 या इससे पहले के वर्शन पर मौजूदEXTERNAL
व्यूफ़ाइंडर का स्क्रीन से बाहर चले जाना या किसीCameraXViewfinder
(किसी भीImplementationMode
के साथ) काmoveableContentOf()
का हिस्सा होना. अगरViewfinderSurfaceSession
को चालू नहीं रखा जा सकता है, तोCameraXViewfinder
मौजूदा CameraXSurfaceRequest
को अमान्य कर देगा. इससे CameraX को नएSurface
का इस्तेमाल करने की अनुमति मिल जाएगी. (I79432)- Android 10/11 में मौजूद एक समस्या को ठीक किया गया है. इस समस्या में, ट्रांसफ़ॉर्मेशन ऑपरेशन (जैसे कि स्केल या ट्रांसलेट) को बहुत पहले लागू कर दिया जाता था. इस वजह से,
EXTERNAL
CameraXViewfinder
स्ट्रेच या गलत दिख सकता था. अब सिस्टम, लेआउट फ़ेज़ में इन ट्रांसफ़ॉर्मेशन को लागू करने से पहले, Surface के बनने का इंतज़ार करता है. इससे सही आउटपुट मिलता है. (Icc77c) - Composable
CameraXViewfinder
अब Compose केPager
के साथ सही तरीके से काम करता है. इस बदलाव से यह पक्का होता है किAndroidView
केonReset
कॉलबैक को लागू करके, कंपोज़ेबल को सही तरीके से रीसेट किया जा सकता है. साथ ही, यहEMBEDDED
औरEXTERNAL
, दोनों के साथ काम करता है. (I0d9be) - लाइफ़साइकल के मालिक की जानकारी लीक होने की समस्या को ठीक किया गया है. यह समस्या तब होती है, जब कैमरा प्रोवाइडर को बंद किए बिना, लाइफ़साइकल के मालिक से यूज़ केस को अनबाइंड किया जाता है.
वर्शन 1.5.0-beta01
7 मई, 2025
androidx.camera:camera-*:1.5.0-beta01
रिलीज़ हो गया है. वर्शन 1.5.0-beta01 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- Kotlin 2.0 के साथ रिलीज़ किए गए प्रोजेक्ट के लिए, KGP 2.0.0 या इसके बाद का वर्शन इस्तेमाल करना ज़रूरी है (Idb6b5)
ContentScale
और अलाइनमेंट का इस्तेमाल अब व्यूफ़ाइंडर में किया जा सकता है. इससे, दिखाए गए ऑब्जेक्ट को उसके कंटेनर में स्केल किया जा सकता है और उसे उसी तरह रखा जा सकता है जिस तरहandroidx.compose.foundation.Image
काम करता है. (Ibcea3)TransformationInfo
में अब सभी आर्ग्युमेंट के लिए डिफ़ॉल्ट वैल्यू मौजूद हैं. इससे बिना किसीTransformationInfo
के व्यूफ़ाइंडर बनाए जा सकेंगे. इनमें डिफ़ॉल्ट रूप से, सोर्स रोटेशन 0 पर सेट होगा. साथ ही, सोर्स मिररिंग और क्रॉप रेक्ट नहीं होगा. (I2b1b2)LifecycleCameraProvider
जोड़ा गया है. यह कैमरा उपलब्ध कराने वाली कंपनी है. इसे अलग-अलग कॉन्फ़िगरेशन के साथ इंस्टैंटिएट किया जा सकता है. जैसे, कस्टम कॉन्टेक्स्ट के साथ कॉन्फ़िगर करके वर्चुअल डिवाइस के कैमरे को ऐक्सेस करना. (Ia2992)
गड़बड़ियां ठीक की गईं
- Samsung SM-E556B डिवाइस पर,
ImageAnalysis
का इस्तेमाल करते समय, झलक के फ़्रीज़ होने की समस्या ठीक कर दी गई है. यह समस्या,TEMPLATE_RECORD
का इस्तेमाल करने वाली किसी अन्य स्ट्रीम के साथImageAnalysis
का इस्तेमाल करने पर होती थी. (Ic0e62, b/409478042) - Samsung SM-M556B डिवाइस पर,
ImageAnalysis
का इस्तेमाल करने वाली किसी अन्य स्ट्रीम के साथTEMPLATE_RECORD
का इस्तेमाल करने पर, झलक के फ़्रीज़ होने की समस्या ठीक की गई. (Ic1a6a, b/395822788) - Android 15 वाले Pixel डिवाइसों पर, ज़ूम करने से जुड़े ऑपरेशन करते समय, एक्सटेंशन के नाइट मोड
AssertError
से जुड़ी समस्या को ठीक किया गया है. (I27a5d, b/401460276) CameraController
का इस्तेमाल करते समय, ML Kit Analyzer के गलत बाउंडिंग बॉक्स कोऑर्डिनेट की समस्या को ठीक किया गया. (Iae91b, b/409808510)
वर्शन 1.5.0-alpha06
26 फ़रवरी, 2025
androidx.camera:camera-*:1.5.0-alpha06
रिलीज़ हो गया है. वर्शन 1.5.0-alpha06 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- टॉर्च की रोशनी को पसंद के मुताबिक बनाने की सुविधा देने के लिए,
CameraInfo.getTorchStrengthLevel
,CameraInfo.getMaxTorchStrengthLevel
, औरCameraControl.setTorchStrengthLevel
को जोड़ा गया (I00878) - एक नया एपीआई
CameraController#setTapToFocusAutoCancelDuration
जोड़ा गया है, ताकि उपयोगकर्ताPreviewView
टैप-टू-फ़ोकस इवेंट के लिए, अपने-आप रद्द होने की सुविधा को कंट्रोल कर सकें. डिफ़ॉल्ट रूप से, CameraX पांच सेकंड के बाद फ़ोकस इवेंट रद्द कर देता है.इसका मतलब है कि कैमरे का फ़ोकस रीसेट हो जाता है. यह एपीआई, उस अवधि में बदलाव करने या अपने-आप रद्द होने की सुविधा को पूरी तरह से बंद करने की अनुमति देता है. (Icf59a) FLASH_STATE_READY
का नाम बदलकरNOT_FIRED
कर दिया गया है. साथ ही, अन्यFlashState
कॉन्स्टेंट के नामों को आसान बना दिया गया है, ताकि उन्हें बेहतर तरीके से पढ़ा जा सके. (I8771d)- Low Light Boost API को ऐक्सेस करने की सुविधा जोड़ी गई. Android 15 या इसके बाद के वर्शन पर चलने वाले डिवाइसों में, कम रोशनी में फ़ोटो को बेहतर बनाने की सुविधा काम करती है. यह सुविधा, कम रोशनी में झलक, वीडियो या इमेज विश्लेषण स्ट्रीम की चमक को अपने-आप अडजस्ट कर सकती है. ऐप्लिकेशन, नए एपीआई का इस्तेमाल इन कामों के लिए कर सकते हैं: 1. सुविधा की उपलब्धता की जांच करने के लिए,
CameraInfo#isLowLightBoostSupported
का इस्तेमाल करें. 2. अगर डिवाइसों पर यह मोड काम करता है, तो इसे चालू करने के लिएCameraControl#enableLowLightBoostAsync
का इस्तेमाल करें. 3. कम रोशनी को बढ़ाने की सुविधा की स्थिति पर नज़र रखने के लिए,CameraInfo#getLowLightBoostState
का इस्तेमाल करें. (I937ed) - camera-feature-combination-query में non-camera2 क्वेरी को तेज़ी से चलाने के लिए, कंपैट क्लास जोड़ें. (Ie97ee)
CameraController
टैप-टू-फ़ोकस इवेंट के लिए, नया एपीआईgetTapToFocusInfoState()
अब टैप की पोज़िशन भी दिखाता है. इसके लिए, यहTapToFocusInfo
क्लास काLiveData
दिखाता है. वहीं,getTapToFocusState()
दिखाने वाले पिछलेLiveData<Integer>
एपीआई को नए एपीआई के पक्ष में बंद कर दिया गया है. (I238d2)
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक किया गया है जिसमें एक्सटेंशन के साथ प्रीव्यू स्टेबलाइज़ेशन की सुविधा चालू होने पर, प्रीव्यू स्टेबलाइज़ेशन लागू नहीं होता था. (I24ad7)
CameraController
फ़ोकस स्टेट इवेंट केTAP_TO_FOCUS_NOT_STARTED
पर वापस रीसेट न होने की समस्या को ठीक किया गया है. यह समस्या तब होती है, जब CameraX डिफ़ॉल्ट रूप से पांच सेकंड के बाद होने वाले फ़ोकस इवेंट को अपने-आप रद्द कर देता है. (I31954)- इमेज के ऐसे संसाधन इस्तेमाल करने की वजह से, कई बार फ़ोटो कैप्चर करने के बाद, ज़ीरो शटर लैग (ज़ेडएसएल) का इस्तेमाल करते समय झलक के रुकने की समस्या ठीक की गई. (Ic3c2a)
- कुछ डिवाइसों पर यूएचडी वीडियो में लाल रंग दिखने की समस्या ठीक की गई है. ऐसा तब होता था, जब पाइपलाइन में
OpenGL
शामिल होता था. (Idcedc)
वर्शन 1.5.0-alpha05
15 जनवरी, 2025
androidx.camera:camera-*:1.5.0-alpha05
रिलीज़ हो गया है. वर्शन 1.5.0-alpha05 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
QualitySelector
के आधार पर चुनी गई क्वालिटी जानने के लिए,VideoCapture.getSelectedQuality()
जोड़ें. (I70508, b/204288986)ImageCapture.OnImageCapturedCallback
एपीआई की मदद से इमेज कैप्चर करने पर, अबImageProxy
से मिली ImageInfo का इस्तेमाल यह जानने के लिए किया जा सकता है कि क्या फ़्लैश को नएImageInfo.getFlashState()
एपीआई के ज़रिए ट्रिगर किया गया था. (Id2c61, b/380527406)ImageAnalysis
के लिए,OUTPUT_IMAGE_FORMAT_NV21
आउटपुट फ़ॉर्मैट के साथ काम करने की सुविधा जोड़ी गई. (I484ab)featurecombinationquery
आर्टफ़ैक्ट (I4427f) के एक्सपेरिमेंटल एनोटेशन को हटाएं- एक्सटेंशन मोड चालू होने पर, एक्सटेंशन की खास बातों के हिसाब से,
CameraControl
के लिए ज़ूम रेशियो की तय सीमा में बदलाव करें. (I85af1)
गड़बड़ियां ठीक की गईं
- Android 15 से जुड़े एपीआई का इस्तेमाल करने के लिए,
compileSdk
को 35 के तौर पर अपग्रेड किया गया है. CameraX लाइब्रेरी का इस्तेमाल करने वाले ऐप्लिकेशन को भी अपनीcompileSdk
कॉन्फ़िगरेशन सेटिंग अपग्रेड करनी होगी. (Ic80cd) - यह लाइब्रेरी अब JSpecify nullness annotations का इस्तेमाल करती है. ये टाइप-यूज़ होते हैं. Kotlin डेवलपर को सही इस्तेमाल के लिए, कंपाइलर के इस तर्क का इस्तेमाल करना चाहिए:
-Xjspecify-annotations=strict
(यह Kotlin कंपाइलर के 2.1.0 वर्शन से डिफ़ॉल्ट रूप से शुरू होता है). (Idc6c6, b/326456246)
वर्शन 1.5.0-alpha04
11 दिसंबर, 2024
androidx.camera:camera-*:1.5.0-alpha04
रिलीज़ हो गया है. वर्शन 1.5.0-alpha04 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
ImageCapture.Builder#setOutputFormat
औरImageCaptureCapabilities#getSupportedOutputFormats
को स्टेबल एपीआई (Ieb04a) के तौर पर उपलब्ध कराया गया- जब कोई
VideoCapture
किसी लाइफ़साइकल से जुड़ा होता है, तब रिज़ॉल्यूशन की जानकारी पाने के लिएVideoCapture.getResolutionInfo()
जोड़ें. (Icb478) PreviewView.getScreenFlash
औरPreviewView.setScreenFlashOverlayColor
को स्टेबल एपीआई के तौर पर उपलब्ध कराया गया. (I74fee)
गड़बड़ियां ठीक की गईं
- Vivo 1610 डिवाइस पर, अंधेरे में फ़्लैश के साथ फ़ोटो लेते समय, फ़ोटो कैप्चर न होने की समस्या को ठीक किया गया है. (I366f4)
- Redmi Note 6 Pro में, इमेज कैप्चर करने के बाद टॉर्च के अचानक बंद होने की समस्या को ठीक किया गया है. (I2e0e8, b/377144569)
- Pixel के Android 15 डिवाइसों पर, एक्सटेंशन में मौजूद नाइट मोड से इमेज कैप्चर करने में आ रही समस्या को ठीक किया गया है. इस समस्या की वजह से, कैमरा किसी आस-पास मौजूद ऑब्जेक्ट पर फ़ोकस नहीं कर पाता था. (I228d4)
- एक्सटेंशन चालू होने और
VideoCapture
एक साथ बाइंड होने पर, स्टिल इमेज कैप्चर करने की सुविधा के ठीक से काम न करने की समस्या को ठीक किया गया है. (I5c745) - अगर डिवाइस पर यह सुविधा काम करती है, तो एक्सटेंशन के लिए
UltraHDR
की सुविधा चालू होने पर, अब भी इमेज कैप्चर की जा सकती है. (I48300) - TCL डिवाइसों पर
CameraEffect
टारगेटिंग की मदद से इमेज कैप्चर करने के लिए, फ़्लैश कैप्चर की टाइमिंग से जुड़ी समस्या ठीक की गई. (I7698c)
वर्शन 1.5.0-alpha03
30 अक्टूबर, 2024
androidx.camera:camera-*:1.5.0-alpha03
रिलीज़ हो गया है. वर्शन 1.5.0-alpha03 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- RAW और RAW + JPEG
ImageCapture
के लिए आउटपुट फ़ॉर्मैट एपीआई जोड़े गए हैं. डिवाइस की क्षमता की जांच,ImageCaptureCapabilities#getSupportedOutputFormats
में दिखाई जाती है.OUTPUT_FORMAT_RAW
का इस्तेमाल RAW इमेज कैप्चर करने के लिए किया जाता है. यह Adobe DNG फ़ॉर्मैट में होती है. वहीं,OUTPUT_FORMAT_RAW_JPEG
का इस्तेमाल RAW और JPEG इमेज एक साथ कैप्चर करने के लिए किया जाता है. नईImageCapture#takePicture
एपीआई का इस्तेमाल, एक साथ इमेज कैप्चर करने के लिए किया जाता है. इसके लिए, दोOutputFileOptions
उपलब्ध कराने होते हैं. पहलाOutputFileOptions
, RAW इमेज के लिए होता है और दूसराOutputFileOptions
, JPEG इमेज के लिए होता है. (Ib0f3d)
गड़बड़ियां ठीक की गईं
VideoCapture
चालू होने पर, TCL डिवाइसों पर वीडियो और झलक के कम दिखने की समस्या ठीक की गई. (Id7a64)- उस समस्या को ठीक किया गया है जिसमें किसी इफ़ेक्ट के चालू होने या चार इस्तेमाल के उदाहरणों के बाइंड होने (स्ट्रीम-शेयरिंग) पर,
startFocusMetering
कोPreviewView.getMeteringPointFactory
के साथ चालू करने पर सेंसर के सही कोऑर्डिनेट नहीं मिलते थे. (I916c5, b/345993685) - वीडियो रिकॉर्ड करते समय और स्टोरेज में ज़रूरत के मुताबिक जगह न होने पर,
VideoRecordEvent.Finalize.ERROR_INSUFFICIENT_STORAGE
इवेंट ट्रिगर नहीं होता था. इस समस्या को ठीक कर दिया गया है. (I35779, b/356399842)
वर्शन 1.5.0-alpha02
2 अक्टूबर, 2024
androidx.camera:camera-*:1.5.0-alpha02
रिलीज़ हो गया है. वर्शन 1.5.0-alpha02 में ये कमिट शामिल हैं.
नई सुविधाएं
- डिवाइस पर काम करने वाली कैमरे की सुविधाओं के बारे में क्वेरी करने के लिए नए एपीआई. उदाहरण के लिए, यह देखना कि एचडीआर और 60 एफ़पीएस को एक साथ चालू किया जा सकता है या नहीं. इसमें दो आर्टफ़ैक्ट शामिल हैं: camera-feature-combination-query और camera-feature-combination-query-play-services.
यह camera2 के
CameraManager#getCameraDeviceSetup#isSessionConfigurationSupported
API का ऐसा वर्शन है जो इसके साथ काम करता है. इसमें Google Play services से मिला अतिरिक्त डेटा शामिल होता है.
गड़बड़ियां ठीक की गईं
- LEGACY लेवल वाले डिवाइसों पर,
Preview/VideoCapture
टारगेट फ़्रेम रेट की समस्या ठीक की गई.setTargetFrameRate
याCamera2Interop
एपीआई के ज़रिए सेट किए गए टारगेट फ़्रेम रेट को हमेशाAeFpsRangeLegacyQuirk
से मिली वैल्यू से बदल दिया जाता था. इस फ़िक्स के बाद, CameraX लाइब्रेरी,setTargetFrameRate
याCamera2Interop
एपीआई के ज़रिए सेट की गई वैल्यू का इस्तेमाल करेगी. (Ie2d32) CameraEffect
की मदद से इमेज कैप्चर करने के लिए, फ़्लैश/टॉर्च/3A की सुविधाएं जोड़ी गईं.CameraEffect
की मदद से कैप्चर की गई इमेज में, कैप्चर करने से पहले और बाद में की जाने वाली प्रोसेसिंग (जैसे, फ़्लैश ट्रिगर, 3A कन्वर्जेंस वगैरह) अब वैसी ही होनी चाहिए जैसीCameraEffect
के बिना कैप्चर की गई इमेज में होती है. (I5ff30)- Samsung SM-A057G डिवाइस पर
ImageAnalysis
के लिए, समस्या पैदा करने वाले आउटपुट साइज़ को बाहर रखा गया है. अगरImageAnalysis
का रिज़ॉल्यूशन 1920x1440 या इससे ज़्यादा है, तो इससे काली झलक दिखने की समस्या हो सकती है. हमने SM-A057G डिवाइस परExcludedSupportedSizesQuirk
लागू किया है, ताकि इस समस्या से बचा जा सके. (I63dfe, b/365877975) Preview
औरVideoCapture
के साथ स्ट्रीम शेयर करने के लिए, स्ट्रीम शेयर करने का मैकेनिज़्म इंटरनल तौर पर चालू होने पर,Preview/VideoCapture
टारगेट फ़्रेम रेट से जुड़ी समस्या को ठीक किया गया है. (I4fdac)- Samsung S10e और S10+ डिवाइसों पर, JPEG इमेज के मेटाडेटा की गलत जानकारी की समस्या को ठीक करने के लिए, वर्कअराउंड की सुविधा चालू की गई. इस समस्या को ठीक कर दिया गया है. अब CameraX, JPEG इमेज को सेव कर सकता है. इसके अलावा, अगर इन डिवाइसों पर JPEG इमेज के मेटाडेटा से जुड़ी समस्या होती है, तो
ImageProxy.toBitmap()
फ़ंक्शन को कॉल करने पर सही बिटमैप ऑब्जेक्ट वापस लाए जा सकते हैं. (Iae493, b/356428987) - Samsung A52s के बैक कैमरे के लिए एक्सटेंशन बंद कर दिए गए हैं. इस कैमरे का आईडी 0 है. ऐसा इसलिए किया गया है, क्योंकि एचडीआर इमेज कैप्चर करते समय नेटिव क्रैश हो सकते हैं. साथ ही, BOKEH या FACE_RETOUCH मोड के लिए कैप्चर सेशन कॉन्फ़िगर नहीं हो सकते. (I03ec9, b/364152642)
- वीडियो रिकॉर्ड करते समय और स्टोरेज में ज़रूरत के मुताबिक जगह न होने पर,
VideoRecordEvent.Finalize.ERROR_INSUFFICIENT_STORAGE
इवेंट ट्रिगर नहीं होता था. इस समस्या को ठीक कर दिया गया है. (Ia5b4f, b/356399842) - उस समस्या को ठीक कर दिया गया है जिसमें Oppo A5 (CPH1931) पर दूसरी बार वीडियो रिकॉर्ड करने की कोशिश करने पर समस्या आ रही थी. (I181d6)
वर्शन 1.5.0-alpha01
4 सितंबर, 2024
androidx.camera:camera-*:1.5.0-alpha01
रिलीज़ हो गया है. वर्शन 1.5.0-alpha01 में ये कमिट शामिल हैं.
नई सुविधाएं
- CameraX Viewfinder Compose Adapter के लिए एक नया आर्टफ़ैक्ट,
camera-compose
रिलीज़ किया गया है. यहcamera-core
से CameraXSurfaceRequest
की झलक वाली स्ट्रीम दिखाता है. (I8666e) - एक नया कंपोज़ेबल,
CameraXViewfinder
जोड़ा गया है. यह एक इडियोमैटिक कंपोज़ेबल के तौर पर काम करता है. यह कंपोज़ेबलViewfinder
के लिए, CameraXSurfaceRequest
s को अडैप्ट करता है. (I4770f)
एपीआई में हुए बदलाव
- एक साथ दो कैमरों से वीडियो कैप्चर करने के लिए, कंपोज़िशन सेटिंग सेट करने के लिए एपीआई उपलब्ध कराएं. इन सेटिंग में, ब्लेंडिंग के लिए ऐल्फ़ा वैल्यू, x और y कोऑर्डिनेट में ऑफ़सेट, और कैमरा फ़्रेम डिसप्ले विंडो की चौड़ाई और ऊंचाई का स्केल शामिल है. ऑफ़सेट, चौड़ाई, और ऊंचाई को सामान्य किए गए डिवाइस के कोऑर्डिनेट में बताया जाता है. (Ia2b8a)
CameraProvider.getCameraInfo
को आधिकारिक एपीआई के तौर पर उपलब्ध कराया गया. (I901cd)- शुरुआती म्यूट स्थिति को कंट्रोल करने के लिए, एपीआई
PendingRecording.withAudioEnabled(boolean initialMuted)
जोड़ा गया. (I635c3, b/354829267)
गड़बड़ियां ठीक की गईं
- डस्ट्रॉय किए गए
LifecycleOwner
के साथbindToLifecycle
को शुरू करने पर होने वाले क्रैश की समस्या को ठीक किया गया है. (I6e6d8) - Motorola Edge 20 Fusion में
VideoCapture
के साथ बाइंड करते समय, सामने वाले कैमरे में फ़िक्स्ड प्रीव्यू की सुविधा काम नहीं कर रही है. (I1fe88) PreviewView
में ज़ूम करने के जेस्चर (हाव-भाव) का पता लगाने के लिए, कॉन्फ़िगरेशन को ऑप्टिमाइज़ किया गया है, ताकि इसे आसानी से इस्तेमाल किया जा सके. (I04ffc)
कैमरा वर्शन 1.4
वर्शन 1.4.2
26 मार्च, 2025
androidx.camera:camera-*:1.4.2
रिलीज़ हो गया है. वर्शन 1.4.2 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- Samsung Galaxy M55 पर,
TEMPLATE_RECORD
का इस्तेमाल करने वाली किसी अन्य स्ट्रीम के साथImageAnalysis
का इस्तेमाल करते समय, झलक के फ़्रीज़ होने की समस्या को ठीक किया गया है. (Ic1a6a, b/395822788)
वर्शन 1.4.1
11 दिसंबर, 2024
androidx.camera:camera-*:1.4.1
रिलीज़ हो गया है. वर्शन 1.4.1 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- Pixel के Android 15 डिवाइसों पर, एक्सटेंशन में मौजूद नाइट मोड से इमेज कैप्चर करने में आ रही समस्या को ठीक किया गया है. इस समस्या की वजह से, कैमरा किसी आस-पास मौजूद ऑब्जेक्ट पर फ़ोकस नहीं कर पाता था. (I228d4)
- एक्सटेंशन चालू होने और
VideoCapture
एक साथ बाइंड होने पर,ImageCapture#takePicture
के ठीक से काम न करने की समस्या को ठीक किया गया है. (I5c745)
वर्शन 1.4.0
30 अक्टूबर, 2024
androidx.camera:camera-*:1.4.0
रिलीज़ हो गया है. वर्शन 1.4.0 में ये कमिट शामिल हैं.
1.3.0 के बाद हुए अहम बदलाव
CameraX 1.4.0 में कई शानदार अपडेट उपलब्ध हैं! यहां सार दिया गया है:
हेडलाइन सुविधा: 10-बिट एचडीआर:
- आसानी से शानदार एचडीआर फ़ोटो और वीडियो कैप्चर करें.
- एचएलजी और 10-बिट HEVC एन्कोडिंग के साथ काम करता है.
- 10-बिट एचडीआर की झलक देखें और डिवाइस की क्षमताओं के बारे में क्वेरी करें.
- यह सुविधा, ज़्यादा से ज़्यादा डिवाइसों पर
UltraHDR
इमेज और एचडीआर वीडियो के साथ काम करती है.
अन्य बेहतरीन सुविधाएं:
- Kotlin एक्सटेंशन:
takePicture
औरawaitInstance
सस्पेंड फ़ंक्शन जोड़े गए. - रीयल-टाइम इफ़ेक्ट: वॉटरमार्क और ऑब्जेक्ट हाइलाइट करने जैसे इफ़ेक्ट लागू करें.
- CameraController API: वीडियो कैप्चर करने के कॉन्फ़िगरेशन के लिए नए कंट्रोल.
- झलक की स्थिरता: डिवाइस की क्षमता के बारे में क्वेरी करना और स्टेबलाइज़ेशन की सुविधा चालू करना.
- VideoCapture को बेहतर बनाया गया है: क्वालिटी पर बेहतर कंट्रोल और हाई रिज़ॉल्यूशन में वीडियो कैप्चर करने की सुविधा.
- CameraX एक्सटेंशन इंटिग्रेशन:
VideoCapture
और नईImageCapture
सुविधाओं के साथ आसानी से इंटिग्रेट किया जा सकता है. - Shutter Sound API: इस एपीआई की मदद से, किसी देश/इलाके में शटर की आवाज़ से जुड़ी ज़रूरी शर्तों को आसानी से देखा जा सकता है.
- स्क्रीन फ़्लैश: सामने वाले कैमरे से कम रोशनी में बेहतर फ़ोटो ली जा सकती हैं.
- कैमरा एक्सटेंशन के मेटाडेटा एपीआई: ये एपीआई, एक्सटेंशन की क्षमता को अडजस्ट करने और
ExtensionMode#AUTO
में मौजूदा एक्सटेंशन मोड की सूचना पाने में मदद करते हैं. बग ठीक करने से जुड़ी ज़्यादा जानकारी के लिए, बीटा और आरसी से जुड़े एलान देखें.
वर्शन 1.4.0-rc04
16 अक्टूबर, 2024
androidx.camera:camera-*:1.4.0-rc04
रिलीज़ हो गया है. वर्शन 1.4.0-rc04 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक किया गया है जिसमें किसी इफ़ेक्ट के चालू होने या चार इस्तेमाल के उदाहरणों के बाइंड होने (स्ट्रीम-शेयरिंग) पर,
startFocusMetering
कोPreviewView.getMeteringPointFactory
के साथ चालू करने पर सेंसर के सही कोऑर्डिनेट नहीं मिलते थे. (I916c5, b/345993685)
वर्शन 1.4.0-rc03
2 अक्टूबर, 2024
androidx.camera:camera-*:1.4.0-rc03
रिलीज़ हो गया है. वर्शन 1.4.0-rc03 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
CameraEffect
की मदद से इमेज कैप्चर करने के लिए, फ़्लैश/टॉर्च/3A की सुविधाएं जोड़ी गईं.CameraEffect
की मदद से कैप्चर की गई इमेज में, कैप्चर करने से पहले और बाद में की जाने वाली प्रोसेसिंग (जैसे, फ़्लैश ट्रिगर, 3A कन्वर्जेंस वगैरह) अब वैसी ही होनी चाहिए जैसीCameraEffect
के बिना कैप्चर की गई इमेज में होती है. (I5ff30)PreviewView
में पिंच करके ज़ूम करने की सुविधा को बेहतर बनाया गया है (I04ffc)- अल्ट्रा एचडीआर को 10-बिट आउटपुट की सुविधा से अलग किया गया है. ऐसा इसलिए, क्योंकि अल्ट्रा एचडीआर की सुविधा के लिए अब यह ज़रूरी नहीं है कि डिवाइसों में 10-बिट आउटपुट की सुविधा हो. (I96ff2, I0c3b3)
वर्शन 1.4.0-rc02
18 सितंबर, 2024
androidx.camera:camera-*:1.4.0-rc02
रिलीज़ हो गया है. वर्शन 1.4.0-rc02 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- डस्ट्रॉय किए गए
LifecycleOwner
के साथbindToLifecycle
को शुरू करने पर होने वाले क्रैश की समस्या को ठीक किया गया है. (I6e6d8) ScreenFlash#apply
के लिए,ScreenFlashView
में दिखने से जुड़ा ऐनिमेशन जोड़ा गया है. इससे, रोशनी में बदलाव होने के कुछ समय बाद एसिंक्रोनस तरीके से होने वाली गड़बड़ियां भी ठीक हो जाती हैं. (I37cdb)- ज़ूम करने की सुविधा को बेहतर बनाया गया है. इसके लिए, उन डिवाइसों पर फ़्रेमवर्क में ज़ूम करने की सेटिंग को बदला गया है जिन पर यह सुविधा काम करती है.
वर्शन 1.4.0-rc01
7 अगस्त, 2024
androidx.camera:camera-*:1.4.0-rc01
रिलीज़ हो गया है. वर्शन 1.4.0-rc01 में ये कमिट शामिल हैं.
नई सुविधाएं
- एक्सपेरिमेंट के तौर पर
CameraInfo.getCameraInfo
जोड़ा गया है. इससे कैमरे के इस्तेमाल के उदाहरणों को कैमरे से बाइंड किए बिना, कैमरे के बारे में खास जानकारी दी जा सकेगी. (I550d1)
एपीआई में हुए बदलाव
- उन मामलों के लिए
PreviewView.getScreenFlash
औरPreviewView.setScreenFlashOverlayColor
एपीआई जोड़े गए हैं जहांScreenFlashView
को साफ़ तौर पर नहीं जोड़ा गया है. (I43945)
गड़बड़ियां ठीक की गईं
- कम रोशनी में फ़्लैश चालू करके इमेज कैप्चर करने पर, एक्सपोज़र और कलर टिंट से जुड़ी समस्याओं को ठीक किया गया है. ऐसा VideoCapture के इस्तेमाल के उदाहरण के साथ किया गया है. (Ic9814)
- इस समस्या को ठीक किया गया है. इसमें एक्सटेंशन चालू होने पर,
takePicture
के अनुरोध को बीच में रोकने पर नतीजे नहीं मिलते थे. साथ ही,takePicture
का अगला अनुरोध काम नहीं करता था. (Iae78f) - एक्सटेंशन चालू होने पर मेमोरी लीक होने की समस्या को ठीक किया गया है. (Iab276)
- Pixel 7/8 और Samsung Galaxy S24 सीरीज़ जैसे डिवाइसों पर, CameraX एक्सटेंशन के ठीक से काम न करने की समस्या को ठीक किया गया है. यह समस्या, रिलीज़ मोड में
Camera2OutputConfigImpl
कन्वर्ज़न की समस्या की वजह से हुई है. यह समस्या, AGP को 8.5.1 पर अपग्रेड करने और कोड छोटा करने की सुविधा चालू करने के बाद सामने आई. (I99598, b/354824993)
वर्शन 1.4.0-beta02
12 जून, 2024
androidx.camera:camera-*:1.4.0-beta02
रिलीज़ हो गया है. वर्शन 1.4.0-beta02 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
VideoCapture
की तरह ही, Preview के इस्तेमाल के उदाहरण के लिएsetMirrorMode
जोड़ें. यह एपीआई 33 और उसके बाद के वर्शन के लिए,OutputConfiguration.setMirrorMode
के ज़रिए प्रीव्यू स्ट्रीम के लिए मिरर मोड चालू और बंद करने की सुविधा देगा. पुराने एपीआई के लिए, यह सुविधा उपलब्ध नहीं होगी. (I821f4)
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक किया गया है जिसमें Samsung Tab A8 पर ऐप्लिकेशन, फ़ोटो नहीं ले पाते थे. ऐसा तब होता था, जब
ImageCapture
Preview
+VideoCapture
+ImageCapture
UseCase
कॉम्बिनेशन में 1920x1080 चुना जाता था. (I5a463, b/336925549) - कैमरा बदलने पर, लगातार रिकॉर्डिंग की सुविधा काम नहीं कर सकती. (Icb0a1)
वर्शन 1.4.0-beta01
14 मई, 2024
androidx.camera:camera-*:1.4.0-beta01
रिलीज़ हो गया है. वर्शन 1.4.0-beta01 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- ज़ूम करने के जेस्चर की स्थितियों को शामिल करने के लिए,
ZoomGestureDetector.ZoomEvent
जोड़ा गया. (I84cdf)
गड़बड़ियां ठीक की गईं
- हमने एक ऐसी गड़बड़ी को ठीक किया है जिसमें अब भी कैप्चर और टैप-टू-फ़ोकस, बार-बार किए जाने वाले अनुरोध के एफ़पीएस/स्टेबलाइज़ेशन मोड की वैल्यू का इस्तेमाल नहीं करते हैं. इससे कैप्चर सेशन फिर से शुरू हो सकता है और कुछ डिवाइसों में देरी की समस्याएं हो सकती हैं या प्रीव्यू फ़्रीज़ हो सकता है. (I7dc0b)
- गड़बड़ी ठीक की गई है. इसमें कुछ डिवाइसों पर
CameraEffect
चालू होने पर, ज़्यादा रिज़ॉल्यूशन नहीं चुना जा सकता था. (जैसे, Samsung A32 5G पर 4000x3000). (Ie3ed3, b/337336152) - Pixel 4XL API29 पर, Preview,
ImageCapture
, औरVideoCapture(UHD)
का इस्तेमाल करके फ़ोटो लेते समय ऐप्लिकेशन के क्रैश होने की समस्या ठीक की गई. (I5b288) - वर्चुअल डिवाइसों के साथ काम करता है:
ProcessCameraProvider
में पास किया गया कॉन्टेक्स्ट, डिवाइस आईडी को सुरक्षित रखेगा. इससे यह पक्का किया जा सकेगा कि वर्चुअल डिवाइस एनवायरमेंट में यह सुविधा काम करे. (I5ba48)
वर्शन 1.4.0-alpha05
17 अप्रैल, 2024
androidx.camera:camera-*:1.4.0-alpha05
रिलीज़ हो गया है. वर्शन 1.4.0-alpha05 में ये कमिट शामिल हैं.
नई सुविधाएं
ProcessCameraProvider
को Kotlin में लागू किया गया. (I46d4f)ImageCapture.takePicture
सस्पेंड फ़ंक्शन जोड़े गए हैं, ताकि इसे Kotlin के स्टैंडर्ड तरीके से कॉल किया जा सके. (I920be)
एपीआई में हुए बदलाव
ImageCapture
में आउटपुट फ़ॉर्मैट वाले एपीआई जोड़ें. साथ ही, डिवाइस की क्षमता के बारे में क्वेरी करने के लिए,ImageCaptureCapabilities
मेंgetSupportedOutputFormats
तरीका जोड़ें. डिफ़ॉल्ट आउटपुट फ़ॉर्मैट की वैल्यूOUTPUT_FORMAT_JPEG
होती है. यह एसडीआर इमेज को JPEG फ़ॉर्मैट में कैप्चर करती है. अगर डिवाइस पर अल्ट्रा एचडीआर की सुविधा काम करती है और आउटपुट फ़ॉर्मैटOUTPUT_FORMAT_JPEG_ULTRA_HDR
पर सेट है, तो CameraX, JPEG/R इमेज फ़ॉर्मैट का इस्तेमाल करके, कंप्रेस की गई अल्ट्रा एचडीआर इमेज कैप्चर करेगा. यह फ़ॉर्मैट, एसडीआर JPEG फ़ॉर्मैट के साथ काम करता है. साथ ही, इसमें कॉन्टेंट को एचडीआर में रेंडर किया जा सकता है. इसका मतलब है कि पुराने ऐप्लिकेशन या डिवाइसों पर, इमेज सामान्य JPEG फ़ॉर्मैट में दिखती हैं. वहीं, जिन ऐप्लिकेशन और डिवाइसों को इस फ़ॉर्मैट के साथ काम करने के लिए अपडेट किया गया है उन पर इमेज, एचडीआर फ़ॉर्मैट में दिखती हैं. (I5de50)- फ़िज़िकल कैमरे की जानकारी के लिए क्वेरी करने के लिए,
CameraInfo
मेंPhysicalCameraInfo
जोड़ें. साथ ही,CameraSelector
(Ic5b90) में फ़िज़िकल कैमरे का आईडी सेटर/गेटर जोड़ें CameraController#COORDINATE_SYSTEM_VIEW_REFERENCED
कोImageAnalysis#COORDINATE_SYSTEM_VIEW_REFERENCED
से बदलें. कॉन्स्टेंट की वैल्यू में कोई बदलाव नहीं होता. इसका इस्तेमाल, सभी कॉन्स्टेंट को एक जगह पर इकट्ठा करने के लिए किया जाता है. (I890bb)- नए
RetryPolicy
एपीआई की मदद से डेवलपर, CameraX को शुरू करने के लिए फिर से कोशिश करने की सुविधा को पसंद के मुताबिक बना सकते हैं. (I36dd2) ImageCaptureLatencyEstimate
ऑब्जेक्ट बनाने की सुविधा चालू करें, ताकि टेस्ट करने में मदद मिल सके (Iaba99)ImageAnalysis#COORDINATE_SYSTEM_SENSOR
जोड़ें. इसका इस्तेमाल करने पर,MlKitAnalyzer
कैमरा सेंसर कोऑर्डिनेट सिस्टम में कोऑर्डिनेट दिखाता है. (I3ec61)- एक्सटेंशन के मेटाडेटा एपीआई को ऐक्सेस करने की सुविधा जोड़ी गई. नए
CameraExtensionsInfo
औरCameraExtensionsControl
इंटरफ़ेस की मदद से, ऐप्लिकेशन एक्सटेंशन की ताकत की सेटिंग को मॉनिटर और अडजस्ट कर सकते हैं. ऐप्लिकेशन,ExtensionsManager#getCameraExtensionsInfo()
याExtensionsManager#getCameraExtensionsControl()
के नए तरीके का इस्तेमाल करके,CameraExtensionsInfo
याCameraExtensionsControl
इंस्टेंस पा सकते हैं. (I28e1a) ProcessCameraProvider.awaitInstance
जोड़ा गया है. यहProcessCameraProvider.getInstance
(Ib22b9) का निलंबित किया गया वर्शन हैPreviewView#getSensorToViewTransform()
API जोड़ें. मैट्रिक्स, कैमरा सेंसर के कोऑर्डिनेट सेPreviewView
के कोऑर्डिनेट में बदलाव को दिखाता है. इसका इस्तेमाल, एकUseCase
से दूसरेUseCase
में निर्देशांकों को बदलने के लिए किया जा सकता है. उदाहरण के लिए,ImageAnalysis
में पता लगाए गए ऑब्जेक्ट के निर्देशांकों कोPreviewView
ओवरले में बदलना. (I947ab)camera-viewfinder-core
एपीआई को ज़्यादा सामान्य बनाएं, ताकि इसका इस्तेमालcamera-viewfinder
औरcamera-viewfinder-compose
कर सकें. (I1e295)ViewfinderSurfaceRequest
मेंgetSurface
फ़ंक्शन जोड़ें. (I781a0)camera-viewfinder
मेंcamera-viewfinder-core
का इस्तेमाल करें. साथ ही,ViewfinderSurfaceRequest
औरCameraViewfinder
को बंद करें. (I6198c)ZoomGestureDetector
जोड़ा गया है, जो पिंच करके ज़ूम करने की गतिविधि के लिए खास तौर पर कॉन्फ़िगर किए गए स्केलिंग जेस्चर को इंटरप्रेट करता है. (Ifafbf)
गड़बड़ियां ठीक की गईं
- ठीक की गई
ImageAnalysis
' ऐनलज़र की डिफ़ॉल्ट टारगेट रिज़ॉल्यूशन सेटिंग से जुड़ी रिज़ॉल्यूशन चुनने की समस्या: टारगेट रिज़ॉल्यूशन को गलत तरीके से 640x480 पर सेट किया गया था. भले ही, ऐप्लिकेशन ने ऐनलज़र की डिफ़ॉल्ट रिज़ॉल्यूशन सेटिंग को अलग तरीके से सेट किया हो. अगर ऐप्लिकेशन को यह समस्या (1.3.0 ~ 1.3.2) आ रही है और वे इस समस्या को हल करने वाले नए वर्शन में अपग्रेड नहीं कर पा रहे हैं, तो सीधे तौर परResolutionSelector
को पसंदीदा रिज़ॉल्यूशन औरImageAnalysis
UseCase
से मेल खाने वालेAspectRatioStrategy
के साथ सेट करके, इस समस्या को हल किया जा सकता है. (I81f72, b/330091012) - उस समस्या को ठीक किया गया है जिसकी वजह से, मौजूदा अनुरोध पूरा न होने पर,
takePicture
अनुरोध को प्रोसेस करने में समस्या आ सकती थी. (Ie0801) - Vivo X60 और X60 Pro डिवाइसों पर, अमान्य JPEG डेटा की जांच करने की सुविधा लागू करें. इससे इन डिवाइसों पर, बहुत बड़ी इमेज की समस्या ठीक हो सकती है. (I82247, b/288828159)
- Samsung A24 डिवाइसों पर, JPEG इमेज के मेटाडेटा से जुड़ी गलत जानकारी की समस्या को ठीक किया गया है. इस फ़िक्स के बाद, CameraX, JPEG इमेज को सेव कर सकता है. इसके अलावा, Samsung A24 डिवाइसों पर
ImageProxy.toBitmap()
फ़ंक्शन को कॉल करने पर, सही बिटमैप ऑब्जेक्ट वापस किए जा सकते हैं. (I8d6eb, b/309005680) - अगर कैप्चर की गई इमेज 10 एमबी से बड़ी है, तो सभी Samsung डिवाइसों पर अमान्य JPEG डेटा की जांच करें. इससे Samsung डिवाइसों पर, इमेज के बहुत बड़े होने की समस्या ठीक की जा सकती है. (Ic2a65, b/288828159)
- CameraX Extensions पर
ImageAnalysis
के साथ काम करने की सुविधा हटा दी गई है. ऐसा इसलिए किया गया है, क्योंकि कई ओईएम के एक्सटेंशन,ImageAnalysis
के साथ ठीक से काम नहीं करते हैं. इससे समस्याएं आ सकती हैं. (I2d926)
वर्शन 1.4.0-alpha04
24 जनवरी, 2024
androidx.camera:camera-*:1.4.0-alpha04
रिलीज़ हो गया है. वर्शन 1.4.0-alpha04 में ये कमिट शामिल हैं.
नई सुविधाएं
- नया आर्टफ़ैक्ट: camera-effects: यह एक लाइब्रेरी है. इसका इस्तेमाल, CameraX के आउटपुट पर रीयल टाइम इफ़ेक्ट लागू करने के लिए किया जाता है. इसमें
Preview
,VideoCapture
, और/याImageCapture
शामिल हैं. इस आर्टफ़ैक्ट में,CameraEffect
एपीआई के OpenGL वर्शन शामिल हैं. यह वर्शन, कैमरे के आउटपुट को बेहतर तरीके से मैनेज करता है. OverlayEffect
: Android के Canvas API की मदद से ओवरले बनाने के लिए. इससे ऐप्लिकेशन को, कैमरे से ली गई इमेज पर वॉटरमार्क लगाने या पहचाने गए ऑब्जेक्ट को हाइलाइट करने की अनुमति मिलती है.DynamicRange
झलक के इस्तेमाल के उदाहरण के लिए एपीआई: अब झलक के इस्तेमाल के उदाहरण के लिए, डाइनैमिक रेंज सेट की जा सकती है. यह वीडियो के इस्तेमाल के उदाहरण से अलग होगी. इससे सिर्फ़ झलक के लिए, एचडीआर डाइनैमिक रेंज (जैसे, HLG10) का इस्तेमाल किया जा सकता है.CameraInfo
में नए एपीआई भी उपलब्ध हैं. इनकी मदद से यह क्वेरी की जा सकती है कि हर कैमरा कौनसी डाइनैमिक रेंज के साथ काम करता है.
एपीआई में हुए बदलाव
ScreenFlashUiCompleter
का नाम बदलकरScreenFlashListener
कर दिया गया है. साथ ही,ScreenFlashUiCompleter#getExpirationTimeMillis
कोScreenFlash#apply
केexpirationTimeMillis
पैरामीटर में ले जाया गया है. (I13944)- नए एपीआई जोड़े गए हैं. इनकी मदद से, झलक देखने के लिए डाइनैमिक रेंज सेट की जा सकती है. साथ ही, हर कैमरे के साथ काम करने वाली डाइनैमिक रेंज के बारे में क्वेरी की जा सकती है. इससे एचडीआर डाइनैमिक रेंज, जैसे कि HLG10 को सिर्फ़ झलक देखने की सुविधा के साथ इस्तेमाल किया जा सकता है. इसके लिए, अब
VideoCapture
को एक साथ बाइंड करने की ज़रूरत नहीं है. (If25e3) getMirroring()
का नाम बदलकरisMirroring()
किया गया (I47063)- CameraX में, रीयलटाइम में अब भी इमेज कैप्चर करने में लगने वाले समय का अनुमान लगाने की सुविधा जोड़ी गई है. कैमरा एक्सटेंशन की मदद से, ऐप्लिकेशन ऐसे एपीआई का इस्तेमाल कर पाते हैं जो यह अनुमान लगाता है कि फ़ोटो या वीडियो कैप्चर करने में कितना समय लगेगा. अनुमान लगाते समय, मौजूदा माहौल की स्थितियों और कैमरे की स्थिति को ध्यान में रखा जाता है. इसमें मल्टी-फ़्रेम कैप्चर करने के अनुरोधों को प्रोसेस करने में लगने वाला समय भी शामिल होता है. साथ ही, अगर ज़रूरी हो, तो प्रोसेस किए गए बफ़र को एन्कोड करने में लगने वाला अतिरिक्त समय भी शामिल होता है. (I05c3a)
ScreenFlashUiControl
का नाम बदलकरScreenFlash
,ScreenFlashUiControl#applyScreenFlashUi
का नाम बदलकरScreenFlash#apply
, औरScreenFlashUiControl#clearScreenFlashUi
का नाम बदलकरScreenFlash#clear
कर दिया गया है. साथ ही,SCREEN_FLASH_UI_APPLY_TIMEOUT_SECONDS
को सीधे तौर पर दिखाने के बजाय,getScreenFlashUiApplyTimeoutSeconds
तरीका जोड़ा गया है. (Iccdd0)
गड़बड़ियां ठीक की गईं
- मेमोरी लीक होने की समस्या को ठीक किया गया है. इसकी वजह से, एक्सटेंशन चालू होने पर गतिविधियां या फ़्रैगमेंट रिलीज़ नहीं होते थे (I14215)
- ज़ूम रेशियो बढ़ाने पर,
getZoomRatio
के कम वैल्यू दिखाने की समस्या को ठीक किया गया है. (I4aa0d, b/317543616) ImageCapture#ScreenFlash#clear
इवेंट को तुरंत तब शुरू किया जाता है, जबImageCapture
को अनबाउंड किया जाता है या कैमरा बंद किया जाता है. साथ ही, यह उन बग को भी ठीक करता है जहां इन स्थितियों में कैप्चर पूरा न होने की वजह से, इसे कभी शुरू नहीं किया जाता. (If99f9)- लाइफ़साइकल के
takePicture
अनुरोध के पूरा होने से पहले बंद होने पर होने वाली क्रैश की समस्या को ठीक किया गया (Idf017, b/306202751) - कुछ डिवाइसों पर एक्सटेंशन चालू होने पर, कैमरे की झलक काली हो जाती थी. इस समस्या को ठीक कर दिया गया है (I1ffd0)
- Snapdragon 778G SoC का इस्तेमाल करने वाले डिवाइसों पर, वीडियो रिकॉर्डिंग की अवधि से जुड़ी समस्या ठीक की गई है. (If6aa7, b/316057919)
वर्शन 1.4.0-alpha03
13 दिसंबर, 2023
androidx.camera:camera-*:1.4.0-alpha03
रिलीज़ हो गया है. वर्शन 1.4.0-alpha03 में ये कमिट शामिल हैं.
नई सुविधाएं
CameraInfo.mustPlayShutterSound
जोड़ा गया है, ताकि यह जानकारी दी जा सके कि किसी देश या इलाके में लागू पाबंदियों के मुताबिक, शटर की आवाज़ सुनाई देनी चाहिए या नहीं. (Ifda84)- कैमरे के फ़्रेम को दिखाना शुरू करने पर सूचना देने के लिए,
OnImageCapturedCallback.onCaptureStarted
औरOnImageSavedCallback.onCaptureStarted
को जोड़ा गया. हमारा सुझाव है कि इस समय शटर की आवाज़ या शटर ऐनिमेशन चलाया जाए. (Ic49b3) - सामने वाले कैमरे से इमेज कैप्चर करने के लिए, CameraX में स्क्रीन फ़्लैश की सुविधा जोड़ी गई. CameraX, फ़्रेमवर्क-साइड एपीआई को हैंडल करेगा.साथ ही, ज़रूरत के मुताबिक ऐप्लिकेशन के यूज़र इंटरफ़ेस (यूआई) में होने वाले बदलावों के साथ समय को सिंक करेगा. उदाहरण के लिए, ऐप्लिकेशन की स्क्रीन का रंग/चमक बदलने के बाद, एई प्रीकैप्चर ट्रिगर करना. ऐप्लिकेशन को सिर्फ़ अपने यूज़र इंटरफ़ेस (यूआई) को CameraX को दिए गए
ScreenFlashUiControl
इंटरफ़ेस में लागू करना होगा. (I8ae84) - CameraX में, स्क्रीन फ़्लैश की सुविधा को यूज़र इंटरफ़ेस (यूआई) के साथ लागू करने की सुविधा जोड़ी गई. ऐप्लिकेशन,
PreviewView
या हाल ही में जोड़े गएScreenFlashView
सेImageCapture.ScreenFlashUiControl
को लागू करने की बुनियादी सुविधा पा सकेंगे. इससे स्क्रीन फ़्लैश के दौरान फ़ोटो कैप्चर करते समय, एक रंग का ओवरले व्यू दिखेगा और स्क्रीन की चमक ज़्यादा होगी. (I1810e)
एपीआई में हुए बदलाव
- एक्सटेंशन की नई सुविधाओं के साथ काम करता है(पोस्टव्यू और कैप्चर प्रोसेस की प्रोग्रेस): ऐप्लिकेशन के लिए
ImageCapture#getImageCaptureCapabilities()
एपीआई जोड़े गए हैं, ताकि पोस्टव्यू और कैप्चर प्रोसेस की प्रोग्रेस के कॉलबैक की क्षमताओं के बारे में क्वेरी की जा सके. ऐप्लिकेशन,ImageCapture.Builder#setPostviewEnabled()
का इस्तेमाल करके पोस्टव्यू की सुविधा चालू कर सकते हैं.ImageCapture.Builder#setPostviewResolutionSelector()
का इस्तेमाल करके, पोस्टव्यू का साइज़ चुना जा सकता है.takePicture()
को चालू करते समय,onPostviewBitmapAvailable
औरonCaptureProcessProgressed
कोOnImageSavedCallback
याOnImageCapturedCallback
में लागू किया जा सकता है. इससे, अगर सुविधा उपलब्ध है, तो पोस्टव्यू और प्रोसेस की प्रोग्रेस की सूचना मिल सकती है. (I5cd88) - सेंसर से मौजूदा बफ़र तक, कोऑर्डिनेट ट्रांसफ़ॉर्मेशन का हिसाब लगाने के लिए एपीआई. साथ ही, एक फ़्लैग जो यह बताता है कि Surface में कैमरे के ओरिएंटेशन की जानकारी है या नहीं. (I59096)
- एपीआई को
PreviewCapabitlity
में क्वेरी करने के लिए उपलब्ध कराएंUseCase
. (Ie5b6c) VideoCapture
के लिए, ज़्यादा क्वालिटी को सपोर्ट करने वाले एपीआई जोड़े गए.Recorder.Builder#setVideoCapabilitiesSource(int)
का इस्तेमालVIDEO_CAPABILITIES_SOURCE_CODEC_CAPABILITIES
के साथ किया जा सकता है, ताकिRecorder
इंस्टेंस बनाया जा सके. यहVIDEO_CAPABILITIES_SOURCE_CAMCORDER_PROFILE
की तुलना में ज़्यादा क्वालिटी के साथ काम करता है. इसका एक सामान्य उदाहरण यह है कि जब कोई ऐप्लिकेशन, यूएचडी वीडियो रिकॉर्ड करने की कोशिश करता है, लेकिन डिवाइस कीCamcorderProfile
में यूएचडी सेटिंग शामिल नहीं होती है. हालांकि, कोडेक यूएचडी वीडियो रिकॉर्ड कर सकता है. (Iedbe2, b/263961771)CameraController
मेंImageAnalysis
आउटपुट फ़ॉर्मैट गेटर/सेटर जोड़ें. (I9a96c, b/308240643)
गड़बड़ियां ठीक की गईं
- कैमरा
1.3.1
:ProcessCameraProvider#bindToLifecycle()
की परफ़ॉर्मेंस को बेहतर बनाया गया है. मुख्य बदलाव यह है किUseCases
के लिए सबसे सही साइज़ कॉम्बिनेशन की पहचान करने की प्रोसेस को ऑप्टिमाइज़ किया गया है. सबसे अच्छे नतीजे,UseCase
के खास कॉम्बिनेशन और टारगेट डिवाइसों के लिए, आउटपुट के सपोर्ट किए गए साइज़ की संख्या के आधार पर अलग-अलग होते हैं. (I454f2) - एक्सटेंशन चालू होने पर,
VideoCapture
के इस्तेमाल की अनुमति दें. (I91f32) - Samsung A71 और M51 सीरीज़ के डिवाइसों पर, कैप्चर की गई बड़ी JPEG इमेज से जुड़ी समस्या ठीक की गई. कैप्चर की गई JPEG इमेज में, JFIF कंप्रेस किए गए डेटा सेगमेंट में ज़रूरत से ज़्यादा 0's पैडिंग डेटा मौजूद है. इससे कैप्चर की गई इमेज का फ़ाइल साइज़ बहुत ज़्यादा हो जाता है. इमेज फ़ाइल के साइज़ को सामान्य बनाने के लिए, पैडिंग डेटा में मौजूद गैर-ज़रूरी 0 हटा दिए जाएंगे. (I01afc, b/288828159)
- Pixel फ़ोन पर
ImageAnalysis
की सुविधा बंद करें, ताकि Pixel फ़ोन पर मौजूद उस गड़बड़ी से बचा जा सके जिसकी वजह से,ImageAnalysis
के लिए उपलब्ध साइज़ की जानकारी गलती से दिख जाती है. (I7ec31) - परफ़ॉर्मेंस से जुड़ी समस्या को ठीक किया गया है. एक्सटेंशन चालू होने पर, सीपीयू का लोड और बिजली की खपत बढ़ जाती थी. (Ibdccb)
CameraUseInconsistentTimebaseQuirk
में Snapdragon 480 जोड़ा गया. इससे Android 12 पर इस चिपसेट का इस्तेमाल करने वाले डिवाइसों में होने वाली एक समस्या ठीक हो जाती है. इस समस्या में, डिवाइस के निलंबित होने की अवधि के हिसाब से रिकॉर्डिंग में ऑडियो ऑफ़सेट हो जाता है. (I58010)
वर्शन 1.4.0-alpha02
18 अक्टूबर, 2023
androidx.camera:camera-*:1.4.0-alpha02
रिलीज़ हो गया है. वर्शन 1.4.0-alpha02 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- एपीआई का नाम बदलकर
setCameraOpenRetryMaxTimeoutInMillisWhileResuming
करें और आर्ग्युमेंट का नाम बदलें. (I72370) - डिवाइस की क्षमता के बारे में क्वेरी करने और वीडियो/प्रीव्यू को स्थिर करने की सुविधा चालू करने के लिए, एपीआई जोड़े गए हैं. (I87544)
- कैमरा खोलने की कोशिश करने के लिए, ज़्यादा से ज़्यादा टाइम आउट को पसंद के मुताबिक बनाने के लिए एपीआई उपलब्ध कराएं. (I0c642)
ProcessCameraProvider.shutdownAsync
को सार्वजनिक टेस्टिंग एपीआई के तौर पर रिलीज़ किया गया है. इससे, कैमरा उपलब्ध कराने वाली प्रोसेस को टेस्ट सुइट में इस्तेमाल किया जा सकता है. इसके लिए, टेस्ट के बीच में CameraX को अलग-अलग तरीकों से शुरू करना पड़ सकता है. (I9eca7)- वीडियो कैप्चर करने की डाइनैमिक रेंज, फ़्रेम रेट, और मिरर मोड को कॉन्फ़िगर करने के लिए एपीआई जोड़े गए हैं. (Ifb8f7)
OutputSize
को बंद करें और उसकी जगहResolutionSelector
का इस्तेमाल करें.ResolutionSelector
, रिज़ॉल्यूशन चुनने का ज़्यादा बेहतर तरीका है. साथ ही, यह कैमरा-कोर एपीआई के साथ काम करता है. (I93abd, b/286801438)
गड़बड़ियां ठीक की गईं
- Samsung Galaxy S23 Ultra 5G में, पीछे के कैमरे पर
ImageAnalysis
चालू होने पर, Extensions Bokeh या Face-Retouch की सुविधा चालू होने पर, काली झलक दिखने की समस्या को ठीक किया गया है. (I2e8b1) - Moto E5 Play पर, झलक देखने की सुविधा और
VideoCapture
के स्ट्रेच होने से जुड़ी समस्याओं को ठीक किया गया है. (73dce2)
वर्शन 1.4.0-alpha01
20 सितंबर, 2023
androidx.camera:camera-*:1.4.0-alpha01
रिलीज़ हो गया है. वर्शन 1.4.0-alpha01 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- रिकॉर्डिंग के दौरान ऑडियो ऐम्प्लिट्यूड की जानकारी ऐक्सेस करने के लिए, नया एपीआई जोड़ा गया है. (Id4925)
गड़बड़ियां ठीक की गईं
- यह पक्का करें कि एक्सटेंशन को शुरू और बंद करने वाले इवेंट सही क्रम में ट्रिगर हों. इससे एक्सटेंशन के काम करने की स्थिति बेहतर होगी. (Ib3b8e)
- अंदरूनी तौर पर एक ही तरह के कई सरफेस जोड़ने की वजह से, कैप्चर सेशन के कॉन्फ़िगरेशन में गड़बड़ी होने की समस्या को ठीक किया गया है. ऐसा इसलिए हुआ, क्योंकि कैप्चर सेशन के लिए तय किए गए सरफेस के कॉम्बिनेशन की संख्या ज़्यादा हो गई थी. (Id718c)
- Vivo S16 डिवाइस पर, कैप्चर की गई बड़ी JPEG इमेज से जुड़ी समस्या ठीक की गई. कैप्चर की गई JPEG इमेज में, JFIF कंप्रेस किए गए डेटा सेगमेंट में ज़रूरत से ज़्यादा 0's पैडिंग डेटा मौजूद है. इससे कैप्चर की गई इमेज का फ़ाइल साइज़ बड़ा हो जाता है. इमेज फ़ाइल के साइज़ को सामान्य बनाने के लिए, पैडिंग डेटा में मौजूद गैर-ज़रूरी 0 हटा दिए जाएंगे. (I79505, b/299069235)
- हमने उस समस्या को ठीक कर दिया है जिसमें कुछ डिवाइसों पर एक्सटेंशन मोड चालू होने पर,
ImageAnalysis
कोImageCapture
और पूर्वावलोकन के साथ बाइंड नहीं किया जा सकता था. इस फ़िक्स के बाद, ऐप्लिकेशनExtensionsManager#isImageAnalysisSupported()
के ज़रिएImageAnalysis
की उपलब्धता के बारे में क्वेरी करने पर, सही वैल्यू मिलेगी. (I7d538) - JavaDoc को अपडेट करें, ताकि वह व्यवहार से मेल खाए.
#setZoomRatio
,#setLinearZoom
, और#enableTorch
, कैमरा तैयार होने तक इंतज़ार करते हैं. हालांकि, पहले ये तुरंत पूरे हो जाते थे. साथ ही,#takePicture
एपीआई की मदद से ज़्यादा से ज़्यादा फ़ील्ड ऑफ़ व्यू पाने के तरीके के बारे में जानकारी जोड़ी गई है. (I23588)
वर्शन 1.3
वर्शन 1.3.4
12 जून, 2024
androidx.camera:camera-*:1.3.4
रिलीज़ हो गया है. वर्शन 1.3.4 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- ज़ूम रेशियो बढ़ाने पर,
getZoomRatio
के कम वैल्यू दिखाने की समस्या को ठीक किया गया है. (I4aa0d, b/317543616) - अब भी फ़ोटो कैप्चर करने/टैप करके फ़ोकस करने की सुविधा में, बार-बार किए जाने वाले अनुरोध के एफ़पीएस/स्टेबलाइज़ेशन मोड की वैल्यू का इस्तेमाल नहीं किया जा रहा है. इससे कैप्चर सेशन फिर से शुरू हो सकता है. साथ ही, कुछ डिवाइसों में देरी की समस्याएं हो सकती हैं या झलक फ़्रीज़ हो सकती है. (I7dc0b)
setTargetFrameRate
कोFRAME_RATE_RANGE_UNSPECIFIED
के साथ कॉल करने पर, फ़्रेम रेट को कम वैल्यू पर सेट करने की समस्या को ठीक किया गया है. (I78c61)
वर्शन 1.3.3
17 अप्रैल, 2024
androidx.camera:camera-*:1.3.3
रिलीज़ हो गया है. वर्शन 1.3.3 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- ठीक की गई
ImageAnalysis
' ऐनलज़र की डिफ़ॉल्ट टारगेट रिज़ॉल्यूशन सेटिंग से जुड़ी रिज़ॉल्यूशन चुनने की समस्या: टारगेट रिज़ॉल्यूशन को गलत तरीके से 640x480 पर सेट किया गया था. भले ही, ऐप्लिकेशन ने ऐनलज़र की डिफ़ॉल्ट रिज़ॉल्यूशन सेटिंग को अलग तरीके से सेट किया हो. अगर ऐप्लिकेशन को यह समस्या (1.3.0 ~ 1.3.2) आ रही है और वे इस समस्या को ठीक करने वाले नए वर्शन का इस्तेमाल करने के लिए अपग्रेड नहीं कर सकते, तो सीधे तौर परImageAnalysis
UseCase से मेल खाने वालेAspectRatioStrategy
और समस्या को ठीक करने वालेResolutionSelector
को सेट करके, इस समस्या को हल किया जा सकता है. (I81f72, b/330091012)
वर्शन 1.3.2
6 मार्च, 2024
androidx.camera:camera-*:1.3.2
रिलीज़ हो गया है. वर्शन 1.3.2 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- Samsung A24 डिवाइसों पर JPEG मेटाडेटा से जुड़ी समस्या को ठीक किया गया है. CameraX अब इमेज को सही तरीके से सेव करता है. साथ ही,
ImageProxy.toBitmap()
फ़ंक्शन सही बिटमैप ऑब्जेक्ट दिखाता है. (I8d6eb, b/309005680) - समस्याओं की वजह से, Redmi Note 9 Pro डिवाइसों पर 9280x6944 रिज़ॉल्यूशन का विकल्प हटा दिया गया है. (Ia23da)
वर्शन 1.3.1
13 दिसंबर, 2023
androidx.camera:camera-*:1.3.1
रिलीज़ हो गया है. वर्शन 1.3.1 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
ProcessCameraProvider#bindToLifecycle()
परफ़ॉर्मेंस को बेहतर बनाया गया है. मुख्य बदलाव यह है कि UseCases
के लिए सबसे सही साइज़ कॉम्बिनेशन की पहचान करने की प्रोसेस को ऑप्टिमाइज़ किया गया है. सबसे अच्छे नतीजे, UseCase
के खास कॉम्बिनेशन और टारगेट डिवाइसों के लिए, आउटपुट के सपोर्ट किए गए साइज़ की संख्या के आधार पर अलग-अलग होते हैं. (I454f2)
यहां अलग-अलग स्थितियों के लिए, कुछ रेफ़रंस नतीजे दिए गए हैं:
चार
UseCases
:Preview
+ImageCapture
+ImageAnalysis
+VideoCapture
- Google Pixel 7: करीब 430 मि॰से॰ से 60 मि॰से॰
- Samsung Galaxy S23 Ultra: करीब 540 मि॰से॰ से 45 मि॰से॰
- Samsung A53 5G: करीब 115 मि॰से॰ से 70 मि॰से॰
तीन
UseCases
:Preview
+ImageCapture
+ImageAnalysis
- Google Pixel 7: करीब 9 से 7 मि॰से॰
- Samsung Galaxy S23 Ultra: करीब 6 से 5 मि॰से॰
- Samsung A53 5G: करीब 32 मि॰से॰ से 12 मि॰से॰
CameraUseInconsistentTimebaseQuirk
में Snapdragon 480 जोड़ा गया. इससे Android 12 पर इस चिपसेट का इस्तेमाल करने वाले डिवाइसों में होने वाली एक समस्या ठीक हो जाती है. इस समस्या में, डिवाइस के निलंबित होने की अवधि के हिसाब से रिकॉर्डिंग में ऑडियो ऑफ़सेट हो जाता है. (I58010)
वर्शन 1.3.0
18 अक्टूबर, 2023
androidx.camera:camera-*:1.3.0
रिलीज़ हो गया है. वर्शन 1.3.0 में ये कमिट शामिल हैं.
1.2.0 के बाद हुए ज़रूरी बदलाव
- वीडियो से जुड़ी सुविधाएं, जैसे कि 10-बिट एचडीआर, क्रॉप करना, मिरर/नॉन-मिरर, म्यूट/अनम्यूट करना, फ़्रेमरेट सेट करना वगैरह.
- एक साथ दो कैमरे इस्तेमाल करने की सुविधा
- इफ़ेक्ट लाइब्रेरी
- रिज़ॉल्यूशन चुनने के लिए बटन
- अल्ट्रा-वाइड और टेलीस्कोपिक कैमरा चुनने की सुविधा
- वीडियो रिकॉर्डिंग के दौरान कैमरे बदलना (एक्सपेरिमेंट के तौर पर उपलब्ध सुविधा)
वर्शन 1.3.0-rc02
20 सितंबर, 2023
androidx.camera:camera-*:1.3.0-rc02
रिलीज़ हो गया है. वर्शन 1.3.0-rc02 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- यह पक्का करें कि एक्सटेंशन को शुरू और बंद करने वाले इवेंट सही क्रम में ट्रिगर हों. इससे एक्सटेंशन के काम करने की स्थिति बेहतर होगी. इससे एक्सटेंशन मोड या कैमरे बदलते समय, काली झलक दिखने की कुछ समस्याएं ठीक हो गई हैं. (Iddaac)
- हमने उस समस्या को ठीक कर दिया है जिसमें कुछ डिवाइसों पर एक्सटेंशन मोड चालू होने पर,
ImageAnalysis
कोImageCapture
और पूर्वावलोकन के साथ बाइंड नहीं किया जा सकता था. इस फ़िक्स के बाद, ऐप्लिकेशनExtensionsManager#isImageAnalysisSupported()
के ज़रिएImageAnalysis
की उपलब्धता के बारे में क्वेरी करने पर, सही वैल्यू मिलेगी. (I7d538) - Xiaomi Poco X3 NFC पर मिररिंग मोड चालू होने पर, रिकॉर्ड किए गए वीडियो के ऑडियो और वीडियो के सिंक न होने की समस्या को ठीक किया गया. (I20b4c)
वर्शन 1.3.0-rc01
23 अगस्त, 2023
androidx.camera:camera-*:1.3.0-rc01
रिलीज़ हो गया है. वर्शन 1.3.0-rc01 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
PendingRecording.asPersistentRecording
जोड़ा गया है, ताकिVideoCapture
से अटैच किया गया रिकॉर्डर रीबाउंड होने के दौरान, रिकॉर्डिंग जारी रखी जा सके. (I517c6)
गड़बड़ियां ठीक की गईं
VideoCapture
और 'झलक देखें' दोनों के साथ स्ट्रीम शेयर करने पर, क्रैश होने की समस्या को ठीक किया गया है. इसके अलावा, स्ट्रीम शेयर करने की सुविधा चालू होने पर, LEGACY डिवाइसों पर काली स्क्रीन दिखने की समस्या को भी ठीक किया गया है.- Samsung S7 (SM-G930T, SM-G930V) सीरीज़ के डिवाइसों पर, कैप्चर की गई बड़ी JPEG इमेज से जुड़ी समस्या ठीक की गई. कैप्चर की गई JPEG इमेज में, JFIF कंप्रेस किए गए डेटा सेगमेंट में ज़रूरत से ज़्यादा 0's पैडिंग डेटा मौजूद है. इससे कैप्चर की गई इमेज का फ़ाइल साइज़ बड़ा हो जाता है. इमेज फ़ाइल के साइज़ को सामान्य बनाने के लिए, पैडिंग डेटा में मौजूद गैर-ज़रूरी 0 हटा दिए जाएंगे. (I407b0, b/288828159)
- Samsung S22 (SM-S901B, SM-S901B/DS) और S22+ (SM-S906B) सीरीज़ के डिवाइसों पर, कैप्चर की गई बड़ी JPEG इमेज से जुड़ी समस्या को ठीक किया गया है. कैप्चर की गई JPEG इमेज में, JFIF कंप्रेस किए गए डेटा सेगमेंट में ज़रूरत से ज़्यादा 0's पैडिंग डेटा मौजूद है. इसकी वजह से, कैप्चर की गई इमेज का फ़ाइल साइज़ ज़्यादा होता है. S22 SM-S901B/DS डिवाइस पर, यह करीब 13 एमबी होता है. इमेज फ़ाइल के साइज़ को सामान्य बनाने के लिए, पैडिंग डेटा में मौजूद गैर-ज़रूरी 0 हटा दिए जाएंगे. (I73be9, b/288828159)
- Samsung A5, A52, A70, और A72 सीरीज़ के डिवाइसों पर, कैप्चर की गई बड़ी JPEG इमेज से जुड़ी समस्या ठीक की गई. कैप्चर की गई JPEG इमेज में, JFIF कंप्रेस किए गए डेटा सेगमेंट में ज़रूरत से ज़्यादा 0's पैडिंग डेटा मौजूद है. इससे कैप्चर की गई इमेज का फ़ाइल साइज़ बहुत ज़्यादा हो जाता है. उदाहरण के लिए, करीब 32 एमबी या 96 एमबी. फ़ोटो के साइज़ को सामान्य रखने के लिए, फ़ोटो में मौजूद फ़ालतू ज़ीरो पैडिंग डेटा को हटा दिया जाएगा. (I97c4d, b/288828159)
- एक्सटेंशन चालू होने पर फ़ोटो लेते समय, नेटिव क्रैश की समस्या को ठीक किया गया (I698f5)
वर्शन 1.3.0-beta02
26 जुलाई, 2023
androidx.camera:camera-*:1.3.0-beta02
रिलीज़ हो गया है. वर्शन 1.3.0-beta02 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- कम रोशनी में फ़ोटो कैप्चर करने की क्वालिटी को बेहतर बनाने के लिए, Pixel 4 और 5 के वैरिएंट में टॉर्च को फ़्लैश के तौर पर इस्तेमाल करें (I56ff5, b/280221967)
- Samsung A5 (2017) सीरीज़ के डिवाइसों पर, कैप्चर की गई बड़ी JPEG इमेज से जुड़ी समस्या ठीक की गई. कैप्चर की गई JPEG इमेज में, JFIF कंप्रेस किए गए डेटा सेगमेंट में ज़रूरत से ज़्यादा 0's पैडिंग डेटा मौजूद है. इससे कैप्चर की गई इमेज का फ़ाइल साइज़ करीब 32 एमबी हो जाता है. फ़ोटो के साइज़ को सामान्य रखने के लिए, फ़ोटो में मौजूद फ़ालतू ज़ीरो पैडिंग डेटा को हटा दिया जाएगा. (I29837, b/288828159)
CaptureFailedRetryQuirk
में बताए गए समस्या वाले डिवाइसों में, कैप्चर करने में गड़बड़ी होने पर फिर से कोशिश करने की सुविधा ठीक से काम नहीं कर रही थी. इस समस्या को ठीक कर दिया गया है. (I7b589)
वर्शन 1.3.0-beta01
21 जून, 2023
androidx.camera:camera-*:1.3.0-beta01
रिलीज़ हो गया है. वर्शन 1.3.0-beta01 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
ResolutionSelector.Builder#setHighResolutionEnabledFlag(int)
फ़ंक्शन का नाम बदलकरsetAllowedResolutionMode
कर दिया गया है. साथ ही,ResolutionSelector#HIGH_RESOLUTION_FLAG_OFF
/ON
कॉन्स्टेंट का नाम बदलकरPREFER_CAPTURE_RATE_OVER_HIGHER_RESOLUTION
/PREFER_HIGHER_RESOLUTION_OVER_CAPTURE_RATE
कर दिया गया है. (If84e8)- बंद किए गए एपीआई
ImageAnalysis.setTargetRotationDegrees(int)
,ImageCapture.setTargetRotationDegrees(int)
, औरVideoCapture.setTargetRotationDegrees(int)
को हटाया गया. (Id8e77) DynamicRange
क्लास, इमेज की डाइनैमिक रेंज को दिखाता है. इसका इस्तेमाल,VideoCapture
सेVideoCapture.Builder#setDynamicRange()
तक के आउटपुट के तौर पर हाई डाइनैमिक रेंज वाले फ़ॉर्मैट चुनने के लिए किया जा सकता है. (Ib0377)ExtensionsManager
में एकisImageAnalysisSupported
एपीआई जोड़ा गया है. इसकी मदद से ऐप्लिकेशन यह तय कर सकते हैं किImageAnalysis
इस्तेमाल के उदाहरण को, Preview औरImageCapture
के साथ बाइंड किया जा सकता है या नहीं. ऐसा तब किया जा सकता है, जब एक्सटेंशन चालू हों. (I1bc63)Recorder
से मिले नएVideoCapabilities
क्लास का इस्तेमाल, डिवाइस पर वीडियो रिकॉर्डिंग के लिए, सपोर्ट की जाने वाली डाइनैमिक रेंज और क्वालिटी के बारे में क्वेरी करने के लिए किया जा सकता है.QualitySelector
केgetSupportedQualities()
औरisQualitySupported()
तरीकों का इस्तेमाल बंद किया जा रहा है. इसके बजाय, कृपयाVideoCapabilities
केgetSupportedQualities()
औरisQualitySupported()
तरीकों का इस्तेमाल करें. (I04014)CameraController#setVideoCaptureTargetQuality()
का नाम बदलकरsetVideoCaptureQualitySelector
कर दिया गया है. यहQualitySelector
आर्ग्युमेंट लेता है, जिससे वीडियो क्वालिटी को ज़्यादा आसानी से सेट अप किया जा सकता है. इसके मुताबिक,CameraController#getVideoCaptureTargetQuality()
कोgetVideoCaptureQualitySelector
में बदल दिया जाता है. (I520ed)- वीडियो सुविधाओं के लिए एक्सपेरिमेंटल एनोटेशन हटा दिया गया है. वीडियो की सुविधाएं अब स्थिर हो गई हैं. (I1a113)
गड़बड़ियां ठीक की गईं
- कम रोशनी में, Samsung SM-A320 मॉडल पर टॉर्च का इस्तेमाल फ़्लैश के तौर पर करें. इससे फ़ोटो खींचने की स्पीड और उसकी क्वालिटी बेहतर होती है. (I6a022, b/286190938)
ImageProxy.toBitmap()
के लिए,ImageFormat.JPEG
फ़ॉर्मैट इस्तेमाल करने की सुविधा जोड़ी गई. अगर JPEG बाइट ऐरे को डिकोड नहीं किया जा सकता, तोUnsupportedOperationException
दिखेगा. (I81958, b/282057603)
वर्शन 1.3.0-alpha07
24 मई, 2023
androidx.camera:camera-*:1.3.0-alpha07
रिलीज़ हो गया है. वर्शन 1.3.0-alpha07 में ये कमिट शामिल हैं.
नई सुविधाएं
- नए
VideoCapture.Builder# setTargetFrameRate(Range)
एपीआई की मदद से, वीडियो रिकॉर्डिंग को डिवाइस के डिफ़ॉल्ट फ़्रेम रेट के अलावा, अन्य फ़्रेम रेट पर भी कैप्चर किया जा सकता है. रिकॉर्डिंग के लिए उपलब्ध फ़्रेम रेट के बारे में, नएCameraInfo#getSupportedFrameRates()
एपीआई के ज़रिए क्वेरी की जा सकती है.
एपीआई में हुए बदलाव
ResolutionSelector#HIGH_RESOLUTION_FLAG_OFF
/ON
कॉन्स्टेंट का नाम बदलकरALLOWED_RESOLUTIONS_NORMAL
/SLOW
कर दिया गया है. साथ ही, बिल्डरsetHighResolutionEnabledFlag
फ़ंक्शन का नाम बदलकरsetAllowedResolutionMode
कर दिया गया है. (Iae817)CameraInfo#getSupportedFrameRateRanges()
अबList
के बजायSet
दिखाता है, ताकि यह बेहतर तरीके से पता चल सके कि रेंज क्रम में नहीं हैं. (I02f43)CameraEffect
में गड़बड़ी सुनने वाला एक लिसनर जोड़ें, ताकि ऐसी गड़बड़ियों को ठीक किया जा सके जिन्हें ठीक नहीं किया जा सकता (Ice471)- बेहतर तरीके से टेस्ट करने के लिए,
ResolutionInfo
में पब्लिक कंस्ट्रक्टर जोड़ें (If6d1c) setTargetRotationDegrees
के इस्तेमाल को बदलने के लिए, एक एपीआईUseCase.snapToSurfaceRotation(int)
उपलब्ध कराया गया है. साथ ही, एपीआईImageAnalysis.setTargetRotationDegrees(int)
,ImageCapture.setTargetRotationDegrees(int)
, औरVideoCapture.setTargetRotationDegrees(int)
को बंद कर दिया गया है. (Ia9010)- एपीआई
Preview#getTargetFrameRate
औरPreview.Builder#setTargetFrameRate
को जोड़ा गया है, ताकि झलक देखने के लिए टारगेट फ़्रेम रेट सेट किया जा सके और उसे वापस पाया जा सके (If4f22) VideoRecordEvent.Finalize
अबERROR_RECORDING_GARBAGE_COLLECTED
गड़बड़ी कोड के साथ पूरा होगा. ऐसा तब होगा, जब कचरा इकट्ठा करने की वजह सेRecording
ऑब्जेक्ट बंद हो जाएगा. (Iba974)
गड़बड़ियां ठीक की गईं
NullPointerException
में कैश मेमोरी में सेव किए गए आउटपुट साइज़ के शून्य होने पर,NullPointerException
को ठीक किया गया.StreamConfigurationMapCompat
(Idf124, b/282025204)- उस समस्या को ठीक किया गया है जिसकी वजह से एक्सटेंशन में
Preview.setSurfaceProvider(null)
, झलक को नहीं रोकता है (Ia903e) - उस समस्या को ठीक किया गया है जिसमें
VideoCapture
के बाइंड होने पर, कैमरा खोलने के दौरानConcurrentModificationException
दिखता था. (Ic8ac4)
वर्शन 1.3.0-alpha06
19 अप्रैल, 2023
androidx.camera:camera-*:1.3.0-alpha06
रिलीज़ हो गया है. वर्शन 1.3.0-alpha06 में ये कमिट शामिल हैं.
नई सुविधाएं
- एक साथ कई कैमरे इस्तेमाल करने की सुविधा, Android 11 में जोड़ी गई एक नई सुविधा है. इससे कैमरे वाले डिवाइसों से एक साथ स्ट्रीम किया जा सकता है. उदाहरण के लिए, इससे किसी डिवाइस के आगे और पीछे वाले, दोनों कैमरों को एक साथ इस्तेमाल किया जा सकता है. फ़िलहाल, CameraX सिर्फ़ दो कैमरों के साथ काम करता है. इसका मतलब है कि एक साथ दो कैमरे इस्तेमाल किए जा सकते हैं. साथ ही, हर कैमरे के लिए ज़्यादा से ज़्यादा दो {@link UseCase} इस्तेमाल किए जा सकते हैं. ज़्यादा से ज़्यादा रिज़ॉल्यूशन 720 पिक्सल या 1440 पिक्सल होता है. ज़्यादा जानकारी के लिए, यहां दिया गया लिंक देखें. CameraManager#getConcurrentCameraIds() देखें
- पेश है नया
ResolutionSelector
API. इसमें ये सुविधाएं शामिल हैं:- ऐप्लिकेशन, आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) और रिज़ॉल्यूशन की रणनीतियां तय कर सकते हैं, ताकि वे अपनी ज़रूरतों के हिसाब से सबसे सही रिज़ॉल्यूशन चुन सकें.
- सभी साइज़ और आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) पैरामीटर, कैमरा डिवाइस सेंसर के कोऑर्डिनेट में दिखाए जाते हैं.
- ऐप्लिकेशन, कस्टम रिज़ॉल्यूशन फ़िल्टर लागू कर सकते हैं, ताकि वे काम करने वाले साइज़ को अपनी पसंद के क्रम में व्यवस्थित कर सकें.
- ऐप्लिकेशन, ज़्यादा रिज़ॉल्यूशन वाली इमेज पाने के लिए, हाई रिज़ॉल्यूशन कैप्चर करने की सुविधा भी चालू कर सकते हैं. हालांकि, कृपया ध्यान दें कि ज़्यादा रिज़ॉल्यूशन का इस्तेमाल करने से, इमेज कैप्चर होने में ज़्यादा समय लग सकता है.
VideoCapture
मिररिंग एपीआई जोड़े गए.VideoCapture
से रिकॉर्ड किए गए वीडियो, डिफ़ॉल्ट रूप से मिरर नहीं किए जाते. हालांकि, सामने वाले कैमरे पर कैमरे की झलक डिफ़ॉल्ट रूप से मिरर की जाती है.VideoCapture
मिररिंग एपीआई की मदद से, सामने वाले कैमरे का इस्तेमाल करते समय, कैमरे की झलक को अलाइन किया जा सकता है.MirrorMode
,OFF
,ON
, औरON_FRONT_ONLY
के तीन विकल्प हैं. कैमरे की झलक के साथ अलाइन करने के लिए,ON_FRONT_ONLY
का इस्तेमाल करने का सुझाव दिया जाता है. इसका मतलब है कि पीछे वाले कैमरे के लिए मिररिंग की सुविधा चालू नहीं है, लेकिन सामने वाले कैमरे के लिए यह सुविधा चालू है.
एपीआई में हुए बदलाव
- नया
ResolutionSelector
एपीआई उपलब्ध कराया गया. ऐप्लिकेशन, फ़ॉलबैक नियमों या कस्टम रिज़ॉल्यूशन फ़िल्टर के साथ, पहलू के अनुपात और रिज़ॉल्यूशन की रणनीतियां तय कर सकते हैं, ताकि उन्हें मनमुताबिक नतीजे मिल सकें. ऐप्लिकेशन, ज़्यादा रिज़ॉल्यूशन में कैप्चर करने की सुविधा चालू करने के लिए फ़्लैग तय कर सकते हैं. इससे CameraX को फ़ोटो या वीडियो लेते समय, ज़्यादा रिज़ॉल्यूशन चुनने की अनुमति मिल जाएगी. हालांकि, कृपया ध्यान दें कि ज़्यादा रिज़ॉल्यूशन का इस्तेमाल करने से, इमेज कैप्चर होने में ज़्यादा समय लग सकता है. (Ibed95) - AE एल्गोरिदम के साथ काम करने वाली एफपीएस रेंज के बारे में अब
CameraInfo#getSupportedFrameRateRanges()
के ज़रिए क्वेरी की जा सकती है. (Iaa67f) - फ़्रेम रेट के सभी तरीकों के नामों को 'FrameRate' में बदल दिया गया है.
VideoCapture#getTargetFrameRate()
(I83304) में javadoc से जुड़ी गड़बड़ी ठीक करें - लेगसी
setTargetAspectRatio
औरsetTargetResolution
एपीआई को बंद कर दिया गया है. इसके बजाय, कृपया नएResolutionSelector
एपीआई का इस्तेमाल करें. (I542c3) - एक साथ दो कैमरे इस्तेमाल करने के लिए, सार्वजनिक एपीआई जोड़े गए हैं. इनमें ये शामिल हैं:
List<List<CameraInfo>> getAvailableConcurrentCameraInfos()
ConcurrentCamera bindToLifecycle(@NonNull ConcurrentCameraConfig concurrentCameraConfig)
boolean isConcurrentCameraModeOn()
औरConcurrentCameraConfig
,SingleCameraConfig
औरConcurrentCamera
(Iab1c1)
- Make
ImageProcessor.Response#getOutputImage
NonNull (Ib9c60) VideoCapture
मिररिंग एपीआई जोड़े गए. इनमेंVideoCapture.Builder.setMirrorMode(int)
औरVideoCapture.getMirrorMode()
शामिल हैं. ये एपीआई उन ऐप्लिकेशन के लिए काम के हैं जिनमें वीडियो रिकॉर्डिंग को कैमरे की सामान्य झलक के साथ अलाइन करना होता है. जैसे, पीछे वाले कैमरे की झलक मिरर नहीं की जाती, लेकिन सामने वाले कैमरे की झलक मिरर की जाती है. (I713b6, b/194634656)VideoCapture
मेंsetTargetFrameRate()
API औरgetTargetFramerate()
API जोड़ें (I109d4)VideoCapture.Builder
SurfaceOutput
को Closable इंटरफ़ेस लागू करने की अनुमति दें और SurfaceOutput.Event
के सार्वजनिक कंस्ट्रक्टर को छिपाएं. (I60ea8)- प्रोसेस की जा रही रिकॉर्डिंग को डाइनैमिक तरीके से म्यूट या अनम्यूट करने के लिए,
Recording.mute
जोड़ा गया. अगर प्रोसेस की जा रही रिकॉर्डिंग को मैन्युअल तरीके से म्यूट किया जाता है, तोRecordingStats
मेंAudioStats.AUDIO_STATE_MUTED
दिखेगा. (Ie17fc) #setEffects()
पैरामीटर को गैर-शून्य बनाया गया. इफ़ेक्ट हटाने के लिए,#clearEffects()
एपीआई जोड़ा गया. इफ़ेक्ट हटाने के लिए, ऐप्लिकेशन को#clearEffects()
को कॉल करना चाहिए. (I4b4d9)- कॉपी कंस्ट्रक्टर (I621a7) के लिए बिल्डर लेने के लिए,
ViewfinderSurfaceRequest.Builder
के लिए दूसरा कंस्ट्रक्टर जोड़ें
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक किया गया है जिसमें कैमरा बंद करते समय, Extensions API का इस्तेमाल करने वाले ऐप्लिकेशन क्रैश हो सकते थे (Ib27e5)
- उस समस्या को ठीक किया गया है जिसकी वजह से, कुछ डिवाइसों पर सामने वाले कैमरे के साथ
VideoCapture
काम नहीं कर पा रहा था. उदाहरण के लिए, Samsung Galaxy S23 और Xiaomi 2107113SG पर. (Ibec7e, b/270656244) - उस समस्या को ठीक किया गया है जिसमें Android 10 या इसके बाद के वर्शन में, बाहरी स्टोरेज के सार्वजनिक फ़ोल्डर में मौजूद फ़ाइल का इस्तेमाल करके फ़ोटो लेने पर हमेशा गड़बड़ी होती थी. कृपया ध्यान दें कि Android 10 में, बाहरी स्टोरेज के सार्वजनिक फ़ोल्डर में मौजूद फ़ाइल का इस्तेमाल करके फ़ोटो लेने के लिए, ऐप्लिकेशन टैग में
requestLegacyExternalStorage
को सही के तौर पर सेट करना भी ज़रूरी है. (I11b2c) DefaultSurfaceProcessor
मेंRejectedExecutionException
के क्रैश होने की समस्या ठीक की गई.VideoCapture
के बाइंड होने और गतिविधि के रुकने पर, क्रैश हो सकता है. (Idb46a, b/273713906)
वर्शन 1.3.0-alpha05
22 मार्च, 2023
androidx.camera:camera-*:1.3.0-alpha05
रिलीज़ हो गया है. वर्शन 1.3.0-alpha05 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
VideoCapture
रोटेशन एपीआई जोड़े गए हैं. इनमेंVideoCapture.Builder.setTargetRotation(int)
,VideoCapture.setTargetRotation(int)
,VideoCapture.setTargetRotationDegrees(int)
, औरVideoCapture.getTargetRotation()
शामिल हैं. ये एपीआई, डिवाइस के ओरिएंटेशन को लॉक करने वाले ऐप्लिकेशन के लिए काम के होते हैं.ImageCapture.setTargetRotationDegrees(int)
औरImageAnalysis.setTargetRotationDegrees(int)
को भी जोड़ा गया है. (Id3ffe, b/205242781)- इफ़ेक्ट टारगेट के तौर पर
VIDEO_CAPTURE
औरPREVIEW|VIDEO_CAPTURE
को अनुमति दें.VIDEO_CAPTURE
को टारगेट करने वाले इफ़ेक्ट,VideoCapture
UseCase पर लागू होंगे.PREVIEW|VIDEO_CAPTURE
को टारगेट करने वाले इफ़ेक्ट, Preview औरVideoCapture
स्ट्रीम में कॉपी करने से पहले, शेयर की गई स्ट्रीम पर लागू होंगे. (Iee6f3)
गड़बड़ियां ठीक की गईं
- कैमरा
1.2.2
: इस समस्या को ठीक किया गया है. इसमें कुछ डिवाइसों, जैसे कि Pixel (I90aa2) पर proguard चालू होने पर, CameraX Extensions ठीक से काम नहीं करते थे PreviewView
गड़बड़ी को ठीक किया गया है. अगर ऐप्लिकेशन स्क्रीन ओरिएंटेशन को खुद मैनेज करता है, तो घुमाने पर झलक खराब हो सकती है. ऐसा सिर्फ़ कुछ डिवाइसों पर होता है. यह समस्या Pixel 4a, Pixel 5, और Pixel 6a पर भी दिख सकती है. (I14340, b/223488673)
वर्शन 1.3.0-alpha04
22 फ़रवरी, 2023
androidx.camera:camera-*:1.3.0-alpha04
रिलीज़ हो गया है. वर्शन 1.3.0-alpha04 में ये कमिट शामिल हैं.
नई सुविधाएं
यह एक नई सुविधा है. इसकी मदद से, एक स्ट्रीम को कई UseCases के साथ शेयर करके, Surface के उन कॉम्बिनेशन को सपोर्ट किया जा सकता है जिन्हें पहले सपोर्ट नहीं किया जाता था.
- पहले, कैमरा हार्डवेयर लेवल FULL और उससे नीचे के लेवल पर “Preview, VideoCapture, ImageAnalysis” या हार्डवेयर लेवल LEGACY पर “Preview, VideoCapture, ImageCapture” को बाइंड करने पर, CameraX
IllegalArgumentException
दिखाता था. - नई सुविधा के तहत, बाइंडिंग बिना किसी अपवाद के काम करेंगी. इसके बजाय, CameraX, OpenGL का इस्तेमाल करके शेयर की गई स्ट्रीम को Preview और VideoCapture, दोनों में कॉपी करता है.
- बफ़र कॉपी की लागत के तौर पर, ऐप्लिकेशन में लेटेन्सी और बिजली की खपत बढ़ सकती है.
एपीआई में हुए बदलाव
ImageProxy
कोBitmap
में बदलने के लिए एपीआई जोड़ें.ImageProxy
के लिए,ImageFormat.YUV_420_888
औरPixelFormat.RGBA_8888
फ़ॉर्मैट का इस्तेमाल किया जा सकता है. अगर फ़ॉर्मैट अमान्य है, तोIllegalArgumentException
दिखेगा. (Ic7110)- Kotlin में सस्पेंडिंग फ़ंक्शन का इस्तेमाल करके, व्यूफ़ाइंडर को कॉन्फ़िगर करने की सुविधा जोड़ने के लिए,
CoroutineCameraViewfinder
जोड़ें. (I657bc) ViewfinderSurfaceRequest
के लिए नया पब्लिक कंस्ट्रक्टर जोड़ें. इससे उपयोगकर्ता को तब फ़ायदा मिलता है, जब वहCameraCharacteristics
नहीं दे पाता. (Ie6549)
गड़बड़ियां ठीक की गईं
- एक्सटेंशन के क्रैश होने की समस्या को ठीक किया गया है. यह समस्या, कुछ Samsung डिवाइसों पर ऐप्लिकेशन को बहुत तेज़ी से रोकने/फिर से शुरू करने पर होती थी (Iaca26)
वर्शन 1.3.0-alpha03
25 जनवरी, 2023
androidx.camera:camera-*:1.3.0-alpha03
रिलीज़ हो गया है. वर्शन 1.3.0-alpha03 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- डिफ़ॉल्ट कैमरे के हिसाब से, व्यू के ऐंगल की जानकारी देने के लिए
CameraInfo.getIntrinsicZoomRatio
जोड़ा गया. (Ib300c) - लेंस की दिशा की जानकारी देने के लिए,
CameraInfo.getLensFacing
जोड़ा गया. बाहरी कैमरे चुनने के लिए,CameraSelector#LENS_FACING_EXTERNAL
को एक्सपेरिमेंट के तौर पर शुरू की गई सुविधा के तौर पर जोड़ा गया है. (Icaf3e) #setEffect()
में#setEffect()
जोड़ें. इससे कैमरे के आउटपुट में इफ़ेक्ट जोड़े जा सकते हैं.CameraController
(I1d21f)SurfaceRequest
मेंinvalidate()
कार्ड जोड़ें. सरफ़ेस की सेवा देने वाली कंपनी यह सूचना दे सकती है कि पहले दिया गया सरफ़ेस अब मान्य नहीं है. (Idc649)ImageProcessor
API जोड़ें. इस इंटरफ़ेस का इस्तेमाल,ImageCapture
पाइपलाइन में पोस्ट-प्रोसेसिंग इफ़ेक्ट डालने के लिए किया जाता है. (I575c6)- एपीआई
Recorder.Builder.setAspectRatio()
जोड़ा गया है. इसेQualitySelector
के साथ मिलाकर, ज़्यादा वीडियो रिज़ॉल्यूशन इस्तेमाल किए जा सकते हैं. (I8a082) - Target Video Encoding
BitRate
सेट करने के लिएRecorder.Builder#setTargetVideoEncodingBitRate
जोड़ा गया है. साथ ही, Target Video Encoding BitRate पाने के लिएRecorder#getTargetVideoEncodingBitRate
जोड़ा गया है. (I5984d)
गड़बड़ियां ठीक की गईं
- फ़्लैश यूनिट न होने और फ़्लैश मोड चालू होने पर,
ImageCapture
ठीक से काम नहीं करता था. इस समस्या को ठीक कर दिया गया है. (I9e8b4, b/263391112) - कुछ Samsung Android 12 डिवाइसों पर Exif की जगह की जानकारी का डेटा लिखते समय, JPEG इमेज के खराब होने की समस्या ठीक की गई. (Ib7086, b/263747161, b/263289024)
- कैमरा शुरू होने से पहले टॉर्च/ज़ूम सेट करने पर, जैसे कि
CameraController#enableTorch
को कॉल करने पर, कार्रवाई को कैश मेमोरी में सेव कर लिया जाता है. इसके बाद, कैमरा शुरू होने पर इसे सबमिट कर दिया जाता है. (I11e92, b/264157663)
वर्शन 1.3.0-alpha02
7 दिसंबर, 2022
androidx.camera:camera-*:1.3.0-alpha02
रिलीज़ हो गया है. वर्शन 1.3.0-alpha02 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- झलक के आउटपुट पर प्रोसेस होने के बाद का इफ़ेक्ट लागू करने के लिए, एक नया एपीआई जोड़ा गया है. (Ic17d5)
OutputOptions.getDurationLimit
का नाम बदलकरOutputOptions.getDurationLimitMillis
औरOutputOptions.setDurationLimit
का नाम बदलकरOutputOptions.setDurationLimitMillis
किया गया. (I91f0c)- वीडियो रिकॉर्ड करते समय, ऑडियो से जुड़ी सेटिंग को मैनेज करने के लिए
AudioConfig
क्लास जोड़ें.@RequiresPermission
एनोटेशन कोstartRecording
फ़ंक्शन सेAudioConfig
में ले जाया गया है, ताकि उन मामलों में अनुमति के गैर-ज़रूरी अनुरोधों से बचा जा सके जहां ऑडियो की ज़रूरत नहीं है. (I28755) - नए वीडियो कैप्चर एपीआई को लागू करने के बाद, उन मेटाडेटा,
OnVideoSavedCallback
,OutputFileOptions
, औरOutputFileResults
क्लास को हटाएं जिनका अब इस्तेमाल नहीं किया जाता. (I38cd8) - वीडियो कैप्चर करने वाले नए एपीआई को लागू करें.
getVideoCaptureTargetSize
औरsetVideoCaptureTargetSize
तरीकों की जगह,getVideoCaptureTargetQuality
औरsetVideoCaptureTargetQuality
तरीकों का इस्तेमाल किया जाता है. ऐसा इसलिए, क्योंकिsetTargetResolution
अब काम नहीं करता. (I2a1d5)
गड़बड़ियां ठीक की गईं
- बंद किए गए
core.VideoCapture
एपीआई को हटाएं. (I531e0) - स्टोरेज की अनुमति के बिना फ़ोटो लेने पर,
onError
कॉलबैक के काम न करने की समस्या को ठीक किया गया है.(I936db, b/244807669) - कैमरा एक्सटेंशन की क्वालिटी और विश्वसनीयता को बेहतर बनाया गया है. Camera Extensions v1.1.0 और इससे पुराने वर्शन का इस्तेमाल करने वाले Motorola डिवाइसों पर, कैमरा एक्सटेंशन बंद कर दिए गए हैं. ऐसा इसलिए किया गया है, क्योंकि इनमें बोके इफ़ेक्ट की सुविधा काम नहीं करती है. साथ ही, इमेज कैप्चर करने और प्रीव्यू को फिर से शुरू करने से जुड़ी समस्याएं आ रही हैं. (Id3ce3)
- लेगसी डिवाइसों पर,
ViewPort
के ज़रिए वीडियो क्रॉप करने की सुविधा चालू होने पर, नेटिव क्रैश की समस्या ठीक की गई. (I16b8a, b/251357665)
वर्शन 1.3.0-alpha01
9 नवंबर, 2022
androidx.camera:camera-*:1.3.0-alpha01
रिलीज़ हो गया है. वर्शन 1.3.0-alpha01 में ये कमिट शामिल हैं.
नई सुविधाएं
Camera-viewfinder
को आधिकारिक तौर पर पब्लिश कर दिया गया है.Camera-viewfinder
एक बुनियादी व्यूफ़ाइंडर विजेट उपलब्ध कराता है. यह Camera2 के लिए कैमरे का फ़ीड दिखा सकता है. उदाहरण के लिए, कृपया सैंपल कोड देखें.
एपीआई में हुए बदलाव
- वीडियो की अवधि की सीमा सेट करने की अनुमति देने के लिए,
OutputOptions.setDurationLimit
जोड़ा गया. तय की गई अवधि की सीमा से ज़्यादा होने पर, रिकॉर्डिंग अपने-आप पूरी हो जाएगी. (I902a0) - वीडियो रिकॉर्डिंग के ऑडियो में गड़बड़ी होने की स्थिति
AudioStats.AUDIO_STATE_SOURCE_ERROR
को जोड़ा गया. ऑडियो सोर्स का सेटअप पूरा न होने या कोई गड़बड़ी होने पर भेजा जाता है. (I37410)
गड़बड़ियां ठीक की गईं
- कुछ गड़बड़ी वाले डिवाइसों को, कैप्चर करने में होने वाली समस्याओं के दौरान एक बार फिर से कैप्चर करने की अनुमति देने के लिए, क्वर्क जोड़ें. (Id4795)
ViewPager2
परPreviewView
SurfaceView
लागू करने पर, काली स्क्रीन दिखने की समस्या ठीक की गई. समस्या ठीक करने के लिए, अगर अनुरोध किए गए रिज़ॉल्यूशन में बदलाव नहीं किया जाता है, तोPreviewView
अपनेSurfaceView
का फिर से इस्तेमाल करेगा. (Ib3f27)ViewPort
याCameraController
एपीआई का इस्तेमाल करने पर, वीडियो को काटने की सुविधा (WYSIWYG सुविधा) उपलब्ध होगी. (Ifbba8, b/201085351)- Huawei P40 lite पर, फ़्रंट कैमरे से कैप्चर किया गया वीडियो रिकॉर्ड नहीं हो पा रहा था. इस समस्या को ठीक कर दिया गया है. (I87c57, b/250807400)
वर्शन 1.2
वर्शन 1.2.3
24 मई, 2023
androidx.camera:camera-*:1.2.3
रिलीज़ हो गया है. वर्शन 1.2.3 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक किया गया है जिसकी वजह से, कुछ डिवाइसों पर सामने वाले कैमरे के साथ
VideoCapture
काम नहीं कर पा रहा था. उदाहरण के लिए, Samsung Galaxy S23 और Xiaomi 2107113SG पर. (Ibec7e, b/270656244)
वर्शन 1.2.2
22 मार्च, 2023
androidx.camera:camera-*:1.2.2
रिलीज़ हो गया है. वर्शन 1.2.2 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक किया गया है जिसमें कुछ डिवाइसों, जैसे कि Pixel (I90aa2) पर proguard चालू होने पर CameraX Extensions ठीक से काम नहीं करते थे
वर्शन 1.2.1
25 जनवरी, 2023
androidx.camera:camera-*:1.2.1
रिलीज़ हो गया है. वर्शन 1.2.1 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- Samsung के कुछ Android 12 डिवाइसों पर, Exif फ़ॉर्मैट में जगह की जानकारी सेव करते समय JPEG इमेज खराब होने की समस्या ठीक की गई है. (b/263289024)
वर्शन 1.2.0
7 दिसंबर, 2022
androidx.camera:camera-*:1.2.0
रिलीज़ हो गया है. वर्शन 1.2.0 में ये कमिट शामिल हैं.
1.1.0 के बाद हुए अहम बदलाव
- नई लाइब्रेरी camera-mlkit-vision. CameraX को MLKit की कई सुविधाओं के साथ आसानी से इंटिग्रेट करें. जैसे, बारकोड स्कैनिंग, चेहरे की पहचान, टेक्स्ट की पहचान वगैरह.
MLKitAnalyzer
को नए एपीआई के तौर पर जोड़ा गया है. - एक्सपेरिमेंट के तौर पर उपलब्ध नया Zero-Shutter Lag API. यह कैप्चर पाइपलाइन को ऑप्टिमाइज़ करता है, ताकि इमेज की क्वालिटी अच्छी बनी रहे और लेटेंसी कम हो. कैप्चर मोड को
CAPTURE_MODE_ZERO_SHUTTER_LAG
पर सेट करने पर, शटर बटन दबाने और फ़ोटो लिए जाने के बीच का समय कम हो जाता है. ऐसा अन्य कैप्चर मोड की तुलना में होता है. जिन डिवाइसों परZERO_SHUTTER_LAG
काम नहीं करता उन परCAPTURE_MODE_MINIMIZE_LATENCY
का इस्तेमाल किया जाएगा. android.camera.core.VideoCapture
का इस्तेमाल बंद कर दिया गया है.setStreamUseCase()
को सार्वजनिकCamera2Interop
एपीआई के तौर पर जोड़ा गया.setOutputImageRotationEnabled
के लिए, एपीआई लेवल से जुड़ी ज़रूरी शर्तें जोड़ी गई हैं.ImageAnalysis.Analyzer#getTargetResolutionOverride()
का नाम बदलकरImageAnalysis.Analyzer#getDefaultTargetResolution()
कर दिया गया.- सेव किए गए वीडियो में जगह का मेटाडेटा सेट करने के लिए एपीआई जोड़ा गया.
- 16:9 आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) के साथ
VideoCapture
और झलक के इस्तेमाल के उदाहरणों का इस्तेमाल करते समय, फ़्रेमरेट कम होने की समस्या ठीक की गई - कुछ Samsung डिवाइसों पर BOKEH एक्सटेंशन चालू होने और उपयोगकर्ता के कैमरे बदलने पर, काली झलक दिखने की समस्या ठीक की गई.
- API लेवल 27 वाले डिवाइसों पर, Samsung J7 Prime (SM-G610M) और J7 (SM-J710MN) में
Preview/VideoCapture
के स्ट्रेच होने की समस्या ठीक की गई. - Samsung Android T पर, सामने वाले कैमरों के एएफ़ रीजन को हॉरिज़ॉन्टली फ़्लिप करने के तरीके को बंद कर दिया गया है. ऐसा इसलिए, क्योंकि इस समस्या को ठीक कर दिया गया है
वर्शन 1.2.0-rc01
24 अक्टूबर, 2022
androidx.camera:camera-*:1.2.0-rc01
रिलीज़ हो गया है. वर्शन 1.2.0-rc01 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
setStreamUseCase
के लिएsetStreamUseCase
एपीआई जोड़ें.OutputConfiguration
उपयोगकर्ता, स्ट्रीम सेशन के लिए स्ट्रीम यूज़ केस तय कर सकता है. इससे CameraX के इंटरनल लॉजिक को बदलकर, स्ट्रीम यूज़ केस को चुना जा सकता है, ताकि उपयोगकर्ता की ज़रूरत के हिसाब से ऑप्टिमाइज़ किया जा सके. (Ib1a95)
गड़बड़ियां ठीक की गईं
- API लेवल 27 वाले डिवाइसों पर, Samsung J7 Prime (SM-G610M) और J7 (SM-J710MN) में
Preview/VideoCapture
के स्ट्रेच होने की समस्या ठीक की गई. रिज़ॉल्यूशन 1920x1080 होने की वजह से,Preview/VideoCapture
इमेज स्ट्रेच हो जाती हैं. झलक याVideoCapture
के लिए 1920x1080 रिज़ॉल्यूशन न चुनने के लिए, एक तरीका जोड़ा गया है, ताकि इमेज के खिंचने की समस्या से बचा जा सके. (I0e04e) - कुछ Huawei डिवाइसों पर, 16:9 आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) के साथ
VideoCapture
और झलक के इस्तेमाल के उदाहरणों का इस्तेमाल करते समय, फ़्रेमरेट कम होने की समस्या ठीक की गई है. (If8c88, b/223643510) - Preview के
SurfaceProvider
को सेट न करने पर, कैमरा चालू न होने की समस्या को ठीक किया गया. इस समस्या को ठीक करने के लिए, अब बिनाSurfaceProvider
सेट किए झलक देखने की सुविधा को, कैमरा कैप्चर सेशन में कॉन्फ़िगर नहीं किया जाएगा. (I99681)
वर्शन 1.2.0-beta02
21 सितंबर, 2022
androidx.camera:camera-*:1.2.0-beta02
रिलीज़ हो गया है. वर्शन 1.2.0-beta02 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
setOutputImageRotationEnabled
के लिए एपीआई लेवल से जुड़ी ज़रूरी शर्तें जोड़ें (I26e3e, b/240993561)
गड़बड़ियां ठीक की गईं
- Samsung Android T पर, सामने वाले कैमरों के एएफ़ रीजन को हॉरिज़ॉन्टल तौर पर फ़्लिप करने की सुविधा बंद कर दी गई है. ऐसा इसलिए किया गया है, क्योंकि इस समस्या को ठीक कर दिया गया है. (I05f69)
- कुछ Samsung डिवाइसों पर
BOKEH
एक्सटेंशन चालू होने और उपयोगकर्ता के कैमरे स्विच करने पर, काली झलक दिखने की समस्या को ठीक किया गया है. (If6168)
वर्शन 1.2.0-beta01
24 अगस्त, 2022
androidx.camera:camera-*:1.2.0-beta01
रिलीज़ हो गया है. वर्शन 1.2.0-beta01 में ये कमिट शामिल हैं.
नई सुविधाएं
- नई लाइब्रेरी
camera-mlkit-vision
. CameraX को ML Kit की कई सुविधाओं के साथ आसानी से इंटिग्रेट किया जा सकता है. जैसे, बारकोड स्कैन करना, चेहरे की पहचान करना, टेक्स्ट की पहचान करना वगैरह. कृपया सैंपल कोड यहां देखें. - नया एक्सपेरिमेंटल Zero-Shutter Lag API. यह कैप्चर पाइपलाइन को ऑप्टिमाइज़ करता है, ताकि इमेज की क्वालिटी अच्छी बनी रहे और लेटेंसी कम हो. जब कैप्चर मोड को CAPTURE_MODE_ZERO_SHUTTER_LAG पर सेट किया जाता है, तो शटर बटन दबाने और फ़ोटो लेने के बीच का समय कम हो जाता है. ऐसा अन्य कैप्चर मोड की तुलना में होता है. जिन डिवाइसों पर ZERO_SHUTTER_LAG काम नहीं करता है उन पर CAPTURE_MODE_MINIMIZE_LATENCY का इस्तेमाल किया जाएगा.
ImageAnalysis.Analyzer
औरMLKitAnalyzer
को आधिकारिक एपीआई के तौर पर बनाया गया.- सेव किए गए वीडियो के लिए, जगह का मेटाडेटा सेट करने के लिए एपीआई उपलब्ध कराया गया है.
ImageAnalysis.Analyzer#getTargetResolutionOverride()
का नाम बदलकरImageAnalysis.Analyzer#getDefaultTargetResolution()
करें.
गड़बड़ियां ठीक की गईं
- Alps k61v1_basic_ref में इमेज कैप्चर करने से जुड़ी समस्या को ठीक किया गया. HAL से कैप्चर की गई JPEG इमेज में, Exif मेटाडेटा गलत है. Exif मेटाडेटा में 0xffd9 या 0xffda टैग नहीं है. इसलिए,
ExifInterface
एट्रिब्यूट को सही तरीके से पार्स नहीं कर सकता. इस समस्या को हल करने के लिए, YUV फ़ॉर्मैट में इमेज कैप्चर की जाती हैं. इसके बाद, उन्हें JPEG आउटपुट इमेज में कंप्रेस किया जाता है. (I45abb)
वर्शन 1.2.0-alpha04
27 जुलाई, 2022
androidx.camera:camera-*:1.2.0-alpha04
रिलीज़ हो गया है. वर्शन 1.2.0-alpha04 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
ImageAnalysis.Analyzer#getTargetResolutionOverride()
का नाम बदलकरImageAnalysis.Analyzer#getDefaultTargetResolution()
करें. इसके अलावा, इस तरीके के व्यवहार में भी बदलाव किया गया है, ताकि इस तरीके से मिली वैल्यू कोImageAnalysis#setTargetResolution()
की वैल्यू से बदला जा सके. (If1d36)- सेव किए गए वीडियो के लिए, जगह का मेटाडेटा सेट करने के लिए एपीआई उपलब्ध कराया गया है.
android.location.Location
ऑब्जेक्ट को नए एपीआईandroidx.camera.video.OutputOptions.Builder.setLocation(Location)
के ज़रिए सेट किया जा सकता है. (I313a0, b/204197544)
गड़बड़ियां ठीक की गईं
- अनबाइंड किए गए प्रीव्यू (Ie70b6, b/235119898) की मदद से फ़ोटो लेने से जुड़ी समस्या को ठीक करें
- ऑडियो सोर्स उपलब्ध न होने पर, रिकॉर्डिंग की कोशिश करते समय
Recorder
में क्रैश होने की समस्या ठीक की गई. (I9f652)
वर्शन 1.2.0-alpha03
29 जून, 2022
androidx.camera:camera-*:1.2.0-alpha03
रिलीज़ हो गया है. वर्शन 1.2.0-alpha03 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
ImageAnalysis.Analyzer
औरMLKitAnalyzer
के लिए, एक्सपेरिमेंटल एनोटेशन हटा दिया गया है. (I0ff22)
गड़बड़ियां ठीक की गईं
- ऑटो फ़ोकस के लिए डिफ़ॉल्ट टाइमआउट 5000 मि॰से॰ जोड़ा गया है. अगर
isFocusSuccessful
को रद्द नहीं किया जाता है और एएफ़ का हिस्सा इस अवधि में कन्वर्ज नहीं होता है, तो यह एएफ़ के हिस्से कोisFocusSuccessful
false के साथ पूरा करेगा.FocusMeteringAction
(Ibc2e3) - बिना बाइंड की गई झलक की मदद से फ़ोटो लेने की समस्या को ठीक किया गया (I1d3a2, b/235119898)
- ऐडवांस एक्सटेंडर को लागू करने की सुविधा चालू की गई. साथ ही, CameraX के साथ काम करने वाले एक्सटेंशन-इंटरफ़ेस के वर्शन को 1.2 (I92256) पर अपडेट किया गया
वर्शन 1.2.0-alpha02
1 जून, 2022
androidx.camera:camera-*:1.2.0-alpha02
रिलीज़ हो गया है. वर्शन 1.2.0-alpha02 में ये कमिट शामिल हैं.
नई सुविधाएं
- CameraX Zero-Shutter Lag API को एक्सपेरिमेंट के तौर पर उपलब्ध कराया गया है.
एपीआई में हुए बदलाव
- डिवाइस की क्षमता के बारे में क्वेरी करने के लिए,
ImageCapture
में नया कैप्चर मोडCAPTURE_MODE_ZERO_SHUTTER_LAG
जोड़ें औरCameraInfo
मेंisZslSupported
जोड़ें.CAPTURE_MODE_ZERO_SHUTTER_LAG
मोड का मकसद, तुरंत कैप्चर करने के लिए कम से कम इंतज़ार का समय देना है. इसे रिंग बफ़र के आधार पर लागू किया जाता है. यह इंटरमीडिएट कैप्चर के नतीजों को कैश मेमोरी में सेव करता है, ताकि जब उपयोगकर्ता फ़ोटो लेने के लिए बटन दबाए, तो बाद में उन्हें फिर से प्रोसेस किया जा सके. अगर {@link VideoCapture} बाउंड है या फ़्लैश मोड बंद नहीं है या ओईएम एक्सटेंशन चालू है, तो यह मोड अपने-आप बंद हो जाएगा. (I9ae74) ImageAnalysis.getBackgroundExecutor()
तरीका जोड़ें (Icc945)
गड़बड़ियां ठीक की गईं
ImageCapture
takePicture तरीके से, रिपोर्ट किए गए डिवाइसों पर टॉर्च बंद हो जाती है. (Ib5eb5, b/228272227)- उस गड़बड़ी को ठीक किया गया है जिसमें
CONTROL_ZOOM_RATIO_RANGE
की जानकारी पाने के दौरान,AssertionError
को हैंडल नहीं किया जा रहा था.(/Ia248a, b/231701345)
वर्शन 1.2.0-alpha01
18 मई, 2022
androidx.camera:camera-*:1.2.0-alpha01
रिलीज़ हो गया है. वर्शन 1.2.0-alpha01 में ये कमिट शामिल हैं.
नई सुविधाएं
- नई लाइब्रेरी camera-mlkit-vision लॉन्च की गई है
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक किया गया है जिसकी वजह से, फ़ॉलबैक रणनीति चालू होने पर
QualitySelector
, यूएचडी वीडियो रिकॉर्ड नहीं कर पाता था. यह समस्या तब होती है, जबVideoCapture
कोImageCapture
के साथ बाइंड किया जाता है और फ़ुल या उससे ज़्यादा हार्डवेयर लेवल वाले कैमरे के डिवाइस पर झलक देखी जाती है.QualitySelector
की फ़ॉलबैक रणनीति की वजह से,VideoCapture
को गलत तरीके से फ़ुल एचडी रिज़ॉल्यूशन मिलता है. इस तरह के इस्तेमाल के लिए, यूएचडी रिज़ॉल्यूशन काम करता है. इसलिए, इसका इस्तेमाल करना चाहिए. (I0e788, b/230651237) NullPointerException
कोImageCapture.takePicture()
को ठीक किया गया. (I92366, b/230454568, b/229766155)androidx.camera.video.Recorder
(Ia8ce8) के एसिंक पॉज़ के व्यवहार से जुड़ी समस्या ठीक की गई
Camera-Camera2, Camera-Core, Camera-Lifecycle, और Camera-Video वर्शन 1.1.0
वर्शन 1.1.0
29 जून, 2022
androidx.camera:camera-*:1.1.0
रिलीज़ हो गया है. वर्शन 1.1.0 में ये कमिट शामिल हैं.
1.0.0 के बाद हुए अहम बदलाव
- लैंडेड व्यू, एक्सटेंशन, और वीडियो कैप्चर लाइब्रेरी को पहले आरसी वर्शन के तौर पर इस्तेमाल किया जा सकता है. CameraX की सभी लाइब्रेरी, 1.1.0-beta01 से एक ही वर्शन नंबर के साथ काम करेंगी. इससे डेवलपर को वर्शन को ट्रैक करने में आसानी होगी. साथ ही, वर्शन के साथ काम करने से जुड़ी बड़ी मैट्रिक्स की जटिलता कम होगी.
- नए सार्वजनिक एपीआई और सुविधाएं लॉन्च की गईं. इनमें ये शामिल हैं:
- वीडियो कैप्चर करने के लिए, आधिकारिक कैमरा-वीडियो लाइब्रेरी जोड़ें.
- YUV को RGB में बदलने और घुमाने की सुविधा (
ImageAnalysis.Builder.setOutputImageRotationEnabled
औरsetOutputImageFormat
) - मल्टी-विंडो मोड की सुविधा देता है. इससे CameraX ऐप्लिकेशन, कैमरे को फिर से चालू कर सकते हैं. ऐसा तब होता है, जब किसी दूसरे ऐप्लिकेशन की वजह से कैमरा बंद हो जाता है और फ़ोकस वापस आ जाता है.
- इससे फ़ोल्ड किए जा सकने वाले डिवाइसों में CameraX ठीक से काम करता है. इसके लिए, कुछ पूर्वावलोकन से जुड़ी समस्याओं को ठीक किया जाता है.
- एक
CameraState
एपीआई जोड़ा गया है, जिसे CameraInfo के ज़रिए ऐक्सेस किया जा सकेगा. - उपलब्ध कैमरों के बारे में सीधे जानकारी पाने के लिए, एक एपीआई
ProcessCameraProvider.getAvailableCameraInfos()
जोड़ा गया है - एक्सटेंशन चालू होने पर,
ImageCapture#OnImageCapturedCallback
के लिए JPEG फ़ॉर्मैट में आउटपुट दें. CameraInfo
में एक एपीआईisFocusMeteringSupported
जोड़ा गया है. इससे ऐप्लिकेशन यह देख सकते हैं कि दिया गयाFocusMeteringAction
, मौजूदा कैमरे पर काम करता है या नहीं.- झलक देखने की सुविधा
getResolutionInfo
,ImageCapture
, औरImageAnalysis
के लिए, समस्या हल करने की जानकारी देने वाला एपीआई उपलब्ध कराया गया है. - फ़ोटो खींचते समय, आउटपुट JPEG इमेज की कंप्रेस करने की क्वालिटी बदलने की अनुमति देने के लिए, नया एपीआई
ImageCapture.Builder#setJpegQuality
जोड़ा गया है. CameraSelector
के आधार परCameraInfos
की सूची को फ़िल्टर करने के लिए, सार्वजनिक एपीआई मेंCameraSelector#filter
जोड़ा गया.- मौजूदा कैप्चर अनुरोध के विकल्पों को हटाने के लिए,
Camera2CameraControl.clearCaptureRequestOptions
जोड़ा गया. - बाहरी इमेज प्रोसेसिंग लाइब्रेरी के साथ
CameraController
का इस्तेमाल करने के लिए, एक्सपेरिमेंटल एपीआई जोड़ा गया है. उदाहरण के लिए, MLKit - एक्सपेरिमेंट के तौर पर एपीआई
CameraInfo#getCameraSelector()
जोड़ा गया है. यह एपीआई, कैमरे के लिएCameraSelector
यूनीक वैल्यू दिखाता है - कई एक्सपेरिमेंटल एपीआई को आधिकारिक तौर पर सार्वजनिक एपीआई के तौर पर प्रमोट किया गया
- एक्सपेरिमेंट के तौर पर उपलब्ध एपीआई के लिए, एनोटेशन
@Experimental
को@RequiresOptIn
से बदला गया. एक्सपेरिमेंट के तौर पर उपलब्ध एपीआई को कॉल करने के लिए, androidx.annotation.experimental.UseExperimental के बजाय androidx.annotation.OptIn का इस्तेमाल करें. - इन एक्सपेरिमेंटल एपीआई को आधिकारिक एपीआई के तौर पर प्रमोट किया गया है:
CameraXConfig.Builder#setAvailableCamerasLimiter()
,CameraXConfig.Builder#setMinimumLoggingLevel()
,CameraXconfig.Builder#setSchedulerHandler()
,CameraXConfig#getAvailableCamerasLimiter()
,CameraXConfig#getMinimumLoggingLevel()
,CameraXConfig#getCameraExecutor()
,CameraXConfig#getSchedulerHandler()
, @ExperimentalCameraFilter
एपीआई- एक्सपोज़र कंपंसेशन के एक्सपेरिमेंटल एपीआई.
- कैमरा-कोर, कैमरा-लाइफ़साइकल, और कैमरा-वीडियो के लिए, एक्सपेरिमेंट के तौर पर उपलब्ध
UseCaseGroup
एपीआई का प्रमोशन किया गया. व्यूपोर्ट को पसंद के मुताबिक बनाने के लिए,ViewPort#getLayoutDirection
,ViewPort.Builder#setLayoutDirection
, औरViewPort.Builder#setScaleType
को जोड़ा गया. ExperimentalUseCaseGroupLifecycle
को फ़ॉर्मल पब्लिक एपीआई के तौर पर प्रमोट किया गया.- मौजूदा एपीआई में बदलाव
Renamed MediaStoreOutputOptions.getCollection
सेMediaStoreOutputOptions.getCollectionUri
.- ज़्यादा जानकारी को कम करने के लिए,
ActiveRecording
का नाम बदलकर "Recording" कर दिया गया है. QualitySelector
क्रिएटर एपीआई को सूची पर आधारित एपीआई में बदला गया
गड़बड़ियां ठीक की गईं
- एक्सटेंशन मोड चालू होने और
ImageCapture#CAPTURE_MODE_MAX_QUALITY
मोड सेट होने पर,YuvToJpegProcessor
EOFException
से जुड़ी समस्या ठीक की गई. - वीडियो रिकॉर्डिंग बंद होने की वजह से, कोडेक का कॉन्फ़िगरेशन ठीक नहीं किया जा सका
- FHD में रिकॉर्डिंग करते समय, स्ट्रेच की गई झलक/वीडियो के आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) की समस्या ठीक की गई
- कुछ डिवाइसों पर वीडियो को रोकने और फिर से शुरू करने के बाद, ऑडियो/वीडियो के सिंक न होने की समस्या ठीक की गई
- हमने उस समस्या को ठीक कर दिया है जिसमें कम रोशनी में, फ़्लैश मोड के अपने-आप चालू होने या हमेशा चालू रहने पर, टैप-टू-फ़ोकस (
startFocusAndMetering
) के दौरान फ़्लैश चालू हो जाता था.
वर्शन 1.1.0-rc02
1 जून, 2022
androidx.camera:camera-*:1.1.0-rc02
रिलीज़ हो गया है. वर्शन 1.1.0-rc02 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
NullPointerException
कोImageCapture.takePicture()
को ठीक किया गया. (I92366, b/230454568, b/229766155)CONTROL_ZOOM_RATIO_RANGE
की विशेषता को हासिल करते समय,AssertionError
को हैंडल न करने वाली गड़बड़ी को ठीक किया गया है. (Ia248a, b/231701345)
वर्शन 1.1.0-rc01
11 मई, 2022
androidx.camera:camera-*:1.1.0-rc01
रिलीज़ हो गया है. वर्शन 1.1.0-rc01 में ये कमिट शामिल हैं.
नई सुविधाएं
- कैमरा-वीडियो, कैमरा-व्यू, और कैमरा-एक्सटेंशन के लिए पहला आरसी वर्शन रिलीज़ करें
गड़बड़ियां ठीक की गईं
- हमने उस समस्या को ठीक कर दिया है जिसमें
VideoCapture<Recorder>
के अनबाउंड होने पर, वीडियो कोडेक रिलीज़ नहीं किया जाता था. इस वजह से,VideoCapture<Recorder>
का इस्तेमाल करकेMediaCodec.CodecException
के साथ रिकॉर्डिंग नहीं की जा सकती थी. खास तौर पर, एपीआई 21-22 वाले डिवाइसों पर यह समस्या होती थी. (Ie7f68) CameraExtensionsActivity
से कैप्चर की गई इमेज कोImageCaptureTest
में न मिटाने की सुविधा ठीक करना
वर्शन 1.1.0-beta03
6 अप्रैल, 2022
androidx.camera:camera-*:1.1.0-beta03
रिलीज़ हो गया है. वर्शन 1.1.0-beta03 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
CaptureRequestOptions
कंस्ट्रक्टर को प्रतिबंधित कर दिया गया है. (I261b6)- बाहरी इमेज प्रोसेसिंग लाइब्रेरी के साथ
CameraController
का इस्तेमाल करने के लिए, एक्सपेरिमेंट के तौर पर एक एपीआई जोड़ा गया है. उदाहरण के लिए, MLKit (I4ea71)
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक किया गया है जिसमें मल्टी-विंडो में डिवाइसों को घुमाने के बाद, गतिविधि को फिर से शुरू न करने पर
PreviewView
में झलक साइडवे हो जाती है. (I1ea36, b/223488673) - मल्टी-विंडो की समस्या को ठीक किया गया है. इस समस्या की वजह से, ऐप्लिकेशन पर फ़ोकस वापस आने पर कैमरा फिर से चालू नहीं होता था. ऐसा तब होता था, जब (1) ज़्यादा प्राथमिकता वाला कोई दूसरा ऐप्लिकेशन, कोई दूसरा कैमरा खोलता था (2) डिवाइस, Samsung Android 12 डिवाइस होता था. (I7e9f2)
- फ़्लैश की उपलब्धता की जांच करते समय क्रैश होने वाले डिवाइसों के लिए, वर्कअराउंड शामिल किया गया है. इन डिवाइसों पर टॉर्च की सुविधा उपलब्ध नहीं होगी. (If26a3, b/216667482)
- ऐप्लिकेशन में एक्सटेंशन इस्तेमाल करने और ProGuard चालू करने पर होने वाली
AbstractMethodError
समस्या को ठीक किया गया है. (I7cbaf, b/222726805) - Motorola razr 5G डिवाइस पर, बोके इफ़ेक्ट वाले एक्सटेंशन मोड को ज़बरदस्ती बंद करें. इससे झलक दिखाने वाली स्क्रीन काली हो जाएगी. (I35d49)
- API 29 से पहले के कुछ Samsung डिवाइसों पर, वीडियो को रोकने और फिर से शुरू करने के बाद ऑडियो/वीडियो के सिंक न होने की समस्या ठीक की गई. (I64622, b/202798609, b/202798572)
- Sony G3125 पर, वीडियो को रोकने और फिर से चलाने के बाद ऑडियो/वीडियो के सिंक न होने की समस्या ठीक की गई. (I2a1a5, b/202799148)
- Recorder में
InvalidConfigException
आने पर, ऐप्लिकेशन क्रैश होने की समस्या को ठीक किया गया है. हालांकि, इस फ़िक्स से सिर्फ़ ऐप्लिकेशन के क्रैश होने की समस्या को रोका जा सकता है. इससेInvalidConfigException
की वजह से होने वाली समस्या ठीक नहीं होती. अगरRecorder
को अब भी कॉन्फ़िगर नहीं किया जा सकता, तो रिकॉर्डिंग शुरू होने पर ऐप्लिकेशन को गड़बड़ी का कॉलबैक मिलेगा. (I89c29, b/213617227)
बाहरी योगदान
- test-coroutines-lib माइग्रेशन (I3366d) की वजह से, :compose:ui:ui-test api (updateApi) को अपडेट किया गया
वर्शन 1.1.0-beta02
23 फ़रवरी, 2022
androidx.camera:camera-*:1.1.0-beta02
रिलीज़ हो गया है. वर्शन 1.1.0-beta02 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- Camera2Interop के ज़रिए, फ़िज़िकल कैमरा आईडी तय करने की सुविधा जोड़ी गई. (I5aed8)
गड़बड़ियां ठीक की गईं
- Oppo Find N (I7d004) पर, स्ट्रेच की गई झलक की समस्या को ठीक किया गया
- Galaxy J7 Prime में झलक के खराब दिखने की समस्या को ठीक किया गया है. (I4c500)
- वीडियो एन्कोडर ढूंढने के लिए, बिटरेट का इस्तेमाल करें. (d969052)
वर्शन 1.1.0-beta01
26 जनवरी, 2022
androidx.camera:camera-*:1.1.0-beta01
रिलीज़ हो गया है. वर्शन 1.1.0-beta01 में ये कमिट शामिल हैं.
नई सुविधाएं
- CameraX की सभी लाइब्रेरी, 1.1.0-beta01 से एक ही वर्शन नंबर के साथ काम करेंगी. इससे डेवलपर को वर्शन को ट्रैक करने में आसानी होगी. साथ ही, वर्शन के साथ काम करने वाली बड़ी मैट्रिक्स की जटिलता कम होगी.
एपीआई में हुए बदलाव
- कैप्चर करने के मौजूदा अनुरोध के विकल्पों को हटाने के लिए,
Camera2CameraControl.clearCaptureRequestOptions
जोड़ा गया है. (Ifa07d)
गड़बड़ियां ठीक की गईं
- Android O(API 26) से पहले के कुछ डिवाइसों पर वीडियो रिकॉर्ड करते समय, ऐप्लिकेशन के क्रैश होने की समस्या को ठीक किया गया है. (I88fdf, b/212328261)
- Samsung डिवाइसों में, सामने की ओर मौजूद कैमरे पर
cameraControl#startFocusAndMetering()
का इस्तेमाल करते समय, एएफ़ क्षेत्र की गलत जानकारी दिखाने की समस्या ठीक की गई (Ifbf59, b/210548792) - Pixel 3a/Pixel 3a XL पर टॉर्च को फ़्लैश के तौर पर इस्तेमाल करें, ताकि अंधेरे में फ़ोटो खींचने की स्पीड और फ़ोटो की क्वालिटी को बेहतर बनाया जा सके (Ib12b6, b/211474332)
- इस सुविधा की मदद से, ऐप्लिकेशन को कैमरे का इस्तेमाल फिर से शुरू करने की अनुमति मिलती है. ऐसा तब होता है, जब मल्टी-विंडो मोड में, ज़्यादा प्राथमिकता वाले किसी दूसरे ऐप्लिकेशन की वजह से कैमरे का इस्तेमाल रुक जाता है और फ़ोकस वापस ऐप्लिकेशन पर आ जाता है. कृपया ध्यान दें कि फ़्रेमवर्क से जुड़ी किसी समस्या की वजह से, फ़ोकस में बदलाव होने और कैमरा फिर से खुलने के बीच कुछ समय(एक से 10 सेकंड या इससे ज़्यादा) लग सकता है. (I4d092)
वर्शन 1.1.0-alpha12
15 दिसंबर, 2021
androidx.camera:camera-*:1.1.0-alpha12
रिलीज़ हो गया है. वर्शन 1.1.0-alpha12 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- अंदरूनी क्लास/इंटरफ़ेस से, गैर-ज़रूरी
@RequiresApi(21)
एनोटेशन हटा दिए गए हैं. (I8e286, b/204917951) QualitySelector
के क्वालिटी कॉन्स्टेंट और फ़ॉलबैक रणनीति के कॉन्स्टेंट को क्लास ऑब्जेक्ट के तौर पर दिखाया गया है. उदाहरण के लिए,QualitySelector.QUALITY_HD
कोQuality.HD
में बदल दिया जाता है औरQualitySelector.FALLBACK_STRATEGY_LOWER
कोFallbackStrategy.lowerQualityOrHigherThan(Quality)
से मिले इंस्टेंस में बदल दिया जाता है.QualitySelector
बनाने के लिए इस्तेमाल किए जाने वाले एपीआई को बदलकर, सूची पर आधारित एपीआई कर दिया गया है. नया APIQualitySelector.fromOrderedList(List<Quality>)
,QualitySelector.Procedure
के बनाए गए क्रम के बजाय, इनपुट क्वालिटी की सूची के क्रम को देखेगा.QualitySelector.Procedure
क्लास को हटा दिया गया है. (I43343)PendingRecording.withEventListener()
को हटा दिया गया है. अब इवेंट लिसनर कोPendingRecording.start()
में पास करना होगा. इवेंट की पहचान करने वाले इस व्यक्ति की ज़रूरत इसलिए होती है, ताकिVideoRecordEvent.Finalize
इवेंट में रिपोर्ट की गई एसिंक्रोनस गड़बड़ियों को ठीक किया जा सके. (I1e71d)- ज़्यादा शब्दों का इस्तेमाल कम करने के लिए,
ActiveRecording
का नाम बदलकरRecording
कर दिया गया है. (I77ceb)
गड़बड़ियां ठीक की गईं
- Pixel 3a और Pixel 3a XL पर, कम रोशनी में
FLASH_AUTO
मोड में खींची गई फ़ोटो के कम रोशनी में दिखने की समस्या ठीक की गई है (I13f19, b/205373142) - झलक
Resolution
तय करने के लिए, हमेशा डिसप्ले के नए साइज़ का इस्तेमाल करें. (I4a694) - ऐसे कैमरे फ़िल्टर किए गए हैं जिनमें
REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE
नहीं है.REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE
की सुविधा वाले कैमरों में, कम से कम वे सभी सुविधाएं होती हैं जो हर कैमरे वाले डिवाइस में होती हैं.REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE
के बिना कैमरे का इस्तेमाल खास फ़ंक्शन के लिए किया जा सकता है. साथ ही, यह स्टैंडर्ड कलर आउटपुट के साथ काम नहीं करता.CameraX
, उन कैमरों के लिएPreview
,ImageCapture
,ImageAnalysis
याVideoCapture
इस्तेमाल के उदाहरणों के साथ काम नहीं कर सकता. इसलिए, उन कैमरों को फ़िल्टर किया जाना चाहिए, ताकि उनका गलत इस्तेमाल न हो. (Ib8cda) - नतीजों का सेट खाली होने पर,
CameraSelector#filter
अबIllegalArgumentException
नहीं दिखाता है. (I27804) - ओईएम की तय की गई प्रोफ़ाइलों के आधार पर, एन्कोडर सेटिंग चुनने के लिए अब बेहतर अनुमान लगाने वाले तरीकों का इस्तेमाल किया जाता है. (Iaeef0)
- Pixel 1 पर यूएचडी वीडियो रिकॉर्डिंग शुरू करने के बाद, फ़िक्स्ड प्रीव्यू में इंटरलेस्ड कलर लाइनें दिखेंगी. (I833c6, b/205340278)
वर्शन 1.1.0-alpha11
17 नवंबर, 2021
androidx.camera:camera-*:1.1.0-alpha11
रिलीज़ हो गया है. वर्शन 1.1.0-alpha11 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- CameraSelector#filter को सार्वजनिक एपीआई में जोड़ा गया है, ताकि CameraSelector के आधार पर CameraInfos की सूची को फ़िल्टर किया जा सके. (I105d0)
ImageAnalysis कॉन्फ़िगरेशन के लिए, setOutputImageRotationEnabled API जोड़ा गया. उपयोगकर्ता, YUV/RGB इमेज बफ़र के लिए रोटेशन की सुविधा चालू कर सकता है. रोटेशन डिग्री, इमेज को सामने रखने के लिए सेंसर रोटेशन और टारगेट रोटेशन के आधार पर कैलकुलेट किया गया एक रिलेटिव रोटेशन होता है.
ImageAnalysis कॉन्फ़िगरेशन के लिए, setOutputImageRotationEnabled API जोड़ा गया. उपयोगकर्ता, YUV/RGB इमेज बफ़र के लिए रोटेशन की सुविधा चालू कर सकता है. रोटेशन डिग्री, इमेज को सामने रखने के लिए सेंसर रोटेशन और टारगेट रोटेशन के आधार पर कैलकुलेट किया गया एक रिलेटिव रोटेशन होता है.
ImageInfo में
getSensorToBufferTransformMatrix
एपीआई जोड़ें. दिखाई गई मैट्रिक्स, सेंसर के निर्देशांकों को बफ़र के निर्देशांकों पर मैप करती है. इसका मतलब है कि यहCameraCharacteristics.SENSOR_INFO_ACTIVE_ARRAY_SIZE
की वैल्यू से(0, 0, image.getWidth, image.getHeight)
की वैल्यू पर मैप करती है. मैट्रिक्स का इस्तेमाल, एक {UseCase} से दूसरे {UseCase} तक के कोऑर्डिनेट को मैप करने के लिए किया जा सकता है. उदाहरण के लिए, ImageAnalysis की मदद से पहचाने गए चेहरे के कोऑर्डिनेट को Preview पर मैप करना. (I9ff1e)फ़ोटो खींचते समय, आउटपुट JPEG इमेज की कंप्रेस करने की क्वालिटी बदलने के लिए, नया एपीआई ImageCapture.Builder#setJpegQuality जोड़ा गया. (I8dcf4)
MediaStoreOutputOptions.getCollection का नाम बदलकर MediaStoreOutputOptions.getCollectionUri कर दिया गया है. (I16639)
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक किया गया है जिसमें कम रोशनी वाले माहौल में, फ़्लैश मोड के ऑटो या always_on पर सेट होने पर, टैप-टू-फ़ोकस (startFocusAndMetering) के दौरान फ़्लैश चालू हो जाता था. (Id4c11)
- Pixel 2 XL / Pixel 3 XL में, MINIMIZE_LATENCY मोड में HDR+ को बंद कर दिया गया है, ताकि लेटेन्सी कम हो सके. (Ib6270, b/203505523)
बाहरी योगदान
वर्शन 1.1.0-alpha10
13 अक्टूबर, 2021
androidx.camera:camera-*:1.1.0-alpha10
रिलीज़ हो गया है. वर्शन 1.1.0-alpha10 में ये कमिट शामिल हैं.
नई सुविधाएं
- वीडियो के लिए,
androidx.camera:camera-video:1.1.0-alpha10
को पहले ऐल्फ़ा वर्शन के तौर पर आधिकारिक तौर पर रिलीज़ किया गया. कई ऐसी समस्याएं हैं जिनके बारे में हमें पहले से पता है. इन्हें आने वाले वर्शन में ठीक किया जाएगा.
एपीआई में हुए बदलाव
- सभी CameraX क्लास में
@RequiresApi(21)
एनोटेशन जोड़ा गया है. साथ ही, AndroidManifest.xml से minSdkVersion हटा दिया गया है. इससे camera-core को उन ऐप्लिकेशन में आसानी से इंटिग्रेट किया जा सकेगा जिनमें minSdkVersion 21 से कम है. हालांकि, वे एपीआई 21 और उसके बाद के वर्शन पर निर्भर करने वाले कोड पाथ का इस्तेमाल कुछ शर्तों के साथ करना चाहते हैं. minSdkVersion 21 या उसके बाद के वर्शन वाले किसी भी ऐप्लिकेशन के लिए, इस बदलाव को लागू करने के लिए कोई कार्रवाई करने की ज़रूरत नहीं है. (Ie7f2e, b/200599470)
गड़बड़ियां ठीक की गईं
- InitializationException को थ्रो करें, ताकि ऐप्लिकेशन, CameraCharacteristics बनाते समय हुई AssertionError को आसानी से हैंडल कर सके. (Ibec79)
वर्शन 1.1.0-alpha09
29 सितंबर, 2021
androidx.camera:camera-camera2:1.1.0-alpha09
, androidx.camera:camera-core:1.1.0-alpha09
, और androidx.camera:camera-lifecycle:1.1.0-alpha09
रिलीज़ किए गए हैं. वर्शन 1.1.0-alpha09 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- एपीआई के एक्सपेरिमेंटल वर्शन के बंद होने के बाद, ExperimentalUseCaseGroup एनोटेशन को हटा दिया गया है. (I01ef5)
गड़बड़ियां ठीक की गईं
MAXIMIZE_QUALITY
मोड में, कैप्चर की गई फ़ोटो धुंधली दिखने की समस्या को ठीक किया गया है. (I173a9, b/193823892)- Samsung Galaxy J5 में, फ़्लैश चालू/ऑटो मोड में रखकर अंधेरे में फ़ोटो लेने पर, कैमरे के रुक जाने की समस्या को ठीक किया गया है (I3aab9)
- ImageCapture के लिए इमेज को काटना ज़रूरी होने पर, सेट किए गए कैप्चर मोड के मुताबिक, तय किए गए JPEG क्वालिटी लेवल के साथ काटी गई आउटपुट इमेज को कंप्रेस करना. अगर कैप्चर मोड
CAPTURE_MODE_MINIMIZE_LATENCY
है, तो JPEG कंप्रेस करने की क्वालिटी 95 होगी. अगर कैप्चर मोडCAPTURE_MODE_MAXIMIZE_QUALITY
है, तो JPEG कंप्रेशन की क्वालिटी 100 होगी. (Ieb37c, b/142856426)
वर्शन 1.1.0-alpha08
18 अगस्त, 2021
androidx.camera:camera-camera2:1.1.0-alpha08
, androidx.camera:camera-core:1.1.0-alpha08
, और androidx.camera:camera-lifecycle:1.1.0-alpha08
रिलीज़ किए गए हैं. वर्शन 1.1.0-alpha08 में ये कमिट शामिल हैं.
नई सुविधाएं
- इमेज विश्लेषण के कॉन्फ़िगरेशन के लिए, setOutputImageFormat API जोड़ा गया. उपयोगकर्ता, ImageAnalysis.OUTPUT_IMAGE_FORMAT_YUV_420_888 या ImageAnalysis.OUTPUT_IMAGE_FORMAT_RGBA_8888 चुन सकता है. डिफ़ॉल्ट रूप से, ImageAnalysis.OUTPUT_IMAGE_FORMAT_YUV_420_888 चुना जाएगा. (I7902d)
एपीआई में हुए बदलाव
- ExperimentalUseCaseGroupLifecycle एनोटेशन को हटा दिया गया है, क्योंकि अब एपीआई एक्सपेरिमेंट के तौर पर उपलब्ध नहीं हैं. (I17b85)
गड़बड़ियां ठीक की गईं
- Huawei P20 Lite पर, फ़िक्स्ड प्रीव्यू स्क्रीन की रोशनी बहुत ज़्यादा है. यह समस्या सिर्फ़ तब होती है, जब खास झलक के कुछ रिज़ॉल्यूशन का इस्तेमाल, ज़ूम इन की बड़ी वैल्यू के साथ किया जाता है. (Idefce, b/192129158)
- उस समस्या को ठीक कर दिया गया है जिसकी वजह से, फ़्लैश मोड को FLASH_MODE_ON पर सेट करने के तुरंत बाद फ़ोटो लेने पर, कुछ डिवाइसों पर फ़्लैश काम नहीं कर रहा था. (Ieb49b)
- उस समस्या को ठीक किया गया है जिसमें VideoCapture, ImageCapture, और Preview के बाइंड होने पर, फ़ोटो खींचते समय Preview कुछ समय के लिए रुक जाता था. (I56197, b/193864120)
- इस विकल्प की मदद से, ImageAnalysis 1080 पिक्सल से ज़्यादा रिज़ॉल्यूशन चुन सकता है. अगर किसी डिवाइस में Preview और ImageCapture की सुविधा उपलब्ध है, तो वह ImageAnalysis के लिए RECORD साइज़ के रिज़ॉल्यूशन का इस्तेमाल कर सकता है. हालांकि, ImageCapture के लिए चुना गया रिज़ॉल्यूशन भी RECORD साइज़ का होना चाहिए. ImageAnalysis के लिए RECORD साइज़ का रिज़ॉल्यूशन चुनने के लिए, ImageCapture और ImageAnalysis, दोनों पर RECORD साइज़ का टारगेट रिज़ॉल्यूशन सेट होना चाहिए. इससे पता चलता है कि ऐप्लिकेशन, ट्रेड-ऑफ़ को अच्छी तरह से समझता है. साथ ही, वह ImageCapture के ज़्यादा से ज़्यादा रिज़ॉल्यूशन के बजाय, ImageAnalysis के ज़्यादा रिज़ॉल्यूशन को प्राथमिकता देता है. RECORD की परिभाषाओं, ज़्यादा से ज़्यादा साइज़, और ज़्यादा जानकारी के लिए, https://developer.android.com/reference/android/hardware/camera2/CameraDevice#regular-capture पर जाएं. RECORD साइज़ का मतलब, कैमरे वाले डिवाइस के लिए रिकॉर्डिंग के ज़्यादा से ज़्यादा रिज़ॉल्यूशन से है. यह CamcorderProfile से तय होता है. ज़्यादा से ज़्यादा साइज़ का मतलब, StreamConfigurationMap.getOutputSizes(int) से मिले उस फ़ॉर्मैट या टारगेट के लिए, कैमरा डिवाइस के ज़्यादा से ज़्यादा आउटपुट रिज़ॉल्यूशन से है. (I1ee97, b/192911449)
- कैप्चर की गई इमेज में Exif डेटा जोड़ें. (I01ff0, b/193342619)
- अगर सेव करने की जगह फ़ाइल है, तो ImageCapture में सेव की गई इमेज का यूआरआई दिखाएं. (Ib5b49, b/149241379)
- उस समस्या को ठीक किया गया है जिसकी वजह से, फ़्लैश के साथ कैप्चर की गई इमेज कई डिवाइसों पर गहरे रंग की दिखती थीं. (I4e510)
वर्शन 1.1.0-alpha07
21 जुलाई, 2021
androidx.camera:camera-camera2:1.1.0-alpha07
, androidx.camera:camera-core:1.1.0-alpha07
, और androidx.camera:camera-lifecycle:1.1.0-alpha07
रिलीज़ किए गए हैं. वर्शन 1.1.0-alpha07 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- Samsung Galaxy Note 5 में आ रही समस्या को ठीक किया गया है. इस समस्या में, अंधेरे में फ़्लैश चालू/ऑटो मोड में फ़ोटो लेने के बाद कैमरा अटक जाता था (If6871)
- एक्सटेंशन मोड चालू होने और
ImageCapture#CAPTURE_MODE_MAX_QUALITY
मोड सेट होने पर,YuvToJpegProcessor
EOFException की समस्या ठीक की गई. (I538bd, b/192017012)
वर्शन 1.1.0-alpha06
30 जून, 2021
androidx.camera:camera-camera2:1.1.0-alpha06
, androidx.camera:camera-core:1.1.0-alpha06
, और androidx.camera:camera-lifecycle:1.1.0-alpha06
रिलीज़ किए गए हैं. वर्शन 1.1.0-alpha06 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- कैमरा-कोर (I08ee8) के लिए, एक्सपेरिमेंटल एक्सपोज़र कॉम्पन्सेशन एपीआई का प्रमोशन करना
- CameraInfo में API isFocusMeteringSupported जोड़ा गया है. इससे ऐप्लिकेशन यह देख सकते हैं कि मौजूदा कैमरे पर, FocusMeteringAction काम करता है या नहीं. (Ib45ae, b/188606490)
- Preview, ImageCapture, और ImageAnalysis के लिए रिज़ॉल्यूशन की जानकारी देने वाला getResolutionInfo API उपलब्ध कराया गया. (I2b613, b/188600718)
- एक्सपेरिमेंट के तौर पर उपलब्ध इन एपीआई को आधिकारिक एपीआई के तौर पर प्रमोट किया गया है: CameraXConfig.Builder#setAvailableCamerasLimiter(), CameraXConfig.Builder#setMinimumLoggingLevel(), CameraXconfig.Builder#setSchedulerHandler(), CameraXConfig#getAvailableCamerasLimiter(), CameraXConfig#getMinimumLoggingLevel(), CameraXConfig#getCameraExecutor(), CameraXConfig#getSchedulerHandler(). (I2ade2)
- कैमरों के सेट का ऐक्सेस देने के लिए, CameraProvider इंटरफ़ेस को दिखाया गया. (I1a7b1)
- कैमरा-कोर, कैमरा-लाइफ़साइकल, और कैमरा-वीडियो के लिए, एक्सपेरिमेंट के तौर पर उपलब्ध UseCaseGroup API का प्रमोशन करें. व्यूपोर्ट को पसंद के मुताबिक बनाने के लिए,
ViewPort#getLayoutDirection
,ViewPort.Builder#setLayoutDirection
, औरViewPort.Builder#setScaleType
को जोड़ा गया. (I7cee8)
वर्शन 1.1.0-alpha05
2 जून, 2021
androidx.camera:camera-camera2:1.1.0-alpha05
, androidx.camera:camera-core:1.1.0-alpha05
, और androidx.camera:camera-lifecycle:1.1.0-alpha05
रिलीज़ किए गए हैं. वर्शन 1.1.0-alpha05 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
Camera2CameraFilter
क्लास हटा दी गई है. CameraFilter का इस्तेमाल करके कैमरा चुनने का सुझाव दें. साथ ही, अगर ज़रूरत हो, तो Camera2CameraInfo के ज़रिए CameraCharacteristics या Camera2 से जुड़ी अन्य जानकारी पाएं. (Ib887c)ExperimentalCameraFilter
अब एपीआई, एक्सपेरिमेंट के तौर पर उपलब्ध नहीं हैं. ये अब आधिकारिक तौर पर उपलब्ध हैं. इनका इस्तेमाल, एनोटेट किए गए OptIn के बिना किया जा सकता है. (I4bc94)- कैमरे की स्थिति बताने वाले एपीआई को जोड़ा गया है. यह
CameraInfo#getCameraState()
के ज़रिए उपलब्ध होता है. (Ia86b4) - एक्सपेरिमेंट के तौर पर एपीआई
CameraInfo#getCameraSelector()
जोड़ा गया है. यह एपीआई, कैमरे के हिसाब से यूनीक CameraSelector दिखाता है (I77f9f)
गड़बड़ियां ठीक की गईं
- Android 11 वाले कुछ डिवाइसों पर, setZoomRatio और setLinearZoom में ListenableFuture के काम न करने की समस्या ठीक की गई है (I716d7)
- कैमरा स्विच करने की प्रोसेस को तेज़ किया गया है. साथ ही, कैमरा डिवाइस में गड़बड़ी होने की दर को कम किया गया है (I34c99)
- ExperimentalUseCaseGroupLifecycle को ExperimentalUseCaseGroup से बदल दिया गया है. (I3b2ef, b/159033688)
वर्शन 1.1.0-alpha04
21 अप्रैल, 2021
androidx.camera:camera-camera2:1.1.0-alpha04
, androidx.camera:camera-core:1.1.0-alpha04
, और androidx.camera:camera-lifecycle:1.1.0-alpha04
रिलीज़ किए गए हैं. वर्शन 1.1.0-alpha04 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- एक ही कलेक्शन को एक साथ ऐक्सेस करने वाले कई थ्रेड की वजह से होने वाली मेमोरी लीक की समस्या को ठीक किया गया है. मेमोरी लीक की वजह से, Preview इंस्टेंस, Activity या Fragment को बनाए रख सकता है. (I7b4b8)
- एक्सपेरिमेंट के तौर पर उपलब्ध एपीआई के लिए, एनोटेशन
@Experimental
को@RequiresOptIn
से बदला गया. एक्सपेरिमेंट के तौर पर उपलब्ध एपीआई को कॉल करने के लिए, बंद किए गएandroidx.annotation.experimental.UseExperimental
के बजायandroidx.annotation.OptIn
का इस्तेमाल करें. (Iff226) - Samsung Galaxy S7 पर, फ़्लैश चालू/ऑटो मोड में ImageCapture का इस्तेमाल करने पर, धुंधली इमेज मिलती हैं. इस समस्या को ठीक कर दिया गया है. (I30001)
- CameraState API जोड़ा गया है. इसे CameraInfo के ज़रिए ऐक्सेस किया जा सकेगा. (I75392)
वर्शन 1.1.0-alpha03
24 मार्च, 2021
androidx.camera:camera-camera2:1.1.0-alpha03
, androidx.camera:camera-core:1.1.0-alpha03
, और androidx.camera:camera-lifecycle:1.1.0-alpha03
रिलीज़ किए गए हैं. वर्शन 1.1.0-alpha03 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- एक्सटेंशन मोड चालू होने पर,
ImageCapture#OnImageCapturedCallback
के लिए JPEG फ़ॉर्मैट में आउटपुट दें. (I0d7b1) - UMIDIGI BISON डिवाइसों पर, शुरू होने में आने वाली समस्या को ठीक किया गया (I57d9e, b/180818665)
- PreviewView में, Samsung A3 पर स्ट्रेच की गई झलक की समस्या ठीक की गई. (Iacb30, b/180121821)
वर्शन 1.1.0-alpha02
24 फ़रवरी, 2021
androidx.camera:camera-camera2:1.1.0-alpha02
, androidx.camera:camera-core:1.1.0-alpha02
, और androidx.camera:camera-lifecycle:1.1.0-alpha02
रिलीज़ किए गए हैं. वर्शन 1.1.0-alpha02 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- उपलब्ध कैमरों के बारे में सीधे तौर पर जानकारी पाने के लिए, एक एपीआई
ProcessCameraProvider.getAvailableCameraInfos()
जोड़ा गया है. ये कैमरे, डिवाइस के सभी कैमरे याCameraXConfig.Builder.setAvailableCamerasLimiter(CameraSelector)
में दिए गएCameraSelector
से चुने गए कैमरे होते हैं. (Ieac08)
गड़बड़ियां ठीक की गईं
- CameraX अब पहली बार में ही कैमरा खोलने की कोशिश करता है. ऐसा हो सकता है कि CameraX, कैमरे का इस्तेमाल करने वाले अन्य ऐप्लिकेशन से कैमरा छीन ले. ऐसा तब होता है, जब CameraX वाले ऐप्लिकेशन को ज़्यादा प्राथमिकता दी जाती है. (Iab069, b/175820568)
- CameraXConfig में setAvailableCamerasLimiter का इस्तेमाल करने पर, Robolectric टेस्ट के फ़ेल होने की समस्या ठीक की गई. (Ice307)
- इस बदलाव से, ImageAnalysis में इमेज की ज़्यादा से ज़्यादा संख्या होने पर अपवाद का पता चलता है. इसलिए, हो सकता है कि क्रैश होने के बजाय, आपको इस्तेमाल के अन्य उदाहरणों के रुकने या धीमे होने की समस्या दिखे. उदाहरण के लिए, झलक का रुक जाना/धीमा हो जाना. (Ic12da, b/175851631)
- सिर्फ़ Preview या ImageCapture के बाइंड होने पर गड़बड़ियों की सूचना देने के लिए, ExtensionsErrorListener को ठीक किया गया है. (I5ae39)
- ImageCapture की परफ़ॉर्मेंस में गिरावट की समस्या को ठीक किया गया है. इसके लिए, फ़ोटो लेने से पहले, सेव की गई इमेज की जगह की पुष्टि करने की सुविधा को हटाया गया है. इस बदलाव के बाद, अगर सेव करने की जगह अमान्य है, तो फ़ोटो लेने के बाद इमेज को सेव करने की कोशिश की जाएगी. इसलिए, फ़ोटो सेव न होने की सूचना मिलने में ज़्यादा समय लगेगा. (I1fd4e, b/177061560)
- "File" टाइप OutputFileOptions के साथ, ImageCapture की परफ़ॉर्मेंस में गिरावट की समस्या ठीक की गई. (I5164a, b/177061560)
- दस्तावेज़ को अपडेट किया गया है. इसमें लाइब्रेरी कोड से
ProcessCameraProvider.configureInstance(...)
का इस्तेमाल न करने का सुझाव दिया गया है. (Ib8a9f)
वर्शन 1.1.0-alpha01
27 जनवरी, 2021
androidx.camera:camera-camera2:1.1.0-alpha01
, androidx.camera:camera-core:1.1.0-alpha01
, और androidx.camera:camera-lifecycle:1.1.0-alpha01
रिलीज़ किए गए हैं. वर्शन 1.1.0-alpha01 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- SM-G930T के पीछे वाले कैमरे से लिए गए JPEG फ़ॉर्मैट के फ़ोटो में, कभी-कभी इमेज डेटा खराब हो जाता है. इस समस्या को ठीक करने का तरीका शामिल किया गया है. (I52001, b/159831206)
IllegalArgumentException
समस्या को ठीक किया गया है. यह समस्या तब होती थी, जब झलक दिखाने के लिए इस्तेमाल किए जा सकने वाले सभी साइज़ 640x480 से छोटे होते थे और डिसप्ले साइज़ 640x480 से बड़ा होता था. (I2a63c, b/150506192)- जिन लाइब्रेरी में सार्वजनिक संसाधनों के बारे में साफ़ तौर पर नहीं बताया गया है (जैसे, public.xml के ज़रिए), उनमें मौजूद संसाधन अब डिफ़ॉल्ट रूप से निजी होते हैं. (Ia1dcc, b/170882230)
Camera-Camera2, Camera-Core, और Camera-Lifecycle का वर्शन 1.0.2
वर्शन 1.0.2
29 सितंबर, 2021
androidx.camera:camera-camera2:1.0.2
, androidx.camera:camera-core:1.0.2
, और androidx.camera:camera-lifecycle:1.0.2
रिलीज़ किए गए हैं. वर्शन 1.0.2 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
MAXIMIZE_QUALITY
मोड में, कैप्चर की गई फ़ोटो धुंधली दिखने की समस्या को ठीक किया गया है. (I173a9, b/193823892)- फ़्लैश के साथ ली गई इमेज के कई डिवाइसों पर गहरे रंग की दिखने की समस्या को ठीक किया गया है. (I4e510)
Camera-Camera2, Camera-Core, और Camera-Lifecycle का वर्शन 1.0.1
वर्शन 1.0.1
21 जुलाई, 2021
androidx.camera:camera-camera2:1.0.1
, androidx.camera:camera-core:1.0.1
, और androidx.camera:camera-lifecycle:1.0.1
रिलीज़ किए गए हैं. वर्शन 1.0.1 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
उस समस्या को ठीक कर दिया गया है जिसकी वजह से,
ListenableFuture
मेंsetZoomRatio
औरsetLinearZoom
के तौर पर मिले डिवाइसों को Android 11 वाले कुछ डिवाइसों पर इस्तेमाल नहीं किया जा सकता था (I716d7)कुछ डिवाइसों पर, कैमरा बंद करते समय उसके अटक जाने की समस्या को ठीक किया गया है. इसकी वजह से, कैमरे की झलक काली दिखती थी. (I34c99)
Camera-Camera2, Camera-Core, और Camera-Lifecycle का वर्शन 1.0.0
वर्शन 1.0.0
5 मई, 2021
androidx.camera:camera-camera2:1.0.0
, androidx.camera:camera-core:1.0.0
, और androidx.camera:camera-lifecycle:1.0.0
रिलीज़ किए गए हैं. वर्शन 1.0.0 में ये कमिट शामिल हैं.
1.0.0 वर्शन की मुख्य सुविधाएं
- CameraX, Preview, ImageCapture, और Analysis के साथ काम करता है
- CameraX, कैमरे के लाइफ़साइकल को मैनेज करता है. इसके लिए, इस्तेमाल में आसान एपीआई का इस्तेमाल किया जाता है
- CameraX का मकसद, एक ऐसी लेयर उपलब्ध कराना है जो Android Camera Ecosystem की कई समस्याओं को ठीक करती है
ऐसी समस्याएं जिनके बारे में जानकारी पहले से है
- ऐसी समस्याओं की सूची देखें जिनके बारे में पहले से जानकारी है
वर्शन 1.0.0-rc05
21 अप्रैल, 2021
androidx.camera:camera-camera2:1.0.0-rc05
, androidx.camera:camera-core:1.0.0-rc05
, और androidx.camera:camera-lifecycle:1.0.0-rc05
रिलीज़ किए गए हैं. वर्शन 1.0.0-rc05 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- Samsung Galaxy S7 पर, फ़्लैश चालू/ऑटो मोड में ImageCapture का इस्तेमाल करने पर, धुंधली इमेज मिलती हैं. इस समस्या को ठीक कर दिया गया है. (I30001)
वर्शन 1.0.0-rc04
24 मार्च, 2021
androidx.camera:camera-camera2:1.0.0-rc04
, androidx.camera:camera-core:1.0.0-rc04
, और androidx.camera:camera-lifecycle:1.0.0-rc04
रिलीज़ किए गए हैं. वर्शन 1.0.0-rc04 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- UMIDIGI BISON डिवाइसों पर, शुरू होने में आने वाली समस्या को ठीक किया गया (I57d9e, b/180818665)
वर्शन 1.0.0-rc03
24 फ़रवरी, 2021
androidx.camera:camera-camera2:1.0.0-rc03
, androidx.camera:camera-core:1.0.0-rc03
, और androidx.camera:camera-lifecycle:1.0.0-rc03
रिलीज़ किए गए हैं. वर्शन 1.0.0-rc03 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
ProcessCameraProvider#getInstance
के दस्तावेज़ में फ़ॉर्मैट से जुड़ी गड़बड़ी ठीक करें- CameraXConfig में setAvailableCamerasLimiter का इस्तेमाल करने पर, Robolectric टेस्ट के फ़ेल होने की समस्या ठीक की गई.
- ImageCapture की परफ़ॉर्मेंस में गिरावट की समस्या को ठीक किया गया है. इसके लिए, फ़ोटो लेने से पहले, सेव की गई इमेज की जगह की पुष्टि करने की सुविधा को हटाया गया है. यह बदलाव करने के बाद, अगर सेव करने की जगह अमान्य है, तो फ़ोटो लिए जाने के बाद इमेज को सेव करने की कोशिश की जाएगी. इसलिए, जवाब मिलने में ज़्यादा समय लगेगा
- इस बदलाव से, ImageAnalysis में इमेज की ज़्यादा से ज़्यादा संख्या होने पर अपवाद का पता चलता है. इसलिए, क्रैश होने के बजाय, आपको इस्तेमाल के अन्य उदाहरणों के रुकने या धीमे होने की समस्या दिख सकती है. उदाहरण के लिए, झलक का रुक जाना/धीमा हो जाना.
- SM-G930T के पीछे वाले कैमरे से लिए गए JPEG फ़ॉर्मैट के फ़ोटो में, कभी-कभी इमेज डेटा खराब हो जाता है. इस समस्या को ठीक करने का तरीका शामिल किया गया है. (I52001, b/159831206)
- इस बदलाव से, ImageAnalysis में इमेज की ज़्यादा से ज़्यादा संख्या होने पर अपवाद का पता चलता है. इसलिए, हो सकता है कि क्रैश होने के बजाय, आपको इस्तेमाल के अन्य उदाहरणों के रुकने या धीमे होने की समस्या दिखे. उदाहरण के लिए, झलक का रुक जाना/धीमा हो जाना. (Ic12da, b/175851631)
- CameraXConfig में setAvailableCamerasLimiter का इस्तेमाल करने पर, Robolectric टेस्ट के फ़ेल होने की समस्या ठीक की गई. (Ice307)
- ImageCapture की परफ़ॉर्मेंस में गिरावट की समस्या को ठीक किया गया है. इसके लिए, फ़ोटो लेने से पहले, सेव की गई इमेज की जगह की पुष्टि करने की सुविधा को हटाया गया है. इस बदलाव के बाद, अगर सेव करने की जगह अमान्य है, तो फ़ोटो लेने के बाद इमेज को सेव करने की कोशिश की जाएगी. इसलिए, फ़ोटो सेव न होने की सूचना मिलने में ज़्यादा समय लगेगा. (I1fd4e, b/177061560)
- "File" टाइप OutputFileOptions के साथ, ImageCapture की परफ़ॉर्मेंस में गिरावट की समस्या ठीक की गई. (I5164a, b/177061560)
वर्शन 1.0.0-rc02
27 जनवरी, 2021
androidx.camera:camera-camera2:1.0.0-rc02
, androidx.camera:camera-core:1.0.0-rc02
, और androidx.camera:camera-lifecycle:1.0.0-rc02
रिलीज़ किए गए हैं. वर्शन 1.0.0-rc02 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- IllegalArgumentException की समस्या ठीक की गई है. यह समस्या तब होती थी, जब झलक दिखाने के लिए काम करने वाले सभी साइज़ 640x480 से छोटे होते थे और डिसप्ले का साइज़ 640x480 से बड़ा होता था. (b/150506192)
कैमरे को फिर से खोलने की कोशिशों की संख्या सीमित करें. कैमरा खोलने के दौरान कुछ समस्याओं को ठीक करने की कोशिश करते समय, CameraX अब कैमरे को बार-बार खोलने की कोशिश नहीं करेगा. इसके बजाय, वह 10 सेकंड तक फिर से कोशिश करने के बाद बंद हो जाएगा.I435d2
IllegalArgumentException
समस्या को ठीक किया गया है. यह समस्या तब होती थी, जब झलक दिखाने के लिए इस्तेमाल किए जा सकने वाले सभी साइज़ 640x480 से छोटे होते थे और डिसप्ले साइज़ 640x480 से बड़ा होता था. (I2a63c, b/150506192)
वर्शन 1.0.0-rc01
16 दिसंबर, 2020
androidx.camera:camera-camera2:1.0.0-rc01
, androidx.camera:camera-core:1.0.0-rc01
, और androidx.camera:camera-lifecycle:1.0.0-rc01
रिलीज़ किए गए हैं. वर्शन 1.0.0-rc01 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- CameraFilter और Camera2Filter को CameraInfo में बदल दिया गया है. (I6883d)
- Camera2CameraControl नाम की एक्सपेरिमेंटल क्लास जोड़ी गई है, ताकि Camera2 एपीआई के साथ डाइनैमिक तरीके से इंटरऑपरेट किया जा सके. (I45cf3)
- Camera2CameraInfo#fromCameraInfo का नाम बदलकर #from कर दिया गया है. (Ia2bd6)
- CameraXConfig में, एक्सपेरिमेंट के तौर पर setAvailableCamerasLimiter API जोड़ा गया है. इससे ऐप्लिकेशन, इस्तेमाल न किए गए कैमरों को शुरू करने से बच सकते हैं. साथ ही, शुरू होने में लगने वाले समय को ऑप्टिमाइज़ कर सकते हैं. (I6cf88)
- CameraX के लॉग के लिए, कम से कम लॉगिंग लेवल सेट करने की अनुमति देने के लिए, एक्सपेरिमेंटल तरीके
CameraXConfig.Builder#setMinimumLoggingLevel()
को जोड़ा गया है. अगर इसे सेट नहीं किया जाता है, तो डिफ़ॉल्ट रूप सेLog#DEBUG
लागू हो जाता है. (Ic3245)
गड़बड़ियां ठीक की गईं
- SM-G930V के पीछे वाले कैमरे से ली गई JPEG फ़ाइलों में, इमेज का डेटा कभी-कभी खराब हो जाता है. इस समस्या को ठीक करने का तरीका शामिल किया गया है. (I5aca5, b/159831206)
- Samsung SM-A716 डिवाइसों पर, फ़्लैश हमेशा चालू होने पर या चालू होने पर, फ़ोटो खींचने के नतीजे नहीं मिलते थे. इस समस्या को ठीक कर दिया गया है. (If98b2, b/172036589)
- उस समस्या को ठीक किया गया है जिसमें
Preview.setSurfaceProvider(null)
डायल करके, झलक को रोका नहीं जा सकता था. (I3ac18) - कुछ डिवाइसों पर 4:3 इमेज कैप्चर करते समय, ओरिएंटेशन से जुड़ी समस्या को ठीक किया गया है. (I0e3fb, b/171492111)
Camera Camera2, Core, & Lifecycle वर्शन 1.0.0-beta12
11 नवंबर, 2020
androidx.camera:camera-camera2:1.0.0-beta12
, androidx.camera:camera-core:1.0.0-beta12
, और androidx.camera:camera-lifecycle:1.0.0-beta12
रिलीज़ किए गए हैं. वर्शन 1.0.0-beta12 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- Samsung A3 डिवाइसों पर, ऑटो फ़्लैश की सुविधा बंद कर दी गई है. ऐसा इसलिए किया गया है, ताकि Samsung A3 डिवाइसों पर ऑटो फ़्लैश एई मोड में फ़ोटो लेते समय, ऐप्लिकेशन क्रैश होने की समस्या को ठीक किया जा सके. (Ia5fe3, b/157535165)
- Android L (एपीआई लेवल 21 और 22) पर चलने वाले Nexus 4 डिवाइसों पर, झलक के स्ट्रेच होने की समस्या ठीक कर दी गई है. (I4d407, b/158749159)
OnImageCapturedCallback#onCaptureSuccess
बेस क्लास लागू करने पर, अब इमेज बंद नहीं होती. इससे डेवलपर को अनचाहे व्यवहार से बचाने में मदद मिलती है. डेवलपर को इमेज बंद करने के लिए, super.onCaptureSuccess पर भरोसा नहीं करना चाहिए. (Ifbf9c)- Experimental एनोटेशन के androidx वैरिएंट को बंद कर दिया गया है, ताकि Kotlin के साथ समानता बनी रहे. इसे RequiresOptIn एनोटेशन से बदल दिया गया है. साथ ही, Java-facing linter को अपडेट किया गया है, ताकि यह नए Kotlin एनोटेशन और नए androidx वैरिएंट, दोनों के साथ काम कर सके. (I52495, b/151331381)
Camera-Camera2 Version 1.0.0-beta11
14 अक्टूबर, 2020
androidx.camera:camera-camera2:1.0.0-beta11
रिलीज़ हो गया है. वर्शन 1.0.0-beta11 में ये कमिट शामिल हैं.
नई सुविधाएं
- Android 11
CONTROL_ZOOM_RATIO
API के साथ काम करता है. इससे Android 11 या इसके बाद के वर्शन वाले डिवाइसों पर ज़ूम किया जा सकता है. इन डिवाइसों में मान्यCONTROL_ZOOM_RATIO_RANGE
मौजूद होता है. (I62cc6)
गड़बड़ियां ठीक की गईं
- कैमरा आईडी के पूर्णांक न होने पर, NumberFormatException की समस्या को ठीक किया गया है. (Ib2228)
- CameraX को शुरू करने और bindToLifecycle को कॉल करने में लगने वाले समय को कम किया गया है (I61dc5)
- UseCase बनाने के लिए, CameraX को शुरू करने की ज़रूरत नहीं होती. इस्तेमाल के हर मामले के लिए कॉन्फ़िगरेशन, Camera instance से अटैच होने के बाद UseCase पर सेट किए जाते हैं. सार्वजनिक एपीआई के लिए, यह
ProcessCameraProvider.bindToLifecycle()
है. (Ia5411) <UseCase>.getTargetRotation()
,Surface.ROTATION_0
दिखाता है. ऐसा तब होता है, जब इसे Camera इंस्टेंस से अटैच करने से पहले कॉल किया जाता है. हालांकि, ऐसा तब नहीं होता, जब Builder या UseCase पर targetRotation सेट किया गया हो. (I80fcd)
Camera-Core वर्शन 1.0.0-beta11
14 अक्टूबर, 2020
androidx.camera:camera-core:1.0.0-beta11
रिलीज़ हो गया है. वर्शन 1.0.0-beta11 में ये कमिट शामिल हैं.
नई सुविधाएं
- Android 11 CONTROL_ZOOM_RATIO
एपीआई के साथ काम करता है. इससे Android 11 या इसके बाद वाले वर्शन वाले डिवाइसों पर ज़ूम इन किया जा सकता है. इसके लिए, डिवाइस में मान्य CONTROL_ZOOM_RATIO_RANGE
होना चाहिए. (I62cc6)
गड़बड़ियां ठीक की गईं
- कैमरा आईडी के पूर्णांक न होने पर, NumberFormatException की समस्या को ठीक किया गया है. (Ib2228)
- UseCase बनाने के लिए, CameraX को शुरू करने की ज़रूरत नहीं होती. इस्तेमाल के हर मामले के लिए कॉन्फ़िगरेशन, Camera instance से अटैच होने के बाद UseCase पर सेट किए जाते हैं. सार्वजनिक एपीआई के लिए, यह
ProcessCameraProvider.bindToLifecycle()
है. (Ia5411) <UseCase>.getTargetRotation()
,Surface.ROTATION_0
दिखाता है. ऐसा तब होता है, जब इसे Camera इंस्टेंस से अटैच करने से पहले कॉल किया जाता है. हालांकि, ऐसा तब नहीं होता, जब Builder या UseCase पर targetRotation सेट किया गया हो. (I80fcd)
Camera-Core वर्शन 1.0.0-beta10
23 सितंबर, 2020
androidx.camera:camera-core:1.0.0-beta10
रिलीज़ हो गया है. वर्शन 1.0.0-beta10 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- इमेज कैप्चर करने के लिए, फ़ाइल सेव करने की जगह की पुष्टि करने से जुड़ी गड़बड़ी ठीक की गई (I8c565, b/167697553)
Camera-Camera2 Version 1.0.0-beta10
23 सितंबर, 2020
androidx.camera:camera-camera2:1.0.0-beta10
रिलीज़ हो गया है. वर्शन 1.0.0-beta10 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- Camera-Core 1.0.0-beta10 के साथ काम करने के लिए रिलीज़ किया गया
Camera-Camera2 Version 1.0.0-beta09
16 सितंबर, 2020
androidx.camera:camera-camera2:1.0.0-beta09
रिलीज़ हो गया है. वर्शन 1.0.0-beta09 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- स्टैटिक तरीके उपलब्ध कराने के बजाय, Camera2CameraInfo को CameraInfo इंस्टेंस मिलता है. इससे Camera2 से जुड़ी जानकारी को वापस पाया जा सकता है. (I5b844)
गड़बड़ियां ठीक की गईं
- टैबलेट डिवाइसों पर, टारगेट आसपेक्ट रेशियो से जुड़ी समस्या ठीक की गई. अगर टारगेट आसपेक्ट रेशियो
AspectRatio.RATIO_16_9
के तौर पर सेट किया गया है, तो 16:9 का साइज़ चुना जाना चाहिए. (Ib7fcf, b/151969438) InitializationException
को थ्रो करें, ताकि ऐप्लिकेशन, CameraCharacteristics बनाते समय हुई AssertionError को आसानी से हैंडल कर सके. (I89c8c, b/160524721)- ExposureCompensation के लिए एक्सपेरिमेंटल इंटरफ़ेस जोड़े गए (If96c7)
Camera-Core वर्शन 1.0.0-beta09
16 सितंबर, 2020
androidx.camera:camera-core:1.0.0-beta09
रिलीज़ हो गया है. वर्शन 1.0.0-beta09 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- उस गड़बड़ी को ठीक किया गया है जिसमें UseCaseGroup पर व्यूपोर्ट को non-null के तौर पर मार्क किया गया था. डेवलपर को व्यूपोर्ट सेट किए बिना व्यूपोर्ट बनाने की सुविधा मिलनी चाहिए. (Ie3d2e)
ExposureCompensation
के लिए एक्सपेरिमेंटल इंटरफ़ेस जोड़े गए (If96c7)- झलक देखने के लिए, टारगेट को किसी भी तरह से घुमाने की अनुमति दें. बदलाव की जानकारी का हिसाब लगाया जाता है और उपयोगकर्ता को तुरंत भेज दिया जाता है. इसके लिए, नए
TranformationInfoListener
कॉलबैक का इस्तेमाल किया जाता है. (I21470)
गड़बड़ियां ठीक की गईं
- कुछ डिवाइसों पर फ़्लैश बंद न होने की समस्या को ठीक किया गया है. ऐसा तब होता है, जब फ़ोटो लेने के लिए फ़्लैश मोड को
FLASH_MODE_ON
पर सेट किया जाता है और फ़्लैश चालू होने पर इसेFLASH_MODE_OFF
पर बदल दिया जाता है. यह समस्या, टॉर्च मोड चालू होने जैसी है. (Ib4451, b/162568128) - अगर एक्सटेंशन इफ़ेक्ट चालू है और वेंडर लाइब्रेरी को आउटपुट सर्फ़ेस पर कोई खास प्रोसेस करनी है, तो TextureView का इस्तेमाल करने के लिए, PreviewView को फ़ोर्स किया जाता है. (I0c3cc)
ProcessCameraProvider.getInstance(Context)
को गतिविधि/फ़्रैगमेंट का कॉन्टेक्स्ट पास किए जाने पर, गतिविधि/फ़्रैगमेंट लीक होने की समस्या ठीक की गई.
ऐसी समस्याएं जिनके बारे में जानकारी पहले से है
- ViewPort सेट होने पर, HAL में इमेज बफ़र को घुमाने वाले डिवाइसों पर ImageCapture का क्रॉप रेक्ट गलत हो सकता है. इस समस्या को अगले वर्शन में ठीक कर दिया जाएगा.
Camera-Camera2 Version 1.0.0-beta08
19 अगस्त, 2020
androidx.camera:camera-camera2:1.0.0-beta08
रिलीज़ हो गया है. वर्शन 1.0.0-beta08 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- bindToLifecycle को ऑप्टिमाइज़ किया गया है, ताकि यह मुख्य थ्रेड पर तेज़ी से चल सके. (I1d57e)
- DisplayOrientedMeteringPointFactory, CameraSelector के बजाय CameraInfo इंस्टेंस लेता है. इससे यह पता चलता है कि फ़ैक्ट्री किस कैमरे के लिए पॉइंट जनरेट करेगी. DisplayOrientedMeteringPointFactory का इस्तेमाल करने वाली सभी क्लास, CameraSelector के बजाय CameraInfo इंस्टेंस का इस्तेमाल करती हैं. (I400c1)
- अपने-आप तय होने वाले रिज़ॉल्यूशन के आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) के साइज़ ग्रुपिंग से जुड़ी समस्या को ठीक किया गया है. इस समस्या में, टारगेट रिज़ॉल्यूशन सेटिंग 2016x1080 होने पर, 16:9 mod16 साइज़ (864x480) चुना जाता था. साथ ही, 1920x1080 16:9 साइज़ भी उपलब्ध होता था. (I53167, b/159363774)
- CameraControl से जुड़ी उस समस्या को ठीक किया गया है जिसमें रेस कंडीशन की वजह से, यह काम नहीं कर पाता है (I2279f, b/152333890, b/160714166)
Camera-Core वर्शन 1.0.0-beta08
19 अगस्त, 2020
androidx.camera:camera-core:1.0.0-beta08
रिलीज़ हो गया है. वर्शन 1.0.0-beta08 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
DisplayOrientedMeteringPointFactory
,CameraSelector
के बजायCameraInfo
इंस्टेंस लेता है. इसलिए, यह सीधे तौर पर मैप करता है कि फ़ैक्ट्री किस कैमरे के लिए पॉइंट जनरेट करेगी.DisplayOrientedMeteringPointFactory
का इस्तेमाल करने वाली सभी क्लास,CameraSelector
के बजायCameraInfo
इंस्टेंस का इस्तेमाल करती हैं. (I400c1)
गड़बड़ियां ठीक की गईं
- इमेज कैप्चर करने के लिए, कैमरे की दिशा के आधार पर मेटाडेटा में, फ़्लिप हॉरिज़ॉन्टल फ़्लैग को बदलें. (I28499)
Context.getApplicationContext()
से Application ऑब्जेक्ट को वापस नहीं भेजने वाले Context का इस्तेमाल करने पर, अब इनिशियलाइज़ेशन क्रैश नहीं होना चाहिए. (I3d3c9, b/160817073)
Camera-Camera2 Version 1.0.0-beta07
22 जुलाई, 2020
androidx.camera:camera-camera2:1.0.0-beta07
रिलीज़ हो गया है. वर्शन 1.0.0-beta07 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- Android 5.0 वाले लेगसी डिवाइस पर, झलक के स्ट्रेच होने की समस्या को ठीक किया गया है. (I0c03a)
- JPEG फ़ॉर्मैट में काम करने वाले कुछ ऐसे साइज़ हटाए गए हैं जिनकी वजह से, कुछ डिवाइसों पर WYSIWYG की समस्या आ सकती है. (Ib5128)
Camera-Core वर्शन 1.0.0-beta07
22 जुलाई, 2020
androidx.camera:camera-core:1.0.0-beta07
रिलीज़ हो गया है. वर्शन 1.0.0-beta07 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
FIT_CENTER
,FIT_START
, औरFIT_END
फ़िट स्टाइल कोFIT
के साथ मर्ज करें.FIT
का मतलब है कि लौटाया गया क्रॉप रेक्ट, सेंसर रेक्ट का ज़्यादा से ज़्यादा हिस्सा होगा. (Ia73c3)- झलक की क्रॉप आयत को व्यूपोर्ट के हिसाब से कॉन्फ़िगर किया जाता है. असली उपयोगकर्ताओं को सिर्फ़ वह हिस्सा दिखना चाहिए जो क्रॉप रेक्ट में शामिल है. (I142a4)
गड़बड़ियां ठीक की गईं
- Android 5.0 वाले लेगसी डिवाइस पर, झलक के स्ट्रेच होने की समस्या को ठीक किया गया है. (I0c03a)
- इस्तेमाल के उदाहरणों को अनबाइंड करते समय,
ConcurrentModificationException
अपवाद से जुड़ी समस्या ठीक की गई. (I371c0)
Camera-Camera2 वर्शन 1.0.0-beta06
24 जून, 2020
androidx.camera:camera-camera2:1.0.0-beta06
रिलीज़ हो गया है. वर्शन 1.0.0-beta06 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- कैमरा आईडी और CameraCharacteristics के हिसाब से कैमरों को फ़िल्टर करने के लिए, एक्सपेरिमेंटल इंटरफ़ेस जोड़े गए. (I28f61)
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक किया गया है जिसकी वजह से Samsung Galaxy S7 पर startFocusAndMetering फ़ंक्शन, फ़ोकस करने में समस्या आ रही थी. (If3be7, b/159039233)
- ऐप्लिकेशन बंद करने के बाद, कैमरे के बंद न होने की समस्या ठीक की गई. (I7a7b3)
- कैमरा को बार-बार स्विच करने पर, PreviewView के SurfaceView को लागू करने के दौरान झलक नहीं दिखती है. इस समस्या को ठीक किया गया है (I920ce)
- अगर तय किए गए किसी भी MeteringPoint से, मीटरिंग रेक्टैंगल जनरेट नहीं किए जा सकते, तो
CameraControl#startFocusAndMetering
काम नहीं करेगा. (Id53ce)
Camera-Core वर्शन 1.0.0-beta06
24 जून, 2020
androidx.camera:camera-core:1.0.0-beta06
रिलीज़ हो गया है. वर्शन 1.0.0-beta06 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- कैमरा आईडी और CameraCharacteristics के हिसाब से कैमरों को फ़िल्टर करने के लिए, एक्सपेरिमेंटल इंटरफ़ेस जोड़े गए. (I28f61)
गड़बड़ियां ठीक की गईं
- CameraX को अब
ProcessCameraProvider#configureInstance()
के साथ कॉन्फ़िगर किया जा सकता है. इसके बाद,ProcessCameraProvider#getInstance()
को कॉल किया जा सकता है. इससेCameraXConfig.Provider
को ऐप्लिकेशन के ऐप्लिकेशन क्लास में लागू किए बिना,CameraXConfig
को पसंद के मुताबिक बनाया जा सकता है. (Ia1a8d) - अगर तय किए गए किसी भी MeteringPoint से, मीटरिंग रेक्टैंगल जनरेट नहीं किए जा सकते, तो
CameraControl#startFocusAndMetering
काम नहीं करेगा. (Id53ce)
Camera-Camera2 Version 1.0.0-beta05
10 जून, 2020
androidx.camera:camera-camera2:1.0.0-beta05
रिलीज़ हो गया है. वर्शन 1.0.0-beta05 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- फ़ोन के 'परेशान न करें' मोड में होने पर, CameraX को शुरू करते समय ऐप्लिकेशन के क्रैश होने की समस्या ठीक की गई.
InitializationException
में एकCameraUnavailableException
होता है, जिसे ऐप्लिकेशन क्रैश होने के बजाय, इनिशियलाइज़ेशन के नतीजे केListenableFuture
पर सेट किया जाएगा. (I9909a, b/149413835) - उन डिवाइसों पर
startFocusAndMetering
को कॉल करते समय क्रैश होने की समस्या ठीक की गई है जहांCONTROL_AF_STATE
शून्य है. (Ife55e, b/157084254)
Camera-Core वर्शन 1.0.0-beta05
10 जून, 2020
androidx.camera:camera-core:1.0.0-beta05
रिलीज़ हो गया है. वर्शन 1.0.0-beta05 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- फ़ोन के 'परेशान न करें' मोड में होने पर, CameraX को शुरू करते समय ऐप्लिकेशन के क्रैश होने की समस्या ठीक की गई. ऐप्लिकेशन क्रैश होने के बजाय,
InitializationException
में मौजूदCameraUnavailableException
को, शुरू होने के नतीजे केListenableFuture
पर सेट किया जाएगा. (I9909a, b/149413835)
गड़बड़ियां ठीक की गईं
setTargetResolution
औरsetTargetRotation
के अपडेट किए गए javadocs. (Iae16f)
Camera-Camera2 Version 1.0.0-beta04
27 मई, 2020
androidx.camera:camera-camera2:1.0.0-beta04
रिलीज़ हो गया है. वर्शन 1.0.0-beta04 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- इस अपडेट के बाद, ऐप्लिकेशन को
Camera2Interop
के ज़रिए, किसी भी camera2 कैप्चर अनुरोध पैरामीटर को सेट करने की अनुमति मिल गई है. इससे ऐप्लिकेशन क्रैश नहीं होगा. कृपया ध्यान दें कि पैरामीटर को बदलने की वजह से होने वाली समस्याओं के लिए, Google ज़िम्मेदार नहीं होगा. Camera2Interop का इस्तेमाल करके पैरामीटर बदलने पर, यह ज़रूरी नहीं है कि कैमरा ठीक से काम करे. (Ibe5a1, b/149103700) - छद्म स्थान-भाषा का इस्तेमाल करने वाले डिवाइस पर ऐप्लिकेशन का इस्तेमाल करते समय, अपने-आप शुरू होने की सुविधा ठीक कर दी गई है. (I3bef3, b/154767663)
- डिटैच किए गए इस्तेमाल के उदाहरण से जुड़े गड़बड़ी के लॉग को Camera2CameraImpl पर डीबग लॉग में बदल दिया गया है. (I1a565, b/154422490)
- उस समस्या को ठीक किया गया है जिसमें फ़्लैश चालू होने के बावजूद, कभी-कभी इमेज बहुत गहरे रंग की हो जाती थी. (I5d9fa, b/149729613)
- उस गड़बड़ी को ठीक किया गया है जिसमें
ImageCapture
सेImageProxy
में बफ़र किए गए कॉन्टेंट को रिवाइंड नहीं किया जा सका (I0c455, b/153249512) - उन समस्याओं को ठीक किया गया है जिनमें ImageCapture को सिर्फ़ बाइंड करने पर: (1) MAX_QUALITY का इस्तेमाल करके फ़ोटो नहीं ली जा सकती थीं; (2) ऑटो एक्सपोज़र काम न करने की वजह से इमेज की क्वालिटी खराब हो जाती थी. (I17782, b/145326998)
- जब CameraX को किसी दूसरी प्रोसेस या कोडपाथ से डिसकनेक्ट किया जाता है, तब कैमरे को फिर से खोलने की सुविधा को बेहतर बनाया गया है. (I1fbc3, b/153714651)
Camera-Core Version 1.0.0-beta04
27 मई, 2020
androidx.camera:camera-core:1.0.0-beta04
रिलीज़ हो गया है. वर्शन 1.0.0-beta04 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- इसमें एक एक्सपेरिमेंटल एपीआई,
CameraXConfig.Builder#setSchedulerHandler()
जोड़ा गया है. इसका इस्तेमाल, CameraX कैमरा स्टैक में इंटरनल तौर पर इस्तेमाल किए जाने वाले हैंडलर को सेट करने के लिए किया जाता है. इस नए एपीआई औरCameraXConfig.Builder#setCameraExecutor()
की मदद से, CameraX कैमरा स्टैक के इस्तेमाल किए जा रहे थ्रेड को पूरी तरह से कंट्रोल किया जा सकेगा. (I7bf32, b/121160431)
गड़बड़ियां ठीक की गईं
ImageAnalysis
में क्रैश होने की समस्या को ठीक किया गया है. यह समस्या तब होती है, जबImageReaderProxy
बंद होने के बादImageProxy
को ऐक्सेस किया जाता है. इससे यह भी पक्का होता है किAnalyzer
को मिले सभीImageProxy
,ImageReaderProxy
के बंद होने से पहले बंद हो जाने चाहिए. (I4b299, b/145956416, b/154155377, b/156357269)CameraInfo
पैरामीटर कोPreviewView#createSurfaceProvider()
से हटा दिया गया है. अबPreviewView
, इसेSurfaceRequest
से अंदरूनी तौर पर वापस पाता है. (If18f0, b/154652477)- छद्म स्थान-भाषा का इस्तेमाल करने वाले डिवाइस पर ऐप्लिकेशन का इस्तेमाल करते समय, अपने-आप शुरू होने की सुविधा ठीक कर दी गई है. (I3bef3, b/154767663)
- उस समस्या को ठीक किया गया है जिसमें फ़्लैश चालू होने के बावजूद, कभी-कभी इमेज बहुत गहरे रंग की हो जाती थी. (I5d9fa, b/149729613)
ImageAnalysis
से जुड़ी समस्या को ठीक किया गया है. इसमें setAnalyzer/clearAnalyzer को कई बार कॉल करने पर, इमेज का विश्लेषण करने के लिए ऐनलाइज़र को इमेज नहीं मिलती थी. (I6169f, b/151605317, b/153514544)- उस गड़बड़ी को ठीक किया गया है जिसमें
ImageCapture
सेImageProxy
में बफ़र किए गए कॉन्टेंट को रिवाइंड नहीं किया जा सका (I0c455, b/153249512) - उस समस्या को ठीक किया गया है जिसकी वजह से,
CameraManager
में दी गई सूची में मौजूद पहला कैमरा हमेशा इस्तेमाल के लिए नहीं चुना जाता था. (I4c624, b/153418028) Preview.SurfaceProvider
को सेट करने की वजह से, कुछ समय के लिए क्रैश होने की समस्या को ठीक किया गया है. ऐसा इसलिए होता था, क्योंकिPreview.SurfaceProvider
, पहले अनुरोध किए गए सरफेस को रिलीज़ नहीं करता था.“java.lang.IllegalStateException: Camera surface session should only fail with request cancellation”
(I8e4e7, b/155936225)
Camera-Camera2 Version 1.0.0-beta03
15 अप्रैल, 2020
androidx.camera:camera-camera2:1.0.0-beta03
रिलीज़ हो गया है. वर्शन 1.0.0-beta03 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
camera-core
को रिलीज़ करने के लिए, गड़बड़ियों को ठीक किया गया
Camera-Core Version 1.0.0-beta03
15 अप्रैल, 2020
androidx.camera:camera-core:1.0.0-beta03
रिलीज़ हो गया है. वर्शन 1.0.0-beta03 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- beta03 में हुई रिग्रेशन की समस्या को ठीक किया गया है. इस समस्या में, शून्य
UseCase
के साथbindToLifecycle()
को कॉल करने पर थ्रोन अपवाद होता था. इस कुकी का इस्तेमाल,UseCase
को बाइंड किए बिनाCamera
को वापस पाने से रोकने के लिए किया जाता है.
Camera-Camera2 Version 1.0.0-beta02
1 अप्रैल, 2020
androidx.camera:camera-camera2:1.0.0-beta02
रिलीज़ हो गया है. वर्शन 1.0.0-beta02 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
ImageCapture
से जनरेट हुएImageProxy
केImageInfo.getRotationDegrees()
को ठीक किया गया है, ताकि यह EXIF़ ओरिएंटेशन रोटेशनल वैल्यू से मेल खाए. (Id4281, b/150802561)- डिफ़ॉल्ट CameraX/Camera2 को लागू करने के लिए, अब
build.gradle
में CameraX डिपेंडेंसी को साफ़ तौर पर क्रम से लगाने की ज़रूरत नहीं है. ऐसे मामलों में जहां स्ट्रिक्ट डिपेंडेंसी के बारे में बताना ज़रूरी है वहां अब सभी CameraX डिपेंडेंसी को बिल्ड फ़ाइल में शामिल किया जा सकता है. (I46e88) - उन डिवाइसों पर होने वाली
IllegalArgumentException
समस्या को ठीक किया गया है जहां डिसप्ले का साइज़ 640x480 से कम है. (Ife3f2, b/150506192) bindToLifecycle
को ठीक किया गया है, ताकि यह सिर्फ़ तब UseCase में बदलाव करे, जब यह सही तरीके से बाइंड हो जाए. पहले,bindToLifecycle
को कॉल करने पर, रिज़ॉल्यूशन की कैलकुलेशन करने के लिए UseCase अपडेट किया जाता था. अब इसे कैलकुलेशन करने के लिए, UseCase को अपडेट करने की ज़रूरत नहीं है (I78d9e)
Camera-Core वर्शन 1.0.0-beta02
1 अप्रैल, 2020
androidx.camera:camera-core:1.0.0-beta02
रिलीज़ हो गया है. वर्शन 1.0.0-beta02 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
ImageCapture
से जनरेट हुएImageProxy
केImageInfo.getRotationDegrees()
को ठीक किया गया है, ताकि यह EXIF़ ओरिएंटेशन रोटेशनल वैल्यू से मेल खाए. (Id4281, b/150802561)bindToLifecycle
को ठीक किया गया है, ताकि यह सिर्फ़ तब UseCase में बदलाव करे, जब यह सही तरीके से बाइंड हो जाए. पहले,bindToLifecycle
को कॉल करने पर, रिज़ॉल्यूशन की कैलकुलेशन करने के लिए UseCase अपडेट किया जाता था. अब इसे कैलकुलेशन करने के लिए, UseCase को अपडेट करने की ज़रूरत नहीं है (I78d9e)- उस समस्या को ठीक किया गया है जिसमें
Preview
को एक से ज़्यादा बार कॉल करने के बाद, झलक दिखाने वाली जगह बदलने परPreview
के कैप्चर सेशन को अपडेट नहीं किया जा रहा था.Preview.setSurfaceProvider()
Camera-Camera2 वर्शन 1.0.0-beta01
26 फ़रवरी, 2020
androidx.camera:camera-camera2:1.0.0-beta01
रिलीज़ हो गया है. वर्शन 1.0.0-beta01 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
SurfaceRequest.setSurface(Surface)
का नाम बदलकरSurfaceRequest.provideSurface(Surface)
औरSurfaceRequest.setWillNotComplete()
का नाम बदलकरSurfaceRequest.willNotProvideSurface()
किया गया. (I224fe)ImageCapture.setTargetRotation()
का इस्तेमाल करके, टारगेट रोटेशन वैल्यू बदलने के बाद, सेव की गई इमेज के आसपेक्ट रेशियो के सही न होने की समस्या को ठीक किया गया है. (I474ea, b/148763432)- ProGuard चालू होने पर, ऐप्लिकेशन के वैरिएंट के इनिशियलाइज़ेशन की समस्या ठीक की गई. ऐसा,
CameraXConfig
की डिफ़ॉल्ट सेवा देने वाली कंपनी को सेट करने वाले फ़्लैग को सुरक्षित रखकर किया गया. (I2d6c1)
Camera-Core वर्शन 1.0.0-beta01
26 फ़रवरी, 2020
androidx.camera:camera-core:1.0.0-beta01
रिलीज़ हो गया है. वर्शन 1.0.0-beta01 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
SurfaceRequest.provideSurface()
पर मौजूदListenableFuture
कोExecutor
औरCallback
से बदला गया. इससे एपीआई का इस्तेमाल करना आसान हो जाता है. अबprovideSurface()
पर अपवादों को मैनेज करने की ज़रूरत नहीं होती. साथ ही, यह भी पक्का किया जाता है किprovideSurface()
कॉलबैक को रद्द नहीं किया जा सकता. ऐसा इसलिए किया गया है, ताकि पुराने डिवाइसों पर क्रैश होने की समस्या न हो. यह समस्या, समय से पहले सर्फ़ेस रिलीज़ करने की वजह से होती है.SurfaceRequest.Result
ऑब्जेक्ट का इस्तेमाल अब यह ट्रैक करने के लिए किया जाता है किSurfaceRequest
, दिए गएSurface
का इस्तेमाल कैसे करता है. (I7854b)SurfaceRequest.setSurface(Surface)
का नाम बदलकरSurfaceRequest.provideSurface(Surface)
औरSurfaceRequest.setWillNotComplete()
का नाम बदलकरSurfaceRequest.willNotProvideSurface()
किया गया. (I224fe)
गड़बड़ियां ठीक की गईं
ImageCapture.setTargetRotation()
का इस्तेमाल करके, टारगेट रोटेशन वैल्यू बदलने के बाद, सेव की गई इमेज के आसपेक्ट रेशियो के सही न होने की समस्या को ठीक किया गया है. (I474ea, b/148763432)- ProGuard चालू होने पर, ऐप्लिकेशन के वैरिएंट के इनिशियलाइज़ेशन की समस्या ठीक की गई. ऐसा,
CameraXConfig
की डिफ़ॉल्ट सेवा देने वाली कंपनी को सेट करने वाले फ़्लैग को सुरक्षित रखकर किया गया. (I2d6c1) - फ़्लैश मोड वाले एपीआई के दस्तावेज़ अपडेट किए गए हैं, ताकि संभावित वैल्यू शामिल की जा सकें. (I4a3ec)
Camera-Camera2 Version 1.0.0-alpha10
10 फ़रवरी, 2020
androidx.camera:camera-camera2:1.0.0-alpha10
रिलीज़ हो गया है. वर्शन 1.0.0-alpha10 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
INFO_SUPPORTED_HARDWARE_LEVEL_LEGACY
डिवाइसों पर बेहतर स्थिरता. इसके लिए, यह पक्का किया गया है किSurface
s को सिर्फ़ Camera2 के इस्तेमाल के दौरान सेव किया जाए. (I9dac2)- LEGACY डिवाइसों पर, कम रोशनी वाली झलक की समस्या को ठीक किया गया है. इसके लिए,
CONTROL_AE_TARGET_FPS_RANGE
को सही तरीके से अडजस्ट किया गया है. (1224638)
Camera-Core Version 1.0.0-alpha10
10 फ़रवरी, 2020
androidx.camera:camera-core:1.0.0-alpha10
रिलीज़ हो गया है. वर्शन 1.0.0-alpha10 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
ImageCapture
को अपडेट किया गया है, ताकि इमेज कोUri
औरOutputStream
में सेव किया जा सके.takePicture
के ज़्यादा इस्तेमाल किए गए तरीकों को एक में मिला दिया गया है.Uri
को कैननिकल उदाहरण के तौर पर इस्तेमाल करने के लिए, टेस्ट ऐप्लिकेशन को अपडेट किया गया. (Ia3bec)Preview.PreviewSurfaceProvider
का नाम बदलकरPreview.SurfaceProvider
कर दिया गया है.SurfaceProvider
के लिए, अब डेवलपर को अपनाListenableFuture
बनाने की ज़रूरत नहीं है. साथ ही,Surface
देने का काम अब नएSurfaceRequest
ऑब्जेक्ट के ज़रिए किया जाता है.Preview.getPreviewSurfaceProvider()
तरीके को हटा दिया गया है, क्योंकिPreview
कोPreviewView
जैसी अन्य क्लास के साथ जोड़ने पर, इसका गलत इस्तेमाल किया जा सकता है. (I20105)getTargetRotation()
औरgetTargetName()
कोPreview
में जोड़ा गया. (Iceee7)getTargetRotation()
,getBackpressureStrategy()
, औरgetImageQueueDepth()
कोImageAnalysis
में जोड़ा गया. (I9d6d9)ImageCapture()
मेंgetTargetRotation()
औरgetCaptureMode()
को जोड़ा गया (I5bc17)ImageCapture.OnImageSavedCallback.onError()
औरImageCapture.OnImageCapturedCallback.onError()
में पहले पास किए गए आर्ग्युमेंट को अब एक ही आर्ग्युमेंटImageCaptureException
से बदल दिया गया है. इसमें अब भी वह सारी जानकारी शामिल है जो पहले पास की गई थी.ImageCapture.OnImageSavedCallback.onImageSaved()
में पहले पास किए गए फ़ाइल आर्ग्युमेंट को हटा दिया गया है. (I750d2)Preview
औरImageCapture
क्लास को अब फ़ाइनल के तौर पर मार्क कर दिया गया है. (I2500b)- एपीआई को अपडेट कर दिया गया है. इसमें
CameraInfo
केgetZoomRatio()
,getMaxZoomRatio()
,getMinZoomRatio()
, औरgetLinearZoom()
तरीकों कोgetZoomState()
में मर्ज कर दिया गया है. इससेZoomState
इंस्टेंस मिलता है. (Ib19fe) - एपीआई फ़ील्ड
OPTION_TARGET_CLASS
औरOPTION_TARGET_NAME
कोCameraXConfig
से हटा दिया गया है, क्योंकि इनका इस्तेमाल सिर्फ़ इंटरनल लाइब्रेरी के लिए किया जाता है.CameraXConfig.Builder
के लिए कंस्ट्रक्टर हटाया गया. (I96912) - ऐप्लिकेशन के लिए, CameraX को शुरू करने के लिए
Application
को बढ़ाना ज़रूरी नहीं है. जब तकcamera-camera2
आर्टफ़ैक्ट को ऐप्लिकेशन केbuild.gradle
में शामिल किया जाता है, तब तक CameraX को डिफ़ॉल्ट Camera2 कॉन्फ़िगरेशन के साथ शुरू किया जाएगा. (I58ff5) (b/146923574)
Camera-Camera2 वर्शन 1.0.0-alpha09
22 जनवरी, 2020
androidx.camera:camera-camera2:1.0.0-alpha09
रिलीज़ हो गया है. वर्शन 1.0.0-alpha09 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
Camera2 कैमरा आईडी निकालने के लिए, camera2 इंटरऑप पाथ जोड़ा गया.
Camera2CameraInfo.extractCameraId()
का इस्तेमाल करके,CameraInfo
से कैमरा आईडी निकाला जा सकता है. इस कोड सैंपल में, इसे इस्तेमाल करने का तरीका बताया गया है:Camera camera = provider.bindToLifecycle(...); String cameraId = Camera2CameraInfo.extractCameraId(camera.getCameraInfo());
Camera2CameraInfo
क्लास के लिएExperimentalCamera2Interop
markerClass की ज़रूरत होती है.
Camera-Core वर्शन 1.0.0-alpha09
22 जनवरी, 2020
androidx.camera:camera-core:1.0.0-alpha09
रिलीज़ हो गया है. वर्शन 1.0.0-alpha09 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
SurfaceOrientedMeteringPointFactory
पैरामीटरuseCaseForSurface
का नाम बदलकरuseCaseForAspectRatio
कर दिया गया है. साथ ही, रेफ़रंस दस्तावेज़ को बड़ा कर दिया गया है.FocusMeteringAction.Builder.from()
तरीकों की जगह कंस्ट्रक्टरFocusMeteringAction.Builder()
का इस्तेमाल किया जाता है.DisplayOrientedMeteringPointFactory(android.content.Context, androidx.camera.core.CameraSelector, float, float)
को हटाया गया. ऐप्लिकेशन को ऐसे कंस्ट्रक्टर का इस्तेमाल करना चाहिए जोDisplay
पैरामीटर लेता हो और मौजूदा डिसप्ले में पास करता हो.MeteringMode
और 3A फ़्लैग के बारे में, फ़ोकस और मीटरिंग एपीआई के लिए Javadoc में सुधार किए गए हैं. साथ ही,Display
पैरामीटर के इस्तेमाल के बारे में भी सुधार किए गए हैं.setZoomRatio
औरsetLinearZoom
के लिए रेफ़रंस दस्तावेज़ को ज़्यादा जानकारी के साथ अपडेट किया गया है.
गड़बड़ियां ठीक की गईं
- कैमरों को बंद करने और फिर खोलने पर होने वाली समस्याओं को ठीक किया गया है. इन समस्याओं की वजह से, "ज़रूरी शर्तें" की जाँच पूरी नहीं हो पाती थी.
- टॉर्च और ज़ूम एपीआई का इस्तेमाल करते समय होने वाली
ConcurrentModificationException
गड़बड़ी को ठीक किया गया. - अब mod16 डाइमेंशन का साइज़ उपलब्ध होने पर, अनुरोध किए गए रिज़ॉल्यूशन के आस-पास के रिज़ॉल्यूशन चुने जा सकते हैं. इस समस्या को ठीक कर दिया गया है.
startFocusMetering
औरcancelFocusMetering
एपीआई अब दस्तावेज़ में बताए गए तरीके से काम करते हैं. साथ ही, ये सही समय पर काम करते हैं और गड़बड़ी होने पर, उसकी जानकारी देते हैं.- उस समस्या को ठीक किया गया है जिसमें किसी ऐसे डिवाइस पर क्रॉप किए गए पहलू के अनुपात के साथ किसी खास टारगेट रिज़ॉल्यूशन का अनुरोध किया गया था जो इस तरह के साइज़ के साथ काम नहीं करता है. अब, जब भी उपलब्ध होगा, तब ओरिजनल अनुरोध को पूरा करने के लिए, बिना काटे गए साइज़ की ऐसी इमेज चुनी जाएगी जिसका रिज़ॉल्यूशन सही हो.
Camera-Camera2 वर्शन 1.0.0-alpha08
18 दिसंबर, 2019
androidx.camera:camera-camera2:1.0.0-alpha08
रिलीज़ हो गया है. वर्शन 1.0.0-alpha08 में ये कमिट शामिल हैं.
ऐसी समस्याएं जिनके बारे में जानकारी पहले से है
- Camera2 इंटरऑप का इस्तेमाल करते समय, Camera2 के सभी कैप्चर अनुरोध के विकल्प काम नहीं करते. अगर अनुरोध किया गया विकल्प काम नहीं करता है, तो सेशन शुरू नहीं हो पाएगा. साथ ही, इस तरह की गड़बड़ी हो सकती है:
09-09 14:04:13.643 10117 26020 26036 E AndroidRuntime: java.lang.IllegalArgumentException: Unsupported session configuration combination
गड़बड़ियां ठीक की गईं
- एपीआई लेवल 21 और 22 के लिए, कैमरे को घुमाने या स्विच करने के बाद, झलक वाली ब्लैक स्क्रीन दिखने की समस्या को ठीक किया गया है.
एपीआई में हुए बदलाव
- एक्सपेरिमेंट के तौर पर उपलब्ध है: कैमरा आईडी निकालने के लिए, camera2 इंटरऑप पाथ जोड़ा गया.
Camera-Core वर्शन 1.0.0-alpha08
18 दिसंबर, 2019
androidx.camera:camera-core:1.0.0-alpha08
रिलीज़ हो गया है. वर्शन 1.0.0-alpha08 में ये कमिट शामिल हैं.
ऐसी समस्याएं जिनके बारे में जानकारी पहले से है
PreviewView
याCameraView
का इस्तेमाल करने वाले ऐप्लिकेशन में, आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) की झलक गलत दिख सकती है. ऐसा कुछ FULL डिवाइसों पर, वीडियो को रोकने या फिर से शुरू करने के बाद होता है. जैसे, Pixel 2.
गड़बड़ियां ठीक की गईं
FocusMeteringAction
औरCameraControl
के लिए दस्तावेज़ अपडेट किए गए.enableTorch()
औरgetTorchState()
के लिएTorchControl
लागू किया गया.
एपीआई में हुए बदलाव
- IntDefs को छिपाया गया और IntDef कॉन्स्टेंट को IntDef की परिभाषा से बाहर ले जाया गया.
rotationDegrees
को क्लासOnImageCaptureCallback
सेImageInfo
में ले जाया गया.rotationDegrees
को क्लासAnalyzer
सेImageInfo
में ले जाया गया.
Camera-Camera2 वर्शन 1.0.0-alpha07
4 दिसंबर, 2019
androidx.camera:camera-camera2:1.0.0-alpha07
रिलीज़ हो गया है. camera-camera2 के वर्शन 1.0.0-alpha07 में ये कमिट शामिल हैं
Camera2Config
अब CameraX के लिए, Camera2 पर आधारित सुविधा को शुरू करने और कॉन्फ़िगर करने के लिए उपलब्ध है. इसे शुरू करने के तरीके के बारे में ज़्यादा जानकारी, रिलीज़ नोट के camera-core सेक्शन में दी गई है.- Camera2 interop की सुविधा को अब एक्सपेरिमेंटल के तौर पर मार्क कर दिया गया है. साथ ही, इसे एक अलग पैकेज,
androidx.camera.camera2.interop.
में ले जाया गया है
Camera-Core वर्शन 1.0.0-alpha07
4 दिसंबर, 2019
androidx.camera:camera-core:1.0.0-alpha07
रिलीज़ हो गया है. camera-core के वर्शन 1.0.0-alpha07 में ये कमिट शामिल हैं
ध्यान दें कि बीटा वर्शन के लिए तैयारी करते समय, इस ऐल्फ़ा वर्शन में कुछ अहम बदलाव किए गए हैं. हमारा सुझाव है कि आप बदलावों की समीक्षा करें. साथ ही, अगर आपको कोई सुझाव/राय देनी है या शिकायत करनी है, तो CameraX Google ग्रुप पर शेयर करें. Play Store पर मौजूद ऐप्लिकेशन में CameraX का इस्तेमाल करने वाले डेवलपर को हमारा सुझाव है कि वे अपने ऐप्लिकेशन में लाइब्रेरी को अपग्रेड करने से पहले, बीटा वर्शन की आधिकारिक रिलीज़ का इंतज़ार करें.
एपीआई में हुए बदलाव
अहम जानकारी: CameraX को शुरू करने का तरीका बदल गया है. ऐप्लिकेशन में
CameraXConfig.Provider
को लागू किया जाना चाहिए. साथ ही,androidx.camera.camera2
की ओर से उपलब्ध कराए गए डिफ़ॉल्टCamera2Config
का इस्तेमाल किया जाना चाहिए. इसका सामान्य इस्तेमाल इस तरह किया जाता है:import androidx.camera.camera2.Camera2Config import androidx.camera.core.CameraXConfig public class MyCameraXApplication : Application(), CameraXConfig.Provider { override fun getCameraXConfig(): CameraXConfig { return Camera2Config.defaultConfig(this) } }
CameraX क्लास को हटा दिया गया है. CameraX क्लास कॉल से पहले उपलब्ध कराए गए
bindToLifecycle()
,unbind()
,unbindAll()
,isBound()
, औरhasCamera()
अबProcessCameraProvider
के ज़रिए उपलब्ध हैं.ProcessCameraProvider
का हर प्रोसेस इंस्टेंस, स्टैटिक तरीकेProcessCameraProvider.getInstance()
का इस्तेमाल करके एसिंक्रोनस तरीके से मिलता है. यह तरीका, सुनने लायक फ़्यूचर दिखाता है. यह फ़्यूचर, पूरा होने परProcessCameraProvider
उपलब्ध कराता है. यहांonCreate()
में, सामान्य इस्तेमाल के लिए इसे दिखाया गया है. गतिविधि के लाइफ़साइकल में बाद मेंgetInstance()
को कॉल किया जा सकता है, ताकि शुरू होने में लगने वाले समय को बाद के लिए टाला जा सके. जैसे, जब कोई उपयोगकर्ता कार्रवाई करके कैमरा यूज़र इंटरफ़ेस खोलता है.import androidx.camera.lifecycle.ProcessCameraProvider import com.google.common.util.concurrent.ListenableFuture class MainActivity : AppCompatActivity() { private lateinit var cameraProviderFuture : ListenableFuture<ProcessCameraProvider> override fun onCreate(savedInstanceState: Bundle?) { cameraProviderFuture = ProcessCameraProvider.getInstance(this); }
getInstance()
से मिलेListenableFuture
में, सुनने वाले को जोड़ा जा सकता है. इससे यह पक्का होता है कि कैमरा उपलब्ध कराने वाली कंपनी कोFuture.get()
पर ब्लॉक किए बिना,Future
से वापस पाया जा सकता हैcameraProviderFuture.addListener(Runnable { val cameraProvider = cameraProviderFuture.get() cameraProvider.bindToLifecycle(...) }, ContextCompat.getMainExecutor(this))
अब कैमरा चुनने की सुविधा, हर इस्तेमाल के हिसाब से नहीं, बल्कि कैमरा सिलेक्टर के ज़रिए मिलती है
val cameraSelector = CameraSelector.Builder().requireLensFacing(LensFacing.BACK).build()
CameraProvider.bindToLifecycle
को लाइफ़साइकल का मालिक, कैमरा चुनने वाला टूल, और इस्तेमाल के उदाहरण दिए जाते हैं. इसके बाद, इन्हें लाइफ़साइकल के मालिक से जोड़ा जाता है और चुने गए कैमरे के लिए चलाया जाता है.cameraProvider.bindToLifecycle(this as LifecycleOwner, cameraSelector, preview, imageAnalysis)
“Config” क्लास के इस्तेमाल के उदाहरण हटा दिए गए हैं. इसके बजाय, सीधे तौर पर इस्तेमाल के उदाहरण बनाएं. इसके लिए, हर उदाहरण बनाने वाले टूल पर विकल्प सेट करें. उदाहरण के लिए:
preview = Preview.Builder().setTargetAspectRatio(AspectRatio.RATIO_16_9).build()
Android के सबसे सही तरीकों को ध्यान में रखते हुए, 'झलक देखें' सुविधा के इस्तेमाल के उदाहरण को अपडेट किया गया है. इससे ऐप्लिकेशन, बनाए गए और मैनेज किए गए किसी सर्फ़ेस को स्वीकार कर सकता है. हमारा सुझाव है कि आप camera-view पैकेज में दिए गए
PreviewView
view class का इस्तेमाल करें.preview.setPreviewSurfaceProvider(previewView.previewSurfaceProvider)
ऐप्लिकेशन के ज़रिए मैनेज किए जाने वाले प्लैटफ़ॉर्म को अटैच करने के बारे में जानकारी देने वाला दस्तावेज़ देखें. इन मामलों में, ऐप्लिकेशन, सर्फ़ेस के लाइफ़साइकल को मैनेज करता है.
अहम जानकारी:
ImageAnalysis
Analyzer के तरीके को लागू करने के दौरान, मिली हुई इमेज का इस्तेमाल करने के बाद,image.close()
को कॉल करना ज़रूरी है. ऐसा न करने पर, हो सकता है कि आपको नई इमेज न मिलें या बैक प्रेशर की सेटिंग के आधार पर कैमरा रुक जाए. ज़्यादा जानकारी के लिए, रेफ़रंस दस्तावेज़ देखें.ImageAnalysis ImageReaderMode
को अब बैकप्रेशर रणनीतिintdef
में बदल दिया गया है.ImageProxy.getImage()
को एक्सपेरिमेंट के तौर पर मार्क किया गया है. ऐप्लिकेशन को इस्तेमाल के बारे में जानकारी देनी चाहिए. उदाहरण के लिए,@androidx.camera.core.ExperimentalGetImage
के ज़रिएAnalyzer
के लिए,UIThread
एनोटेशन की ज़रूरी शर्त हटा दी गई है.किसी ऐनलाइज़र को हटाने के लिए,
ImageAnalysis.clearAnalyzer()
फ़ंक्शन जोड़ा गया है.जिन श्रोताओं के पास एक से ज़्यादा तरीके हैं उनका नाम बदलकर कॉलबैक कर दिया गया है:
ImageCapture.OnImageCapturedListener
अबImageCapture.OnImageCapturedCallback
हो गया हैImageCapture.OnImageSavedListener
अबImageCapture.OnImageSavedCallback
हो गया हैVideoCapture.OnVideoSavedListener
अबVideoCapture.OnVideoSavedCallback
हो गया है
Enums को IntDef में बदल दिया गया है
ज़ूम करने की सेटिंग जोड़ी गई हैं:
CameraControl.setLinearZoom()
CameraControl.setZoomRatio()
CameraInfo.getLinearZoom()
CameraInfo.getMaxZoomRatio()
CameraInfo.getZoomRatio()
CameraInfo.hasFlashUnit()
को यह पता लगाने के लिए जोड़ा जाता है कि डिवाइस में फ़्लैश/टॉर्च हार्डवेयर मौजूद है या नहीं.CameraInfo.isFlashAvailable()
को हटा दिया गया है. टॉर्च, फ़्लैश की सुविधा को बदल देती है. ज़्यादा जानकारी के लिए, रेफ़रंस दस्तावेज़ देखें.ImageCapture.Metadata
फ़ील्ड को get/set/is ऐक्सेसर से बदल दिया गया है.startFocusMetering
औरcancelFocusMetering
अबListenableFutures
दिखाते हैं. यह कॉल के एसिंक्रोनस ऑपरेशन को दिखाता है.MeteringPoints
अब मीटरिंग की कार्रवाइयों के लिए हैंडल के तौर पर काम कर रहे हैं. इन्हें फ़ैक्ट्रियां बनाती हैं. ऐप्लिकेशन को कस्टम फ़ैक्ट्रियों के बजाय, मौजूदा फ़ैक्ट्रियों का इस्तेमाल करना चाहिए.
ठीक की गई समस्याएं
- कैमरे को फिर से चालू करने पर, फ़ोटो लेने में आ रही समस्या को ठीक किया गया है. यह समस्या तब आती थी, जब कैमरे को पहले बंद कर दिया गया हो और फ़ोटो लेने की प्रोसेस पूरी न हुई हो.
- ज्ञात समस्या:
CameraControl.enableTorch()
फ़ंक्शन काम कर रहा है, लेकिन इससे मिलने वालाListenableFuture<Void>
हमेशाcomplete(success)
होता है. भले ही, फ़्लैश यूनिट न हो. आने वाले वर्शन में, इस समस्या को ठीक कर दिया जाएगा. इसके बाद, फ़्लैश यूनिट न होने पर,enableTorch(true)
तुरंत काम करना बंद कर देगा (CaptureSession
को अनुरोध नहीं भेजेगा). साथ ही,TorchState
बंद रहेगा. - ज्ञात समस्या:
startFocusAndMetering
औरcancelFocusAndMetering
, फ़ोकस मीटरिंग को शुरू और रद्द करते हैं. हालांकि, ये तुरंतcompleted (success)
फ़्यूचर दिखाते हैं, जो दस्तावेज़ में बताए गए व्यवहार के मुताबिक नहीं होता.ListenableFuture<FocusMeteringResult> CameraControl.startFocusAndMetering()
से मिलाFocusMeteringResult
एक फ़र्ज़ी नतीजा है, जोisFocusSuccessful()
है. यह हमेशा "गलत" होता है. यह, तय किए गए और दस्तावेज़ में बताए गए व्यवहार से अलग होता है. - ज्ञात समस्या:
PreviewView
टच इवेंट के साथ इस्तेमाल करने के लिए, मीटरिंग पॉइंट फ़ैक्ट्री डेवलप की जा रही है. फ़िलहाल, कस्टम मैनेज की गई सतहों से कनेक्ट होने वाले ऐप्लिकेशन, मौजूदा मीटरिंग पॉइंट फ़ैक्ट्रियों का इस्तेमाल कर सकते हैं. इसके अलावा,PreviewView
के लिए टच फ़ोकस करने की कोई सुविधा उपलब्ध नहीं है.
Camera-Camera2 और Camera-Core वर्शन 1.0.0-alpha06
9 अक्टूबर, 2019
androidx.camera:camera-camera2:1.0.0-alpha06
और androidx.camera:camera-core:1.0.0-alpha06
रिलीज़ हो गए हैं. ये camera-camera2:1.0.0-alpha06
में शामिल कमिट हैं और ये camera-core:1.0.0-alpha06
में शामिल कमिट हैं.
नई सुविधाएं
आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) सेट करने में बदलाव:
setTargetAspectRatioMode()
को जोड़ा गया है और यह enum आर्ग्युमेंट स्वीकार करता है. इससे आसपेक्ट रेशियो मोड सेट हो जाता है. इसमें, मनमुताबिक आसपेक्ट रेशियो के बजायRATIO_4_3
याRATIO_16_9
के विकल्प मिलते हैं. इससे यह पता चलता है कि कैमरे से सिर्फ़ कुछ आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) मिलते हैं, न कि कोई भी रेशियो.- फ़िलहाल, सिर्फ़ 16:9 और 4:3 के आसपेक्ट रेशियो उपलब्ध हैं. 1:1 के मामले में, सिर्फ़ कुछ डिवाइसों पर कैमरे से यह सुविधा उपलब्ध है. साथ ही, यह सुविधा सिर्फ़ सीमित रिज़ॉल्यूशन पर उपलब्ध है. जिन ऐप्लिकेशन को 1:1 इंटरफ़ेस डिज़ाइन करना है या प्रोसेसिंग करनी है उन्हें 16:9 या 4:3 के ज़्यादा फ़्लेक्सिबल विकल्पों का इस्तेमाल करना चाहिए. साथ ही, डिसप्ले को काटना चाहिए या किसी सबरीजन को प्रोसेस करना चाहिए.
- इन आसपेक्ट रेशियो का इस्तेमाल, सेंसर के ज़्यादा से ज़्यादा हिस्से को इस्तेमाल करने के लिए किया जाता है.
getTargetAspectRatio()
को इस्तेमाल के उदाहरण के कॉन्फ़िगरेशन एपीआई में जोड़ा गया है. इससे, इस्तेमाल के उदाहरण के आउटपुट के लिए टारगेट किए गए आसपेक्ट रेशियो की जानकारी मिलती है.- ImageCapture के लिए,
setTargetAspectRatio(Rational aspectRatio)
तरीके को बदलकरsetTargetAspectRatioCustom(Rational aspectRatio)
कर दिया गया है. इस विकल्प को सेट करने पर, ImageCapture का आउटपुट उसी के हिसाब से काट दिया जाता है.
एक्ज़ीक्यूटर एपीआई
- नीचे दिए गए फ़ंक्शन, एक्ज़ीक्यूटर पैरामीटर स्वीकार करते हैं. इससे ऐप्लिकेशन को यह कंट्रोल करने की अनुमति मिलती है कि फ़ंक्शन किस एक्ज़ीक्यूटर पर चलता है.
Preview.setOnPreviewOutputUpdateListener()
एपीआई. अगर उस फ़ंक्शन के लिए एक्ज़ीक्यूटर मौजूद नहीं है, तो यह मुख्य थ्रेड पर एक्ज़ीक्यूट होता है.Preview.setOnPreviewOutputUpdateListener
FocusMeteringAction.Builder.setAutoFocusCallback
ImageAnalysis.setAnalyzer
ImageCapture.takePicture
CameraView.takePicture
CameraView.startRecording
VideoCapture.startRecording
CameraInfo में, Flash Available और Sensor Rotation API की जांच करने की सुविधा जोड़ी गई
CameraInfo
औरgetCameraInfo
तरीका जोड़ा गया है. इससे ऐप्लिकेशन यह देख सकते हैं कि CameraInfo का सामना करने वाला लेंस उपलब्ध है या नहीं. साथ ही, यह भी देख सकते हैं कि उस कैमरे पर फ़्लैश उपलब्ध है या नहीं. उदाहरण के लिए:try { CameraInfo cameraInfo = CameraX.getCameraInfo(currentCameraLensFacing); LiveData<Boolean> isFlashAvailable = cameraInfo.isFlashAvailable(); flashToggle.setVisibility(isFlashAvailable.getValue() ? View.VISIBLE : View.INVISIBLE); } catch (CameraInfoUnavailableException e) { Log.w(TAG, "Cannot get flash available information", e); flashToggle.setVisibility(View.VISIBLE); }
CameraInfo.getSensorRotationDegrees()
को जोड़ा गया. यह डिवाइस के नैचुरल ओरिएंटेशन के हिसाब से, कैमरा सेंसर के ओरिएंटेशन की जानकारी देता है. इसके अलावा, यह Surface रोटेशन के हिसाब से भी जानकारी देता है. Surface रोटेशन, नैचुरल ओरिएंटेशन के हिसाब से ओरिएंटेशन की जानकारी देता है.
एपीआई में बदलाव और गड़बड़ियां ठीक की गईं
- आस्पेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात): इस्तेमाल के हर तरीके के लिए, ऐप्लिकेशन को सिर्फ़
setTargetResolution()
याsetTargetAspectRatio()
में से किसी एक को कॉल करना चाहिए. एक ही बिल्डर पर दोनों को कॉल करने पर गड़बड़ी होती है.- आम तौर पर, ऐप्लिकेशन के यूज़र इंटरफ़ेस (यूआई) डिज़ाइन के आधार पर,
setTargetAspectRatio()
का इस्तेमाल करने का सुझाव दिया जाता है. समस्या हल करने के तरीके, इस्तेमाल के उदाहरण पर आधारित होते हैं. उदाहरण के लिए, प्रीव्यू की सुविधा स्क्रीन रिज़ॉल्यूशन के हिसाब से काम करती है. वहीं, इमेज कैप्चर करने की सुविधा से हाई रिज़ॉल्यूशन वाली इमेज मिलती हैं. ज़्यादा जानकारी के लिए, अपने-आप ठीक होने वाली गड़बड़ियों की टेबल देखें. - ज़्यादा खास मामलों के लिए
setTargetResolution()
का इस्तेमाल करें. जैसे, जब कम से कम (कैलकुलेशन सेव करने के लिए) या ज़्यादा से ज़्यादा रिज़ॉल्यूशन (जानकारी प्रोसेस करने के लिए) की ज़रूरत हो.
- आम तौर पर, ऐप्लिकेशन के यूज़र इंटरफ़ेस (यूआई) डिज़ाइन के आधार पर,
- Executor API: इस्तेमाल के उदाहरण के कॉन्फ़िगरेशन वाले एपीआई से
setCallbackHandler()
कॉल को हटा दिया गया है. इसके बजाय, ऐप्लिकेशन, एक्ज़ीक्यूटर को उन अन्य एपीआई में पैरामीटर के तौर पर सेट कर सकते हैं जो कॉलबैक सेट करते हैं. - कई फ़ंक्शन के लिए, शून्य एनोटेशन अपडेट किए गए हैं.
- कैमरा खोलने पर,
java.lang.IllegalStateException at Camera$StateCallback.onError
दिखने की समस्या को ठीक किया गया है. - हमने उस समस्या को ठीक कर दिया है जिसमें ऐप्लिकेशन के बड़े या डिफ़ॉल्ट रिज़ॉल्यूशन का अनुरोध करने पर, बहुत छोटे रिज़ॉल्यूशन (640x480 से कम) चुने जाते थे. इससे, झलक वाली इमेज धुंधली या पिक्सलेट हो जाती थी. जिन ऐप्लिकेशन को खास तौर पर कम रिज़ॉल्यूशन की ज़रूरत होती है वे इसके लिए अनुरोध कर सकते हैं.
- उस समस्या को ठीक किया गया है जिसमें किसी ऐसे इंटेंट से वापस आने पर कैमरा काली स्क्रीन दिखाता था जिसने किसी अन्य कैमरा ऐप्लिकेशन को लॉन्च किया था.
- उस बग को ठीक कर दिया गया है जिसकी वजह से, ऐप्लिकेशन को बार-बार शुरू या बंद करने पर यह गड़बड़ी दिखती थी;
java.lang.IllegalArgumentException: CaptureRequest contains unconfigured Input/Output Surface!
- ImageAnalysis की सुविधा बंद करने पर होने वाली इस गड़बड़ी को ठीक किया गया है:
java.lang.IllegalStateException: maxImages (4) has already been acquired, call #close before acquiring more.
- कैमरा डिसकनेक्ट करने के फ़्लो के लिए, अतिरिक्त टेस्ट जोड़े गए.
- कैमरे की लगातार जांच करने पर, टेस्ट सिस्टम की मज़बूती को बेहतर बनाया गया है.
Camera-Camera2 और Camera-Core वर्शन 1.0.0-alpha05
5 सितंबर, 2019
androidx.camera:camera-camera2:1.0.0-alpha05
और androidx.camera:camera-core:1.0.0-alpha05
रिलीज़ हो गए हैं. ये camera-camera2:1.0.0-alpha05 में शामिल कमिट हैं और ये camera-core:1.0.0-alpha05 में शामिल कमिट हैं.
एपीआई में बदलाव: इस्तेमाल के उदाहरण से जुड़ी गड़बड़ी वाले वैरिएबल के नाम बदले गए:
ImageCapture.UseCaseError
का नाम बदलकरImageCapture.ImageCaptureError
कर दिया गया हैVideoCapture.UseCaseError
का नाम बदलकरVideoCapture.VideoCaptureError
कर दिया गया है
CameraControl
एपीआई को टैप-टू-फ़ोकस एपीआई के साथ जोड़ा गयाकैमरे के लिए CameraX से
CameraControl
पाने के लिए एपीआई जोड़ा गया. इसे लेंस के हिसाब से चुना जाता है:CameraX.getCameraControl(LensFacing lensFacing)
टैप करके फ़ोकस करने की सुविधा को चालू करने के लिए,
MeteringPointFactory
,MeteringPoint
,MeteringMode
, औरFocusMeteringAction
को जोड़ा गया:MeteringPointFactory factory = new SensorOrientedMeteringPointFactory(width, height); MeteringPoint point = factory.createPoint(x, y); FocusMeteringAction action = FocusMeteringAction.Builder.from(point, MeteringMode.AF_ONLY) .addPoint(point2, MeteringMode.AE_ONLY) // could have many .setAutoFocusCallback(new OnAutoFocusListener(){ public void onFocusCompleted(boolean isSuccess) { } }) // auto calling cancelFocusAndMetering in 5 sec. .setAutoCancelDuration(5, TimeUnit.Second) .build();
फ़ोकस मीटरिंग शुरू करने और रद्द करने के लिए,
CameraControl
के लिए एपीआई जोड़ा गया:getCameraControl(lensFacing).startFocusAndMetering(action);
getCameraControl(lensFacing).cancelFocusAndMetering();
मीटरिंग पॉइंट फ़ैक्ट्रियों के लिए एपीआई जोड़े गए हैं. ये एपीआई, व्यू क्लास के आधार पर टैप कोऑर्डिनेट को सेंसर कोऑर्डिनेट में बदलने में मदद करते हैं:
MeteringPointFactory factory = new TextureViewMeteringPointFactory(textureView);
MeteringPointFactory factory = new DisplayOrientedMeteringPointFactory(context, lensFacing, viewWidth, viewHeight);
यह मुख्य (यूआई) थ्रेड पर, यहां दिए गए तरीकों को लागू करता है. अगर ऐसा नहीं होता है, तो
IllegalStateException
दिखाता है. आने वाले वर्शन में, इसका इस्तेमाल अन्य थ्रेड पर किया जा सकेगा. साथ ही, यह भी पक्का किया जा सकेगा कि यह क्रम से काम करे.CameraX.bindToLifecycle()
CameraX.unbind()
CameraX.unbindAll()
ImageAnalysis.setAnalyzer()
ImageAnalysis.getAnalyzer()
ImageAnalysis.removeAnalyzer()
Preview.removePreviewOutputListener()
Preview.getOnPreviewOutputUpdateListener()
Preview.setOnPreviewOutputUpdateListener()
कॉन्फ़िगरेशन की अलग-अलग सेटिंग अब शून्य पैरामीटर स्वीकार करती हैं. साथ ही, उनसे जुड़े गेटर शून्य वैल्यू दिखा सकते हैं.
उन इम्यूलेटर पर टेस्टिंग के दौरान आने वाली समस्या को ठीक किया गया है जो AF/AE/AWB सेटिंग के साथ काम नहीं करते.
इमेज का विश्लेषण करते समय, डिवाइस को घुमाने पर क्रैश होने वाली गड़बड़ी को ठीक किया गया है.
उस बग को ठीक किया गया है जिसकी वजह से, रोटेशन के बाद या फ़्रंट और बैक कैमरे के बीच स्विच करने पर, कैमरे का डेटा न होने की वजह से झलक काली दिखती थी.
एक साथ कई इमेज का विश्लेषण करने के इस्तेमाल के उदाहरणों के लिए, टेस्टिंग की सुविधा हटा दी गई है. यह पक्का करने के लिए कि ऐप्लिकेशन, इमेज विश्लेषण की सुविधा के साथ काम करता है, उसे सिर्फ़ एक इमेज विश्लेषण का इस्तेमाल करना चाहिए.
कैमरा-टेस्टिंग सुइट में, फ़ेक कैमरे के लिए शुरुआती रोबोटिक टेस्ट जोड़े गए (WIP).
Camera2Inititalizer टेस्ट को हटा दिया गया है, क्योंकि इसकी कवरेज साफ़ तौर पर नहीं बताई गई थी/गुमराह करने वाली थी.
Camera-Camera2 और Camera-Core वर्शन 1.0.0-alpha04
7 अगस्त, 2019
androidx.camera:camera-camera2:1.0.0-alpha04
और androidx.camera:camera-core:1.0.0-alpha04
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha04 में ये कमिट शामिल हैं.
नई सुविधाएं
आस्पेक्ट रेशियो और रिज़ॉल्यूशन चुनने की सुविधा में हुए बदलाव
CameraX का मकसद, कैमरा सेशन को सही तरीके से शुरू करना है. इसका मतलब है कि CameraX, डिवाइस की क्षमता के आधार पर रिज़ॉल्यूशन/आस्पेक्ट रेशियो से समझौता करता है, ताकि कैप्चर सेशन शुरू किया जा सके. इसलिए, हो सकता है कि सटीक अनुरोधों को पूरा न किया जा सके. ऐसा इन वजहों से हो सकता है:
- ऐसे डिवाइस जिन पर अनुरोध किया गया रिज़ॉल्यूशन काम नहीं करता
- डिवाइस के साथ काम न करने से जुड़ी समस्याएं. जैसे, लेगसी डिवाइसों पर कुछ रिज़ॉल्यूशन का इस्तेमाल करना ज़रूरी होता है, ताकि वे ठीक से काम कर सकें
- कुछ डिवाइसों पर, कुछ फ़ॉर्मैट सिर्फ़ कुछ आसपेक्ट रेशियो में उपलब्ध होते हैं
- JPEG या वीडियो एन्कोडिंग के लिए, “nearest mod16” को प्राथमिकता दी जाती है.
CameraCharacteristics#SCALER_STREAM_CONFIGURATION_MAP
देखें
CameraX, सेशन बनाता है और उसे मैनेज करता है. हालांकि, आपको हमेशा अपने कोड में, इस्तेमाल के उदाहरण के आउटपुट पर दिखाई गई इमेज के साइज़ की जांच करनी चाहिए. साथ ही, उसके हिसाब से बदलाव करना चाहिए.
एपीआई को ज़्यादा साफ़ तौर पर समझने के लिए, रिज़ॉल्यूशन और आसपेक्ट रेशियो सेट करने से जुड़े कुछ बदलाव किए गए हैं:
- अगर झलक दिखाने की सुविधा के लिए कोई आसपेक्ट रेशियो सेट नहीं किया गया है, तो अब इसे डिफ़ॉल्ट रूप से 4:3 आसपेक्ट रेशियो में माना जाएगा.
- जब CameraX, डिवाइस की क्षमता के आधार पर, अनुरोध किए गए रिज़ॉल्यूशन और आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) में बदलाव करता है, तो वह सबसे पहले उसी आसपेक्ट रेशियो को बनाए रखने की कोशिश करता है जिसे
setTargetAspectRatio
याsetTargetResolution
कॉल से तय किया गया है - रिज़ॉल्यूशन के “Nearest mod16” वर्शन को एक ही आसपेक्ट रेशियो माना जाता है.
ImageAnalysis Non-Blocking Mode
ImageReaderMode.ACQUIRE_LATEST_IMAGE
का व्यवहार अब नॉन-ब्लॉकिंग है. यह इमेज को क्यू में सबसे ऊपर रखता है. हालांकि, यह इस्तेमाल न की गई इमेज को लगातार हटाता रहता है, ताकि कैमरा पाइपलाइन को ब्लॉक होने से बचाया जा सके.- विश्लेषण करने वाला टूल, पाइपलाइन को रोके बिना किसी इमेज को हमेशा के लिए सेव कर सकता है.
- अगर ऐप्लिकेशन, एक्ज़ीक्यूटर उपलब्ध कराता है और वह ब्लॉक हो जाता है, तो ImageAnalysis का इस्तेमाल नहीं किया जा सकता.
- डिफ़ॉल्ट रूप से सेट किया गया एक्ज़ीक्यूटर, इंटरनल तौर पर नॉन-ब्लॉकिंग एक्ज़ीक्यूटर के तौर पर काम करता है.
गड़बड़ियां ठीक की गईं
- ऑटो-फ़ोकस, ऑटो एक्सपोज़र, और ऑटो-व्हाइटबैलेंस की सुविधा के बिना काम करने वाले डिवाइसों पर इमेज कैप्चर करते समय, 3A कन्वर्जेंस के लिए इंतज़ार करने से जुड़ी टाइमआउट की समस्याओं को ठीक किया गया
- ImageCapture की मदद से तेज़ी से फ़ोटो लेने पर होने वाली समस्या को ठीक किया गया. गड़बड़ी ठीक की गई:
java.lang.IllegalStateException: maxImages (2) has already been acquired
- उस समस्या को ठीक किया गया है जिसमें इस्तेमाल के उदाहरण के लिए
setLensFacing
को कॉल नहीं किया गया था. इस वजह से,java.lang.IllegalArgumentException: Unable to get camera ID for use case
की समस्या आ रही थी. - उस समस्या को ठीक किया गया है जिसमें LEGACY डिवाइस के लिए, ज़्यादा से ज़्यादा JPEG रिज़ॉल्यूशन के तौर पर खास आसपेक्ट रेशियो की ज़रूरत होती थी
- कैमरा चालू होने के दौरान ऐप्लिकेशन को बैकग्राउंड में ले जाने पर आने वाली समस्या को ठीक किया गया है
- एपीआई < 25 पर समस्या ठीक कर दी गई है. गड़बड़ी
checkAndUpdateEglState: invalid current EGLDisplay
को हटाया जा रहा है - एक्सटेंशन चालू करने और शुरू करने के बाद, झलक को अनबाइंड करने से जुड़ी समस्या ठीक की गई
- कैमरा-व्यू और कैमरा-एक्सटेंशन के लिए, बिल्ड आर्टफ़ैक्ट अब ऐल्फ़ा वर्शन के तौर पर पब्लिश किए गए हैं
Camera-Camera2 और Camera-Core वर्शन 1.0.0-alpha03
2 जुलाई, 2019
androidx.camera:camera-core:1.0.0-alpha03
और androidx.camera:camera-camera2:1.0.0-alpha03
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha03 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- setTarget कॉन्फ़िगरेशन कॉल में “target” के लिए, javadoc की जानकारी जोड़ी गई
Camera-Core
- तेज़ी से खोलने/बंद करने या बाइंड/अनबाइंड करने पर, कॉन्फ़िगर नहीं किए गए इनपुट/आउटपुट सर्फ़ेस के क्रैश होने की समस्या ठीक की गई
- फ़्यूचर्स के नए वर्शन पर माइग्रेट करना
- बेहतर टेस्टिंग के लिए, समस्याओं को ठीक करने वाले टेस्ट
- कोर इंटिग्रेशन टेस्ट में अब फ़ोटो कैप्चर करने का समय दिखता है
- एक्ज़ीक्यूटर के लिए इंटरनल कंपैट क्लास डेवलप की गई
- टाइमिंग टेस्ट ऐप्लिकेशन, इमेज कैप्चर करने से पहले पिछली इमेज के कैप्चर होने का इंतज़ार करता है. साथ ही, यह ज़्यादा स्थिर होता है
एक्सटेंशन
- वर्शन की जांच करने की सुविधा जोड़ी गई
- टेस्ट कवरेज के बारे में ज़्यादा जानकारी - एक्सटेंशन इवेंट कॉलबैक
- आंतरिक तौर पर इमेज और मेटा-डेटा को बेहतर बनाया गया है
- टेस्ट ऐप्लिकेशन में मोड स्विच करने से जुड़ी समस्याएं ठीक की गईं
Camera-Camera2 और Camera-Core वर्शन 1.0.0-alpha02
5 जून, 2019
androidx.camera:camera-core:1.0.0-alpha02
और androidx.camera:camera-camera2:1.0.0-alpha02
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha02 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- एम्युलेटर का इस्तेमाल करते समय, शून्य से भाग देने की समस्या को ठीक किया गया
- कुछ डिवाइसों पर, फ़ोटो लेने के लिए इस्तेमाल किए जाने वाले फ़ंक्शन को तेज़ी से अनबाइंड और रीबाइंड करते समय, NullPointerException/Surface Abandoned गड़बड़ी को ठीक किया गया.
- आंतरिक समस्या को ठीक किया गया है, ताकि कैप्चर अनुरोध से जुड़े अपडेट सभी प्लैटफ़ॉर्म पर एक जैसा असर डालें
- ऐप्लिकेशन के नए इंस्टेंस में इस्तेमाल के उदाहरणों को फिर से शुरू करते समय, ऐप्लिकेशन क्रैश या हैंग होने से बचाने के लिए किए गए सुधार
- एपीआई में एक्ज़ीक्यूटर की सुविधा के लिए, इंटरनल आर्किटेक्चर में बदलाव किए गए हैं
- CameraX क्लास और लाइफ़साइकल मैनेजमेंट के बारे में Javadoc में अतिरिक्त जानकारी
- Antelope परफ़ॉर्मेंस टेस्ट ऐप्लिकेशन के लिए, इंस्ट्रुमेंटेड टेस्टिंग की सुविधा जोड़ी गई
- ऐप्लिकेशन के Proguard कॉन्फ़िगरेशन में, '-keepattributes Signature' की ज़रूरत को हटाना
Camera-Camera2 और Camera-Core 1.0.0-alpha01
7 मई, 2019
androidx.camera:camera-core:1.0.0-alpha01
और
androidx.camera:camera-camera2:1.0.0-alpha01
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha01 में ये कमिट शामिल हैं.
Camera-Lifecycle Version 1.0.0-beta11
14 अक्टूबर, 2020
androidx.camera:camera-lifecycle:1.0.0-beta11
रिलीज़ हो गया है. वर्शन 1.0.0-beta11 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
<UseCase>.getTargetRotation()
,Surface.ROTATION_0
दिखाता है. ऐसा तब होता है, जब इसे Camera इंस्टेंस से अटैच करने से पहले कॉल किया जाता है. हालांकि, ऐसा तब नहीं होता, जब Builder या UseCase पर targetRotation सेट किया गया हो. (I80fcd)
Camera-Lifecycle वर्शन 1.0.0-beta10
23 सितंबर, 2020
androidx.camera:camera-lifecycle:1.0.0-beta10
रिलीज़ हो गया है. वर्शन 1.0.0-beta10 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- Camera-Core 1.0.0-beta10 के साथ काम करने के लिए रिलीज़ किया गया
Camera-Lifecycle Version 1.0.0-beta09
16 सितंबर, 2020
androidx.camera:camera-lifecycle:1.0.0-beta09
रिलीज़ हो गया है. वर्शन 1.0.0-beta09 में ये कमिट शामिल हैं.
Camera-Lifecycle Version 1.0.0-beta08
19 अगस्त, 2020
androidx.camera:camera-lifecycle:1.0.0-beta08
रिलीज़ हो गया है. वर्शन 1.0.0-beta08 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
Context.getApplicationContext()
से Application ऑब्जेक्ट को वापस नहीं भेजने वाले Context का इस्तेमाल करने पर, अब इनिशियलाइज़ेशन क्रैश नहीं होना चाहिए. (I3d3c9, b/160817073)
Camera-Lifecycle Version 1.0.0-beta07
22 जुलाई, 2020
androidx.camera:camera-lifecycle:1.0.0-beta07
रिलीज़ हो गया है. वर्शन 1.0.0-beta07 में ये कमिट शामिल हैं.
Camera-Lifecycle Version 1.0.0-beta06
24 जून, 2020
androidx.camera:camera-lifecycle:1.0.0-beta06
रिलीज़ हो गया है. वर्शन 1.0.0-beta06 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- अब CameraX को ProcessCameraProvider#getInstance() को कॉल करने से पहले, ProcessCameraProvider#configureInstance() के साथ कॉन्फ़िगर किया जा सकता है. इससे CameraXConfig को पसंद के मुताबिक बनाया जा सकता है. इसके लिए, ऐप्लिकेशन की Application क्लास में CameraXConfig.Provider को लागू करने की ज़रूरत नहीं होती. (Ia1a8d)
Camera-Lifecycle वर्शन 1.0.0-beta05
10 जून, 2020
androidx.camera:camera-lifecycle:1.0.0-beta05
रिलीज़ हो गया है. वर्शन 1.0.0-beta05 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- फ़ोन के 'परेशान न करें' मोड में होने पर, CameraX को शुरू करते समय ऐप्लिकेशन के क्रैश होने की समस्या ठीक की गई. ऐप्लिकेशन क्रैश होने के बजाय,
InitializationException
में मौजूदCameraUnavailableException
को, शुरू होने के नतीजे केListenableFuture
पर सेट किया जाएगा. (I9909a, b/149413835)
Camera-Lifecycle Version 1.0.0-beta04
27 मई, 2020
androidx.camera:camera-lifecycle:1.0.0-beta04
रिलीज़ हो गया है. वर्शन 1.0.0-beta04 में ये कमिट शामिल हैं.
Camera-Lifecycle Version 1.0.0-beta03
15 अप्रैल, 2020
androidx.camera:camera-lifecycle:1.0.0-beta03
रिलीज़ हो गया है. वर्शन 1.0.0-beta03 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- beta03 में हुई रिग्रेशन की समस्या को ठीक किया गया है. इस समस्या में, शून्य
UseCase
के साथbindToLifecycle()
को कॉल करने पर थ्रोन अपवाद होता था. इस कुकी का इस्तेमाल,UseCase
को बाइंड किए बिनाCamera
को वापस पाने से रोकने के लिए किया जाता है. camera-core
को रिलीज़ करने के लिए, गड़बड़ियों को ठीक किया गया
Camera-Lifecycle Version 1.0.0-beta01
26 फ़रवरी, 2020
androidx.camera:camera-lifecycle:1.0.0-beta01
रिलीज़ हो गया है. वर्शन 1.0.0-beta01 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- दस्तावेज़ में यह जानकारी जोड़ी गई है कि
ProcessCameraProvider
को शुरू करते समय, डिफ़ॉल्ट कॉन्फ़िगरेशन का इस्तेमाल किया जाता है. साथ ही,Application
को बढ़ाना ज़रूरी नहीं है. (I5e395)
Camera-Lifecycle Version 1.0.0-beta02
1 अप्रैल, 2020
androidx.camera:camera-lifecycle:1.0.0-beta02
रिलीज़ हो गया है. वर्शन 1.0.0-beta02 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
camera-camera2:1.0.0-beta02
औरcamera-core:1.0.0-beta02
आर्टफ़ैक्ट में गड़बड़ियां ठीक करने के लिए, इसे अपडेट किया गया है.
Camera-Lifecycle Version 1.0.0-alpha10
10 फ़रवरी, 2020
androidx.camera:camera-lifecycle:1.0.0-alpha10
रिलीज़ हो गया है. वर्शन 1.0.0-alpha10 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- BindToLifecycle, unbind, और unbindAll तरीकों में
@MainThread
एनोटेशन जोड़ा गया. (I990d2)
Camera-Lifecycle Version 1.0.0-alpha03
22 जनवरी, 2020
androidx.camera:camera-lifecycle:1.0.0-alpha03
रिलीज़ हो गया है. वर्शन 1.0.0-alpha03 में ये कमिट शामिल हैं.
अपडेट
- Camera Core और Camera2 में हुए बदलावों के साथ काम करने के लिए, कई सुधार और अपडेट किए गए हैं.
Camera-Lifecycle वर्शन 1.0.0-alpha02
18 दिसंबर, 2019
androidx.camera:camera-lifecycle:1.0.0-alpha02
रिलीज़ हो गया है. वर्शन 1.0.0-alpha02 में ये कमिट शामिल हैं.
डिपेंडेंसी में बदलाव
androidx.camera:camera-core:1.0.0-alpha08
का इस्तेमाल करने के लिए अपडेट किया गया.
Camera-Lifecycle वर्शन 1.0.0-alpha01
4 दिसंबर, 2019
androidx.camera:camera-lifecycle:1.0.0-alpha01
रिलीज़ हो गया है. camera-lifecycle के वर्शन 1.0.0-alpha01 में ये कमिट शामिल हैं
एपीआई से जुड़ी जानकारी
- कैमरा-लाइफ़साइकल आर्टफ़ैक्ट जोड़ा गया है. यह
LifeCycleCameraProvider
इंटरफ़ेस औरProcessCameraProvider
नाम का एक लागू करने का तरीका उपलब्ध कराता है. यह कोर में, पिछली CameraX क्लास के कई फ़ंक्शन उपलब्ध कराता है. इसेgetInstance()
तरीके से हासिल किया जाता है. - CameraX का इस्तेमाल करने के लिए, ऐप्लिकेशन में कैमरा-लाइफ़साइकल लाइब्रेरी शामिल होनी चाहिए.
ProcessCameraProvider
का इस्तेमाल करके CameraX को शुरू करने का तरीका जानने के लिए, camera-core सेक्शन में दिए गए नोट देखें.
Camera-Extensions और Camera-View वर्शन 1.0.0
वर्शन 1.0.0-alpha32
15 दिसंबर, 2021
androidx.camera:camera-extensions:1.0.0-alpha32
और androidx.camera:camera-view:1.0.0-alpha32
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha32 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- अंदरूनी क्लास/इंटरफ़ेस से, गैर-ज़रूरी
@RequiresApi(21)
एनोटेशन हटा दिए गए हैं. (I8e286, b/204917951) - कैमरा-एक्सटेंशन आर्टफ़ैक्ट के लिए एपीआई फ़ाइलें अपडेट करें. (If683a, b/161377155)
गड़बड़ियां ठीक की गईं
VideoCapture
को बाइंड करते समय, ऐप्लिकेशन को एक्सटेंशन मोड चालू करने की अनुमति न दें. CameraX Extensions सिर्फ़ImageCapture
औरPreview
के साथ काम करते हैं. फ़िलहाल,VideoCapture
का इस्तेमाल नहीं किया जा सकता. अगर ऐप्लिकेशन,VideoCapture
को बाइंड करता है और किसी एक्सटेंशन मोड को चालू करता है, तो एकIllegalArgumentException
थ्रो किया जाएगा. (I0d87b)- नतीजों का सेट खाली होने पर,
CameraSelector#filter
अबIllegalArgumentException
नहीं दिखाता है. (I27804) ExtensionsManager#getInstance
एपीआई का नाम बदलकरgetInstanceAsync
कर दिया गया है, क्योंकि यहListenableFuture
दिखाता है. फ़ंक्शन के नाम में Async सफ़िक्स से यह साफ़ तौर पर पता चलता है कि यह एक एसिंक फ़ंक्शन है. (I279d2)ExtensionsManager#getEstimatedCaptureLatencyRange
एपीआई से रिज़ॉल्यूशन पैरामीटर हटाएं. ऐसा इसलिए, क्योंकि उपयोगकर्ताओं को यह नहीं पता चल पाता किImageCapture
के इस्तेमाल के लिए कौनसे साइज़ काम करते हैं. साथ ही, वे यह भी नहीं जान पाते कि जवाब में मिली लेटेंसी की जानकारी, कैप्चर किए गए आउटपुट के ज़्यादा से ज़्यादा साइज़ के लिए है या इनपुट रिज़ॉल्यूशन पैरामीटर के लिए. (I74bb2)ExtensionsManager
फ़ंक्शन केCameraProvider
पैरामीटर कोgetInstance()
API में ले जाएं. इससे उपयोगकर्ताओं कोExtensionsManager
फ़ंक्शन कॉल करते समय, हर बारCameraProvider
पैरामीटर डालने की ज़रूरत नहीं पड़ती. (Ic7e48)
वर्शन 1.0.0-alpha31
17 नवंबर, 2021
androidx.camera:camera-extensions:1.0.0-alpha31
और androidx.camera:camera-view:1.0.0-alpha31
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha31 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- CameraSelector#filter को सार्वजनिक एपीआई में जोड़ा गया है, ताकि CameraSelector के आधार पर CameraInfos की सूची को फ़िल्टर किया जा सके. (I105d0)
गड़बड़ियां ठीक की गईं
- कुछ डिवाइसों पर एक्सटेंशन मोड को तेज़ी से स्विच करने पर होने वाली क्रैश की समस्या को ठीक किया गया है. (Iebbef)
वर्शन 1.0.0-alpha30
13 अक्टूबर, 2021
androidx.camera:camera-extensions:1.0.0-alpha30
और androidx.camera:camera-view:1.0.0-alpha30
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha30 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- सभी CameraX क्लास में @RequiresApi(21) एनोटेशन जोड़ा गया है. साथ ही, AndroidManifest.xml से minSdkVersion हटा दिया गया है. इससे camera-core को उन ऐप्लिकेशन में आसानी से इंटिग्रेट किया जा सकेगा जिनमें minSdkVersion 21 से कम है. हालांकि, वे एपीआई 21 और उसके बाद के वर्शन पर निर्भर करने वाले कोड पाथ का इस्तेमाल कुछ शर्तों के साथ करना चाहते हैं. minSdkVersion 21 या उसके बाद के वर्शन वाले किसी भी ऐप्लिकेशन के लिए, इस बदलाव को लागू करने के लिए कोई कार्रवाई करने की ज़रूरत नहीं है. (Ie7f2e, b/200599470)
गड़बड़ियां ठीक की गईं
- AbstractMethodError की समस्या को ठीक किया गया है. यह समस्या तब होती है, जब proguard चालू होता है. (Iae468, b/201177844)
वर्शन 1.0.0-alpha29
29 सितंबर, 2021
androidx.camera:camera-extensions:1.0.0-alpha29
और androidx.camera:camera-view:1.0.0-alpha29
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha29 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- एपीआई के एक्सपेरिमेंटल वर्शन के बंद होने के बाद, ExperimentalUseCaseGroup एनोटेशन को हटा दिया गया है. (I01ef5)
RotationProvider#removeAllListeners()
को हटाएं. इसके बजाय, कृपयाRotationProvider#removeListener(...)
का इस्तेमाल करें. (Id9d4a)- RotationReceiver क्लास को अपडेट किया गया है: set/clear Listener को add/remove/removeAll में बदला गया है. साथ ही, setListener के उस वर्शन को हटाया गया है जो डिफ़ॉल्ट रूप से मुख्य थ्रेड का इस्तेमाल करता है. इसके अलावा, तरीकों का एनोटेशन जोड़ा गया है. (Ib1669)
गड़बड़ियां ठीक की गईं
- ExtensionMode#BEAUTY का नाम बदलकर FACE_RETOUCH कर दिया गया है, ताकि एक्सटेंशन मोड के काम को सही तरीके से दिखाया जा सके. (I61f54, b/198515274)
- एक ही गतिविधि में कई CameraController और PreviewView का इस्तेमाल करने पर, कैमरा अपने-आप बंद हो जाने की समस्या ठीक कर दी गई है. (Ibfd18, b/197539358)
वर्शन 1.0.0-alpha28
18 अगस्त, 2021
androidx.camera:camera-extensions:1.0.0-alpha28
और androidx.camera:camera-view:1.0.0-alpha28
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha28 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- ExperimentalUseCaseGroupLifecycle एनोटेशन को हटा दिया गया है, क्योंकि अब एपीआई एक्सपेरिमेंट के तौर पर उपलब्ध नहीं हैं. (I17b85)
- RotationListener को रीफ़ैक्टर किया गया है और इसका नाम बदलकर RotationProvider कर दिया गया है. यह सुविधा अब भी उपलब्ध है, लेकिन इसके लिए एपीआई थोड़ा अलग है. (Idffc5)
- TAP_TO_FOCUS_UNSUCCESSFUL का नाम बदलकर TAP_TO_FOCUS_NOT_FOCUSED और TAP_TO_FOCUS_SUCCESSFUL का नाम बदलकर TAP_TO_FOCUS_FOCUSED कर दिया गया है. OutputSize को फ़ाइनल बनाया गया (I099fa)
गड़बड़ियां ठीक की गईं
- लेगसी हो चुकी
<EffectName><UseCase>Extender
क्लास, ExtensionsErrorListener, और इनसे जुड़े ExtensionsManager API हटा दिए गए हैं. (I3b8c3)
वर्शन 1.0.0-alpha27
21 जुलाई, 2021
androidx.camera:camera-extensions:1.0.0-alpha27
और androidx.camera:camera-view:1.0.0-alpha27
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha27 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- व्यूपोर्ट एपीआई को एक्सपेरिमेंटल से प्रमोट किया गया. एपीआई की एक्सपेरिमेंटल एनोटेशन को हटाएं. (I717ea)
CoordinateTransform#getTransform
का नाम बदलकरCoordinateTransform#transform
किया गया और JavaDoc अपडेट किया गया (I864ae)
गड़बड़ियां ठीक की गईं
- Compose UI के साथ
PreviewView PERFORMANCE
मोड का इस्तेमाल करने पर, स्ट्रेच होने की समस्या को ठीक किया गया है. (Ie1137, b/183864890)
वर्शन 1.0.0-alpha26
30 जून, 2021
androidx.camera:camera-extensions:1.0.0-alpha26
और androidx.camera:camera-view:1.0.0-alpha26
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha26 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- एक नया तरीका
CameraController#getTapToFocusState()
जोड़ें, जो टैप-टू-फ़ोकस के सबसे नए नतीजे को दिखाता है. (Iaccb0) - CameraController में कैमरा-कोर की ज़्यादा सुविधाएं जोड़ी गई हैं: टारगेट ऐस्पेक्ट रेशियो, टारगेट रिज़ॉल्यूशन, कैप्चर मोड, CameraControl, और कस्टम एक्ज़ीक्यूटर के लिए गेटर/सेटर. (Iea8f2)
- RotationReceiver क्लास जोड़ें, ताकि Surface के रोटेशन में होने वाले बदलावों की जानकारी मिल सके. इसका इस्तेमाल, डिवाइस के फ़िक्स्ड पोर्ट्रेट/लैंडस्केप मोड में होने पर टारगेट रोटेशन सेट करने के लिए किया जा सकता है. (Ib278f)
- ExtensionsManager क्लास में, getEstimatedCaptureLatencyRange के नए सार्वजनिक एपीआई को बिना अनुमति के सार्वजनिक किया गया है. (I6a8ec)
- Deprecated ExtensionsErrorListener. फ़िलहाल, इस इंटरफ़ेस का इस्तेमाल सिर्फ़ यह मॉनिटर करने के लिए किया जाता है कि एक्सटेंशन मोड चालू करते समय, Preview या ImageCapture की कमी तो नहीं है. CameraX, एक्सटेंशन के फ़ंक्शन को बेहतर तरीके से काम करने के लिए, Preview या ImageCapture को अपने-आप जोड़ देगा. इसके बाद, इस इंटरफ़ेस के ज़रिए कोई गड़बड़ी रिपोर्ट नहीं की जाएगी. (I47d9e)
- ExtensionsManager के नए getInstance, isExtensionAvailable, और getExtensionEnabledCameraSelector पब्लिक एपीआई उपलब्ध कराए गए हैं. साथ ही, पुरानी
<EffectName><UseCase>Extender
क्लास और उनसे जुड़े एपीआई बंद कर दिए गए हैं. (I329e6)
वर्शन 1.0.0-alpha25
2 जून, 2021
androidx.camera:camera-extensions:1.0.0-alpha25
और androidx.camera:camera-view:1.0.0-alpha25
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha25 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- ExperimentalCameraFilter API अब एक्सपेरिमेंटल स्टेज से बाहर आ गए हैं और फ़ॉर्मल एपीआई बन गए हैं. इनका इस्तेमाल, एनोटेट किए गए OptIn के बिना किया जा सकता है. (I4bc94)
- एक ऐसी सुविधा जोड़ें जो इस्तेमाल के उदाहरणों के बीच निर्देशांकों को बदलती है. इस्तेमाल का उदाहरण: ImageAnalysis के इस्तेमाल के उदाहरण में पता लगाए गए कोऑर्डिनेट को बदलना और झलक में पता लगाए गए ऑब्जेक्ट को हाइलाइट करना. (I63ab1, b/137515129)
CameraView
को हटा दिया गया है.CameraView
की जगह अबCameraController
ने ले ली है. माइग्रेट करने का तरीका जानने के लिए, कृपया माइग्रेशन गाइड देखें.: (Id5005)
गड़बड़ियां ठीक की गईं
ExperimentalUseCaseGroupLifecycle
कोExperimentalUseCaseGroup
से बदला गया. (I3b2ef, b/159033688)
वर्शन 1.0.0-alpha24
21 अप्रैल, 2021
androidx.camera:camera-extensions:1.0.0-alpha24
और androidx.camera:camera-view:1.0.0-alpha24
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha24 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- एक्सपेरिमेंट के तौर पर उपलब्ध एपीआई के लिए, एनोटेशन
@Experimental
को@RequiresOptIn
से बदला गया. एक्सपेरिमेंट के तौर पर उपलब्ध एपीआई को कॉल करने के लिए, बंद किए गएandroidx.annotation.experimental.UseExperimental
के बजायandroidx.annotation.OptIn
का इस्तेमाल करें. (Iff226) - Samsung J5 Prime पर PreviewView के स्ट्रेच होने की समस्या को ठीक किया गया (Ib10b6)
Camera Extensions & View 1.0.0-alpha23
24 मार्च, 2021
androidx.camera:camera-extensions:1.0.0-alpha23
और androidx.camera:camera-view:1.0.0-alpha23
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha23 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- CameraView को बंद किया जा रहा है. इसके बजाय, कृपया
LifecycleCameraController
का इस्तेमाल करें. डेटा को दूसरी जगह भेजने से जुड़ी गाइड (Idac2c) देखें - setLinearZoom() में FloatRange एनोटेशन जोड़ा गया (I69971)
गड़बड़ियां ठीक की गईं
- कैमरे के पिन किए गए व्यू की डिपेंडेंसी, 1.0.0 आर्टफ़ैक्ट पर निर्भर करती हैं. camera-view पर निर्भर रहने की वजह से, Gradle की डिपेंडेंसी रिज़ॉल्यूशन सुविधा, camera-core, camera-camera2, और camera-lifecycle को अपने-आप 1.1.0 वर्शन पर अपग्रेड नहीं करेगी. हालांकि, अगर इन आर्टफ़ैक्ट को 1.1.0 वर्शन का इस्तेमाल करने के लिए साफ़ तौर पर सेट किया जाता है, तो camera-view अब भी इनके साथ काम करेगा. (Ic8fa1, b/181599852)
- PreviewView में, Samsung A3 पर स्ट्रेच की गई झलक की समस्या ठीक की गई. (Iacb30, b/180121821)
- उस समस्या को ठीक किया गया है जिसमें कैमरे को शुरू करने से पहले, कैमरा सिलेक्टर को सेट नहीं किया जा सकता था. (Ic8bd0)
Camera Extensions & View 1.0.0-alpha22
24 फ़रवरी, 2021
androidx.camera:camera-extensions:1.0.0-alpha22
और androidx.camera:camera-view:1.0.0-alpha22
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha22 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- CameraController में CameraInfo getter जोड़ें. (Ib8138, b/178251727)
गड़बड़ियां ठीक की गईं
- सिर्फ़ Preview या ImageCapture के बाइंड होने पर गड़बड़ियों की सूचना देने के लिए, ExtensionsErrorListener को ठीक किया गया है. (I5ae39)
Camera Extensions & View Version 1.0.0-alpha21
27 जनवरी, 2021
androidx.camera:camera-extensions:1.0.0-alpha21
और androidx.camera:camera-view:1.0.0-alpha21
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha21 में ये कमिट शामिल हैं.
इसे अन्य कैमरा लाइब्रेरी आर्टफ़ैक्ट के साथ काम करने के लिए रिलीज़ किया जा रहा है.
Camera Extensions & View Version 1.0.0-alpha20
16 दिसंबर, 2020
androidx.camera:camera-extensions:1.0.0-alpha20
और androidx.camera:camera-view:1.0.0-alpha20
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha20 में ये कमिट शामिल हैं.
इसे अन्य कैमरा लाइब्रेरी आर्टफ़ैक्ट के साथ काम करने के लिए रिलीज़ किया जा रहा है.
Camera-Extensions & Camera-View Version 1.0.0-alpha19
11 नवंबर, 2020
androidx.camera:camera-extensions:1.0.0-alpha19
और androidx.camera:camera-view:1.0.0-alpha19
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha19 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
@ExperimentalVideo
एनोटेशन को कैमरा व्यू में जोड़ा गया. इस एनोटेशन से उन एपीआई को मार्क किया जाता है जो एक्सपेरिमेंट के तौर पर उपलब्ध वीडियो फ़ंक्शनैलिटी को दिखाते हैं. इन सुविधाओं के पूरी तरह से डेवलप होने पर, इनमें बदलाव हो सकता है. इन एपीआई का इस्तेमाल करने वाले किसी भी तरीके में,@UseExperimental
एनोटेशन का इस्तेमाल किया जाना चाहिए. साथ ही,ExperimentalVideo
कोmarkerClass
के तौर पर इस्तेमाल किया जाना चाहिए. (I6d729)
Camera-Extensions Version 1.0.0-alpha18
14 अक्टूबर, 2020
androidx.camera:camera-extensions:1.0.0-alpha18
रिलीज़ हो गया है. वर्शन 1.0.0-alpha18 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- CameraX को शुरू करने और bindToLifecycle को कॉल करने में लगने वाले समय को कम किया गया है (I61dc5)
<UseCase>.getTargetRotation()
,Surface.ROTATION_0
दिखाता है. ऐसा तब होता है, जब इसे Camera इंस्टेंस से अटैच करने से पहले कॉल किया जाता है. हालांकि, ऐसा तब नहीं होता, जब Builder या UseCase पर targetRotation सेट किया गया हो. (I80fcd)
Camera-View Version 1.0.0-alpha18
14 अक्टूबर, 2020
androidx.camera:camera-view:1.0.0-alpha18
रिलीज़ हो गया है. वर्शन 1.0.0-alpha18 में ये कमिट शामिल हैं.
इसे अन्य कैमरा लाइब्रेरी आर्टफ़ैक्ट के साथ काम करने के लिए रिलीज़ किया जा रहा है.
Camera-Extensions वर्शन 1.0.0-alpha17
23 सितंबर, 2020
androidx.camera:camera-extensions:1.0.0-alpha17
रिलीज़ हो गया है. वर्शन 1.0.0-alpha17 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- Camera-Core 1.0.0-beta10 के साथ काम करने के लिए रिलीज़ किया गया
Camera-View वर्शन 1.0.0-alpha17
23 सितंबर, 2020
androidx.camera:camera-view:1.0.0-alpha17
रिलीज़ हो गया है. वर्शन 1.0.0-alpha17 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- Camera-Core 1.0.0-beta10 के साथ काम करने के लिए रिलीज़ किया गया
Camera-Extensions Version 1.0.0-alpha16
16 सितंबर, 2020
androidx.camera:camera-extensions:1.0.0-alpha16
रिलीज़ हो गया है. वर्शन 1.0.0-alpha16 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
ExtensionsManager
में एक तरीका जोड़ा गया है, ताकिExtensions
ऑब्जेक्ट मिल सके इसका इस्तेमाल, कैमरा इंस्टेंस (I4fb7e) पर एक्सटेंशन चालू करने और उनसे जुड़ी क्वेरी करने के लिए किया जाता है
Camera-View वर्शन 1.0.0-alpha16
16 सितंबर, 2020
androidx.camera:camera-view:1.0.0-alpha16
रिलीज़ हो गया है. वर्शन 1.0.0-alpha16 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
PreviewView#setDeviceRotationForRemoteDisplayMode()
औरPreviewView#getDeviceRotationForRemoteDisplayMode()
को हटाया गया. ये दोनों तरीके, झलक रोटेशन को पसंद के मुताबिक बनाने के लिए हैं.ऐसा तब किया जाता है, जब डिसप्ले रोटेशन के बजाय किसी और तरह का रोटेशन इस्तेमाल करना हो. जैसे, रिमोट डिसप्ले. अब डिसप्ले नहीं होने वाली झलक के रोटेशन को मैनेज करने के लिए,Preview#setTargetRotation()
और हाल ही में जोड़े गएPreviewView#getViewPort(targetRotation)
की मदद से, रोटेशन सेट करें. (Ib62cc)createSurfaceProvider()
का नाम बदलकरgetSurfaceProvider()
कर दिया गया. यह तरीका हमेशा Preview.SurfaceProvider का एक ही इंस्टेंस दिखाता है. (Iff83c)
गड़बड़ियां ठीक की गईं
- अगर एक्सटेंशन इफ़ेक्ट चालू है और वेंडर लाइब्रेरी को आउटपुट सर्फ़ेस पर कोई खास प्रोसेस करनी है, तो TextureView का इस्तेमाल करने के लिए, PreviewView को फ़ोर्स किया जाता है. (I0c3cc)
- झलक देखने के लिए, टारगेट को किसी भी तरह से घुमाने की अनुमति दें. बदलाव की जानकारी का हिसाब लगाया जाता है और उपयोगकर्ता को तुरंत भेज दिया जाता है. इसके लिए, नए
TranformationInfoListener
कॉलबैक का इस्तेमाल किया जाता है. (I21470)
ऐसी समस्याएं जिनके बारे में जानकारी पहले से है
- PreviewView में, असली उपयोगकर्ता के PreviewView पर क्लिक करने पर
OnClickListener#onClick()
शुरू नहीं होता. टच इवेंट को गलती से PreviewView#onTouchEvent() ने इस्तेमाल कर लिया है. इस समस्या को अगले रिलीज़ में ठीक कर दिया जाएगा. - अगर ViewPort का इस्तेमाल PreviewView के साथ किया जाता है, तो
PreviewView#getMeteringPointFactory()
से मिला MeteringPoint गलत हो सकता है.
Camera-Extensions Version 1.0.0-alpha15
19 अगस्त, 2020
androidx.camera:camera-extensions:1.0.0-alpha15
रिलीज़ हो गया है. वर्शन 1.0.0-alpha15 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
ExtensionsManager.init()
वाला तरीका अब 0 आर्ग्युमेंट के बजाय, कॉन्टेक्स्ट को पैरामीटर के तौर पर लेता है. (Ife754)Context.getApplicationContext()
से Application ऑब्जेक्ट वापस न करने वाले Context का इस्तेमाल करने पर, अब इनिशियलाइज़ेशन क्रैश नहीं होना चाहिए. (I3d3c9, b/160817073)Camera-View वर्शन 1.0.0-alpha15
19 अगस्त, 2020
androidx.camera:camera-view:1.0.0-alpha15
रिलीज़ हो गया है. वर्शन 1.0.0-alpha15 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
DisplayOrientedMeteringPointFactory
,CameraSelector
के बजायCameraInfo
इंस्टेंस लेता है. इसलिए, यह सीधे तौर पर मैप करता है कि फ़ैक्ट्री किस कैमरे के लिए पॉइंट जनरेट करेगी.DisplayOrientedMeteringPointFactory
का इस्तेमाल करने वाली सभी क्लास,CameraSelector
के बजायCameraInfo
इंस्टेंस का इस्तेमाल करती हैं. (I400c1)TextureViewMeteringPointFactory
को हटा दिया गया है.PreviewView
एक सार्वजनिक एपीआई (createMeteringPointFactory()
) उपलब्ध कराता है. इससे, मीटरिंग पॉइंट फ़ैक्ट्री बनाई जा सकती है. इससे कोई फ़र्क़ नहीं पड़ता कि वहTextureView
याSurfaceView
का इस्तेमाल कर रही है या नहीं. (Ide693)- PreviewView के
SURFACE_VIEW
/TEXTURE_VIEW
लागू करने के मोड का नाम बदलकरPERFORMANCE
/COMPATIBLE
कर दिया गया है.PERFORMANCE
, पुरानाSURFACE_VIEW
मोड है औरCOMPATIBLE
, पुरानाTEXTURE_VIEW
मोड है. (I0edc2) - इमेज कैप्चर करने के लिए, कैमरे की दिशा के आधार पर मेटाडेटा में, फ़्लिप हॉरिज़ॉन्टल फ़्लैग को बदलें. (I28499)
Camera-Extensions Version 1.0.0-alpha14
22 जुलाई, 2020
androidx.camera:camera-extensions:1.0.0-alpha14
रिलीज़ हो गया है. वर्शन 1.0.0-alpha14 में ये कमिट शामिल हैं.
Camera-View Version 1.0.0-alpha14
22 जुलाई, 2020
androidx.camera:camera-view:1.0.0-alpha14
रिलीज़ हो गया है. वर्शन 1.0.0-alpha14 में ये कमिट शामिल हैं.
Camera-Extensions Version 1.0.0-alpha13
24 जून, 2020
androidx.camera:camera-extensions:1.0.0-alpha13
रिलीज़ हो गया है. वर्शन 1.0.0-alpha13 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- कैमरा आईडी और CameraCharacteristics के हिसाब से कैमरों को फ़िल्टर करने के लिए, एक्सपेरिमेंटल इंटरफ़ेस जोड़े गए. (I28f61)
Camera-View वर्शन 1.0.0-alpha13
24 जून, 2020
androidx.camera:camera-view:1.0.0-alpha13
रिलीज़ हो गया है. वर्शन 1.0.0-alpha13 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- CameraView अब IllegalArgumentException के साथ क्रैश नहीं होता है. ऐसा तब होता है, जब इसे ऐसे LifecycleOwner से बाइंड किया जाता है जिसका Lifecycle, बाइंड होने के कुछ समय बाद DESTROYED स्टेट में ट्रांज़िशन करता है. DESTROYED स्टेट में लाइफ़साइकल को बाइंड करने पर, कैमरा खोलने की कोशिश नहीं की जाएगी. (I7c2b8)
- PreviewView StreamState अब CameraView.getPreviewStreamState() (I21a2b) के ज़रिए उपलब्ध है
Camera-Extensions Version 1.0.0-alpha12
10 जून, 2020
androidx.camera:camera-extensions:1.0.0-alpha12
रिलीज़ हो गया है. वर्शन 1.0.0-alpha12 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- फ़ोन के 'परेशान न करें' मोड में होने पर, CameraX को शुरू करते समय ऐप्लिकेशन के क्रैश होने की समस्या ठीक की गई. ऐप्लिकेशन क्रैश होने के बजाय,
InitializationException
में मौजूदCameraUnavailableException
को, शुरू होने के नतीजे केListenableFuture
पर सेट किया जाएगा. (I9909a, b/149413835)
Camera-View Version 1.0.0-alpha12
10 जून, 2020
androidx.camera:camera-view:1.0.0-alpha12
रिलीज़ हो गया है. वर्शन 1.0.0-alpha12 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
PreviewView#getBitmap()
एपीआई जोड़ें. यह एपीआई, झलक दिखाने वाले प्लैटफ़ॉर्म पर दिखाए गए कॉन्टेंट का बिटमैप वर्शन दिखाता है. (I9b500, b/157659818)
Camera-Extensions Version 1.0.0-alpha11
27 मई, 2020
androidx.camera:camera-extensions:1.0.0-alpha11
रिलीज़ हो गया है. वर्शन 1.0.0-alpha11 में ये कमिट शामिल हैं.
Camera-View Version 1.0.0-alpha12
10 जून, 2020
androidx.camera:camera-view:1.0.0-alpha12
रिलीज़ हो गया है. वर्शन 1.0.0-alpha12 में ये कमिट शामिल हैं.
नई सुविधाएं
एपीआई में हुए बदलाव
गड़बड़ियां ठीक की गईं
PreviewView#getBitmap()
एपीआई जोड़ें. यह एपीआई, झलक दिखाने वाले प्लैटफ़ॉर्म पर दिखाए गए कॉन्टेंट का बिटमैप वर्शन दिखाता है. (I9b500, b/157659818)
Camera-View Version 1.0.0-alpha11
27 मई, 2020
androidx.camera:camera-view:1.0.0-alpha11
रिलीज़ हो गया है. वर्शन 1.0.0-alpha11 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
PreviewView#getPreviewStreamState
एपीआई जोड़ें. इससे ऐप्लिकेशन को यह पता चल पाएगा कि झलक स्ट्रीम की जा रही है या नहीं. जब PreviewView, TEXTURE_VIEW मोड में होता है, तब STREAMING स्थिति यह भी पक्का करती है कि झलक वाली इमेज दिखे. (Ic0906, b/154652477)- अगर ऐप्लिकेशन रिमोट डिसप्ले मोड में चल रहा है, तो ट्रांसफ़ॉर्म कैलकुलेशन के लिए डिवाइस रोटेशन की सुविधा देने वाला
PreviewView#setDeviceRotationForRemoteDisplayMode()
एपीआई जोड़ा गया. (I59b95, b/153514525)
गड़बड़ियां ठीक की गईं
- Android 7.0 और इससे पहले के वर्शन पर काम करने वाले
FULL/LIMITED/LEVEL_3
कैमरों में, झलक के खराब दिखने की समस्या को ठीक किया गया है. Android का वर्शन 7.0 या इससे पहले का होने पर,ImplementationMode#TEXTURE_VIEW
मोड का इस्तेमाल करना ज़रूरी है. (I83e30, b/155085307) CameraInfo
पैरामीटर कोPreviewView#createSurfaceProvider()
से हटा दिया गया है. अबPreviewView
, इसेSurfaceRequest
से अंदरूनी तौर पर वापस पाता है. (If18f0, b/154652477)- CameraView में, VideoCapture के डिफ़ॉल्ट आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) को 16:9 पर सेट किया गया है. (Ie6a7b, b/153237864)
PreviewView
फ़्रैगमेंट को स्वाइप करके बाहर निकालनेPreview
और फिर ViewPager2 में वापस स्वाइप करने पर,PreviewView
काली स्क्रीन की समस्याओंPreview
को ठीक किया गया.removeView(previewview)
और फिरaddView(previewView)
पर क्लिक करने पर होने वाली समस्या को भी ठीक किया गया है. (Iab555, b/149877652, b/147354615)CameraView#takePicture()
एपीआई को अपडेट करें, ताकि इमेज कोUri
औरOutputStream
में सेव किया जा सके. कैननिकल उदाहरण के तौर परUri
का इस्तेमाल करने के लिए, टेस्ट ऐप्लिकेशन को अपडेट करें. (Ia2459, b/153607583)ScaleType
एट्रिब्यूट सेट करके, एक्सएमएल लेआउट से PreviewView का स्केल टाइप सेट किया जा सकता है. (I08565, b/153015659)CameraView.ScaleType
को हटा दिया गया है. इसके बजाय, CameraView के साथ स्केल टाइप को सेट/पाने के लिए,PreviewView.ScaleType
का इस्तेमाल करें. (Ia8974, b/153014831)- अगर
PreviewView
में पहले से कोई बैकग्राउंड कलर नहीं है, तो डिफ़ॉल्ट रूप से बैकग्राउंड कलर सेट करें. इससे, प्रीव्यू स्ट्रीम शुरू होने से पहले, इसके पीछे मौजूद कॉन्टेंट नहीं दिखता. (I09fad)
Camera-Extensions Version 1.0.0-alpha10
15 अप्रैल, 2020
androidx.camera:camera-extensions:1.0.0-alpha10
रिलीज़ हो गया है. वर्शन 1.0.0-alpha10 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- Camera-Core की रिलीज़ के लिए सुधार किए गए हैं
Camera-View Version 1.0.0-alpha10
15 अप्रैल, 2020
androidx.camera:camera-view:1.0.0-alpha010
रिलीज़ हो गया है. वर्शन 1.0.0-alpha010 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- इस वर्शन में, पिछली जानी-पहचानी समस्या को ठीक किया गया है. इस समस्या में,
PreviewView
का surfaceView, कुछ डिवाइसों पर ठीक से काम नहीं कर रहा था. साथ ही, झलक को फिर से शुरू करने के बाद, ऐप्लिकेशन क्रैश हो जाता था. (I5ed6b)
Camera-Extensions वर्शन 1.0.0-alpha09
1 अप्रैल, 2020
androidx.camera:camera-extensions:1.0.0-alpha09
रिलीज़ हो गया है. वर्शन 1.0.0-alpha09 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
camera-camera2:1.0.0-beta02
,camera-core:1.0.0-beta02
, औरcamera-lifecycle:1.0.0-beta02
आर्टफ़ैक्ट में गड़बड़ियां ठीक करने के लिए अपडेट किया गया
Camera-View वर्शन 1.0.0-alpha09
1 अप्रैल, 2020
androidx.camera:camera-view:1.0.0-alpha09
को रिलीज़ किया गया. वर्शन 1.0.0-alpha09 में ये कमिट शामिल हैं.
ऐसी समस्याएं जिनके बारे में जानकारी पहले से है
PreviewView
के साथPreviewView
का इस्तेमाल करने पर, हो सकता है कि यह कुछ डिवाइसों पर ठीक से काम न करे. ऐसा इसलिए होता है, क्योंकि जिस विंडो मेंSurfaceView
का इस्तेमाल किया जाता है उसका लाइफ़साइकल बंद होने पर,SurfaceView
का इस्तेमाल नहीं किया जा सकता. जब विंडो फिर से चालू होती है, तो कैमरा फिर से खुल जाता है. ऐसा हो सकता है किSurfaceView
का इस्तेमाल फिर से शुरू होने से पहले ही, कैमरा झलक दिखाने की कोशिश करे.ImplementationMode.SURFACE_VIEW
फ़िलहाल, आपकोImplementationMode.TEXTURE_VIEW
का इस्तेमाल करना चाहिए.
एपीआई में हुए बदलाव
PreviewView.setImplementationMode()
का नाम बदलकरPreviewView.setPreferredImplementationMode()
कर दिया गया.PreviewView.getImplementationMode()
का नाम बदलकरPreviewView.getPreferredImplementationMode()
कर दिया गया.PreviewView.getSurfaceProvider()
कोPreviewView.createSurfaceProvider(CameraInfo)
से बदल दिया गया है. यह एक ऐसा इंस्टेंस है जिसमें शून्य वैल्यू हो सकती है. इसका इस्तेमाल,ImplementationMode.SURFACE_VIEW
का इस्तेमाल करके झलक को ऑप्टिमाइज़ करने के लिए किया जाता है.CameraInfo
अगर कोई शून्य इंस्टेंस पास किया जाता है या आपने पसंदीदा तरीके कोImplementationMode.TEXTURE_VIEW
पर सेट किया है, तोImplementationMode.TEXTURE_VIEW
का इस्तेमाल अंदरूनी तौर पर किया जाता है.यहां दिए गए कोड सैंपल में दिखाया गया है कि PreviewView के साथ, झलक देखने की सुविधा का इस्तेमाल कैसे किया जाता था.
preview.setSurfaceProvider(previewView.previewSurfaceProvider) cameraProvider.bindToLifecycle(lifecycleOwner, cameraSelector, preview)
फ़िलहाल, ये प्रॉम्प्ट लिखे जा सकते हैं:
val camera = cameraProvider.bindToLifecycle(lifecycleOwner, cameraSelector, preview) previewView.preferredImplementationMode = ImplementationMode.TEXTURE_VIEW preview.setSurfaceProvider(previewView.createSurfaceProvider(camera.cameraInfo))
@UiThread
एनोटेशन कोPreviewView.getSurfaceProvider()
में जोड़ा गया है. इसका मतलब है कि इसे मुख्य थ्रेड से कॉल किया जाना चाहिए. (I192f3)PreviewView.setScaleType()
जोड़ा गया है. इससे झलक का स्केल टाइप सेट किया जा सकता है. यहPreviewView.ScaleType
में दी गई वैल्यू में से किसी एक को स्वीकार करता है. इसकी डिफ़ॉल्ट वैल्यूPreviewView.ScaleType.FILL_CENTER
होती है.PreviewView.getScaleType()
को जोड़ा गया.एक्सएमएल लेआउट में
implementationMode
एट्रिब्यूट का इस्तेमाल करके,PreviewView
के लिए लागू करने का मोड सेट करने की सुविधा हटा दी गई है.createMeteringPointFactory()
API को PreviewView में जोड़ें, ताकिPreviewView
में (x, y) कोMeteringPoint
में बदला जा सके. (Ib36d7)
गड़बड़ियां ठीक की गईं
- उन मामलों को ठीक किया गया है जिनमें
PreviewView
का साइज़ बदलने के बाद, गलत झलक दिखती है. (I71101)
Camera-Extensions वर्शन 1.0.0-alpha08
26 फ़रवरी, 2020
androidx.camera:camera-extensions:1.0.0-alpha08
रिलीज़ हो गया है. वर्शन 1.0.0-alpha08 में ये कमिट शामिल हैं.
Camera-View वर्शन 1.0.0-alpha08
26 फ़रवरी, 2020
androidx.camera:camera-view:1.0.0-alpha08
रिलीज़ हो गया है. वर्शन 1.0.0-alpha08 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
SurfaceRequest.provideSurface()
पर मौजूदListenableFuture
कोExecutor
औरCallback
से बदला गया. इससे एपीआई का इस्तेमाल करना आसान हो जाता है. अबprovideSurface()
पर अपवादों को मैनेज करने की ज़रूरत नहीं होती. साथ ही, यह भी पक्का किया जाता है किprovideSurface()
कॉलबैक को रद्द नहीं किया जा सकता. ऐसा इसलिए किया गया है, ताकि पुराने डिवाइसों पर क्रैश होने की समस्या न हो. यह समस्या, समय से पहले सर्फ़ेस रिलीज़ करने की वजह से होती है.SurfaceRequest.Result
ऑब्जेक्ट का इस्तेमाल अब यह ट्रैक करने के लिए किया जाता है किSurfaceRequest
, दिए गएSurface
का इस्तेमाल कैसे करता है. (I7854b)SurfaceRequest.setSurface(Surface)
का नाम बदलकरSurfaceRequest.provideSurface(Surface)
औरSurfaceRequest.setWillNotComplete()
का नाम बदलकरSurfaceRequest.willNotProvideSurface()
किया गया. (I224fe)- ProGuard चालू होने पर, ऐप्लिकेशन के वैरिएंट के इनिशियलाइज़ेशन की समस्या ठीक की गई. ऐसा,
CameraXConfig
की डिफ़ॉल्ट सेवा देने वाली कंपनी को सेट करने वाले फ़्लैग को सुरक्षित रखकर किया गया. (I2d6c1)
Camera-Extensions Version 1.0.0-alpha07
10 फ़रवरी, 2020
androidx.camera:camera-extensions:1.0.0-alpha07
रिलीज़ हो गया है. वर्शन 1.0.0-alpha07 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
ImageCapture.OnImageSavedCallback.onError()
औरImageCapture.OnImageCapturedCallback.onError()
में पहले पास किए गए आर्ग्युमेंट को अब एक ही आर्ग्युमेंटImageCaptureException
से बदल दिया गया है. इसमें अब भी वह सारी जानकारी शामिल है जो पहले पास की गई थी.ImageCapture.OnImageSavedCallback.onImageSaved()
में पहले पास किए गए फ़ाइल आर्ग्युमेंट को हटा दिया गया है. (I750d2)
Camera-View Version 1.0.0-alpha07
10 फ़रवरी, 2020
androidx.camera:camera-view:1.0.0-alpha07
रिलीज़ हो गया है. वर्शन 1.0.0-alpha07 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
PreviewView
को लागू करने पर, अबTextureView
का साइज़, कैमरा सेंसर के आउटपुट साइज़ पर सेट हो जाता है. इसके बाद, इसे स्केल करके पैरंटPreviewView
के साइज़ के बराबर कर दिया जाता है.TextureView
अगर आपको कैमरा प्रीव्यू को यूज़र इंटरफ़ेस (यूआई) के किसी हिस्से (जैसे कि पूरी स्क्रीन) में दिखाना है, तो आपकोPreviewView
का साइज़ तय नहीं करना चाहिए. इसके अलावा, आपकोPreviewView
के कॉन्टेंट को रैप नहीं करना चाहिए. इसके लिए, "wrap_content
" एट्रिब्यूट का इस्तेमाल किया जा सकता है. ऐसा करने से, कैमरा प्रीव्यू सिर्फ़PreviewView
के कुछ हिस्से में दिख सकता है. ऐसा तब होता है, जब कैमरा सेंसर का आउटपुट साइज़ छोटा होता है. इसके बजाय, आपकोPreviewView
को उसके पैरंट जितना बड़ा सेट करना चाहिए. उदाहरण के लिए, "match_parent
" एट्रिब्यूट का इस्तेमाल करके. (1204869)
गड़बड़ियां ठीक की गईं
ImageCapture
को अपडेट किया गया है, ताकि इमेज कोUri
औरOutputStream
में सेव किया जा सके.takePicture
के ज़्यादा इस्तेमाल किए गए तरीकों को एक में मिला दिया गया है.Uri
को कैननिकल उदाहरण के तौर पर इस्तेमाल करने के लिए, टेस्ट ऐप्लिकेशन को अपडेट किया गया. (Ia3bec)Preview.PreviewSurfaceProvider
का नाम बदलकरPreview.SurfaceProvider
कर दिया गया है.SurfaceProvider
के लिए, अब डेवलपर को अपनाListenableFuture
बनाने की ज़रूरत नहीं है. साथ ही,Surface
देने का काम अब नएSurfaceRequest
ऑब्जेक्ट के ज़रिए किया जाता है.Preview.getPreviewSurfaceProvider()
तरीके को हटा दिया गया है, क्योंकिPreview
कोPreviewView
जैसी अन्य क्लास के साथ जोड़ने पर, इसका गलत इस्तेमाल किया जा सकता है. (I20105)ImageCapture.OnImageSavedCallback.onError()
औरImageCapture.OnImageCapturedCallback.onError()
में पहले पास किए गए आर्ग्युमेंट को अब एक ही आर्ग्युमेंटImageCaptureException
से बदल दिया गया है. इसमें अब भी वह सारी जानकारी शामिल है जो पहले पास की गई थी.ImageCapture.OnImageSavedCallback.onImageSaved()
में पहले पास किए गए फ़ाइल आर्ग्युमेंट को हटा दिया गया है. (I750d2)- एपीआई को अपडेट किया गया है. इसमें
CameraInfo
केgetZoomRatio()
,getMaxZoomRatio()
,getMinZoomRatio()
, औरgetLinearZoom()
तरीकों कोgetZoomState()
में मर्ज किया गया है. इससेZoomState
इंस्टेंस मिलता है. (Ib19fe)
Camera-Extensions वर्शन 1.0.0-alpha06
22 जनवरी, 2020
androidx.camera:camera-extensions:1.0.0-alpha06
रिलीज़ हो गया है. वर्शन 1.0.0-alpha06 में ये कमिट शामिल हैं.
अपडेट
- Camera Core और Camera2 में हुए बदलावों के साथ काम करने के लिए, कई सुधार और अपडेट किए गए हैं.
Camera-View वर्शन 1.0.0-alpha06
22 जनवरी, 2020
androidx.camera:camera-view:1.0.0-alpha06
रिलीज़ हो गया है. वर्शन 1.0.0-alpha06 में ये कमिट शामिल हैं.
अपडेट
- Camera Core और Camera2 में हुए बदलावों के साथ काम करने के लिए, कई सुधार और अपडेट किए गए हैं.
Camera-Extensions Version 1.0.0-alpha05
18 दिसंबर, 2019
androidx.camera:camera-extensions:1.0.0-alpha05
रिलीज़ हो गया है. वर्शन 1.0.0-alpha05 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- इसे Camera Core के इंटरनल एपीआई से मेल खाने के लिए अपडेट किया गया है.
Camera-View वर्शन 1.0.0-alpha05
18 दिसंबर, 2019
androidx.camera:camera-view:1.0.0-alpha05
रिलीज़ हो गया है. वर्शन 1.0.0-alpha05 में ये कमिट शामिल हैं.
ऐसी समस्याएं जिनके बारे में जानकारी पहले से है
- PreviewView का इस्तेमाल करते समय, आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) गलत हो सकता है (b/146215202).
नई सुविधाएं
PreviewView.TextureViewImplementation
नाम की एक नई क्लास लागू की गई है. यह क्लास, SurfaceTexture के लाइफ़साइकल को TextureView के सर्फ़ेस के लिए कैमरे के इस्तेमाल के साथ सिंक करती है.
Camera-Extensions वर्शन 1.0.0-alpha04
4 दिसंबर, 2019
androidx.camera:camera-extensions:1.0.0-alpha04
रिलीज़ हो गया है. camera-extensions के वर्शन 1.0.0-alpha04 में ये कमिट शामिल हैं
एपीआई में हुए बदलाव
किसी एक्सटेंशन की उपलब्धता और उसे चालू करने की जांच करने के लिए, अब
CameraSelector
को इनपुट पैरामीटर के तौर पर इस्तेमाल किया जाता है. यह वहीCameraSelector
होना चाहिए जिसका इस्तेमाल, इस्तेमाल के उदाहरण को बाइंड करने के लिए किया जाता है.val cameraSelector = CameraSelector.DEFAULT_BACK_CAMERA val builder = ImageCapture.Builder() val bokehImageCaptureExtender = BokehImageCaptureExtender.create(builder) if (bokehImageCaptureExtender.isExtensionAvailable(cameraSelector)) { bokehImageCaptureExtender.enableExtension(cameraSelector) } val imageCapture = builder.build() mCameraProvider?.bindToLifecycle(this, cameraSelector, imageCapture)
एक्सटेंशन लाइब्रेरी का इस्तेमाल करने से पहले, आपको एक्सटेंशन शुरू करने होंगे.
val availability = ExtensionsManager.init() Futures.addCallback<ExtensionsManager.ExtensionsAvailability>( availability, object : FutureCallback<ExtensionsManager.ExtensionsAvailability> { override fun onSuccess(availability: ExtensionsManager.ExtensionsAvailability?) { // Ready to make extensions calls } override fun onFailure(throwable: Throwable) { // Extensions could not be initialized } }, Executors.newSingleThreadExecutor() )
Camera-View वर्शन 1.0.0-alpha04
4 दिसंबर, 2019
androidx.camera:camera-view:1.0.0-alpha04
रिलीज़ हो गया है. camera-view के वर्शन 1.0.0-alpha04 में ये कमिट शामिल हैं
एपीआई में हुए बदलाव
- किसी ऐप्लिकेशन में, झलक देखने की सुविधा का इस्तेमाल करके आसानी से आउटपुट दिखाने के लिए,
PreviewView
क्लास उपलब्ध कराई जाती है. लेआउट में
PreviewView
शामिल किए जा सकते हैं:<androidx.camera.view.PreviewView android:id="@+id/preview_view" … />
PreviewView
, झलक देखने की सुविधा को आसानी से कनेक्ट करने के लिएPreviewSurfaceProvider
उपलब्ध कराता हैpreview.setPreviewSurfaceProvider(previewView.previewSurfaceProvider)
एपीआई के नाम में “
ZoomLevel
” को अब “ZoomRatio
” के तौर पर इस्तेमाल किया जाता हैकुछ तरीके के पैरामीटर में, नल वैल्यू स्वीकार करने की सुविधा में बदलाव किया गया है
Camera-Extensions और Camera-View वर्शन 1.0.0-alpha03
9 अक्टूबर, 2019
androidx.camera:camera-extensions:1.0.0-alpha03
और androidx.camera:camera-view:1.0.0-alpha03
रिलीज़ हो गए हैं. ये camera-extensions:1.0.0-alpha03
में शामिल कमिट हैं और ये camera-view:1.0.0-alpha03
में शामिल कमिट हैं.
नई सुविधाएं
- एक्सटेंशन के लिए, कॉन्टेक्स्ट इनिशियलाइज़र जोड़ा गया. एक्सटेंशन का वर्शन 1.1.0 पर अपडेट किया गया
Camera-Extensions और Camera-View वर्शन 1.0.0-alpha02
5 सितंबर, 2019
androidx.camera:camera-extensions:1.0.0-alpha02
और
androidx.camera:camera-view:1.0.0-alpha02
रिलीज़ हो गए हैं. ये camera-extensions:1.0.0-alpha02 में शामिल कमिट हैं और ये camera-view:1.0.0-alpha02 में शामिल कमिट हैं.
PreviewImageProcessorImpl
ने टाइमस्टैंप को सही तरीके से लागू किया है या नहीं, इसकी पुष्टि करने के लिए टेस्ट जोड़े गए.- Nexus 5 (एपीआई लेवल 21) पर
ExtensionTest
टेस्ट के काम न करने की समस्या ठीक की गई. साथ ही, यह पक्का किया गया कि झलक उपलब्ध हो.
Camera-Extensions और Camera-View वर्शन 1.0.0-alpha01
7 अगस्त, 2019
androidx.camera:camera-extensions:1.0.0-alpha01
और
androidx.camera:camera-view:1.0.0-alpha01
रिलीज़ हो गए हैं.
ये camera-extensions:1.0.0-alpha01 में शामिल कमिट हैं और ये camera-view:1.0.0-alpha01 में शामिल कमिट हैं
- आने वाले समय में, कैमरा एक्सटेंशन के लिए नई लाइब्रेरी उपलब्ध कराई जाएगी. इससे, उन डिवाइसों पर इफ़ेक्ट ऐक्सेस किए जा सकेंगे जिन पर ये एक्सटेंशन काम करते हैं. इस लाइब्रेरी पर अभी काम चल रहा है.
- Camera View क्लास की नई सुविधा. इस लाइब्रेरी पर अभी काम चल रहा है.