2009-08-21 2 views
0

많은 수의 파일을 처리하고 싶습니다. youtube와 같은 비디오 트랜스 코딩을 생각해보십시오. 모든 것을 FLV 형식으로 변환하거나 대형 RAW 파일에서 엄지 손가락을 만드는 이미지 처리가 필요합니다.많은 수의 파일을 처리하고 있습니까? 라이브러리 나 유틸리티가 도움이됩니까?

이러한 처리에 도움이되는 서비스 또는 라이브러리가 있습니까? 나는 실제 코드 변환을 의미하는 것이 아니라, 정리, 작업 시작, 모니터링 및 오류 처리를 어떻게 든합니다.

Windows에서 이상적이지만 Linux에서도 문제가 없습니다.

업데이트 : 유틸리티/lib가 높은 수준에서 이러한 작업을 처리하기를 바랍니다. 여러 프로세스를 보내고 어떻게 든 실패를 처리하고보고하십시오.

따라서 트랜스 코딩의 경우에는 해당 lib/유틸리티에서 트랜스 코드 할 파일 목록을 얻고 싶습니다. 그런 다음 여러 번에 트랜스 코딩 시작을 처리 할 것입니다. 스레드/프로세스. 작업을 성공적으로 완료하면 수행 할 작업을 정의 할 수 있습니다. 그리고 실패한 경우에도이 작업을 수행 할 수 있습니다.

답변

0

명령 셸 (Windows의 명령 프롬프트, Unix의 sh/bash/csh 등) 및 스크립팅 언어는 모두 일부 패턴과 일치하는 모든 파일에 대해 동일한 작업을 쉽게 수행 할 수 있습니다. 예를 들어

, 그래서 이후 Windows 2000 또는에서 :

for %f in (*.jpg) do ...

명령 프롬프트에서 for 도움을 얻으려면 (예를 들어 전화 ImageMagick과의 변환은 썸네일을 생성) 할 for /?

병렬 처리를 활용하려는 경우 6 개의 CPU 코어를 모두 활용할 수 있도록 한 번에 6 개씩 스핀 오프하면 Windows에서도 사용할 수있는 유닉스 'make'프로그램을 사용할 수 있습니다. 원하는 것을 지정하는 Makefile을 만들어야하고 --jobs switch을 사용하여 make를 실행해야합니다.

병렬 처리의 make 방식 대신 스크립팅 언어를 사용하는 것이 좋습니다. 많은 스크립트 언어가 한 번에 여러 하위 프로세스 실행을 쉽게 지원합니다. 파이썬의 Popen().

0

이 작업을 수행하려는 경우 들어오는 파일의 디렉터리를보고 해당 파일 형식을 기반으로 http://ffmpeg.org/ 같은 비디오 파일을 출력 디렉터리 나 이미지로 변환하는 .NET 프로그램을 만듭니다. ImageMagick과 같은 것입니다.

프로세스를 모니터링하려면 사용자가 만든 셸 작업을 주시하거나 적어도 출력 디렉터리에서 생성되기를 기대하는 파일을 확인해야합니다. .

관련 문제