Table of Contents

Class FramePlayer

Spazio dei nomi
easyar
Assembly
EasyAR.Sense.dll

Un MonoBehaviour che controlla easyar.InputFramePlayer e easyar.VideoInputFramePlayer nella scena, fornendo estensioni funzionali nell'ambiente Unity.

Verrà utilizzato quando FrameSource è FramePlayer o quando 'Frame Player' è selezionato nello strumento 'Session Validation Tool' dell'ispettore di DiagnosticsController nell'editor.

public class FramePlayer : FrameSource
Ereditarietà
FramePlayer
Membri ereditati

Campi

FilePath

Percorso del file. Può essere impostato prima di Play().

public string FilePath

FilePathType

Tipo di percorso. Può essere impostato prima di Play().

public WritablePathType FilePathType

Proprietà

AvailableCenterMode

Fornito solo alla creazione di una nuova sorgente frame. Accessibile solo duranteAssemble().

Tutte le modalità di centro utilizzabili.

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

Camera

Fornito solo alla creazione di una nuova sorgente frame. Accessibile solo duranteAssemble().

Su dispositivi desktop o mobili, questa fotocamera rappresenta la controparteCamera nel mondo virtuale del dispositivo fotocamera reale nell'ambiente fisico. La sua matrice di proiezione e posizione corrisponderanno alla fotocamera reale, controllata da EasyAR. Su un visore, questa fotocamera serve solo per visualizzare testo diagnostico davanti agli occhi, non per il rendering della scena; la fotocamera non è controllata da EasyAR.

protected override Camera Camera { get; }

CameraCandidate

Alternativa a Camera, valida solo quando Unity XR Origin non è utilizzato. Se non impostato, verrà utilizzato Camera.main.

public Camera CameraCandidate { get; set; }

CameraFrameStarted

Fornito solo alla creazione di una nuova sorgente frame. Accessibile per l'intero ciclo di vita diARSession.

Se i frame della fotocamera hanno iniziato ad essere inseriti.

protected override bool CameraFrameStarted { get; }

DeviceCameras

Fornito solo alla creazione di una nuova sorgente frame. Accessibile solo quandoCameraFrameStarted è true.

Fornisce la fotocamera del dispositivo che fornisce i dati del frame fotocamera. Se i dati del frame fotocamera sono forniti da più fotocamere, l'elenco deve includerle tutte.

Assicurarsi che il valore sia corretto quandoCameraFrameStarted è true.

protected override List<FrameSourceCamera> DeviceCameras { get; }

Display

Fornito solo alla creazione di una nuova sorgente frame. Accessibile solo duranteAssemble().

Fornisce le informazioni sul sistema di visualizzazione. Puoi usareDefaultSystemDisplay oDefaultHMDDisplay per ottenere le informazioni di visualizzazione predefinite.

protected override IDisplay Display { get; }

IsAvailable

Fornito solo alla creazione di una nuova sorgente frame. Accessibile solo duranteAssemble().

Se la sorgente frame corrente è disponibile.

Se il valore è null,CheckAvailability() verrà chiamato e il valore verrà ottenuto dopo il completamento diCoroutine.

protected override Optional<bool> IsAvailable { get; }

IsCameraUnderControl

Fornito solo alla creazione di una nuova sorgente frame. Accessibile solo duranteAssemble().

Quando è true, la sessione aggiorna il transform della fotocamera e renderizza l'immagine della fotocamera.

Durante la creazione di un'estensione per visore, dovrebbe essere false. Dovresti controllare completamente la fotocamera 3D nella scena. Dovresti gestire il rendering della fotocamera, specialmente in modalità VST.

protected override bool IsCameraUnderControl { get; }

IsCompleted

Se la riproduzione è completata.

public bool IsCompleted { get; }

IsHMD

Fornito solo alla creazione di una nuova sorgente frame. Accessibile solo duranteAssemble().

Se la sorgente frame corrente è un visore. Se è un visore, le informazioni di diagnostica verranno visualizzate su un pannello 3D davanti alla fotocamera.

Alcuni filtri frame funzionano diversamente sui dispositivi.

protected override bool IsHMD { get; }

IsSeekable

Se è possibile cercare il momento corrente di riproduzione. Un'interruzione anomala durante la registrazione può causare la mancanza di dati di indice, rendendo impossibile impostare il tempo di riproduzione corrente.

public bool IsSeekable { get; }

IsSpeedChangeable

Se la velocità di riproduzione è modificabile.

public bool IsSpeedChangeable { get; }

IsStarted

Se la riproduzione è avviata.

public bool IsStarted { get; }

Length

Tempo totale di riproduzione previsto. Unità: secondi.

public Optional<double> Length { get; }

Speed

Velocità di riproduzione corrente.

public double Speed { get; set; }

Time

Tempo già riprodotto.

public double Time { get; }

enabled

Riproduce/Mette in pausa il file eif durante l'esecuzione di ARSession. La riproduzione inizierà solo dopo l'avvio della sessione e quando MonoBehaviour.enabled è true.

public bool enabled { get; set; }

Metodi

OnSessionStart(ARSession)

Fornito solo alla creazione di una nuova sorgente frame. Accessibile solo duranteStartSession().

Gestisce l'avvio della sessione, se questa sorgente frame è stata assemblata inAssembly. Questo metodo è progettato per l'inizializzazione differita; puoi eseguire qui il lavoro di inizializzazione specifico per AR.

protected override void OnSessionStart(ARSession session)

Parametri

session

OnSessionStop()

Fornito solo alla creazione di una nuova sorgente frame. Accessibile duranteStopSession(bool) o altri processi di arresto/danneggiamento della sessione.

Gestisce l'arresto della sessione, se questa sorgente frame è stata assemblata inAssembly. Puoi usare questo metodo per distruggere le risorse create duranteStartSession() e il funzionamento della sessione, e ripristinare lo stato interno. Sarà chiamato prima della distruzione della sessione. Se la sorgente frame viene distrutta prima della sessione, non verrà chiamato e la sessione sarà danneggiata.

protected override void OnSessionStop()

Play()

Riproduce un file eif. Se Play() e Stop() non vengono chiamati manualmente, ARSession avvierà automaticamente Play() dopo l'avvio.

Utilizzabile solo dopo l'avvio della sessione.

public bool Play()

Seek(double)

Imposta il momento corrente di riproduzione. Unità: secondi. Restituisce false se mancano i dati di indice.

public bool Seek(double time)

Parametri

time

Stop()

Interrompe la riproduzione del file eif.

public void Stop()