2013-02-25 19 views
5

Ich arbeite an einer Live-Augmented-Reality-Anwendung. Bisher habe ich an vielen AR-Anwendungen für mobile Geräte gearbeitet. Jetzt muss ich das Videosignal von einer Panasonic P2 holen. Die Kamera ist eine europäische Version. Ich nehme das Signal mit einer AJA io HD Box, die per Firewire mit einem MacPro verbunden ist. Bis jetzt funktioniert alles super - nur nicht in Unity. Wenn ich die Vorschau in Unity starte, springt der Framebuffer des AJA ControlPanels auf eine Bildrate von 59.94 fps. Ich denke wegen einer Vorliebe für Einheit. Wegen der europäischen Version der Kamera kann ich nicht auf 59,94 fps oder 29,47 fps umschalten. Ich habe alle Einstellungen in Unity überprüft, konnte aber nichts finden ...Unity3d externe Kamera Bildrate

Gibt es eine Möglichkeit, die Framerate von einer externen Kamera zu ändern?

+0

Sie sollten etwas Code einbeziehen. Verwenden Sie eine WebcamTexture, rufen Sie die Kamera über eine IP-Adresse ab, laden Sie Daten über eine benutzerdefinierte 3rd Party API usw. – Jerdak

+0

Ich verwende derzeit die Zeichenfolge SDK. Bisher habe ich nichts programmiert. Zuerst muss ich eine funktionierende Kameraaufnahme machen. – dome12b

+0

Ohne Code ist es unmöglich, das Problem zu diagnostizieren. Soweit ich weiß, hat Unity jedoch keine explizite Einstellung für die Bildrate. Laut String [Paket] (http://www.poweredbystring.com/product): "Die Bildrate ist nur durch die Kamera-Hardware begrenzt", also klingt es, als würde String Ihre Digitalkamera so schnell wie möglich abfragen. – Jerdak

Antwort

0

Wenn Sie die Kamera über die Update() -Funktion von Unity abfragen, werden Sie von Vsync beeinflusst, wodurch die Bildverarbeitung auf 60 FPS beschränkt wird.

Sie können Vsync ausschalten, indem Sie auf Edit > Project Settings > Quality gehen und dann die Option Vsync Count auf "nicht synchronisieren" einstellen.