#1 Le 07/01/2011, à 14:12
- cracolinux
Nautilus-script : Coller vos vidéos bout à bout
→ Ce script est dépendant de mencoder et de zenity ←
Voici un petit script nautilus bien pratique, comme dis dans le titre : il colle vos vidéos bout à bout.
Typiquement vous avez fais pleins de petites vidéos durant les fêtes avec votre APN.
Maintenant, vous voulez les fusionner en une seule vidéo.
Installation :
Coller le script dans un fichier dans ~/.gnome2/nautilus-scripts.
Rendez le exécutable.
Utilisation :
Sélectionner les vidéos à coller,
Clique droit → scripts et clique sur le script en question.
---
#!/bin/bash
#
#Collage videos
total=""
echo "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS" > tempcoll
(
while read line
do
total="$total $line"
done < tempcoll
mencoder -ovc copy -oac copy -o video $total
) | zenity --progress --auto-close --pulsate
rm tempcoll
--
! Evitez les fichiers avec des espaces dans leurs noms
! Le fichier final s'appelle "video", je vous laisse le renommer comme vous voulez
Dernière modification par cracolinux (Le 07/01/2011, à 14:13)
Hors ligne
#2 Le 07/01/2011, à 23:21
- Levi59
Re : Nautilus-script : Coller vos vidéos bout à bout
Pour les problèmes d'espace, protège les variables...
#!/bin/bash
#
#Collage videos
cd "${NAUTILUS_SCRIPT_CURRENT_URI}"
a="' '"
(
total=`echo ${NAUTILUS_SCRIPT_SELECTED_FILE_PATHS} | sed -e ':boucle;N;$! b boucle; s/\n/'"$a"'/g'`
mencoder -ovc copy -oac copy -o video "'${total}'"
) | zenity --progress --auto-close --pulsate
Pas testé mais ca doit permettre les espaces...
Hors ligne
#3 Le 08/01/2011, à 09:48
- HP
Re : Nautilus-script : Coller vos vidéos bout à bout
Pour les problèmes d'espace, protège les variables...
ou utilise un vrai langage de programmation…
cat /dev/urandom >/dev/null 2>&1 #github
Hors ligne
#4 Le 08/01/2011, à 17:36
- cracolinux
Re : Nautilus-script : Coller vos vidéos bout à bout
Levi59 a écrit :Pour les problèmes d'espace, protège les variables...
ou utilise un vrai langage de programmation…
Comme lequel ?
@Levi
Tu peux m'expliquer le pourquoi des ' ' entre des " " ?
Et pourquoi cette syntaxe ?
"${NAUTILUS_SCRIPT_CURRENT_URI}"
Dernière modification par cracolinux (Le 08/01/2011, à 17:39)
Hors ligne
#5 Le 08/01/2011, à 18:40
- Levi59
Re : Nautilus-script : Coller vos vidéos bout à bout
la variable $a, c'est juste pour éviter l'interférence des guillemets simples dans sed.
Pour les ' ' entre les " ", c'est pour dire à sed de remplacer les retours à la ligne par ' ' et comme tu as la variable $total également entre guillemets simples, ça donne ce résultat:
Normalement ça permet de ne pas prendre en compte les espaces comme des séparateurs...
mencoder -ovc copy -oac copy -o video '/chemin/vers/fichier1' '/chemin/vers/fichier2' '/chemin/vers/fichier3'
Pour l'écriture "${VAR}", c'est normalement ainsi que l'on note une variable dans un script.
Les guillemets ne sont pas nécessaire si tu place la variable dans un echo (par exemple: echo "blabla ${VAR} blabla") mais sinon il faut toujours penser à les mettre sinon, si ta variable est faite d'espaces ou n'est pas définie pour une raison ou une autre, tu te retrouve avec des erreurs. (ex: [ ${VAR} != 3 ] , si VAR n'existe pas, le code sera [ != 3 ] ce qui est faux alors que [ "" != 3 ] serai valide)
Et pour les crochets, c'est pareil, c'est pour éviter les erreurs:
$ var1=test
$ var=blabla
$ echo "$var1 - ${var1}"
blabla1 - test
Pour "natilus script current uri", si je ne me trompe pas, c'est le dossier ou l'on se trouve en lançant le script mais si je me trompe...
Dernière modification par Levi59 (Le 08/01/2011, à 18:46)
Hors ligne
#6 Le 08/01/2011, à 18:49
- cracolinux
Re : Nautilus-script : Coller vos vidéos bout à bout
$ var1=test $ var=blabla $ echo "$var1 - ${var1}" blabla1 - test
OUlahh!! d'accord, je comprends !! Eh ben, va falloir que je fasse un peu plus attention moi! [ peut etre pas en fait ! ]
Edit :
Je viens de tester et j'obtiens ça, donc ... bizarre :
var1=test
var=blabla
echo "$var1 - ${var1}"
test - test
Dernière modification par cracolinux (Le 08/01/2011, à 18:59)
Hors ligne
#7 Le 08/01/2011, à 18:52
- HP
Re : Nautilus-script : Coller vos vidéos bout à bout
HP a écrit :Levi59 a écrit :Pour les problèmes d'espace, protège les variables...
ou utilise un vrai langage de programmation…
Comme lequel ?
Au hasard : Python, Perl, Ruby… pour rester dans les langages dits « de scripts ».
cat /dev/urandom >/dev/null 2>&1 #github
Hors ligne
#8 Le 08/01/2011, à 19:03
- cracolinux
Re : Nautilus-script : Coller vos vidéos bout à bout
@HP
Merci de ta réponse, tu programmes en utilisant quel langage parmi ceux que tu cites ?
Est-ce que tu pourrais par exemple donner une version de ce petit script en python ?
Ce serait sympa, histoire de comparer et de «tater» un peu le terrain !
Merci
Hors ligne
#9 Le 08/01/2011, à 19:06
- HP
Re : Nautilus-script : Coller vos vidéos bout à bout
Est-ce que tu pourrais par exemple donner une version de ce petit script en python ?
Tu veux que j'écrive un script qui ne m'intéresse pas dans le simple but de te faire une démo ? Excuse moi, mais je n'ai pas que çà à faire !
cat /dev/urandom >/dev/null 2>&1 #github
Hors ligne
#10 Le 08/01/2011, à 19:55
- cracolinux
Re : Nautilus-script : Coller vos vidéos bout à bout
ok, ben alors merci de rien.
En passant, je te rappelle le titre de mon post : Nautilus-script : Coller vos vidéos bout à bout
A ma connaissance, les nautilus scripts s'écrivent en bash et toi tu viens ici pour me dire d'utiliser un autre langage, soit.
Ensuite quand je te demande des précisions la dessus, tu me dis que tu n'as pas le temps, soit.
Alors ma question est la suivante : Qu'est-ce que tu veux apporter dans ce topic ? Pourquoi avoir répondu si tu n'as rien de constructif à dire?
Dernière modification par cracolinux (Le 08/01/2011, à 19:56)
Hors ligne
#11 Le 08/01/2011, à 21:00
- HP
Re : Nautilus-script : Coller vos vidéos bout à bout
A ma connaissance, les nautilus scripts s'écrivent en bash […]
À ta connaissance… mais justement, non ! Ils 'écrivent dans le langage de script de son choix.
cat /dev/urandom >/dev/null 2>&1 #github
Hors ligne
#12 Le 09/01/2011, à 13:05
- cracolinux
Re : Nautilus-script : Coller vos vidéos bout à bout
À ta connaissance… mais justement, non ! Ils 'écrivent dans le langage de script de son choix.
Tant mieux
Hors ligne
#13 Le 10/01/2011, à 10:38
- Bushman02
Re : Nautilus-script : Coller vos vidéos bout à bout
Merci, cracolinux, pour ton script car il fonctionne.
J'utilise parfois la vidéo avec mon APN, et , pour ce qui me concerne, un collage aussi rapide est bien pratique.
Merci encore.
Hors ligne
#14 Le 10/01/2011, à 13:46
- cracolinux
Re : Nautilus-script : Coller vos vidéos bout à bout
Content que ça te plaise !
Hors ligne
#15 Le 19/01/2011, à 17:05
- cracolinux
Re : Nautilus-script : Coller vos vidéos bout à bout
Levi59 a écrit :$ var1=test $ var=blabla $ echo "$var1 - ${var1}" blabla1 - test
OUlahh!! d'accord, je comprends !! Eh ben, va falloir que je fasse un peu plus attention moi! [ peut etre pas en fait ! ]
Edit :
Je viens de tester et j'obtiens ça, donc ... bizarre :
var1=test var=blabla echo "$var1 - ${var1}" test - test
Levi59,
Est-ce que tu sais pourquoi on obtient chacun un résultat différent ?
Hors ligne
#16 Le 19/01/2011, à 17:52
- Levi59
Re : Nautilus-script : Coller vos vidéos bout à bout
En fait j'ai cherché et je me suis rendu compte que j'ai mélangé avec une autre situation... C'est pour le cas ou tu utilises les $1, $2 etc et j'avais lu ça dans le cours d'un prof d'info. Je ne l'ai pas fait en console mais directement à la main.
Ce qui est sûr c'est que cela est une vrai norme d'écrire les variables entre accolades et ça évite les erreurs lorsque tu les mêles à du texte.
Hors ligne