Configuraciones de filtros y codecs

Para hablar y pedir ayuda sobre Hardware, Software y tal pascual, además de tutoriales para hacer tus copias privadas o configurar eMule.
Avatar de Usuario
hank_quinlan
Mensajes: 261
Registrado: Lun 15 Dic, 2003 01:00

Mensaje por hank_quinlan » Mié 26 Sep, 2007 21:56

elguaxo escribió:No sé si todos los extras sean de las mismas características, pero ante la duda prueba esta misma receta con el resto.
Salvo 3 ó 4, el resto son entrevistas que llevan toda la pinta de ser para TV.

Tendré que repetir todos desde el principio, al tener que meterles a más de la mitad a 29,9fps, trastoca todo el proyecto de tamaños que tenía pensado :( .

Gracias por todo ;) ya comentaré como va el asunto.

Avatar de Usuario
elguaxo
Mensajes: 1047
Registrado: Sab 10 Jun, 2006 06:51

Mensaje por elguaxo » Mié 26 Sep, 2007 22:03

Me olvidaba explicar lo del Vinverse. TDeint es uno de los desentrelazadores de moda. Sobresale en conservar muchos detalles, pero aveces se le escapa algo. Ahí es donde corrige Vinverse. Tu ejemplo es de ~740 frames. Mirando todo a baja velocidad ví 2 o 3 frames con vestigios de entrelazado después de aplicar TDeint. Vinverse los corrige de esta forma:

Imagen

Avatar de Usuario
hank_quinlan
Mensajes: 261
Registrado: Lun 15 Dic, 2003 01:00

Mensaje por hank_quinlan » Mié 26 Sep, 2007 22:30

:shock: Genial... y si no aplicamos desentrelazado, el vinverse me podría haber servido en aquellos 15 frames entrelazados que comentamos en The Killers?

ImagenImagen

El video era Film99% y le puse Forced, al final (de casualidad) vi los frames entrelazados.

Avatar de Usuario
elguaxo
Mensajes: 1047
Registrado: Sab 10 Jun, 2006 06:51

Mensaje por elguaxo » Mié 26 Sep, 2007 22:38

Jo, tuviste mala suerte y ese 1% no film estaba en una parte importante. Nop, el vinverse te ayuda cuando quedan restos, pero en tus ejemplos la cosa se ve fuerte.

Una opción es dejarlo, ya que ~15 frames así no se notan realmente al reproducir. La otra opción es no hacer forced film y aplicar tfm().tdecimate() en el filtrado.

Es un caso de muy muy mala suerte el tuyo. Por lo general con un Film99% el forced film lo deja perfecto.

Avatar de Usuario
elguaxo
Mensajes: 1047
Registrado: Sab 10 Jun, 2006 06:51

Mensaje por elguaxo » Jue 27 Sep, 2007 23:56

^Rogue^ de los Shitbusters viene preparando hace unos 6 o 7 meses un ripeo de Hellraiser 3. La calidad de la mejor edición en DVD es mala y por sobre todo muy irregular. Terminó finalmente el script y es este:

Código: Seleccionar todo

### PLUGINS & IMPORTS ###
LoadPlugin("C:\PROGRA~1\GORDIA~1\DGMPGDec\DGDecode.dll")
LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\UnDot.dll")
LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\TDeint\TDeint.dll")
LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\degrainmedian.dll")
LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\MVTools162\mvtools.dll")
LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\MaskTools158\MaskTools.dll")
LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\masktools20a30\mt_masktools.dll")
LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\RemoveGrain\RemoveGrainSSE2.dll")
LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\RemoveGrain\RepairSSE2.dll")
LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\RemoveGrain\RSharpenSSE2.dll")
LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\RemoveDirt\RemoveDirt.dll")
LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\RemoveGrain\DenoiseSharpen.dll")
LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\MSharpen.dll")
LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\deblock12\deblock.dll")
LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\deen10-beta1\Deen.dll")
LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\MDeblock\MDeblock.dll")
LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\vaguedenoiser0351\VagueDenoiser.dll")
LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\ColorMatrix\ColorMatrix.dll")
LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\fluxsmooth_25_dll_20040729\FluxSmooth.dll")
Import("C:\Programme\GordianKnot\AvisynthScripts\DeHalo_alpha_mt2.avsi")
Import("C:\PROGRA~1\GORDIA~1\AviSynthScripts\RemoveNoiseMC\RemoveNoiseMC.avsi")
Import("C:\PROGRA~1\GORDIA~1\AviSynthScripts\RemoveNoiseMC\lq_filter.avsi")
Import("C:\Programme\GordianKnot\AvisynthScripts\LimitedSharpenFaster.avsi")
Import("C:\Programme\GordianKnot\AvisynthScripts\SeeSaw.avsi")
Import("C:\Programme\GordianKnot\AvisynthScripts\soothe.avsi")


### FUNCTIONS ###
#------ Function: low quality sequences 01, 02, 06 ---------
function lq010206hr3(clip c) {
   c = c.Undot().Tweak(hue=0.0, sat=1.5, bright=0.0, cont=1.2).Levels(3, 1.0, 255, 0, 252)
   c = lq_filter(c)
   sharp  = c.LimitedSharpenFaster(ss_x=1.0, ss_y=1.0, Smode=4, strength=70, Lmode=1, wide=false, overshoot=1, undershoot=1, soft=0, edgemode=0, special=false, exborder=0)
   c = Soothe(sharp, c, 80)
   denoised = c.DeGrainMedian(limitY=5,limitUV=7,mode=0)
   sharp2 = c.MSharpen(threshold=14, strength=25, mask=false, highq=true, debug=false)
   c = SeeSaw(denoised, sharp2, NRlimit=2, NRlimit2=3, Sstr=1.5, Slimit=5, Spower=5, SdampLo=6, SdampHi=24, Szp=18, bias=49, Smode=11, sootheT=49, sootheS=0, ssx=1.0, ssy=1.0)
   return(c)
}


#------ Function: low quality sequence 03 ---------
function lq03hr3(clip c) {
   c = c.Undot().MDeblock().ColorMatrix().tweak(hue=-18, sat=1.5, bright=2, cont=1.7).levels(5, 0.95, 255, 0, 250)
   c = lq_filter(c)
   sharp = c.LimitedSharpenFaster(ss_x=1.0, ss_y=1.0, Smode=4, strength=100, Lmode=1, wide=false, overshoot=1, undershoot=1, soft=0, edgemode=0, special=false, exborder=0)
   c = Soothe(sharp, c, 60)
   return(c)
}


#------ Function: low quality sequence 04 ---------
function lq04hr3(clip c) {
   c = c.Undot().Tweak(hue=0.0, sat=1.5, bright=0.0, cont=1.2).Levels(3, 1.0, 255, 0, 252)
   anal=c.DeGrainMedian(limitY=5,limitUV=7,mode=0)
   backward_vec2 = MVAnalyse(anal,isb = true, delta = 2, pel = 2, overlap=4, sharp=1, idx = 1)
   backward_vec1 = MVAnalyse(anal,isb = true, delta = 1, pel = 2, overlap=4, sharp=1, idx = 1)
   forward_vec1 = MVAnalyse(anal,isb = false, delta = 1, pel = 2, overlap=4, sharp=1, idx = 1)
   forward_vec2 = MVAnalyse(anal,isb = false, delta = 2, pel = 2, overlap=4, sharp=1, idx = 1)
   denoised=MVDegrain2(c,backward_vec1,forward_vec1,backward_vec2,forward_vec2,thSAD=400,idx=2)
   c = SeeSaw(c, denoised, NRlimit=5, NRlimit2=6, Sstr=1.7, Slimit=5, Spower=6, SdampLo=7, SdampHi=24, Szp=20, bias=49, Smode=11, sootheT=49, sootheS=0, ssx=1.0, ssy=1.0)
   return(c)
}


#------ Function: low quality sequence 05 ---------
function lq05hr3(clip c) {
   c = c.Undot().Tweak(hue=0.0, sat=1.5, bright=0.0, cont=1.2).Levels(3, 1.0, 255, 0, 252)
   denoised=lq_filter(c)
   c = SeeSaw(c, denoised, NRlimit=7, NRlimit2=8, Sstr=1.8, Slimit=5, Spower=9, SdampLo=7, SdampHi=24, Szp=20, bias=49, Smode=11, sootheT=49, sootheS=0, ssx=1.0, ssy=1.0)
   return(c)
}


#------ Function: high quality sequences ---------
function hqhr3(clip c) {
   c = c.Undot().DeHalo_alpha(rx=2, ry=3, darkstr=0.25, brightstr=0.6, lowsens=25, highsens=25, ss=1.5)
   anal=c.DeGrainMedian(limitY=5,limitUV=7,mode=0)
   backward_vec2 = MVAnalyse(anal,isb = true, delta = 2, pel = 2, overlap=4, sharp=1, idx = 1)
   backward_vec1 = MVAnalyse(anal,isb = true, delta = 1, pel = 2, overlap=4, sharp=1, idx = 1)
   forward_vec1 = MVAnalyse(anal,isb = false, delta = 1, pel = 2, overlap=4, sharp=1, idx = 1)
   forward_vec2 = MVAnalyse(anal,isb = false, delta = 2, pel = 2, overlap=4, sharp=1, idx = 1)
   denoised=MVDegrain2(c,backward_vec1,forward_vec1,backward_vec2,forward_vec2,thSAD=400,idx=2)
   c = SeeSaw(c, denoised, NRlimit=5, NRlimit2=6, Sstr=1.7, Slimit=5, Spower=6, SdampLo=7, SdampHi=24, Szp=18, bias=53, Smode=11, sootheT=49, sootheS=0, ssx=1.0, ssy=1.0)
   return(c)
}


### SOURCE ###
mpeg2source("E:\R4R_Output\Hellraiser3_VTS_01_PGC1\Hellraiser3.d2v")


### VARS ###
targetwidth  = 704
targetheight = 400
hqcropx1 = 8
hqcropy1 = 4
hqcropx2 = -6
hqcropy2 = -4


# deintsource for lq-sequences
source   = last
swapped  = source.doubleweave()
bobblend = source.tdeint(mode=1,type=3,mthreshL=0,mthreshC=0).deleteframe(0)
bobblend = merge(bobblend.selecteven(),bobblend.selectodd(),0.5)
swapped = swapped.selectodd()
global cmetric = source .mt_convolution(horizontal="1",vertical="-1 2 -1")
global smetric = swapped.mt_convolution(horizontal="1",vertical="-1 2 -1")
global clean   = source
global shifted = bobblend
deintsource = scriptclip(clean,"cmetric.averageluma > smetric.averageluma? shifted : clean")


# selective filtering
hq1 = trim(1,17508).crop(hqcropx1,hqcropy1,hqcropx2,hqcropy2).LanczosResize(targetwidth,targetheight).hqhr3()

lq1 = deintsource.trim(17509,17853).crop(hqcropx1,hqcropy1,hqcropx2,hqcropy2).LanczosResize(targetwidth,targetheight).lq010206hr3()

hq2 = trim(17854,26449).crop(hqcropx1,hqcropy1,hqcropx2,hqcropy2).LanczosResize(targetwidth,targetheight).hqhr3()

lq2 = deintsource.trim(26450,27495).crop(hqcropx1,hqcropy1,hqcropx2,-6).LanczosResize(targetwidth,targetheight).lq010206hr3()

hq3 = trim(27496,60026).crop(hqcropx1,hqcropy1,hqcropx2,hqcropy2).LanczosResize(targetwidth,targetheight).hqhr3()

lq3 = deintsource.trim(60027,61645).crop(10,hqcropy1,hqcropx2,hqcropy2).LanczosResize(targetwidth,targetheight).lq03hr3()

hq4 = trim(61646,80030).crop(hqcropx1,hqcropy1,hqcropx2,hqcropy2).LanczosResize(targetwidth,targetheight).hqhr3()

lq4 = deintsource.trim(80031,81132).crop(hqcropx1,hqcropy1,hqcropx2,hqcropy2).LanczosResize(targetwidth,targetheight).lq04hr3()

hq5 = trim(81133,81897).crop(hqcropx1,hqcropy1,hqcropx2,hqcropy2).LanczosResize(targetwidth,targetheight).hqhr3()

lq5 = deintsource.trim(81898,83589).crop(10,hqcropy1,hqcropx2,hqcropy2).LanczosResize(targetwidth,targetheight).lq05hr3()

hq6 = trim(83590,96198).crop(hqcropx1,hqcropy1,hqcropx2,hqcropy2).LanczosResize(targetwidth,targetheight).hqhr3()

lq6 = deintsource.trim(96199,96334).crop(12,hqcropy1,hqcropx2,hqcropy2).LanczosResize(targetwidth,targetheight).lq010206hr3()

hq7 = trim(96335,138841).crop(hqcropx1,hqcropy1,hqcropx2,hqcropy2).LanczosResize(targetwidth,targetheight).hqhr3()


return(hq1 ++ lq1 ++ hq2 ++ lq2 ++ hq3 ++ lq3 ++ hq4 ++ lq4 ++ hq5 ++ lq5 ++ hq6 ++ lq6 ++ hq7)
:shock:

Avatar de Usuario
Persona
Mensajes: 409
Registrado: Mié 08 Sep, 2004 02:00
Ubicación: Madrid

Mensaje por Persona » Lun 22 Oct, 2007 00:08

Pues os vengo a pedir opinión acerca de un ripeo un pelín complicado.
La cosa es que el original es un dvd editado en España que debe haber salido del videoclub de la esquina o algo así. La cosa es que está muy entrelazado y estoy probando diferentes combinaciones.

Os pongo el original y los 3 scripts para que echéis un ojo.

Original:

Código: Seleccionar todo

LoadPlugin("C:\ARCHIV~1\ARCALC~1\dgmpgdec\DGDecode.dll")
MPEG2Source("F:\ripeos\amanece\amanece.d2v", cpu=0)
Crop(10,10,-10,-2)
Spline36Resize(688,512)
subtitle("original")
Con tdeint:

Código: Seleccionar todo

LoadPlugin("C:\ARCHIV~1\ARCALC~1\dgmpgdec\DGDecode.dll")

MPEG2Source("F:\ripeos\amanece\amanece.d2v", cpu=0)
Crop(10,10,-10,-2)

tdeint(map=0, type=2, mthreshL=7, sharp=true, mthreshC=8, AP=70, APtype=1, tryWeave=false, denoise=true)

Spline36Resize(688,512)
subtitle("tdeint")
Con tdeint + EEDI2:

Código: Seleccionar todo

LoadPlugin("C:\ARCHIV~1\ARCALC~1\dgmpgdec\DGDecode.dll")

DGDecode_mpeg2source("F:\ripeos\amanece\amanece.d2v",cpu=4,info=3)

ColorMatrix(hints=true,interlaced=true)
Crop(10,10,-10,-2)
edeintted = last.AssumeTFF().SeparateFields().SelectEven().EEDI2(field=0)
TDeint(order=1,full=false,edeint=edeintted)
subtitle("tdeint+eedi2")

Spline36Resize(688,512)
Con tomsmocomp:

Código: Seleccionar todo

LoadPlugin("C:\ARCHIV~1\ARCALC~1\dgmpgdec\DGDecode.dll")
LoadPlugin("C:\Archivos de programa\AviSynth 2.5\plugins\TomsMoComp.dll")

MPEG2Source("F:\ripeos\amanece\amanece.d2v", cpu=0)
Crop(10,10,-10,-2)

Tomsmocomp(1,5,1) 

Spline36Resize(688,512)
subtitle("tomsmocomp")
Y unas capturas:
Spoiler: mostrar
Imagen

Imagen

Imagen

Imagen
Spoiler: mostrar
Imagen

Imagen

Imagen

Imagen
Spoiler: mostrar
Imagen

Imagen

Imagen

Imagen

A mí me parece que el mejor es el tdeint a pelo. El combinado con el EEDI2, además de irse el ripeo a tiempos astronómicos, no creo que desentrelace todo lo que debiera e introduce muchos artefactos (cosa que creo que hace también el tdeint pero en menor medida). Por último el tomsmocomp que desentrelazar desentrelaza bien: pero es una apisonadora (aunque en su pro está el tiempo que es menor a las otras dos soluciones).

Por último comentar que con el deint me da una compresibilidad el ARCalc del 36 % a un bitrate de 1300 y la resolución que veis. Podrías recomendarme otro método para hacer un test?

Un saludo y echadme una mano para hacer una copia de seguridad de esta peli que me es tan querida!

Gracias!
“Qué mala suerte, si esto le puede pasar a cualquiera”.

Alfonso XIII a Douglas Fairbanks sobre el caso Arbuckle-Rappese.

Avatar de Usuario
hank_quinlan
Mensajes: 261
Registrado: Lun 15 Dic, 2003 01:00

Mensaje por hank_quinlan » Lun 22 Oct, 2007 13:51

No hace mucho he usado por 2 veces Separatefields().SelectEven() y los resultados han sido fantásticos :)
Por último comentar que con el deint me da una compresibilidad el ARCalc del 36 % a un bitrate de 1300 y la resolución que veis. Podrías recomendarme otro método para hacer un test?
El mejor metodo es el real, haces una pasada completa y abres con StatsReader (Inicio/Todos los programas/XviD/StatsReader 2.1) el archivo stats que ha creado la 1ª pasada.

Saldrá un tamaño que es la compresión real al 100% sin audio/s, y sacas el resultado mediante porcentaje (tamaño elegido para el ripeo sin audio/s x 100 y dividido entre el resultado del StatsReader).

Suerte

Edito: Te lo muestro en "abierto" y seguro que le sirve a alguien más.

*Haces una primera pasada completa, como si de un ripeo se trátase.
*Por defecto, el Xvid crea un archivo video.pass que al finalizar cada 1ª pasada se modifica mostrándonos la compresión real.
*Vamos a Inicio/Todos los programas/XviD/ y abrimos el StatsReader 2.1
*Open/Video.pass y nos sale esto:

Imagen

*En Size (mb) nos muestra la compresión real 100% del video (sin audios).
*En mi caso, el tamaño elegido para el video era de 4059MB (sin audios), multiplico ese 4059 por 100 y lo divido entre los 4582, el resultado es de 88,5% de compresión real.

Avatar de Usuario
Persona
Mensajes: 409
Registrado: Mié 08 Sep, 2004 02:00
Ubicación: Madrid

Mensaje por Persona » Lun 22 Oct, 2007 15:49

Ok, muchas gracias. Al final di con ello (:S).
Y me temo que el ARcalculator tenía razón (me da con el método este en torno a 39 %). Creo que es por el sharpen que he metido pero es que meto el sharpen de FFT3DFilter y se me queda la codificación en... 6 fps (frente a los 30 sin introducir dicho filtro.
Por otro lado he probado el Separatefields().SelectEven() y creo que da mejor resultado el Tdeint.

Qué me recomendaríais para dar un poco de sharpen sin que me salte por los aires la compresibilidad y tampoco el tiempo tienda a infinito?

Un saludo!
“Qué mala suerte, si esto le puede pasar a cualquiera”.

Alfonso XIII a Douglas Fairbanks sobre el caso Arbuckle-Rappese.

Avatar de Usuario
elguaxo
Mensajes: 1047
Registrado: Sab 10 Jun, 2006 06:51

Mensaje por elguaxo » Lun 22 Oct, 2007 16:40

Persona, en este caso me parece que tdeint combate muy bien el entrelazado y conserva detalles. Tomsmocomp tampoco deja ningún resto de entrelazado, pero se come detalles.

Respecto a la compresibilidad, por lo que veo en las capturas ya el mismo DVD muestra artefactos de compresión, lo cual no aporta a la calidad de la imagen y es un gran enemigo de la compresibilidad.

Antes de pensar en un sharpen, trataría de combatir el ruido y artefectos de compresión del DVD. Sin tener un ejemplo es difícil darte un consejo certero, pero me atrevería a recomendarte un temporalsoften(2,3,3,2,6) (suave) o hasta incluso un temporalsoften(3,5,5,2,10) (medio) que son rápidos y efectivos. Dale una mirada para ver si no comen muchos detalles y que tanto mejoran la compresibilidad. Según esto vemos si vale la pena un sharpen y cual elegir.

Suerte!

Avatar de Usuario
Persona
Mensajes: 409
Registrado: Mié 08 Sep, 2004 02:00
Ubicación: Madrid

Mensaje por Persona » Lun 22 Oct, 2007 16:50

He descartado definitivamente el tomsmocomp (porque es una apisonadora) y el tdeint + EEDI2. Estoy de acuerdo en que el mejor en este caso es el tdeint.

Había añadido:

Código: Seleccionar todo

DeGrainMedian(limitY=4,limitUV=8,mode=4).FFT3DFilter(sigma=1.5,sigma2=1,sigma3=1,sigma4=0.8, bt=4,plane=4,sharpen=0.3)


porque vi el resultado en un rip anterior y me gustó (además me gusta mucho el sharp que da el fft3dfilter) y la verdad no eliminaba detalle y resaltaba lo justo, pero claro, va a 6 fps.

Voy a probar el temporal soften medio.

Por cierto, me podéis pasar alguna línea de avs para poder hacer el test en digamos un 15 % o un 20 %. Imagino que habrá una forma de decir al encoder que tome un frame de cada 10 o de cada 20 etc.

Muchas gracias elguacho y a ver si consigo deshacer el desaguisado que dejaron en este DVD.

un saludo!

Edito: en la función temporalsoften me dice que el último término sólo puede ser o 1 o 2 que son los dos únicos modos). Es un fallo mío?

Edito 2: ya veo la sintaxis. en el AVSP va el mode al final y el scenechange en penúltimo. no sé por qué será ésto :?

Edito 3: me auto respondo a la pregunta para hacer el test sobre un porcentaje

Código: Seleccionar todo

function Comptest(clip c, float percent)
{
  frange = floor(14./(percent/100.))
  return SelectRangeEvery(c, frange, 14)
}

Comptest(x) #porcentaje=x
Espero que sea la última edición...
“Qué mala suerte, si esto le puede pasar a cualquiera”.

Alfonso XIII a Douglas Fairbanks sobre el caso Arbuckle-Rappese.

Avatar de Usuario
elguaxo
Mensajes: 1047
Registrado: Sab 10 Jun, 2006 06:51

Mensaje por elguaxo » Lun 26 Nov, 2007 19:37

Les traigo un juguete nuevo que estuve probando la semana pasada. Desde hace un par de meses estoy luchando con el ripeo de Yellow Submarine, definitivamente la película menos comprimible que he visto. La solución pasó finalmente por un script de Heini011 (el de las matrices Heini) basado en MVTools: RemoveNoiseMC.

Este script/filtro apunta a 'restaurar' películas en mal estado. La velocidad de ripeo utilizando este filtro se arrastra entre los 1 y 3 fps. Pero quien lo necesite lo encontrará invaluable! Más adelante dejo algunas capturillas comparativas (en el hilo de Doom9 que enlacé hay varias si ya quieren ver).

Saludos!

Avatar de Usuario
jordisound
Mensajes: 232
Registrado: Dom 17 Abr, 2005 02:00

Mensaje por jordisound » Lun 26 Nov, 2007 20:55

A ver, siguiendo este tema
Tengo una peli muy poco compresible (me da 0.541 tras el comptest). Para acercarme al 75% tengo que irme a tamaño 3cd's y no era mi idea. He probado con filtros (no este que comenta elguaxo) pero no mejora lo suficiente. ¿Configurando el xvid de alguna manera podría reducir el tamaño del video sin que perdiese mucho? Algiuen comentó lo de meter el mínimo del quantizer a 3, sería buena idea?

Avatar de Usuario
elguaxo
Mensajes: 1047
Registrado: Sab 10 Jun, 2006 06:51

Mensaje por elguaxo » Lun 26 Nov, 2007 21:19

Yo lo sugerí. Es una opción excelente. Aunque la compresibilidad haya sido complicada con un H263 o Jawor's 1CD, salta a una MPEG para arriba y prueba con el quant mínimo en 3 y ve los resultados.

En una comparación 'tramposa', donde lo único que compares sean capturas de I-Frames (keyframes), seguramente que un tradicional ripeo de quants mínimos en 2 se vea con más detalles. Trata de evaluar la mejora de ripear con quants mínimos en 3 viendo porciones de video en movimiento.

Como referencia:
Con 2 B-Vops consecutivos, la primera pasada a Quant=2 y los quantizers todos con mínimo en 2 (ver aquí), un undersize ocurre alrededor de una quantización promedio de 2.5.
Con 2 B-Vops consecutivos, la primera pasada a Quant=3 y los quantizers todos con mínimo en 3, un undersize ocurre alrededor de una quantización promedio de 3.5.

Si la compresibilidad es complicada, con Quant=3 no vas a lograr esos I-Frames tan vistosos, pero sí una 'Standard deviation quality' y 'Std. dev. weighted mean' MUY buenas. Esto se traduce en una calidad promedio estable y consistente.
Última edición por elguaxo el Mar 27 Nov, 2007 19:54, editado 2 veces en total.

Avatar de Usuario
jordisound
Mensajes: 232
Registrado: Dom 17 Abr, 2005 02:00

Mensaje por jordisound » Lun 26 Nov, 2007 23:41

Lo probaré.
Y así a priori convendría dejar la configuración de los b-vop 2-1.62-0 o volver al clásico 2-1.5-1?

Avatar de Usuario
elguaxo
Mensajes: 1047
Registrado: Sab 10 Jun, 2006 06:51

Mensaje por elguaxo » Mar 27 Nov, 2007 04:35

Ya que el piso está más alto (quant=3 en vez de 2), la idea es que la quantización no se escape mucho más hacia arriba. 2-1.62-0 anda muy bien.

Avatar de Usuario
jordisound
Mensajes: 232
Registrado: Dom 17 Abr, 2005 02:00

Mensaje por jordisound » Vie 30 Nov, 2007 18:14

a la vista ha quedado muy bien
los datos han sido
Spoiler: mostrar
[ About quality ]

Resolution: MEDIUM (704 x 288)
Width: multiple of 16 (GOOD)
Height: multiple of 16 (GOOD)
Average DRF quality: MEDIUM (4.320747)
Standard deviation quality: MEDIUM (1.109995)
Std. dev. weighted mean: MEDIUM (0.862505)

[ DRF analysis ]

Average DRF: 4.320747
Standard deviation: 1.109995
Max DRF: 9

DRF<2>9: 0 ( 0.000 %)

I-VOPs average DRF: 3.613861
I-VOPs std. deviation: 0.486863
I-VOPs max DRF: 4

P-VOPs average DRF: 3.537325
P-VOPs std. deviation: 0.596211
P-VOPs max DRF: 6

B-VOPs average DRF: 4.879084
B-VOPs std. deviation: 1.054207
B-VOPs max DRF: 9
También he probado a hacer una primera pasada completa a otra peli que estoy preparando, para comprobar la fiabilidad del comptest. efectivamente los datos que obtenemos del statreader no coinciden con lo que dice el comptest (una variación de -5% del comptest al real)
Al ver estos datos la compresibilidad me parece demasiado alta y tenia pensado hacer lo mismo que en la otra peli, bajar los mínimos a q=3). Ahora pregunto ¿ya que tengo hecha la primera pasada a q=2, puedo hacer la segunda a q=3 sin problema no?

Avatar de Usuario
elguaxo
Mensajes: 1047
Registrado: Sab 10 Jun, 2006 06:51

Mensaje por elguaxo » Vie 30 Nov, 2007 18:24

jordisound escribió:¿ya que tengo hecha la primera pasada a q=2, puedo hacer la segunda a q=3 sin problema no?
Buena pregunta... la verdad que no sé. En la primera pasada lo que se define es el tipo de 'Frame' de cada cuadro. Si será I, P o B-Frame. No sé si la decisión sobre el tipo de frame pueda variar (o variar considerablemente) si vamos a apuntar a Quants 'más altos'.

Sospecho que hay variación, pero poca. Voy a hacer algunas pruebas y te confirmo más tarde.

Avatar de Usuario
jordisound
Mensajes: 232
Registrado: Dom 17 Abr, 2005 02:00

Mensaje por jordisound » Sab 01 Dic, 2007 09:28

Yo creo que aunque cambies a q=3 sigue haciendo la primera pasada a máxima calidad (q=2) por lo que se ve en los graficos de la ventana de xvid

Avatar de Usuario
Mercedes
Mensajes: 4063
Registrado: Vie 18 May, 2007 14:59
Ubicación: Al Sur

Mensaje por Mercedes » Mar 18 Dic, 2007 23:23

Me da mucho apuro postear aquí porque todos estáis a un nivel tan alto que se siente una un poco/mucho "pardilla", pero como me apasiona aprender y como cada película es un reto y me gusta casi rozar la máxima calidad, me atrevo a hacerlo por fín.

He tenido ayudas de algunos de vosotros, y lo agradezco de corazón. He dado la lata a Cernikalo, elguaxo, Foratul, y Hank_Quilan, de todos ellos he aprendido algo y sus consejos me han sido muy útiles e imprescindibles. GRACIAS por vuestra generosidad.

Hoy os traigo unas capturas de "Charada" y de "Belinda", ya no sé que hacer con ellas para quitarle el "bigote" en caso de Belinda, y algo menos, pero también sombras grises, en el caso de Audrey.

Os quedaría muy agradecida si me podéis ayudar sobre los filtros que puedo editarle manualmente. Los programas los tengo actualizados siguiendo vuestras instrucciones.

Utilizo el ArCalculator. Edito manualmente casi siempre, el DeGrainMedian, el Spline36 y poco más, no deseo codificaciones de 30 hrs., mi pc no lo resistiría, pero si quiero la mayor calidad posible, caso contrario, no publico. Utilizo la matriz MPEG siempre. B-VOPs: 2 - 1.62 - 0.00. La Quantizer la suelo variar a veces, pero está mas o menos en la escala que vosotros utilizáis.

Siento no hablar de manera técnica pero es que aún no estoy demasiado puesta. Sin embargo, creo me entenderéis.

Estas son las capturas (no sé aún ponerlas pequeñas y que las veáis grande luego):

Imagen
Imagen
Imagen
Imagen

Y estos, los AVIPNAPTIC:
Spoiler: mostrar
[ About file ]

Name: DA.avi
Date: 16/12/2007 18:56:23
Size: 1,268,004,864 bytes (1209.264 MB)

[ Generic info ]

Play duration: 01:48:45 (6524.64 s)
Container type: AVI OpenDML
Number of streams: 1
Type of stream nr. 0: video
Audio streams: 0
JUNK: VirtualDub build 1411/release

[ About quality ]

Resolution: HIGH (704 x 368)
Width: multiple of 16 (GOOD)
Height: multiple of 16 (GOOD)
Average DRF quality: HIGH (2.625505)
Standard deviation quality: HIGH (0.518045)
Std. dev. weighted mean: HIGH (0.157053)

[ Video track ]

FourCC: XVID/XVID
Resolution: 704 x 368
Frame aspect ratio: 44:23 = 1.913043
Pixel aspect ratio: 1:1 = 1
Display aspect ratio: 44:23 = 1.913043
Framerate: 25 fps
Number of frames: 163116
Stream size: 1,264,002,043 bytes
Bitrate: 1549.819812 kbps
Qf: 0.239287
Key frames: 1347 (0; 300; 600; 900; 1200; ... 163035)
Null frames: 0
Min key int: 1
Max key int: 300
Avg key int: 121.095768
Delay: 0 ms

[ About MPEG4 encoding ]

User data: XviD0046
Packed bitstream: No
QPel: No
GMC: No
Interlaced: No
Aspect ratio: Square pixels
Quant type: MPEG
Number of frames: 163116
Drop/delay frames: 0
Corrupted frames: 0

I-VOPs: 1347 ( 0.826 %)
P-VOPs: 63921 ( 39.187 %) ##########
B-VOPs: 97848 ( 59.987 %) ###############
S-VOPs: 0 ( 0.000 %)
N-VOPs: 0 ( 0.000 %)

Max consecutive B-VOPs: 2
1 consec: 26912 ( 43.142 %) ###########
2 consec: 35468 ( 56.858 %) ##############

[ DRF analysis ]

Average DRF: 2.625505
Standard deviation: 0.518045
Max DRF: 4

DRF<2>4: 0 ( 0.000 %)

I-VOPs average DRF: 2
I-VOPs std. deviation: 0
I-VOPs max DRF: 2

P-VOPs average DRF: 2.021886
P-VOPs std. deviation: 0.146312
P-VOPs max DRF: 3

B-VOPs average DRF: 3.028442
B-VOPs std. deviation: 0.166232
B-VOPs max DRF: 4

This report was created by AVInaptic (10-04-2007) on 16 dic 2007, h 19:18:40
Spoiler: mostrar
[ About file ]

Name: linda lunes 26.avi
Date: 26/11/2007 11:21:04
Size: 1,282,277,376 bytes (1222.875 MB)

[ Generic info ]

Play duration: 01:38:06 (5885.6 s)
Container type: AVI OpenDML
Number of streams: 1
Type of stream nr. 0: video
Audio streams: 0
JUNK: VirtualDub build 1411/release

[ About quality ]

Resolution: HIGH (576 x 416)
Width: multiple of 16 (GOOD)
Height: multiple of 16 (GOOD)
Average DRF quality: MEDIUM (3.446506)
Standard deviation quality: HIGH (0.551863)
Std. dev. weighted mean: HIGH (0.178156)

[ Video track ]

FourCC: XVID/XVID
Resolution: 576 x 416
Frame aspect ratio: 18:13 = 1.384615
Pixel aspect ratio: 1:1 = 1
Display aspect ratio: 18:13 = 1.384615
Framerate: 25 fps
Number of frames: 147140
Stream size: 1,278,666,182 bytes
Bitrate: 1738.026616 kbps
Qf: 0.290135
Key frames: 945 (0; 300; 600; 900; 1200; ... 146845)
Null frames: 0
Min key int: 5
Max key int: 300
Avg key int: 155.703703
Delay: 0 ms

[ About MPEG4 encoding ]

User data: XviD0046
Packed bitstream: No
QPel: No
GMC: No
Interlaced: No
Aspect ratio: Square pixels
Quant type: MPEG
Number of frames: 147140
Drop/delay frames: 0
Corrupted frames: 0

I-VOPs: 945 ( 0.642 %)
P-VOPs: 74565 ( 50.676 %) #############
B-VOPs: 71630 ( 48.682 %) ############
S-VOPs: 0 ( 0.000 %)
N-VOPs: 0 ( 0.000 %)

Max consecutive B-VOPs: 2
1 consec: 69676 ( 98.617 %) #########################
2 consec: 977 ( 1.383 %)

[ DRF analysis ]

Average DRF: 3.446506
Standard deviation: 0.551863
Max DRF: 4

DRF<2>4: 0 ( 0.000 %)

I-VOPs average DRF: 2
I-VOPs std. deviation: 0
I-VOPs max DRF: 2

P-VOPs average DRF: 2.956024
P-VOPs std. deviation: 0.205039
P-VOPs max DRF: 3

B-VOPs average DRF: 3.976169
B-VOPs std. deviation: 0.152521
B-VOPs max DRF: 4

This report was created by AVInaptic (10-04-2007) on 26 nov 2007, h 14:11:31

Gracias. :wink:

Avatar de Usuario
elguaxo
Mensajes: 1047
Registrado: Sab 10 Jun, 2006 06:51

Mensaje por elguaxo » Mar 18 Dic, 2007 23:35

Imagen

Hermosa captura y excelente reporte AVInaptic. Yo a esto no lo tocaría más! :)

--

Imagen

Esto se ve que trae un poco más de dolores de cabeza. Average DRF: 3.446506 es aceptable, pero ya que entraste en este hilo, vamos a ver si se puede hacer algo más.

Código: Seleccionar todo

Max consecutive B-VOPs: 2
1 consec: 69676 ( 98.617 %) #########################
2 consec: 977 ( 1.383 %)
Más allá de DRF promedio un poquito alto, vemos que el codec apenas pudo hacer uso de los 2 B-VOPs consecutivos. Claramente le cuesta comprimir esta fuente. Dejando la resolución como está, un filtro rápido que le puedes agregar al final de tu script es:

Código: Seleccionar todo

Temporalsoften(2,3,3,mode=2,scenechange=6)
No creo que la diferencia sea enorme, pero va a mejorar. Copianos el reporte AVInaptic después de probar con este nuevo filtro en tu script.