Table of Contents

Class FramePlayer

Ruang Nama
easyar
Rakitan
EasyAR.Sense.dll

Sebuaheasyar.InputFramePlayerdaneasyar.VideoInputFramePlayerMonoBehaviouryang mengontrol dalam adegan, menyediakan ekstensi fungsional di lingkungan Unity.

Ini akan digunakan saatFrameSourceadalahFramePlayeratau saat 'Frame Player' dipilih di alat 'Session Validation Tool' pada editorDiagnosticsControllerinspector.

public class FramePlayer : FrameSource
Pewarisan
FramePlayer
Anggota Pewarisan

Bidang

FilePath

Jalur berkas. Dapat diatur sebelumPlay().

public string FilePath

FilePathType

Jenis jalur. Dapat diatur sebelumPlay().

public WritablePathType FilePathType

Properti

AvailableCenterMode

Hanya disediakan saat membuat sumber frame baru. Hanya akan diakses selama prosesAssemble().

Semua mode pusat yang dapat digunakan.

protected override IReadOnlyList<ARSession.ARCenterMode> AvailableCenterMode { get; }

Camera

Hanya disediakan saat membuat sumber frame baru. Hanya akan diakses selama prosesAssemble().

Di perangkat desktop atau ponsel, kamera ini mewakiliCamerayang sesuai dengan perangkat kamera di dunia virtual di lingkungan nyata. Matriks proyeksi dan posisinya akan sesuai dengan kamera nyata, dikendalikan oleh EasyAR. Di headset, kamera ini hanya digunakan untuk menampilkan beberapa teks diagnostik di depan mata, tidak untuk rendering gambar, dan kameranya tidak dikendalikan oleh EasyAR.

protected override Camera Camera { get; }

CameraCandidate

Alternatif untukCamera, hanya berlaku jika Unity XR Origin tidak digunakan. Jika tidak diatur, akan menggunakan Camera.main.

public Camera CameraCandidate { get; set; }

CameraFrameStarted

Hanya disediakan saat membuat sumber frame baru. Ini akan diakses selama siklus hidupARSession.

Apakah bingkai kamera telah mulai dimasukkan.

protected override bool CameraFrameStarted { get; }

DeviceCameras

Hanya disediakan saat membuat sumber frame baru. Ini akan diakses saatCameraFrameStartedbenar.

Menyediakan kamera perangkat yang memasok data bingkai kamera. Jika data bingkai kamera disediakan oleh beberapa kamera, daftar harus mencakup semua kamera.

Pastikan nilainya benar saatCameraFrameStartedbenar.

protected override List<FrameSourceCamera> DeviceCameras { get; }

Display

Hanya disediakan saat membuat sumber frame baru. Hanya akan diakses selama prosesAssemble().

Menyediakan informasi tampilan sistem. Anda dapat menggunakanDefaultSystemDisplayatauDefaultHMDDisplayuntuk mendapatkan informasi tampilan default.

protected override IDisplay Display { get; }

IsAvailable

Hanya disediakan saat membuat sumber frame baru. Hanya akan diakses selama prosesAssemble().

Apakah sumber frame saat ini tersedia.

Jika nilainya null,CheckAvailability()akan dipanggil, dan nilainya akan diperoleh setelahCoroutineselesai.

protected override Optional<bool> IsAvailable { get; }

IsCameraUnderControl

Hanya disediakan saat membuat sumber frame baru. Hanya akan diakses selama prosesAssemble().

Ketika nilainya true, session akan memperbarui transform kamera dan akan merender gambar kamera.

Saat membuat ekstensi headset, ini harus false. Anda harus mengontrol sepenuhnya kamera 3D dalam adegan. Anda harus menangani rendering kamera, terutama dalam mode VST.

protected override bool IsCameraUnderControl { get; }

IsCompleted

Apakah pemutaran telah selesai.

public bool IsCompleted { get; }

IsHMD

Hanya disediakan saat membuat sumber frame baru. Hanya akan diakses selama prosesAssemble().

Apakah sumber frame saat ini adalah headset. Jika headset, informasi diagnostik akan ditampilkan di papan 3D di depan kamera.

Beberapa filter frame akan berjalan berbeda di perangkat.

protected override bool IsHMD { get; }

IsSeekable

Apakah waktu pemutaran saat ini dapat diposisikan. Jika proses perekaman terganggu secara tidak normal, data indeks mungkin hilang sehingga waktu pemutaran saat ini tidak dapat ditetapkan.

public bool IsSeekable { get; }

IsSpeedChangeable

Apakah kecepatan pemutaran dapat diubah.

public bool IsSpeedChangeable { get; }

IsStarted

Apakah pemutaran telah dimulai.

public bool IsStarted { get; }

Length

Total waktu pemutaran yang diharapkan. Satuan dalam detik.

public Optional<double> Length { get; }

Speed

Kecepatan pemutaran saat ini.

public double Speed { get; set; }

Time

Waktu yang telah diputar.

public double Time { get; }

Metode

OnSessionStart(ARSession)

Hanya disediakan saat membuat sumber frame baru. Hanya akan diakses selama prosesStartSession().

Menangani inisialisasi session, jika sumber frame ini telah dirakit ke dalamAssembly. Metode ini dirancang untuk inisialisasi tertunda, Anda dapat melakukan pekerjaan inisialisasi khusus AR dalam metode ini.

protected override void OnSessionStart(ARSession session)

Parameter

session

OnSessionStop()

Hanya disediakan saat membuat sumber frame baru. Ini akan diakses selamaStopSession(bool)atau proses penghentian/kerusakan session lainnya.

Menangani penghentian session, jika sumber frame ini telah dirakit ke dalamAssembly. Anda dapat menggunakan metode ini untuk menghancurkan sumber daya yang dibuat selamaStartSession()dan operasi session, serta mengembalikan status internal. Metode ini dijamin dipanggil sebelum session dihancurkan. Jika sumber frame dihancurkan sebelum session, ini tidak akan dipanggil, dan session akan rusak.

protected override void OnSessionStop()

Play()

Memutar berkas eif. JikaPlay()danStop()tidak dipanggil secara manual, ini akan secara otomatisPlay()setelahARSessiondimulai.

Hanya dapat digunakan setelah session dimulai.

public bool Play()

Seek(double)

Menetapkan waktu pemutaran saat ini. Satuan dalam detik. Mengembalikan false jika data indeks tidak ada.

public bool Seek(double time)

Parameter

time

Stop()

Menghentikan pemutaran berkas eif.

public void Stop()