Debe introducir al menos 3 caracteres en el buscador.
Inicio / Wikis / Tutoriales / Pasando Divx a VCD, SVCD, CVCD, etc - Divx2VCD

Pasando Divx a VCD, SVCD, CVCD, etc - Divx2VCD

 ----- 
Creative Commons Tutorial de Paranouei - 03 de Octubre de 2005
Temas Relacionados: Digitalización de vídeo
2. Divx2VCD
Me he preparado el siguiente script divx2vcd, el cual se encarga de los cálculos para obtener una imagen con el mismo aspecto (añadiendo bordes negros si hace falta). Usa bitrate constante, de forma que es totalmente estándar VCD. El tamaño máximo de cada archivo (para que entre en un CD, está en la variable CDSIZE. El script se encarga de crear el video y el audio con transcode, luego multiplexarlos con mplex, y finalmente crear las imágenes. Lo podéis descargar aquí. Lo pego también aquí para que lo veais:
Inicio divx2vcd
#!/bin/bash
# Este script pasa un Divx a VCD. Para los archivos temporales se
# necesita al menos 4.5 Gigas (m1v y mpa, los .mpg y los .bin)
DIR=`pwd`
TEMPFOLDER=/tmp/divx2vcd-$RANDOM
CDSIZE=795
VIDEORATE=1150
AUDIORATE=224
if [ $# -eq 0 ]; then
echo "Usage:"---echo " divx2vcd <divxfile>"
exit 1
fi
FILE=$1
if [ "$1"
"`basename $1`" ]; then
FILE="$DIR/$1"
fi
mkdir $TEMPFOLDER
cd $TEMPFOLDER
tcprobe -i "$FILE" > $TEMPFOLDER/info
WIDTH=`grep '\[avilib\] V:' $TEMPFOLDER/info | perl -e ' $line=<STDIN> ; $line =~ /width=(\d+)/ ; print $1' `
HEIGHT=`grep '\[avilib\] V:' $TEMPFOLDER/info | perl -e ' $line=<STDIN> ; $line =~ /height=(\d+)/ ; print $1' `
FPS=`grep '\[avilib\] V:' $TEMPFOLDER/info | perl -e ' $line=<STDIN> ; $line =~ /V: (.+?) fps/ ; print $1' `
FPS_1=`echo "scale=1 ; $FPS/1"| bc -l`
FRAMES=`grep '\[avilib\] V:' $TEMPFOLDER/info | perl -e ' $line=<STDIN> ; $line =~ /frames=(\d+)/ ; print $1' `
SEGUNDOS_TOTAL=`echo "scale=0 ; ($FRAMES / $FPS)"| bc -l`
HORAS=`echo "scale=0 ; ($SEGUNDOS_TOTAL / 3600)"| bc -l`
MINUTOS=`echo "scale=0 ; (($SEGUNDOS_TOTAL - 3600 * $HORAS)/60)"| bc -l`
SEGUNDOS=`echo "scale=0 ; ($SEGUNDOS_TOTAL % 60)"| bc -l`
echo "* FILE INFO *"
echo "Frame Size: ${WIDTH}x${HEIGHT} - FPS: $FPS"
echo "Length: $FRAMES - Seconds: $SEGUNDOS_TOTAL"
echo "$HORAS hours, $MINUTOS minutes, $SEGUNDOS seconds"
if [ $FPS_1
"29.9" -o $FPS_1
"30" -o $FPS_1
"23.9" ]; then
WIDTH_OUT=352
HEIGHT_OUT=240
else
WIDTH_OUT=352
HEIGHT_OUT=288
fi
echo "Video Output: ${WIDTH_OUT}x${HEIGHT_OUT}"
# Ahora calculamos los valores pa los bordes.
ANCHO_1_1_OUT=`echo "($HEIGHT_OUT * 4/3)"| bc -l`
ALTO_OUT=`echo "$HEIGHT / ($WIDTH / $ANCHO_1_1_OUT)" | bc -l`
# Redondeamos
ALTO_OUT=`echo "scale=0 ; $ALTO_OUT/1"| bc -l`
# Nos aseguramos de que sea par
ALTO_OUT=`echo "scale=0 ; $ALTO_OUT+$ALTO_OUT%2" | bc -l`
BORDE=`echo "scale=0 ; ($HEIGHT_OUT-$ALTO_OUT)/2"| bc -l`
echo "alto sin bordes: $ALTO_OUT, con borde: $BORDE"
# Borramos Pelicula.m1v y Pelicula.mpa
rm -f Pelicula.m1v Pelicula.mpa
cd $TEMPFOLDER
echo "transcode -i "$FILE" -V -x mplayer -y mpeg2enc,mp2enc -F 1 -Z ${WIDTH_OUT}x$ALTO_OUT -Y -$BORDE,0,-$BORDE,0 --export_asr 2 -E 44100 -b $AUDIORATE -o $DIR/Pelicula -w $VIDEORATE"
transcode -i "$FILE" -V -x mplayer -y mpeg2enc,mp2enc -F 1 -Z ${WIDTH_OUT}x$ALTO_OUT -Y -$BORDE,0,-$BORDE,0 --export_asr 2 -E 44100 -b $AUDIORATE -o $DIR/Pelicula -w $VIDEORATE
#transcode -i "$FILE" -V -x mplayer -y mpeg -F $MPEG_OPTIONS -Z ${WIDTH_OUT}x$ALTO_OUT -Y -$BORDE,0,-$BORDE,0 --export_asr 2 -E 44100 -b $AUDIORATE -o $DIR/Pelicula
rm $TEMPFOLDER/*
rmdir $TEMPFOLDER
cd $DIR
# Si no hay Pelicula.m1v y Pelicula.mpa salir
[ -f Pelicula.m1v -a -f Pelicula.mpa ] || exit 1
rm -f Pelicula*.mpg
#Ahora multiplexamos el .mpg
mplex -f 1 -m 1 -S $CDSIZE Pelicula.m1v Pelicula.mpa -o Pelicula%d.mpg
#tcmplex -i Pelicula.m1v -p Pelicula.mpa -o Pelicula.mpg -m 1
# Y creamos las imagenes...
for i in `ls Pelicula*mpg` ; do
vcdimager -t vcd2 -c $i.cue -b $i.bin $i
done
Final divx2vcd
Tabla de contenidos
Autor y licencia de 'Pasando Divx a VCD, SVCD, CVCD, etc - Divx2VCD'
Paranouei Extraído de: http://www.frikis.org/staticpages/index.php?page=20030115025215847

Creative Commons License
Esta obra está bajo una licencia de Creative Commons.
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.

Wikis relacionados con 'Pasando Divx a VCD, SVCD, CVCD, etc - Divx2VCD'

Con el surgimiento de los servicios hypermediales, los recursos de este medio son un campo... Más »
Con el surgimiento de los servicios hypermediales, los recursos de este medio son un campo... Más »
Documento con fundamentos teóricos de control de accesos en redes telemáticas; se tratan temas como... Más »
Con la inclusión de la Gestión Medioambiental en la Gestión Global de la empresa, lograremos... Más »
Trabajar en equipo está de moda. En todos los ámbitos: políticos, económicos, deportivos, artísticos, pedagógicos,... Más »
¿Estás seguro de que deseas eliminar este capítulo?