Ich habe eine Bildschirmaufnahme eines Videochats, den ich hatte, und die Dateigröße ist riesig, weil die Bildschirmaufnahme selbst mit 59,93 fps gemacht wurde. Ich glaube jedoch, dass der Videochat etwa 15-30 fps hatte. Außerdem war es ein Videochat, also wurden die einzelnen Frames offensichtlich auch komprimiert.
Ich möchte die Qualität des Videos nicht beeinträchtigen (sie ist schon ziemlich schlecht, wenn man bedenkt, dass es ein Videochat war). Allerdings würde ich gerne die Dateigröße reduzieren. Ich weiß allerdings nicht genau, wie ich das am besten anstellen soll ... Ich schätze, meine Frage läuft darauf hinaus:
- Gibt es eine Möglichkeit, die Bildrate des Videos so zu senken, dass sie mit der Bildrate des Videochats synchronisiert ist?
- Gibt es noch andere Komprimierungsoptionen, die ich nicht kenne?
Hier ist die ffmpeg -i-Ausgabe, falls das hilft:
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '.\Untitled1.mov':
Metadata:
major_brand : qt
minor_version : 0
compatible_brands: qt
creation_time : 2015-08-02T20:32:54.000000Z
com.apple.quicktime.make: Apple
com.apple.quicktime.model: MacBookAir4,2
com.apple.quicktime.software: Mac OS X 10.10.4 (14E46)
com.apple.quicktime.creationdate: 2015-08-02T12:46:10-0700
Duration: 00:45:19.57, start: 0.000000, bitrate: 12981 kb/s
Stream #0:0[0x1](und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1438x874, 12974 kb/s, SAR 1:1 DAR 719:437, 59.93 fps, 60 tbr, 6k tbn (default)
Metadata:
creation_time : 2015-08-02T20:32:54.000000Z
handler_name : Core Media Video
vendor_id : [0][0][0][0]
encoder : H.264
Antwort1
FFMPEG lässt einfach "unnötige" Frames des Videos weg, wenn-filter:v fps=n
Eine ausführliche Erklärung finden SieHier
Durch eine zusätzliche Konvertierung von h264 nach h265 kann man das Video um etwa den Faktor 10 komprimieren, ohne dass es zu einem merklichen Qualitätsverlust kommt. Das bedeutet, dass eine 100MB große Datei hinterher nur noch 10MB Platz beanspruchen würde, ohne die reduzierte Framerate zu berücksichtigen.
Beispiel:
ffmpeg -i <input> -filter:v fps=30 -c:v libx265 -vtag hvc1 -c:a copy <output>