2012-09-11 3 views
5

avconv를 사용하여 일련의 jpg 파일에 애니메이션을 적용하려고합니다. 수많은 예제를 바탕으로, % d.jpg를 사용하여 파일을 지정하려고합니다. 또는 % 05d.jpg. 그러나, 나는 점점 해요 : 여기 순차 이미지 용 와일드 카드

avconv -i %d.jpg a.avi 
avconv version 0.8.3-4:0.8.3-0ubuntu0.12.04.1, Copyright (c) 2000-2012 the Libav developers built on Jun 12 2012 16:37:58 with gcc 4.6.3 
%d.jpg: No such file or directory 

내 디렉토리 목록의 싹둑입니다 :

10380.jpg 
10390.jpg 
10400.jpg 
1040.jpg 
10410.jpg 
10420.jpg 
10430.jpg 
10440.jpg 

정말하지 14400.jpg하는 00000.jpg에서 사진과가 있습니다 그 와일드 카드 시스템을 이해해야하지만 그것은 예제에 있습니다.

(참고 : 나는 avconv에 대한 태그가 존재하지 않기 때문에이는 FFmpeg 및 avconv이는 FFmpeg를 대체 태그)

업데이트 내가 @ av501에 의해 아래의 답변에 따라 질문을 업데이트하고 있습니다.

처음에는 10 개의 순차 정렬이있는 png 파일 목록이 있습니다. 5 자리 정수 앞에 텍스트가 있습니다. 예 :

SkinMattekNutrient_py_00000.png 
SkinMattekNutrient_py_00010.png 
SkinMattekNutrient_py_00020.png 
... 
SkinMattekNutrient_py_10440.png 

일괄 처리로 변환하는 방법은 무엇입니까? 나는

convert ... 
SkinMattekNutrient_py_%05d.png %05d.jpg 

convert ... 
SkinMattekNutrient_py_%5d.png %5d.jpg 

을 시도하지만 수 :

convert SkinMattekNutrient_py_%05d.png %05d.jpg 
convert: missing an image filename `%05d.jpg' @ error/convert.c/ConvertImageCommand/3011. 

답변

4

당신은 당신의 파일 %의 5D를 사용해야합니다. 하지만 두 가지 문제가있는 것 같습니다.

% 5d에서 작동하려면 5 자리 번호가 있어야합니다. [당신은 1040.jpg]를 연속으로 가지고 있습니다. 00000.jpg 다음 00001.jpg. 그들 모두가 10의 배수 인 경우 파일 이름은 다음 %의 d50.jpg을 사용할 수 있습니다, 10

으로 점프 할 것 [그러나 당신은 여전히 ​​당신의 1040.jpg 수정해야] 그렇지 않으면 명령을

을 라인은 여기서 일하는 [I이는 FFmpeg을 사용하고 -i % 5d.jpg out.avi과는 FFmpeg -i % 5d0.jpg out.avi]

+0

간단하게 만들기 위해 질문을 업데이트했습니다. 간단히 png 파일을 jpg로 변환하는 것이 었습니다. 와일드 카드 시스템을 제대로 사용하는 방법을 아직 알 수 없습니다. 검색을 시도했지만 설명을 찾을 수 없습니다. 올바른 구문은 무엇입니까? 감사. – abalter

+0

convert는 다른 유틸리티입니다, 맞습니까? ffmpeg는 다른 것입니다. 내가 ffmpeg를 사용하고 그것을 잘하고 여기에 잘 작동합니다. – av501

+0

어떤 프로그램을 사용하든 관계없이 파일 오류를 찾을 수 없습니다. 내 시스템에 어떤 문제가 있는지 궁금하네요? 내가 찾은 모든 사례는 똑같은 것을 보여줍니다. – abalter

4

여기 bash 쉘에서 일괄 변환 이미지 파일을 하나 개의 방법 :

for f in *.png; do ffmpeg -i "$f" "${f%.png}.jpg"; done 

이 기술은 입력 및 출력 파일을 구분하여 나열해야하는 모든 명령에서 작동 할 것으로 생각합니다. ately. 귀하의 경우에는 다음과 같습니다 :

for f in *.png; do convert "$f" "${f%.png}.jpg"; done