27 Mart 2025'ten itibaren AOSP'yi derlemek ve AOSP'ye katkıda bulunmak için aosp-main
yerine android-latest-release
kullanmanızı öneririz. Daha fazla bilgi için AOSP'de yapılan değişiklikler başlıklı makaleyi inceleyin.
Meta veriler ve kontroller
Koleksiyonlar ile düzeninizi koruyun
İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
Android çerçevesinin ham resim dosyalarını kaydetmesini desteklemek için sensörün özellikleriyle ilgili önemli miktarda meta veri gerekir. Renk aralıkları ve lens gölgelendirme işlevleri gibi bilgiler de buna dahildir.
Bu bilgilerin çoğu, kamera alt sisteminin statik bir özelliğidir ve bu nedenle herhangi bir çıkış ardışık düzeni yapılandırılmadan veya herhangi bir istek gönderilmeden önce sorgulanabilir. Yeni kamera API'leri, bu bilgileri uygulamaya sağlamak için getCameraInfo()
yöntemi tarafından sağlanan bilgileri büyük ölçüde genişletir.
Ayrıca, kamera alt sisteminin manuel olarak kontrol edilmesi için çeşitli cihazlardan mevcut durumları ve belirli bir karenin yakalanmasında kullanılan gerçek parametreler hakkında geri bildirim alınması gerekir. Donanım tarafından kullanılan gerçek kontrol değerleri (ör. pozlama süresi, kare süresi ve hassasiyet) çıkış meta verilerine dahil edilmelidir. Bu, uygulamaların ne zaman sınırlandığını veya yuvarlandığını bilmesi ve görüntü yakalama için kullanılan gerçek ayarları telafi edebilmesi açısından önemlidir.
Örneğin, bir uygulama bir istekte kare süresini 0 olarak ayarlarsa HAL, kare süresini söz konusu istek için gerçek minimum kare süresine sabitlemelidir ve bu sabitlenmiş minimum süreyi çıkış sonucu meta verilerinde bildirmelidir.
Bu nedenle, bir uygulamanın özel bir 3A rutini uygulaması gerekiyorsa (ör. HDR patlaması için doğru şekilde ölçüm yapmak amacıyla) sonraki istek için ayarları güncellemek üzere aldığı en son sonuç grubunu yakalamak için kullanılan ayarları bilmesi gerekir. Bu nedenle yeni kamera API'si, çekilen her kareye önemli miktarda dinamik meta veri ekler. Buna, yakalama için istenen ve kullanılan gerçek parametreler ile zaman damgaları ve istatistik oluşturucu çıkışı gibi kare başına ek meta veriler dahildir.
Ayar başına kontrol
Çoğu ayarın, çıkış kare akışına önemli ölçüde takılma veya gecikme eklemeden her karede değiştirilebilmesi beklenir.
İdeal olarak çıkış kare hızı yalnızca yakalama isteğinin kare süresi alanı tarafından kontrol edilmeli ve işleme bloklarının yapılandırmasında yapılan değişikliklerden bağımsız olmalıdır. Gerçekte, bazı kontrollerin değiştirilmesinin yavaş olduğu bilinmektedir. Bunlar arasında kamera ardışık düzeninin çıkış çözünürlüğü ve çıkış biçimi ile lens odak mesafesi gibi fiziksel cihazları etkileyen kontroller yer alır. Her kontrol grubuyla ilgili tam şartlar aşağıda açıklanmıştır.
Ham sensör verisi desteği
Eski API tarafından desteklenen piksel biçimlerine ek olarak yeni API, hem gelişmiş kamera uygulamaları hem de ham resim dosyalarını desteklemek için ham sensör verileri (Bayer RAW) desteği şartı ekler.
Bu sayfadaki içerik ve kod örnekleri, İçerik Lisansı sayfasında açıklanan lisanslara tabidir. Java ve OpenJDK, Oracle ve/veya satış ortaklarının tescilli ticari markasıdır.
Son güncelleme tarihi: 2025-03-26 UTC.
[[["Anlaması kolay","easyToUnderstand","thumb-up"],["Sorunumu çözdü","solvedMyProblem","thumb-up"],["Diğer","otherUp","thumb-up"]],[["İhtiyacım olan bilgiler yok","missingTheInformationINeed","thumb-down"],["Çok karmaşık / çok fazla adım var","tooComplicatedTooManySteps","thumb-down"],["Güncel değil","outOfDate","thumb-down"],["Çeviri sorunu","translationIssue","thumb-down"],["Örnek veya kod sorunu","samplesCodeIssue","thumb-down"],["Diğer","otherDown","thumb-down"]],["Son güncelleme tarihi: 2025-03-26 UTC."],[],[],null,["# Metadata and controls\n\nMetadata support\n----------------\n\nTo support the saving of raw image files by the Android framework, substantial\nmetadata is required about the sensor's characteristics. This includes\ninformation such as color spaces and lens shading functions.\n\nMost of this information is a static property of the camera subsystem and can\ntherefore be queried before configuring any output pipelines or submitting any\nrequests. The new camera APIs greatly expand the information provided by the\n`getCameraInfo()` method to provide this information to the\napp.\n\nIn addition, manual control of the camera subsystem requires feedback from the\nassorted devices about their current state, and the actual parameters used in\ncapturing a given frame. The actual values of the controls (exposure time, frame\nduration, and sensitivity) as actually used by the hardware must be included in\nthe output metadata. This is essential so that apps know when either\nclamping or rounding took place, and so that the app can compensate for\nthe real settings used for image capture.\n\nFor example, if an app sets frame duration to 0 in a request, the HAL\nmust clamp the frame duration to the real minimum frame duration for that\nrequest, and report that clamped minimum duration in the output result metadata.\n\nSo if an app needs to implement a custom 3A routine (for example, to\nproperly meter for an HDR burst), it needs to know the settings used to capture\nthe latest set of results it has received to update the settings for\nthe next request. Therefore, the new camera API adds a substantial amount of\ndynamic metadata to each captured frame. This includes the requested and actual\nparameters used for the capture, as well as additional per-frame metadata such\nas timestamps and statistics generator output.\n\nPer-setting control\n-------------------\n\nFor most settings, the expectation is that they can be changed every frame,\nwithout introducing significant stutter or delay to the output frame stream.\nIdeally, the output frame rate should solely be controlled by the capture\nrequest's frame duration field, and be independent of any changes to processing\nblocks' configuration. In reality, some specific controls are known to be slow\nto change; these include the output resolution and output format of the camera\npipeline, as well as controls that affect physical devices, such as lens focus\ndistance. The exact requirements for each control set are detailed later.\n\nRaw sensor data support\n-----------------------\n\nIn addition to the pixel formats supported by\nthe old API, the new API adds a requirement for support for raw sensor data\n(Bayer RAW), both for advanced camera apps as well as to support raw\nimage files."]]