VSFilter (TextSub & VobSub)
Abstrato
autor: Gabest
versão: 2.32
download: Projeto:
guliverkli
categoria: Plugins de Subtítulo (fonte)
requisitos:
Descrição
Os formatos dos subtítulos podem ser *.sub,
*.srt, *.ssa, *.ass, etc. (ssa = Sub Station
Alpha).
sintaxe: TextSub("C:\My Folder\MY subFile.XXX") ou VobSub("C:\My Folder\MY subFile.XXX")
exemplos:
mpeg2source("F:\From_hell\from_hell.d2v")
VobSub("F:\From_hell\VTS_01_0.sub")
mpeg2source("F:\From_hell\from_hell.d2v")
TextSub("F:\From_hell\fh_ned.srt")
bug: Você verá um retângulo pequeno onde os
substitutos são postos (se olhar de perto). Mais info pode ser achada aqui.
observação: O pacote contém duas dll. O lançamento Unicode
pode ser usado com W2k ou mais alto, o outro é para usuários do W98 (W98 não
suporta unicode nativo).
Mais informação (por Ernst Peché)
SubRip
Os subtítulos são salvos em um DVD como
pequenos quadros, não como texto - mas o filtro TextSub precisa de um arquivo
de texto. Eles são todos armazenados no arquivo VOB, cada idioma com um fluxo
separado e primeiro você tem que selecionar o fluxo desejado.
Então você converte estes quadros em texto
claro com o OCR (reconhecimento de caráter óptico) desta ferramenta. Você tem
que ensinar uma vez ao programa cada caractere (você pode salvar estes mapas
para uso posterior) - trabalha realmente bem e você não gastará muito tempo.
Há muitos formatos de subtítulo, mas a maioria
não contém informação do formato. Assim é uma boa escolha usar o formato
"SSA", que contém o formato no arquivo também.
VSFilter.DLL
Isto contém a função TextSub do
AviSynth que basicamente pega um arquivo de texto como entrada e pinta os subtítulos
desse arquivo no clipe de vídeo. Tem a seguinte sintaxe, bastante simples:
TextSub ("path\filename.ext"[charset [, fps]])
Então
você só escreve
TextSub ("your_file.ssa")
Além de SSA (Sub Station Alpha) TextSub pode
tratar com SRT (SubRip), SUBSTITUTO (MicroDVD), PSB (PowerDivx), SMI (SAMI), ASS
(Advanced Substation Alpha.
Para ativar o estilo padrão você pode usar um
segundo arquivo nomeado por exemplo " your_file.ssa.style " (o
primeiro arquivo + ".style") que deve estar na sintaxe SSA ou ASS e
contém só informação de formato (só tem sentido ao não usar SSA/ASS).
A maioria dos comandos SSA é ignorada, pois eles
não são realmente úteis aqui.
SubResync
Se você quer ajustar o formato de seus subtítulos
(cor, posição e assim por diante), pode fazer isso com esta ferramenta - claro
que você pode editar o arquivo SSA se souber a sintaxe.
Sintaxe SSA
Se você quer fixar o formato
manualmente, aqui está a sintaxe SSA básica.
Você tem que obedecer estritamente
a sintaxe e a linha ou o arquivo inteiro será rejeitado.
Essas
entradas que definitivamente são usadas por TextSub são escritas em negrito.
Uma linha começa com um ";" (ponto-e-vírgula)
é tratado como uma linha de comentário.
Cada linha começa com um descritor de linha que
descreve o tipo de entrada.
Primeiro um pequeno exemplo:
[Script Info]
; Este é um escrito Sub Station Alpha v4.
;
ScriptType: v4.00
Collisions: Normal
PlayResX: 720
PlayResY: 576
Timer: 100.0000
[V4 Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, BorderStyle, Outline,
\ Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding
Style: Style1,Arial,32,&Hffffff,&H000000,&H404040,&H404040,0,0,1,2,0,2,30,30,40,0,0
Style: Default,Arial,18,&Hffffff,&H00ffff,&H000000,&H000000,-1,0,1,2,3,2,20,20,20,0,1
[Events]
Format: Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: Marked=0,0:02:12.69,0:02:13.92,Style1,Comment,0000,0000,0000,,São Francisco, 1876
Dialogue: Marked=0,0:07:23.37,0:07:24.96,Style1,Comment,0000,0000,0000,,Ele é impertinente.
Dialogue: Marked=0,0:07:25.13,0:07:28.28,Style1,Comment,0000,0000,0000,,O país de simples pessoas mesquinhas.
Há (tipicamente três) seções no arquivo:
Script Info
- (Informação do Escrito)
Esta seção contém cabeçalhos e informações
gerais sobre o escrito.
A
linha que diz "[Script Info]" deve ser a primeira linha em um escrito
na v4.
- Script Type: Tipo de escrito - este é o formato
do escrito SSA versão "V4.00". É usado por SSA para avisar se
você estiver usando uma versão de SSA mais velha que a versão que criou o
escrito. A versão ASS é "V4.00+".
- Collisions: Colisões - isto determina como são
movidos os subtítulos, quando prevenindo automaticamente colisões em tela.
Se a entrada diz "Normal" então SSA tentará posicionar os subtítulos
na posição especificada pelas "margens". Porém, os subtítulos
podem ser trocados verticalmente para prevenir colisões na tela. Com prevenção
"normal" de colisão, os subtítulos "empilharão" um em
cima do outro - mas eles sempre serão posicionados o mais perto da margem
vertical (fundo) quanto possível - preenchendo "lacunas" em
outros subtítulos se está disponível um grande o bastante. Se a entrada diz "Reverse" (contrário),
os subtítulos serão trocados de baixo para cima para abrir espaço para
subtítulos sobrepostos subseqüentes. Isso significa que os subtítulos
podem ser lidos sempre de cima para baixo - mas também significa que o
primeiro subtítulo pode aparecer na parte de cima da tela antes que os subtítulos
sobrepostos subseqüentes apareça. Pode usar muita área da tela.
- PlayResY: Esta é a altura da tela usada.
- PlayResX: Esta é a largura da tela usada.
Esta entrada é definitivamente usada e escala o
texto resultante.
- Timer: Cronômetro - esta é a Velocidade do Cronômetro
para o escrito, como uma porcentagem. Esta entrada parece não ser usada,
ex. "100.0000" é exatamente 100%. Tem quatro dígitos que seguem
o ponto decimal. A velocidade do cronômetro é um multiplicador de tempo
aplicado ao relógio do SSA para esticar ou comprimir a duração de um
escrito. Uma velocidade maior que 100% reduzirá a duração global e
significa que os subtítulos aparecerão progressivamente cada vez mais
cedo. Uma velocidade menor que 100% aumentará a duração global do escrito
significando que os subtítulos aparecerão progressivamente depois e depois
(como um tempo de rampa positivo). O alongar ou o comprimir só acontece
durante o playback do escrito - este valor não muda a cronometragem atual
para cada evento listado no escrito. Confira o guia do usuário SSA se
quiser saber por que "Velocidade de Cronômetro" é mais poderosa
que "Tempo de Rampa",
embora ambos alcançam o mesmo resultado.
v4 Styles
Esta seção contém todas as definições de
Estilo requeridas pelo escrito. Cada "Style" usado pelos subtítulos
no manuscrito deve ser definido aqui.
Qualquer das colocações no "Style",
(salvo tipo e profundidade de "shadow/outline", sombra/contorno) pode
ser anulada por códigos de controle no texto do subtítulo.
Os campos que aparecem em cada linha de definição
de Estilo são nomeados em uma linha especial com o "Format" do tipo
da linha:. A linha Format tem que aparecer antes de qualquer Style - porque
define como SSA interpretará as linhas de definição de Estilo. Os nomes dos
campos listados na linha de formato devem ser escritos corretamente! Os campos são
como segue:
Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding
A linha de formato permite acrescentar novos
campos ao formato do escrito no futuro e ainda permite versões velhas do
software para ler os campos que reconhece - até mesmo se a ordem de campo é
mudada.
- Name: O nome do Estilo. Caso sensível. Não pode
incluir vírgulas.
- Fontname: O nome da fonte, como o usado pelo Windows.
Caso-sensível.
- Fontsize: O tamanho da fonte
- PrimaryColour: Um longo valor inteiro BGR (azul-verde-vermelho).
A ordem do byte no equivalente hexadecimal deste número é BBGGRR
Esta é a cor que um subtítulo aparecerá
regularmente.
- SecondaryColour. Um valor inteiro longo BGR
(azul-verde-vermelho). A ordem do byte no equivalente hexadecimal deste número
é BBGGRR
Esta cor pode ser usada em vez da Primária
quando um subtítulo é automaticamente trocado para prevenir uma colisão
em tela e distinguir os subtítulos diferentes.
- TertiaryColour. Um valor inteiro longo BGR (azul-verde-vermelho).
A ordem do byte no equivalente hexadecimal deste número é BBGGRR
Esta cor poderá ser usada em vez da Primária ou
Secundária quando um subtítulo é trocado para prevenir uma colisão em
tela e distinguir os subtítulos diferentes, automaticamente.
- BackColour. Esta é a cor do contorno ou sombra do subtítulo,
se é usada. Um longo valor inteiro BGR (azul-verde-vermelho). A ordem do
byte no equivalente hexadecimal deste número é BBGGRR.
- Bold. Isto define se o texto é negrito (true) ou não
(false). -1 é True, 0 é False. Este é independente do atributo Itálico -
você pode ter texto negrito e itálico.
- Italic. Isto define se o texto é itálico (true) ou não
(false). -1 é True, 0 é False. Este é independente do atributo negrito -
você você pode ter texto negrito e itálico.
- BorderStyle. 1=Contorno + sombra inclinada , 3=Caixa Opaca
- Outline. Se BorderStyle é 1, então especifica a largura
do contorno ao redor do texto, em píxeis.
Valores podem ser 0, 1, 2, 3 ou 4.
- Shadow. Se BorderStyle é 1, então especifica a
profundidade da inclinação da sombra atrás do texto, em píxeis. Valores
podem ser 0, 1, 2, 3 ou 4. A inclinação da sombra sempre é usada além de
um esboço - SSA forçará um contorno de 1 píxel se nenhuma largura de
contorno for determinada.
-
Alignment. Fixa como o
texto é "justificado" dentro das margens esq/dir na tela e também
a posição vertical. Valores podem ser 1=Esquerda, 2=Centrada, 3=Direita.
Some 4 ao valor para um "Toptitle". Some 8 ao valor para um
"Midtitle".
ex.
5 = título do topo justificado à esquerda
- MarginL. Define a Margem Esquerda em píxeis. É a distância
da extremidade à esquerda da tela. As três margens em tela (MarginL,
MarginR, MarginV) definem as áreas nas quais o texto de subtítulo será
exibido.
- MarginR. Isto define a Margem Direita
em píxeis. É a distância da extremidade à direita da tela. As três
margens em tela (MarginL, MarginR, MarginV) definem as áreas nas quais o
texto de subtítulo será exibido.
- MarginV. Define a Margem Esquerda vertical em píxeis.
Para um subtítulo, é a distância do fundo da
tela.
Para um título de topo, é a distância do topo
da tela.
Para um título central, é ignorado o valor - o
texto será centrado verticalmente
- AlphaLevel. Define a transparência do texto. SSA ainda não
usa isto, mas TextSub o usa.
- Encoding - Codificando. Isto especifica a fonte
dos caracteres fixados ou de codificação e em instalações de Windows
multi-línguas provê acesso aos caracteres usados em mais de um idioma.
Normalmente é 0 (zero) para Windows inglês (Ocidental, ANSI).
Eventos
Estes contêm o texto de subtítulo, suas
cronometragens e como deve ser exibido. Todas as características são
suportadas por TextSub.
Os campos que aparecem em cada linha de Diálogo
(Dialogue) estão definidos por um Formato: linha que deve aparecer antes
de qualquer evento na seção. A linha de formato especifica como SSA
interpretará todas as linhas de Evento (Event) seguintes. Os nomes de
campo devem ser digitados corretamente como segue:
Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
O último campo sempre será o campo do Texto, de
forma que pode conter vírgulas. A linha de formato permite acrescentar novos
campos ao formato do escrito no futuro e ainda permite versões antigas do
software para ler os campos que reconhece - até mesmo se a ordem dos campos é
mudada.
- Marked
Marked=0 significa que a linha não é mostrada como "marked"
(marcada) no SSA.
Marked=1 significa que a linha é mostrada como "marked" (marcada)
SSA.
- Start
Start Time of the Event - Tempo do Início do Evento, no formato 0:00:00:00
= Horas : Minutos : Segundos : centésimos. Este é o tempo decorrido
durante o playback do escrito no qual o texto aparecerá na tela.
Note que há um único dígito durante as horas!
- End
End Time of the Event - Tempo do Fim do Evento, no formato 0:00:00:00 =
Horas : Minutos : Segundos : centésimos. Este é o tempo decorrido durante
o playback do escrito no qual o texto desaparecerá da tela. Note que
há um único dígito durante as horas!
- Style
Nome do Estilo. Se for "Default" (padrão), então seu próprio
estilo *Default será substituído.
Porém, o estilo padrão usado pelo autor do escrito é armazenado no
escrito embora SSA ignore isso - assim se você quiser usá-lo, a informação
está lá - você pode até mesmo mudar o Name na linha de definição
do Style, de forma que aparecerá na lista dos estilos de escrito.
- Name
Nome do caractere. Este é o nome do caractere
que fala o diálogo. Só é para informação, para fazer o escrito é mais
fácil seguir ao editar/temporizar.
- MarginL
Para ativar Margem Esquerda. Os valores são em píxeis.
Todos os zeros significam as margens padrões definidas pelo estilo que são
usadas.
- MarginR
Para ativar Margem Direita. Os valores são em píxeis.
Todos os zeros significam as margens padrões definidas pelo estilo que são
usadas.
- MarginV
Para ativar Margem de Fundo. Os valores são em píxeis.
Todos os zeros significam as margens padrões definidas pelo estilo que são
usadas.
- Effect
Efeito de Transição. Pode estar vazio ou conter
informação para um dos três efeitos de transição implementado no SSA
v4.x
Os nomes de efeito são caso sensível e têm que
aparecer exatamente como mostrado. Os nomes de efeito não têm aspas em
volta.
"Scroll up;y1;y2;delay[;fadeawayheight]"
"Scroll down;y1;y2;delay[;fadeawayheight]"
significa que o texto/figura rolarão
acima/abaixo na tela. Os parâmetros depois de "Scroll up", Rolar
para Cima, são separados por ponto-e-vírgulas.
Os valores de y1 e y2 definem na tela uma região
vertical na qual rolará o texto. Os valores são em píxeis e não importa
qual valor (topo ou fundo) vem primeiro. Se os valores são zeros, o texto
rolará para cima em tela cheia.
O valor de atraso pode ser um número de 1 a 100
e reduz a velocidade para rolar abaixo - zero significa nenhum retardo e a
rolagem será tão rápida quanto possível.
Os parâmetros fadeawayheight podem ser usados
para fazer o texto transparente ao rolar para os lados.
"Banner;delay"
"Banner;delay[;lefttoright;fadeawaywidth]"
significa que texto será forçado a uma única
linha, sem levar em conta o comprimento e o rolar da direita para a esquerda
na tela.
lefttoright 0 ou 1. Este campo é opcional. O valor padrão é 0 para
volta compatível. O valor de retardo pode ser um número de 1 a 100 e reduz
a velocidade da rolagem - zero significa nenhum retardo e o rolar será tão
rápido quanto possível.
Os parâmetros fadeawayheight podem ser usados
para fazer o texto transparente ao rolar para os lados.
$Date: 2006/03/26 18:11:54 $ Portuguese translation by RoLon