MEncoder.- Reparar index de videos

Con MEncoder se pueden arreglar archivos (avi, flv, etc.) que estén dañados por descargas interrumpidas, mal copiados, etc.

Las opciones -idx o -forceidx de MEncoder reparan el index (índice) del archivo.

Sintaxis

mencoder [nombre-del-vídeo-dañado] [Opción -idx o -forceidx] -oac [codec de audio] -ovc [codec de vídeo] -o [vídeo-reparado]

Estas líneas de comando de ejemplo funcionan bien en avi's:

mencoder videooriginal.avi -idx -oac copy -ovc copy -o videoreparado.avi

mencoder videooriginal.avi -forceidx -oac copy -ovc copy -o videoreparado.avi

En otros blog's usan esta orden para arreglar avi's; copian el codec de audio y vídeo del avi original con copy, y hasta el momento me ha dado buenos resultados.

Por lo que entendí del manual de MEncoder y las pruebas que hice se puede corregir el index de otros tipos de archivos eligiendo los codec's apropiados (son en base al vídeo original), más abajo se indica como se encuentran.

El tamaño del archivo original depende de los codec's utilizados. En el caso de los avi's hasta el momento me han quedado prácticamente igual, con algunos KB abajo. Con los flv aumentaron mucho con respecto al original.

Preguntar por comandos los codec's que disponemos

Codec de audio:

mencoder -oac help

Codec de v&iaute;deo:

mencoder -ovc help

Averiguar cual es el codec del vídeo

mplayer -identify [Nombre-del-Video/Audio] -ao null -vo null -frames 0 2>/dev/null | grep ^

Con script info-videos.sh pueden tener esta línea siempre a la mano.

Copy&Paste del manual de MEncoder:

-idx (vea también -forceidx)

Reconstruye el índice de los archivos en los que no se encuentra, permitiendo búsquedas. Es útil con descargas rotas/incompletas, o archivos que están mal creados. NOTA: Esta opción solo funciona si el medio soporta búsquedas (p.e. no con stdin, pipe, etc).

-forceidx

Fuerza la reconstrucción del índice. útil para archivos con índice mal (desincronización A/V, etc). Activa la posibilidad de búsquedas en archivos donde no era posible. Puede arreglar el índice permanentemente con MEncoder (vea la documentación). NOTA: Esta opción solo funciona si el dispositivo soporta búsquedas (p.e. no se puede usar con stdin, pipe, etc).

Script para reparar el index de avi's.

#!/usr/bin/env bash

# Script para reparar el index de avi's. Necesita de mencoder y zenity para funcionar.

# Script de: http://travesuras.wordpress.com

# ¿Donde se guarda? Salve el script en el path de de los script del nautilus y asigne permisos de ejecución.

# Uso: Situé el puntero sobre el archivo a reparar en el nautilus, abría el menú contextual, seleccione este script y siga los pasos que se indican en la ventana emergente.

# Ventana con el nombre de salida del archivo y para elegir con cual opción de mencoder se va a reparar el archivo.
INDICE=`zenity --title="Script para reparar index" --text="Aviso: El video\/audio con el index reparado
tiene la coletilla \".new-idx\" cuando se usa la
opción -idx y es \".new-forceidx\" cuando se
uso -forceidx. Quiten de forma manual esas
extensiones si lo desean.

Pruebe primero con -idx y si no funciona
intente con -forceidx

Nombre del archivo a corregir el index:
$(echo "$1")" --list --column="Opciones:" "idx" "forceidx"`

# Reparación del vídeo. Con copy copia los codec para el vídeo y audio del vídeo original hacia el de salida. La opción -idx repara el index y la opción -forceidx es para forzar su reconstrucción. Los archivos de salida tienen la coletilla .new-idx y .new-forceidx respectivamente.

if [ "$INDICE" == "idx" ]
then
mencoder "$1" -idx -oac copy -ovc copy -o "$1.new-idx"

elif [ "$INDICE" == "forceidx" ]
then
mencoder "$1" -forceidx -oac copy -ovc copy -o "$1.new-forceidx"

else [ "$INDICE" == "" ]
zenity --info --title="Aviso cancelación" --timeout=5 --text="Sale del script sin hacer nada"

fi

# Sale
exit

 

 

http://manpages.ubuntu.com/manpages/lucid/es/man1/mencoder.1.html
http://marioc.wordpress.com/2009/11/29/reparar-indice-de-un-avi/
http://zignux.wordpress.com/2009/11/29/reparar-indice-de-un-avi/
http://travesuras.wordpress.com/2010/08/03/20100803-1/ ==> Script: info-videos.sh

 

 

 

Anuncios

3 thoughts on “MEncoder.- Reparar index de videos

    1. Hola,

      Uy, pues proporcionándote un enlace para que aprendas es en lo que te puedo ayudar. Por mi parte más o menos entiendo las construcciones if y while a duras penas lo estoy utilizando en estos días.

      Necesitas aprender sobre las construcciones if, los bucles y algo de bash o encontrar algún script ya hecho por ahi.

      En esta página hay varios tutoriales para descargarse que te ayudaran tanto como a mi lo están haciendo:
      http://jorgefuertes.com/productos-y-servicios/cursos/curso-sistemas-gnu-linux

      Saludos

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s