कैमराएक्स
इस टेबल में, androidx.camera
ग्रुप के सभी आर्टफ़ैक्ट शामिल हैं.
सह-प्रॉडक्ट | रिलीज़ किया गया जांचा और परखा हुआ वर्शन | रिलीज़ कैंडिडेट | बीटा रिलीज़ | ऐल्फ़ा रिलीज़ |
---|---|---|---|---|
कैमरा-कैमरा2 | 1.4.0 | - | - | 1.5.0-alpha03 |
कैमरा-कोर | 1.4.0 | - | - | 1.5.0-ऐल्फ़ा03 |
कैमरा कंपोज़ | - | - | - | 1.5.0-ऐल्फ़ा03 |
camera-effects | 1.4.0 | - | - | 1.5.0-alpha03 |
कैमरा-एक्सटेंशन | 1.4.0 | - | - | 1.5.0-ऐल्फ़ा03 |
camera-feature-combination-query | - | - | - | 1.5.0-alpha03 |
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-ऐल्फ़ा03 |
camera-view | 1.4.0 | - | - | 1.5.0-ऐल्फ़ा03 |
camera-viewfinder | - | - | 1.3.0-beta02 | 1.4.0-ऐल्फ़ा07 |
camera-video | 1.4.0 | - | - | 1.5.0-alpha03 |
डिवाइस की जांच करना
CameraX की जांच, हमारी लैब में कई डिवाइसों पर की जाती है. फ़िलहाल लैब में मौजूद डिवाइसों की सूची देखने के लिए, CameraX लैब में टेस्ट किए गए डिवाइस देखें.
डिपेंडेंसी का एलान करना
CameraX पर डिपेंडेंसी जोड़ने के लिए, आपको अपने प्रोजेक्ट में Google Maven रिपॉज़िटरी जोड़नी होगी. ज़्यादा जानकारी के लिए, Google की मेवन रिपॉज़िटरी पढ़ें.
अपने ऐप्लिकेशन या मॉड्यूल के लिए, 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
एनोम के नाम बदलें, ताकि लागू किए गए एनोम को बेहतर तरीके से दिखाया जा सके. साथ ही,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
सुविधाओं के साथ आसानी से इंटिग्रेट किया जा सकता है. - Shutter Sound API: इससे, अलग-अलग देशों/इलाकों में शटर की आवाज़ से जुड़ी ज़रूरी शर्तों की आसानी से जांच की जा सकती है.
- स्क्रीन फ़्लैश: सामने वाले कैमरे से कम रोशनी में बेहतर फ़ोटो ली जा सकती हैं.
- Camera Extensions Metadata APIs: ये एपीआई, एक्सटेंशन की क्षमता में बदलाव करने और
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 एक्सटेंशन के काम न करने की समस्या को ठीक किया गया. यह समस्या, एजीपी के 8.5.1 वर्शन में अपग्रेड करने और छोटा करने की सुविधा को चालू करने के बाद सामने आई. यह समस्या, रिलीज़ मोड में
Camera2OutputConfigImpl
कन्वर्ज़न की समस्या की वजह से आई थी. (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 इमेज फ़ॉर्मैट का इस्तेमाल करके, अल्ट्रा एचडीआर वाली इमेज को कंप्रेस करके कैप्चर करेगा. यह फ़ॉर्मैट, एसडीआर 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)getSurface
फ़ंक्शन कोViewfinderSurfaceRequest
में जोड़ें. (I781a0)camera-viewfinder
मेंcamera-viewfinder-core
का इस्तेमाल करें. साथ ही,ViewfinderSurfaceRequest
औरCameraViewfinder
का इस्तेमाल बंद करें. (I6198c)ZoomGestureDetector
जोड़ा गया है, जो पिंच-टू-ज़ूम गतिविधि के लिए खास तौर पर कॉन्फ़िगर किए गए स्केलिंग जेस्चर को समझता है. (Ifafbf)
गड़बड़ियां ठीक की गईं
- ऐनालाइज़र की डिफ़ॉल्ट टारगेट रिज़ॉल्यूशन सेटिंग से जुड़ी
ImageAnalysis
के रिज़ॉल्यूशन चुनने की समस्या को ठीक किया गया: टारगेट रिज़ॉल्यूशन को गलत तरीके से 640x480 पर सेट किया गया था. भले ही, ऐप्लिकेशन ने ऐनालाइज़र की कोई दूसरी डिफ़ॉल्ट रिज़ॉल्यूशन सेटिंग सेट की हो. अगर ऐप्लिकेशन में यह समस्या (1.3.0 ~ 1.3.2) आती है और उसे समाधान वाली नई वर्शन रिलीज़ का इस्तेमाल करने के लिए अपग्रेड नहीं किया जा सकता, तो सीधे पसंदीदा रिज़ॉल्यूशन के साथResolutionSelector
सेट करें औरAspectRatioStrategy
काImageAnalysis
UseCase
से मिलान करें. (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, फ़्रेमवर्क-साइड एपीआई को मैनेज करेगा.साथ ही, ज़रूरत के हिसाब से ऐप्लिकेशन के यूज़र इंटरफ़ेस (यूआई) में होने वाले बदलावों के साथ टाइमिंग को सिंक करेगा. उदाहरण के लिए, ऐप्लिकेशन की स्क्रीन के रंग/ब्राइटनेस में बदलाव होने के बाद, एई प्रीकैप्चर ट्रिगर. ऐप्लिकेशन को सिर्फ़ 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
के लिए ज़्यादा क्वालिटी का इस्तेमाल करने के लिए, एपीआई जोड़े गए.VIDEO_CAPABILITIES_SOURCE_CODEC_CAPABILITIES
के साथRecorder.Builder#setVideoCapabilitiesSource(int)
का इस्तेमाल करके,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) - एक्सटेंशन के चालू होने पर, सीपीयू के लोड होने और बिजली की खपत बढ़ने की वजह से, परफ़ॉर्मेंस से जुड़ी समस्या को ठीक कर दिया गया है. (आईबीडीसीसीबी)
CameraUseInconsistentTimebaseQuirk
में Snapdragon 480 जोड़ा गया. इससे Android 12 में, इस चिपसेट का इस्तेमाल करने वाले डिवाइसों से जुड़ी समस्या ठीक हो जाती है. इसकी वजह यह है कि रिकॉर्डिंग में ऑडियो को उस समय के लिए ऑफ़सेट किया जाता है, जब तक डिवाइस निलंबित है. (I58010)
वर्शन 1.4.0-alpha02
18 अक्टूबर, 2023
androidx.camera:camera-*:1.4.0-alpha02
रिलीज़ हो गया है. 1.4.0-alpha02 वर्शन में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- एपीआई का नाम बदलकर
setCameraOpenRetryMaxTimeoutInMillisWhileResuming
करें और आर्ग्युमेंट का नाम बदलें. (I72370) - डिवाइस की क्षमता के बारे में क्वेरी करने और वीडियो/झलक को स्थिर करने की सुविधा चालू करने के लिए, एपीआई जोड़ना. (I87544)
- कैमरा खोलने के लिए, ज़्यादा से ज़्यादा टाइम आउट को पसंद के मुताबिक बनाने के लिए एपीआई उपलब्ध कराएं. (I0c642)
ProcessCameraProvider.shutdownAsync
को पब्लिक टेस्टिंग एपीआई के तौर पर रिलीज़ किया गया, ताकि टेस्ट सुइट में कैमरा की सेवा देने वाली कंपनी का इस्तेमाल किया जा सके. टेस्ट के दौरान, CameraX को अलग-अलग तरीकों से शुरू करना पड़ सकता है. (I9eca7)- वीडियो कैप्चर की डाइनैमिक रेंज, फ़्रेम रेट, और मिरर मोड को कॉन्फ़िगर करने के लिए एपीआई जोड़ें. (Ifb8f7)
OutputSize
को बंद करें और उसेResolutionSelector
से बदलें.ResolutionSelector
, रिज़ॉल्यूशन चुनने का ज़्यादा बेहतर तरीका है. यह camera-core API के साथ काम करता है. (I93abd, b/286801438)
गड़बड़ियां ठीक की गईं
- Samsung Galaxy S23 Ultra 5G पर, पीछे के कैमरे पर
ImageAnalysis
के साथ एक्सटेंशन बोकेह या फ़ेस-रीटच की सुविधा चालू होने पर, फ़ोटो की झलक का काला दिखने की समस्या को ठीक किया गया है. (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
में स्नैपड्रैगन 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()
एपीआई की मदद से क्वेरी की जा सकती है.
एपीआई में बदलाव
ResolutionSelector#HIGH_RESOLUTION_FLAG_OFF
/ON
कॉन्स्टेंट का नाम बदलकरALLOWED_RESOLUTIONS_NORMAL
/SLOW
कर दिया गया. साथ ही, बिल्डरsetHighResolutionEnabledFlag
फ़ंक्शन का नाम बदलकरsetAllowedResolutionMode
कर दिया गया. (Iae817)CameraInfo#getSupportedFrameRateRanges()
अबList
के बजायSet
दिखाता है, ताकि यह बेहतर तरीके से दिखाया जा सके कि रेंज का क्रम नहीं है. (I02f43)- ठीक न की जा सकने वाली गड़बड़ियों को ठीक करने के लिए,
CameraEffect
में गड़बड़ी की पहचान करने वाला लिसनर जोड़ें (Ice471) - बेहतर तरीके से जांच करने के लिए,
ResolutionInfo
में सार्वजनिक कन्स्ट्रक्टर जोड़ें (If6d1c) setTargetRotationDegrees
के इस्तेमाल की जगह एपीआईUseCase.snapToSurfaceRotation(int)
उपलब्ध कराया गया है. साथ ही, एपीआईImageAnalysis.setTargetRotationDegrees(int)
,ImageCapture.setTargetRotationDegrees(int)
, औरVideoCapture.setTargetRotationDegrees(int)
को बंद कर दिया गया है. (Ia9010)- झलक के इस्तेमाल के उदाहरण (If4f22) के लिए, टारगेट फ़्रेम रेट को सेट और फिर से पाने के लिए, नए एपीआई
Preview#getTargetFrameRate
औरPreview.Builder#setTargetFrameRate
जोड़े गए हैं - ग़ैर-ज़रूरी चीज़ें इकट्ठा करने की वजह से
Recording
ऑब्जेक्ट को रोकने पर,VideoRecordEvent.Finalize
अब गड़बड़ी कोडERROR_RECORDING_GARBAGE_COLLECTED
के साथ पूरा होगा. (Iba974)
गड़बड़ियां ठीक की गईं
StreamConfigurationMapCompat
में कैश मेमोरी में सेव किए गए आउटपुट के साइज़ शून्य होने पर,NullPointerException
को ठीक किया गया. (Idf124, b/282025204)- एक्सटेंशन में झलक को रोकने से जुड़ी समस्या को ठीक किया गया (Ia903e)
Preview.setSurfaceProvider(null)
VideoCapture
बाउंड होने पर, कैमरा खोलने के दौरानConcurrentModificationException
मिलने की समस्या को ठीक किया गया है. (Ic8ac4)
वर्शन 1.3.0-alpha06
19 अप्रैल, 2023
androidx.camera:camera-*:1.3.0-alpha06
रिलीज़ हो गया है. 1.3.0-alpha06 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
- एक साथ कई कैमरे से स्ट्रीम करने की सुविधा, Android 11 में जोड़ी गई एक नई सुविधा है. इसकी मदद से, एक ही समय पर कैमरा डिवाइसों से स्ट्रीम की जा सकती है. उदाहरण के लिए, इससे किसी डिवाइस के सामने और पीछे के कैमरे, दोनों एक साथ काम कर सकते हैं. फ़िलहाल, CameraX सिर्फ़ ड्यूअल एक साथ काम करने वाले कैमरों के साथ काम करता है. इससे एक समय में दो कैमरे इस्तेमाल किए जा सकते हैं. हर कैमरे में ज़्यादा से ज़्यादा दो {@linkUseCase}s होते हैं. वीडियो का ज़्यादा से ज़्यादा रिज़ॉल्यूशन 720 या 1440 पिक्सल हो सकता है. ज़्यादा जानकारी के लिए यहां दिया गया लिंक देखें: 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
को Closable से एक्सटेंड़ करें और 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 4a, Pixel 5, और Pixel 6a पर चलाया जा सकता है. (I14340, b/223488673)
वर्शन 1.3.0-alpha04
22 फ़रवरी, 2023
androidx.camera:camera-*:1.3.0-alpha04
रिलीज़ हो गया है. 1.3.0-alpha04 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
एक स्ट्रीम को कई इस्तेमाल के उदाहरणों के साथ शेयर करके, पहले काम न करने वाले 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
क्लास हटाएं. इनका इस्तेमाल, वीडियो कैप्चर करने वाले नए 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
परSurfaceView
की ब्लैक स्क्रीन लागू करने से जुड़ीPreviewView
समस्या ठीक करें. इस समस्या को ठीक करने के लिए,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 पर फ़्रंट कैमरों के AF क्षेत्र को हॉरिज़ॉन्टल रूप से फ़्लिप करने का वर्कअराउंड बंद कर दिया गया है
वर्शन 1.2.0-rc01
24 अक्टूबर, 2022
androidx.camera:camera-*:1.2.0-rc01
रिलीज़ हो गया है. 1.2.0-rc01 वर्शन में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
OutputConfiguration
के लिएsetStreamUseCase
एपीआई जोड़ें. उपयोगकर्ता, स्ट्रीम सेशन के लिए स्ट्रीम के इस्तेमाल का उदाहरण बता सकता है. इसके लिए, वह CameraX के इंटरनल लॉजिक को बदलकर, स्ट्रीम के इस्तेमाल का उदाहरण चुन सकता है, ताकि अपनी ज़रूरत के हिसाब से उसे ऑप्टिमाइज़ किया जा सके. (Ib1a95)
गड़बड़ियां ठीक की गईं
- Samsung J7 Prime (SM-G610M) और J7 (SM-J710MN)
Preview/VideoCapture
के लिए, एपीआई लेवल 27 वाले डिवाइसों पर स्ट्रेच की समस्या को ठीक किया गया. रिज़ॉल्यूशन 1920x1080 की वजह से,Preview/VideoCapture
इमेज में खिंचाव होता है. इमेज के स्ट्रेच होने की समस्या से बचने के लिए, झलक याVideoCapture
के लिए 1920x1080 रिज़ॉल्यूशन न चुनने का तरीका जोड़ा गया है. (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
टेकपिक्चर की सुविधा को ठीक करने से, शिकायत किए गए डिवाइसों की टॉर्च बंद हो जाती है. (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) की एक साथ काम नहीं करने वाली सुविधा रुके होने की समस्या ठीक करना
Camera-Camera2, Camera-Core, Camera-Lifecycle, और Camera-Video का वर्शन 1.1.0
वर्शन 1.1.0
29 जून, 2022
androidx.camera:camera-*:1.1.0
रिलीज़ हो गया है. वर्शन 1.1.0 में ये कमियां शामिल हैं.
1.0.0 के बाद के अहम बदलाव
- लैंडेड व्यू, एक्सटेंशन, और वीडियो कैप्चर लाइब्रेरी का पहला आरसी वर्शन. 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
एपीआई को एक्सपोज़ किया गया. - नया एपीआई
ImageCapture.Builder#setJpegQuality
जोड़ा गया, ताकि तस्वीरें लेते समय आउटपुट JPEG इमेज कंप्रेशन की क्वालिटी बदलने की अनुमति मिल सके. 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
एपीआई- एक्सपोज़र कंपंसेशन के लिए एक्सपेरिमेंट के तौर पर उपलब्ध एपीआई.
- camera-core, camera-lifecycle, और camera-video के लिए, एक्सपेरिमेंट के तौर पर उपलब्ध
UseCaseGroup
API का प्रमोशन किया. व्यूपोर्ट को पसंद के मुताबिक बनाने के लिए,ViewPort#getLayoutDirection
,ViewPort.Builder#setLayoutDirection
, औरViewPort.Builder#setScaleType
जोड़े गए. ExperimentalUseCaseGroupLifecycle
को आधिकारिक सार्वजनिक एपीआई के तौर पर प्रमोट किया.- मौजूदा एपीआई में होने वाले बदलाव
Renamed MediaStoreOutputOptions.getCollection
सेMediaStoreOutputOptions.getCollectionUri
.- ज़्यादा शब्दों में जानकारी देने की सुविधा को कम करने के लिए,
ActiveRecording
का नाम बदलकर "रिकॉर्डिंग" कर दिया गया है. QualitySelector
क्रिएटर एपीआई को सूची पर आधारित एपीआई में बदल दिया गया
गड़बड़ियां ठीक की गईं
- एक्सटेंशन मोड चालू होने और
ImageCapture#CAPTURE_MODE_MAX_QUALITY
मोड सेट होने पर,YuvToJpegProcessor
EOFException
से जुड़ी समस्या को ठीक किया गया. - वीडियो रिकॉर्डिंग बंद होने की वजह से, कोडेक का कॉन्फ़िगरेशन सेट नहीं हो सका
- एफ़एचडी में रिकॉर्ड करते समय, बढ़ाई गई झलक/वीडियो के आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) में सुधार किया गया
- कुछ डिवाइसों पर, वीडियो रोकने और फिर से चलाने के बाद, ऑडियो/वीडियो के सिंक न होने की समस्या को ठीक किया गया
- उस समस्या को ठीक कर दिया गया है जहां फ़्लैश मोड के अपने-आप चालू होने या कम रोशनी में हमेशा चालू रहने पर, फ़ोकस करने के लिए टैप करने (
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 वर्शन में ये कमिट शामिल हैं.
नई सुविधाएं
- कैमरा-वीडियो, कैमरा-व्यू, और कैमरा-एक्सटेंशन के लिए, पहला आरसी वर्शन रिलीज़ करें
गड़बड़ियां ठीक की गईं
- उस समस्या को ठीक किया गया है जिसकी वजह से
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 डिवाइसों के Pre-API 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()
का इस्तेमाल करते समय, एएफ़ क्षेत्र के गलत होने की समस्या को ठीक किया गया (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 इमेज के आउटपुट की कंप्रेस करने की क्वालिटी बदलने की अनुमति देने के लिए, नया एपीआई Image Capture.Builder#setJpeg Quality जोड़ा गया. (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 वर्शन में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- प्रायोगिकUseCaseGroup एनोटेशन अब हटा दिया गया है, क्योंकि एपीआई अब प्रयोग के तौर पर नहीं हैं. (I01ef5)
गड़बड़ियां ठीक की गईं
MAXIMIZE_QUALITY
मोड में ली गई फ़ोटो धुंधली होने की समस्या को ठीक करना. (I173a9, b/193823892)- Samsung Galaxy J5 में, अंधेरे में फ़्लैश चालू/ऑटो मोड में फ़ोटो लेने के बाद कैमरा फ़्रीज़ हो जाने की समस्या को ठीक किया गया (I3aab9)
- Image Capture के लिए जब क्रॉप ज़रूरी हो, तो सेट कैप्चर मोड के अनुसार तय 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)
एपीआई में हुए बदलाव
- प्रयोग के तौर पर इस्तेमाल किए जाने वाले ग्रुप फ़ील्ड लाइफ़साइकल की जानकारी को अब हटा दिया गया है, क्योंकि एपीआई अब प्रयोग के तौर पर नहीं हैं. (I17b85)
गड़बड़ियां ठीक की गईं
- Huawei P20 Lite में 'फ़िक्स्ड प्रीव्यू' स्क्रीन की रोशनी बहुत ज़्यादा है. यह समस्या तब ही आती है, जब ज़ूम इन की ज़्यादा वैल्यू के साथ, झलक के कुछ खास रिज़ॉल्यूशन का एक साथ इस्तेमाल किया जाता है. (Idefce, b/192129158)
- फ़्लैश मोड को FLASH_MODE_ON पर सेट करने के कुछ समय बाद फ़ोटो लेने पर, कुछ डिवाइसों पर फ़्लैश काम नहीं करने की समस्या को ठीक किया गया है. (Ieb49b)
- VideoCapture, ImageCapture, और Preview को बाउंड करने पर, फ़ोटो खींचते समय झलक देखने की सुविधा कुछ समय के लिए रुकने की समस्या को ठीक किया गया है. (I56197, b/193864120)
- इससे ImageAnalysis को 1080 पिक्सल से ज़्यादा का रिज़ॉल्यूशन चुनने की अनुमति मिलती है. ऊपर दिए गए डिवाइस का सीमित लेवल वाला विकल्प, ImageAnalysis के लिए RECORD साइज़ रिज़ॉल्यूशन के साथ काम करता है. ऐसा तब होता है, जब इसे Preview और Image Capture के साथ जोड़ा जाता है. ट्रेड-ऑफ़, Image Capture के लिए चुना गया रिज़ॉल्यूशन है. इसके लिए, यह RECORD साइज़ का रिज़ॉल्यूशन भी होना चाहिए. ImageAnalysis के लिए रिकॉर्ड का साइज़ और रिज़ॉल्यूशन चुनने के लिए, ImageCapture और ImageAnalysis, दोनों पर रिकॉर्ड का साइज़ और रिज़ॉल्यूशन सेट होना चाहिए. इससे पता चलता है कि ऐप्लिकेशन, ज़्यादा से ज़्यादा रिज़ॉल्यूशन वाली इमेज कैप्चर करने के बजाय, ImageAnalysis के लिए ज़्यादा रिज़ॉल्यूशन का इस्तेमाल करना चाहता है. 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)
- अगर सेव करने की जगह 'फ़ाइल' है, तो Imageकैप्चर में, सेव की गई इमेज का यूआरआई दिखाएं. (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 में एक API isFocusMeteringAllowed जोड़ा गया है. इसकी मदद से, ऐप्लिकेशन यह जांच कर सकते हैं कि दिया गया FocusMeteringAction मौजूदा कैमरे के साथ काम करता है या नहीं. (Ib45ae, b/188606490)
- प्रिव्यू, Imageकैप्चर, और ImageAnalysis के लिए, रिज़ॉल्यूशन की जानकारी देने के लिए एक्सपोज़्ड getरिज़ॉल्यूशनInfo API. (I2b613, b/188600718)
- एक्सपेरिमेंट के तौर पर उपलब्ध इन एपीआई को आधिकारिक एपीआई के तौर पर प्रमोट किया गया: CameraXConfig.Builder#setAvailableCamerasLimiter(), CameraXConfig.Builder#setMinimumLoggingLevel(), CameraXconfig.Builder#setSchedulerHandler(), CameraXConfig#getAvailableCamerasLimiter(), CameraXConfig#getMinimumLoggingLevel(), CameraXConfig#getCameraExecutor(), CameraXConfig#getSchedulerHandler(). (I2ade2)
- एक तरह के कैमरों का ऐक्सेस देने के लिए, CameraProvider इंटरफ़ेस दिखाया गया है. (I1a7b1)
- कैमरा-कोर, कैमरा-लाइफ़साइकल, और कैमरा-वीडियो के लिए, एक्सपेरिमेंट के तौर पर इस्तेमाल किए जा रहे UseCaseGroup API का प्रमोशन करें. व्यूपोर्ट को पसंद के मुताबिक बनाने के लिए
ViewPort#getLayoutDirection
,ViewPort.Builder#setLayoutDirection
, औरViewPort.Builder#setScaleType
को जोड़ा गया. (I7cee8)
वर्शन 1.1.0-alpha05
2 जून, 2021
androidx.camera:camera-camera2:1.1.0-alpha05
, androidx.camera:camera-core:1.1.0-alpha05
, और androidx.camera:camera-lifecycle:1.1.0-alpha05
रिलीज़ हो गए हैं. वर्शन 1.1.0-alpha05 में ये कमियां हैं.
एपीआई में हुए बदलाव
Camera2CameraFilter
क्लास हटाई गई. CameraFilter के हिसाब से कैमरा चुनने का सुझाव दें. साथ ही, ज़रूरत पड़ने पर Camera2CameraInfo की मदद से, CameraCharacteristics या Camera2 से जुड़ी अन्य जानकारी पाएं. (Ib887c)ExperimentalCameraFilter
एपीआई अब एक्सपेरिमेंट के तौर पर उपलब्ध नहीं हैं और ये औपचारिक एपीआई बन गए हैं. इनका इस्तेमाल, एनोटेट किए गए ऑप्ट-इन के बिना किया जा सकता है. (I4bc94)- कैमरे की स्थिति बताने वाला एपीआई जोड़ा गया है. इसे
CameraInfo#getCameraState()
के ज़रिए एक्सपोज़ किया जाता है. (Ia86b4) - एक्सपेरिमेंट के तौर पर एपीआई
CameraInfo#getCameraSelector()
जोड़ा गया, जो अपने कैमरे (I77f9f) के लिए यूनीक CameraSelector दिखाता है
गड़बड़ियां ठीक की गईं
- setZoomRatio और setLinearZoom में ListenableFuture की वजह से हुई समस्या को ठीक किया गया. यह समस्या, Android 11 वाले कुछ डिवाइसों (I716d7) पर आ रही थी
- कैमरे को स्विच करने की स्पीड बढ़ाना और कैमरा डिवाइस में गड़बड़ी होने की दर को कम करना (I34c99)
- ExperimentalUseCaseGroupLifecycle को ExperimentalUseCaseGroup से बदला गया. (I3b2ef, b/159033688)
वर्शन 1.1.0-alpha04
21 अप्रैल, 2021
androidx.camera:camera-camera2:1.1.0-alpha04
, androidx.camera:camera-core:1.1.0-alpha04
, और androidx.camera:camera-lifecycle:1.1.0-alpha04
रिलीज़ हो गए हैं. 1.1.0-alpha04 वर्शन में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- एक ही कलेक्शन को एक साथ कई थ्रेड ऐक्सेस करने की वजह से, मेमोरी लीक होने की समस्या को ठीक किया गया. मेमोरी लीक की वजह से, झलक वाले इंस्टेंस में ऐक्टिविटी या फ़्रैगमेंट सेव रह सकता है. (I7b4b8)
- एक्सपेरिमेंटल एपीआई में,
@Experimental
एनोटेशन को@RequiresOptIn
से बदला गया. एक्सपेरिमेंट के तौर पर उपलब्ध एपीआई को कॉल करने के लिए, बंद किए गएandroidx.annotation.experimental.UseExperimental
के बजायandroidx.annotation.OptIn
का इस्तेमाल करें. (Iff226) - Samsung Galaxy S7 पर, फ़्लैश चालू/ऑटो मोड में ImageCapture का इस्तेमाल करने पर, धुंधली इमेज मिलती हैं. (I30001)
- ऐसा CameraState एपीआई जोड़ा गया है जिसे 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)
कैमरा-कैमरा2, कैमरा-कोर, और कैमरा-लाइफ़साइकल वर्शन 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)
कैमरा-कैमरा2, कैमरा-कोर, और कैमरा-लाइफ़साइकल वर्शन 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)
कैमरा-कैमरा2, कैमरा-कोर, और कैमरा-लाइफ़साइकल वर्शन 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 Camera नेटवर्क की कई समस्याओं को ठीक किया जा सके
आम समस्याएं
- आम समस्याओं की सूची देखें
वर्शन 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 पर फ़्लैश चालू/ऑटो के साथ ठीक की इमेज कैप्चर करने की सुविधा. (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)
- तस्वीर लेने से पहले, सेव की गई इमेज की जगह की जानकारी की पुष्टि को हटाकर, Image Capture की परफ़ॉर्मेंस रिग्रेशन को ठीक किया गया. यह बदलाव करने के बाद, अगर सेव करने की जगह अमान्य है, तो फ़ोटो खींचने के बाद इमेज सेव करने में ज़्यादा समय लगेगा. ऐसा इसलिए होगा, क्योंकि फ़ोटो खींचने के बाद इमेज सेव करने की कोशिश की जाएगी. (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
CONTROL_ZOOM_RATIO
API के साथ काम करता है. यह API, Android 11 या इसके बाद के वर्शन वाले उन डिवाइसों पर ज़ूम करने के लिए इस्तेमाल किया जा सकता है जिनमें मान्यCONTROL_ZOOM_RATIO_RANGE
मौजूद है. (I62cc6)
गड़बड़ियां ठीक की गईं
- कैमरा आईडी के पूर्णांक न होने पर, NumberFormatException की समस्या को ठीक किया गया. (आईबी2228)
- 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 की समस्या को ठीक किया गया. (आईबी2228)
- इस्तेमाल के उदाहरण बनाने के लिए, CameraX को शुरू करने की ज़रूरत नहीं होती. लागू करने से जुड़े सभी कॉन्फ़िगरेशन, Camera इंस्टेंस से जुड़ने के बाद, UseCase पर सेट हो जाते हैं. सार्वजनिक एपीआई के लिए, यह
ProcessCameraProvider.bindToLifecycle()
होता है. (Ia5411) - अगर किसी Camera इंस्टेंस के साथ अटैच होने से पहले कॉल किया जाता है, तो
<UseCase>.getTargetRotation()
,Surface.ROTATION_0
दिखाएगा. ऐसा तब तक होगा, जब तक Builder या UseCase पर कोई targetRotation सेट नहीं किया गया हो. (I80fcd)
Camera-Core का वर्शन 1.0.0-beta10
23 सितंबर, 2020
androidx.camera:camera-core:1.0.0-beta10
रिलीज़ हो गया है. वर्शन 1.0.0-beta10 में ये कमिट हैं.
गड़बड़ियां ठीक की गईं
- इमेज कैप्चर करने के लिए, फ़ाइल सेव करने की जगह की पुष्टि करने में आने वाली गड़बड़ी को ठीक किया गया (I8c565, b/167697553)
Camera-Camera2 वर्शन 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)
- DisplayOrientedMeteringPointFactory, CameraSelector के बजाय CameraInfo के इंस्टेंस को लेता है, ताकि यह पता चल सके कि फ़ैक्ट्री किस कैमरे के लिए पॉइंट जनरेट करेगी. DisplayOrientedMeteringPointFactory का इस्तेमाल करने वाली सभी क्लास, CameraSelector के बजाय CameraInfo इंस्टेंस भी लेती हैं. (I400c1)
- अपने-आप रिज़ॉल्यूशन तय होने की सुविधा के आसपेक्ट रेशियो के साइज़ के ग्रुप बनाने से जुड़ी समस्या को ठीक किया गया. इस समस्या की वजह से, टारगेट रिज़ॉल्यूशन की सेटिंग 2016x1080 होने पर, 16:9 mod16 साइज़ (864x480) चुना जाता था. हालांकि, 1920x1080 16:9 साइज़ भी काम करता है. (I53167, b/159363774)
- CameraControl की उस समस्या को ठीक करना जहां यह रेस कंडीशन की वजह से काम नहीं कर पा रहा है (I2279f, b/152333890, b/160714166)
Camera-Core का वर्शन 1.0.0-beta08
19 अगस्त, 2020
androidx.camera:camera-core:1.0.0-beta08
रिलीज़ हो गया है. 1.0.0-beta08 वर्शन में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
DisplayOrientedMeteringPointFactory
,CameraSelector
के बजायCameraInfo
के उदाहरण को लेता है, ताकि यह सीधे तौर पर मैप किया जा सके कि फ़ैक्ट्री किस कैमरे के लिए पॉइंट जनरेट करेगी.DisplayOrientedMeteringPointFactory
का इस्तेमाल करने वाली सभी क्लास में,CameraSelector
के बजायCameraInfo
इंस्टेंस भी शामिल होता है. (I400c1)
गड़बड़ियां ठीक की गईं
- इमेज कैप्चर करने के लिए, कैमरे की दिशा के आधार पर मेटाडेटा में फ़्लिप हॉरिज़ॉन्टल फ़्लैग को ओवरराइट करें. (I28499)
- अब ऐसे कॉन्टेक्स्ट का इस्तेमाल करने पर, शुरू करने की प्रोसेस क्रैश नहीं होनी चाहिए जो
Context.getApplicationContext()
से कोई ऐप्लिकेशन ऑब्जेक्ट नहीं दिखाता. (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)
कैमरा-कोर वर्शन 1.0.0-beta07
22 जुलाई, 2020
androidx.camera:camera-core:1.0.0-beta07
रिलीज़ हो गया है. 1.0.0-beta07 वर्शन में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
FIT_CENTER
,FIT_START
, औरFIT_END
फ़िट स्टाइल कोFIT
के साथ मर्ज करें.FIT
का मतलब है कि काटा गया रीक्ट, सेंसर का ज़्यादा से ज़्यादा रीक्ट होगा. (Ia73c3)- प्रीव्यू के काटे गए हिस्से को व्यूपोर्ट के हिसाब से कॉन्फ़िगर किया जाता है. आखिरी उपयोगकर्ताओं को सिर्फ़ काटा गया हिस्सा दिखना चाहिए. (I142a4)
गड़बड़ियां ठीक की गईं
- Android 5.0 वाले लेगसी डिवाइस पर, झलक को स्ट्रेच होने से जुड़ी समस्या को ठीक किया गया. (I0c03a)
- इस्तेमाल के उदाहरणों को अनबाइंड करते समय,
ConcurrentModificationException
अपवाद से जुड़ी समस्या को ठीक किया गया. (I371c0)
Camera-Camera2 वर्शन 1.0.0-beta06
24 जून, 2020
androidx.camera:camera-camera2:1.0.0-beta06
रिलीज़ हो गया है. 1.0.0-beta06 वर्शन में ये बदलाव शामिल हैं.
एपीआई में बदलाव
- कैमरे के आईडी और CameraCharacteristics के हिसाब से कैमरों को फ़िल्टर करने के लिए, एक्सपेरिमेंट के तौर पर इंटरफ़ेस जोड़े गए हैं. (I28f61)
गड़बड़ियां ठीक की गईं
- 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 में ये तय किए गए हैं.
एपीआई में बदलाव
- कैमरे के आईडी और CameraCharacteristics के हिसाब से कैमरों को फ़िल्टर करने के लिए, एक्सपेरिमेंट के तौर पर इंटरफ़ेस जोड़े गए हैं. (I28f61)
गड़बड़ियां ठीक की गईं
- अब CameraX को
ProcessCameraProvider#configureInstance()
के साथ कॉन्फ़िगर किया जा सकता है. इसके बाद,ProcessCameraProvider#getInstance()
को कॉल किया जा सकेगा. इससे, ऐप्लिकेशन की ऐप्लिकेशन क्लास में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)
Camera-Core वर्शन 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)
गड़बड़ियां ठीक की गईं
ImageAnalysis
में क्रैश को ठीक किया गया है, जहांImageReaderProxy
के बंद होने के बादImageProxy
को ऐक्सेस किया जाता है. इससे यह भी पक्का हो जाता है कि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
से जुड़ी समस्या को ठीक किया गया. इसमें, setAnalyzer/clearAnalyzer को कई बार कॉल करने की वजह से, विश्लेषक को विश्लेषण करने के लिए इमेज नहीं मिल रही थीं. (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) IllegalArgumentException
की समस्या को ठीक किया गया है. यह समस्या उन डिवाइसों पर आ रही थी जिनका डिसप्ले साइज़ 640x480 से छोटा है. (Ife3f2, b/150506192)bindToLifecycle
को ठीक किया गया, ताकि यह UseCase में सिर्फ़ तब बदलाव करे, जब वह सही तरीके से बाइंड हो जाए. पहले, रिज़ॉल्यूशन की गणना करने के लिएbindToLifecycle
को कॉल करते समय, UseCase अपडेट हो जाता था. अब कैलकुलेशन करने के लिए, UseCase को अपडेट करने की ज़रूरत नहीं है (I78d9e)
Camera-Core का वर्शन 1.0.0-beta02
1 अप्रैल, 2020
androidx.camera:camera-core:1.0.0-beta02
रिलीज़ हो गया है. 1.0.0-beta02 वर्शन में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
ImageCapture
से जनरेट हुएImageProxy
में मौजूदImageInfo.getRotationDegrees()
को ठीक किया गया, ताकि यह EXIF ओरिएंटेशन रोटेशन वैल्यू से मेल खा सके. (Id4281, b/150802561)bindToLifecycle
को ठीक किया गया, ताकि यह UseCase में सिर्फ़ तब बदलाव करे, जब वह सफलतापूर्वक बाइंड हो सके. पहले, रिज़ॉल्यूशन का हिसाब लगाने के लिएbindToLifecycle
को कॉल करने पर, UseCase अपडेट हो जाता था. अब हिसाब लगाने के लिए, इसे UseCase को अपडेट करने की ज़रूरत नहीं है (I78d9e)Preview.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)
कैमरा-कोर वर्शन 1.0.0-beta01
26 फ़रवरी, 2020
androidx.camera:camera-core:1.0.0-beta01
रिलीज़ हो गया है. 1.0.0-beta01 वर्शन में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
SurfaceRequest.provideSurface()
पर मौजूदListenableFuture
कोExecutor
औरCallback
से बदला गया. यह एपीआई को आसान बनाता है. इसके लिए, अबprovideSurface()
पर अपवादों को हैंडल करने की ज़रूरत नहीं पड़ती. साथ ही, यह लागू हो जाता है किprovideSurface()
कॉलबैक को रद्द नहीं किया जा सकता. ऐसा इसलिए किया गया है, ताकि पुराने डिवाइसों पर क्रैश न हो. ऐसा, डिवाइसों पर पहले से मौजूद प्लैटफ़ॉर्म के लिए, नए प्लैटफ़ॉर्म को रिलीज़ करने की वजह से होता है.SurfaceRequest.Result
ऑब्जेक्ट का इस्तेमाल अब इस बात को ट्रैक करने के लिए किया जाता है किSurfaceRequest
, दिए गएSurface
का इस्तेमाल कैसे करता है. (I7854b)SurfaceRequest.setSurface(Surface)
का नाम बदलकरSurfaceRequest.provideSurface(Surface)
औरSurfaceRequest.setWillNotComplete()
का नाम बदलकरSurfaceRequest.willNotProvideSurface()
किया गया. (I224fe)
गड़बड़ियां ठीक की गईं
ImageCapture.setTargetRotation()
का इस्तेमाल करके, टारगेट रोटेशन की वैल्यू बदलने के बाद, सेव की गई इमेज के आसपेक्ट रेशियो या चौड़ाई-ऊंचाई के अनुपात में गड़बड़ी होने की समस्या को ठीक किया गया. (I474ea, b/148763432)- ProGuard की सुविधा चालू होने पर, ऐप्लिकेशन के वैरिएंट को शुरू करने से जुड़ी समस्या को ठीक किया गया. इसके लिए, डिफ़ॉल्ट
CameraXConfig
प्रोवाइडर को सेट करने वाले फ़्लैग को बनाए रखा गया. (I2d6c1) - फ़्लैश मोड एपीआई के लिए दस्तावेज़ अपडेट किए गए, ताकि संभावित वैल्यू शामिल की जा सकें. (I4a3ec)
Camera-Camera2 वर्शन 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 फ़्लैग के बारे में फ़ोकस और मेज़रिंग एपीआई के लिए Javadoc में सुधार किए गए हैं. साथ ही,Display
पैरामीटर के इस्तेमाल में भी सुधार किए गए हैं.setZoomRatio
औरsetLinearZoom
के लिए, रेफ़रंस दस्तावेज़ को बड़ा किया गया.
गड़बड़ियां ठीक की गईं
- कैमरे बंद करने और फिर से खोलने पर होने वाली समस्याओं को ठीक किया गया है. इन समस्याओं की वजह से, "शर्त" की जांच पूरी नहीं हो पाती थी.
- टॉर्च और ज़ूम एपीआई का इस्तेमाल करने पर हो सकने वाले
ConcurrentModificationException
को ठीक किया गया. - अब जब mod16 डाइमेंशन साइज़ उपलब्ध होगा, तो अनुरोध किए गए रिज़ॉल्यूशन के आस-पास के रिज़ॉल्यूशन चुने जा सकेंगे.
startFocusMetering
औरcancelFocusMetering
एपीआई अब सही समय के साथ दस्तावेज़ की तरह काम करते हैं. साथ ही, उनके होने पर वे गड़बड़ी हो सकती हैं.- किसी ऐसे डिवाइस पर, काटे गए हिस्से के आसपेक्ट रेशियो के साथ किसी खास टारगेट रिज़ॉल्यूशन का अनुरोध करने पर होने वाली समस्या को ठीक किया गया है जो ऐसे साइज़ के साथ काम नहीं करता. अब, ओरिजनल अनुरोध के हिसाब से रिज़ॉल्यूशन वाला, काटा गया साइज़ उपलब्ध होने पर चुना जाएगा.
Camera-Camera2 वर्शन 1.0.0-alpha08
18 दिसंबर, 2019
androidx.camera:camera-camera2:1.0.0-alpha08
रिलीज़ हो गया है. 1.0.0-alpha08 वर्शन में ये कमिट शामिल हैं.
आम समस्याएं
- Camera2 इंटरऑपरेबिलिटी का इस्तेमाल करने पर, Camera2 के कैप्चर करने के अनुरोध के सभी विकल्प काम नहीं करते. अगर अनुरोध किया गया विकल्प काम नहीं करता है, तो सेशन शुरू नहीं हो पाता और इस तरह की गड़बड़ी हो सकती है:
09-09 14:04:13.643 10117 26020 26036 E AndroidRuntime: java.lang.IllegalArgumentException: Unsupported session configuration combination
गड़बड़ियां ठीक की गईं
- एपीआई लेवल 21 और 22 के लिए, कैमरे को घुमाने या स्विच करने के बाद, झलक के तौर पर ब्लैक स्क्रीन दिखने की समस्या को ठीक किया गया.
एपीआई में हुए बदलाव
- प्रयोग के तौर पर: कैमरा आईडी निकालने के लिए, camera2 इंटरऑपरेबल पाथ जोड़ा गया.
कैमरा-कोर वर्शन 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
लागू किया गया.
एपीआई में हुए बदलाव
- IntDef को छिपा दिया गया है और 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 पर आधारित लागू करने की सुविधा को शुरू करने और कॉन्फ़िगर करने के साथ इस्तेमाल करने के लिए उपलब्ध है. रिलीज़ की जानकारी के कैमरा-कोर सेक्शन में, इस सुविधा को शुरू करने के तरीके के बारे में ज़्यादा जानकारी दी गई है.- 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)
इस्तेमाल के उदाहरण वाली “कॉन्फ़िगरेशन” वाली क्लास हटा दी गई हैं. इसके बजाय, सीधे तौर पर इस्तेमाल के उदाहरण बनाएं. इसके लिए, हर इस्तेमाल के उदाहरण बिल्डर पर विकल्प सेट करें. उदाहरण के लिए:
preview = Preview.Builder().setTargetAspectRatio(AspectRatio.RATIO_16_9).build()
झलक के इस्तेमाल के उदाहरण को अपडेट कर दिया गया है, ताकि ऐप्लिकेशन के बनाए और मैनेज किए जाने वाले प्लैटफ़ॉर्म को स्वीकार किया जा सके. इससे यह पक्का किया जा सकेगा कि Android के सबसे सही तरीके इस्तेमाल किए जा रहे हैं. हमारा सुझाव है कि आप camera-view पैकेज में दी गई
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
फ़ील्ड को ऐक्सेसर पाएं/सेट करें/है से बदल दिया जाता है.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()
को जोड़ा गया. इससे इस्तेमाल के उदाहरण के आउटपुट के लिए, आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) की जानकारी मिलती है. - ImageCapture के लिए,
setTargetAspectRatio(Rational aspectRatio)
कोsetTargetAspectRatioCustom(Rational aspectRatio)
में बदल दिया गया है. सेट होने पर, ImageCapture आउटपुट को उसी हिसाब से काटता है.
एक्ज़िकेटर एपीआई
- नीचे दिए गए फ़ंक्शन, एक एक्सेक्यूटर पैरामीटर स्वीकार करते हैं. इससे ऐप्लिकेशन को यह कंट्रोल करने में मदद मिलती है कि फ़ंक्शन किस एक्सेक्यूटर पर चलेगा.
Preview.setOnPreviewOutputUpdateListener()
एपीआई. अगर उस फ़ंक्शन के लिए एक्ज़ीक्यूटर मौजूद नहीं है, तो वह मुख्य थ्रेड पर काम करता है.Preview.setOnPreviewOutputUpdateListener
FocusMeteringAction.Builder.setAutoFocusCallback
ImageAnalysis.setAnalyzer
ImageCapture.takePicture
CameraView.takePicture
CameraView.startRecording
VideoCapture.startRecording
CameraInfo को checkFlashAvailable और SensorRotation APIs के साथ जोड़ा गया
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()
का इस्तेमाल करें. उदाहरण के लिए, कम से कम (कैलकुलेट करना) सेव करने के लिए या ज़्यादा से ज़्यादा रिज़ॉल्यूशन (प्रोसेसिंग की जानकारी के लिए) की ज़रूरत हो.
- आम तौर पर, ऐप्लिकेशन के यूज़र इंटरफ़ेस (यूआई) डिज़ाइन के आधार पर,
- एक्ज़िक्यूटर एपीआई: इस्तेमाल के उदाहरण के कॉन्फ़िगरेशन वाले एपीआई से,
setCallbackHandler()
कॉल को हटाया गया. इसके बजाय, ऐप्लिकेशन किसी ऐसे दूसरे एपीआई में एक पैरामीटर के तौर पर एक्ज़ीक्यूटर को सेट कर सकते हैं जो कॉलबैक सेट करता है. - अलग-अलग फ़ंक्शन के लिए, शून्य एनोटेशन अपडेट किए गए.
- कैमरा खोलने पर
java.lang.IllegalStateException at Camera$StateCallback.onError
मिलने की समस्या को ठीक किया गया है. - एक समस्या को ठीक किया गया है. इस समस्या की वजह से, जब ऐप्लिकेशन बड़े या डिफ़ॉल्ट रिज़ॉल्यूशन का अनुरोध करता था, तो बहुत छोटे (640x480 से कम) रिज़ॉल्यूशन चुने जाते थे. इस वजह से, झलक वाली इमेज ब्लॉकी या धुंधली दिखती थी. जिन ऐप्लिकेशन को खास तौर पर छोटे रिज़ॉल्यूशन की ज़रूरत होती है वे साफ़ तौर पर उनका अनुरोध कर सकते हैं.
- किसी दूसरे कैमरा ऐप्लिकेशन को लॉन्च करने वाले इंटेंट से वापस आने के बाद, कैमरे की स्क्रीन का काली हो जाने (कैमरा चालू न हो पाने) की समस्या को ठीक किया गया है.
- ऐप्लिकेशन के बार-बार चालू या बंद होने पर आने वाली गड़बड़ी को ठीक किया गया है;
java.lang.IllegalArgumentException: CaptureRequest contains unconfigured Input/Output Surface!
- ImageAnalysis को बंद करने पर होने वाली इस गड़बड़ी को ठीक किया गया है:
java.lang.IllegalStateException: maxImages (4) has already been acquired, call #close before acquiring more.
- कैमरे को डिसकनेक्ट करने के फ़्लो के लिए, अतिरिक्त टेस्ट जोड़े गए हैं.
- कैमरे की जांच एक के बाद एक करते समय, जांच करने वाले सिस्टम को बेहतर बनाया गया.
Camera-Camera2 और Camera-Core का वर्शन 1.0.0-alpha05
5 सितंबर, 2019
androidx.camera:camera-camera2:1.0.0-alpha05
और androidx.camera:camera-core:1.0.0-alpha05
रिलीज़ हो गए हैं. ये camera-camera2:1.0.0-alpha05 में शामिल कमिट हैं और ये camera-core:1.0.0-alpha05 में शामिल कमिट हैं.
एपीआई में बदलाव: गड़बड़ी वाले वैरिएबल के इस्तेमाल का नाम बदला गया:
ImageCapture.UseCaseError
का नाम बदलकरImageCapture.ImageCaptureError
कर दिया गया हैVideoCapture.UseCaseError
का नाम बदलकरVideoCapture.VideoCaptureError
कर दिया गया है
टैप-टू-फ़ोकस एपीआई के साथ
CameraControl
एपीआई जोड़ा गयाकैमरे के लिए CameraX से
CameraControl
पाने के लिए एपीआई जोड़ा गया, जिसे लेंस की स्क्रीन की मदद से चुना जाता है:CameraX.getCameraControl(LensFacing lensFacing)
टैप-टू-फ़ोकस की सुविधा चालू करने के लिए,
MeteringPointFactory
,MeteringPoint
,MeteringMode
, औरFocusMeteringAction
जोड़े गए:MeteringPointFactory factory = new SensorOrientedMeteringPointFactory(width, height); MeteringPoint point = factory.createPoint(x, y); FocusMeteringAction action = FocusMeteringAction.Builder.from(point, MeteringMode.AF_ONLY) .addPoint(point2, MeteringMode.AE_ONLY) // could have many .setAutoFocusCallback(new OnAutoFocusListener(){ public void onFocusCompleted(boolean isSuccess) { } }) // auto calling cancelFocusAndMetering in 5 sec. .setAutoCancelDuration(5, TimeUnit.Second) .build();
फ़ोकस मेज़रमेंट शुरू करने और उसे रद्द करने के लिए,
CameraControl
के लिए एपीआई जोड़ा गया:getCameraControl(lensFacing).startFocusAndMetering(action);
getCameraControl(lensFacing).cancelFocusAndMetering();
मेज़रिंग पॉइंट फ़ैक्ट्री के लिए एपीआई जोड़े गए हैं. ये व्यू क्लास के आधार पर, टैप के निर्देशांक को सेंसर के निर्देशांक में बदलने में मदद करते हैं:
MeteringPointFactory factory = new TextureViewMeteringPointFactory(textureView);
MeteringPointFactory factory = new DisplayOrientedMeteringPointFactory(context, lensFacing, viewWidth, viewHeight);
मुख्य (यूआई) थ्रेड पर इन तरीकों को कॉल करने के लिए ज़रूरी करें. ऐसा न करने पर,
IllegalStateException
को दिखाएं. आने वाले समय में जो वर्शन काम करेंगे उन्हें अन्य थ्रेड पर भी इस्तेमाल किया जा सकेगा और उन्हें क्रम से लगाया जा सकेगा.CameraX.bindToLifecycle()
CameraX.unbind()
CameraX.unbindAll()
ImageAnalysis.setAnalyzer()
ImageAnalysis.getAnalyzer()
ImageAnalysis.removeAnalyzer()
Preview.removePreviewOutputListener()
Preview.getOnPreviewOutputUpdateListener()
Preview.setOnPreviewOutputUpdateListener()
अलग-अलग कॉन्फ़िगरेशन सेटिंग अब शून्य पैरामीटर स्वीकार करती हैं और उनसे जुड़े गेट्टर शून्य दिखा सकते हैं.
AF/AE/AWB सेटिंग का समर्थन न करने वाले एम्युलेटर पर परीक्षण करते समय आने वाली समस्या ठीक की गई.
इमेज का विश्लेषण करते समय, उसे घुमाने पर क्रैश होने की समस्या को ठीक किया गया.
एक गड़बड़ी को ठीक किया गया है. इसमें, वीडियो रिकॉर्डिंग शुरू करने पर, फ़ोन के रोटेट होने या सामने और पीछे के कैमरे के बीच स्विच करने के बाद, फ़्रेम ब्लैक दिखता था.
एक साथ कई इमेज का विश्लेषण करने के कई उदाहरणों के लिए, टेस्टिंग की सुविधा हटा दी गई है. साथ काम करने की सुविधा देने के लिए, ऐप्लिकेशन में सिर्फ़ इमेज के विश्लेषण का एक इस्तेमाल का उदाहरण अटैच करना चाहिए.
कैमरा टेस्टिंग सुइट में, नकली कैमरे के लिए शुरुआती रोबोलेक्ट्रिक टेस्ट जोड़े गए हैं. हालांकि, इस पर अभी काम जारी है.
Camera2Inititalizer टेस्ट को हटा दिया गया है, क्योंकि इसकी कवरेज साफ़ तौर पर नहीं दी गई थी या यह गुमराह करने वाली थी.
Camera-Camera2 और Camera-Core वर्शन 1.0.0-alpha04
7 अगस्त, 2019
androidx.camera:camera-camera2:1.0.0-alpha04
और androidx.camera:camera-core:1.0.0-alpha04
रिलीज़ हो गए हैं. 1.0.0-alpha04 वर्शन में ये बदलाव शामिल हैं.
नई सुविधाएं
आस्पेक्ट रेशियो और रिज़ॉल्यूशन चुनने के विकल्प में बदलाव
CameraX का लक्ष्य, कैमरा सेशन को शुरू करना है. इसका मतलब है कि कैमरा सेशन शुरू करने के अपने पहले लक्ष्य के लिए, CameraX डिवाइस की क्षमता के आधार पर रिज़ॉल्यूशन/अस्पेक्ट रेशियो में बदलाव करता है. इसलिए, हो सकता है कि आपके अनुरोधों को पूरा न किया जा सके. ऐसा इन वजहों से हो सकता है:
- ऐसे डिवाइस जिन पर अनुरोध किया गया रिज़ॉल्यूशन काम नहीं करता
- साथ काम करने से जुड़ी समस्याएं. जैसे, लेगसी डिवाइसों पर, सही तरीके से काम करने के लिए कुछ रिज़ॉल्यूशन का इस्तेमाल करना ज़रूरी है
- कुछ डिवाइसों पर, कुछ फ़ॉर्मैट सिर्फ़ कुछ आसपेक्ट रेशियो में उपलब्ध होते हैं
- JPEG या वीडियो एन्कोडिंग के लिए, “nearest mod16” को प्राथमिकता दी जाती है.
CameraCharacteristics#SCALER_STREAM_CONFIGURATION_MAP
देखें
CameraX सेशन बनाता और मैनेज करता है. हालांकि, आपको अपने कोड में इस्तेमाल के उदाहरण के आउटपुट पर, रिटर्न की गई इमेज के साइज़ की हमेशा जांच करनी चाहिए और उसके हिसाब से बदलाव करना चाहिए.
रिज़ॉल्यूशन और आसपेक्ट रेशियो सेट करने के लिए कुछ बदलाव किए गए हैं. इन बदलावों का मकसद, एपीआई को ज़्यादा बेहतर बनाना है:
- अब झलक के इस्तेमाल के उदाहरण को डिफ़ॉल्ट 4:3 आसपेक्ट रेशियो वाला माना जाता है. ऐसा तब होता है, जब कोई भी आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) सेट नहीं होता.
- जब CameraX, डिवाइस की क्षमता के आधार पर अनुरोध किए गए रिज़ॉल्यूशन और आसपेक्ट रेशियो में बदलाव करता है, तो वह पहले उसी आसपेक्ट रेशियो को बनाए रखने की कोशिश करता है जो
setTargetAspectRatio
याsetTargetResolution
कॉल में तय किया गया था - रिज़ॉल्यूशन के “Nearest mod16” वर्शन को एक ही आसपेक्ट रेशियो माना जाता है.
ImageAnalysis का नॉन-ब्लॉकिंग मोड
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 में ये कमियां हैं.
गड़बड़ियां ठीक की गईं
- एम्युलेटर का इस्तेमाल करने के दौरान, div को शून्य से जुड़ी समस्या ठीक की गई
- कुछ डिवाइसों पर, इस्तेमाल के उदाहरणों को तेज़ी से अनबाइंड और फिर से बांधते समय फ़ोटो लेने पर, NullPointerException/Surface Abandoned गड़बड़ी को ठीक किया गया.
- कैप्चर के अनुरोध से जुड़े अपडेट, सभी प्लैटफ़ॉर्म पर एक जैसा असर डालें, यह पक्का करने के लिए इंटरनल समस्या को ठीक किया गया
- ऐप्लिकेशन के नए इंस्टेंस में, इस्तेमाल के उदाहरणों को फिर से शुरू करने पर, ऐप्लिकेशन के क्रैश या हैंग होने से बचाने के लिए किए गए सुधार
- एपीआई में एक्सेक्यूटर की सुविधा के लिए, इंटरनल आर्किटेक्चर में बदलाव
- CameraX क्लास और लाइफ़साइकल मैनेजमेंट के बारे में Javadoc में दी गई अतिरिक्त जानकारी
- Antelope परफ़ॉर्मेंस टेस्ट ऐप्लिकेशन के लिए, इंस्ट्रुमेंट की गई टेस्टिंग जोड़ी गई
- ऐप्लिकेशन के Proguard कॉन्फ़िगरेशन में, '-keepattributes Signature' की ज़रूरत को हटाना
Camera-Camera2 और Camera-Core 1.0.0-alpha01
7 मई, 2019
androidx.camera:camera-core:1.0.0-alpha01
और
androidx.camera:camera-camera2:1.0.0-alpha01
रिलीज़ हो गए हैं. 1.0.0-alpha01 वर्शन में ये बदलाव शामिल हैं.
Camera-Lifecycle वर्शन 1.0.0-beta11
14 अक्टूबर, 2020
androidx.camera:camera-lifecycle:1.0.0-beta11
रिलीज़ हो गया है. 1.0.0-beta11 वर्शन में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- अगर किसी Camera इंस्टेंस के साथ अटैच होने से पहले कॉल किया जाता है, तो
<UseCase>.getTargetRotation()
,Surface.ROTATION_0
दिखाएगा. ऐसा तब तक होगा, जब तक Builder या UseCase पर कोई targetRotation सेट नहीं किया गया हो. (I80fcd)
Camera-lifecycle वर्शन 1.0.0-beta10
23 सितंबर, 2020
androidx.camera:camera-lifecycle:1.0.0-beta10
रिलीज़ हो गया है. 1.0.0-beta10 वर्शन में ये बदलाव शामिल हैं.
गड़बड़ियां ठीक की गईं
- Camera-Core 1.0.0-beta10 के साथ काम करने के लिए रिलीज़
Camera-Lifecycle वर्शन 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
रिलीज़ हो गया है. camera-lifecycle के 1.0.0-alpha01 वर्शन में ये कमिट शामिल हैं
एपीआई के बारे में अहम जानकारी
- camera-lifecycle आर्टफ़ैक्ट जोड़ा गया है, जो
LifeCycleCameraProvider
इंटरफ़ेस औरProcessCameraProvider
नाम का एक लागू करने वाला टूल उपलब्ध कराता है. यह टूल, कोर में पिछली CameraX क्लास के कई फ़ंक्शन उपलब्ध कराता है और इसेgetInstance()
तरीके से हासिल किया जाता है. - CameraX का इस्तेमाल करने के लिए, ऐप्लिकेशन में कैमरा-लाइफ़साइकल लाइब्रेरी शामिल होनी चाहिए.
ProcessCameraProvider
का इस्तेमाल करके, CameraX को शुरू करने का तरीका जानने के लिए, camera-core सेक्शन में दिए गए नोट देखें.
Camera-Extensions और Camera-View का वर्शन 1.0.0
वर्शन 1.0.0-alpha32
15 दिसंबर, 2021
androidx.camera:camera-extensions:1.0.0-alpha32
और androidx.camera:camera-view:1.0.0-alpha32
रिलीज़ हो गए हैं. 1.0.0-alpha32 वर्शन में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- इनर क्लास/इंटरफ़ेस से ग़ैर-ज़रूरी
@RequiresApi(21)
एनोटेशन हटाए गए. (I8e286, b/204917951) - कैमरा एक्सटेंशन आर्टफ़ैक्ट के लिए api फ़ाइलें अपडेट करें. (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)
गड़बड़ियां ठीक की गईं
- कुछ डिवाइसों पर, एक्सटेंशन मोड को तेज़ी से स्विच करने पर होने वाले क्रैश की समस्या को ठीक किया गया है. (Iebbef)
वर्शन 1.0.0-alpha30
13 अक्टूबर, 2021
androidx.camera:camera-extensions:1.0.0-alpha30
और androidx.camera:camera-view:1.0.0-alpha30
रिलीज़ हुई हैं. 1.0.0-alpha30 वर्शन में ये बदलाव शामिल हैं.
एपीआई में हुए बदलाव
- सभी CameraX क्लास में @RequiresApi(21) एनोटेशन जोड़ा गया है और AndroidManifest.xml से minSdkVersion को हटा दिया गया है. इससे, camera-core को उन ऐप्लिकेशन में आसानी से इंटिग्रेट किया जा सकेगा जिनका minSdkVersion 21 से कम है. हालांकि, वे एपीआई 21 और उसके बाद के वर्शन पर आधारित कोड पाथ का इस्तेमाल करना चाहते हैं. minSdkVersion 21 या उसके बाद के वर्शन वाले किसी भी ऐप्लिकेशन के लिए, इस बदलाव के लिए किसी कार्रवाई की ज़रूरत नहीं है. (Ie7f2e, b/200599470)
गड़बड़ियां ठीक की गईं
- AbstractMethodError की समस्या को ठीक किया गया है. यह समस्या, ProGuard चालू होने पर होती है. (Iae468, b/201177844)
वर्शन 1.0.0-alpha29
29 सितंबर, 2021
androidx.camera:camera-extensions:1.0.0-alpha29
और androidx.camera:camera-view:1.0.0-alpha29
रिलीज़ हो गए हैं. 1.0.0-alpha29 वर्शन में ये कमिट शामिल हैं.
एपीआई में हुए बदलाव
- ExperimentalUseCaseGroup एनोटेशन को हटा दिया गया है, क्योंकि एपीआई अब एक्सपेरिमेंट के तौर पर उपलब्ध नहीं हैं. (I01ef5)
RotationProvider#removeAllListeners()
हटाएं. इसके बजाय, कृपयाRotationProvider#removeListener(...)
का इस्तेमाल करें. (Id9d4a)- RotationReceiver क्लास को अपडेट किया गया: 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 में ये कमिट हैं.
एपीआई में हुए बदलाव
- प्रयोग के तौर पर इस्तेमाल किए जाने वाले ग्रुप फ़ील्ड लाइफ़साइकल की जानकारी को अब हटा दिया गया है, क्योंकि एपीआई अब प्रयोग के तौर पर नहीं हैं. (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 अपने-आप एक और Preview या Image Capture जोड़ देगा, ताकि एक्सटेंशन फ़ंक्शन सही तरीके से काम कर सकें. इसके बाद, इस इंटरफ़ेस से कोई गड़बड़ी रिपोर्ट नहीं की जाएगी. (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
से बदल दिया गया है. माइग्रेट करने का तरीका जानने के लिए, कृपया डेटा को दूसरी जगह भेजने से जुड़ी गाइड देखें.: (Id5005)
गड़बड़ियां ठीक की गईं
ExperimentalUseCaseGroupLifecycle
कोExperimentalUseCaseGroup
से बदला गया. (I3b2ef, b/159033688)
वर्शन 1.0.0-alpha24
21 अप्रैल, 2021
androidx.camera:camera-extensions:1.0.0-alpha24
और androidx.camera:camera-view:1.0.0-alpha24
रिलीज़ हो गए हैं. वर्शन 1.0.0-alpha24 में ये कमियां हैं.
गड़बड़ियां ठीक की गईं
- एक्सपेरिमेंट के तौर पर उपलब्ध एपीआई में, एनोटेशन
@Experimental
को@RequiresOptIn
से बदला गया. एक्सपेरिमेंट के तौर पर उपलब्ध एपीआई को कॉल करने के लिए, बंद किए गएandroidx.annotation.experimental.UseExperimental
के बजायandroidx.annotation.OptIn
का इस्तेमाल करें. (Iff226) - Samsung J5 Prime (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) देखें - setLineZoom() (I69971) में FlowRange की जानकारी जोड़ी गई
गड़बड़ियां ठीक की गईं
- 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 getter जोड़ें. (Ib8138, b/178251727)
गड़बड़ियां ठीक की गईं
- सिर्फ़ Preview या Image Capture के बाउंड होने पर, गड़बड़ियों की रिपोर्ट करने के लिए 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 शुरू करने औरbindToलाइफ़साइकल (I61dc5) की इंतज़ार के समय को बेहतर बनाया गया है
- अगर किसी कैमरा इंस्टेंस से अटैच होने से पहले
<UseCase>.getTargetRotation()
को कॉल किया जाता है, तो यहSurface.ROTATION_0
दिखाएगा. ऐसा तब तक होगा, जब तक कि बिल्डर या 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 के साथ काम करने के लिए रिलीज़
कैमरा-एक्सटेंशन वर्शन 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)
Camera-View वर्शन 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) में उपलब्ध है
Camera-Extensions का वर्शन 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)
कैमरा-व्यू वर्शन 1.0.0-alpha12
10 जून, 2020
androidx.camera:camera-view:1.0.0-alpha12
रिलीज़ हो गया है. 1.0.0-alpha12 वर्शन में ये कमिट शामिल हैं.
गड़बड़ियां ठीक की गईं
PreviewView#getBitmap()
API जोड़ें, जो झलक के प्लैटफ़ॉर्म पर दिखाए गए कॉन्टेंट का बिटमैप दिखा सकता है. (I9b500, b/157659818)
Camera-Extensions वर्शन 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 में Video Capture का डिफ़ॉल्ट आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) 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 वर्शन में ये कमिट शामिल हैं.
Camera-View वर्शन 1.0.0-alpha08
26 फ़रवरी, 2020
androidx.camera:camera-view:1.0.0-alpha08
रिलीज़ हो गया है. वर्शन 1.0.0-alpha08 में ये कमियां हैं.
गड़बड़ियां ठीक की गईं
SurfaceRequest.provideSurface()
पर मौजूदListenableFuture
कोExecutor
औरCallback
से बदला गया. इससे एपीआई को आसान बना दिया जाता है, क्योंकि अबprovideSurface()
पर अपवादों को मैनेज करने की ज़रूरत नहीं होती. साथ ही, यह भी लागू किया जाता है किprovideSurface()
कॉलबैक को रद्द नहीं किया जा सकता. ऐसा इसलिए किया जाता है, ताकि पुराने डिवाइसों को समय से पहले रिलीज़ करने की वजह से होने वाले क्रैश को रोका जा सके. अबSurfaceRequest.Result
ऑब्जेक्ट का इस्तेमाल यह ट्रैक करने के लिए किया जाता है किSurfaceRequest
दिए गएSurface
का इस्तेमाल कैसे करता है. (I7854b)SurfaceRequest.setSurface(Surface)
का नाम बदलकरSurfaceRequest.provideSurface(Surface)
औरSurfaceRequest.setWillNotComplete()
का नाम बदलकरSurfaceRequest.willNotProvideSurface()
किया गया. (I224fe)- ProGuard के साथ ऐप्लिकेशन के वैरिएंट को शुरू करने की प्रोसेस को ठीक किया गया. ऐसा, डिफ़ॉल्ट
CameraXConfig
प्रोवाइडर को सेट करने वाले फ़्लैग को सुरक्षित रखकर किया गया. (I2d6c1)
Camera-Extensions वर्शन 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 में हुए बदलावों के साथ काम करने के लिए, कई सुधार और अपडेट.
Camera-View वर्शन 1.0.0-alpha06
22 जनवरी, 2020
androidx.camera:camera-view:1.0.0-alpha06
रिलीज़ हो गया है. 1.0.0-alpha06 वर्शन में ये कमिट शामिल हैं.
अपडेट
- Camera कोर और Camera2 में किए गए बदलावों के साथ काम करने के लिए, कई सुधार और अपडेट किए गए हैं.
Camera-Extensions का वर्शन 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
रिलीज़ हो गया है. कैमरा एक्सटेंशन के 1.0.0-alpha04 वाले वर्शन में ये कमियां शामिल हैं
एपीआई में हुए बदलाव
किसी एक्सटेंशन की उपलब्धता और उसे चालू करने के लिए, अब इनपुट पैरामीटर के तौर पर
CameraSelector
का इस्तेमाल किया जाता है. यह वहीCameraSelector
होना चाहिए जिसका इस्तेमाल, इस्तेमाल के उदाहरण को बांधने के लिए किया जाता है.val cameraSelector = CameraSelector.DEFAULT_BACK_CAMERA val builder = ImageCapture.Builder() val bokehImageCaptureExtender = BokehImageCaptureExtender.create(builder) if (bokehImageCaptureExtender.isExtensionAvailable(cameraSelector)) { bokehImageCaptureExtender.enableExtension(cameraSelector) } val imageCapture = builder.build() mCameraProvider?.bindToLifecycle(this, cameraSelector, imageCapture)
एक्सटेंशन लाइब्रेरी का इस्तेमाल करने से पहले, आपको एक्सटेंशन शुरू करने होंगे.
val availability = ExtensionsManager.init() Futures.addCallback<ExtensionsManager.ExtensionsAvailability>( availability, object : FutureCallback<ExtensionsManager.ExtensionsAvailability> { override fun onSuccess(availability: ExtensionsManager.ExtensionsAvailability?) { // Ready to make extensions calls } override fun onFailure(throwable: Throwable) { // Extensions could not be initialized } }, Executors.newSingleThreadExecutor() )
Camera-View वर्शन 1.0.0-alpha04
4 दिसंबर, 2019
androidx.camera:camera-view:1.0.0-alpha04
रिलीज़ हो गया है. camera-view के 1.0.0-alpha04 वर्शन में ये कमिट शामिल हैं
एपीआई में हुए बदलाव
- किसी ऐप्लिकेशन में, झलक के इस्तेमाल के उदाहरण से मिलने वाले आउटपुट को आसानी से दिखाने के लिए,
PreviewView
क्लास उपलब्ध कराई गई है. PreviewView
को लेआउट में शामिल किया जा सकता है:<androidx.camera.view.PreviewView android:id="@+id/preview_view" … />
PreviewView
, प्रीव्यू के इस्तेमाल के उदाहरण को आसानी से कनेक्ट करने के लिएPreviewSurfaceProvider
देता हैpreview.setPreviewSurfaceProvider(previewView.previewSurfaceProvider)
एपीआई के नाम में “
ZoomLevel
” अब “ZoomRatio
” हो गया हैकुछ तरीकों के पैरामीटर में, वैल्यू न होने की स्थिति में क्या होगा, इसकी वैल्यू बदल गई है
कैमरा-एक्सटेंशन और कैमरा-व्यू वर्शन 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
में शामिल कमिट हैं.
नई सुविधाएं
- एक्सटेंशन के लिए Context initializer जोड़ा गया. एक्सटेंशन के वर्शन को बढ़ाकर 1.1.0 किया गया
Camera-Extensions और Camera-View का वर्शन 1.0.0-alpha02
5 सितंबर, 2019
androidx.camera:camera-extensions:1.0.0-alpha02
और
androidx.camera:camera-view:1.0.0-alpha02
रिलीज़ हो गए हैं. ये camera-extensions:1.0.0-alpha02 में शामिल कमिट हैं और ये camera-view:1.0.0-alpha02 में शामिल कमिट हैं.
PreviewImageProcessorImpl
ने टाइमस्टैंप सही तरीके से लागू किए हैं या नहीं, इसकी पुष्टि करने के लिए टेस्ट जोड़े गए हैं.- Nexus 5 (एपीआई लेवल 21) पर
ExtensionTest
टेस्ट में हुई गड़बड़ी को ठीक करें और पक्का करें कि झलक उपलब्ध हो.
Camera-Extensions और Camera-View का वर्शन 1.0.0-alpha01
7 अगस्त, 2019
androidx.camera:camera-extensions:1.0.0-alpha01
और
androidx.camera:camera-view:1.0.0-alpha01
रिलीज़ हो गए हैं.
ये कैमरा एक्सटेंशन में शामिल किए गए कमिट:1.0.0-alpha01 और ये कैमरा-व्यू:1.0.0-alpha01 में किए गए ये वादे हैं
- आने वाले समय में, इस्तेमाल किए जा सकने वाले डिवाइसों पर इफ़ेक्ट ऐक्सेस करने के लिए, कैमरा एक्सटेंशन की नई लाइब्रेरी. इस लाइब्रेरी पर काम जारी है.
- नई कैमरा व्यू क्लास. इस लाइब्रेरी पर काम जारी है.