Probando con Comskip donator build 0.82.012 y GPU

La versión actual de Comskip (versión donante) en MCEBuddy es 0.82.003.
Sí, sé que podemos añadir nuestra propia versión actualizada de Comskip donante.

¿La característica más importante de la versión actual de Comskip? La v0.82.011 está compilada con decodificadores FFMPEG 4.3
¿La siguiente mejor? Detección de anuncios para decodificadores 4K y de 10 bits (HDR).

También, para quien preguntaba sobre la eliminación de tickers/crawls, busque “ticker” en el archivo INI. Nótese que la v0.82.007 añadió un parámetro INI para detectar un ticker/crawl superior. Así que, si eso es lo que preguntaban, se necesita la versión más nueva de Comskip; sin embargo, los decodificadores con asistencia por hardware solo están disponibles en la versión donante.

Estaría dispuesto a donar/comprar MCEBuddy nuevamente si ese fuera el factor bloqueante para obtener una versión donante actualizada de Comskip en MCEBuddy (o al menos en la versión donante de MCEBuddy). Claro, puedo conseguir mi propia versión donante actualizada de Comskip y configurar MCEBuddy para usar mi versión, pero eso no ayuda a nadie más.

¿Está esto en la hoja de ruta de MCEBuddy (para 2023?) ahora que también hay una versión más nueva de FFMPEG (v6.0)? Supongo que Comskip enlaza estáticamente sus librerías de FFMPEG, pero sospecho que una versión más nueva de FFMPEG para MCEBuddy también le ayudará (¿y al HandbrakeCLI?) con mejor decodificación/codificación por HW/GPU.

También noté que la versión donante v0.82.003 que viene con MCEBuddy no permite la opción “–cuvid” para indicar que la decodificación por hardware debe usar los decodificadores por hardware de nVidia (es decir, CUDA).

¿Opiniones?

Cambios en 0.82.012
- Añadido soporte para decodificadores de vídeo de 10 bits
**Cambios en 0.82.011**
**- Actualizados los decodificadores a ffmpeg 4.3**
- Tamaño máximo de vídeo aumentado para soportar vídeo 4K
Cambios en 0.82.010
- Actualizados los decodificadores a la última versión disponible de ffmpeg
- Error corregido: A veces Comskip se queda colgado al finalizar el procesamiento de una grabación.
Cambios en 0.82.009
- Tamaño máximo de vídeo aumentado a 4000x2400 para permitir el procesamiento de vídeo 4k
Cambios en 0.82.008
- Esta es una versión de prueba para Windows 7, sin otras diferencias respecto a la versión anterior
Cambios en 0.82.007
- Parámetro INI añadido: configurar top_ticker_tape > 0 elimina píxeles desde la parte superior del vídeo
- Actualizados los decodificadores a la última versión disponible, se observan algunas mejoras de robustez
Cambios en 0.82.005
- Error corregido: En algunas grabaciones Comskip se bloquea
- Error corregido: En algunas grabaciones no se decodifica audio
- Actualizados los decodificadores a la última versión disponible, en general se observa cierto aumento de velocidad
Cambios en 0.82.004
- Error corregido: la salida vdr debe usar números de fotograma con indicación de tiempo por debajo del segundo en lugar de fracción de segundo

Aquí están mis resultados probando diferentes versiones de Comskip y usando diferentes métodos de decodificación.
Probé con Win10 x64 22H2 y usando un i5-4430 (Haswell) con una RTX2060 con los últimos controladores nVidia (531.61 2023-04-13).

Estoy transcodificando grabaciones de HDHomeRun DVR (flujos TS de HDTV OTA en MPEG2/AC3) a H.265/AC3 en contenedores MKV.

Resumen TL;DR:
La versión donante de Comskip definitivamente acelera la detección de anuncios. La versión donante actual de Comskip (0.82.12) acelera significativamente la detección de anuncios frente a la versión donante de Comskip (0.82.003) que viene actualmente con MCEBuddy.

Por “significativamente”, me refiero a más del 50 % más rápido. Lo que tarda 10m00s en hacer la detección de anuncios con MCEBuddy stock, solo tardará 6m32s después de cambiar a la versión donante actual de Comskip.

Resumen TIL:
La aceleración al usar la GPU para detección de anuncios no es ni de cerca tanto como para transcodificación a x264 o x265. La razón es que la detección de anuncios se ejecuta sobre la codificación nativa del DVR. En mi caso, es una señal HDTV, y mi HDHR OTA DVR no está transcodificando, solo va directo a disco (y lo mismo para las grabaciones de Tivo transferidas vía KMTTG). Esto significa que el medio que escanea Comskip en mi configuración está en formato TS (Transport Stream) usando codificación MPEG2 para video y AC3 para audio. Y en su mayoría, no hay realmente ninguna aceleración al hacer decodificación MPEG2 en la GPU, ya que todos los CPUs modernos de los últimos 20 años tienen decodificación HW de MPEG2 incorporada (¿recuerdan todas esas instrucciones específicas para multimedia que ahora son estándar en CPUs x86?). Tienen que tenerlas para funcionar en dispositivos de bajo costo como TVs, dongles como Chromecast y Firestick, y subiendo en la cadena a Roku, FireTV, sintonizadores (como los productos HDHR de Silicon Dust) y grabadoras/aplicaciones DVR. Dicho eso, definitivamente hay una aceleración al usar una GPU y la versión donante de Comskip.

Mi recomendación (no refleja las opiniones de MCEBuddy ni de nadie más):
Páguen los $10 (o más) para obtener la versión donante de Comskip si tienen una tarjeta nVidia reciente, y asegúrense de agregar la opción más rápida entre “–cuvid” o “–nvpau” a sus opciones personalizadas de Comskip. De lo contrario, lo que hace Comskip es usar las instrucciones MM del CPU con la opción “–hwassist”, y solo la versión donante actual de Comskip tiene opciones para usar específicamente la GPU para decodificación.

Advertencia:
Si están transcodificando archivos ya transcodificados (es decir, video x264/x265 descargado de algún lugar, no una grabación TS de HDTV OTA en MPEG2), entonces usar decodificación GPU en Comskip tiene aún más sentido, ya que definitivamente será más rápido en GPUs.

comskip-0.82.003-Donator-hw-test.log          --- Versión donante de MCEBuddy
Generated using donator  Comskip 0.82.003
Parsed 49136 video frames and 55262 audio frames at   336.73 fps

comskip-0.82.012-hw-test.log                  --- Comskip actual (no donante)
Generated using public  Comskip 0.82.012
Parsed 49136 video frames and 55262 audio frames at   243.65 fps

comskip-0.82.012-Donator-hw-cuvid-test.log    --- Comskip actual (donante, decodificador nVidia CUVID)
Generated using donator  Comskip 0.82.012
Parsed 49136 video frames and 55262 audio frames at   490.11 fps

comskip-0.82.012-Donator-hw-nvpau-test.log    --- Comskip actual (donante, decodificador nVidia VDPAU)
Generated using donator  Comskip 0.82.012
Parsed 49136 video frames and 55262 audio frames at   514.61 fps

¿Cuál es la última versión para Windows 7 ya que WMC es la única tarjeta de TV por cable con canales encriptados que podemos ver, NO Windows 10?

Otra cosa que noté, debido a que mis grabaciones OTA están en flujos MPEG2, es que la transcodificación alcanza el máximo de mi CPU (realizando la decodificación MPEG2) y la GPU se utiliza para la codificación HEVC/x265. Así que, aunque definitivamente es más rápido con la GPU que sin ella, y definitivamente más rápido con la versión más nueva de comskip para donantes, todavía estoy limitado por la CPU debido al contenido MPEG2 en el lado de entrada de la transcodificación. Podría ser momento de pasar de la 5ª generación (Haswell) a una CPU actual de 12ª o 13ª generación. Estoy considerando la de 65W de 13ª generación, lo más probable. Eso también significa una nueva placa madre ITX, junto con memoria DDR5. Y podría también conseguir un gabinete (ligeramente) más grande que pueda albergar una tarjeta 3090 o serie RTX 40. La única parte positiva de todo el proyecto de actualización es que los precios de los discos M2 están bajando mucho. Los de 4TB están acercándose a los $200.

Esto ya se ha hecho