@nuttyaboutnatty Wiadomości „przestarzałe” dotyczyły tylko starych, martwych, fałszywych „ ffmpeg” widelców Libav, a nie ffmpegFFmpeg, które powróciły w 15.04.
-1Powie ffmpeg aby automatycznie wybrać odpowiednią wysokość w stosunku do przewidzianej szerokości do zachowania proporcji. -1można również użyć do szerokości, jeśli podasz określoną wysokość.
Jednym minusem skali gdy przy użyciu libx264jest to, że koder wymaga nawet wartości i skala może automatycznie wybrać wartość uzyskaną w dziwny błąd: width or height not divisible by 2. Możesz powiedzieć skali, aby wybrała parzystą wartość dla danej wysokości (720 w tym przykładzie):
scale="trunc(oh*a/2)*2:720"
... lub daną szerokość (1280 w tym przykładzie):
scale="1280:trunc(ow/a/2)*2"
Pamiętaj, że twoja kompilacja ffmpeg może narzekać na brak rozpoznawania -club -filteropcji. To również może nie obsługiwać scale. W takim przypadku powinieneś użyć nowszej wersji ffmpeg, którą możesz pobrać jako kompilację statyczną lub samodzielnie skompilować .
Próbowałem ffmpeg -i output.mkv -filter:v scale=720:-1 -acodec copy -threads 12 output_shrink.mkv(w wersji ffmpeg 0.8.6-6: 0.8.6-0ubuntu0.12.10.1), ale dostałem błądUnrecognized option 'filter:v'
doug65536 26.04.13
6
Po kilkukrotnym przejrzeniu strony podręcznika ffmpeg okazało się, że zamiast -filter:vtego opcja wydaje się być zmieniona na -vf.
doug65536,
2
@ doug65536 -filter:vi -vfoba są w porządku. Używana wersja Ubuntu jest zepsuta i nieaktualna - to nie jest tak naprawdę FFmpeg ffmpeg, ale plik binarny dostarczany przez Libav (rozwidlenie FFmpeg) pod tą samą nazwą.
slhck
1
@MightyPork prawdopodobnie twoja kompilacja ffmpeg jest nieaktualna - jakie problemy się zdarzają ?. W każdym razie pomogło mi to (z ffmpeg version 2.4.10) zmniejszyć rozmiar niektórych ogromnych filmów, aby zwolnić miejsce - dzięki!
Wilf
4
„-c” jest skrótem od -codec, „: a” określa strumień (strumienie) audio, „copy” określa kodek, który kopiuje strumień (w tym przypadku dźwięk) bez ponownego kodowania. Zasadniczo strumienie audio będą przechodzić. Jest to powszechne, gdy manipulujesz tylko strumieniem wideo.
jimhark
14
Używam następujących poleceń do przeskalowywania filmów i zdjęć. Dla stałej szerokości i wysokości -
ffmpeg
może być przestarzałe, patrz tu i tutajffmpeg
” widelców Libav, a nieffmpeg
FFmpeg, które powróciły w 15.04.Odpowiedzi:
Najbardziej podstawowym przykładem jest to:
Korzystanie z
scale
filtra zapewni większą elastyczność:-1
Powie ffmpeg aby automatycznie wybrać odpowiednią wysokość w stosunku do przewidzianej szerokości do zachowania proporcji.-1
można również użyć do szerokości, jeśli podasz określoną wysokość.Jednym minusem skali gdy przy użyciu
libx264
jest to, że koder wymaga nawet wartości i skala może automatycznie wybrać wartość uzyskaną w dziwny błąd:width or height not divisible by 2
. Możesz powiedzieć skali, aby wybrała parzystą wartość dla danej wysokości (720 w tym przykładzie):... lub daną szerokość (1280 w tym przykładzie):
Pamiętaj, że twoja kompilacja ffmpeg może narzekać na brak rozpoznawania
-c
lub-filter
opcji. To również może nie obsługiwaćscale
. W takim przypadku powinieneś użyć nowszej wersji ffmpeg, którą możesz pobrać jako kompilację statyczną lub samodzielnie skompilować .źródło
ffmpeg -i output.mkv -filter:v scale=720:-1 -acodec copy -threads 12 output_shrink.mkv
(w wersji ffmpeg 0.8.6-6: 0.8.6-0ubuntu0.12.10.1), ale dostałem błądUnrecognized option 'filter:v'
-filter:v
tego opcja wydaje się być zmieniona na-vf
.-filter:v
i-vf
oba są w porządku. Używana wersja Ubuntu jest zepsuta i nieaktualna - to nie jest tak naprawdę FFmpegffmpeg
, ale plik binarny dostarczany przez Libav (rozwidlenie FFmpeg) pod tą samą nazwą.ffmpeg version 2.4.10
) zmniejszyć rozmiar niektórych ogromnych filmów, aby zwolnić miejsce - dzięki!Używam następujących poleceń do przeskalowywania filmów i zdjęć. Dla stałej szerokości i wysokości -
a jeśli chcesz zachować proporcje, po prostu podaj wysokość jako -1, a automatycznie zmieni rozmiar w zależności od szerokości -
Jeśli chcesz skalować na podstawie wielkości wejściowej np. powiedzmy, zmniejsz szerokość / wysokość o połowę, co możesz zrobić-
UWAGA :
Kompilację statyczną można pobrać z - https://johnvansickle.com/ffmpeg/
Dokumentacja: https://ffmpeg.org/ffmpeg.html#filter_005foption
źródło