MPEG2Dec3

Abstrato

autores: MarcFD, Nic, trbarry, Sh0dan e outros
versão: 1.10
categoria: Plugins Decodificadores MPEG (fonte)
download: http://www.avisynth.org/warpenterprises/
requisitos:  

Descrição

Este filtro é capaz de produzir nos formatos RGB, YUY2 e YV12.
É um decodificador de MPEG-2 e pode decodificar qualquer fluxo de MPEG-2 legível por dvd2avi 1.76 / 1.77.3 / 1.83x (e outros). Também suporta hdtv, embora você precise do dvd2avi 1.83.5 para isso. (Esta é uma versão modificada de MPEG2Dec2 do save-oe (encoder inteligente de vídeo e áudio)).
Características adicionais são (por exemplo): YV12, YUY2 e RGB32 (embora seja recomendado o uso das rotinas de conversão de cor do AviSynth), controle  de entrelace, PostProcessing integrado, Filtro de Luminância, etc.

Exemplos de Uso dos Filtros de MPEG2Dec3:

(todas as linhas do escrito de avisynth aqui são apenas exemplos)
Primeiro, coloque a seguinte linha em seu escrito .avs:
LoadPlugin ("MPEG2Dec3.dll")

Uso Básico do MPEG2Dec3 

Para fazer a decodificação correta do YV12
MPEG2Source("dvd.d2v")

Para usar Pós Processamento: aqui, só deblocking (remoção de blocos).

MPEG2Source("dvd.d2v", cpu=4)

é melhor usar "Field Based Post Processing" (Pós Processamento com Base em Campos) para fontes entrelaçadas.

MPEG2Source("dvd.d2v", cpu=4, iPP=true)

se você tiver um Pentium 4 cpu Intel, pode forçar idct de sse2.

MPEG2Source("dvd.d2v", idct=5)

Para usar suas colocações de Pós Processamento: só "deringing"* aqui.

MPEG2Source("dvd.d2v", cpu2="ooooxx")

Colorspace conversões

Para converter a YUY2.
MPEG2Source("dvd.d2v")
YV12toYUY2()

Para converter a YUY2 uma fonte progressiva.

MPEG2Source("dvd.d2v")
YV12toYUY2(interlaced=false)

Para converter a RGB24.

MPEG2Source("dvd.d2v")
YV12toRGB24()
FlipVertical() # YV12->BGR24 conversão nativa de imagens invertidas

Para converter a RGB24 uma fonte progressiva.

MPEG2Source("dvd.d2v")
YV12toRGB24(interlaced=false)
FlipVertical() # YV12->BGR24 conversão nativa de imagens invertidas

Filtros adicionais Úteis YV12 

Para Escurecer Luminosidade.
LumaFilter(-10, 0.9)

Para Clarear Luminosidade.

LumaFilter(+10, 1.1)

Claro que você pode alterar as colocações do seu jeito.

Veja a parte Sintaxe para mais informação sobre isto.

Sintaxe dos Filtros MPEG2Dec3:

MPEG2Source

MPEG2Source (string "d2v", int "cpu" int "idct" bool "iPP", int "moderate_h", int "moderate_v", bool "showQ", bool "fastMC", string "cpu2")

d2v :
Seu arquivo de projeto DVD2AVI project file. (*.d2v)

cpu : 0 a 6.
Decodificador DivX com ajustes de nível de cpu. - 0 : No PP
- 1 : DEBLOCK_Y_H
- 2 : DEBLOCK_Y_H, DEBLOCK_Y_V
- 3 : DEBLOCK_Y_H, DEBLOCK_Y_V, DEBLOCK_C_H
- 4 : DEBLOCK_Y_H, DEBLOCK_Y_V, DEBLOCK_C_H, DEBLOCK_C_V
- 5 : DEBLOCK_Y_H, DEBLOCK_Y_V, DEBLOCK_C_H, DEBLOCK_C_V, DERING_Y
- 6 : DEBLOCK_Y_H, DEBLOCK_Y_V, DEBLOCK_C_H, DEBLOCK_C_V, DERING_Y, DERING_C
(Y=luma C=chroma, H=horizontal V=vertical)
padrão: 0

idct : 1 a 5.
iDCT : iDCT algo(ritmo) usado.
0 : Valor padrão (no .d2v file)
1 : 32 bit MMX
2 : 32 bit SSEMMX
3 : 64 bit FPU
4 : 64 bit Referência IEEE-1180 
5 : 32 bit SSE2 (para P4)
6 : Skal's SSEMMX iDCT (mais rápido)
7 : SimpleiDCT (iDCT muito preciso do projeto XviD)
padrão: 0

iPP :
Usar Pós Processamento Baseado em Campo.

o melhor se você quiser desentrelaçar.

- True : Base de Campo
- False : Base de Imagem (padrão)

 

moderate_h, moderate_v :
Pós Processamento forte, com boa afinação.

Valores menores são mais fortes. use com cuidado.

Padrão: moderate_h=20, moderate_v=40,

showQ :
Para ver os quantizers* usados para cada MB.
uma ferramenta divertida para tocar ^^
padrão: false

fastMC :
O código de Compensação de Movimento Rápido de Vlad.
aceleração muito pequena e precisão degradada
está aqui com propósitos de testes e provavelmente será removido nas próximas versões
só para cpu ssemmx capaz.
padrão: false

cpu2 :
Colocações de cpu do usuário
você precisa entrar uma string com 6 caracteres. Cada uma através (x)
habilita a característica de Pós Processamento correspondente:

exemplo :
"oxoxox"
123456
Pode habilitar só croma PP

1 : luma horizontal deblocking
2 : luma vertical deblocking
3 : chroma horizontal deblocking
4 : chroma vertical deblocking
5 : luma deringing*
6 : chroma deringing
padrão: " " (desativado)

LumaFilter

LumaFilter (clip, integer "lumoff", float "lumgain")

A transformação é : yy = (y*lumgain)+lumoff

lumoff :
Controle de Luminosidade.
padrão = -2 (por iago ^^)

lumgain :
Ganho de Luminosidade.
padrão = 1

YV12toRGB24

YV12toRGB24 (clip, bool "interlaced", bool "TVscale")

YV12->BGR24 Conversão de imagens nativas invertidas 
Use FlipVertical após

interlaced :
fixe isto em true se sua fonte é entrelaçada,
para entrelaçar croma corretamente.
se você tem um fluxo progressivo, usando false
dá cores mais aguçadas e reais
padrão: true

TVscale :
A mesma colocação de DVD2AVI.
Pode ser invertida. Tente com e sem e mantenha seu preferido.
padrão: false

YV12toYUY2

YV12toYUY2 (clip, bool "interlaced", bool "tff")

interlaced :
fixe isto em true se sua fonte é entrelaçada,
para entrelaçar croma corretamente.
se você tem um fluxo progressivo, usando false
dá cores mais aguçadas e reais
padrão : true

tff :
Primeiro Campo de Topo.

Fixe isto em false se tiver Primeiro Campo de Fundo.

padrão: true

BlindPP

BlindPP (clip, int "quant", int "cpu", str "cpu2", bool "iPP", int "moderate_h", int "moderate_v")

Para Deblock e Dering* em qualquer tipo de fonte DCT codificada.
Menos preciso que o decodificador PP integrado, mas ainda muito eficiente
Necessita entrada YV12.

quant :
Quantizer emulado
use valor mais alto para aumentar a agressividade
usando um valor próximo da fonte permitirá pós processamento muito preciso
padrão: 2

cpu, cpu2, iPP, moderate_h, moderate_v :
mesmas colocações de MPEG2Source's PP. padrões : cpu=6, cpu2="", iPP=false, moderate_h=20, moderate_v=40

História

baseado no MPEG2Dec2 (save-oe CVS 28.09.2002)

Créditos 

Chia-chen Kuo, autor do DVD2AVI
Peter Gubanov, autor do MMX/SSEMMX iDCT
Dmitry Rozhdestvensky, autor do SSE2 iDCT
Miha Peternel, autor do Ponto Flutuante iDCT e Referência
Mathias Born, autor do MPEG2Dec

Especiais agradecimentos ao Nic, pelo Pós Processamento que fez o MPEG2Dec3 possível

1.01 e acima: Nic, trbarry, sh0dan
Obrigado ao Skal pelo uso do seu iDCT (http://skal.planet-d.net)

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