2014-01-29 6 views
6

Avisynth를 통해 각각 실행하고 싶은 개별 파일이 있습니다. 그러나 AVS 파일은 하나의 비디오 만 만들 수 있습니다. 내가 아는 한 명령 행에서 변수의 값을 선언 할 방법이 없습니다.Avisynth로 여러 개의 동영상 만들기

아마 AVS 파일 묶음을 생성 한 다음 각 AVS 파일을 비디오로 변환하는 스크립트를 만들 수 있습니다. 그러나 Avisynth는 스크립팅 시스템이기 때문에 다소 복잡해 보입니다. 스크립트를 통해 다른 동영상을 실행하는 방법이 있어야합니다. 맞습니까?

가장 좋은 방법은 무엇입니까? 미리 감사드립니다.

답변

3

AVS 스크립트에 직접 명령 줄 매개 변수를 전달하는 방법을 찾지 못했습니다. 작동 중에 스크립트를 생성하는 것이 유일한 방법입니다.

나는 이것이 당신이 찾고있는 대답하지 알고 - 생성하는 스크립트 그럼에도 불구하고 두 가지 방법 :

템플릿 스크립트

만 변경 매개 변수이고 나는 AVS 스크립트가있을 때 나는 이것을 사용 소스 입력 파일.

소스 비디오의 전체 경로가 포함 된 변수 (v)를 예상하는 스크립트 template.avs가 있습니다. 이 날 단순히 배치에 여러 소스 비디오를 앤 드롭을 드래그 할 수 있습니다

@echo off 
if "%1" == "" (
    echo No input video found 
    pause 
    GOTO :EOF 
) 
set pth=%~dp0 

:loop 
IF "%1"=="" GOTO :EOF 

echo v="%1">"%pth%_tmp.avs" 
type "%pth%template.avs">>"%pth%_tmp.avs" 

:: Do whatever you want with the script 
:: I use virtualdub... 
"%vdub%" /i "%pth%Template.vdscript" "%pth%_tmp.avs" 

del "%pth%_tmp" 

SHIFT 
GOTO loop 

: 배치 스크립트는 단순히 이와 유사한 각 비디오 파일의 변수를 사용하여 라인을 앞에 추가합니다.

가져 오기

Import 명령을 사용하면, 자신의 스크립트에 모든 변수 선언을 구체화 할 수 있습니다.

Import("variables.avs") 

이것은 템플릿 AVS 스크립트가 여러 변수를 필요로 할 때 유용합니다.

+0

고마워, 나는 이것과 비슷한 것을하기 위해 파이썬 스크립트를 작성했다. –

+0

기본 avisynth 스크립트의 모든 기능에서 사용되는 경우 전역 변수를 선언하는 것을 잊지 마십시오. – NeronLeVelu