CameraX
इस टेबल में, androidx.camera
ग्रुप के सभी आर्टफ़ैक्ट शामिल हैं.
सह-प्रॉडक्ट | रिलीज़ किया गया जांचा और परखा हुआ वर्शन | रिलीज़ कैंडिडेट | बीटा रिलीज़ | ऐल्फ़ा रिलीज़ |
---|---|---|---|---|
कैमरा-कैमरा2 | 1.4.0 | - | - | 1.5.0-ऐल्फ़ा03 |
camera-core | 1.4.0 | - | - | 1.5.0-alpha03 |
कैमरा कंपोज़ | - | - | - | 1.5.0-ऐल्फ़ा03 |
कैमरा-इफ़ेक्ट | 1.4.0 | - | - | 1.5.0-alpha03 |
camera-extensions | 1.4.0 | - | - | 1.5.0-alpha03 |
camera-feature-combination-query | - | - | - | 1.5.0-ऐल्फ़ा03 |
camera-feature-combination-query-play-services | - | - | - | 1.5.0-ऐल्फ़ा03 |
camera-lifecycle | 1.4.0 | - | - | 1.5.0-alpha03 |
camera-mlkit-vision | 1.4.0 | - | - | 1.5.0-alpha03 |
camera-view | 1.4.0 | - | - | 1.5.0-ऐल्फ़ा03 |
camera-viewfinder | - | - | 1.3.0-beta02 | 1.4.0-alpha07 |
camera-video | 1.4.0 | - | - | 1.5.0-ऐल्फ़ा03 |
डिवाइस की जांच की जा रही है
CameraX की जांच, हमारी लैब में कई डिवाइसों पर की जाती है. फ़िलहाल लैब में मौजूद डिवाइसों की सूची देखने के लिए, CameraX लैब में टेस्ट किए गए डिवाइस देखें.
डिपेंडेंसी तय करना
CameraX पर डिपेंडेंसी जोड़ने के लिए, आपको अपने प्रोजेक्ट में Google Maven रिपॉज़िटरी जोड़नी होगी. ज़्यादा जानकारी के लिए, Google की Maven रिपॉज़िटरी पढ़ें.
अपने ऐप्लिकेशन या मॉड्यूल के लिए, build.gradle
फ़ाइल में उन आर्टफ़ैक्ट की डिपेंडेंसी जोड़ें जिनकी आपको ज़रूरत है:
Groovy
dependencies { // CameraX core library using the camera2 implementation def camerax_version = "1.5.0-alpha03" // 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-alpha03" // 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 को बेहतर बनाने में मदद मिलती है. अगर आपको कोई नई समस्या मिलती है या इस लाइब्रेरी को बेहतर बनाने के लिए आपके पास कोई सुझाव है, तो हमें बताएं. नई लाइब्रेरी बनाने से पहले, कृपया इस लाइब्रेरी में मौजूद मौजूदा समस्याओं पर एक नज़र डालें. स्टार बटन पर क्लिक करके, किसी मौजूदा समस्या पर अपना वोट जोड़ा जा सकता है.
ज़्यादा जानकारी के लिए, समस्या ट्रैकर का दस्तावेज़ देखें.
कैमरा व्यूफ़ाइंडर कंपोज वर्शन 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 का नेटिव व्यूफ़ाइंडर कॉम्पोज़ेबल शामिल है. इसका इस्तेमाल CameraX और Camera2 के साथ किया जा सकता है. कंपोज़ेबल व्यूफ़ाइंडर में अलग-अलग आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) और टच इवेंट को हैंडल करने की सुविधा है.
कैमरा व्यूफ़ाइंडर का वर्शन 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
केImplementationMode
Enums का नाम बदलें, ताकि लागू किए गए मौजूदा फ़ंक्शन को बेहतर तरीके से दिखाया जा सके. साथ ही,TransformationInfo.sourceRotation
के लिए तय कॉन्सटेंट जोड़ें. (Ic6149)- ज़ूम जेस्चर की स्थितियों को कैप्सुलेट करने के लिए,
ZoomGestureDetector.ZoomEvent
जोड़ा गया. (I84cdf)
कैमरा वर्शन 1.5
वर्शन 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
उपलब्ध कराने होंगे. पहला वाला RAW इमेज के लिए और दूसरा JPEG इमेज के लिए. (Ib0f3d)
गड़बड़ियां ठीक की गईं
VideoCapture
चालू होने पर, TCL डिवाइसों पर झलक और वीडियो के अंडर-एक्सपोज़र की समस्या को ठीक किया गया. (Id7a64)PreviewView.getMeteringPointFactory
के साथstartFocusMetering
को चालू करने पर, सेंसर के सही निर्देशांक न मिलने की समस्या को ठीक किया गया. ऐसा तब होता है, जब कोई इफ़ेक्ट चालू हो या चार इस्तेमाल के उदाहरण (स्ट्रीम शेयर करना) बाउंड हों. (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 में ये कमिट शामिल हैं.
नई सुविधाएं
- डिवाइस पर काम करने वाली कैमरे की सुविधाओं के बारे में क्वेरी करने के लिए नए एपीआई. उदाहरण के लिए, यह देखना कि HDR और 60FPS को एक साथ चालू किया जा सकता है या नहीं. इसमें दो आर्टफ़ैक्ट शामिल हैं: camera-feature-combination-query और camera-feature-combination-query-play-services.
यह camera2 के
CameraManager#getCameraDeviceSetup#isSessionConfigurationSupported
API का काम करने वाला वर्शन है. इसमें Google Play services से मिला अतिरिक्त डेटा भी शामिल है.
गड़बड़ियां ठीक की गईं
- लेगसी लेवल वाले डिवाइसों पर,
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 इमेज को सेव कर सकता है. इसके अलावा, अगर इन डिवाइसों पर
ImageProxy.toBitmap()
फ़ंक्शन को कॉल करते समय, JPEG इमेज के मेटाडेटा से जुड़ी गड़बड़ी होती है, तो सही Bitmap ऑब्जेक्ट दिखाए जा सकते हैं. (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 में ये कमिट होते हैं.
एपीआई में बदलाव
- एक साथ दो कैमरों से वीडियो कैप्चर करने के लिए, कॉम्पोज़िशन सेटिंग सेट करने के लिए एपीआई उपलब्ध कराएं. सेटिंग में ब्लेंडिंग के लिए ऐल्फ़ा वैल्यू, x में ऑफ़सेट, y कोऑर्डिनेट, कैमरा फ़्रेम की डिसप्ले विंडो की चौड़ाई और ऊंचाई का स्केल, शामिल हैं. ऑफ़सेट, चौड़ाई, और ऊंचाई की जानकारी, डिवाइस के सामान्य निर्देशांक में दी जाती है. (Ia2b8a)
CameraProvider.getCameraInfo
को आधिकारिक एपीआई के तौर पर एक्सपोज़ किया गया है. (I901cd)- शुरुआती म्यूट स्टेटस को कंट्रोल करने के लिए, एपीआई
PendingRecording.withAudioEnabled(boolean initialMuted)
जोड़ा गया. (I635c3, b/354829267)
गड़बड़ियां ठीक की गईं
bindToLifecycle
को नष्ट किए गएLifecycleOwner
के साथ लागू करने पर क्रैश होने की समस्या को ठीक किया गया है. (I6e6d8)- Motorola Edge 20 Fusion पर
VideoCapture
से बाइंड करने के दौरान, फ़िक्स्ड प्रीव्यू के दौरान सामने वाले कैमरे की स्क्रीन काली दिखती है. (I1fe88) PreviewView
में ज़ूम जेस्चर को आसानी से पहचानने के लिए, कॉन्फ़िगरेशन को ऑप्टिमाइज़ किया गया है. (I04ffc)
कैमरा वर्शन 1.4
वर्शन 1.4.0
30 अक्टूबर, 2024
androidx.camera:camera-*:1.4.0
रिलीज़ हो गया है. वर्शन 1.4.0 में ये कमिट शामिल हैं.
1.3.0 के बाद किए गए अहम बदलाव
CameraX 1.4.0 में कई शानदार अपडेट हैं! यहां सार दिया गया है:
हेडलाइन की सुविधा: 10-बिट एचडीआर:
- आसानी से शानदार एचडीआर फ़ोटो और वीडियो कैप्चर करें.
- एचएलजी और 10-बिट एचईवीसी एन्कोडिंग के साथ काम करता है.
- 10-बिट एचडीआर की झलक देखें और डिवाइस की क्षमताओं के बारे में क्वेरी करें.
- यह सुविधा,
UltraHDR
इमेज और एचडीआर वीडियो के साथ काम करती है. यह सुविधा, ज़्यादा से ज़्यादा डिवाइसों पर उपलब्ध है.
अन्य शानदार सुविधाएं:
- Kotlin एक्सटेंशन:
takePicture
औरawaitInstance
सस्पेंड फ़ंक्शन जोड़े गए. - रीयल-टाइम इफ़ेक्ट: वॉटरमार्क और ऑब्जेक्ट को हाइलाइट करने जैसे इफ़ेक्ट लागू करें.
- CameraController API: वीडियो कैप्चर कॉन्फ़िगरेशन के लिए नए कंट्रोल.
- झलक को स्थिर करना: डिवाइस की क्षमता के बारे में क्वेरी करें और स्थिरीकरण की सुविधा चालू करें.
- वीडियो कैप्चर की सुविधा को बेहतर बनाया गया है: क्वालिटी पर बेहतर कंट्रोल और हाई रिज़ॉल्यूशन का ऐक्सेस.
- CameraX एक्सटेंशन इंटिग्रेशन:
VideoCapture
औरImageCapture
की नई सुविधाओं के साथ आसानी से इंटिग्रेशन. - शटर साउंड एपीआई: इलाके के हिसाब से शटर साउंड की ज़रूरी शर्तों के बारे में आसानी से जानें.
- स्क्रीन फ़्लैश: सामने वाले कैमरे से कम रोशनी में बेहतर फ़ोटो ली जा सकती हैं.
- कैमरा एक्सटेंशन मेटाडेटा एपीआई: एक्सटेंशन की क्वालिटी में बदलाव करने के लिए, एपीआई की सुविधा और
ExtensionMode#AUTO
में मौजूदा एक्सटेंशन मोड की सूचनाएं पाएं. गड़बड़ियों को ठीक करने के बारे में ज़्यादा जानकारी, बीटा और आरसी वर्शन के एलान में देखी जा सकती है.
वर्शन 1.4.0-rc04
16 अक्टूबर, 2024
androidx.camera:camera-*:1.4.0-rc04
रिलीज़ हो गया है. वर्शन 1.4.0-rc04 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
PreviewView.getMeteringPointFactory
के साथstartFocusMetering
को चालू करने पर, सेंसर के सही निर्देशांक न मिलने की समस्या को ठीक किया गया. ऐसा तब होता है, जब कोई इफ़ेक्ट चालू हो या चार इस्तेमाल के उदाहरण (स्ट्रीम शेयर करना) बाउंड हों. (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 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
bindToLifecycle
को नष्ट किए गएLifecycleOwner
के साथ लागू करने पर क्रैश होने की समस्या को ठीक किया गया है. (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)
एपीआई में हुए बदलाव
- जिन मामलों में
ScreenFlashView
को साफ़ तौर पर नहीं जोड़ा गया है उनके लिएPreviewView.getScreenFlash
औरPreviewView.setScreenFlashOverlayColor
एपीआई जोड़े गए हैं. (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
की तरह ही, झलक के इस्तेमाल के उदाहरण के लिए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 पर, झलक की सुविधा का इस्तेमाल करके फ़ोटो लेने पर क्रैश होने की समस्या को ठीक किया गया.
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 इमेज फ़ॉर्मैट का इस्तेमाल करके, अल्ट्रा एचडीआर वाली इमेज को कंप्रेस करके कैप्चर करेगा. यह फ़ॉर्मैट, पुराने सिस्टम के साथ काम करता है और इसे SDR 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()
एपीआई जोड़ें. मैट्रिक, कैमरे के सेंसर के निर्देशांकों कोPreviewView
के निर्देशांकों में बदलने की प्रोसेस को दिखाती है. इसका इस्तेमाल, निर्देशांकों को एक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()
फ़ंक्शन को कॉल करते समय, सही Bitmap ऑब्जेक्ट दिखाए जा सकते हैं. (I8d6eb, b/309005680) - अगर कैप्चर की गई इमेज 10 एमबी से बड़ी है, तो अमान्य JPEG डेटा की जांच करने की सुविधा को सभी Samsung डिवाइसों पर लागू करें. इससे, Samsung डिवाइसों पर इमेज का साइज़ बहुत ज़्यादा होने की समस्या ठीक हो सकती है. (Ic2a65, b/288828159)
- CameraX एक्सटेंशन से
ImageAnalysis
काम करने की सुविधा हटा दी गई है. ऐसा इसलिए, क्योंकि कई OEM पर एक्सटेंशन लागू करने पर,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
API का 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
अनबाउंड होने या कैमरा बंद होने पर,ImageCapture#ScreenFlash#clear
इवेंट तुरंत ट्रिगर हो जाता है. साथ ही, कुछ गड़बड़ियों को ठीक करता है, जिनमें कैप्चर ठीक से पूरा न होने की वजह से, इवेंट कभी ट्रिगर नहीं होता. (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, फ़्रेमवर्क-साइड एपीआई को हैंडल करने का ध्यान रखेगा.साथ ही, ज़रूरत के मुताबिक, ऐप्लिकेशन के यूज़र इंटरफ़ेस (यूआई) बदलावों के साथ समय को सिंक करेगा. उदाहरण के लिए, ऐप्लिकेशन की स्क्रीन के रंग/चमक में बदलाव होने के बाद AE प्रीकैप ट्रिगर करना. ऐप्लिकेशन को सिर्फ़ 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)
- झलक
UseCase
मेंPreviewCapabitlity
क्वेरी के लिए एपीआई को एक्सपोज़ करें. (Ie5b6c) VideoCapture
के लिए ज़्यादा क्वालिटी का इस्तेमाल करने के लिए, एपीआई जोड़े गए.Recorder.Builder#setVideoCapabilitiesSource(int)
का इस्तेमालVIDEO_CAPABILITIES_SOURCE_CODEC_CAPABILITIES
के साथ करके,Recorder
इंस्टेंस बनाया जा सकता है. यह इंस्टेंस,VIDEO_CAPABILITIES_SOURCE_CAMCORDER_PROFILE
से ज़्यादा क्वालिटी के साथ काम करता है. आम तौर पर, ऐप्लिकेशन में यूएचडी वीडियो रिकॉर्ड करने की कोशिश की जाती है, लेकिन डिवाइस कीCamcorderProfile
में यूएचडी सेटिंग मौजूद नहीं हैं. भले ही, कोडेक में यूएचडी वीडियो रिकॉर्ड किए जा सकते हैं. (Iedbe2, b/263961771)ImageAnalysis
आउटपुट फ़ॉर्मैट गेटर/सेटर कोCameraController
में जोड़ें. (I9a96c, b/308240643)
गड़बड़ियां ठीक की गईं
- कैमरा
1.3.1
से:ProcessCameraProvider#bindToLifecycle()
की परफ़ॉर्मेंस को बेहतर बनाया गया. सबसे अहम बदलाव यह है किUseCases
के लिए सबसे सही साइज़ कॉम्बिनेशन की पहचान करने की प्रोसेस को ऑप्टिमाइज़ किया गया है. टारगेट किए गए डिवाइसों के लिए,UseCase
के खास कॉम्बिनेशन और काम करने वाले आउटपुट साइज़ की संख्या के आधार पर, सबसे सही नतीजे अलग-अलग होते हैं. (I454f2) - एक्सटेंशन चालू होने पर,
VideoCapture
का इस्तेमाल करने की अनुमति दें. (I91f32) - Samsung A71 और M51 सीरीज़ के डिवाइसों पर, बड़ी जेपीईजी इमेज कैप्चर करने से जुड़ी समस्या को ठीक किया गया. कैप्चर की गई JPEG इमेज में, JFIF कंप्रेस किए गए डेटा सेगमेंट में, अतिरिक्त 0 का पैडिंग डेटा शामिल होता है. इससे कैप्चर की गई इमेज का फ़ाइल साइज़ बहुत ज़्यादा हो जाता है. कैप्चर की गई इमेज का साइज़ सामान्य रखने के लिए, अतिरिक्त 0 के पैडिंग डेटा को हटा दिया जाएगा. (I01afc, b/288828159)
- Pixel फ़ोन पर
ImageAnalysis
की सुविधा बंद करें, ताकि Pixel फ़ोन पर उस गड़बड़ी से बचा जा सके जोImageAnalysis
के साथ काम करने वाले साइज़ को ग़लती से दिखाती है. (I7ec31) - परफ़ॉर्मेंस से जुड़ी उस समस्या को ठीक किया गया है जिसमें एक्सटेंशन चालू होने पर, सीपीयू लोड और बिजली की खपत बढ़ जाती थी. (Ibdccb)
CameraUseInconsistentTimebaseQuirk
में स्नैपड्रैगन 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
, रिज़ॉल्यूशन चुनने का ज़्यादा बेहतर तरीका है. यह camera-core API के साथ काम करता है. (I93abd, b/286801438)
गड़बड़ियां ठीक की गईं
- Samsung Galaxy S23 Ultra 5G में काले रंग की झलक देखने से जुड़ी समस्या को ठीक कर दिया गया है. ऐसा तब हुआ है, जब पीछे के कैमरे में
ImageAnalysis
वाले एक्सटेंशन, Bokeh या Face-Re Touch चालू हों. (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 का पैडिंग डेटा शामिल होता है. इस वजह से, कैप्चर की गई इमेज का फ़ाइल साइज़ बड़ा हो जाता है. कैप्चर की गई इमेज को इमेज फ़ाइल के साइज़ के तौर पर दिखाने के लिए, 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)
FRAME_RATE_RANGE_UNSPECIFIED
के साथsetTargetFrameRate
को कॉल करते समय, फ़्रेम रेट को कम वैल्यू पर सेट होने की समस्या को ठीक किया गया. (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 में पसंदीदा रिज़ॉल्यूशन के साथ सीधेResolutionSelector
सेट करें और उससे मैच करने वालाAspectRatioStrategy
सेट करें. (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
और झलक, दोनों के साथ स्ट्रीम शेयर करने पर होने वाली क्रैश की समस्या को ठीक किया गया है. स्ट्रीम शेयर करने की सुविधा चालू होने पर, लेगसी डिवाइसों पर ब्लैक स्क्रीन दिखने की समस्या को भी ठीक किया गया है.- Samsung S7 (SM-G930T, SM-G930V) सीरीज़ वाले डिवाइसों पर कैप्चर की गई बड़ी JPEG इमेज समस्या को ठीक कर दिया गया है. कैप्चर की गई JPEG इमेज में, JFIF कंप्रेस किए गए डेटा सेगमेंट में, अतिरिक्त 0 का पैडिंग डेटा शामिल होता है. इस वजह से, कैप्चर की गई इमेज का फ़ाइल साइज़ बड़ा हो जाता है. कैप्चर की गई इमेज का साइज़ सामान्य रखने के लिए, अतिरिक्त 0 के पैडिंग डेटा को हटा दिया जाएगा. (I407b0, b/288828159)
- Samsung S22 (SM-S901B, SM-S901B/DS) और S22+ (SM-S906B) सीरीज़ के डिवाइसों पर, कैप्चर की गई बड़ी JPEG इमेज से जुड़ी समस्या को ठीक किया गया. कैप्चर की गई JPEG इमेज में, JFIF कंप्रेस किए गए डेटा सेगमेंट में, अतिरिक्त 0 का पैडिंग डेटा शामिल होता है. इससे, S22 SM-S901B/DS डिवाइस पर कैप्चर की गई इमेज की फ़ाइल का साइज़ करीब 13 एमबी हो जाता है. कैप्चर की गई इमेज का साइज़ सामान्य रखने के लिए, अतिरिक्त 0 के पैडिंग डेटा को हटा दिया जाएगा. (I73be9, b/288828159)
- Samsung A5, A52, A70, और A72 सीरीज़ के डिवाइसों पर, कैप्चर की गई बड़ी JPEG इमेज से जुड़ी समस्या को ठीक किया गया. कैप्चर की गई JPEG इमेज में, JFIF कंप्रेस किए गए डेटा सेगमेंट में, अतिरिक्त 0 का पैडिंग डेटा शामिल होता है. इस वजह से, कैप्चर की गई इमेज का फ़ाइल साइज़ बहुत ज़्यादा हो जाता है. जैसे, 32 एमबी या 96 एमबी. कैप्चर की गई इमेज का साइज़ सामान्य रखने के लिए, अतिरिक्त 0 के पैडिंग डेटा को हटा दिया जाएगा. (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 इमेज में, JFIF के कंप्रेस किए गए डेटा सेगमेंट में 0 का पैडिंग डेटा मौजूद है. इस वजह से, कैप्चर की गई इमेज का फ़ाइल साइज़ करीब 32 एमबी हो जाता है. कैप्चर की गई इमेज का साइज़ सामान्य रखने के लिए, अतिरिक्त 0 के पैडिंग डेटा को हटा दिया जाएगा. (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
के इस्तेमाल का उदाहरण, झलक के साथ लागू हो सकता है या नहीं. साथ ही,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()
API की मदद से, रिकॉर्डिंग के लिए उपलब्ध फ़्रेम रेट के बारे में क्वेरी की जा सकती है.
एपीआई में हुए बदलाव
ResolutionSelector#HIGH_RESOLUTION_FLAG_OFF
/ON
कॉन्स्टेंट का नाम बदलकरALLOWED_RESOLUTIONS_NORMAL
/SLOW
कर दिया गया. साथ ही, बिल्डरsetHighResolutionEnabledFlag
फ़ंक्शन का नाम बदलकरsetAllowedResolutionMode
कर दिया गया. (Iae817)CameraInfo#getSupportedFrameRateRanges()
अबList
के बजायSet
दिखाता है, ताकि यह बेहतर तरीके से दिखाया जा सके कि रेंज का क्रम नहीं है. (I02f43)- वह गड़बड़ी जिसकी वजह से डेटा वापस नहीं पाया जा सकता (Ice471) को मैनेज करने के लिए,
CameraEffect
में गड़बड़ी सुनने वाला कोई प्रोसेस जोड़ें - बेहतर तरीके से जांच करने के लिए,
ResolutionInfo
में सार्वजनिक कन्स्ट्रक्टर जोड़ें (If6d1c) setTargetRotationDegrees
के इस्तेमाल की जगह एपीआईUseCase.snapToSurfaceRotation(int)
उपलब्ध कराया गया है. साथ ही, एपीआईImageAnalysis.setTargetRotationDegrees(int)
,ImageCapture.setTargetRotationDegrees(int)
, औरVideoCapture.setTargetRotationDegrees(int)
को बंद कर दिया गया है. (Ia9010)- झलक के इस्तेमाल के उदाहरण (If4f22) के लिए, टारगेट फ़्रेम रेट को सेट और फिर से पाने के लिए, नए एपीआई
Preview#getTargetFrameRate
औरPreview.Builder#setTargetFrameRate
जोड़े गए हैं - जब
Recording
ऑब्जेक्ट, गै़रबेज कलेक्शन की वजह से रुक जाता है, तोVideoRecordEvent.Finalize
अब गड़बड़ी कोडERROR_RECORDING_GARBAGE_COLLECTED
के साथ पूरा होगा. (Iba974)
गड़बड़ियां ठीक की गईं
StreamConfigurationMapCompat
में कैश मेमोरी में सेव किए गए आउटपुट के साइज़ शून्य होने पर,NullPointerException
को ठीक किया गया. (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} बाउंड किए जा सकते हैं. ज़्यादा से ज़्यादा रिज़ॉल्यूशन 720p या 1440p है. ज़्यादा जानकारी के लिए, इस लिंक पर जाएं और CameraManager#getConcurrentCameraIds() देखें
- पेश है
ResolutionSelector
API का नया वर्शन, जिसमें ये सुविधाएं शामिल हैं:- ऐप्लिकेशन, आसपेक्ट रेशियो और रिज़ॉल्यूशन की रणनीतियों के बारे में बता सकते हैं, ताकि वे अपनी ज़रूरतों के हिसाब से सबसे अच्छा रिज़ॉल्यूशन चुन सकें.
- सभी साइज़ और आसपेक्ट रेशियो पैरामीटर, कैमरा डिवाइस सेंसर के निर्देशांक में दिखाए जाते हैं.
- ऐप्लिकेशन, ज़रूरत के हिसाब से साइज़ बदलने के लिए कस्टम रिज़ॉल्यूशन फ़िल्टर का इस्तेमाल कर सकते हैं.
- ऐप्लिकेशन, हाई रिज़ॉल्यूशन वाली इमेज पाने के लिए, हाई रिज़ॉल्यूशन कैप्चर करने की सुविधा भी चालू कर सकते हैं. हालांकि, कृपया ध्यान दें कि ज़्यादा रिज़ॉल्यूशन का इस्तेमाल करने पर, फ़ोटो खींचने में ज़्यादा समय लग सकता है.
- डुप्लीकेट
VideoCapture
एपीआई जोड़ा गया.VideoCapture
से रिकॉर्ड किए गए वीडियो, डिफ़ॉल्ट रूप से मिरर नहीं होते. हालांकि, सामने वाले कैमरे पर कैमरे की झलक डिफ़ॉल्ट रूप से मिरर की जाती है.VideoCapture
मिररिंग एपीआई की मदद से, सामने वाले कैमरे का इस्तेमाल करते समय, कैमरे की झलक को अलाइन किया जा सकता है. इसमें तीनMirrorMode
,OFF
,ON
, औरON_FRONT_ONLY
हैं. कैमरे की झलक को अलाइन करने के लिए,ON_FRONT_ONLY
का इस्तेमाल करने का सुझाव दिया जाता है. इसका मतलब है कि रीयर कैमरे के लिए, मिररिंग की सुविधा चालू नहीं है, लेकिन फ़्रंट कैमरे के लिए चालू है.
एपीआई में हुए बदलाव
- नया
ResolutionSelector
एपीआई जोड़ा गया. ऐप्लिकेशन, फ़ॉलबैक नियमों या कस्टम रिज़ॉल्यूशन फ़िल्टर की मदद से, आसपेक्ट रेशियो और रिज़ॉल्यूशन की रणनीतियों के बारे में बता सकते हैं, ताकि वे मनमुताबिक नतीजे पा सकें. ऐप्लिकेशन हाई रिज़ॉल्यूशन कैप्चर करने की सुविधा चालू करने के लिए, फ़्लैग तय कर सकते हैं. इससे, फ़ोटो या वीडियो लेते समय CameraX को ज़्यादा रिज़ॉल्यूशन चुनने में मदद मिलेगी. हालांकि, कृपया ध्यान दें कि ज़्यादा रिज़ॉल्यूशन का इस्तेमाल करने पर, वीडियो कैप्चर करने में ज़्यादा समय लग सकता है. (Ibed95) - एई एल्गोरिदम के साथ काम करने वाली एफ़पीएस रेंज के बारे में, अब
CameraInfo#getSupportedFrameRateRanges()
के ज़रिए क्वेरी की जा सकती है. (Iaa67f) - 'FrameRate' का इस्तेमाल करके, फ़्रेम रेट के सभी तरीकों के नामों को एक साथ जोड़ें.
VideoCapture#getTargetFrameRate()
में javadoc की गड़बड़ी को ठीक करें (I83304) - लेगसी
setTargetAspectRatio
औरsetTargetResolution
एपीआई को बंद कर दिया गया है. इसके बजाय, कृपया नएResolutionSelector
एपीआई का इस्तेमाल करें. (I542c3) - एक साथ दो कैमरे इस्तेमाल करने के लिए सार्वजनिक एपीआई जोड़े गए हैं. इनमें ये शामिल हैं
List<List<CameraInfo>> getAvailableConcurrentCameraInfos()
ConcurrentCamera bindToLifecycle(@NonNull ConcurrentCameraConfig concurrentCameraConfig)
boolean isConcurrentCameraModeOn()
औरConcurrentCameraConfig
,SingleCameraConfig
, औरConcurrentCamera
(Iab1c1)
ImageProcessor.Response#getOutputImage
NonNull (Ib9c60) को बनाएंVideoCapture
औरVideoCapture.getMirrorMode()
के साथ-साथ,VideoCapture
मिररिंग एपीआई जोड़े गए.VideoCapture.Builder.setMirrorMode(int)
ये एपीआई उन ऐप्लिकेशन के लिए काम के हैं जिनमें वीडियो रिकॉर्डिंग, कैमरे की झलक के सामान्य व्यवहार के मुताबिक होनी चाहिए. इसका मतलब है कि पीछे वाले कैमरे की झलक को मिरर नहीं किया जाता, लेकिन सामने वाले कैमरे की झलक को मिरर किया जाता है. (I713b6, b/194634656)VideoCapture.Builder
मेंsetTargetFrameRate()
एपीआई औरVideoCapture
मेंgetTargetFramerate()
एपीआई जोड़ें (I109d4)SurfaceOutput
को क्लोज़ करने वाला ऐसा बनाएं और SurfaceOutput.Event
के पब्लिक कंस्ट्रक्टर को छिपाएं. (I60ea8)- प्रोसेस की जा रही रिकॉर्डिंग को डाइनैमिक तरीके से म्यूट या अनम्यूट करने के लिए,
Recording.mute
को जोड़ा गया. अगर प्रोसेस की जा रही रिकॉर्डिंग को साफ़ तौर पर म्यूट किया गया है, तोRecordingStats
मेंAudioStats.AUDIO_STATE_MUTED
शामिल होगा. (Ie17fc) #setEffects()
पैरामीटर को नॉन-नल बनाया. इफ़ेक्ट हटाने के लिए,#clearEffects()
एपीआई जोड़ें. इफ़ेक्ट हटाने के लिए, ऐप्लिकेशन को#clearEffects()
को कॉल करना चाहिए. (I4b4d9)ViewfinderSurfaceRequest.Builder
के लिए दूसरा कंस्ट्रक्टर जोड़ें, ताकि कॉपी कंस्ट्रक्टर (I621a7) के लिए बिल्डर लिया जा सके
गड़बड़ियां ठीक की गईं
- 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
को टारगेट करने वाले इफ़ेक्ट, झलक औरVideoCapture
स्ट्रीम में कॉपी करने से पहले, शेयर की गई स्ट्रीम पर लागू होंगे. (Iee6f3)
गड़बड़ियां ठीक की गईं
- कैमरा
1.2.2
: Pixel (I90aa2) जैसे कुछ डिवाइसों पर ProGuard चालू होने पर, CameraX एक्सटेंशन ठीक से काम न करने की समस्या ठीक की गई है PreviewView
गड़बड़ी को ठीक किया गया है. इस गड़बड़ी की वजह से, अगर ऐप्लिकेशन खुद ही स्क्रीन ओरिएंटेशन मैनेज करता है, तो रोटेशन के दौरान झलक खराब हो सकती है. ऐसा सिर्फ़ कुछ डिवाइसों पर होता है. इसे Pixel a4, Pixel 5, और Pixel 6a पर फिर से बनाया जा सकता है. (I14340, b/223488673)
वर्शन 1.3.0-alpha04
22 फ़रवरी, 2023
androidx.camera:camera-*:1.3.0-alpha04
रिलीज़ हो गया है. 1.3.0-alpha04 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
एक स्ट्रीम को कई इस्तेमाल के उदाहरणों के साथ शेयर करके, पहले काम न करने वाले Surface कॉम्बिनेशन के साथ काम करने वाली नई सुविधा.
- पहले, कैमरे के हार्डवेयर लेवल FULL और उससे नीचे के लिए “Preview, VideoCapture, ImageAnalysis” को बांधने पर या हार्डवेयर लेवल LEGACY के लिए “Preview, VideoCapture, ImageCapture” को बांधने पर, CameraX
IllegalArgumentException
दिखाता था. - अब बाइंडिंग, अपवादों को दिखाए बिना काम करेंगी. इसके बजाय, CameraX, शेयर की गई स्ट्रीम को झलक और वीडियो कैप्चर, दोनों में कॉपी करने के लिए OpenGL का इस्तेमाल करता है.
- बफ़र कॉपी की लागत के तौर पर, ऐप्लिकेशन में इंतज़ार का समय और बिजली की खपत बढ़ सकती है.
एपीआई में बदलाव
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()
कोCameraController
में जोड़ें, ताकि कैमरे के आउटपुट में इफ़ेक्ट जोड़े जा सकें. (I1d21f)SurfaceRequest
मेंinvalidate()
तरीका जोड़ें. प्लैटफ़ॉर्म उपलब्ध कराने वाली कंपनी, यह सूचना दे सकती है कि पहले उपलब्ध कराया गया प्लैटफ़ॉर्म अब मान्य नहीं है. (Idc649)ImageProcessor
एपीआई जोड़ें. यह इंटरफ़ेस,ImageCapture
पाइपलाइन में पोस्ट-प्रोसेसिंग इफ़ेक्ट इंजेक्ट करने के लिए है. (I575c6)- एपीआई
Recorder.Builder.setAspectRatio()
जोड़ा गया है. इसेQualitySelector
के साथ जोड़कर, ज़्यादा वीडियो रिज़ॉल्यूशन इस्तेमाल किए जा सकते हैं. (I8a082) - टारगेट वीडियो एन्कोडिंग
BitRate
सेट करने के लिएRecorder.Builder#setTargetVideoEncodingBitRate
और टारगेट वीडियो एन्कोडिंग बिटरेट पाने के लिए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
क्लास को हटाएं जिन्हें नया Video Capture API लागू करने के बाद इस्तेमाल नहीं किया जाता. (I38cd8) - नया वीडियो कैप्चर एपीआई लागू करें.
getVideoCaptureTargetSize
औरsetVideoCaptureTargetSize
तरीकों कोgetVideoCaptureTargetQuality
औरsetVideoCaptureTargetQuality
तरीकों से बदल दिया गया है, क्योंकिsetTargetResolution
अब काम नहीं करता. (I2a1d5)
गड़बड़ियां ठीक की गईं
- बंद किए गए
core.VideoCapture
एपीआई को हटाएं. (I531e0) - स्टोरेज की अनुमति के बिना फ़ोटो लेने पर,
onError
कॉलबैक को न कॉल करने की समस्या को ठीक किया गया.(I936db, b/244807669) - कैमरा एक्सटेंशन की क्वालिटी को बेहतर और भरोसेमंद बनाएं. Motorola डिवाइसों पर Camera Extensions v1.1.0 और उससे पहले के वर्शन का इस्तेमाल करने पर, Camera Extensions की सुविधा बंद हो जाती है. ऐसा, बोकेह मोड के काम न करने, इमेज कैप्चर न होने, और झलक न दिखने की समस्याओं की वजह से होता है. (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 एक्सटेंशन ठीक से काम न करने की समस्या ठीक की गई है
वर्शन 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
को नए एपीआई के तौर पर जोड़ा गया है. - एक्सपेरिमेंट के तौर पर उपलब्ध, शटर लैग को कम करने वाला नया एपीआई. इसकी मदद से, कैप्चर पाइपलाइन को ऑप्टिमाइज़ किया जाता है. इसकी मदद से, इंतज़ार का समय बेहतर होता है. साथ ही, इमेज की क्वालिटी भी अच्छी रहती है. कैप्चर मोड को
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()
किया गया.- सेव किए गए वीडियो में जगह की जानकारी का मेटाडेटा सेट करने के लिए एपीआई जोड़ा गया.
VideoCapture
का इस्तेमाल करने पर, फ़्रेम रेट कम होने की समस्या को ठीक किया गया है. साथ ही, इसे 16:9 आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) में इस्तेमाल करने के उदाहरण की झलक देखी जा सकती है- सैमसंग के कुछ डिवाइसों पर BOKEH एक्सटेंशन चालू होने और उपयोगकर्ता के कैमरे स्विच करने पर, झलक के काले होने की समस्या को ठीक किया गया है.
- Samsung J7 Prime (SM-G610M) और J7 (SM-J710MN)
Preview/VideoCapture
के लिए, एपीआई लेवल 27 वाले डिवाइसों पर स्ट्रेच की समस्या को ठीक किया गया. - Samsung Android T पर, सामने वाले कैमरे के ऑटोफ़ोकस (एएफ़) क्षेत्र को हॉरिज़ॉन्टल तौर पर फ़्लिप करने के लिए, गड़बड़ी को ठीक करने के बाद, गड़बड़ी को ठीक करने के लिए इस्तेमाल होने वाले तरीके को बंद कर दिया गया है
वर्शन 1.2.0-rc01
24 अक्टूबर, 2022
androidx.camera:camera-*:1.2.0-rc01
रिलीज़ हो गया है. वर्शन 1.2.0-rc01 में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
OutputConfiguration
के लिएsetStreamUseCase
एपीआई जोड़ें. उपयोगकर्ता, स्ट्रीम सेशन के लिए स्ट्रीम के इस्तेमाल का उदाहरण बता सकता है. इसके लिए, वह CameraX के इंटरनल लॉजिक को बदलकर, स्ट्रीम के इस्तेमाल का उदाहरण चुन सकता है, ताकि अपनी ज़रूरत के हिसाब से उसे ऑप्टिमाइज़ किया जा सके. (Ib1a95)
गड़बड़ियां ठीक की गईं
- एपीआई लेवल 27 वाले डिवाइसों पर, Samsung J7 Prime (SM-G610M) और J7 (SM-J710MN)
Preview/VideoCapture
की गड़बड़ी को ठीक कर दिया गया है. 1920x1080 रिज़ॉल्यूशन की वजह से,Preview/VideoCapture
इमेज स्ट्रेच हो जाती हैं. झलक के लिए 1920x1080 रिज़ॉल्यूशन न चुनने के लिए समाधान जोड़ा गया या इमेज में खिंचाव की समस्या से बचने के लिएVideoCapture
. (I0e04e) - कुछ Huawei डिवाइसों पर,
VideoCapture
और झलक के इस्तेमाल के उदाहरणों के साथ 16:9 आसपेक्ट रेशियो का इस्तेमाल करने पर, फ़्रेम रेट कम होने की समस्या को ठीक किया गया है. (If8c88, b/223643510) - झलक देखने की सुविधा के
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 को MLKit की कई सुविधाओं के साथ आसानी से इंटिग्रेट करें. इन सुविधाओं में, बारकोड स्कैनिंग, चेहरे की पहचान करने, टेक्स्ट की पहचान करने वगैरह की सुविधाएं शामिल हैं. सैंपल कोड यहां देखें. - एक्सपेरिमेंट के लिए नया Zero-shter 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 मिलीसेकंड जोड़ा गया है. अगर
FocusMeteringAction
रद्द नहीं किया जाता है और ऑटो फ़ोकस की प्रोसेस पूरी नहीं होती है, तोisFocusSuccessful
को 'गलत' के तौर पर सेट कर दिया जाएगा. (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} बाउंड है या फ़्लैश मोड बंद नहीं है या OEM एक्सटेंशन चालू है, तो यह मोड अपने-आप बंद हो जाएगा. (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)ImageCapture.takePicture()
परNullPointerException
को ठीक किया गया. (I92366, b/230454568, b/229766155)androidx.camera.video.Recorder
(Ia8ce8) के लिए, किसी दूसरे टास्क के साथ काम न करने वाले टास्क को रोकने की सुविधा ठीक करना
कैमरा-कैमरा2, कैमरा-कोर, कैमरा-लाइफ़साइकल, और कैमरा-वीडियो वर्शन 1.1.0
वर्शन 1.1.0
29 जून, 2022
androidx.camera:camera-*:1.1.0
रिलीज़ हो गया है. 1.1.0 वर्शन में ये बदलाव शामिल हैं.
1.0.0 के बाद के अहम बदलाव
- लैंडेड व्यू, एक्सटेंशन, और वीडियो कैप्चर लाइब्रेरी के आरसी वर्शन. 1.1.0-beta01 से, सभी CameraX लाइब्रेरी एक ही वर्शन नंबर के साथ अलाइन होंगी. इससे डेवलपर को वर्शन ट्रैक करने में आसानी होगी. साथ ही, बड़े वर्शन के साथ काम करने वाले मैट्रिक्स को कम करने में भी मदद मिलेगी.
- नए सार्वजनिक एपीआई और सुविधाएँ पेश की गईं, जिनमें ये शामिल हैं:
- वीडियो कैप्चर करने के उदाहरणों के साथ काम करने के लिए, आधिकारिक कैमरा-वीडियो लाइब्रेरी जोड़ें.
- YUV से आरजीबी में बदलने और रोटेशन की सुविधा (
ImageAnalysis.Builder.setOutputImageRotationEnabled
औरsetOutputImageFormat
) - मल्टी-विंडो मोड के साथ काम करने की सुविधा. इससे, जब किसी दूसरे ऐप्लिकेशन की वजह से कैमरे का इस्तेमाल रुक जाता है और फ़ोकस वापस आ जाता है, तब CameraX ऐप्लिकेशन को कैमरे का इस्तेमाल फिर से शुरू करने की अनुमति मिलती है.
- झलक देखने से जुड़ी कुछ समस्याओं को ठीक करके, यह पक्का किया गया है कि फ़ोल्ड किए जा सकने वाले डिवाइसों में CameraX अच्छी तरह से काम करे.
CameraState
एपीआई जोड़ा गया है. इसे CameraInfo के ज़रिए एक्सपोज़ किया जाएगा.- उपलब्ध कैमरों की जानकारी सीधे तौर पर पाने के लिए, एपीआई
ProcessCameraProvider.getAvailableCameraInfos()
जोड़ा गया - एक्सटेंशन चालू होने पर,
ImageCapture#OnImageCapturedCallback
का आउटपुट JPEG फ़ॉर्मैट में चलेगा. CameraInfo
में एक एपीआईisFocusMeteringSupported
जोड़ा गया है. इससे ऐप्लिकेशन यह पता लगा सकते हैं कि दिया गयाFocusMeteringAction
, मौजूदा कैमरे पर काम करता है या नहीं.- झलक,
ImageCapture
, औरImageAnalysis
के रिज़ॉल्यूशन की जानकारी देने के लिए,getResolutionInfo
एपीआई को एक्सपोज़ किया गया है. - फ़ोटो खींचते समय, आउटपुट JPEG इमेज कंप्रेस करने की क्वालिटी बदलने की सुविधा देने के लिए, नया एपीआई
ImageCapture.Builder#setJpegQuality
जोड़ा गया है. CameraSelector
के आधार परCameraInfos
की सूची को फ़िल्टर करने के लिए, पब्लिक एपीआई मेंCameraSelector#filter
जोड़ा गया.- कैप्चर करने के मौजूदा अनुरोध के विकल्पों को मिटाने के लिए,
Camera2CameraControl.clearCaptureRequestOptions
को जोड़ा गया. - बाहरी इमेज प्रोसेसिंग लाइब्रेरी के साथ
CameraController
का इस्तेमाल करने के लिए, एक्सपेरिमेंटल एपीआई जोड़ा गया. जैसे, MLKit - एक्सपेरिमेंट के तौर पर एपीआई
CameraInfo#getCameraSelector()
जोड़ा गया है. यह एपीआई, कैमरे के हिसाब से यूनीकCameraSelector
दिखाता है - कई एक्सपेरिमेंटल एपीआई को औपचारिक सार्वजनिक एपीआई में प्रमोट किया गया
- एक्सपेरिमेंट के तौर पर उपलब्ध एपीआई में, एनोटेशन
@Experimental
को@RequiresOptIn
से बदला गया. एक्सपेरिमेंटल एपीआई को कॉल करने के लिए, बंद किए गए androidx.annotation.experimental.Use जांच के बजाय 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
का नाम बदलकर "रिकॉर्डिंग" कर दिया गया है, ताकि कम शब्दों में जानकारी दी जा सके.QualitySelector
क्रिएटर एपीआई को सूची पर आधारित एपीआई में बदला गया
गड़बड़ियां ठीक की गईं
- एक्सटेंशन मोड चालू होने और
ImageCapture#CAPTURE_MODE_MAX_QUALITY
मोड सेट होने पर,YuvToJpegProcessor
EOFException
से जुड़ी समस्या को ठीक किया गया. - वीडियो रिकॉर्डिंग बंद होने की वजह से, कोडेक का कॉन्फ़िगरेशन सेट नहीं हो सका
- एफ़एचडी में रिकॉर्डिंग करते समय, प्रीव्यू/वीडियो के आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) को स्ट्रेच होने से रोका गया
- कुछ डिवाइसों पर, वीडियो रोकने और फिर से चलाने के बाद, ऑडियो/वीडियो के सिंक न होने की समस्या को ठीक किया गया
- फ़्लैश मोड को ऑटो या always_on पर सेट करने पर, कम रोशनी वाले माहौल में फ़ोकस करने के लिए टैप करने (
startFocusAndMetering
) पर फ़्लैश ट्रिगर होने की समस्या को ठीक किया गया है.
वर्शन 1.1.0-rc02
1 जून, 2022
androidx.camera:camera-*:1.1.0-rc02
रिलीज़ हो गया है. 1.1.0-rc02 वर्शन में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
ImageCapture.takePicture()
कोNullPointerException
पर ठीक किया गया. (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 वर्शन में ये कमिट शामिल हैं.
नई सुविधाएं
- camera-video, camera-view, और camera-extension के लिए आरसी वर्शन रिलीज़ करना
गड़बड़ियां ठीक की गईं
- एक समस्या को ठीक किया गया है. इसमें
VideoCapture<Recorder>
को अनबाउंड करने पर, वीडियो कोडेक रिलीज़ नहीं होता था. इस वजह से,MediaCodec.CodecException
की मदद से रिकॉर्डिंग करने के लिए,VideoCapture<Recorder>
का इस्तेमाल नहीं किया जा सकता था. खास तौर पर, एपीआई 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)
- Samsung के कुछ डिवाइसों पर, एपीआई 29 से पहले के वर्शन में, वीडियो रोकने और फिर से चलाने के बाद, ऑडियो/वीडियो सिंक न होने की समस्या को ठीक किया गया है. (I64622, b/202798609, b/202798572)
- Sony G3125 पर, वीडियो रोकने और फिर से चलाने के बाद, ऑडियो/वीडियो सिंक न होने की समस्या को ठीक किया गया. (I2a1a5, b/202799148)
- रिकॉर्डर में
InvalidConfigException
की समस्या आने पर क्रैश होने की समस्या को ठीक किया गया. हालांकि, इस समस्या को ठीक करने से सिर्फ़ ऐप्लिकेशन को क्रैश होने से रोका जा सकता है. हालांकि, इससेInvalidConfigException
की समस्या ठीक नहीं होती. अगरRecorder
को अब भी कॉन्फ़िगर नहीं किया जा सका, तो रिकॉर्डिंग शुरू करने पर, ऐप्लिकेशन को गड़बड़ी का कॉलबैक मिलेगा. (I89c29, b/213617227)
बाहरी योगदान
- test-coroutines-lib माइग्रेशन की वजह से, :compose:ui:ui-test api (updateApi) को अपडेट किया गया (I3366d)
वर्शन 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 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
- 1.1.0-beta01 से, सभी CameraX लाइब्रेरी एक ही वर्शन नंबर के साथ अलाइन होंगी. इससे डेवलपर, वर्शन को आसानी से ट्रैक कर पाएंगे. साथ ही, वर्शन के साथ काम करने वाले बड़े मैट्रिक को आसानी से समझ पाएंगे.
एपीआई में हुए बदलाव
- कैप्चर करने के मौजूदा अनुरोध के विकल्पों को मिटाने के लिए,
Camera2CameraControl.clearCaptureRequestOptions
को जोड़ा गया. (Ifa07d)
गड़बड़ियां ठीक की गईं
- Android O(API 26) से पहले के वर्शन वाले कुछ डिवाइसों पर वीडियो रिकॉर्ड करते समय क्रैश होने की समस्या को ठीक किया गया. (I88fdf, b/212328261)
- Samsung डिवाइसों में सामने वाले लेंस वाले कैमरे पर
cameraControl#startFocusAndMetering()
इस्तेमाल करने पर, एएफ़ (AF) से जुड़ी गलत जगह की समस्या को ठीक कर दिया गया है (Ifbf59, b/210548792) - Pixel 3a/Pixel 3a XL पर टॉर्च को फ़्लैश के तौर पर इस्तेमाल करने की सुविधा जोड़ी गई है. इससे, अंधेरे में फ़ोटो खींचने की स्पीड और क्वालिटी बेहतर होगी (Ib12b6, b/211474332)
- जब मल्टी-विंडो मोड में, ज़्यादा प्राथमिकता वाले किसी दूसरे ऐप्लिकेशन की वजह से कैमरे का इस्तेमाल रुक जाता है, तब ऐप्लिकेशन को कैमरे का इस्तेमाल फिर से शुरू करने की अनुमति मिलती है. साथ ही, फ़ोकस फिर से ऐप्लिकेशन पर आ जाता है. कृपया ध्यान दें कि फ़्रेमवर्क से जुड़ी किसी समस्या की वजह से, फ़ोकस में बदलाव होने और कैमरा फिर से खुलने के बीच कुछ देरी(1 सेकंड से 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
बनाने के लिए इस्तेमाल किए गए एपीआई को, सूची पर आधारित एपीआई में बदल दिया गया है. नया एपीआईQualitySelector.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) - बेहतर अनुभव के लिए, अब OEM की बनाई गई प्रोफ़ाइलों के आधार पर एन्कोडर सेटिंग का इस्तेमाल किया जाता है. (Iaeef0)
- Pixel1 पर यूएचडी वीडियो रिकॉर्डिंग शुरू करने के बाद, फ़िक्स की गई झलक में इंटरलेस कलर लाइनें दिखेंगी. (I833c6, b/205340278)
वर्शन 1.1.0-alpha11
17 नवंबर, 2021
androidx.camera:camera-*:1.1.0-alpha11
रिलीज़ हो गया है. वर्शन 1.1.0-alpha11 में ये कमियां हैं.
एपीआई में हुए बदलाव
- CameraSelector के आधार पर CameraInfos की सूची को फ़िल्टर करने के लिए, सार्वजनिक एपीआई में CameraSelector#filter जोड़ा गया है. (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} से दूसरे में मैप करने के लिए किया जा सकता है. उदाहरण के लिए, ImageAnalysis की मदद से पहचाने गए चेहरे के कोऑर्डिनेट को झलक में मैप करना. (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)
गड़बड़ियां ठीक की गईं
- CameraCharacteristics बनाते समय होने वाली AssertionError को ऐप्लिकेशन आसानी से मैनेज कर सके, इसके लिए InitializationException को थ्रो करें. (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 पर, फ़ोटो की झलक दिखाने वाली स्क्रीन बहुत ज़्यादा चमकती है. यह समस्या सिर्फ़ तब होती है, जब झलक के लिए इस्तेमाल किए जाने वाले कुछ खास रिज़ॉल्यूशन के साथ, ज़ूम इन की ज़्यादा वैल्यू का इस्तेमाल किया जाता है. (इडिफ़स, b/192129158)
- फ़्लैश मोड को FLASH_MODE_ON पर सेट करने के कुछ समय बाद फ़ोटो लेने पर, कुछ डिवाइसों पर फ़्लैश काम नहीं करने की समस्या को ठीक किया गया है. (Ieb49b)
- VideoCapture, ImageCapture, और Preview को बाउंड करने पर, फ़ोटो खींचते समय झलक देखने की सुविधा कुछ समय के लिए रुकने की समस्या को ठीक किया गया है. (I56197, b/193864120)
- इससे ImageAnalysis को 1080 पिक्सल से ज़्यादा का रिज़ॉल्यूशन चुनने की अनुमति मिलती है. सीमित-लेवल से ऊपर के डिवाइस पर, ImageAnalysis के लिए रिकॉर्ड किए गए आकार का रिज़ॉल्यूशन काम कर सकता है. हालांकि, इसके लिए ज़रूरी है कि उसे Preview और ImageCapture के साथ इस्तेमाल किया जाए. हालांकि, इसके लिए आपको ImageCapture के लिए चुने गए रिज़ॉल्यूशन को रिकॉर्ड के साइज़ के रिज़ॉल्यूशन के तौर पर भी सेट करना होगा. ImageAnalysis के लिए RECORD साइज़ रिज़ॉल्यूशन चुनने के लिए, Imageयह और ImageAnalysis, दोनों पर सेट किया जाना चाहिए. इससे पता चलता है कि यह ऐप्लिकेशन, ट्रेड-ऑफ़ को साफ़ तौर पर समझता है. साथ ही, यह चाहता है कि ImageCanalysis का रिज़ॉल्यूशन बड़ा हो, न कि बहुत ज़्यादा रिज़ॉल्यूशन के लिए. RECORD, MAXIMUM साइज़, और ज़्यादा जानकारी की परिभाषाओं के लिए, https://developer.android.com/reference/android/hardware/camera2/CameraDevice#regular-capture पर जाएं. RECORD साइज़ का मतलब कैमरे के डिवाइस में रिकॉर्ड किए जा सकने वाले ज़्यादा से ज़्यादा रिज़ॉल्यूशन से है. यह रिज़ॉल्यूशन CamcorderProfile के आधार पर तय किया जाता है. MAXIMUM साइज़ का मतलब है कि 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 वर्शन में ये बदलाव शामिल हैं.
एपीआई में बदलाव
- camera-core (I08ee8) के लिए, एक्सपेरिमेंटल एक्सपोज़र कम्पेंसेशन एपीआई का प्रमोशन करना
- CameraInfo में isFocusMeteringSupported एपीआई जोड़ा गया है. इससे ऐप्लिकेशन यह पता लगा सकते हैं कि दिए गए FocusMeteringAction का इस्तेमाल मौजूदा कैमरे पर किया जा सकता है या नहीं. (Ib45ae, b/188606490)
- 'झलक', 'इमेज कैप्चर', और 'इमेज का विश्लेषण' के लिए रिज़ॉल्यूशन की जानकारी देने के लिए, 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)
- camera-core, camera-lifecycle, और camera-video के लिए, एक्सपेरिमेंट के तौर पर उपलब्ध 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
एपीआई अब एक्सपेरिमेंट के तौर पर उपलब्ध नहीं हैं और ये आधिकारिक एपीआई बन गए हैं. इनका इस्तेमाल, एनोटेट किए गए ऑप्ट-इन के बिना किया जा सकता है. (I4bc94)- कैमरे की स्थिति बताने वाला एपीआई जोड़ा गया है. इसे
CameraInfo#getCameraState()
के ज़रिए एक्सपोज़ किया जाता है. (Ia86b4) - एक्सपेरिमेंटल एपीआई
CameraInfo#getCameraSelector()
जोड़ा गया, जो इसके कैमरे (I77f9f) के लिए CameraSelector यूनीक दिखाता है
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक कर दिया गया है जो setZoomRatio और setLineZoom में वापस आकर, लीनियर ज़ूम की समस्या को कुछ Android 11 डिवाइसों (I716d7) पर पूरा नहीं किया जा सकता.
- कैमरा स्विच करने की रफ़्तार बढ़ाएं और डिवाइस में गड़बड़ी होने की दर कम करें (I34c99)
- प्रायोगिकUseCaseGroupलाइफ़साइकल को ExampleUseCaseGroup से बदला गया. (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 वर्शन में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- एक ही कलेक्शन को एक साथ कई थ्रेड ऐक्सेस करने की वजह से, मेमोरी लीक होने की समस्या को ठीक किया गया. मेमोरी लीक की वजह से, झलक वाले इंस्टेंस में ऐक्टिविटी या फ़्रैगमेंट सेव रह सकता है. (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)
- "फ़ाइल" टाइप OutputFileOptions के साथ इमेज कैप्चर परफ़ॉर्मेंस रिग्रेशन को ठीक किया गया. (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 में ये कमियां शामिल हैं.
गड़बड़ियां ठीक की गईं
setZoomRatio
औरsetLinearZoom
में दिखाया गयाListenableFuture
, कुछ 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, झलक, इमेज कैप्चर, और विश्लेषण की सुविधाओं के साथ काम करता है
- CameraX, आसानी से इस्तेमाल किए जा सकने वाले एपीआई में कैमरे के लाइफ़साइकल को मैनेज करता है
- CameraX का मकसद, Android कैमरा नेटवर्क में कई समस्याओं को ठीक करने वाली संगतता लेयर उपलब्ध कराना है
आम समस्याएं
- आम समस्याओं की सूची देखें
वर्शन 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)
- "फ़ाइल" टाइप के 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 वर्शन में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- जब झलक के लिए इस्तेमाल किए जा सकने वाले सभी साइज़ 640x480 से छोटे हों और डिसप्ले साइज़ 640x480 से बड़ा हो, तब IllegalArgumentException की समस्या आती है. इसे ठीक कर दिया गया है. (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 वर्शन में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- CameraInfo को शामिल करने के लिए, CameraFilter और Camera2Filter को बदला गया. (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, और लाइफ़साइकल वर्शन 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 डिवाइसों पर, अपने-आप फ़्लैश चालू होने की सुविधा वाले AE मोड से फ़ोटो लेने पर, ऐप्लिकेशन क्रैश होने की समस्या ठीक की जा सके. (Ia5fe3, b/157535165)
- Android L (एपीआई लेवल 21 और 22) पर चलने वाले Nexus 4 डिवाइसों पर, झलक को स्ट्रेच होने से रोकने की समस्या को ठीक किया गया. (I4d407, b/158749159)
OnImageCapturedCallback#onCaptureSuccess
बेस क्लास के लागू होने से, इमेज अब बंद नहीं होती. ऐसा करने से, डेवलपर को ऐप्लिकेशन के गलत व्यवहार से बचाया जा सकता है. डेवलपर को इमेज बंद करने के लिए, super.onCaptureSuccess पर भरोसा नहीं करना चाहिए. (Ifbf9c)- Kotlin के साथ समानता देने के लिए, एक्सपेरिमेंटल एनोटेशन के androidx वैरिएंट का इस्तेमाल बंद कर दिया गया है. इसे RequiresOptIn एनोटेशन से बदल दिया गया है. साथ ही, Java के लिए लिंटर को अपडेट किया गया है, ताकि वह नए Kotlin एनोटेशन और नए androidx वैरिएंट, दोनों के साथ काम कर सके. (I52495, b/151331381)
Camera-Camera2 वर्शन 1.0.0-beta11
14 अक्टूबर, 2020
androidx.camera:camera-camera2:1.0.0-beta11
रिलीज़ हो गया है. 1.0.0-beta11 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
- Android 11 या इसके बाद के वर्शन वाले ऐसे डिवाइसों पर ज़ूम करने के लिए, android 11
CONTROL_ZOOM_RATIO
एपीआई के साथ काम करता है जिनमें मान्यCONTROL_ZOOM_RATIO_RANGE
शामिल है. (I62cc6)
गड़बड़ियां ठीक की गईं
- कैमरा आईडी के पूर्णांक न होने पर, NumberFormatException की समस्या को ठीक किया गया. (Ib2228)
- CameraX को शुरू करने और bindToLifecycle (I61dc5) के इंतज़ार का समय कम किया गया
- इस्तेमाल के उदाहरण बनाने के लिए, CameraX को शुरू करने की ज़रूरत नहीं होती. लागू करने से जुड़े सभी कॉन्फ़िगरेशन, Camera इंस्टेंस से जुड़ने के बाद, UseCase पर सेट हो जाते हैं. सार्वजनिक एपीआई के लिए, यह
ProcessCameraProvider.bindToLifecycle()
होता है. (Ia5411) - अगर किसी कैमरा इंस्टेंस से अटैच होने से पहले
<UseCase>.getTargetRotation()
को कॉल किया जाता है, तो यहSurface.ROTATION_0
दिखाएगा. ऐसा तब तक होगा, जब तक कि बिल्डर या 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)
- इस्तेमाल के उदाहरण बनाने के लिए, CameraX को शुरू करने की ज़रूरत नहीं होती. लागू करने से जुड़े सभी कॉन्फ़िगरेशन, Camera इंस्टेंस से जुड़ने के बाद, UseCase पर सेट हो जाते हैं. सार्वजनिक एपीआई के लिए, यह
ProcessCameraProvider.bindToLifecycle()
होता है. (Ia5411) - अगर किसी कैमरा इंस्टेंस से अटैच होने से पहले
<UseCase>.getTargetRotation()
को कॉल किया जाता है, तो यहSurface.ROTATION_0
दिखाएगा. ऐसा तब तक होगा, जब तक कि बिल्डर या 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 वर्शन 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 वर्शन 1.0.0-beta09
16 सितंबर, 2020
androidx.camera:camera-camera2:1.0.0-beta09
रिलीज़ हो गया है. 1.0.0-beta09 वर्शन में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- Camera2CameraInfo, स्टैटिक तरीके उपलब्ध कराने के बजाय, Camera2 से जुड़ी जानकारी पाने के लिए, बनाए जाने पर CameraInfo इंस्टेंस लेता है. (I5b844)
गड़बड़ियां ठीक की गईं
- टैबलेट डिवाइसों पर टारगेट आसपेक्ट रेशियो से जुड़ी समस्या ठीक की गई. टारगेट आसपेक्ट रेशियो को
AspectRatio.RATIO_16_9
के तौर पर सेट करने पर, 16:9 साइज़ चुना जाना चाहिए. (Ib7fcf, b/151969438) - CameraCharacteristics बनाते समय होने वाली AssertionError को ऐप्लिकेशन आसानी से मैनेज कर सके, इसके लिए
InitializationException
का इस्तेमाल करें. (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 पर व्यूपोर्ट को नॉन-नल के तौर पर मार्क करने वाली गड़बड़ी को ठीक किया गया. डेवलपर को व्यूपोर्ट सेट किए बिना भी व्यूपोर्ट बनाने की सुविधा मिलनी चाहिए. (Ie3d2e)
ExposureCompensation
(If96c7) के लिए, प्रयोग के तौर पर इंटरफ़ेस जोड़े गए- झलक के लिए, टारगेट को अपनी पसंद के मुताबिक घुमाने की अनुमति दें. ट्रांसफ़ॉर्मेशन की जानकारी का हिसाब लगाया जाता है और उसे नए
TranformationInfoListener
कॉलबैक की मदद से, उपयोगकर्ता को तुरंत दिखाया जाता है. (I21470)
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक कर दिया गया है जो कुछ डिवाइसों में फ़्लैश के रूप में बंद नहीं होती. ऐसा तब होता है, जब फ़ोटो लेने के लिए फ़्लैश मोड को
FLASH_MODE_ON
पर सेट किया जाता है और फ़्लैश चालू होने परFLASH_MODE_OFF
में बदल जाता है. इसका लक्षण ऐसा है जैसे टॉर्च मोड चालू हो. (Ib4451, b/162568128) - अगर एक्सटेंशन इफ़ेक्ट चालू है और वेंडर लाइब्रेरी को लागू करने के लिए आउटपुट सरफ़ेस पर एक खास प्रोसेस करनी पड़ती है, तो ज़बरदस्ती PreviewView का इस्तेमाल करके TextureView का इस्तेमाल किया जा सकता है. (I0c3cc)
ProcessCameraProvider.getInstance(Context)
को गतिविधि/फ़्रैगमेंट का कॉन्टेक्स्ट पास करने पर, गतिविधि/फ़्रैगमेंट का लीक होने की समस्या को ठीक किया गया.
आम समस्याएं
- व्यूपोर्ट सेट होने पर, हो सकता है कि HAL में इमेज बफ़र को घुमाने वाले डिवाइसों पर, ImageCapture का काटा गया हिस्सा गलत हो. इसे अगली रिलीज़ में ठीक कर दिया जाएगा.
Camera-Camera2 वर्शन 1.0.0-beta08
19 अगस्त, 2020
androidx.camera:camera-camera2:1.0.0-beta08
रिलीज़ हो गया है. 1.0.0-beta08 वर्शन में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- मुख्य थ्रेड पर तेज़ी से चलने के लिए, bindToLifecycle को ऑप्टिमाइज़ किया गया है. (I1d57e)
- DisplayOrientedMeteringPoint वक्त, CameraSelector के बजाय CameraInfo इंस्टेंस लेता है. इससे कैमरा सीधे तौर पर मैप होता है, जिससे फ़ैक्ट्री पॉइंट जनरेट करेंगे. DisplayOrientedMeteringPointFactory का इस्तेमाल करने वाली सभी क्लास, CameraSelector के बजाय CameraInfo इंस्टेंस भी लेती हैं. (I400c1)
- अपने-आप रिज़ॉल्यूशन तय होने की सुविधा के आसपेक्ट रेशियो के साइज़ के ग्रुप बनाने से जुड़ी समस्या को ठीक किया गया. इस समस्या की वजह से, टारगेट रिज़ॉल्यूशन की सेटिंग 2016x1080 होने पर, 16:9 mod16 साइज़ (864x480) चुना जाता था. हालांकि, 1920x1080 16:9 साइज़ भी काम करता है. (I53167, b/159363774)
- CameraControl की उस समस्या को ठीक करना जहां यह रेस कंडीशन की वजह से काम नहीं कर पा रहा है (I2279f, b/152333890, b/160714166)
कैमरा-कोर वर्शन 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()
से कोई ऐप्लिकेशन ऑब्जेक्ट नहीं दिखाता. (I3d3c9, b/160817073)
Camera-Camera2 वर्शन 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 में ये तय किए गए हैं.
एपीआई में हुए बदलाव
- कैमरे के आईडी और कैमरे की विशेषताओं के हिसाब से फ़िल्टर करने के लिए, प्रयोग के तौर पर उपलब्ध इंटरफ़ेस जोड़े गए. (I28f61)
गड़बड़ियां ठीक की गईं
- startFocusAndMetering फ़ंक्शन की वजह से, Samsung Galaxy S7 पर फ़ोकस करने में आ रही समस्या को ठीक किया गया. (If3be7, b/159039233)
- ऐप्लिकेशन बंद करने के बाद, कैमरा बंद न होने की समस्या को ठीक किया गया. (I7a7b3)
- PreviewView के SurfaceView को लागू करते समय, बार-बार कैमरा स्विच करने से झलक में रुकावट आने की समस्या को ठीक करना (I920ce)
- अगर दिए गए किसी भी
CameraControl#startFocusAndMetering
के लिए, मेज़रमेंट के लिए सही रेक्टैंगल जनरेट नहीं हो पाते, तो यह फ़ंक्शन काम नहीं करेगा. (Id53ce)
Camera-Core का वर्शन 1.0.0-beta06
24 जून, 2020
androidx.camera:camera-core:1.0.0-beta06
रिलीज़ हो गया है. वर्शन 1.0.0-beta06 में ये तय किए गए हैं.
एपीआई में बदलाव
- कैमरे के आईडी और कैमरे की विशेषताओं के हिसाब से फ़िल्टर करने के लिए, प्रयोग के तौर पर उपलब्ध इंटरफ़ेस जोड़े गए. (I28f61)
गड़बड़ियां ठीक की गईं
- CameraX को अब
ProcessCameraProvider#getInstance()
को कॉल करने से पहले,ProcessCameraProvider#configureInstance()
के साथ कॉन्फ़िगर किया जा सकता है. इससे, ऐप्लिकेशन की ऐप्लिकेशन क्लास मेंCameraXConfig.Provider
को लागू किए बिना,CameraXConfig
को पसंद के मुताबिक बनाया जा सकता है. (Ia1a8d) - अगर कोई भी बताया गया मीटरिंगपॉइंट, मान्य मीटरिंग रेक्टैंगल जनरेट नहीं कर पाता, तो
CameraControl#startFocusAndMetering
फ़ेल हो जाएगा. (Id53ce)
Camera-Camera2 वर्शन 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) CONTROL_AF_STATE
के लिए वैल्यू null होने पर,startFocusAndMetering
को कॉल करने पर क्रैश होने की समस्या को ठीक किया गया. (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 वर्शन 1.0.0-beta04
27 मई, 2020
androidx.camera:camera-camera2:1.0.0-beta04
रिलीज़ हो गया है. 1.0.0-beta04 वर्शन में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- ऐप्लिकेशन को
Camera2Interop
की मदद से, कैमरा2 कैप्चर रिक्वेस्ट पैरामीटर सेट करने की अनुमति दी गई, ताकि ऐप्लिकेशन क्रैश न हो. कृपया ध्यान दें कि अगर पैरामीटर बदलने की वजह से कोई समस्या होती है. 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)
कैमरा-कोर वर्शन 1.0.0-beta04
27 मई, 2020
androidx.camera:camera-core:1.0.0-beta04
रिलीज़ हो गया है. 1.0.0-beta04 वर्शन में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- CameraX कैमरा स्टैक के अंदर इस्तेमाल किए जाने वाले हैंडलर को सेट करने के लिए, एक्सपेरिमेंट के तौर पर उपलब्ध एपीआई,
CameraXConfig.Builder#setSchedulerHandler()
जोड़ा गया है.CameraXConfig.Builder#setCameraExecutor()
के साथ इस नए एपीआई को, CameraX कैमरा स्टैक में इस्तेमाल किए जा रहे थ्रेड पर पूरा कंट्रोल देना चाहिए. (I7bf32, b/121160431)
गड़बड़ियां ठीक की गईं
ImageReaderProxy
बंद होने के बाद,ImageProxy
को ऐक्सेस करने परImageAnalysis
के क्रैश होने की समस्या को ठीक किया गया है. इससे यह भी तय होता है किImageReaderProxy
को बंद करने से पहले,Analyzer
को मिले सभीImageProxy
को बंद कर दिया जाना चाहिए. (I4b299, b/145956416, b/154155377, b/156357269)PreviewView#createSurfaceProvider()
सेCameraInfo
पैरामीटर हटा दिया गया है. अबPreviewView
,SurfaceRequest
से इसे अंदरूनी तौर पर वापस पाता है. (If18f0, b/154652477)- स्यूडो-लोकेल का इस्तेमाल करने वाले डिवाइस पर ऐप्लिकेशन का इस्तेमाल करते समय, अपने-आप शुरू होने की प्रोसेस ठीक हो जाती है. (I3bef3, b/154767663)
- फ़्लैश चालू होने के बावजूद, कभी-कभी ली गई इमेज बहुत गहरे रंग की होने की समस्या को ठीक किया गया है. (I5d9fa, b/149729613)
ImageAnalysis
से जुड़ी उस समस्या को ठीक करना जिसमें setAnalytics/clearAnalyticsr को कई बार मदद मिलती है, जिसकी वजह से ऐनालाइज़र को विश्लेषण के लिए इमेज नहीं मिल रही हैं. (I6169f, b/151605317, b/153514544)ImageCapture
सेImageProxy
में बफ़र को फिर से नहीं चलाने वाली गड़बड़ी को ठीक किया गया (I0c455, b/153249512)CameraManager
में मौजूद, इस्तेमाल किए जा सकने वाले कैमरों की सूची में पहले कैमरे को हमेशा इस्तेमाल के लिए नहीं चुना जाता था. इस समस्या को ठीक कर दिया गया है. (I4c624, b/153418028)Preview.SurfaceProvider
को सेट करने की वजह से, पहले अनुरोध किए गए प्लैटफ़ॉर्म को रिलीज़ न करने की वजह से, थोड़ी-थोड़ी देर में क्रैश होने की समस्या को ठीक किया गया है.“java.lang.IllegalStateException: Camera surface session should only fail with request cancellation”
(I8e4e7, b/155936225)
Camera-Camera2 वर्शन 1.0.0-beta03
15 अप्रैल, 2020
androidx.camera:camera-camera2:1.0.0-beta03
रिलीज़ हो गया है. 1.0.0-beta03 वर्शन में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
camera-core
को रिलीज़ करने से जुड़ी समस्याएं ठीक करना
Camera-Core वर्शन 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 वर्शन 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) - जिन डिवाइसों के डिसप्ले साइज़ 640x480 से कम हैं उनके
IllegalArgumentException
की समस्या को ठीक कर दिया गया है. (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.setSurfaceProvider()
को एक से ज़्यादा बार कॉल करने के बाद, झलक वाला प्लैटफ़ॉर्म बदलने पर,Preview
के इस्तेमाल के उदाहरण का कैप्चर सेशन अपडेट नहीं हो रहा था.
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) - संभावित वैल्यू को शामिल करने के लिए, Flash मोड APIs से जुड़े दस्तावेज़ अपडेट किए गए. (I4a3ec)
Camera-Camera2 वर्शन 1.0.0-alpha10
10 फ़रवरी, 2020
androidx.camera:camera-camera2:1.0.0-alpha10
रिलीज़ हो गया है. 1.0.0-alpha10 वर्शन में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
INFO_SUPPORTED_HARDWARE_LEVEL_LEGACY
डिवाइसों पर बेहतर स्थिरता पाने के लिए, पक्का करें किSurface
सिर्फ़ Camera2 के इस्तेमाल के दौरान ही सेव रहें. (I9dac2)CONTROL_AE_TARGET_FPS_RANGE
को सही तरीके से अडजस्ट करके, लेगसी डिवाइसों पर झलक की समस्या को ठीक किया गया. (1224638)
Camera-Core वर्शन 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)ImageAnalysis
मेंgetTargetRotation()
,getBackpressureStrategy()
, औरgetImageQueueDepth()
को जोड़ा गया. (I9d6d9)ImageCapture()
मेंgetTargetRotation()
औरgetCaptureMode()
जोड़े गए (I5bc17)- पहले
ImageCapture.OnImageSavedCallback.onError()
औरImageCapture.OnImageCapturedCallback.onError()
में पास किए गए आर्ग्युमेंट को अब एक आर्ग्युमेंटImageCaptureException
से बदल दिया गया है. इसमें अब भी वह सारी जानकारी मौजूद है जो पहले पास की गई थी. ImageCapture.OnImageSavedCallback.onImageSaved()
में पहले पास की गई फ़ाइल आर्ग्युमेंट को हटा दिया गया है. (I750d2)Preview
औरImageCapture
क्लास को अब 'फ़ाइनल' के तौर पर मार्क कर दिया गया है. (I2500b)- अपडेट किया गया एपीआई, जिसमें
CameraInfo
कोgetZoomState()
में मर्ज करने के लिएgetZoomRatio()
,getMaxZoomRatio()
,getMinZoomRatio()
, औरgetLinearZoom()
तरीके दिए गए हैं. इससेZoomState
इंस्टेंस मिलता है. (Ib19fe) CameraXConfig
से एपीआई फ़ील्डOPTION_TARGET_CLASS
औरOPTION_TARGET_NAME
को हटा दिया गया है, क्योंकि इनका इस्तेमाल सिर्फ़ इंटरनल लाइब्रेरी के लिए किया जाता है.CameraXConfig.Builder
के लिए कन्स्ट्रक्टर हटाया गया. (I96912)- इस शर्त को हटा दिया गया है कि CameraX शुरू करने के लिए, ऐप्लिकेशन को
Application
की अवधि बढ़ानी होगी. जब तक ऐप्लिकेशन केbuild.gradle
मेंcamera-camera2
आर्टफ़ैक्ट शामिल होगा, तब तक 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 फ़्लैग औरDisplay
पैरामीटर के इस्तेमाल से जुड़े फ़ोकस और मीटरिंग एपीआई के लिए Java फ़ाइलें बेहतर बनाया गया.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
का इस्तेमाल करने वाले ऐप्लिकेशन में, आसपेक्ट रेशियो की झलक गलत हो सकती है. ऐसा Pixel2 जैसे कुछ फ़ुल डिवाइसों पर, वीडियो रोकने या फिर से चलाने के बाद होता है.
गड़बड़ियां ठीक की गईं
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 इंटरऑपरेबिलिटी की सुविधा को अब एक्सपेरिमेंटल के तौर पर मार्क कर दिया गया है. साथ ही, इसे एक अलग पैकेज में ले जाया गया है,
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.getInstance()
का इस्तेमाल करके, हर प्रोसेस के लिएProcessCameraProvider
का एक इंस्टेंस, एसिंक्रोनस तरीके से मिलता है. यह एक ऐसा फ़्यूचर होता है जिसे सुनने के लिए इंतज़ार करना पड़ता है. यह फ़्यूचर पूरा होने पर,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 के सबसे सही तरीकों का पालन किया जा सकेगा. हमारा सुझाव है कि आप कैमरा व्यू पैकेज में दी गई
PreviewView
व्यू क्लास का इस्तेमाल करें.preview.setPreviewSurfaceProvider(previewView.previewSurfaceProvider)
ऐप्लिकेशन से मैनेज किए जाने वाले प्लैटफ़ॉर्म को अटैच करने के लिए दस्तावेज़ देखें. ऐसे मामलों में, ऐप्लिकेशन प्लैटफ़ॉर्म के लाइफ़साइकल को मैनेज करता है.
अहम जानकारी:
ImageAnalysis
ऐनालाइज़र का तरीका लागू करने के बाद, इमेज का इस्तेमाल करने के बाद उन्हें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()
जोड़ा गया है और यह एक एनम आर्ग्युमेंट स्वीकार करता है. इससे, आसपेक्ट रेशियो मोड को किसी भी आसपेक्ट रेशियो के बजाय,RATIO_4_3
याRATIO_16_9
के विकल्पों के साथ सेट किया जाता है. इस क्लोज़र से यह पता चलता है कि कैमरे से किसी भी आसपेक्ट रेशियो के बजाय, सिर्फ़ कुछ आसपेक्ट रेशियो ही उपलब्ध कराए जाते हैं.- फ़िलहाल, सिर्फ़ 16:9 और 4:3 आसपेक्ट रेशियो उपलब्ध हैं. 1:1 के मामले में, सिर्फ़ कुछ डिवाइसों पर कैमरे से यह सुविधा मिलती है. साथ ही, यह सुविधा सिर्फ़ सीमित रिज़ॉल्यूशन में मिलती है. 1:1 इंटरफ़ेस डिज़ाइन करने या प्रोसेस करने वाले ऐप्लिकेशन को ज़्यादा सुविधाजनक 16:9 या 4:3 विकल्पों का इस्तेमाल करना चाहिए. साथ ही, डिसप्ले को काटना या किसी सब-इलाके को प्रोसेस करना चाहिए.
- ये आसपेक्ट रेशियो, सेंसर के ज़्यादा से ज़्यादा हिस्से का इस्तेमाल करने के लिए बनाए गए हैं.
getTargetAspectRatio()
को इस्तेमाल के उदाहरण के कॉन्फ़िगरेशन एपीआई में जोड़ा गया था. इससे, इस्तेमाल के उदाहरण के आउटपुट के लिए टारगेट किया गया आसपेक्ट रेशियो दिखता है.- इमेज कैप्चर के लिए
setTargetAspectRatio(Rational aspectRatio)
तरीके कोsetTargetAspectRatioCustom(Rational aspectRatio)
में बदल दिया गया है. सेट होने पर, ImageCapture आउटपुट को उसी हिसाब से काटता है.
Executor APIs
- नीचे दिए गए फ़ंक्शन, एक एक्सेक्यूटर पैरामीटर स्वीकार करते हैं. इससे ऐप्लिकेशन को यह कंट्रोल करने में मदद मिलती है कि फ़ंक्शन किस एक्सेक्यूटर पर चलेगा.
Preview.setOnPreviewOutputUpdateListener()
एपीआई. अगर उस फ़ंक्शन के लिए कोई एक्सेक्यूटर मौजूद नहीं है, तो वह मुख्य थ्रेड पर लागू होता है.Preview.setOnPreviewOutputUpdateListener
FocusMeteringAction.Builder.setAutoFocusCallback
ImageAnalysis.setAnalyzer
ImageCapture.takePicture
CameraView.takePicture
CameraView.startRecording
VideoCapture.startRecording
Flash की जांच की सुविधा और सेंसर रोटेशन एपीआई की मदद से CameraInfo जोड़ी गई
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()
को जोड़ा गया. यह कैमरा सेंसर के ओरिएंटेशन की जानकारी, डिवाइस के नैचुरल ओरिएंटेशन के हिसाब से देता है. इसके अलावा, सुविधा के लिए, यह जानकारी किसी ऐसे ओरिएंटेशन के हिसाब से भी दी जा सकती है जिसे सरफ़ेस रोटेशन से बताया गया हो. सरफ़ेस रोटेशन, नैचुरल ओरिएंटेशन के हिसाब से ओरिएंटेशन की जानकारी देता है.
एपीआई में हुए बदलाव और गड़बड़ियां ठीक करना
- आसपेक्ट रेशियो: इस्तेमाल के हर उदाहरण के लिए, ऐप्लिकेशन को
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
रिलीज़ हो गए हैं. ये कैमरा-camera2:1.0.0-alpha05 में शामिल किए गए कमिट और ये किए गए कैमरा-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()
कई कॉन्फ़िगरेशन सेटिंग अब शून्य पैरामीटर स्वीकार करती हैं और संबंधित गैटर शून्य वैल्यू दिखा सकते हैं.
एएफ़/एई/एडब्ल्यूबी सेटिंग के साथ काम न करने वाले एमुलेटर पर टेस्ट करते समय आने वाली समस्या को ठीक किया गया.
चित्र का विश्लेषण करते समय रोटेशन पर होने वाले क्रैश बग को ठीक किया गया.
एक गड़बड़ी को ठीक किया गया है. इसमें, वीडियो रिकॉर्डिंग शुरू करने पर, फ़ोन के रोटेट होने या सामने और पीछे के कैमरे के बीच स्विच करने के बाद, फ़्रेम ब्लैक दिखता था.
एक साथ कई इमेज के विश्लेषण के इस्तेमाल के उदाहरण की टेस्टिंग हटाई गई. साथ काम करने की सुविधा देने के लिए, ऐप्लिकेशन में सिर्फ़ इमेज के विश्लेषण का एक इस्तेमाल का उदाहरण अटैच करना चाहिए.
कैमरा टेस्टिंग सुइट में, नकली कैमरे के लिए शुरुआती रोबोलेक्ट्रिक टेस्ट जोड़े गए हैं. हालांकि, इस पर अभी काम जारी है.
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 डिवाइस की क्षमता के आधार पर रिज़ॉल्यूशन/अस्पेक्ट रेशियो में बदलाव करता है. इसलिए, हो सकता है कि आपके अनुरोधों को पूरा न किया जा सके. ऐसा इन वजहों से हो सकता है:
- डिवाइस, अनुरोध किए गए रिज़ॉल्यूशन के साथ काम नहीं कर रहे हैं
- साथ काम करने से जुड़ी समस्याएं, जैसे कि LEGACY डिवाइस जिनमें कुछ रिज़ॉल्यूशन का इस्तेमाल सही तरीके से काम करने के लिए ज़रूरी है
- कुछ डिवाइसों पर, कुछ फ़ॉर्मैट सिर्फ़ कुछ आसपेक्ट रेशियो में उपलब्ध होते हैं
- JPEG या वीडियो एन्कोडिंग के लिए, “nearest mod16” को प्राथमिकता दी जाती है.
CameraCharacteristics#SCALER_STREAM_CONFIGURATION_MAP
देखें
हालांकि, CameraX सेशन बनाता और उसे मैनेज करता है, लेकिन आपको हमेशा अपने कोड में इस्तेमाल के उदाहरण वाले आउटपुट में, लौटाए गए इमेज के साइज़ की जांच करनी चाहिए और उसके हिसाब से उसमें बदलाव करना चाहिए.
रिज़ॉल्यूशन और आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) सेट करने के लिए, कुछ बदलाव किए गए हैं. इसका मकसद, एपीआई को बेहतर बनाना है:
- अगर कोई आसपेक्ट रेशियो सेट नहीं किया गया है, तो अब प्रीव्यू के इस्तेमाल के उदाहरण के लिए डिफ़ॉल्ट रूप से 4:3 आसपेक्ट रेशियो माना जाएगा.
- जब CameraX, डिवाइस की क्षमता के आधार पर अनुरोध किए गए रिज़ॉल्यूशन और आसपेक्ट रेशियो में बदलाव करता है, तो वह पहले उसी आसपेक्ट रेशियो को बनाए रखने की कोशिश करता है जो
setTargetAspectRatio
याsetTargetResolution
कॉल में तय किया गया था - रिज़ॉल्यूशन के “Nearest mod16” वर्शन को एक ही आसपेक्ट रेशियो माना जाता है.
ImageAnalysis का नॉन-ब्लॉकिंग मोड
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
दिखता था. - उस समस्या को ठीक किया गया है जिसमें लेगसी डिवाइस के लिए, JPEG फ़ॉर्मैट में ज़्यादा से ज़्यादा रिज़ॉल्यूशन के तौर पर खास आसपेक्ट रेशियो की ज़रूरत होती है
- कैमरा खोलने के दौरान, ऐप्लिकेशन को बैकग्राउंड में ले जाने पर आने वाली समस्या को ठीक किया गया
- एपीआई 25 से पहले के वर्शन में आ रही समस्या को ठीक किया गया. साथ ही, गड़बड़ी
checkAndUpdateEglState: invalid current EGLDisplay
को हटाया गया - एक्सटेंशन को चालू और शुरू करने के बाद, झलक हटाने की सुविधा बंद करने के दौरान आने वाली समस्या ठीक की गई
- camera-view और camera-extensions के लिए, आर्टफ़ैक्ट अब ऐल्फ़ा वर्शन के तौर पर पब्लिश किए गए हैं
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
- तेज़ी से खोलने/बंद करने या बांधने/अनबाइंड करने पर, कॉन्फ़िगर नहीं किए गए इनपुट/आउटपुट प्लैटफ़ॉर्म के क्रैश होने की समस्या को ठीक किया गया
- फ़्यूचर के नए वर्शन पर स्विच करना
- ज़्यादा बेहतर तरीके से जांच करने के लिए, गड़बड़ी ठीक करने के तरीके आज़माना
- मुख्य इंटिग्रेशन टेस्ट में अब फ़ोटो कैप्चर करने में लगने वाला समय दिखता है
- Executors के लिए इंटरनल काम करने वाली क्लास डेवलप की गई
- टाइमिंग टेस्ट ऐप्लिकेशन, इमेज कैप्चर करने के लिए पिछली इमेज के पूरा होने का इंतज़ार करता है. साथ ही, यह ऐप्लिकेशन बेहतर स्थिरता भी देता है
एक्सटेंशन
- वर्शन की जांच करने की सुविधा जोड़ी गई
- टेस्ट कवरेज के बारे में ज़्यादा जानकारी - एक्सटेंशन इवेंट कॉलबैक
- इंटरनल इमेज और मेटाडेटा के लिए सुधार
- टेस्ट ऐप्लिकेशन में मोड स्विच करने की सुविधा को ठीक किया गया
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 वर्शन में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- एम्युलेटर का इस्तेमाल करते समय, शून्य से भाग देने की समस्या को ठीक किया गया
- कुछ डिवाइसों पर, तेज़ी से फ़ोटो लेने पर होने वाली NullPointerअपवाद/Surface छोड़ी गई गड़बड़ी को ठीक किया गया. साथ ही, इस्तेमाल के उदाहरणों को अनबाइंड करते हुए, उन्हें फिर से बाइंड करने के लिए.
- संगठन में होने वाली समस्या को ठीक किया गया है, ताकि यह पक्का किया जा सके कि कैप्चर करने के अनुरोध से जुड़े अपडेट, सभी प्लैटफ़ॉर्म पर लगातार असर डालते हों
- ऐप्लिकेशन के नए इंस्टेंस में इस्तेमाल के उदाहरणों को फिर से शुरू करने पर, स्थिरता में सुधार होगा
- एपीआई में एक्सेक्यूटर की सुविधा के लिए, इंटरनल आर्किटेक्चर में बदलाव
- 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 वर्शन 1.0.0-beta11
14 अक्टूबर, 2020
androidx.camera:camera-lifecycle:1.0.0-beta11
रिलीज़ हो गया है. 1.0.0-beta11 वर्शन में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- अगर किसी कैमरा इंस्टेंस से अटैच होने से पहले
<UseCase>.getTargetRotation()
को कॉल किया जाता है, तो यहSurface.ROTATION_0
दिखाएगा. ऐसा तब तक होगा, जब तक कि बिल्डर या 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 वर्शन 1.0.0-beta09
16 सितंबर, 2020
androidx.camera:camera-lifecycle:1.0.0-beta09
रिलीज़ हो गया है. 1.0.0-beta09 वर्शन में ये बदलाव शामिल हैं.
Camera-Lifecycle वर्शन 1.0.0-beta08
19 अगस्त, 2020
androidx.camera:camera-lifecycle:1.0.0-beta08
रिलीज़ हो गया है. 1.0.0-beta08 वर्शन में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- अब ऐसे कॉन्टेक्स्ट का इस्तेमाल करने पर, शुरू करने की प्रोसेस क्रैश नहीं होनी चाहिए जो
Context.getApplicationContext()
से कोई ऐप्लिकेशन ऑब्जेक्ट नहीं दिखाता. (I3d3c9, b/160817073)
Camera-Lifecycle वर्शन 1.0.0-beta07
22 जुलाई, 2020
androidx.camera:camera-lifecycle:1.0.0-beta07
रिलीज़ हो गया है. वर्शन 1.0.0-beta07 में ये कमिट हैं.
Camera-Lifecycle का वर्शन 1.0.0-beta06
24 जून, 2020
androidx.camera:camera-lifecycle:1.0.0-beta06
रिलीज़ हो गया है. 1.0.0-beta06 वर्शन में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- अब CameraX को, ProcessCameraProvider#getInstance() को कॉल करने से पहले, ProcessCameraProvider#configureInstance() के साथ कॉन्फ़िगर किया जा सकता है. इससे, ऐप्लिकेशन की ऐप्लिकेशन क्लास में CameraXConfig.Provider को लागू किए बिना, CameraXConfig को पसंद के मुताबिक बनाया जा सकता है. (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 वर्शन 1.0.0-beta04
27 मई, 2020
androidx.camera:camera-lifecycle:1.0.0-beta04
रिलीज़ हो गया है. वर्शन 1.0.0-beta04 में ये कमिट हैं.
Camera-lifecycle वर्शन 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 वर्शन 1.0.0-beta01
26 फ़रवरी, 2020
androidx.camera:camera-lifecycle:1.0.0-beta01
रिलीज़ हो गया है. 1.0.0-beta01 वर्शन में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- शुरू करने के दौरान,
ProcessCameraProvider
मिलने पर, डिफ़ॉल्ट कॉन्फ़िगरेशन का इस्तेमाल किया जाता है औरApplication
की अवधि को बढ़ाना ज़रूरी नहीं है. (I5e395)
Camera-Lifecycle वर्शन 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 वर्शन 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 वर्शन 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
रिलीज़ हो गया है. कैमरा-लाइफ़साइकल के 1.0.0-alpha01 वर्शन में ये कमिट शामिल हैं
एपीआई के बारे में अहम जानकारी
- camera-lifecycle आर्टफ़ैक्ट जोड़ा गया है, जो
LifeCycleCameraProvider
इंटरफ़ेस औरProcessCameraProvider
नाम का एक लागू करने वाला टूल उपलब्ध कराता है. यह टूल, कोर में पिछली CameraX क्लास के कई फ़ंक्शन उपलब्ध कराता है और इसेgetInstance()
तरीके से हासिल किया जाता है. - CameraX का इस्तेमाल करने के लिए, ऐप्लिकेशन में कैमरा-लाइफ़साइकल लाइब्रेरी शामिल होनी चाहिए.
ProcessCameraProvider
का इस्तेमाल करके CameraX को शुरू करने का तरीका जानने के लिए, कैमरा-कोर सेक्शन में नोट देखें.
कैमरा-एक्सटेंशन और कैमरा-व्यू वर्शन 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) - camera-extensions आर्टफ़ैक्ट के लिए, एपीआई फ़ाइलें अपडेट करें. (If683a, b/161377155)
गड़बड़ियां ठीक की गईं
VideoCapture
को बाइंड करते समय, ऐप्लिकेशन को एक्सटेंशन मोड चालू करने से रोकें. CameraX एक्सटेंशन सिर्फ़ImageCapture
औरPreview
के साथ काम करते हैं.VideoCapture
का इस्तेमाल अभी नहीं किया जा सकता. अगर ऐप्लिकेशनVideoCapture
को बांधता है और कोई एक्सटेंशन मोड चालू करता है, तोIllegalArgumentException
को ट्रिगर किया जाएगा. (I0d87b)- नतीजा सेट खाली होने पर,
CameraSelector#filter
अबIllegalArgumentException
नहीं दिखाता. (I27804) ExtensionsManager#getInstance
एपीआई का नाम बदलकरgetInstanceAsync
किया गया, क्योंकि यहListenableFuture
दिखाता है. फ़ंक्शन के नाम का एसिंक्रोनस सफ़िक्स साफ़ तौर पर दिखा सकता है कि यह एक एसिंक्रोनस फ़ंक्शन है. (I279d2)ExtensionsManager#getEstimatedCaptureLatencyRange
एपीआई से रिज़ॉल्यूशन पैरामीटर हटाएं, क्योंकि उपयोगकर्ताओं को यह नहीं पता होता किImageCapture
के इस्तेमाल के उदाहरण के लिए कौनसे साइज़ काम करते हैं. साथ ही, यह भी नहीं पता होता कि रिटर्न की गई इंतज़ार की अवधि की जानकारी, कैप्चर के ज़्यादा से ज़्यादा आउटपुट साइज़ के लिए है या इनपुट रिज़ॉल्यूशन पैरामीटर के लिए. (I74bb2)ExtensionsManager
फ़ंक्शन केCameraProvider
पैरामीटर कोgetInstance()
एपीआई में ले जाएं. इससे, उपयोगकर्ताओं को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 के आधार पर CameraInfos की सूची को फ़िल्टर करने के लिए, सार्वजनिक एपीआई में CameraSelector#filter जोड़ा गया है. (I105d0)
गड़बड़ियां ठीक की गईं
- कुछ डिवाइसों पर, एक्सटेंशन मोड को तेज़ी से स्विच करने पर होने वाले क्रैश की समस्या को ठीक किया गया है. (आईबीफ़)
वर्शन 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)
गड़बड़ियां ठीक की गईं
- ProGuard चालू होने पर AbsactMethodError समस्या ठीक की गई. (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 क्लास को अपडेट किया गया: 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 के यूज़र इंटरफ़ेस (यूआई) के साथ इस्तेमाल करने पर,
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)
- अब इस्तेमाल नहीं किया जा सकने वाला extensionsErrorListener. फ़िलहाल, इस इंटरफ़ेस का इस्तेमाल सिर्फ़ यह देखने के लिए किया जाता है कि एक्सटेंशन मोड चालू करते समय, झलक या इमेज कैप्चर करने की सुविधा काम कर रही है या नहीं. एक्सटेंशन फ़ंक्शन को बेहतर तरीके से काम करने के लिए, CameraX अपने-आप एक और झलक या 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 अब एक्सपेरिमेंट के तौर पर उपलब्ध नहीं हैं और ये आधिकारिक एपीआई बन गए हैं. इनका इस्तेमाल, एनोटेट किए गए ऑप्ट-इन के बिना किया जा सकता है. (I4bc94)
- ऐसी सुविधा जोड़ें जो इस्तेमाल के उदाहरणों के बीच निर्देशांकों को बदलती हो. इस्तेमाल का उदाहरण: ImageAnalysis के इस्तेमाल के उदाहरण में, पहचाने गए निर्देशांकों को बदलना और झलक में पहचाने गए ऑब्जेक्ट को हाइलाइट करना. (I63ab1, b/137515129)
CameraView
को हटा दिया गया है.CameraView
कोCameraController
से बदल दिया गया है. माइग्रेट करने का तरीका जानने के लिए, कृपया डेटा को दूसरी जगह भेजने से जुड़ी गाइड देखें.: (आईडी5005)
गड़बड़ियां ठीक की गईं
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 (Ib10b6) पर, PreviewView के स्ट्रेच होने की समस्या को ठीक किया गया
कैमरा एक्सटेंशन और व्यू का वर्शन 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)
कैमरा एक्सटेंशन और व्यू वर्शन 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 गेटर जोड़ें. (Ib8138, b/178251727)
गड़बड़ियां ठीक की गईं
- सिर्फ़ Preview या ImageCapture बाउंड होने पर, गड़बड़ियों की शिकायत करने के लिए ExtensionsErrorListener को ठीक किया गया. (I5ae39)
कैमरा एक्सटेंशन और व्यू का वर्शन 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 वर्शन में ये कमिट शामिल हैं.
कैमरा लाइब्रेरी के अन्य आर्टफ़ैक्ट के साथ काम करने के लिए रिलीज़ किया जा रहा है.
कैमरा एक्सटेंशन और व्यू वर्शन 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 का वर्शन 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
एनोटेशन का इस्तेमाल करना चाहिए. साथ ही,markerClass
के तौर परExperimentalVideo
का इस्तेमाल करना चाहिए. (I6d729)
कैमरा-एक्सटेंशन वर्शन 1.0.0-alpha18
14 अक्टूबर, 2020
androidx.camera:camera-extensions:1.0.0-alpha18
रिलीज़ हो गया है. 1.0.0-alpha18 वर्शन में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- CameraX को शुरू करने और bindToLifecycle (I61dc5) के इंतज़ार का समय कम किया गया
- अगर किसी Camera इंस्टेंस के साथ अटैच होने से पहले कॉल किया जाता है, तो
<UseCase>.getTargetRotation()
,Surface.ROTATION_0
दिखाएगा. ऐसा तब तक होगा, जब तक Builder या UseCase पर कोई targetRotation सेट नहीं किया गया हो. (I80fcd)
Camera-View वर्शन 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 का वर्शन 1.0.0-alpha16
16 सितंबर, 2020
androidx.camera:camera-extensions:1.0.0-alpha16
रिलीज़ हो गया है. 1.0.0-alpha16 वर्शन में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
Extensions
ऑब्जेक्ट पाने के लिए,ExtensionsManager
में एक तरीका जोड़ा गया है. इसका इस्तेमाल, कैमरे के इंस्टेंस (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)
गड़बड़ियां ठीक की गईं
- अगर एक्सटेंशन इफ़ेक्ट चालू है और वेंडर लाइब्रेरी को आउटपुट प्लैटफ़ॉर्म पर कोई खास प्रोसेस करनी है, तो PreviewView को TextureView का इस्तेमाल करने के लिए मजबूर किया जाता है. (I0c3cc)
- झलक के लिए, टारगेट को अपनी पसंद के मुताबिक घुमाने की अनुमति दें. ट्रांसफ़ॉर्मेशन की जानकारी का हिसाब लगाया जाता है और उसे नए
TranformationInfoListener
कॉलबैक की मदद से, उपयोगकर्ता को तुरंत दिखाया जाता है. (I21470)
आम समस्याएं
- PreviewView में, जब असली उपयोगकर्ता PreviewView पर क्लिक करता है, तो
OnClickListener#onClick()
को ट्रिगर नहीं किया जाता. टच इवेंट को गलती से PreviewView#onTouchEvent() ने इस्तेमाल किया है. अगली रिलीज़ में इस समस्या को ठीक कर दिया जाएगा. - अगर PreviewView के साथ ViewPort का इस्तेमाल किया जाता है, तो
PreviewView#getMeteringPointFactory()
से मिला मीटरिंगपॉइंट गलत हो सकता है.
Camera-Extensions का वर्शन 1.0.0-alpha15
19 अगस्त, 2020
androidx.camera:camera-extensions:1.0.0-alpha15
रिलीज़ हो गया है. 1.0.0-alpha15 वर्शन में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
ExtensionsManager.init()
का तरीका अब 0 आर्ग्युमेंट के बजाय, पैरामीटर के तौर पर एक कॉन्टेक्स्ट लेता है. (Ife754)अब ऐसे Context का इस्तेमाल करने पर, शुरू करने की प्रोसेस क्रैश नहीं होनी चाहिए जो
Context.getApplicationContext()
से कोई Application ऑब्जेक्ट नहीं दिखाता. (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 का वर्शन 1.0.0-alpha14
22 जुलाई, 2020
androidx.camera:camera-extensions:1.0.0-alpha14
रिलीज़ हो गया है. 1.0.0-alpha14 वर्शन में ये बदलाव शामिल हैं.
Camera-View वर्शन 1.0.0-alpha14
22 जुलाई, 2020
androidx.camera:camera-view:1.0.0-alpha14
रिलीज़ हो गया है. 1.0.0-alpha14 वर्शन में ये बदलाव शामिल हैं.
Camera-Extensions का वर्शन 1.0.0-alpha13
24 जून, 2020
androidx.camera:camera-extensions:1.0.0-alpha13
रिलीज़ हो गया है. 1.0.0-alpha13 वर्शन में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- कैमरे के आईडी और CameraCharacteristics के हिसाब से कैमरों को फ़िल्टर करने के लिए, एक्सपेरिमेंट के तौर पर इंटरफ़ेस जोड़े गए हैं. (I28f61)
कैमरा-व्यू वर्शन 1.0.0-alpha13
24 जून, 2020
androidx.camera:camera-view:1.0.0-alpha13
रिलीज़ हो गया है. 1.0.0-alpha13 वर्शन में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- अब CameraView, LifecycleOwner के साथ बाइंड होने पर, IllegalArgumentException के साथ क्रैश नहीं होता. ऐसा तब होता है, जब LifecycleOwner को बाइंड करने के कुछ समय बाद ही, उसकी लाइफ़साइकल DESTROYED स्टेटस में ट्रांज़िशन हो जाती है. DESTROYED स्थिति में लाइफ़साइकल को बांधने पर, कैमरा नहीं खुलेगा. (I7c2b8)
- PreviewView StreamState अब CameraView.getPreviewStreamState() (I21a2b) के ज़रिए उपलब्ध है
कैमरा-एक्सटेंशन वर्शन 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 वर्शन 1.0.0-alpha12
10 जून, 2020
androidx.camera:camera-view:1.0.0-alpha12
रिलीज़ हो गया है. 1.0.0-alpha12 वर्शन में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
PreviewView#getBitmap()
एपीआई जोड़ें, जो झलक दिखाने वाले प्लैटफ़ॉर्म पर दिखाए गए कॉन्टेंट की बिटमैप इमेज दिखाता है. (I9b500, b/157659818)
कैमरा-एक्सटेंशन वर्शन 1.0.0-alpha11
27 मई, 2020
androidx.camera:camera-extensions:1.0.0-alpha11
रिलीज़ हो गया है. 1.0.0-alpha11 वर्शन में ये बदलाव शामिल हैं.
Camera-View वर्शन 1.0.0-alpha12
10 जून, 2020
androidx.camera:camera-view:1.0.0-alpha12
रिलीज़ हो गया है. 1.0.0-alpha12 वर्शन में ये कमिट शामिल हैं.
नई सुविधाएं
एपीआई में हुए बदलाव
गड़बड़ियां ठीक की गईं
PreviewView#getBitmap()
एपीआई जोड़ें, जो झलक दिखाने वाले प्लैटफ़ॉर्म पर दिखाए गए कॉन्टेंट की बिटमैप इमेज दिखाता है. (I9b500, b/157659818)
कैमरा-व्यू वर्शन 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) PreviewView#createSurfaceProvider()
सेCameraInfo
पैरामीटर हटा दिया गया है. अबPreviewView
,SurfaceRequest
से इसे अंदरूनी तौर पर वापस पाता है. (If18f0, b/154652477)- CameraView में, VideoCapture के डिफ़ॉल्ट आसपेक्ट रेशियो को 16:9 पर सेट किया गया है. (Ie6a7b, b/153237864)
PreviewView
फ़्रेगमेंट को बाहर स्वाइप करने के बाद, ViewPager2 में वापस स्वाइप करने पर, काली स्क्रीन से जुड़ी समस्याएं ठीक करें.Preview
साथ ही, समस्या कोremoveView(previewview)
और फिरaddView(previewView)
करने पर ठीक कर दिया गया है. (Iab555, b/149877652, b/147354615)Uri
औरOutputStream
में इमेज सेव करने की अनुमति देने के लिए,CameraView#takePicture()
एपीआई को अपडेट करें. कैननिकल उदाहरण के तौर परUri
का इस्तेमाल करने के लिए, टेस्ट ऐप्लिकेशन को अपडेट करें. (Ia2459, b/153607583)ScaleType
एट्रिब्यूट सेट करके, एक्सएमएल लेआउट से PreviewView का स्केल टाइप सेट किया जा सकता है. (I08565, b/153015659)CameraView.ScaleType
को हटा दिया गया है. इसके बजाय, CameraView के साथ स्केल टाइप सेट करने/उसे पाने के लिए,PreviewView.ScaleType
का इस्तेमाल करें. (Ia8974, b/153014831)- अगर
PreviewView
के लिए पहले से कोई बैकग्राउंड कलर नहीं चुना गया है, तो उसे डिफ़ॉल्ट रूप से कोई बैकग्राउंड कलर दें. इससे, प्रीव्यू स्ट्रीम शुरू होने से पहले, उसके पीछे मौजूद कॉन्टेंट नहीं दिखता. (I09fad)
Camera-Extensions वर्शन 1.0.0-alpha10
15 अप्रैल, 2020
androidx.camera:camera-extensions:1.0.0-alpha10
रिलीज़ हो गया है. 1.0.0-alpha10 वर्शन में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- Camera-Core की रिलीज़ के साथ काम करने के लिए सुधार
Camera-View वर्शन 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
के साथImplementationMode.SURFACE_VIEW
का इस्तेमाल करने पर, कुछ डिवाइसों पर अच्छी तरह से झलक न दिखे. इसकी वजह यह है कि झलक के लिए इस्तेमाल किया गयाSurfaceView
, विंडो के लाइफ़साइकल बंद होने पर, अपने सरफ़ेस को अमान्य कर देता है. रीस्टार्ट होने पर, कैमरा फिर से खुल जाता है औरSurfaceView
का सरफ़ेस मान्य होने से पहले, झलक को दोबारा शुरू कर सकता है. फ़िलहाल, आपकोImplementationMode.TEXTURE_VIEW
का इस्तेमाल करना चाहिए.
एपीआई में हुए बदलाव
PreviewView.setImplementationMode()
का नाम बदलकरPreviewView.setPreferredImplementationMode()
किया गया.PreviewView.getImplementationMode()
का नाम बदलकरPreviewView.getPreferredImplementationMode()
किया गया.PreviewView.getSurfaceProvider()
कोPreviewView.createSurfaceProvider(CameraInfo)
से बदला गया, जो शून्य करने लायकCameraInfo
इंस्टेंस लेता है. इसका इस्तेमाल, जहां भी मुमकिन होImplementationMode.SURFACE_VIEW
का इस्तेमाल करके, झलक को ऑप्टिमाइज़ करने के लिए किया जाता है. अगर कोई शून्य इंस्टेंस पास किया जाता है या लागू करने का पसंदीदा मोड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
के लिए लागू करने का मोड सेट करने की सुविधा हटा दी गई है.PreviewView
में (x, y) कोMeteringPoint
में बदलने के लिए, PreviewView मेंcreateMeteringPointFactory()
API जोड़ें. (Ib36d7)
गड़बड़ियां ठीक की गईं
- ऐसे मामले ठीक किए गए हैं जिनमें
PreviewView
का साइज़ बदलने के बाद गलत झलक दिखती है. (I71101)
Camera-Extensions का वर्शन 1.0.0-alpha08
26 फ़रवरी, 2020
androidx.camera:camera-extensions:1.0.0-alpha08
रिलीज़ हो गया है. 1.0.0-alpha08 वर्शन में ये कमिट शामिल हैं.
कैमरा-व्यू वर्शन 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 वर्शन 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 वर्शन 1.0.0-alpha07
10 फ़रवरी, 2020
androidx.camera:camera-view:1.0.0-alpha07
रिलीज़ हो गया है. 1.0.0-alpha07 वर्शन में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
PreviewView
कोTextureView
लागू करने के बाद,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)- अपडेट किया गया एपीआई, जिसमें
getZoomRatio()
,getMaxZoomRatio()
,getMinZoomRatio()
, औरgetLinearZoom()
तरीके सेCameraInfo
को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 में हुए बदलावों के साथ काम करने के लिए, कई सुधार और अपडेट.
कैमरा-व्यू वर्शन 1.0.0-alpha06
22 जनवरी, 2020
androidx.camera:camera-view:1.0.0-alpha06
रिलीज़ हो गया है. 1.0.0-alpha06 वर्शन में ये कमिट शामिल हैं.
अपडेट
- Camera Core और Camera2 में हुए बदलावों के साथ काम करने के लिए, कई सुधार और अपडेट.
कैमरा-एक्सटेंशन वर्शन 1.0.0-alpha05
18 दिसंबर, 2019
androidx.camera:camera-extensions:1.0.0-alpha05
रिलीज़ हो गया है. वर्शन 1.0.0-alpha05 में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
- Camera Core के इंटरनल एपीआई से मैच करने के लिए अपडेट किया गया.
कैमरा-व्यू वर्शन 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 के सरफ़ेस के इस्तेमाल के साथ सिंक करती है.
कैमरा-एक्सटेंशन वर्शन 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
रिलीज़ हो गया है. कैमरा व्यू के वर्शन 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
रिलीज़ हो गए हैं. ये कैमरा एक्सटेंशन में शामिल किए गए ये वादे:1.0.0-alpha02 और ये कैमरा-व्यू: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 में शामिल कमिट हैं
- आने वाले समय में, कैमरा एक्सटेंशन के लिए नई लाइब्रेरी. इससे, उन डिवाइसों पर इफ़ेक्ट ऐक्सेस किए जा सकेंगे जिन पर यह सुविधा काम करती है. इस लाइब्रेरी पर काम जारी है.
- नई कैमरा व्यू क्लास. इस लाइब्रेरी पर काम जारी है.