Erstellen des Mirror Video Capturers
Wir müssen eine MirrorVideoCapturerIhre Aufgabe ist es,:
- öffnen und konfigurieren Sie die Kamera,
- Bilder von der Kamera aufnehmen,
- die Rahmen horizontal spiegeln,
- diese Bilder als Publisher-Video an das Vonage SDK senden.
- Erstellen Sie eine separate Kotlin-Datei mit dem MirrorVideoCapturer
Da die Datei recht groß ist, kopieren Sie den Inhalt der Datei MirrorVideoCapturer.kt zu Ihrem Projekt hinzufügen. In den nächsten Schritten werden wir uns nur auf die wichtigsten Aspekte der benutzerdefinierten Videoaufnahme in diesem Tutorial konzentrieren.
- Wie der Erfasser seine Einstellungen preisgibt
Das SDK muss wissen, welche Art von Videostream Ihr Capturer bereitstellen wird. Dies geschieht durch getCaptureSettings() im benutzerdefinierten Erfassungsprogramm:
@Synchronized
override fun getCaptureSettings(): CaptureSettings {
val settings = CaptureSettings()
settings.fps = desiredFps
settings.width = cameraFrame?.width ?: -1
settings.height = cameraFrame?.height ?: -1
settings.format = NV21
settings.expectedDelay = 0
settings.mirrorInLocalRender = frameMirrorX
return settings
}
Die Einstellungen hier konfigurieren die Erfassung wie folgt:
fps: wie viele Bilder pro Sekunde Sie liefern werden. Breite und HöheAuflösung: die Auflösung der Bilder (kann von der tatsächlichen Kameraausgabe oder der von Ihnen konfigurierten Aufnahmegröße abgeleitet werden). Format: das Pixelformat, das Sie dem SDK zur Verfügung stellen wollen (z. B. NV21). expectedDelayEine Schätzung (in ms), wie viel Zeit zwischen der Aufnahme und der Übermittlung eines Bildes vergeht.
Diese Einstellungen werden dem Vonage SDK über MirrorVideoCapturer mitgeteilt. Wenn diese Einstellungen gesetzt sind, weiß das SDK: wie man Puffer zuweist, wie die Frames zu kodieren sind, und wie das Netzwerk-/Codierungsverhalten an Ihr Aufnahmeprofil angepasst werden kann.
Einfache Videoaufnahme
Erfahren Sie, wie Sie mit dem Vonage Video SDK einen einfachen Video-Capturer einrichten.