'Unsupport audio': sin sonido al grabar algunos .avi a dvd

El problema: 'unsupport audio' en el reproductor DVD

Tengo en el ordenador unos episodios de una serie de TV, en formato .avi. Al grabar unos 9 o 10 de estos episodios en un disco DVD (tal cual como avis), me encuentro con que el reproductor DVD de sobremesa emite un mensaje para tres de ellos:

'unsupport audio'

lo que significa, tal como puedo comprobar, que algunos de estos .avi tienen video pero se han quedado sin sonido. En el PC se veían y escuchaban sin problemas.

¿Problema de códecs del reproductor DVD de salón? No, pues los códecs y versiones de códecs usados en  estos .avi funcionan con otros videos. ¿Problema de integridad de esos videos? Hay muchos parámetros a revisar y, aunque existen programas para su comprobación que por supuesto ya he usado, algo se les puede haber escapado.

Repaso, regrabo, reparo, etc. los .avi con programas como Avinaptic, DivFix++, DivxRepair, Avidemux, VirtualDubMod, incluso separo (demuxar) el audio del video y recodifico el audio con Audacity, para luego volverlo a juntar con el video. Esos videos están aparentemente bien sincronizados (la parte de video y la de audio parecen encajar perfectamente, al menos observando las voces y los movimientos de los labios). En fin, nada de nada.

Para complicar las cosas, a veces tras una aparente buena reparación estos videos se ven y escuchan correctamente al grabarlos en un disco DVD-RW regrabable, o en un DVD-R al grabar sólo los primeros minutos de cada video (ahí estaba la pista del problema sin yo saberlo aún).

Tras un par de semanas investigando en mis ratos libres, experimentando y desperdiciando unos 5 'posavasos', finalmente una búsqueda en Internet con los términos

dvd "unsupport audio"

arrojó resultados positivos, especialmente esta web me puso en el camino adecuado. Ninguno de los programas de comprobación y reparación de archivos avi detectó o avisó de lo siguiente:

La solución: la duración exacta del audio y del video en el .avi

Como es sabido los archivos .avi son contenedores de video/audio. Pues bien, resulta que en esos .avi defectuosos la duración de la parte del video y de la parte del audio era diferente, generalmente mostraban una diferencia mayor de 1 o 2 segundos, a veces hasta 3, a veces hasta 10 segundos.

Es de esas soluciones que, cuando las encuentras, te dices ¡pero cómo no lo supe ver, si estaba ahí siempre! Aunque, en honor a la 'propia eficacia', hay que decir que la mayoría de programas más usados para testar o informar sobre videos, como GSpot y MediaInfo, muestran sólo la duración de la parte del video (el primero) o la duración de video/audio sin la precisión de segundos y milisegundos (el segundo).

Los reproductores por software del PC no sufrían este problema, pero sí el reproductor 'físico' de sobremesa el cual, por tanto, mostraba una tolerancia menor a esa diferencia de segundos o décimas de segundo entre el audio y el video. Es posible que no todos los reproductores muestren este comportamiento, quizás otros, o la mayoría, no lo sé, tengan una tolerancia mayor a este desfase.

Tres observaciones importantes:

- Revisando una muestra de .avi similares ya grabados en discos DVD-R que funcionaban bien, observé que a veces había diferencias de duración audio/video, pero que nunca sobrepasaban los 400ms.(casi medio segundo), con lo cual establecí como criterio de precaución, al repararlos reajustando los tiempos, no sobrepasar nunca este margen.

- Al menos en lo observado en mis archivos .avi, en ese desfase de tiempo la parte del audio siempre aparece más corta que la del video.

- En todos los casos la parte del video venía codificada con el códec Xvid en su versión 1.1.0 Final (UTC 2005-11-22). ¿Habrá un 'bug' o defecto en esa versión en concreto?

Resolviendo el problema paso a paso

En el foro de la web antes referenciada, 'carastec' resuelve el problema separando el audio (en formato .wav) del video y editando ese audio con un programa específico (Cool Edit Pro, pero también serviría Audacity) para añadirle los segundos de silencio necesarios, con el fin de ajustar la duración con la del video. Luego convierte el nuevo .wav resultante al formato también de audio .mp3 y, descartando el audio original, lo vuelve a juntar con el video mediante el programa VirtualDubMod para obtener de nuevo un .avi totalmente funcional.

Mi solución es más sencilla: simplemente cortar la parte de video sobrante por el final, donde suelen salir los títulos de crédito. Personalmente puedo prescindir de algunos últimos segundos de esos títulos de crédito con tal que la cosa funcione, y creo que muchos estaréis de acuerdo con este pequeño sacrificio, en aras de la facilidad de la operación.

Software necesario: VirtualDubMod

En todo el proceso el único programa a usar será el VirtualDubMod, por ser el único que muestra los tiempos audio/video de forma precisa (quizá también sirva el VirtualDub si ya lo tenéis instalado). Puede obtenerse en la página oficial de su proyecto (versión portable en inglés no traducida) o de un foro donde lo han traducido al español y al catalán (versión instalable, no portable).

- De la web oficial (portable):
http://sourceforge.net/projects/virtualdubmod/
Clic en 'Browse all files' -> Clic al primer item 'VirtualDubMod bugfix_cvs' -> Clic a '1.5.10.2 build 2542' -> Clic a 'VirtualDubMod_1_5_10_2_b2542.zip' para descargarlo.
Regresamos a 'Browse all files' -> Clic al segundo item 'VirtualDubMod' -> Clic al primer item 'VirtualDubMod 1.5.10.2' -> Y finalmente a 'VirtualDubMod_1_5_10_2_All_inclusive.zip' para descargarlo.
Creamos una carpeta en el lugar apropiado para este programa, con el nombre p.e. VDM o VirtualDubMod, y descomprimimos ahí el contenido del segundo archivo .zip 'VirtualDubMod_1_5_10_2_All_inclusive.zip'. Seguidamente descomprimimos en la misma carpeta el contenido del primer archivo .zip 'VirtualDubMod_1_5_10_2_b2542.zip'. Windows nos pedirá permiso para sobreescribir dos archivos ya existentes en esa carpeta: le decimos que sí.

Ya que estamos en Windows 7, podemos anclar el ejecutable principal 'VirtualDubMod.exe' arrastrándolo a la barra de tareas, teniéndolo accesible para usarlo con frecuencia mientras comprobamos y/o reparamos nuestros videos.

- Del foro en español (instalable):
http://www.videoedicion.org/foro/index.php?topic=65651.0
Clic en el primero de los 4 vínculos, que parece ser el único que funciona, el que pone 'Enlace 1 Easy-share'. Este servidor ahora se llama Crocko, y el enlace en concreto es éste

Debo decir que no tengo instalada esta versión en español de VirtualDubMod, pero según afirman parece que funciona bien.

Poniendo a trabajar el VirtualDubMod

Pues nada, abrimos el ejecutable VirtualDubMod.exe, seguidamente menú File -> Open video file, (en español Archivo -> Abrir video), cargamos el .avi problemático. Si nos sale un aviso sobre 'VBR audio stream detected' le damos a 'No'. Luego vamos de nuevo a File -> File Information (en español Archivo -> Información Archivo), y nos aparece algo parecido a esto:

ajustar-audio-video-Virtualdubmod-1






















En resaltado podemos comprobar claramente cómo difieren las duraciones de la parte de video y la parte del audio, aquí en casi 11 seg. Para que el .avi funcione correctamente en algunos reproductores DVD de salón, lo ideal es que coincidan exactamente hasta el milisegundo, o bien con un margen no mayor de 400 milisegundos de diferencia (quizá podría ser mayor, pero como comento más arriba he decidido establecer este margen máximo).

Bien, pues lo que hacemos es anotar en un papel la duración exacta de la parte del audio. En el caso del .avi analizado en la anterior imagen sería:

41:09.64

es decir, 41 minutos, 09 segundos y 640 milisegundos.

Seguidamente cerramos la ventana de información del archivo y vamos al menú Edit -> Go to (en español Editar -> Ir a) y, en el recuadro que se abre, introducimos en el campo inferior 'Jump to frame at time' (en español 'Ir a minuto/segundo') las cifras de tiempo anotadas antes en papel, es decir, el último fotograma de la parte del audio:

ir-a-ultimo-fotograma-audio
Tras darle al OK nos lleva a un punto como éste, hacia el final de los títulos de crédito:

ajustar-audio-video-Virtualdubmod-2
Esto también podemos hacerlo simplemente moviendo el cursor deslizante hacia el final del .avi y buscando manualmente el punto exacto, ayudándonos con las teclas de flechas <- y -> de nuestro teclado para avanzar o retroceder fotograma a fotograma.

Si el fotograma que buscamos existiese pero no exacto al milisegundo, nos iríamos al inmediatamente anterior. P.e. si en vez de 41:09.640 sólo tuviésemos el 41:09.680 o el 41:09.620, nos situaríamos en este último.

Bien. Situado ya el cursor deslizante sobre ese fotograma, nos vamos a Edit -> Set selection end (en español Editar -> Poner en final)

configurar-seleccion-a-cortar-virtualdubmod

Observaremos que debajo del cursor deslizante aparece una pequeña marca de selección:

ajustar-audio-video-Virtualdubmod-3
A continuación, nos vamos al menú Video -> Direct stream copy (en español Video -> Copia directa). ¡Es importante dejarlo así marcado, pues de este modo VirtualDubMod no volverá a recodificar el video entero!

Para finalizar, simplemente nos vamos a File -> Save as (en español Archivo -> Guardar como), para guardar esta selección ya como un nuevo archivo .avi, y en el cuadro que se abre elegimos la ubicación donde guardarlo, le ponemos un nombre (distinto al archivo con el que trabajamos) y le damos al botón 'Guardar'. Esperamos unos segundos a que se guarde el archivo...

Y ya está.

Bueno, toca comprobar la exactitud conseguida en las duraciones del audio y del video del nuevo .avi, así que simplemente, y tras cerrar el archivo con el que trabajábamos, abrimos este nuevo archivo .avi y, tal como hicimos al principio, nos vamos a File -> File Information. En mi caso mostraba una coincidencia exacta al milisegundo:

audio-video-ajustados-al-milisegundo
En otros .avi el ajuste no ha sido tan exacto, pero el margen nunca ha sobrepasado los 400 ms., con lo que no he tenido problemas al grabarlos y reproducirlos en el DVD de sobremesa. Éste, p.e., con una diferencia de 360 ms. entre audio y video, ha funcionado perfectamente:

ajustar-audio-video-Virtualdubmod-4
Nada más. ¡Espero que este tutorial os sea de utilidad!

4 comentarios:

  1. Genial ha sido genial :)
    He resuelto gracias a ti un problemita con un audio, la diferencia era de 37 ms.
    He ido a sougeforce y me he bajado el virtualdub porque el virtualdubmod esta inactivo, pero vaya funciona exactamente igual he ido siguiendo tus instrucciones y perfecto.
    Muchisimas gracias

    ResponderEliminar
    Respuestas
    1. Gracias por tu amable comentario.
      La pág. de virtualdubmod en sourceforge no me aparece inactiva. Quizás te refieres a que la última versión disponible ahí es de 2006, pero funciona bien.
      Sí, con virtualdub debería también conseguirse, y veo que así ha sido.
      Qué bueno el elefante-pez en tu web...
      Saludos.

      Eliminar
  2. Buenas tardes, el problema de mi PC es que comienza a iniciar window10 y se queda alli, luego aparece el la pantalla "Unsupport". Lo coloco con otro monitor y funciona normal. Cual sera el problema???

    ResponderEliminar
    Respuestas
    1. Gracias por comentar y disculpa el retraso.
      El mensaje de 'unsupport' ¿qué más decía? ¿Qué es lo que no 'unsupport', qué deja de soportar? Parece algo relacionado con los controladores del monitor o de la tarjeta gráfica, pero vaya, necesito más info.
      Si te aparece de nuevo, toma un bloc y un boli y escríbelo.

      Eliminar

Resssopla aquí tu pregunta, tu respuesta, tu duda o tu fantasía...