#!/bin/bash ## Script pour DéBlogToi.com ## Créé par Lavren, le 29 décembre 2008. ## Version 0.1 input_file=$1 echo "Nom de votre vidéo de sortie (sans extension) ?" read output_file_name echo "Quel codec vidéo voulez-vous utiliser pour votre nouvelle vidéo ? Choississez en tapant un numéro" OPTIONS="x264" select video_codec in $OPTIONS; do if [ "$video_codec" = "x264" ]; then output_video_codec="libx264" echo "OK, x264 pour un encodage H.264" echo "Quelle extension voulez-vous utiliser pour votre nouvelle vidéo ? Choississez en tapant un numéro" OPTIONS="mov mp4 3gp avi" select video_opt in $OPTIONS; do if [ "$video_opt" = "mov" ]; then output_file_extension="mov" echo "OK pour l'extension $audio_opt" break elif [ "$video_opt" = "mp4" ]; then output_file_extension="mp4" echo "OK pour l'extension $audio_opt" break elif [ "$video_opt" = "avi" ]; then output_file_extension="avi" echo "OK pour l'extension $audio_opt" break else echo "Non valide" exit fi done echo "Quel codec audio voulez-vous utiliser pour votre nouvelle vidéo ? Choississez en tapant un numéro" OPTIONS="aac mp3 flac" select audio_opt in $OPTIONS; do if [ "$audio_opt" = "aac" ]; then output_file_audiocodec="libfaac" echo "OK, le codec $audio_opt pour l'audio" break elif [ "$audio_opt" = "mp3" ]; then output_file_audiocodec="libmp3lame" echo "OK, le codec $audio_opt pour l'audio" break elif [ "$audio_opt" = "flac" ]; then output_file_audiocodec="flac" echo "OK, le codec $audio_opt pour l'audio" break else echo "Non valide" exit fi done break else echo "Non valide" exit fi done echo "Quelle largeur de vidéo en pixels ? Il est recommandé d'utiliser des multiples de 16 comme 1280, 720, 640, 320" read output_file_width echo "Quelle hauteur de vidéo en pixels ? Attention aux proportions de votre vidéo (16:9, 4:3, 3:2 => 1280x720, 1280x1024, 1200x800)" read output_file_height echo "Quel taux (bitrate) souhaitez-vous pour votre vidéo, en kbps ? Pour le web, il est recommandé entre 500 et 2000 selon la qualité." read output_file_bitrate echo "Quel taux (bitrate) souhaitez-vous pour l'audio ? Exemple : 192 -> qualité CD, 128 -> excellente qualité, 96 -> pour le web" read output_file_audiorate ## Confirmation echo "Voici les détails de l'encodage de votre vidéo :" echo "Nom du fichier : $output_file_name.$output_file_extension" echo "Largeur : $output_file_width px" echo "Hauteur : $output_file_height px" echo "Codec video : $video_codec" echo "Bitrate video: $output_file_bitrate kbps" echo "Codec audio : $audio_opt" echo "Bitrate audio : $output_file_audiorate kbps" echo "Ces détails sont-ils corrects ? [o/n]" read output_file_confirm if [ $output_file_confirm = 'n' ] || [ $output_file_confirm = 'N' ] then echo "OK, réessayez...." exit else echo "Excellent. Votre fichier va maintenant être créé. Cela peut prendre un moment selon la puissance de votre processeur." fi # Encodage ffmpeg -i ${input_file} -vcodec ${output_video_codec} -acodec ${output_file_audiocodec} -ab ${output_file_audiorate}k -vpre hq -b ${output_file_bitrate}k -s ${output_file_width}x${output_file_height} -f ${output_file_extension} ${output_file_name}.${output_file_extension} echo "Votre fichier a été créé." ## Appliquer qt-faststart if [ $output_file_extension = 'mov' ] || [ $output_file_extension = 'mp4' ] then echo "Voulez vous appliquer qt-faststart, pour le streaming ? [o/n]" read qt_faststart_permis if [ $qt_faststart_permis = 'o' ] || [ $qt_faststart_permis = 'O' ] then mv ${output_file_name}.${output_file_extension} ${output_file_name}_temp.${output_file_extension} qt-faststart ${output_file_name}_temp.${output_file_extension} ${output_file_name}.${output_file_extension} echo "QuickTime Fast Start a été appliqué sur la vidéo" rm ${output_file_name}_temp.${output_file_extension} echo "C'est terminé ! Merci d'avoir utilisé LavrenEncoder" else echo "C'est terminé ! Merci d'avoir utilisé LavrenEncoder" fi else echo "C'est terminé ! Merci d'avoir utilisé LavrenEncoder" fi