AviSynth Out of Memory Error (100s de superposições de imagem)

Quero sobrepor várias imagens no meu vídeo em momentos diferentes. Eu tenho a função do usuário definida como

function myFunction(clip c, int coordinateX, int from, int to) {
    c = c.trim(0, from-1) + c.trim(from, to).Overlay(myImage, x=coordinateX, y=667, mask=myImageMask, opacity=1) + c.trim(to+1, 0)
    return c
}

que essencialmente levamyImage imagem e colocá-lo em uma parte específica do clipe.

Eu chamo minha função como

video = video.myFunction(320, 1, 187)

e eu tenho muitos desses assim (estou tentando fazer algum tipo de animação com várias imagens)

video = video.myFunction(320, 1, 187)
video = video.myFunction(480, 1, 187)
video = video.myFunction(640, 1, 187)
video = video.myFunction(320, 187, 374)
video = video.myFunction(480, 187, 374)
video = video.myFunction(640, 187, 374)
video = video.myFunction(319, 374, 561)

e tudo funciona bem se houver menos de ~ 400 dessas chamadas. Se eu exceder esse limite, ocorre "falta de memória" (estou usando o VirtualDub).

Eu suponho que é porque o AviSynth deve processar todas as chamadas para descobrir a saída (emboraapenas ~ 3 desses 100s de chamadas estão relacionadasframe único específico). Se eu, no entanto, removervideo = no início da linha, eu poderia ter 10000 desses e não há nenhum erro "Out of Memory", mas é claro que eu não tenho saída de vídeo.

Existe uma solução para isso? Centenas / milhares de superposições de imagem em momentos diferentes no videoclipe?

questionAnswers(2)

yourAnswerToTheQuestion