Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format
PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
doc:programmation:bash:ffmpeg [25/04/2020 11:53] smolski créée |
doc:programmation:bash:ffmpeg [27/04/2020 16:46] golgot200 [script - choix du titre et du bitrate] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== Script bash ffmpeg - Copie DVD-VIDÉO ====== | + | ====== Script ffmpeg - Copie DVD-VIDÉO ====== |
* Objet : du tuto Ripper des dvd avec choix du titre et du bitrate | * Objet : du tuto Ripper des dvd avec choix du titre et du bitrate | ||
* Niveau requis : {{tag>débutant}} | * Niveau requis : {{tag>débutant}} | ||
- | * Commentaires : //Copies de dvd avancée via un script bash. // | + | * Commentaires : //Copies de dvd avancée via ffmpeg dans un script bash. // |
* Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) | * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) | ||
- | * Suivi : {{tag>en-chantier à-tester à-placer}} - FIXME Pour choisir, voir les autres Tags possibles dans [[:atelier:#tags|l'Atelier]]. | + | * Suivi : {{tag>à-tester}} |
- | * Création par [[user>smolski]] 25/04/2020 | + | * Création par [[user>smolski]] 25/04/2020 d'après un script de Golgot200 |
- | * Testé par <...> le <...> FIXME | + | * Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?id=24453 | Lien vers le forum concernant ce tuto]] ((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) |
- | * Commentaires sur le forum : [[:url-invalide | Lien vers le forum concernant ce tuto]] ((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) FIXME | + | |
- | + | ||
- | **Nota :** | + | |
- | + | ||
- | Contributeurs, les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli ! | + | |
===== Introduction ===== | ===== Introduction ===== | ||
- | script utilisant ffmpeg pour copier des dvd video | + | script utilisant ffmpeg pour copier des dvd video où en plus du titre, tu auras le choix du bitrate par défaut ("sans compression)" ou si tu ne veux pas, un autre choix te sera proposé pour le rentrer directement dans le terminal. |
===== Installation ===== | ===== Installation ===== | ||
Ligne 24: | Ligne 18: | ||
===== script - choix du titre et du bitrate ===== | ===== script - choix du titre et du bitrate ===== | ||
- | Se placer dans le bon répertoire : | + | Se placer dans le bon répertoire de son user : |
- | cd /home/user/ | + | <code user>cd ~/usr/local/bin/</code> |
- | Copier/coller le script ci-dessous : | + | En root, créer un fichier : |
+ | <code root>gedit copie-dvd_1</code> | ||
+ | copier le script suivant : | ||
<file bash ripdvd> | <file bash ripdvd> | ||
#!/bin/bash | #!/bin/bash | ||
Ligne 33: | Ligne 29: | ||
## golgot200 | ## golgot200 | ||
## Testeur smolski | ## Testeur smolski | ||
- | ## 24/04/2020 | + | ## 27/04/2020 |
+ | START_TIME=$(date +%s) | ||
PATH=$PATH:/sbin:/usr/sbin | PATH=$PATH:/sbin:/usr/sbin | ||
Ligne 61: | Ligne 57: | ||
echo -e "\e[32mLes conditions sont réunies : On continue\e[0m" | echo -e "\e[32mLes conditions sont réunies : On continue\e[0m" | ||
- | TITLE=$(lsdvd "$DEVICE" | head -1 | awk '{print $3}') | + | TITLE=$(lsdvd /dev/sr0 | head -1 | awk '{print $3}') |
TITLE_COUNT=$(lsdvd "$DEVICE" | grep -c ^'Title: ') | TITLE_COUNT=$(lsdvd "$DEVICE" | grep -c ^'Title: ') | ||
Ligne 68: | Ligne 64: | ||
- | echo "Proceed..." | + | echo "Proceed..." |
- | echo -e "DVD-Vidéo : \e[32m$TITLE\e[0m" | + | echo -e "DVD-Vidéo : \e[32m$TITLE\e[0m" |
read -r -p "Ce nom convient-il ? [Y/n] " input | read -r -p "Ce nom convient-il ? [Y/n] " input | ||
- | echo "" | ||
case $input in | case $input in | ||
[yY][eE][sS]|[yY]) | [yY][eE][sS]|[yY]) | ||
- | echo -e "Réponse : \e[32mOui\e[0m" | + | echo -e "\e[3;4;33mRéponse:\n\e[0m \e[32mOui\e[0m" |
- | + | echo "" | |
- | mkdir -p "$TITLE/IFOS" | + | mkdir -p "$TITLE/IFOS" |
- | mkdir -p "$TITLE/VOBSUBS" | + | mkdir -p "$TITLE/VOBSUBS" |
- | ;; | + | ;; |
[nN][oO]|[nN]) | [nN][oO]|[nN]) | ||
- | echo "" | + | echo -e "\e[3;4;33mRéponse:\n\e[0m \e[33mNon\e[0m" |
- | echo -e "Réponse : \e[32mNon\e[0m" | + | read -r -p "Entrer un nouveau nom: " TITLE |
- | read -r -p "Entrer un nouveau nom: " TITLE | + | if [[ -z "$TITLE" ]]; then |
- | echo "" | + | echo "Invalid input..." |
- | mkdir -p "$TITLE/IFOS" | + | echo "Quit" |
- | mkdir -p "$TITLE/VOBSUBS" | + | exit 1 |
- | ;; | + | else |
+ | echo "" | ||
+ | mkdir -p "$TITLE/IFOS" | ||
+ | mkdir -p "$TITLE/VOBSUBS" | ||
+ | fi | ||
+ | ;; | ||
*) | *) | ||
echo "Invalid input..." | echo "Invalid input..." | ||
Ligne 100: | Ligne 100: | ||
+ | default_limit=-1 | ||
- | read -r -p "Garder le bitrate d'origine ? [Y/n] " input | + | |
- | echo "" | + | |
+ | echo -e "La limite est fixée pour encoder tous les titres." | ||
+ | read -r -p "Encoder tous les titres ? [Y/n] " input | ||
+ | case $input in | ||
+ | [yY][eE][sS]|[yY]) | ||
+ | |||
+ | echo -e "\e[3;4;33mRéponse:\n\e[0m \e[32mOui, on encode tous les titres.\e[0m" | ||
+ | echo -e "$default_limit" >> "$TITLE/time_limit.txt" | ||
+ | echo "" | ||
+ | ;; | ||
+ | [nN][oO]|[nN]) | ||
+ | echo -e "\e[3;4;33mRéponse:\n\e[0m \e[33mNon,\e[0m \e[32mje veux encoder que les titres d'une certaine durée.\e[0m" | ||
+ | read -r -p "Entrer une limite (ex:1800) en secondes: " time_limit | ||
+ | if [[ -z "$time_limit" ]]; then | ||
+ | echo "Invalid input..." | ||
+ | echo "Quit" | ||
+ | rm -r "$TITLE" | ||
+ | echo -e "Supression du dossier \e[32m$TITLE\e[0m" | ||
+ | exit 1 | ||
+ | else | ||
+ | times=$((time_limit / 60)) | ||
+ | echo -e "Que les titres de \e[94m$times minutes\e[0m et plus seront pris en compte." | ||
+ | echo -e "$time_limit" >> "$TITLE/time_limit.txt" | ||
+ | echo "" | ||
+ | fi | ||
+ | ;; | ||
+ | *) | ||
+ | echo "Invalid input..." | ||
+ | echo "Quit" | ||
+ | rm -r "$TITLE" | ||
+ | echo -e "Supression du dossier \e[32m$TITLE\e[0m" | ||
+ | exit 1 | ||
+ | ;; | ||
+ | esac | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | read -r -p "Conserver le bitrate d'origine ? [Y/n] " input | ||
case $input in | case $input in | ||
[yY][eE][sS]|[yY]) | [yY][eE][sS]|[yY]) | ||
- | echo -e "Réponse : \e[32mOui\e[0m" | + | echo -e "\e[3;4;33mRéponse:\n\e[0m \e[32mOui\e[0m" |
for (( i=1; i<=TITLE_COUNT; i++ )) | for (( i=1; i<=TITLE_COUNT; i++ )) | ||
Ligne 112: | Ligne 152: | ||
BITRATE=$(mplayer -noconfig all -nocache -vo null -ao null -frames 0 -identify -dvd-device "$DEVICE" dvdnav://"$i" 2>/dev/null | \ | BITRATE=$(mplayer -noconfig all -nocache -vo null -ao null -frames 0 -identify -dvd-device "$DEVICE" dvdnav://"$i" 2>/dev/null | \ | ||
- | grep "VIDEO:" | awk '{print$8}' | sed 's/\.[^ ]*/ /g') | + | grep "VIDEO:" | awk '{print$8}' | sed 's/\.[^ ]*/ /g') |
- | echo -e "$BITRATE" >> "$TITLE/bitrate.txt" | + | echo -e "$BITRATE" >> "$TITLE/bitrate.txt" |
done | done | ||
;; | ;; | ||
[nN][oO]|[nN]) | [nN][oO]|[nN]) | ||
- | echo -e "Réponse : \e[32mNon\e[0m" | + | echo -e "\e[3;4;33mRéponse:\n\e[0m \e[33mNon\e[0m" |
- | read -r -p "Entrer un nouveau Bitrate: " newbitrate | + | read -r -p "Appliquer un nouveau Bitrate: " newbitrate |
- | + | if [[ -z "$newbitrate" ]]; then | |
- | for (( i=1; i<=TITLE_COUNT; i++ )) | + | echo "Invalid input..." |
- | do | + | echo "Quit" |
- | echo -e "$newbitrate" >> "$TITLE/bitrate.txt" | + | rm -r "$TITLE" |
- | done | + | echo -e "Supression du dossier \e[32m$TITLE\e[0m" |
- | ;; | + | exit 1 |
- | *) | + | else |
- | echo "Invalid input..." | + | for (( i=1; i<=TITLE_COUNT; i++ )) |
- | echo "Quit" | + | do |
- | rm -r "$TITLE" | + | echo -e "$newbitrate" >> "$TITLE/bitrate.txt" |
- | echo -e "Supression du dossier \e[32m$TITLE\e[0m" | + | done |
+ | fi ;; | ||
+ | *) | ||
+ | echo "Invalid input..." | ||
+ | echo "Quit" | ||
+ | rm -r "$TITLE" | ||
+ | echo -e "Supression du dossier \e[32m$TITLE\e[0m" | ||
exit 1 | exit 1 | ||
;; | ;; | ||
- | esac | + | esac |
Ligne 148: | Ligne 194: | ||
bitrate_k=$((bv/1))k | bitrate_k=$((bv/1))k | ||
bufsize_k=$((bv/2))k | bufsize_k=$((bv/2))k | ||
- | echo "" | ||
- | echo -e "Le bitrate du titre n°\e[94m$i\e[0m sera donc de : \e[32m$bitrate_k\e[0m" | ||
- | echo "Proceed..." | ||
- | |||
- | sleep 2 | ||
- | |||
LENGTH=$(mplayer -noconfig all -nocache -vo null -ao null -frames 0 -identify -dvd-device "$DEVICE" dvdnav://"$i" 2>/dev/null | \ | LENGTH=$(mplayer -noconfig all -nocache -vo null -ao null -frames 0 -identify -dvd-device "$DEVICE" dvdnav://"$i" 2>/dev/null | \ | ||
sed -E -n 's/^.*ID_LENGTH=([0-9]+).*$/\1/p') | sed -E -n 's/^.*ID_LENGTH=([0-9]+).*$/\1/p') | ||
- | LIMIT=0 | + | LIMIT=$(sed q "$TITLE/time_limit.txt") |
- | [[ "$LENGTH" -le "$LIMIT" ]] && continue | + | [[ "$LENGTH" -le "$time_limit" ]] && continue |
Ligne 180: | Ligne 220: | ||
- | fi | + | fi |
Ligne 213: | Ligne 253: | ||
if [[ -e "$TITLE/$i-$TITLE.vob" ]] && [[ "$COUNT_AUDIO" -eq "0" ]]; then | if [[ -e "$TITLE/$i-$TITLE.vob" ]] && [[ "$COUNT_AUDIO" -eq "0" ]]; then | ||
+ | echo -e "Le bitrate du titre n°\e[94m$i\e[0m sera donc de : \e[32m$bitrate_k\e[0m" | ||
+ | sleep 2 | ||
ffmpeg -hide_banner -analyzeduration 1000M -probesize 1000M -vsync 2 -r "$FPS" -i "$TITLE/$i-$TITLE.vob" \ | ffmpeg -hide_banner -analyzeduration 1000M -probesize 1000M -vsync 2 -r "$FPS" -i "$TITLE/$i-$TITLE.vob" \ | ||
Ligne 225: | Ligne 267: | ||
- | rm -f "$TITLE/$i-$TITLE.vob" | + | rm -f "$TITLE/$i-$TITLE.vob" |
Ligne 237: | Ligne 279: | ||
## VOB PRÉSENT. | ## VOB PRÉSENT. | ||
- | ## AVEC OU SANS AUDIO(S). | + | ## AU MOINS UN AUDIO OU PLUS. |
## SANS 0 CHANNEL. | ## SANS 0 CHANNEL. | ||
## SANS LPCM. | ## SANS LPCM. | ||
- | if [[ -e "$TITLE/$i-$TITLE.vob" ]] && [[ "$COUNT_AUDIO" -ge "0" ]] && [[ "$O_CHANNELS" -eq "0" ]] && [[ "$COUNT_LPCM" -eq "0" ]]; then | + | if [[ -e "$TITLE/$i-$TITLE.vob" ]] && [[ "$COUNT_AUDIO" -ge "1" ]] && [[ "$O_CHANNELS" -eq "0" ]] && [[ "$COUNT_LPCM" -eq "0" ]]; then |
+ | |||
+ | echo -e "Le bitrate du titre n°\e[94m$i\e[0m sera donc de : \e[32m$bitrate_k\e[0m" | ||
+ | sleep 2 | ||
ffmpeg -hide_banner -analyzeduration 1000M -probesize 1000M -vsync 2 -r "$FPS" -i "$TITLE/$i-$TITLE.vob" \ | ffmpeg -hide_banner -analyzeduration 1000M -probesize 1000M -vsync 2 -r "$FPS" -i "$TITLE/$i-$TITLE.vob" \ | ||
Ligne 263: | Ligne 308: | ||
rm -f "$TITLE/$i-$TITLE.vob" | rm -f "$TITLE/$i-$TITLE.vob" | ||
- | + | | |
Ligne 278: | Ligne 323: | ||
if [[ -e "$TITLE/$i-$TITLE.vob" ]] && [[ "$COUNT_AUDIO" -ge "1" ]] && [[ "$O_CHANNELS" -ge "1" ]] && [[ "$COUNT_LPCM" -eq "0" ]]; then | if [[ -e "$TITLE/$i-$TITLE.vob" ]] && [[ "$COUNT_AUDIO" -ge "1" ]] && [[ "$O_CHANNELS" -ge "1" ]] && [[ "$COUNT_LPCM" -eq "0" ]]; then | ||
+ | |||
+ | echo -e "Le bitrate du titre n°\e[94m$i\e[0m sera donc de : \e[32m$bitrate_k\e[0m" | ||
+ | sleep 2 | ||
ffmpeg -hide_banner -analyzeduration 1000M -probesize 1000M -vsync 2 -r "$FPS" -i "$TITLE/$i-$TITLE.vob" \ | ffmpeg -hide_banner -analyzeduration 1000M -probesize 1000M -vsync 2 -r "$FPS" -i "$TITLE/$i-$TITLE.vob" \ | ||
Ligne 306: | Ligne 354: | ||
if [[ -e "$TITLE/$i-$TITLE.vob" ]] && [[ "$COUNT_AUDIO" -ge "0" ]] && [[ "$O_CHANNELS" -eq "0" ]] && [[ "$COUNT_LPCM" -ge "1" ]]; then | if [[ -e "$TITLE/$i-$TITLE.vob" ]] && [[ "$COUNT_AUDIO" -ge "0" ]] && [[ "$O_CHANNELS" -eq "0" ]] && [[ "$COUNT_LPCM" -ge "1" ]]; then | ||
+ | |||
+ | echo -e "Le bitrate du titre n°\e[94m$i\e[0m sera donc de : \e[32m$bitrate_k\e[0m" | ||
+ | sleep 2 | ||
ffmpeg -hide_banner -analyzeduration 1000M -probesize 1000M -vsync 2 -r "$FPS" -i "$TITLE/$i-$TITLE.vob" \ | ffmpeg -hide_banner -analyzeduration 1000M -probesize 1000M -vsync 2 -r "$FPS" -i "$TITLE/$i-$TITLE.vob" \ | ||
Ligne 316: | Ligne 367: | ||
$FILTERS \ | $FILTERS \ | ||
-preset veryfast -y "$TITLE/$i-$TITLE.mkv" | -preset veryfast -y "$TITLE/$i-$TITLE.mkv" | ||
- | |||
rm -f "$TITLE/$i-$TITLE.vob" | rm -f "$TITLE/$i-$TITLE.vob" | ||
- | |||
- | |||
- | |||
- | dvdxchap -t "$i" "$DEVICE" > "$TITLE/$i-$TITLE-Chapters.txt" | ||
- | |||
- | mkvmerge "$TITLE/$i-$TITLE.mkv" --chapters "$TITLE/$i-$TITLE-Chapters.txt" \ | ||
- | -o "$TITLE/$i-$TITLE-[Out_Chapters].mkv" | ||
- | |||
- | rm -f "$TITLE/$i-$TITLE.mkv" | ||
- | rm -f "$TITLE/$i-$TITLE-Chapters.txt" | ||
- | mv "$TITLE/$i-$TITLE-[Out_Chapters].mkv" "$TITLE/$i-$TITLE.mkv" | ||
- | |||
mkdir -p "$TITLE/WAVE" | mkdir -p "$TITLE/WAVE" | ||
Ligne 352: | Ligne 390: | ||
## AU MOINS UN AUDIO FRANÇAIS OU PLUS. | ## AU MOINS UN AUDIO FRANÇAIS OU PLUS. | ||
- | if [[ "$COUNT_AUDIO_FR" -ge "1" ]]; then | + | if [[ -e "$TITLE/$i-$TITLE.mkv" ]] && [[ "$COUNT_AUDIO_FR" -ge "1" ]]; then |
mkvmerge -o "$TITLE/$i-$TITLE-[Language: Français].mkv" -a fre "$TITLE/$i-$TITLE.mkv" | mkvmerge -o "$TITLE/$i-$TITLE-[Language: Français].mkv" -a fre "$TITLE/$i-$TITLE.mkv" | ||
Ligne 404: | Ligne 442: | ||
for n in $SIDFR; do mencoder -dvd-device "$DEVICE" dvdnav://"$i" -nosound -ovc frameno -force-avi-aspect "$RATIO" -o /dev/null \ | for n in $SIDFR; do mencoder -dvd-device "$DEVICE" dvdnav://"$i" -nosound -ovc frameno -force-avi-aspect "$RATIO" -o /dev/null \ | ||
- | -ifo "/run/media/$USER/$TITLE/VIDEO_TS/VTS_01_0.IFO" -sid "$n" -vobsubout "$TITLE/$n-vobsubs-fr" -vobsuboutindex "$n" | + | -ifo "/run/media/$USER/$TITLE/VIDEO_TS/VTS_01_0.IFO" -sid "$n" -vobsubout "$TITLE/$n-vobsubs-fr" -vobsuboutindex "$n" |
## ON CORRIGE LES ID VIDES SI BESOIN. | ## ON CORRIGE LES ID VIDES SI BESOIN. | ||
Ligne 414: | Ligne 452: | ||
if [[ "$taille_idx" -gt 1000 ]] && [[ "$taille_sub" -gt 0 ]] ; then | if [[ "$taille_idx" -gt 1000 ]] && [[ "$taille_sub" -gt 0 ]] ; then | ||
- | echo "$n-vobsubs-fr.idx et $n-vobsubs-fr.sub sont bon" | + | echo -e "\e[32m$n-vobsubs-fr.idx et $n-vobsubs-fr.sub sont bons.\e[0m" |
else | else | ||
## ON ISOLE LES VOBSUBS INVALIDES DANS LE DOSSIER VOBSUBS | ## ON ISOLE LES VOBSUBS INVALIDES DANS LE DOSSIER VOBSUBS | ||
- | echo "$n-vobsubs-fr.idx ou $n-vobsubs-fr.sub est incorrect ... déplacement" | + | echo -e "\e[32m$n-vobsubs-fr.idx ou $n-vobsubs-fr.sub incorrect ... déplacement des deux.\e[0m" |
- | mv "$TITLE/$n-vobsubs-fr.idx" "$TITLE/$n-vobsubs-fr.sub" "$TITLE/VOBSUBS/$i-$TITLE" | + | mv "$TITLE/$n-vobsubs-fr.idx" "$TITLE/$n-vobsubs-fr.sub" "$TITLE/VOBSUBS/$i-$TITLE" |
Ligne 441: | Ligne 479: | ||
if [[ -e "$TITLE/$i-$TITLE-[Audio: $INFO + Chapters].mkv" ]] && [ "$COUNT_IDX_FR" -ge "1" ] && [ "$COUNT_SUB_FR" -ge "1" ] | if [[ -e "$TITLE/$i-$TITLE-[Audio: $INFO + Chapters].mkv" ]] && [ "$COUNT_IDX_FR" -ge "1" ] && [ "$COUNT_SUB_FR" -ge "1" ] | ||
then | then | ||
- | |||
- | |||
- | |||
mkvmerge "$TITLE/$i-$TITLE-[Audio: $INFO + Chapters].mkv" --language "0:fre" "$TITLE"/*.idx -o "$TITLE/$i-$TITLE-[Audio: $INFO + Chapters + Sub].mkv" | mkvmerge "$TITLE/$i-$TITLE-[Audio: $INFO + Chapters].mkv" --language "0:fre" "$TITLE"/*.idx -o "$TITLE/$i-$TITLE-[Audio: $INFO + Chapters + Sub].mkv" | ||
## ON DÉPLACE LE RESTANT DES VOBSUBS UNE FOIS MIXÉS AVEC LES INVALIDES. | ## ON DÉPLACE LE RESTANT DES VOBSUBS UNE FOIS MIXÉS AVEC LES INVALIDES. | ||
- | mv "$TITLE"/*.idx "$TITLE"/*.sub "$TITLE/VOBSUBS/$i-$TITLE" | + | mv "$TITLE"/*.idx "$TITLE"/*.sub "$TITLE/VOBSUBS/$i-$TITLE" |
rm -f "$TITLE/$i-$TITLE-[Audio: $INFO + Chapters].mkv" | rm -f "$TITLE/$i-$TITLE-[Audio: $INFO + Chapters].mkv" | ||
Ligne 469: | Ligne 504: | ||
- | ## AUCUN IDX ou SUB. | + | ## AUCUN IDX ET SUB. ON TAG EN NOSUB |
- | if [[ -e "$TITLE/$i-$TITLE-[Audio: $INFO + Chapters].mkv" ]] && [ "$COUNT_IDX_FR" -eq "0" ] || [ "$COUNT_SUB_FR" -eq "0" ] | + | if [[ -e "$TITLE/$i-$TITLE-[Audio: $INFO + Chapters].mkv" ]] && [ "$COUNT_IDX_FR" -eq "0" ] && [ "$COUNT_SUB_FR" -eq "0" ] |
then | then | ||
Ligne 484: | Ligne 519: | ||
- | ## PAS D'INFO ET UN SEUL AUDIO. | + | ## PAS D'INFO ET UN SEUL AUDIO. ON TAG EN UND |
if [[ -e "$TITLE/$i-$TITLE.mkv" ]] && [[ "$COUNT_INFO" -eq "0" ]] && [[ "$COUNT" -eq "1" ]] ; then | if [[ -e "$TITLE/$i-$TITLE.mkv" ]] && [[ "$COUNT_INFO" -eq "0" ]] && [[ "$COUNT" -eq "1" ]] ; then | ||
mv "$TITLE/$i-$TITLE.mkv" "$TITLE/$i-$TITLE-[Audio: Und].mkv" | mv "$TITLE/$i-$TITLE.mkv" "$TITLE/$i-$TITLE-[Audio: Und].mkv" | ||
Ligne 495: | Ligne 530: | ||
- | ## PAS D'AUDIO DONC PAS D'INFO. | + | ## PAS D'AUDIO DONC PAS D'INFO. ON TAG EN NOSOUND |
if [[ -e "$TITLE/$i-$TITLE.mkv" ]] && [[ "$COUNT_INFO" -eq "0" ]] && [[ "$COUNT" -eq "0" ]] ; then | if [[ -e "$TITLE/$i-$TITLE.mkv" ]] && [[ "$COUNT_INFO" -eq "0" ]] && [[ "$COUNT" -eq "0" ]] ; then | ||
mv "$TITLE/$i-$TITLE.mkv" "$TITLE/$i-$TITLE-[Audio: NoSound].mkv" | mv "$TITLE/$i-$TITLE.mkv" "$TITLE/$i-$TITLE-[Audio: NoSound].mkv" | ||
Ligne 506: | Ligne 541: | ||
- | done | + | done |
rm -f "$TITLE/bitrate.txt" | rm -f "$TITLE/bitrate.txt" | ||
- | + | rm -f "$TITLE/time_limit.txt" | |
+ | echo -e "\e[32mJob terminé.\e[0m" | ||
- | En ligne | + | END=$(date +%s); |
+ | echo -e "\e[32mTemps total écoulé: $(date -ud "@$(($(date +%s) - $START_TIME))" +%T)\e[0m (HH:MM:SS)" | ||
- | Signaler Supprimer Modifier Citer Quick quote | ||
- | |||
- | #680 | ||
</file> | </file> | ||
+ | Puis collez-le dans le fichier créé. | ||
+ | Enregistrer | ||
+ | |||
+ | Modifier les droits de ce fichier pour votre user. | ||
+ | [[doc:systeme:chown|Le droit d'appartenance]] : | ||
+ | <code root>chown user:user copie-dvd-1</code> | ||
+ | Ajouter [[doc:systeme:chmod|le droit d'exécution]] : | ||
+ | <code root>chmod u+x copie-dvd-1</code> | ||
+ | |||
+ | Revenir à son home/user : | ||
+ | <code root>cd</code> | ||
+ | Et quitter root avec le raccourci ; | ||
+ | ''Ctrl'' ''d'' | ||
+ | |||
+ | Et voilà, plus qu'à insérer un dvd et à lancer la commande en user. | ||
+ | |||
+ | <code user>copie_dvd-1</code> | ||
+ | <code>Les conditions sont réunies : On continue | ||
+ | Proceed... | ||
+ | DVD-Vidéo : DVD_VIDEO_RECORDING | ||
+ | Ce nom convient-il ? [Y/n]</code> | ||
+ | On valide n pour modifier le titre | ||
+ | |||
+ | <code>Ce nom convient-il ? [Y/n] n | ||
+ | |||
+ | |||
+ | Réponse : Non | ||
+ | Entrer un nouveau nom: | ||
+ | nouveau_nom</code> | ||
+ | |||
+ | <code>Garder le bitrate d'origine ? [Y/n] | ||
+ | n | ||
+ | Réponse : Non | ||
+ | Entrer un nouveau Bitrate: </code> | ||
+ | Par exemple | ||
+ | <code>1000</code> | ||
+ | Plus il est élevé, plus la qualité sera grande. | ||
+ | <code>Le bitrate du titre n°1 sera donc de : 1000k</code> | ||
+ | Et c'est parti... | ||
+ | <note important>Si vous avez plusieurs vidéos, chacune pourra être régler à sa façon !</note> |