Vous n'êtes pas identifié(e).
j'ai essayé ça , mais ça marche pas
Pages perso : feh, omegat, udisks, passerelle, schroot vraiment transparent
Hors ligne
Quelque chose dans le genre en arrangeant la sortie (tel quel ça double l'extension)
for filename in $(find . -name '*.mp3'); do ffmpeg -t 0.1 -i "$filename" "$filename".mp3 ;done
j'ai des erreurs type
à cause des espaces dans les noms de fichiers.
avec éventuellement passage du dossier en argument.
Hors ligne
ou
...
Dernière modification par leonlemouton (08-03-2016 19:58:52)
Leonlemouton
°(")°
Hors ligne
hello j'aurai fait un truc comme ça :
#!/bin/bash
dossier=/home/wlourf/podcasts/test
out=$dossier/out
mkdir -p $out
for file in $dossier/*.mp3
do
bn=`basename "$file"`
ffmpeg -t 15 -i "$file" "$out/$bn"
done
exit 0
avec éventuellement passage du dossier en argument.
j'ai une erreur
ensuite find sur mp3.mp3 pour déplacer les fichiers
Dernière modification par wlourf (08-03-2016 20:22:20)
Hors ligne
en effet si ton dossier est vide, il ya erreur ,avec find :
find /tmp/essai/ -name *.mp3 -exec ffmpeg -t 15 -i '{}' '{}'.mp3 \;
ensuite find sur mp3.mp3 pour déplacer les fichiers
ça marche mais faut rester dans le dossier et j'ai besoin de faire ça dans des dossiers et sous dossiers.
par contre, j'ai une erreur si le dossier contient un espace.
en effet si ton dossier est vide, il ya erreur ,avec find :
find /tmp/essai/ -name *.mp3 -exec ffmpeg -t 15 -i '{}' '{}'.mp3 \;
ensuite find sur mp3.mp3 pour déplacer les fichiers
a priori c'est ok.
j'ai plus qu'à nettoyer tout ça.
merci
Le script extrait les 15 premières secondes de chaque mp3 trouvé dans
l'arborescence depuis le répertoire courant. Chacun des extraits porte
le nom de l'ancien fichier auquel on ajoute « _extrait » avant le
.mp3.
Je n'ai pas testé, mais ça devrait fonctionner.
Hors ligne
J'ai une solution basée sur find et une boucle while read.
#! /bin/bash
while IFS= read -r -d $'\0' filename; do
new_name="${filename%.mp3}_extrait.mp3"
ffmpeg -i "$filename" -c copy -to 0:15 "$new_name"
done < <(find . -name '*.mp3' -print0)
Le script extrait les 15 premières secondes de chaque mp3 trouvé dans
l'arborescence depuis le répertoire courant. Chacun des extraits porte
le nom de l'ancien fichier auquel on ajoute « _extrait » avant le
.mp3.
Je n'ai pas testé, mais ça devrait fonctionner.
malheureusement, j'ai des erreurs
existe ? D'ailleurs, ce chemin ne devrait pas commencer par un / mais par un ./
Hors ligne
Ce qui donne le fichier :
Par contre ceux pour lesquels ça échoue ne peuvent être trouvé car le nom devient :
Est-ce ffmpeg qui enlève ce point au début du chemin ?
Est-ce que le fichier :
existe ?
Hors ligne
Hors ligne
Hors ligne
ffmeg bouffe les premiers caractères, ça se voit bien avec ce script modifié
Ah ! C'est un bug de ffmpeg, alors. Je trouvais bizarre que ça ne marchais pas à coup
sûr.
Merci, pour le diagnostique
Mais du coup il y a peut être un moyen de contourner ce bug, en faisant un « cd » dans le $(dirname $filename)
avant l'extraction et en rétablissant le répertoire d'origine juste après. Ce n'est pas très propre, mais bon.
Dernière modification par enicar (08-03-2016 23:11:49)
Hors ligne
j'ai essayé avec uniquement des chiffres et lettres pour le nom des dossiers et fichiers mais c'est toujours le même pb.
Euh, peux-tu être plus explicite ?
Hors ligne
tu peux réduire la sortie de ffmpeg avec l'option -loglevel (regarde dans le man) et écraser les fichiers avec -y
Hors ligne
j'ai renommé automatiquement les .mp3 avec des nombres et les dossier avec des lettres pour supprimer les espaces et autres caractères un peu spéciaux.
Ce ne sont pas ces caractères qui posent problème, amha.
Hors ligne
J'ai aussi ajouté une règle à find pour qu'il ne renvoie pas
les fichiers se terminant par _extrait.mp3. Ce n'est pas parfait
mais ça devrait être suffisant. L'idéal serait de créer les extraits
dans un répertoire dédié reprenant l'arborescence de l'original.
C'est n'est pas compliqué à réaliser, je le laisse en exercice
Hors ligne
Dernière modification par Anonyme (09-03-2016 14:40:54)
Dernière modification par Anonyme (10-03-2016 20:48:30)