Jemand schlug vor, dass ich eine Kopie der unveränderten X-Anzeige in eine Datei umwandle und diese Datei anschließend in eine allgemeine Videodatei umwandle. Welche Befehle würde ich verwenden, um dies auf einem Kubuntu-System zu tun? (Bearbeiten: Er sagte etwas über das Anhängen eines Anzeigeports an eine Datei.) Wenn dies nicht möglich ist, was ist meine beste Option für eine Bildschirmaufnahme in exzellenter Qualität, die nicht von schneller Hardware abhängt?
Hintergrund: Ich habe versucht, avconv mit -f x11grab und einigen GUI-Programmen zu verwenden. Egal was ich versuche, das resultierende Video weist entweder Artefakte / Unschärfe auf oder ist abgehackt (fehlende Frames). Dies liegt wahrscheinlich an CPU- / Speicherbeschränkungen.
Tore:
- Die Videoqualität darf sich nicht wesentlich von der Anzeige der Sitzung direkt auf einem Bildschirm unterscheiden, da eine animierte Anwendung demonstriert werden soll.
- Das endgültige Video muss in einem gemeinsamen Format vorliegen, das an Windows-Benutzer gesendet und im Web verwendet werden kann. Ich denke H.264 MP4 sollte funktionieren.
- Die Lösung sollte nicht viel Vorwissen voraussetzen. Ich bin mit der Befehlszeile und den grundlegenden Linux-Befehlen vertraut, lerne aber noch Linux und weiß nicht viel über Videocodecs.
Was ich schon ausprobiert habe:
- Bester befehl bisher:
ffmpeg -f x11grab -s xga -r 30 -i :0.0 -qscale 0.1 -vcodec huffyuv grab.avi
dann konvertiere mit mp4ffmpeg -i grab.avi -sameq -vcodec mpeg4 grab.mp4
.- Die Bildqualität ist großartig, aber bei meinem Testsystem läuft sie dem Computer hinterher. Auf einem schnelleren Zielsystem verzögert es nicht, aber Frames werden offensichtlich übersprungen, wodurch das Video nicht sehr flüssig wird .
- Ich versuche immer noch herauszufinden, wie die grab.avi-Datei in SHM gespeichert werden kann, um festzustellen, ob dies hilfreich ist.
- Verwenden von Istanbul- und RecordMyDesktop-GUI-Rekordern
- Einfacher Befehl:
avconv -f x11grab -s xga -r 25 -i :0.0 simple.mpg
Verwenden von avconv Version 0.8.3-4: 0.8.3-0ubuntu0.12.04.1 - Hinzufügen
-codec:copy
(nicht mit:Requested output format 'x11grab' is not a suitable output format
) - Hinzufügen
-same_quant
(führt zu guter Qualität, ist aber sehr ruckelig / es fehlen viele Frames) - Hinzufügen
-vpre lossless_ultrafast
(nicht mit:Unrecognized option 'vpre'
,Failed to set value 'lossless_ultrafast' for option 'vpre'
) - Hinzufügen verschiedener Werte von
-qscale
- Hinzufügen verschiedener Werte von
-b
- Hinzufügen
-vcodec h264
(Ausgänge wiederholt:Error while decoding stream #0:0
,[h264 @ 0x8300980] no frame!
)- Hinweis: h264 wird in der
avconv -formats
Ausgabe als aufgelistetDE h264 raw H.264 video format
- Hinweis: h264 wird in der
Ich hatte Erfolg mit:
Wichtige Punkte:
Tipp: Bildschirm und Webcam überlagern mit:
https://trac.ffmpeg.org/wiki/Capture/Desktop
[edit 20180418] Update für Gnome Shell und Wayland:
quelle
Hast du rfbroxy ausprobiert ?
Ich benutze es, um X11-Screen-Sessions aufzunehmen.
Sie können es in einem Modus verwenden, in dem nur bei einer ÄNDERUNG ein Bild aufgezeichnet wird.
quelle
Dies ist eine Problemumgehung und wahrscheinlich nicht "nahezu perfekt", da dies von der Netzwerkgeschwindigkeit oder anderen Faktoren abhängen kann, die den Videostream möglicherweise behindern.
Verwenden Sie VNC oder Teamviewer und verbinden Sie sich von Ihrem Laptop oder Desktop mit dem anderen Computer. Wenn Sie einen Windows- oder OSX-Laptop zur Verfügung haben, verfügen Sie wahrscheinlich über Tools, die dies aufzeichnen können, und ich glaube, Teamviewer kann eine Sitzung selbst aufzeichnen. Es ist einfach zu versuchen, und Sie können dann entscheiden, ob die Qualität gut genug ist.
Teamviewer ist tendenziell skalierbar, aber ich weiß nicht, ob dies auch bei aufgezeichneten Sitzungen der Fall ist.
VNC komprimiert oder skaliert nicht und Ihr Laptop / Desktop-Monitor benötigt eine höhere Auflösung als der des anderen Computers. Die qualität ist gut Möglicherweise kann der von Ihnen verwendete VNC-Viewer aufnehmen. Ich bin jetzt auf Ubuntu und der Standard-Viewer kann das nicht.
Bildschirmaufzeichnung für die Anzeige vor Publikum oder im Internet - es gibt spezielle Tools, mit denen Sie Klicks abfangen, der Maus folgen und sie vergrößern können und andere Optionen haben, um klarer zu machen, was Sie tun. Ich schlage vor, Sie werfen einen Blick auf diese auch. Google für "Screen Recording Software".
quelle
Ich verwende Camtasia, um mein Gameplay-Video und mein Online-Video aufzunehmen. Ich habe vorher auch Fraps-Videorecorder benutzt, aber die FPS fallen während des Abspielens. Camtasia bietet eine höhere Geschwindigkeit, aber das einzige Problem ist, dass ich jedes Mal, wenn ich die Ausgabe von .CAMREC in avi konvertieren muss, wie in "Link-Beschreibung hier eingeben" zu sehen ist . Die .camrec-Datei ist das proprietäre Format von camtasia und kann nicht auf Playern von Drittanbietern wie Windows Media Player und vlc abgespielt werden.
quelle