Archiv der Kategorie: FFmpeg

Scripte zu FFmpeg

ffmpeg: 24fps zu 25fps

Möchte man ein 24 fps Clip mittels ffmpeg korrekt umwandeln kann man das in etwa so bewerkstelligen:

Mit diesem Beispiel würde zusätzlich noch ein Border angefügt:

 

Batch: media-autobuild_suite v2.0

Von dem Compiler Script media-autobuild_suite gibt es jetzt die Version 2.0.

Die Compiler- Umgebung basiert nun auf MSYS2. Vorteil davon ist, dass sich die Umgebung immer aktuell hält, Updates werden automatisch installiert.

Da nun auch viele Libraries aus MSYS2 genommen werden, bleiben auch diese auf dem neusten Stand. Das System bleibt kleiner und läuft im gesamten schneller.

 

Viel Spaß damit!

https://github.com/jb-alvarado/media-autobuild_suite

ffmpeg: x265 encoding

ffmpeg unterstützt jetzt ja auch x265, was bei gleich Qualität zu x264 die Dateigröße fast um die Hälfte verkleinert. Vorausgesetzt natürlich dass man eine Version hat, in der x265 integriert wurde.

Bei einem Test ist mir aufgefallen dass das Encoding streikt wenn kein „aspect“ angegeben ist.

Daher hier mal ein Beispiel  wie Parameter für ffmpeg sein können:

Interessanterweise kann das File vlc nicht abspielen, weil er meint er kennt hev1 nicht.

Andere Möglichkeit ist daher das ganze mit mp4box zu mergen:

media-autobuild_suite

Unter Linux gibt es ein tolles Script mit welchem sich das Kompilieren von ffmpeg und andere Tools für Windows automatisieren lässt.

https://github.com/rdp/ffmpeg-windows-build-helpers )

Etwas ähnliches habe ich jetzt auch für Windows geschrieben. Das Script läuft auch weitestgehend automatisch ab. Es muss lediglich ausgewählt werden ob man für Windows 32 bit, 64 bit, oder Beides kompiliert werden soll. Ob „non free“ Encoder, wie fdk aac, eingebunden werden soll und wie viele CPU Cores verwendet werden soll.

Für das Ausführen und verwenden ist es wichtig, dass das Script in einem Ordner kopiert und ausgeführt wird, welcher keine Leerzeichen im Pfad hat. Z.B.: C:\mingw

Da keine Registry Keys, oder Systemvariablen gesetzt werden, kann der Ordner, wenn er nicht mehr benötigt wird, problemlos gelöscht werden. Es bleiben keine Rückstände übrig.

Momentan werden kompiliert:

  • a52dec
  • bzip2
  • exiv2
  • fdkaac (standalone and lib for ffmpeg)
  • ffmpeg
  • faac (standalone and lib for ffmpeg)
  • fftw
  • flac (standalone)
  • fltk
  • fontconfig
  • freetype
  • frei0r
  • gettext
  • gsm
  • gnutls (standalone and lib for ffmpeg)
  • lame (standalone and lib for ffmpeg)
  • ImageMagick (standalone (32 bit))
  • jpeg
  • jpeg2000
  • jpegturbo
  • libass
  • libbluray
  • libcaca
  • libdvdcss
  • libdvdnav
  • libdvdread
  • libilbc
  • libmad
  • libmodplug
  • libmpeg2
  • libpng
  • libsoxr
  • libtiff
  • libtwolame
  • libutvideo
  • libxml2
  • libzvbi
  • lua
  • mediainfo cli (only 32 bit)
  • mp3lame (standalone and lib for ffmpeg)
  • mp4box (standalone)
  • mplayer (standalone)
  • orc
  • opencore-amr
  • openEXR (standalone and lib for ImageMagick)
  • openjpeg
  • ogg
  • opus
  • opus-tools (standalone)
  • qt4
  • rtmp (standalone and lib for ffmpeg)
  • schroedinger
  • sdl (for ffplay)
  • sdl_image
  • sox
  • speex (standalone and lib for ffmpeg)
  • theora
  • vlc player
  • vidstab
  • vpx (standalone and lib for ffmpeg)
  • vo-aacenc
  • vo-amrwbenc
  • vorbis
  • x264 (standalone and lib for ffmpeg)
  • x264 10 bit (standalone)
  • x265 (standalone and lib)
  • x265 16 bit (standalone)
  • xavs (standalone and lib for ffmpeg)
  • xvid
  • zlib

Finden tut ihr die neuste Version immer unter:

https://github.com/jb-alvarado/media-autobuild_suite

Viel Spaß damit!

 

( Da das Tool open source ist, ist die Nutzung natürlich auf eigene Gefahr… 🙂 )

Mit ffmpeg Videos für Nokia 206 komprimieren

Das Script liest mit ffprobe zuerst die Auflösung aus und korrigiert gegebenenfalls die Höhe. Für Avisynth wird zusätzlich mvtools2 und ffms2 benötigt.

FFmpeg Webstream aufzeichnen mit Timerfunktion

Zum aufzeichnen von Webstreams kann man sich auch eine Timerfunktion basteln. Es funktioniert momentan aber nur am aktuellen Tag.

FFmpeg: Webstream aufzeichnen

Mit folgendem Script lassen sich Webstreams, welche in dem Protokoll rtmp gesendet werden aufzeichnen. Mit set year/month/day erhält die Datei als Namen das aktuelle Datum.