Está en la página 1de 7

21/2/23, 1:29 Andrew's Tutorial Blog: Desentrelazado con AVISynth y QTGMC - Actualizado anualmente

Desentrelazado con AVISynth y QTGMC -


Actualizado anualmente
Bienvenido al nuevo hogar de mi tutorial de desentrelazado QTGMC. Esta publicación se
actualizará periódicamente a medida que ocurran nuevos cambios y salga nueva información,
o hasta que aparezca una mejor opción.

Cambios desde la última publicación/video:

He cambiado a un flujo de trabajo completamente de 64 bits


QTGMC tiene algunos requisitos nuevos
Dejé FFMPEG como el programa de renderizado recomendado a favor de
VirtualDub2
AVISynth Info Tool es ahora la forma recomendada de comprobar y asegurarse de
que ha instalado AVISynth correctamente.

GRAN DESCARGO DE RESPONSABILIDAD: Es posible que este proceso no funcione, se


bloquee o le haga otras cosas a su sistema. Escanea virus todo lo que descargas. No es una
garantía del 100% de que evitará contraer una infección de malware, pero es mucho mejor
que no verificar en absoluto.

Si está haciendo un trabajo profesional, siempre mire los archivos que cree usando este
proceso antes de enviarlos/cargarlos para verificar si hay fallas de audio y/o video. Siga este
tutorial bajo su propio riesgo.

Además, este tutorial es para Windows 10. La mayoría de los pasos funcionan para versiones
anteriores de Windows, pero pueden requerir ligeras modificaciones. Los usuarios de MacOS
y otros sistemas operativos deben buscar en otra parte.

Aquí está la versión en video de la configuración y el flujo de trabajo básico de desentrelazado


de QTGMC:

Configuración

7-zip  (opcional)

Si aún no tiene 7-zip instalado, no podrá abrir muchos de los archivos descargados. La
versión estable de 64 bits debería estar bien.

A continuación, necesitaremos obtener AVISynth+. Puedes agarrarlo desde aquí:

https://github.com/AviSynth/AviSynthPlus/releases

Si aún no tiene instalado MSVC 2019 Redistributable, tome la versión que termina con
"vcredist".

Luego, necesitaremos obtener todos los filtros (complementos) necesarios: FFMPEGSource


Nota: Se ha demostrado que la versión 2.40 corrompe los cuadros de video. Use una versión
diferente o use LSMASHSource como se indica a continuación.

file:///D:/Downloads/Deinterlacing with AVISynth and QTGMC-es.html 1/7


21/2/23, 1:29 Andrew's Tutorial Blog: Desentrelazado con AVISynth y QTGMC - Actualizado anualmente

Esto es lo que permitirá que AVISynth+ cargue nuestros archivos de video. Funciona con casi
cualquier combinación de contenedor/códec, pero lea la sección "Problemas conocidos" para
conocer las cosas a tener en cuenta (sugerencia: no use video h.264 entrelazado con él).

Nota: si necesita trabajar con video h.264 entrelazado, pruebe LSMASHSource en su lugar.
Requiere dos comandos en lugar de uno para funcionar (técnicamente tres si cuenta
AudioDub (video, audio) para combinar los dos), pero puede admitir algunos formatos no
estándar. Gracias a neonfrog por el aviso.

QTGMC

El complemento de desentrelazado de elección. Requiere una gran cantidad de


complementos adicionales, de los cuales utilizará las versiones de 64 bits (si se ofrece una
opción). Para la mayoría de los usos, solo son necesarios los "complementos y scripts
principales".

Para el enlace "Zs_RF_Shared.avsi", haga clic con el botón derecho en el enlace y haga
"Guardar enlace como", o cualquiera que sea el equivalente en su navegador de elección.

NO olvide descargar   también la biblioteca FFTW3 de 32 bits. Sin él, QTGMC no se


ejecutará.

Con todos los filtros y scripts de AVISynth capturados, es hora de obtener el software de
soporte:

AvsPMod

Esto es como un IDE para los scripts de AVISynth, y en mi opinión es bastante esencial. Tome
la versión de 64 bits para este tutorial.

Herramienta de información AVISynth

Esto nos permite detectar las funciones del procesador y verificar si AVISynth está
correctamente instalado.

Finalmente necesitamos tomar un programa de renderizado. Para facilitar su uso, ahora


recomiendo VirtualDub2, una bifurcación del programa original que se utiliza para renderizar
los scripts de AVISynth. 

VirtualDub2

Cuando termine de descargar, escanee virus de todas las cosas.

Instalando
AVISynth+ tiene un instalador simple. Recomiendo instalar en cualquiera que sea su carpeta
de usuario (por ejemplo, C:\Users\Me\) en lugar de la predeterminada de Archivos de
programa (x86) para que no tenga que lidiar con solicitudes de autenticación cada vez que
agregue un complemento. Además, recomiendo encarecidamente marcar la opción "Agregar
script de AVISynth al menú de elementos nuevos". De lo contrario, puede seguir con los
valores predeterminados.

Luego, vaya al directorio plugins64+ para AVISynth+. Por ejemplo, la instalación


predeterminada crea una carpeta de complementos en:

C:\Program Files(x86)\AVISynth+\plugins64+\

Extraiga todas las versiones "x64" de los archivos .dll y .avsi al directorio de complementos (si

file:///D:/Downloads/Deinterlacing with AVISynth and QTGMC-es.html 2/7


21/2/23, 1:29 Andrew's Tutorial Blog: Desentrelazado con AVISynth y QTGMC - Actualizado anualmente
se le da la opción) desde todos los complementos EXCEPTO el archivo fftw-3*.dll. Si puede
elegir entre AVX, AVX2 y una versión sin AVX, necesitará saber qué conjuntos de
instrucciones admite su procesador. CPU-Z   o AVISynth Info Tool pueden decirle esto si no
está seguro.

Ahora, abra el archivo fftw-3*.dll, luego (como se indica en la página de QTGMC) extraiga el
archivo libfftw3f-3.dll. Haga una copia y cámbiele el nombre a "FFTW3.dll". Coloque los
archivos "libfftw3f-3.dll" y "FFTW3.dll" en la carpeta SysWow64. No me preguntes por qué
tienes que hacer esto, estoy de acuerdo en que parece inútilmente tedioso.

Tenga en cuenta: si solo está usando AVISynth+ (no versiones anteriores de AVISynth) y solo
necesita usar QTGMC, puede omitir el paso anterior y simplemente descargar/colocar la
versión de 64 bits de libfftw3f-3.dll en el directorio plugins64+ . A pesar del mensaje de error
en AVSInfoTool de 32 bits, QTGMC ahora funcionará en ambos modos (aunque puede colocar
la versión de 32 bits de  libfftw3f-3.dll en el director de plugins+ para borrar el error si lo desea,
y para borrar Zf_RF_Shared error, debe realizar el método de instalación normal anterior) . 

Además, si desea poder ejecutar las funciones "EZDenoise" y "Sharpness" de QTGMC,


coloque la versión de 64 bits de "fft3dfilter.dll" en el directorio plugins64+.

Gracias a Spammy Family por señalar esto.

Hablando de tedioso, si desea usar el preajuste "Muy lento" o "Placebo" para QTGMC, parece
que necesita instalar la versión de 64 bits de FFTW en su directorio System32 usando el
mismo método mencionado anteriormente.

Extraiga el archivo AvsPMod desde donde quiera ejecutarlo; nuevamente, le recomiendo su


carpeta de usuario.

Extraiga la herramienta de información AVISynth de la misma manera. Si lo desea, puede


instalarlo de manera más oficial haciendo clic en el archivo AVSInfoToolInstaller.exe, pero
generalmente lo ejecuto directamente desde la carpeta "AVSInfoTool_FilesOnly". 

Continúe y ejecútelo ahora, asegurándose de seleccionar la opción "AVISynth de 64 bits" una


vez cargada. Si obtiene errores que no son sobre la biblioteca FFTW3 o Zs_RF_Shared.avsi
(para corregir esos errores, instale la versión de 64 bits de FFTW en su directorio System32
utilizando el mismo proceso de cambio de nombre/copia mencionado anteriormente), luego
verifique dos veces y haga seguro que seguiste todos los pasos anteriores correctamente.
También es posible que desee tomar nota de cuántos núcleos y procesadores lógicos tiene,
junto con qué conjuntos de instrucciones admite su CPU. 

Finalmente, cree una carpeta para VirtualDub2 y extraiga su archivo allí.

Haciendo tu script .avs

Ahora que todo está listo, vayamos al directorio con sus archivos de video y hagamos un
script .avs. Haga clic con el botón derecho en cualquier parte del directorio, seleccione Nuevo,
luego AVISynth Script y cambie el nombre como desee. Si esa opción no aparece,
simplemente puede crear un nuevo archivo de texto y cambiar la extensión .txt a .avs.

Abra AvsPMod, luego vaya al menú Opciones y haga clic en "Asociar archivos .avs con
AvsPMod". Ahora debería poder hacer doble clic en los scripts .avs y abrirlos directamente en
AvsPmod. Hazlo con el script que acabas de crear.

Aquí está mi configuración de secuencia de comandos .avs repetitiva para el desentrelazado:

    SetFilterMTMode ("QTGMC", 2)

    FFMPEGSource2 ("videofile.avi", atrack=1)


    AssumeBFF()

    QTGMC(preset="Slower")

    BilinearResize(720,540)

file:///D:/Downloads/Deinterlacing with AVISynth and QTGMC-es.html 3/7


21/2/23, 1:29 Andrew's Tutorial Blog: Desentrelazado con AVISynth y QTGMC - Actualizado anualmente
    Prefetch(10)

La opción "atrack=1" para FFMPEGSource selecciona la pista de audio que se pasa durante
el procesamiento. Si la opción predeterminada no le brinda audio en los resultados, pruebe
"atrack=-1" en su lugar.

Tenga en cuenta que, de manera predeterminada, tanto FFMPEGSource como (ciertos modos
de) LSMASHSource indexan su archivo de video la primera vez que carga el script .avs en
AvsPMod o en el programa de renderizado de su elección. Esto puede tomar un tiempo y dar
la apariencia de congelar el programa. Cuando termine, verá que aparece un archivo .ffindex o
.lwi en el mismo directorio que su video con el mismo nombre que su video.

También tenga en cuenta que LSMASH requiere comandos separados para video y audio
junto con un comando de doblaje para recombinarlos. Por ejemplo:

a=LWLibavAudioSource(fuente="suarchivo.m2ts", stream_index=-1,
caché=verdadero, av_sync=verdadero, tasa=0, decodificador="")
v=LWLibavVideoSource("suarchivo.m2ts")
AudioDubEx(v,a)

Para obtener más información, consulte la página wiki aquí: 


http://avisynth.nl/index.php/LSMASHSource

Si está intentando cargar un archivo .avi, probablemente debería intentar:

AVISource("suarchivo.avi", audio=true)

en lugar de FFMPEGSource, ya que AVISource tiene un mejor rendimiento y puede admitir


algunos códecs .avi de casos extremos con los que FFMPEGSource tiene problemas.

Supongamos que BFF/TFF se ocupa del orden de campos entrelazados. Regla general
simple aquí: los videos caseros probablemente serán BFF, los DVD lanzados comercialmente
o los videos profesionales probablemente serán TFF. Sabrá si se equivoca si obtiene una vista
previa del video y "salta" cada otro cuadro.

Puede o no necesitar cualquiera de los dos

ConvertToYV12 (entrelazado = verdadero)

ConvertToYUY2 (entrelazado = verdadero)

comandos antes de QTGMC dependiendo del tipo de video que esté alimentando a
FFMPEGSource2. Solía ​usar ConvertToYV12() con frecuencia en versiones anteriores de
QTGMC que no admitían otros formatos de color, pero la versión actual parece ser mucho
más indulgente. 

La principal diferencia entre YV12 y YUY2 tiene que ver con el submuestreo de croma (que es
otro agujero de conejo para bajar), pero para simplificar: algunos complementos de AVISynth
más antiguos solo admiten YV12, mientras que otros admiten tanto YV12 como YUY2. Si un
complemento se queja de que su metraje de origen no está en ningún formato de color,
conviértalo a YUY2 si puede.

file:///D:/Downloads/Deinterlacing with AVISynth and QTGMC-es.html 4/7


21/2/23, 1:29 Andrew's Tutorial Blog: Desentrelazado con AVISynth y QTGMC - Actualizado anualmente
Es una buena idea intentar obtener una vista previa del script sin un comando Convertir y ver
si funciona primero, si no es así, agréguelo. Gracias a ENunn por la sugerencia de agregar
entrelazado = verdadero, lo que debería reducir los errores de mancha cromática.

El cambio de tamaño que uso en este caso es para corregir la relación de aspecto de píxeles
del metraje. Lo explico con más detalle en el videotutorial, pero básicamente el video SD fue
diseñado para mostrarse en televisores que estiraban ligeramente la imagen verticalmente (o
muy ligeramente horizontalmente en el caso de PAL). En las pantallas de "píxeles cuadrados"
(prácticamente todas las pantallas, excepto los televisores analógicos), debe corregir esto
para que la imagen tenga las proporciones correctas. Amplío la imagen para retener algunos
detalles y crear una nueva versión "maestra" que puedo usar de diferentes maneras, pero si
está tratando de convertir algo para un servicio de transmisión importante, generalmente
quieren 640x480 para contenido SD (y 29.97 o 25 fps en lugar de 59,94 o 50 fps). Puede
hacer un método de cambio de tamaño diferente aquí como Lanczos o Spline64 si desea
agregar un poco de nitidez.

Si desea aumentar ligeramente la escala para corregir la proporción de aspecto de píxeles


(como hice en el script de ejemplo anterior), entonces 720x540 es correcto para NTSC y
768x576 es correcto para PAL.

El número de Prefetch debe establecerse en 1 o 2 menos que el número de "procesadores


lógicos" en su sistema. Para verificar qué es eso, vaya al Administrador de tareas en
Windows, seleccione la pestaña Rendimiento, luego haga clic en el elemento CPU. Verá abajo
en la ventana una entrada para el número de procesadores lógicos en su sistema. Para
algunas personas, será lo mismo que la cantidad de núcleos físicos, para otras podría ser el
doble si su CPU es compatible con Hyperthreading. En mi caso, tengo 12 procesadores
lógicos, por lo que configuré Prefetch en 10.

Por otro lado, se supone que EdiThreads debe configurarse en la mitad del número de
procesadores  físicos . núcleos en su sistema, y ​si es así, puede dar un impulso de velocidad
leve. Con el flujo de trabajo actual, pude configurarlo en 3 sin problemas (solo mi sistema de 6
núcleos), pero su kilometraje puede variar. Si experimenta bloqueos de renderizado aleatorios
(no bloqueos generales del sistema), baje este número primero antes de reiniciar el
renderizado. 

Actualización: parece que EdiThreads ahora puede usar todos los núcleos sin problemas de
estabilidad, así que elimino mi consejo al respecto. Si se encuentra con bloqueos de
procesamiento, puede intentar agregar EdiThreads=1, de lo contrario, déjelo fuera.

Si necesita generar 29,97 fps (25 fps para PAL) en lugar de 59,94 fps (50 fps para PAL) en
esta etapa, agregue FPSDivisor=2 al comando QTGMC así: QTGMC(preset="Slower",
FPSDivisor=2

    )

Representación
En lugar de usar FFMPEG de línea de comandos, ahora recomiendo VirtualDub2 para generar
scripts de AVISynth. Esto se debe principalmente a que VirtualDub2 es mucho más fácil de
trabajar para la mayoría de las personas y parece que se está quedando.

Trabajar con secuencias de comandos AVISynth en VirtualDub2 es bastante simple: inicie


VirtualDub2, arrastre su secuencia de comandos a la ventana principal y luego espere a que
aparezca la vista previa. Establezca la configuración de compresión deseada en los menús de
video y audio. Tenga en cuenta: el menú de audio está predeterminado en "copia de
transmisión directa", que debe cambiar a "modo de procesamiento completo", luego puede
seleccionar la compresión después.

Yo personalmente uso ProRes para la mayoría de las conversiones, pero puede elegir entre
una variedad de otros códecs. Podría entrar en detalles sobre la configuración particular en
una publicación de blog / video por separado. 

file:///D:/Downloads/Deinterlacing with AVISynth and QTGMC-es.html 5/7


21/2/23, 1:29 Andrew's Tutorial Blog: Desentrelazado con AVISynth y QTGMC - Actualizado anualmente
Para exportar el video, vaya al menú de archivo, luego seleccione "guardar video". Asegúrese
de seleccionar el tipo de archivo correcto para los códecs que está utilizando (por ejemplo,
puede poner un video H.264 en un contenedor .mp4, .mov o .mkv, pero ProRes solo irá en
.mov o . mxf).

Mire su video antes de enviarlo a cualquier parte para asegurarse de que no haya fallas. Me
quemé con esto en el pasado cuando exportaba varios episodios de una serie de televisión
que tenía cortes de audio aleatorios.

PD: VirtualDub2 no genera archivos ProRes "oficiales", por lo que si será la última parada en
su cadena de exportación, considere usar un flujo de trabajo diferente si el archivo va a un
canal de televisión importante. Según se informa, algunos canales (al menos según los
editores del subreddit /r/editors de Reddit) dijeron que los archivos FFMPEG ProRes no
pasarán el control de calidad con ellos.

Opcional: recortar y cambiar el tamaño a resoluciones HD

Esto es lo que debe agregar si desea escalar de SD a HD con un recorte central:

    Recortar (0,68,0,-68)

    Spline64Resize (1280,720)

Tenga en cuenta que los números en el comando de recorte se refieren a izquierda, arriba,
derecha, abajo respectivamente, y los números derecho e inferior son negativos, mientras que
los números izquierdo y superior son positivos. No me preguntes por qué AVISynth hace esto,
simplemente lo hace.

La configuración anterior le dará lo más cerca posible de un marco de 16x9 con esta
resolución. Técnicamente, 720x405 es 16x9 real, pero a las opciones de submuestreo de
croma admitidas por QTGMC no les gustan los números impares, por lo que 720x404 es lo
más cercano que puede obtener.

Además, esto puede recortar más de lo que desea, así que siéntase libre de jugar con la
configuración. Si desea enmarcar una parte diferente de la imagen (como la parte superior o
inferior frente al medio), simplemente ajuste los números de recorte en consecuencia
sumando lo que resta de un número al otro, o viceversa. Por ejemplo, para usar solo la parte
superior del marco, haría lo siguiente:

    Recortar (0,0,0,-136)

Tiene un montón de características adicionales enumeradas en la página wiki, con las que
puede jugar si los valores predeterminados no trabajo para ti

Otra cosa a tener en cuenta: si nota un cambio de color o gamma en su imagen mejorada en
el renderizado, intente agregar:

ColorMatrix(modo="rec.601->rec.709)

después del paso de cambio de tamaño.

Opcional - FFMPEG

Si desea utilizar FFMPEG de línea de comandos en lugar de VirtualDub2, aquí tiene algunas
instrucciones de configuración:

Abra cualquier archivo ffmpeg que haya capturado, navegue hasta el directorio "bin" y extraiga
el archivo ffmpeg.exe en cualquier directorio en el que se encuentren sus archivos de video.
Alternativamente, puede

file:///D:/Downloads/Deinterlacing with AVISynth and QTGMC-es.html 6/7


21/2/23, 1:29 Andrew's Tutorial Blog: Desentrelazado con AVISynth y QTGMC - Actualizado anualmente
extraer el archivo a algún lugar de su sistema y luego configure FFMPEG para que se ejecute
desde cualquier directorio agregándolo a su variable PATH:

1. Presiona las teclas Windows y R.


2. Escriba "controlar sysdm.cpl,,3". 
3. Haga clic en "Ejecutar".
4. Haga clic en "Variables de entorno".
5. Seleccione "Ruta" en "Variables del sistema" y haga clic en "Editar".
6. Vaya a donde extrajo ffmpeg.exe. 
7. Seleccione y copie la dirección de la ruta de la carpeta desde la barra de direcciones
hacia la parte superior de la ventana.
8. De vuelta en la ventana "Editar variable de entorno", haga clic en "Nuevo" y pegue la
ruta de la carpeta. Haga clic en Aceptar en todas las ventanas que abrió para llegar
aquí.

Cree un nuevo archivo de texto en el mismo directorio que sus videos y cambie su extensión a
.bat. Agregue los comandos FFMPEG de su elección. Por ejemplo, aquí hay un comando para
codificar un script .avs en un archivo ProRes 422HQ Quicktime:

    ffmpeg -i "videofile.avs" -c:v prores -profile:v 3 -pix_fmt yuv422p10le "output.mov"

file:///D:/Downloads/Deinterlacing with AVISynth and QTGMC-es.html 7/7

También podría gustarte