이미지를 비디오로 변환하는 데 사용하고 있는데 avconv
그 안에 몇 가지 문제가 있습니다. 디렉토리에 수천 개의 이미지가 있고 이름이 지정되었으며 video_clip_0_0_0_0_0_0_0_0_09_0_102.jpeg
이미지는 특정 순서를 따르지 않았습니다. 때로는 마지막 필드에 100을 추가하고 때로는 103을 추가합니다(그러나 약 100을 추가해야 합니다). 명령을 사용하는 동안 avconv
:
- 임시 디렉터리를 만들어야 합니다.
- 모든 이미지를 해당 디렉터리에 복사합니다.
convert temp/*.jpeg -delay 10 -morph 10 temp/%05d.jpg.
avconv -f image2 -i temp/%05d.jpeg output.mkv
이 모든 작업에는 시간이 너무 많이 걸립니다. 나는 모든 일을 하고 싶지 않았고 임시 디렉토리를 만들지 않고 클립 이름을 바꾸지 않고 비디오를 만들고 싶었습니다. 편의를 위해 시간을 절약하기 위해서였습니다.
답변1
이미지가 포함된 avconv에서 비디오를 생성하려면 이미지가 순차적 순서로 되어 있어야 합니다. 그렇지 않으면 "라는 오류 메시지와 함께 실패합니다.IMG_%04d.JPG: 해당 파일이나 디렉터리가 없습니다."
이를 위해 아래 스크립트를 사용하여 파일 이름을 순차적으로 바꿀 수 있습니다
a=1
for i in *.JPG; do
new=$(printf "%04d.JPG" ${a}) #04 pad to length of 4
mv ${i} ${new}
let a=a+1
done
파일 이름을 바꾼 후. 동영상을 만들 수 있습니다. "를 사용하여 비디오 제작 시 가져올 수 있는 이미지 파일 범위를 지정할 수도 있습니다.-시작_번호"
참고: -start_number 옵션에는 최신 9.x 버전의 avconv가 필요합니다. 버전 0.8.x에는 없습니다. 또는 최신 버전의 ffmpeg를 사용할 수도 있습니다. 또는 기본적으로 해당 이름을 확인하므로 0에서 4 사이의 숫자로 시작하도록 파일 이름을 바꿉니다.