## ConditionalReader

`ConditionalReader` (clip, string filename, string variablename, bool "show")

`ConditionalReader permite importar informação de um arquivo de texto, com valores diferentes para cada` quadro`- ou uma gama de` quadro `s.`

### Parâmetros

Parâmetro | Descrição | Padrão
clip | O clipe que entra. Não é tocado, a menos que você especifique show=true. | Não opcional
filename | O arquivo com as variáveis para você fixar. | Não opcional
variablename | O nome da variável com a informação inserida. | Não opcional
show | Quando fixado em true, o valor dado a este quadro será sopreposto na imagem. | false

### Formato do arquivo

O arquivo é puro texto. Toda a separação é feita por espaços e outra linha indica um novo jogo de dados. Não é caso sensitivo!
TYPE (int|float|bool)

Você pode ter um só tipo de dados em cada arquivo. Atualmente é possível ter valores float, int ou bool. Você especifica isso usando a palavra chave TYPE. E deve sempre iniciar especificando o tipo de dados, como nada é salvo até que esta palavra chave tenha sido encontrada. Não é possível mudar type uma vez fixo!

DEFAULT <value>

Isto especifica o valor padrão de todos os quadro `s`. Você deve fazer isso direito, depois de especificar o tipo, como sobreescrever todos os quadro `s` definidos. Você pode omitir esta colocação, mas deve estar seguro em especificar uma colocação para todos os quadro `s`, porque em caso contrário conduzirá a resultados inesperados.

<framenumber> <value>

Isto fixa o valor só para quadro <framenumber>.

R <startframe> <endframe> <value>

Você deve notar que start E end-frame estão incluídos

I <startframe> <endframe> <startvalue> <stopvalue>

Isto interpolará entre dois valores em cima de uma gama de quadro `s`. Isto só trabalha em valores inteiros e flutuantes. Você deve notar que start E end-frame estão incluídos

### Tipos

Como mencionado, os tipos podem ser qualquer um float, int or bool.
Número Int é um número opcionalmente precedido de um sinal.
Float é um número decimal que contém um ponto decimal, opcionalmente precedido por um sinal e opcionalmente seguido pelo caractere e ou E e um número decimal. Entradas válidas: -732.103 ou 7.12e4.
Bool pode ser true ou false.

### Exemplos

#### Uso básico

File.txt:

    Type float
    Default 3.45567

    R 45 300 76.5654
    2 -671.454
    72 -671.454

O arquivo acima retornará valores float. Por padrão retorna 3.45567. Porém os quadro `s` 45 a 300 retornarão 76.5654. E quadro `s` 2 e 72 retornarão -671.454.
Como você pode notar - mudanças posteriores predominam colocações feitas antes no arquivo. Isto é ilustrado através do quadro '72' - embora esteja dentro da gama de 45-300, o valor posterior será devolvido. Por outro lado - se a gama fosse especificada DEPOIS '72 -671.454' - retornaria 76.5654.
Um escrito para invocar este arquivo pode ser:

    colorbars(512,512)
    trim(0,500)
    ScriptClip("subtitle(string(myvar))")
    ConditionalReader("file.txt", "myvar", false)

Isto coloca os valores na variável chamada "myvar" que é usada por Subtitle invocada por ScriptClip para exibir o valor condicional.

#### Ajustando Overlay

AviSynth script:

    colorbars(512,256)
    a1 = trim(0,600)
    a2 = MessageClip("Text clip")
    overlay(a1,a2, y = 100, x = 110, mode="subtract", opacity=0, pc_range=true)
    ConditionalReader("opacity.txt", "ol_opacity_offset", false)
    ConditionalReader("xoffset.txt", "ol_x_offset", false)

xoffset.txt:

    Type int
    Default -50

    I 25 50 -50 100
    R 50 250 100
    I 250 275 100 250

opacity.txt:

    Type float
    Default 0.0

    I 25 50 0.0 1.0
    R 50 250 1.0
    I 250 275 1.0 0.0

Basicamente define keyframes para um x-offset e opacidade. Nos quadros 25->50 a opacidade é escalada de 0.0 a 1.0, enquanto o texto está se movendo da esquerda para a direita. O texto então é mantido firme do quadro 50 a 250, onde depois avança para a direita, desvanecendo. O mais fácil é assistir o clipe acima que descreve tudo o que faz.

`$Date: 2006/03/26 18:11:19 $ Portuguese translation by RoLon`