====== Convertidor de Vídeos a formato AVI (XVid) ====== Esta aplicación nos será de mucha ayuda, si somos de aquellas personas que nos dedicamos a ver la mayoría de las veces, películas, series, novelas, animados, etc, en reproductores de DVD, ya que nos convierte dichos vídeos a AVI, en tan solo unos clic, como si fuera poco podemos incluso hasta fusionar vídeos y subtitulos. Les explicare como instalarlo y convertir un vídeo: 1 - Descargan el fichero en si, dando clic en donde dice xvidConverter más abajo. 2 - Una vez descargado lo pegan en: ~/.gnome2/nautilus-scripts/Multimedia/Converter. 3 - Desde Nautilus, vamos a un directorio donde estén los vídeos a convertir. 4 - Hacemos clic derecho en un vídeo para convertir y vamos a Script --> Multimedia --> Converter --> xvidConverter 5 - Luego seguimos el asistente y listo, se empezaran a convertir dichos vídeos, bale aclarar que por cada vídeo saldrá un asistente. El paso dos, se los explico, en el caso mio, que lo que uso es Nautilus, tengo entendido que para Nemo, es en nemo-scripts, para los demás deben de averiguar donde ponerlo. Para fusionar un vídeo y un subtitulo, Suponiendo que hayan realizado los pasos 1, 2 y 3, seleccionan un vídeo y un subtitulo, clic derecho y vamos a Script --> Multimedia --> Converter --> xvidConverter y seguimos con el paso 5. #!/bin/sh ####################################################################################################### # AUTOR: (c) Yasiel Ordońez Abreu. # WRITTEN BY: May 09,2013 # VERSIÓN: 1.0 # LICENCIA: GPL (http://www.gnu.org/licenses/gpl.html) # NOMBRE: xvidConverter # INSTALACIÓN: Copiar en el directorio: "~/.gnome2/nautilus-scripts/Multimedia/Converter" # DESCRIPCIÓN: Convierte vídeos y añade subtítulos al vídeo avi, para DVD reproductor ####################################################################################################### # Requisitos: zenity (para la interface gráfica), ffmpeg & mencoder (para convertir los vídeos) # Para asegurarse de que todo esto se ha instalado, hacer esto en un terminal... # sudo apt-get install zenity ffmpeg mencoder # Repositorios Universe deben estar habilitadas primero. https://wiki.ubuntu.com/AddingRepositoriesHowto ####################################################################################################### # Change log... # 16/May/2013 # - Mejorado el apartado de selección de tamaño del vídeo a convertir (Resolución de Vídeo). # - Agregadas las opciones gráficas para seleccionar la Calidad del Vídeo. # - Agregadas las opciones gráficas para seleccionar el Bitrate de Audio de nuestros Vídeos. # - Agregadas las opciones gráficas para seleccionar el Aspecto del Vídeo. # - Organizado parte del código original de la aplicación y borrado partes innecesarias. # - Corregido ortográfico. ####################################################################################################### # Comprobando el software necesario, para correr esta aplicación. mencoder_bin=`which mencoder | grep -c "mencoder"` # Chequeando mencoder if [ $mencoder_bin -eq "0" ]; then zenity --error --title="Error - Falta Software" \ --text="Usted no tiene el paquete mencoder instalado. Por favor, instalarlo para poder utilizar este script. Asegúrese de que los repositorios Universe están habilitados y a continuación, escriba: 'sudo apt-get install mencoder' en un terminal." exit fi # Seleccionando el formato a que deseamos convertir. title="Seleccione a que formato de Vídeo desea convertir $video_in_type" video_out_type=`zenity --width="550" --height="150" --title="$title" --list --radiolist --column="" \ --column="Tipo de Vídeo" --column="Descripción" \ TRUE "XVID" "Crear un AVI (XVID MPEG-4) para reproductores DVD-Vídeo"\ | sed 's/ max//g' ` if [ ! "$video_out_type" ]; then # Chequeando si se ha cancelado, la ventana de selección de lo que se va a convertir. zenity zenity --error --title="Error" --text="Ha cancelado la aplicación, por lo que será cerrada :(" exit fi # XVID Options if [ "$video_out_type" = "XVID" ]; then # Escogiendo una resolución de Vídeo xvid_resolution="`zenity --width="280" --height="260" --text "Seleccione una resolución de vídeo antes de continuar." --separator "" --hide-column 2 --print-column 2 --list --column "Resoluciones" --column "columna oculta" "PAL DVD size, 720x576" " -vf scale=720:576" "NTSC DVD size, 720x480" " -vf scale=700:480" "Standard TV size, 640x480" " -vf scale=600:480" "PAL VCD size,352x288" " -vf scale=352:288" "NTSC VCD size, 352x240" " -vf scale=352:240" "NTSC VCD size, 320x240" " -vf scale=320:240"`" if [ ! "$xvid_resolution" ]; then # Chequeando si se ha cancelado, la ventana de selección de lo que se va a convertir. zenity zenity --error --width="450" --title="Error" --text="Ha cancelado la aplicación o no ha especificado una de la resoluciones a escoger, por lo que será cerrada dicha aplicación , por favor inténtelo nuevamente :(" exit fi title="Seleccione la calidad de su vídeo" # Escogiendo la calidad de nuestro Vídeo xvid_vid_qu=`zenity --width="380" --height="250" --title="$title" --list --radiolist --column="" \ --column="Calidad de video" --column="Descripción" \ TRUE "6" "Insane High Quality"\ FALSE "5" "Ultra High Quality"\ FALSE "4" "Extreme High Quality"\ FALSE "3" "Very High Quality"\ FALSE "2" "High Quality"\ FALSE "1" "Normal Quality"\ | sed 's/ max//g' ` if [ ! "$xvid_vid_qu" ]; then # Chequeando si se ha cancelado, la ventana de selección de lo que se va a convertir. zenity zenity --error --title="Error" --text="Ha cancelado la aplicación, por lo que será cerrada :(" exit fi title="Seleccione la velocidad de bits de vídeo" # Escogiendo el bitrate de audio de nuestro Vídeo xvid_vid_br=`zenity --width="380" --height="220" --title="$title" --list --radiolist --column="" \ --column="Bitrate Audio" \ TRUE "1500" \ FALSE "1300" \ FALSE "1200" \ FALSE "900" \ | sed 's/ max//g' ` if [ ! "$xvid_vid_br" ]; then # Chequeando si se ha cancelado, la ventana de selección de lo que se va a convertir. zenity zenity --error --title="Error" --text="Ha cancelado la aplicación, por lo que será cerrada :(" exit fi title="Seleccione el aspecto del Vídeo" # Escogiendo el aspecto del Vídeo xvid_aspect=`zenity --width="380" --height="170" --title="$title" --list --radiolist --column="" \ --column="Aspectos" --column="Descripción" \ FALSE "4:3" "TV Normal"\ TRUE "16:9" "Panorámico"\ | sed 's/ max//g' ` if [ ! "$xvid_aspect" ]; then # Chequeando si se ha cancelado, la ventana de selección de lo que se va a convertir. zenity zenity --error --title="Error" --text="Ha cancelado la aplicación, por lo que será cerrada :(" exit fi # XVID Encode case $# in 1 ) if [ -e "$1" ] then # Convirtiendo el archivo $1 a formato avi. mencoder $xvid_resolution -oac mp3lame -lameopts cbr=128 -ovc xvid -of avi -xvidencopts bitrate=$xvid_vid_br:me_quality=$xvid_vid_qu -aspect $xvid_aspect -ofps 25 "$1" -o "$1.avi" 2>&1 | awk -vRS="\r" '$1 ~ /Pos/ {gsub(/Pos:/," ");gsub(/%\)/," ");gsub(/ \(/," ");print $3"\n#Posición :\\t"$1"\\nCuadros :\\t"$2"\\nPorcentaje :\\t"$3"%\\nRadio de cuadros :\\t"$4"\\nTiempo restante :\\t"$6; fflush();}' | zenity --progress --auto-kill --auto-close --title="Progreso" # Cambio de formato terminado. zenity --info --text="El vídeo ya se convirtió a avi! :)" else # En caso de error zenity --info --text="El vídeo $1 no existe en el sistema! :(" fi ;; 2 ) if [ -e "$1" ] && [ -e "$2" ]; then # Convirtiendo y subtitulando el archivo $1 a formato avi mencoder $xvid_resolution -oac mp3lame -lameopts cbr=128 -ovc xvid -of avi -xvidencopts bitrate=$xvid_vid_br:me_quality=$xvid_vid_qu -aspect $xvid_aspect -ofps 25 "$1" -sub "$2" -o "$1-sub.avi" -subcp ISO-8859-15 -sub-bg-alpha 255 2>&1 | awk -vRS="\r" '$1 ~ /Pos/ {gsub(/Pos:/," ");gsub(/%\)/," ");gsub(/ \(/," ");print $3"\n#Posición :\\t"$1"\\nCuadros :\\t"$2"\\nPorcentaje :\\t"$3"%\\nRadio de cuadros :\\t"$4"\\nTiempo restante :\\t"$6; fflush();}' | zenity --progress --auto-kill --auto-close --title="Progreso" # Cambio de formato y subtitulado terminado. zenity --info --text="El vídeo ya se convirtió a avi! :)" else # En caso de error zenity --info --text="Alguno de los archivos especificados no existe en el sistema! :(" fi ;; esac fi --- //[[inf1003@ucf.edu.cu|Yasiel Ordoñez Abreu]] 2013/06/04 08:14//