Class FramePlayer
- Ruang Nama
- easyar
- Rakitan
- EasyAR.Sense.dll
easyar.InputFramePlayer dan easyar.VideoInputFramePlayer yang mengontrol MonoBehaviour dalam adegan, menyediakan ekstensi fungsionalitas di lingkungan Unity.
Akan digunakan ketika FrameSource adalah FramePlayer atau saat 'Frame Player' dipilih di inspector 'Session Validation Tool' pada DiagnosticsController di editor.
public class FramePlayer : FrameSource
- Pewarisan
-
FramePlayer
- Anggota Pewarisan
Bidang
FilePath
Jalur file. Dapat disetel sebelum Play().
public string FilePath
FilePathType
Tipe jalur. Dapat disetel sebelum Play().
public WritablePathType FilePathType
Properti
AvailableCenterMode
Hanya disediakan saat membuat frame source baru. Hanya akan diakses selama proses Assemble().
Semua mode pusat yang dapat digunakan.
protected override IReadOnlyList<ARSession.ARCenterMode> AvailableCenterMode { get; }
Camera
Hanya disediakan saat membuat frame source baru. Hanya akan diakses selama proses Assemble().
Pada perangkat desktop atau ponsel, kamera ini mewakili Camera di dunia virtual yang sesuai dengan perangkat kamera di lingkungan nyata, matriks proyeksi dan posisinya akan sesuai dengan kamera nyata, dikendalikan oleh EasyAR. Pada 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 untuk Camera, hanya berlaku jika Unity XR Origin tidak digunakan, jika tidak disetel akan menggunakan Camera.main.
public Camera CameraCandidate { get; set; }
CameraFrameStarted
Hanya disediakan saat membuat frame source baru. Ini akan diakses sepanjang siklus hidup ARSession.
Apakah frame kamera sudah mulai dimasukkan.
protected override bool CameraFrameStarted { get; }
DeviceCameras
Hanya disediakan saat membuat frame source baru. Ini akan diakses saat CameraFrameStarted bernilai true.
Menyediakan kamera perangkat yang memberikan data frame kamera. Jika data frame kamera disediakan oleh beberapa kamera, daftar harus mencakup semua kamera.
Pastikan nilainya benar saat CameraFrameStarted bernilai true.
protected override List<FrameSourceCamera> DeviceCameras { get; }
Display
Hanya disediakan saat membuat frame source baru. Hanya akan diakses selama proses Assemble().
Menyediakan informasi tampilan sistem. Anda dapat menggunakan DefaultSystemDisplay atau DefaultHMDDisplay untuk mendapatkan informasi tampilan default.
protected override IDisplay Display { get; }
IsAvailable
Hanya disediakan saat membuat frame source baru. Hanya akan diakses selama proses Assemble().
Apakah frame source saat ini tersedia.
Jika nilainya null, CheckAvailability() akan dipanggil, nilainya akan diperoleh setelah Coroutine selesai.
protected override Optional<bool> IsAvailable { get; }
IsCameraUnderControl
Hanya disediakan saat membuat frame source baru. Hanya akan diakses selama proses Assemble().
Saat nilainya true, session akan memperbarui transform kamera dan akan merender gambar kamera.
Saat membuat ekstensi headset, ini harus false. Anda harus sepenuhnya mengontrol kamera 3D dalam scene. 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 frame source baru. Hanya akan diakses selama proses Assemble().
Apakah frame source saat ini adalah headset. Jika headset, informasi diagnostik akan ditampilkan pada papan 3D di depan kamera.
Beberapa frame filter berjalan berbeda pada perangkat.
protected override bool IsHMD { get; }
IsSeekable
Apakah waktu pemutaran saat ini dapat dicari. Jika proses rekaman terganggu secara tidak normal, data indeks mungkin hilang, sehingga waktu pemutaran saat ini tidak dapat disetel.
public bool IsSeekable { get; }
IsSpeedChangeable
Apakah kecepatan pemutaran dapat diubah.
public bool IsSpeedChangeable { get; }
IsStarted
Apakah pemutaran telah dimulai.
public bool IsStarted { get; }
Length
Perkiraan total durasi pemutaran. Unit: detik.
public Optional<double> Length { get; }
Speed
Kecepatan pemutaran saat ini.
public double Speed { get; set; }
Time
Waktu yang sudah diputar.
public double Time { get; }
enabled
Memutar/Menjeda file eif saat ARSession berjalan. Setelah sesi dimulai, pemutaran hanya akan dimulai jika MonoBehaviour.enabled adalah true.
public bool enabled { get; set; }
Metode
OnSessionStart(ARSession)
Hanya disediakan saat membuat frame source baru. Hanya akan diakses selama proses StartSession().
Menangani peluncuran session, jika frame source ini telah dirakit ke dalam Assembly. 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 frame source baru. Ini akan diakses selama StopSession(bool) atau proses penghentian/kerusakan session lainnya.
Menangani penghentian session, jika frame source ini telah dirakit ke dalam Assembly. Anda dapat menggunakan metode ini untuk menghancurkan sumber daya yang dibuat oleh StartSession() dan selama session berjalan, serta memulihkan status internal. Metode ini dijamin akan dipanggil sebelum session dihancurkan. Jika frame source dihancurkan sebelum session, ini tidak akan dipanggil, dan session akan rusak.
protected override void OnSessionStop()
Play()
Memutar file eif. Jika Play() dan Stop() tidak dipanggil secara manual, ARSession akan secara otomatis Play() setelah dimulai.
Hanya dapat digunakan setelah sesi dimulai.
public bool Play()
Seek(double)
Menetapkan waktu pemutaran saat ini. Unit: detik. Mengembalikan false jika data indeks tidak ada.
public bool Seek(double time)
Parameter
time
Stop()
Menghentikan pemutaran file eif.
public void Stop()