Zusammenfassung
Wie es funktioniert
Ein Timer läuft mit ~10 fps. Bei jedem Tick rendert der Erfasser die Zielansicht (a UIView) in eine UIImage über drawHierarchy(in:afterScreenUpdates:)und passt die Größe des Bildes für die Kompatibilität mit dem Encoder an, konvertiert es in ein CVPixelBufferwickelt es in ein OTVideoFrameund übergibt sie dem Vonage SDK über videoCaptureConsumer?.consumeFrame(_:). Das SDK kodiert und veröffentlicht die Frames als Screen-Share-Stream. Die Zielansicht kann die vollständige Stammansicht sein oder eine beliebige UIView die Sie zur Verfügung stellen - einschließlich einer von einem UIViewRepresentable (siehe Alternative unten).
Prüfung
Dieses Beispiel sollte mit mehreren Teilnehmern (mindestens 2) durchgeführt werden, um zu sehen, wie die Bildschirmfreigabe für eine andere Person im Gespräch funktioniert.
Test im iOS-Simulator
- Führen Sie die Anwendung im iOS-Simulator aus.
- Der Simulator verwendet ein Demovideo (kein Zugang zur Kamera)
- Sie sollten den Text des Timers sehen
Test am physischen Gerät
- Ein iOS-Gerät anschließen
- Wählen Sie es als Laufziel aus
- Erteilen Sie die Kamerarechte, wenn Sie dazu aufgefordert werden
- Sie sollten den Text des Timers sehen
Test mit mehreren Teilnehmern
- Führen Sie die Anwendung auf einem Gerät oder Simulator aus.
- Verwenden Sie die Vonage Video Spielplatz der gleichen Sitzung beizutreten
- Sie sollten sowohl Ihren benutzerdefinierten Stream als auch den Standard-Abonnenten-Stream sehen
Bildschirmfreigabe
Erfahren Sie, wie Sie mit der Vonage Video API-Plattform eine Screensharing-Funktion implementieren können.