Windows Desktop mit FFMPEG aufzeichnen


Um mal schnell etwas in Windows als Video aufzuzeichnen gibt es viele verschiedene Möglichkeiten. Bei Windows 10 gibt es mittlerweile die GameBar bzw. Spielleiste aus dem App-Store. Allerdings kann die Spielleiste nur 3D Spiele oder Anwendungen aufzeichnen, also braucht man etwas anderes. Da kommt FFMPEG zur Hilfe,das ultimative Werkzeug wenn es um Video-oder Audio-Dateien geht. https://ffmpeg.zeranoe.com/builds/.

Um nun den Desktop aufzuzeichnen verwendet man

.\ffmpeg.exe -f gdigrab -draw_mouse 1 -framerate 30 -i desktop -f dshow -i audio="@device_cm_{33455762-9558-1340-BD43-34453454CE86}\wave_{E3453455-0445-4D3F-92FF-573453453E3E}" output.mp4

Zum Beenden der Aufzeichnung holt man das Fenster mit obigem Befehl wieder in den Vordergrund und bricht die Aufzeichnung mittels STRG+C ab. Die Aufzeichnung landet in output.mp4 im aktuellen Verzeichnis.

Durch die Angabe von –f gdigrab und –f dshow benutzt man zwei Filter, einmal für die Videoaufzeichnung mit –i desktop und bei –i audio… für die Audioaufzeichnung.

Der Parameter –draw_mouse 1 zeichnet die Maus mit auf, bei –draw_mouse 0 würde die Maus nicht mitaufgezeichnet.

Um den Mauszeiger größer zu bekommen verwendet man

start main.cpl

bzw. unter Windows 10 gleich

start ms-settings:easeofaccess-mouse

Für die Soundeinstellunge um z. B. das Mikrofon anzupassen verwendet man

start mmsys.cpl

control /name Microsoft.Sound

oder unter Windows 10

start ms-settings:sound

Zur Ermittlung der zur Verfügung stehenden Audioquellen verwendet man diesen Befehl:

ffmpeg -list_devices true -f dshow -i dummy

Dabei kann das Problem entstehen, dass ein Umlaut wie im Wort Kopfhörer zu Windows-typischen Problemen führt, wie hier:

[dshow @ 0000354540145480]  "Kopfh├Ârermikrofon (Plantronics Blackwire 5220 Series)"
[dshow @ 00000114d01e8a80]     Alternative name "@device_cm_{33455762-9558-1340-BD43-34453454CE86}\wave_{E3453455-0445-4D3F-92FF-573453453E3E}"

Die Zeichen ├ sollte eigentlich ein ö für Kopfhörer sein. In solch einem Fall verwendet man den alternativen Namen:

"@device_cm_{33455762-9558-1340-BD43-34453454CE86}\wave_{E3453455-0445-4D3F-92FF-573453453E3E}"

Hier noch die offizielle Doku zur Desktopaufzeichnung: https://trac.ffmpeg.org/wiki/Capture/Desktop und zu DirectShow: https://trac.ffmpeg.org/wiki/DirectShow. Sowie https://ffmpeg.org/ffmpeg.html#Video-and-Audio-grabbing.

Werbeanzeigen

6 Antworten to “Windows Desktop mit FFMPEG aufzeichnen”

  1. Quirel Says:

    Was man auch noch machen kann:

    animierte GIF-Dateien erstellen: https://superuser.com/questions/556029/how-do-i-convert-a-video-to-gif-using-ffmpeg-with-reasonable-quality

    und bestimmte Thumbnails vorgeben:
    https://superuser.com/questions/597945/set-mp4-thumbnail

    Noch was zum Codec und dessen Optionen:
    https://trac.ffmpeg.org/wiki/Encode/H.264

  2. Quirel Says:

    Ach und bevor Windows mal wieder keinen Codec zum Abspielen parat hat, evtl. aber Chrome auf dem Rechner ist, kann man das Video mittels

    start chrome output.mp4

    abspielen

  3. Quirel Says:

    Übrigens kann man auch die Audio-Lautstärke automatisch anpassen, hier ein Blog welcher die Vorgehensweise beschreibt, Stichwort ist „loudnorm filter ebu R128“:

    http://peterforgacs.github.io/2018/05/20/Audio-normalization-with-ffmpeg/

    Beispiel:
    ffmpeg -i input.mp4 -af loudnorm=I=-23:LRA=7:tp=-2:print_format=json -f null –

    ffmpeg -i input.mp4 -af
    loudnorm=I=-23:LRA=7:tp=-2:measured_I=-30:measured_LRA=1.1:measured_tp=-11 04:measured_thresh=-40.21:offset=-0.47 -ar 48k -y output.mp4

    und noch ein Link zu Doku: https://trac.ffmpeg.org/wiki/AudioVolume

    Außerdem kann man auch PNG-Dateien als Wasserzeichen einfügen, z. B. so:

    ffmpeg -i test.mp4 -i watermark.png -filter_complex „overlay=10:10“ test1.mp4

    hier sind noch weitere Beispiele und Möglichkeiten genannt: https://gist.github.com/bennylope/d5d6029fb63648582fed2367ae23cfd6

    https://stackoverflow.com/questions/10918907/how-to-add-transparent-watermark-in-center-of-a-video-with-ffmpeg

  4. Quirel Says:

    Oh noch ein weiteres wichtiges Thema für MPEG das Konvertieren von Videos aus unterschiedlichen Quellen in einen einheitlichen Farbraum:

    https://ffmpeg.org/ffmpeg-filters.html#lut3d-1

    https://video.stackexchange.com/questions/21483/apply-custom-lut-via-ffmpeg

    Um Farbräume zu konvertieren ist vielleicht noch dieses Tool von Bedeutung: http://opensource.mikrosimage.eu/ColorPipe-tools/LUTLab/LUT_to_LUT/

    Ein tolles Video, welches auf das Thema eingeht, wie man Filme aus verschiedenen Kameras mit unterschiedlichen Farbräumen zu einem einheitlichen Look bekommt, ist dieses: https://www.youtube.com/watch?v=RZS9u8vEN_0

  5. Quirel Says:

    noch etwas, mittels Lenscorrection kann man Verzerrungen von Gebäuden von z .B. GoPro Aufnahmen herausrechnen: http://www.ffmpeg.org/ffmpeg-all.html#lenscorrection

    https://stackoverflow.com/questions/30832248/is-there-a-way-to-remove-gopro-fisheye-using-ffmpeg/40659507

    benutzt wird dazu auch Lensfun: https://lensfun.github.io/

  6. Quirel Says:

    Flackern von z. B. Neonstoffröhren entfernen:

    ffmpeg -i FLICKER.mov -itsoffset 0.1 -i FLICKER.mov \
    -filter_complex „[1:v]format=yuva420p,colorchannelmixer=aa=0.5[b]; \
    [0:v][b]overlay“ -map 0:1 NOFLICKER.mov

    https://video.stackexchange.com/questions/23384/remove-flickering-due-to-artificial-light-with-ffmpeg

Schreibe eine Antwort zu Quirel Antwort abbrechen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Ändern )

Google Foto

Du kommentierst mit Deinem Google-Konto. Abmelden /  Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s


%d Bloggern gefällt das: