Am un fișier MP4 al unui ecran de înregistrare pe care trebuie să îl decupez. Cum pot realiza acest lucru fără a folosi instrumente scumpe precum Adobe Premier sau Final Cut? Prefer ffmpeg deoarece l-am mai folosit.

Răspunde

Folosește crop filtru :

ffmpeg -i in.mp4 -filter:v "crop=out_w:out_h:x:y" out.mp4 

Unde opțiunile sunt după cum urmează:

  • out_w este lățimea dreptunghiului de ieșire
  • out_h este înălțimea dreptunghiului de ieșire
  • x și y specifică colțul din stânga sus al dreptunghi de ieșire

Imagine originală

imagine originală
Imagine originală 320×240

Exemplul 1

80x60

Pentru a decupa o secțiune de 80 × 60, începând de la poziția (200, 100):

ffmpeg -i in.mp4 -filter:v "crop=80:60:200:100" -c:a copy out.mp4 
  • Sunetul este flux copiat în acest exemplu, deci re-codarea este evitată.

Exemplul 2

sfertul din dreapta jos

Pentru a decupa sfertul din dreapta jos:

ffmpeg -i in.mp4 -filter:v "crop=in_w/2:in_h/2:in_w/2:in_h/2" -c:a copy out.mp4 

Este la fel ca:

ffmpeg -i in.mp4 -filter:v "crop=320/2:240/2:320/2:240/2" -c:a copy out.mp4 

Care este același lucru cu:

ffmpeg -i in.mp4 -filter:v "crop=160:120:160:120" -c:a copy out.mp4 
  • Puteți consulta dimensiunea imaginii de intrare cu in_w și in_h așa cum se arată în acest prim exemplu. Lățimea și înălțimea de ieșire pot fi folosite și cu out_w și out_h.

Exemplul 3

20 pixeli de sus și 20 de jos

Decupați 20 de pixeli de sus și 20 de jos:

 ffmpeg -i in.mp4 -filter:v "crop=in_w:in_h-40" -c:a copy out.mp4 
  • Filtrul va centra automat decuparea dacă x și y sunt omise, cum ar fi în acest exemplu.

Previzualizare

Puteți face o recoltă (heh heh) și o puteți previzualiza live cu ffplay:

ffplay -i input -vf "crop=in_w:in_h-40" 

Astfel puteți experimenta și regla tăierea fără a fi nevoie să codificați, vizualizați, repetați.

Note

  • crop documentație filtru

  • Codificatorul implicit pentru MP4 este libx264 (videoclip H.264) sau mpeg4 (MPEG- 4 Partea 2 video) în funcție de ffmpeg build. Consultați FFmpeg Wiki: Ghid de codificare video H.264 pentru mai multe informații.

  • În loc să decupați și să re- codificare, luați în considerare decuparea la redare. Acest lucru este posibil cu orice jucător pe care merită să îl folosiți.

  • Vechile ffmpeg versiuni utilizate -croptop , -cropbottom, -cropleft, -cropright opțiuni în loc de crop filtru. Dacă acesta este cazul dvs., atunci obțineți un ffmpeg modern. Dezvoltarea este foarte activă și nu există niciun motiv pentru a utiliza un antic.

Comentarii

  • Acest lucru funcționează cu ' avconv ' acum.
  • merită menționată această tehnică (cu crop filter) recodifică videoclipul, consultați stackoverflow.com/questions/33378548/… dacă re- codificarea contează pentru dvs.
  • editat pentru a schimba -filter:v învechit la cel mai actualizat și mai simplu să tastați -vf . Noroc!
  • Dacă ' încercați să eliminați bare negre din jurul videoclipului dvs. (piallarbox, cutie poștală, fereastră etc.) utilizați cropdetect mai întâi pentru a avea parametrii de tăiere ffmpeg print pentru dvs.: ffmpeg.exe -i vid.mp4 -vf cropdetect out.mp4
  • Acest filtru de decupare funcționează excelent! Pentru a determina caseta de delimitare necesară pentru decuparea unui videoclip, am exportat un cadru video către o imagine cu ffmpeg. Apoi deschideți imaginea cu GIMP unde pot desena o casetă de delimitare pentru zona în care am vrut să decupez videoclipul și apoi pot obține informațiile X, Y, W, H din fereastra indicatorului. Întrebați dacă acest lucru nu este suficient de clar.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *