FFmpeg를 사용하여 비디오 크기를 작게 만드는 방법


101

FFmpeg를 사용하여 비디오 크기를 작게 만들 수 있습니까?

원본 비디오 크기가 1024x576이며 이제 요구 사항에 맞게 비디오 크기를 720x480으로 조정하려고합니다.

어떻게해야합니까?


ffmpeg더 이상 사용되지 않을 수 있습니다. 여기 와 여기를
— natty에 관한 nutty

13
@nuttyaboutnatty "더 이상 사용되지 않는"메시지 는 15.04에 반환 된 FFmpeg가 ffmpeg아닌 Libav 포크 의 오래된 "죽은 가짜" " 에만 적용 ffmpeg되었습니다.
— llogan

답변:


163

가장 기본적인 예는 다음과 같습니다.

ffmpeg -i input.avi -s 720x480 -c:a copy output.mkv

필터 를 사용 하면scale 유연성이 향상됩니다.

ffmpeg -i input.avi -filter:v scale=720:-1 -c:a copy output.mkv

는 -1자동으로 가로 세로 비율을 유지하기 위해 제공되는 폭과 관련하여 정확한 높이를 선택할 수는 FFmpeg을 말할 것이다. -1주어진 높이를 제공하면 너비에도 사용할 수 있습니다.


사용시 스케일의 한 가지 단점은 libx264이 인코더가 짝수 값을 요구하고 스케일이 자동으로 홀수 값을 선택하여 오류가 발생할 수 있다는 것 width or height not divisible by 2입니다. 주어진 높이에 대해 짝수 값을 선택하도록 스케일에 지시 할 수 있습니다 (이 예에서는 720).

scale="trunc(oh*a/2)*2:720"

... 또는 주어진 너비 (이 예에서는 1280) :

scale="1280:trunc(ow/a/2)*2"

ffmpeg 빌드는 인식하지 못 -c하거나 -filter옵션 에 대해 불평 할 수 있습니다. 또한 지원하지 않을 수 있습니다 scale. 이 경우 정적 빌드로 다운로드 하거나 직접 컴파일 할 수 있는 최신 ffmpeg를 사용해야합니다 .


1
나는 ffmpeg -i output.mkv -filter:v scale=720:-1 -acodec copy -threads 12 output_shrink.mkv(ffmpeg 버전 0.8.6-6 : 0.8.6-0ubuntu0.12.10.1에서) 시도했지만 오류가 발생했습니다Unrecognized option 'filter:v'
— doug65536

6
ffmpeg에 대한 매뉴얼 페이지를 여러 번 파고 들자. 대신에 -filter:v옵션이 (으)로 변경된 것으로 나타났습니다 -vf.
— doug65536

2
@ doug65536 -filter:v그리고 -vf둘 다 괜찮습니다. 사용하고있는 우분투 버전은 깨졌고 구식입니다. 실제로 FFmpeg는 ffmpeg아니지만 Libav (FFmpeg 포크)가 같은 이름으로 제공 한 바이너리입니다.
— slhck

1
@MightyPork 아마도 ffmpeg 빌드가 오래되었습니다-어떤 문제가 발생합니까?. 어쨌든 이것은 ffmpeg version 2.4.10공간을 확보하기 위해 거대한 비디오의 크기를 줄이는 데 정말로 도움이되었습니다 .
— Wilf

4
'-c'는 -codec의 약자이며, ': a'는 오디오 스트림을 지정하고, 'copy'는 재 코딩없이 스트림 (이 경우 오디오)을 복사하는 복사 코덱을 지정합니다. 기본적으로 오디오 스트림이 통과합니다. 비디오 스트림 만 조작 할 때 일반적입니다.
— jimhark

14

다음 명령을 사용하여 비디오 및 이미지의 크기를 조정합니다. 고정 너비와 높이의 경우-

ffmpeg -i input.avi -vf scale="720:480" output.avi

가로 세로 비율을 유지하려면 높이를 -1로 지정하면 너비에 따라 자동으로 크기가 조정됩니다-

ffmpeg -i input.avi -vf scale="720:-1" output.avi

입력 크기를 기준으로 스케일링하려는 경우 (예 : Eg.) 너비 / 높이를 절반으로 줄이십시오.

ffmpeg -i input.avi -vf scale="iw/1:ih/2" output.avi

노트 :

iw : input width
ih : input height

정적 빌드는 https://johnvansickle.com/ffmpeg/ 에서 다운로드 할 수 있습니다.

설명서 : https://ffmpeg.org/ffmpeg.html#filter_005foption


작동 안함. handler_name에 붙어 : 사운드 핸들
— Rushi M Thakker

이 명령으로 끔찍한 비디오 품질을 얻었습니다. avi가 아닌 output.mp4를 만들면 훨씬 좋습니다. 따라서 확장이 중요합니다.
— sekrett
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.