Web/Nginx

ffmpeg 옵션 정리

park_juyoung 2019. 1. 3. 15:50


정리된 글이 없어 직접 정리함.


1
ffmpeg -i 입력파일명 ... 출력파일명
cs


-i 옵션으로 지정된 임의의 수의 "파일"(일반 파일, 파이프, 네트워크 스트림 등등)을 읽고 임의의 파일에 기록.


ex) 출력 파일의 비디오 비트율을 64 kbit/s로 설정


ffmpeg -i input.avi -b:v 64k -bufsize 64k output.avi


ex) 출력 파일의 프레임 속도를 24fps로 강제 설정


ffmpeg -i input.avi -r 24 output.avi


 ex) 입력 파일의 프레임 속도를 1fps로 출력 파일의 프레임 속도를 24fps로 설정


ffmpeg -r 1 -i input.m2v -r 24 output.avi


-y (global)

묻지 않고 출력 파일을 덮어씀.


-n (global)

출력 파일을 겹쳐 쓰지 않고 지정된 출력 파일이 이미 있으면 즉시 종료.


-stream_loop number (input)

입력 스트림을 반복 할 횟수를 설정. 루프 0은 루프가 없음을 의미하고 루프 -1은 무한 루프를 의미.


-c[:stream_specifiercodec (input/output,per-stream)
-codec[:stream_specifiercodec (input/output,per-stream)

하나 이상의 스트림에 대해 각각에 대해 인코딩을 할 수 있음.

ex) 

ffmpeg -i INPUT -map 0 -c:v libx264 -c:a copy OUTPUT

 모든 비디오 스트림을 libx264로 인코딩 하고 모든 오디오 스트림을 복사.


ex)

ffmpeg -i INPUT -map 0 -c copy -c:v:1 libx264 -c:a:137 libvorbis OUTPUT

각 스트림에 대해 마지막으로 일치하는 c옵션이 적용되는 예시.


libx264로 인코딩 될 두번째 비디오와 libvorbis로 인코딩되는 138번째 오디오를 제외한 모든 스트림을 복사.


-t duration (input/output)

입력옵션(-i 옵션 이전)으로 사용 되는 경우 입력파일에서 읽는 데이터의 기간을 제한.


출력 옵션(출력 URL 이전에 선언)으로 사용되면 duration에 도달 한후 출력 쓰기를 중지.


-fs limit_size (output)

파일 크기 제한을 바이트 단위로 설정. 설정한 사이즈를 초과 한 후에는 더 이상 기록되지 않음.


-ss position (input/output)

입력 옵션(-i 이전)으로 사용되면 입력 파일에서 위치를 찾음.


출력 옵션으로 사용되면 지정한 위치까지 출력을 삭제.


-vframes number (output)

출력 할 비디오 프레임 수를 설정.


-vn (output)

비디오 녹화를 비활성화.


-vcodec codec (output)

비디오 코덱을 설정. -codec:v 와 같음.


-aframes number (output)

출력 할 오디오 프레임 수를 설정. -frames:a와 같음.


-an (output)

오디오 녹화를 비활성화.


'Web > Nginx' 카테고리의 다른 글

[Nginx] RTMP module 설치 및 설정  (1) 2019.01.03
RTMP란?  (0) 2019.01.03