※ 본 포스팅은 mac환경을 기반으로 작성되었습니다.

 

[ pwd ]

print working directory

현재 위치한 폴더를 출력해 줍니다.

 

$ options

-L (logical) : 심볼릭 링크가 포함된 경우에 사용

-P (physical) : 모든 심볼릭 링크를 필할때 사용

심볼릭 링크에 대해서는 추후 포스팅 하도록 하겠습니다.

pwd
pwd -L
pwd -P

 

[ cd ]

change directory

경로를 이동할때 사용합니다.

GUI가 있다면 폴더를 클릭해서 이동을 할 수 있지만 커맨드라인 인터페이스를 가지고있는 Linux의 경우 cd명령어를 통해 directory를 이동할 수 있습니다.

절대 경로와 상대 경로모두 사용이 가능하며, 최상위 directory로 이동시에는 cd만 입력을 해주면 됩니다.

 

$options

- : 전에 작업중이던 directory로 이동이 가능하며 현재 directory와 이전 directory를 왕복해야한다면 -를 붙혀서 편하게 옮겨갈 수 있다.

cd ../
cd /Users/kade/Desktop

cd -

 

[ ls ]

list

현재 위치한 directory내부의 파일과 폴더목록을 확인할 수 있는 명령어 입니다.

파일의 권한과 같은 자세한 내용을 확인할때도 사용하는 명령어기 때문에 알아두면 유용하게 쓰일거에요!

 

$options

-a (all) : 숨겨진 file 혹은 directory까지 출력

-l (long) : 자세한 내용을 출력

권한, 포함된 파일 수, 소유자, 그룹, 파일 크기, 수정일자, 파일이름

-S (size) :  파일 크기 순으로 정렬해서 출력

-r (revers) : 알파벳의 역순으로 정렬 후 출력

-R (recursive) : 하위 directory까지 출력

-h (human) : 파일 크기를 k, m, g단위를 사용해서 출력

-lu (atime) : 접근 시간 출력

-lc (ctime) : 수정 시간 출력

ls
ls -a
ls -l
ls -lS
ls -r
ls -R
ls -lh
ls -lu
ls -lc

 

[ cat ]

concatenate

파일을 열어서 확인해 볼 수 있는 명령어 입니다.

txt같은 파일의 경우 정상적으로 잘 출력이 되지만 이미지등 멀티미디어 파일은 문자로 인코딩되서 알아볼 수 없는 상태로 나오게 됩니다.

cat /Users/kade/Desktop/test.txt
cat /Users/kade/Desktop/test.jpg

 

[ mkdir ]

make directory

directory를 생성할 수 있는 명령어 입니다.

mkdir hello
mkdir /Users/kade/Desktop/hello

 

[ rm ]

remove

파일을 삭제할 수 있는 명령어 입니다.

폴더를 삭제해야될 경우 -r옵션을 붙혀줘야 삭제가 가능합니다.

rm test.txt
rm -r hello

* 본 포스팅은 맥을 기반으로 작성했습니다.

 

[ ffmpeg설치 ]

먼저 ffmpeg을 사용하기 위해 설치를 해야 됩니다.

사용 중인 쉘을 열고

brew install ffmpeg

위의 명령어만 입력해주면 완료됩니다.

 

[ 사용 ]

먼저 여러 개의 이미지의 길이를 정해주기 위해 init.txt 파일을 생성 후 아래와 같이 작성을 해줍니다.

주의할 점은 마지막 파일의 duration을 적어주고 duration을 적지 않은 상태로 한번 더 적어줘야 동작이 오류 없이 처리됩니다.

file '/path/1.jpg'
duration 3
file '/path/2.jpg'
duration 1
file '/path/2.jpg'

 

경로와 이미지별 시간에 대한 설정 파일 작성이 끝난 후 아래와 같이 코드를 작성해 줍니다.

ffmpeg -f concat -safe 0 -i [경로 및 시간설정 파일] -vsync vfr -t 6 -pix_fmt yuv420p [출력 파일]
ffmpeg -f concat -safe 0 -i init.txt -vsync vfr -t 6 -pix_fmt yuv420p output.mp4

-safe명령어를 삭제할 경우 init이라는 파일명이 안전하지 않다는 오류를 만나볼 수 있습니다.

 

이펙트 비디오 파일이 필요한 경우 오버레이 기능을 통해 덮어씌워 줍니다.

ffmpeg -i [원본 파일 명] -i [중첩할 파일 명] -filter_complex "overlay=0:0" -c:a copy [출력 파일 명]
ffmpeg -i output.mp4 -i effect.mov -filter_complex "overlay=0:0" -c:a copy final.mp4

"overlay=0:0"의 경우 두 영상의 사이즈가 같을 경우 xy좌표 0,0에 왼쪽 상단이 위치하게 됩니다.

 

마지막으로 소리를 추가해 줍니다.

ffmpeg -i [영상 파일 명] -i [음악 파일 명] -c:v copy -c:a aac -strict experimental -map 0:v:0 -map 1:a:0 -shortest [출력 파일 명]
ffmpeg -i noSound.mp4 -i music.mp3 -c:v copy -c:a aac -strict experimental -map 0:v:0 -map 1:a:0 -shortest output.mp4

최종 출력 결과물을 확인할 수 있습니다.

+ Recent posts