OutputConfiguration Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Kelas untuk menjelaskan output kamera, yang berisi Surface
dan konfigurasi spesifiknya untuk membuat sesi pengambilan.
[Android.Runtime.Register("android/hardware/camera2/params/OutputConfiguration", ApiSince=24, DoNotGenerateAcw=true)]
public sealed class OutputConfiguration : Java.Lang.Object, Android.OS.IParcelable, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("android/hardware/camera2/params/OutputConfiguration", ApiSince=24, DoNotGenerateAcw=true)>]
type OutputConfiguration = class
inherit Object
interface IParcelable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- Warisan
- Atribut
- Penerapan
Keterangan
Kelas untuk menjelaskan output kamera, yang berisi Surface
dan konfigurasi spesifiknya untuk membuat sesi pengambilan.
Ada beberapa cara untuk membuat instans, memodifikasi, dan menggunakan OutputConfigurations. Pola penggunaan yang paling umum dan direkomendasikan dirangkum dalam daftar berikut:
<ul><li>Meneruskan Surface
ke konstruktor dan menggunakan instans OutputConfiguration sebagai argumen ke CameraDevice#createCaptureSessionByOutputConfigurations
. Ini adalah penggunaan yang paling sering dan klien harus mempertimbangkannya terlebih dahulu sebelum alternatif lain yang lebih rumit. </Li>
<li>Meneruskan hanya kelas sumber permukaan sebagai argumen ke konstruktor. Ini biasanya diikuti dengan panggilan untuk membuat sesi pengambilan (lihat CameraDevice#createCaptureSessionByOutputConfigurations
dan Surface
tambahkan panggilan #addSurface
dengan Surface
. Urutan selesai dengan CameraCaptureSession#finalizeOutputConfigurations
. Ini adalah kasus penggunaan yang ditangguhkan yang bertujuan untuk meningkatkan performa dengan memungkinkan sesi pengambilan intensif sumber daya membuat panggilan untuk dijalankan secara paralel dengan inisialisasi apa pun Surface
, seperti menunggu android.view.SurfaceView
untuk siap sebagai bagian dari inisialisasi UI.</Li>
<li>Pola penggunaan ketiga dan paling kompleks melibatkan berbagi permukaan. Setelah membuat instans OutputConfiguration dapat diaktifkan untuk berbagi permukaan melalui #enableSurfaceSharing
. Ini harus dilakukan sebelum membuat sesi pengambilan baru dan memungkinkan panggilan ke CameraCaptureSession#updateOutputConfiguration
. OutputConfiguration dengan berbagi permukaan yang diaktifkan dapat dimodifikasi melalui #addSurface
atau #removeSurface
. Pembaruan pada OutputConfiguration ini hanya akan berlaku setelah CameraCaptureSession#updateOutputConfiguration
pengembalian tanpa melemparkan pengecualian. Pembaruan tersebut dapat dilakukan selama sesi aktif. Klien harus selalu mempertimbangkan persyaratan dan batasan tambahan yang ditempatkan pada permukaan output (untuk detail selengkapnya lihat #enableSurfaceSharing
, , #addSurface
#removeSurface
, CameraCaptureSession#updateOutputConfiguration
). Trade-off ada antara kompleksitas dan fleksibilitas tambahan. Jika dijalankan dengan benar, berbagi permukaan dapat beralih di antara permukaan output yang berbeda tanpa mengganggu permintaan pengambilan berulang yang sedang berlangsung. Ini menghemat waktu dan dapat secara signifikan meningkatkan pengalaman pengguna.</Li>
<berbagi Permukaan li>dapat digunakan dalam kombinasi dengan permukaan yang ditangguhkan. Aturan dari kedua kasus digabungkan dan klien harus memanggil #enableSurfaceSharing
sebelum membuat sesi pengambilan. Lampirkan dan/atau hapus permukaan output melalui #addSurface
/#removeSurface
dan selesaikan konfigurasi menggunakan .CameraCaptureSession#finalizeOutputConfigurations
CameraCaptureSession#updateOutputConfiguration
dapat dipanggil setelah metode finalisasi konfigurasi kembali tanpa pengecualian.</Li>
<li>Jika perangkat kamera mendukung aliran output multi-resolusi, CameraCharacteristics#SCALER_MULTI_RESOLUTION_STREAM_CONFIGURATION_MAP
akan berisi format dan info aliran yang sesuai. Aplikasi dapat menggunakan OutputConfiguration yang dibuat dengan info aliran multi-resolusi yang dikueri dari MultiResolutionStreamConfigurationMap#getOutputInfo
dan android.hardware.camera2.MultiResolutionImageReader
untuk mengambil gambar ukuran variabel.
</Ul>
Pada android.os.Build.VERSION_CODES#P Android P
, semua format kecuali ImageFormat#JPEG
dan ImageFormat#RAW_PRIVATE
dapat digunakan untuk berbagi, tunduk pada dukungan perangkat. Pada tingkat API sebelumnya, hanya ImageFormat#PRIVATE
format yang dapat digunakan.
Dokumentasi Java untuk android.hardware.camera2.params.OutputConfiguration
.
Bagian halaman ini adalah modifikasi berdasarkan pekerjaan yang dibuat dan dibagikan oleh Proyek Sumber Terbuka Android dan digunakan sesuai dengan istilah yang dijelaskan dalam Lisensi Atribusi Creative Commons 2.5.
Konstruktor
OutputConfiguration(Int32, Surface) |
Buat instans baru |
OutputConfiguration(Size, Class) |
Buat instans baru |
OutputConfiguration(Surface) |
Buat instans baru |
Bidang
MirrorModeAuto |
Kedaluwarsa.
Pencerminan otomatis berdasarkan kamera yang menghadap |
MirrorModeH |
Kedaluwarsa.
Output kamera dicerminkan secara horizontal |
MirrorModeNone |
Kedaluwarsa.
Tidak ada transformasi cermin yang diterapkan |
MirrorModeV |
Kedaluwarsa.
Output kamera dicerminkan secara vertikal |
SurfaceGroupIdNone |
ID grup permukaan tidak valid. |
TimestampBaseChoreographerSynced |
Kedaluwarsa.
Tanda waktu disinkronkan ke koreografer. |
TimestampBaseDefault |
Kedaluwarsa.
Basis tanda waktu default. |
TimestampBaseMonotonic |
Kedaluwarsa.
Basis tanda waktu kira-kira sama |
TimestampBaseRealtime |
Kedaluwarsa.
Basis tanda waktu kira-kira sama |
TimestampBaseSensor |
Kedaluwarsa.
Basis tanda waktu . |
Properti
Class |
Mengembalikan kelas runtime dari . |
Creator |
Kelas untuk menjelaskan output kamera, yang berisi |
DynamicRangeProfile |
Mengembalikan profil rentang dinamis saat ini. -or- Atur profil rentang dinamis yang didukung perangkat tertentu. |
Handle |
Handel ke instans Android yang mendasar. (Diperoleh dari Object) |
JniIdentityHashCode |
Kelas untuk menjelaskan output kamera, yang berisi |
JniPeerMembers |
Kelas untuk menjelaskan output kamera, yang berisi |
MaxSharedSurfaceCount |
Dapatkan jumlah bersama |
MirrorMode |
Dapatkan mode pencerminan saat ini -atau- Atur mode pencerminan untuk target output ini |
PeerReference |
Kelas untuk menjelaskan output kamera, yang berisi |
ReadoutTimestampEnabled |
Apakah tanda waktu readout digunakan untuk OutputConfiguration ini. -or- Gunakan waktu baca sensor kamera untuk tanda waktu gambar. |
StreamUseCase |
Dapatkan kasus penggunaan aliran saat ini -atau- Atur kasus penggunaan aliran untuk OutputConfiguration ini |
Surface |
Dapatkan yang |
SurfaceGroupId |
Dapatkan ID grup permukaan yang terkait dengan ini |
Surfaces |
Dapatkan daftar permukaan yang tidak dapat diubah yang terkait dengan ini |
ThresholdClass |
API ini mendukung infrastruktur Mono untuk Android dan tidak dimaksudkan untuk digunakan langsung dari kode Anda. (Diperoleh dari Object) |
ThresholdType |
API ini mendukung infrastruktur Mono untuk Android dan tidak dimaksudkan untuk digunakan langsung dari kode Anda. (Diperoleh dari Object) |
TimestampBase |
Dapatkan basis tanda waktu saat ini -atau- Atur basis tanda waktu untuk target output ini |
Metode
AddSensorPixelModeUsed(Int32) |
Tambahkan mode piksel sensor tempat OutputConfiguration ini akan digunakan. |
AddSurface(Surface) |
Tambahkan permukaan ke OutputConfiguration ini. |
Clone() |
Membuat dan mengembalikan salinan objek ini. (Diperoleh dari Object) |
CreateInstancesForMultiResolutionOutput(MultiResolutionImageReader) |
Buat daftar |
DescribeContents() |
Kelas untuk menjelaskan output kamera, yang berisi |
Dispose() |
Kelas untuk menjelaskan output kamera, yang berisi |
Dispose(Boolean) |
Kelas untuk menjelaskan output kamera, yang berisi |
EnableSurfaceSharing() |
Mengaktifkan beberapa permukaan yang berbagi OutputConfiguration yang sama |
Equals(Object) |
Menunjukkan apakah beberapa objek lain "sama dengan" yang satu ini. (Diperoleh dari Object) |
GetHashCode() |
Mengembalikan nilai kode hash untuk objek . (Diperoleh dari Object) |
JavaFinalize() |
Dipanggil oleh pengumpul sampah pada objek ketika pengumpulan sampah menentukan bahwa tidak ada lagi referensi ke objek. (Diperoleh dari Object) |
Notify() |
Membangunkan satu utas yang menunggu monitor objek ini. (Diperoleh dari Object) |
NotifyAll() |
Membangunkan semua utas yang menunggu monitor objek ini. (Diperoleh dari Object) |
RemoveSensorPixelModeUsed(Int32) |
Hapus mode piksel sensor, yang sebelumnya ditambahkan melalui addSensorPixelModeUsed, dari OutputConfiguration ini. |
RemoveSurface(Surface) |
Hapus permukaan dari OutputConfiguration ini. |
SetHandle(IntPtr, JniHandleOwnership) |
Handle Mengatur properti. (Diperoleh dari Object) |
SetPhysicalCameraId(String) |
Atur id kamera fisik untuk OutputConfiguration ini |
ToArray<T>() |
Kelas untuk menjelaskan output kamera, yang berisi |
ToString() |
Mengembalikan representasi string objek. (Diperoleh dari Object) |
UnregisterFromRuntime() |
Kelas untuk menjelaskan output kamera, yang berisi |
Wait() |
Menyebabkan utas saat ini menunggu sampai terbangun, biasanya dengan <diberitahu></em> atau <em>terganggu</em>. (Diperoleh dari Object) |
Wait(Int64) |
Menyebabkan utas saat ini menunggu sampai terbangun, biasanya dengan <>diberitahu</em> atau <em>terganggu</em>, atau sampai sejumlah real time telah berlalu. (Diperoleh dari Object) |
Wait(Int64, Int32) |
Menyebabkan utas saat ini menunggu sampai terbangun, biasanya dengan <>diberitahu</em> atau <em>terganggu</em>, atau sampai sejumlah real time telah berlalu. (Diperoleh dari Object) |
WriteToParcel(Parcel, ParcelableWriteFlags) |
Kelas untuk menjelaskan output kamera, yang berisi |
Implementasi Antarmuka Eksplisit
IJavaPeerable.Disposed() |
Kelas untuk menjelaskan output kamera, yang berisi |
IJavaPeerable.DisposeUnlessReferenced() |
Kelas untuk menjelaskan output kamera, yang berisi |
IJavaPeerable.Finalized() |
Kelas untuk menjelaskan output kamera, yang berisi |
IJavaPeerable.JniManagedPeerState |
Kelas untuk menjelaskan output kamera, yang berisi |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
Kelas untuk menjelaskan output kamera, yang berisi |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Kelas untuk menjelaskan output kamera, yang berisi |
IJavaPeerable.SetPeerReference(JniObjectReference) |
Kelas untuk menjelaskan output kamera, yang berisi |
Metode Ekstensi
JavaCast<TResult>(IJavaObject) |
Melakukan konversi jenis yang diperiksa runtime Bahasa Umum Android. |
JavaCast<TResult>(IJavaObject) |
Kelas untuk menjelaskan output kamera, yang berisi |
GetJniTypeName(IJavaPeerable) |
Kelas untuk menjelaskan output kamera, yang berisi |