Camera2 API nedir (basit anlatım)
Camera2 API, uygulamalara manuel kontrol (enstantane, ISO, odak, RAW) sağlayan Android'in kamera ile çalışmak için kullanılan modern arayüzüdür. Aşağıda, telefonunuzda desteklenip desteklenmediğini nasıl anlayacağınız ve bunun size pratik avantajlar sağlayacağı açıklanmaktadır.
İçindekiler {{TOC_AUTOMATIC}}
Bu nedir ve Camera2 eski Camera API'den nasıl farklıdır
Camera2, eski Camera API'nin (Camera1) yerini almıştır. Temel fark, istek-yanıt modelidir: uygulama bir CaptureRequest oluşturur ve detaylı bir CaptureResult alır. Bu şunları sağlar:
- enstantane, ISO, odak ve beyaz dengesi üzerinde hassas manuel kontrol;
- aynı anda birden fazla akış elde etme imkanı (önizleme + RAW + kayıt);
- donanım desteği varsa RAW çekim ve yüksek hızlı video desteği;
- HDR, braketleme, gece modları ve kendi işleme algoritmalarının uygulanması için esneklik.
Kullanıcı için bunun anlamı şudur: tam destek durumunda, üçüncü taraf uygulamalar uyumluluk moduna kıyasla sensörün potansiyelini daha iyi ortaya çıkarabilecektir.
Destek seviyeleri ve bunların akıllı telefonda nasıl kontrol edileceği
Seviyeler (INFO_SUPPORTED_HARDWARE_LEVEL) sadece açık/kapalı değildir:
- LEGACY — Camera1 ile uyumluluk, çoğu manuel fonksiyon kullanılamaz.
- LIMITED — kısmi destek, bazı manuel parametreler mümkündür.
- FULL — Camera2'nin neredeyse tüm özellikleri: manuel enstantane/ISO/odak, RAW, gelişmiş seri çekim.
- LEVEL_3 — genişletilmiş destek (ek formatlar, hızlı akış, gelişmiş çok kareli işleme).
Nasıl kontrol edilir (normal kullanıcı için)
- Play Store'dan bir Camera2 kontrol uygulaması yükleyin («camera2 api probe», «camera2 checker» gibi anahtar kelimelerle).
- Uygulamayı başlatın, kameraya erişim izni verin — kameraların (arka, ön) listesini ve seviyelerini (LEGACY/LIMITED/FULL/LEVEL_3) göreceksiniz.
- Alternatif olarak: «manuel» bir uygulama (Open Camera, Manual vb.) yükleyin ve RAW, manuel odak, manuel enstantane ve ISO'nun mevcut olup olmadığını kontrol edin.
Üretici, yetenekleri yazılım düzeyinde kısıtlayabilir: güçlü bir sensör bile kısıtlı sürücülerle düşük destek seviyesi gösterebilir.
Nasıl kontrol edilir (geliştirici için)
- CameraManager.getCameraIdList() ve CameraCharacteristics.get(CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL) aracılığıyla.
- Ek olarak REQUEST_AVAILABLE_CAPABILITIES değerlerine bakın: MANUAL_SENSOR, MANUAL_POST_PROCESSING, RAW, CONSTRAINED_HIGH_SPEED_VIDEO ve diğerleri. Bu, mevcut yeteneklerin kesin bir resmini verecektir.
Camera2 desteği ne zaman ve neden gereklidir
Fotoğrafçı/videograf için:
- Manuel kontrol — gece ve yaratıcı çekimler için hassas enstantane ve ISO ayarları.
- RAW — pozlama ve renk düzeltmesi için daha fazla detay ve olanak.
- Stabil seri çekim ve çok kareli işleme — daha iyi HDR ve portre kalitesi.
- Video için — pozlamanın sabitlenmesi ve log/sinematik profiller için olanaklar.
Geliştirici için:
- Karmaşık modları (gece modu, braketleme, kendi algoritmaları) uygulama imkanı.
- Önizleme, kayıt ve analiz (AR, CV) için aynı anda birden fazla akışla çalışma.
- Profesyonel uygulamalar için RAW ve yüksek hızlı çekim desteği.
Ana kameranız FULL veya LEVEL_3 olarak işaretlenmişse, profesyonel bir uygulama yüklemeyi ve RAW çekim yapmayı deneyin: post-prodüksiyon olanaklarındaki farkı hemen göreceksiniz.
Sık yapılan hatalar
- Herhangi bir Camera2 desteğinde «sihirli» bir kalite iyileştirmesi beklemek. Destek yalnızca erişim sağlar — kalite, uygulamanın algoritmalarına ve optiğe bağlıdır.
- Aynı telefondaki farklı modüllerin (geniş açı, makro, ön kamera) farklı destek seviyelerine sahip olabileceğini göz ardı etmek.
- Derinlemesine bilgi sahibi olmadan root veya build.prop aracılığıyla FULL'u «açmaya» çalışmak — bu genellikle kararsızdır ve risklidir.
SSS
-
Camera2 olmadan mükemmel fotoğraflar çekilemez mi?
Hayır. Üreticinin sistem uygulaması, kendi algoritmalarını ve düşük seviyeli fonksiyonlara erişimi kullandığı için mükemmel sonuçlar verebilir. -
Destek seviyesi yazılım veya root ile «iyileştirilebilir» mi?
Bazen uzmanlar yazılımları modifiye eder, ancak bu LIMITED'den FULL'a güvenli bir geçişi garanti etmez ve kamera kararsızlığına yol açabilir. -
Hangisi daha önemlidir — FULL seviyesi mi yoksa uygulamada gerçekten çalışan manuel modlar mı?
İkisi de önemlidir: FULL imkan sunar, ancak bu imkanı hayata geçiren yetkin bir yazılıma da ihtiyaç vardır.
İsterseniz cihazınızda Camera2 testi için güvenilir bir uygulama seçmenize yardımcı olabilirim veya Android Studio'da kontrol için örnek kod gösterebilirim.