Mám soubor MP4 se záznamem obrazovky, který musím oříznout. Jak toho mohu dosáhnout bez použití drahých nástrojů, jako je Adobe Premier nebo Final Cut? Dávám přednost ffmpeg, protože jsem to už dříve používal.

Odpovědět

Použijte crop filtr :

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

Kde možnosti jsou následující:

  • out_w je šířka výstupního obdélníku
  • out_h je výška výstupního obdélníku
  • x a y zadejte levý horní roh výstupní obdélník

původní obrázek

původní obrázek
původní obrázek 320×240

Příklad 1

80x60

Oříznutí sekce 80 × 60, počínaje pozicí (200, 100):

ffmpeg -i in.mp4 -filter:v "crop=80:60:200:100" -c:a copy out.mp4 
  • Zvuk je v tomto příkladu zkopírován stream , takže se opětovnému kódování vyhnete.

Příklad 2

pravá dolní čtvrtina

Oříznutí pravé dolní čtvrtiny:

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

Je to stejné jako:

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

Což je stejné jako:

ffmpeg -i in.mp4 -filter:v "crop=160:120:160:120" -c:a copy out.mp4 
  • Na velikost vstupního obrázku můžete odkazovat pomocí in_w a in_h, jak ukazuje tento první příklad. Šířku a výšku výstupu lze také použít s out_w a out_h.

Příklad 3

20 pixelů shora a 20 zespodu

Ořízněte 20 pixelů shora a 20 zespodu:

 ffmpeg -i in.mp4 -filter:v "crop=in_w:in_h-40" -c:a copy out.mp4 
  • Filtr automaticky vystředí oříznutí, pokud x a y jsou vynechány, jako v tomto příkladu.

Náhled

Můžete si vzít plodinu (heh heh) a zobrazit si náhled živě pomocí ffplay:

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

Tímto způsobem můžete experimentovat a upravovat ořezávání bez nutnosti kódování, prohlížení a opakování.

Poznámky

  • crop dokumentace filtru

  • Výchozí kodér pro MP4 je libx264 (video H.264) nebo mpeg4 (MPEG- 4 část 2 video) v závislosti na vašem ffmpeg sestavení. Další informace najdete v FFmpeg Wiki: Průvodce kódováním videa H.264 .

  • Místo oříznutí a opětovného kódování, zvažte oříznutí při přehrávání. To je možné u každého hráče, který stojí za to použít.

  • Starověké ffmpeg sestavení použité -croptop , -cropbottom, -cropleft, -cropright možnosti namísto crop filtr. Pokud je to váš případ, získejte moderní ffmpeg . Vývoj je velmi aktivní a není důvod používat starožitnosti.

Komentáře

  • Toto funguje s ' avconv ' nyní.
  • za zmínku stojí tato technika (s crop filter) video znovu zakóduje, viz stackoverflow.com/questions/33378548/… pokud znovu kódování je pro vás důležité
  • upraveno tak, aby se zastaralé -filter:v staly aktuálními a jednoduššími pro psaní -vf . Na zdraví!
  • Pokud se ' pokoušíte odstranit černé pruhy kolem vašeho videa (piallarbox, letterbox, windowbox atd.), Použijte cropdetect nejprve pro vás připravte parametry ořezu tisku ffmpeg: ffmpeg.exe -i vid.mp4 -vf cropdetect out.mp4
  • Tento filtr oříznutí funguje skvěle! Aby bylo možné určit ohraničující rámeček potřebný k oříznutí videa, exportoval jsem snímek videa do obrázku pomocí ffmpeg. Poté otevřete obrázek pomocí GIMP, kde můžu nakreslit ohraničovací rámeček pro oblast, kterou jsem chtěl video oříznout, a pak mohu získat X, Y, W, H informace z okna ukazatele. Zeptejte se, jestli to není dostatečně jasné.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *