오디오 손실 인코딩(wav -> mp3)
ffmpeg -i [입력파일].wav [출력파일].mp3
품질 옵션
-ar 48000 : 고품질용.
-ar 44100 : CD 품질(여전히 높음).
-ar 22500 : 약간의 타협. 음악에는 권장되지 않지만 음성에는 충분할 수 있습니다.
-ar 8000 : 낮은 품질, 예를 들어 "이해할 수 있는" 음성만 원하는 경우.
채널 옵션
-ac 1 : 모노 용
-ac 2 : 스테레오 용
-ac 6 : 5.1의 경우
오디오 무손실 인코딩(wav -> flac)
ffmpeg -i [입력파일].wav -compression_level 12 [출력파일].flac
채널 옵션
-compression_level 0 : 빠르고 조금 압축
-compression_level 5 : 기본값
-compression_level 12 : 느리고 많이 압축
비디오 파일 인코딩(H.264)
ffmpeg -y -i [입력파일].mp4 \
-c:v libx264 -preset slow -crf 22 \
-profile:v main -g 250 -pix_fmt yuv420p \
-map 0:0 -map 0:1 \
-acodec aac -ar 44100 -b:a 320k [출력파일].mov
비디오 파일 인코딩(H.265)
ffmpeg -y -i bbb_sunflower_1080p_60fps_normal.mp4 \
-c:v libx265 -preset slow -crf 27 \
-profile:v main -g 250 -pix_fmt yuv420p \
-map 0:0 -map 0:1 \
-acodec aac -ar 44100 -b:a 320k bbb_transcoded_h265_HQ.mov
파일 자르기
# 시작시간 ~
ffmpeg -y -ss [시작시간]] -i [입력파일]].mp4 [출력파일]].mp4
# 시작시간 ~ 시작시간+기간
ffmpeg -y -ss [시작시간]] -t [기간] -i [입력파일]].mp4 [출력파일]].mp4
# 시작시간 ~ 종료시간
ffmpeg -y -ss [시작시간]] -to [종료시시간] -i [입력파일]].mp4 [출력파일]].mp4
# 시간, 기간 포맷: 초(s) 또는 00:00:00.00
-c:v copy : 인코딩 없이 비디오 코덱 복사
-c:a copy : 인코딩 없이 오디오 코덱 복사
그냥 복사 붙여넣기 해서 쓸 용도로 살짝 정리 해보았다
이마저도 귀찮거나 좀 더 고도화를 원한다면 공식 문서에서 가장 설명이 잘 되어 있으나..
명령어나 옵션이 너무 많아서 뭘 해야 될지 모르는 상황이 온다
그리하여 아래 사이트를 추천한다
추천1. FFMPEG BUDDY
간단한 조작이 가능하면서 헷갈릴 일 없이 사용하기 좋다
https://evanhahn.github.io/ffmpeg-buddy/
추천2. FFMPEG GUIDE
시각화 해주고 마우스로도 조작이 가능한 솔루션.. 고도화 할때 쓰기 좋은 서비스
추천3. 궁극의 FFMPEG 가이드(?)
https://img.ly/blog/ultimate-guide-to-ffmpeg/
블로그글인데 굉장히 설명이 체계적으로 잘 되어 있다
후기
대부분의 인코더들이 내부적으로 ffmpeg를 호출하기 때문에 인코딩에 그냥 터미널에서 명령어 쳐서 쓰는게 좋다
FFMPEG는 간단한 CLI 명령어만 알아두어도 갖다 쓸데가 많다
영상쪽이 워낙 수요가 많고 오픈소스다보니 딥하게 파고 들면 써먹을 데도 많지만
예전 팀장님이 소스까보고 스트리밍 서비스 만들라고 시켰다가 몇달 삽질만 하다 gg를 친 아픈 추억이..
'일' 카테고리의 다른 글
채널톡 스크립트 boot 401 오류 (4) | 2023.01.05 |
---|---|
이벤트 즉석 상품 당첨 로직 개발하기 (0) | 2023.01.03 |
CSS Framework for Minimalist (0) | 2022.10.31 |
멜론에 플레이리스트 자동으로 추가하기 (1) | 2022.09.28 |
블루투스는 음질을 저하시킬까? (4) | 2022.09.19 |