Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 07-04-2016 09:04:32

mapomme1108
Membre
Inscription : 03-02-2016

Encodage FLAC vers MP3 récursif avec Perl Audio Converter

Salut,

Je n'arrive pas à encoder des fichiers FLAC en MP3 de façon récursive et en préservant l'arborescence avec Perl Audio Converter.
Je dois le faire un ligne de commande sur une Debian Jessie.

Voici le script que j'utilise:
pacpl -r -p -to mp3 --bitrate 256 -only flac /home/francois/NAS/Multimedia/Musique/ENCODING/FLAC --outdir /home/francois/NAS/Multimedia/Musique/ENCODING/MP3

J'ai ce message d'erreur si je place le scirpt à la racine des dossiers qui contiennent les fichiers FLAC :
given is experimental at /usr/bin/pacpl line 1927.
when is experimental at /usr/bin/pacpl line 1929.

Si je place le scirpt sh dans un dossier avec des fichiers FLAC, cela fonctionne.

Comment dois-je m'y prendre pour que cela fonctionne avec le script à la racine des dossiers FLAC?

Dernière modification par mapomme1108 (07-04-2016 09:47:48)

Hors ligne

#2 07-04-2016 10:13:22

golgot200
Membre
Lieu : AIN
Distrib. : Debian Jessie
Noyau : Linux debian 3.16.0-4-amd64
(G)UI : MATE
Inscription : 05-08-2007

Re : Encodage FLAC vers MP3 récursif avec Perl Audio Converter

Bonjour,

j'ai essayé Perl Audio Converter sur ma Testing et Idem hmm

Pourquoi ne pas utiliser avconv  ( jessie) ou ffmpeg directement (testing) ?
Ça fonctionne bien smile


find -name "*.flac" -exec ffmpeg -i {} -acodec libmp3lame -ab 128k {}.mp3 \;
 



ffmpeg dans la commande à remplacer par avconv.  Le récurcive fonctionne ainsi que les noms avec espaces.

Dernière modification par golgot200 (07-04-2016 10:14:14)


L'ultime question ... l'intelligence a besoin de la bêtise pour s'affirmer, la beauté a besoin de la laideur pour resplendir, le courage nait dans la peur, les forts impressionnent au millieu des faibles, mais au final,... qui a donc besoin d'autant de connards ?

Hors ligne

#3 07-04-2016 10:21:44

mapomme1108
Membre
Inscription : 03-02-2016

Re : Encodage FLAC vers MP3 récursif avec Perl Audio Converter

Merci

Ton script fonctionne mais il me met les fichiers MP3 dans le même dossier que les fichiers FLAC et avec l'extension .flac.mp3

Comment faire pour que ffmpeg crée une arborescence identique à celle des dossiers FLAC et avec les fichiers avec l'extension .mp3?

Hors ligne

#4 07-04-2016 10:57:28

Severian
Membre
Distrib. : Debian GNU/Linux 8.6 (jessie)
Noyau : Linux 4.6.0-0.bpo.1-amd64
(G)UI : Openbox 3.6.1-2
Inscription : 13-12-2014

Re : Encodage FLAC vers MP3 récursif avec Perl Audio Converter

à tester (je ne suis pas certain)

for i in `find -name "*.flac" -type f`; do ffmpeg -i $i -acodec libmp3lame -ab 128k `echo $i | sed -e 's/flac$/mp3/'`; done


"il est urgent d'attendre" (bendia)
ob3-debian2-150x50.png

Hors ligne

#5 07-04-2016 13:14:40

mapomme1108
Membre
Inscription : 03-02-2016

Re : Encodage FLAC vers MP3 récursif avec Perl Audio Converter

Salut Severian,

Merci pour ton aide, mais sed tel qu'il est utilisé dans ton script ne gère pas bien les espaces : il ne prend que la partie avant le 1er espace et retourne "No such file or directory"

Par exemple : pour le dossier "VA - Pure Country", j'ai "VA" = "No such file or directory"

Hors ligne

#6 07-04-2016 13:31:18

golgot200
Membre
Lieu : AIN
Distrib. : Debian Jessie
Noyau : Linux debian 3.16.0-4-amd64
(G)UI : MATE
Inscription : 05-08-2007

Re : Encodage FLAC vers MP3 récursif avec Perl Audio Converter

Un truc qui fonctionne comme tu veux je pense  smile

Pour les espaces, pas de problème.
Si tu rajoutes un flac entre temps dans ton dossier flac, il ne convertira que celui-ci et le copiera vers .../../ MP3


#!/bin/bash
#Convert files using ffmpeg

 Création Du Dossier MP3
if [ ! -d "/home/patrick/NAS/multimedia/Musique/ENCODING/MP3" ]; then
    echo "/home/patrick/NAS/multimedia/Musique/ENCODING/MP3 n'existe pas !"
    echo "Création du répertoire."
mkdir "/home/patrick/NAS/multimedia/Musique/ENCODING/MP3/"
else
    echo "Le répertoire $/home/patrick/NAS/multimedia/Musique/ENCODING/MP3 existe."
fi

OrDir="/home/patrick/NAS/multimedia/Musique/ENCODING/FLAC/"

find "$OrDir" -type f -exec /bin/bash -c \
    'f2=$(basename "$1"); \
     ffmpeg -i "$1" -c:a libmp3lame -q:a 0 "/home/patrick/NAS/multimedia/Musique/ENCODING/MP3/${f2%.*}.mp3" '
_ {}  \;
 



Remplace patrick par le tien

Après il faudra des pros pour le mettre dans les règles de l'art tongue
Pour la qualité d'encodage, je te laisse faire. wink

Faudrait trouver la combine pour laisser le terminal ouvert pour le visuel.

Edit à bendia : le code en couleur, c'est y pas chouette wink Voir le tuto : Le code, ça pique moins les yeux en couleur

Dernière modification par golgot200 (07-04-2016 13:39:19)


L'ultime question ... l'intelligence a besoin de la bêtise pour s'affirmer, la beauté a besoin de la laideur pour resplendir, le courage nait dans la peur, les forts impressionnent au millieu des faibles, mais au final,... qui a donc besoin d'autant de connards ?

Hors ligne

#7 07-04-2016 14:22:53

mapomme1108
Membre
Inscription : 03-02-2016

Re : Encodage FLAC vers MP3 récursif avec Perl Audio Converter

merci golgot200

Encore deux apports et c'est fini :
le script ne crée pas de répertoire de destination des MP3, il les place tous à la racine de /home/patrick/NAS/multimedia/Musique/ENCODING/MP3

Est-il possible de placer les MP3 dans un répertoire du même nom que celui qui contient l'album en FLAC

Exemple :
les fichiers FLAC dans : /home/patrick/NAS/multimedia/Musique/ENCODING/FLAC/Les années 90
seraient convertis en MP3 dans le dossier : /home/patrick/NAS/multimedia/Musique/ENCODING/MP3/Les années 90


J'utilisais Perl Audio Converter à la base et il ne réencodait pas les fichiers s'il trouvait les fichiers de destination déjà présents dans le répertoire MP3.
Est-ce que ce sera pareil avec ffmpeg? Quelle solution si ffmpeg ne le fait pas?


Merci encore!!!

Dernière modification par mapomme1108 (07-04-2016 14:52:09)

Hors ligne

#8 07-04-2016 14:57:03

golgot200
Membre
Lieu : AIN
Distrib. : Debian Jessie
Noyau : Linux debian 3.16.0-4-amd64
(G)UI : MATE
Inscription : 05-08-2007

Re : Encodage FLAC vers MP3 récursif avec Perl Audio Converter

Là, je sais pas faire .... il faut un connaisseur du script mais je vois très bien ce que tu veux faire  smile

Je cherche des morceaux sur le Net pour voir ton truc ....

L'ultime question ... l'intelligence a besoin de la bêtise pour s'affirmer, la beauté a besoin de la laideur pour resplendir, le courage nait dans la peur, les forts impressionnent au millieu des faibles, mais au final,... qui a donc besoin d'autant de connards ?

Hors ligne

#9 07-04-2016 17:55:02

golgot200
Membre
Lieu : AIN
Distrib. : Debian Jessie
Noyau : Linux debian 3.16.0-4-amd64
(G)UI : MATE
Inscription : 05-08-2007

Re : Encodage FLAC vers MP3 récursif avec Perl Audio Converter

Et pourquoi ne pas utiliser soundconverter ?
Il te crée un sous répertoire où se trouvent  tes flacs et il y met tes mp3 encodés wink

EDIT:Bien que, ce n'est pas encore tout à fait  comme tu veux hmm

Dernière modification par golgot200 (07-04-2016 18:04:14)


L'ultime question ... l'intelligence a besoin de la bêtise pour s'affirmer, la beauté a besoin de la laideur pour resplendir, le courage nait dans la peur, les forts impressionnent au millieu des faibles, mais au final,... qui a donc besoin d'autant de connards ?

Hors ligne

#10 07-04-2016 18:13:34

golgot200
Membre
Lieu : AIN
Distrib. : Debian Jessie
Noyau : Linux debian 3.16.0-4-amd64
(G)UI : MATE
Inscription : 05-08-2007

Re : Encodage FLAC vers MP3 récursif avec Perl Audio Converter

Si, c'est ce qu'il te faut smile

Il faut juste configurer soundconverter dans le préférences . Voilà tongue

L'ultime question ... l'intelligence a besoin de la bêtise pour s'affirmer, la beauté a besoin de la laideur pour resplendir, le courage nait dans la peur, les forts impressionnent au millieu des faibles, mais au final,... qui a donc besoin d'autant de connards ?

Hors ligne

#11 07-04-2016 18:32:20

mapomme1108
Membre
Inscription : 03-02-2016

Re : Encodage FLAC vers MP3 récursif avec Perl Audio Converter

SoundConverter ne fonctionne pas sans Gnome et je n'ai pas de bureau, uniquement une console ssh : dommage

Dernière modification par mapomme1108 (08-04-2016 14:04:45)

Hors ligne

#12 08-04-2016 08:39:42

mapomme1108
Membre
Inscription : 03-02-2016

Re : Encodage FLAC vers MP3 récursif avec Perl Audio Converter

J'ai essayé Perl Audio Concerter sous Debian Wheezy et il fait bien la conversion de façon récursive : il doit y avoir un bug à partir de Jessie.

EDIT : est-il possible d'installer la version de Wheezy sous Jessie?

Dernière modification par mapomme1108 (08-04-2016 14:03:49)

Hors ligne

#13 08-04-2016 14:27:52

golgot200
Membre
Lieu : AIN
Distrib. : Debian Jessie
Noyau : Linux debian 3.16.0-4-amd64
(G)UI : MATE
Inscription : 05-08-2007

Re : Encodage FLAC vers MP3 récursif avec Perl Audio Converter

Bonjour mapomme1108.

Effectivement, sous Testing aussi, ça ne fonctionne pas.

Je viens de compiler la version 5.0.0 sur :
https://sourceforge.net/projects/pacpl/ … cpl/5.0.0/

Et j'ai fais un paquet DEB, j'ai fais un test avec celui-ci et la bizarrement, la même commande fonctionne bien et je convertis mes fichiers FLAC wink


patrick@debian:~/Musique$ pacpl --to mp3 --bitrate 256 -only flac /home/patrick/Musique/ --outdir /home/patrick/Musique/MP3
Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/(\\%(?:\\=)?(\w|\\{ <-- HERE (?:\w|\\[^\w\\{}]|\\\\\\[\\{}])*\\}|\\\W))/ at /usr/share/perl5/MP3/Tag.pm line 2611.
cddb: checking for os ... Linux (x86_64) [little endian] [64 bit]

Perl Audio Converter - 5.0.0

Conversion: 01. (Just Like) Starting Over.flac -> mp3
Conversion: 02 - Confusion.flac -> mp3
Conversion: 03 I Get Around.flac -> mp3
Conversion: 06. Woman.flac -> mp3
Conversion: 10. You Win Again.flac -> mp3
Conversion: 18 - Rock à la radio.flac -> mp3
Conversion: 27. Telstar.flac -> mp3

Total des fichiers convertis: 7, échec: 0

patrick@debian:~/Musique$

 



Mon DEB, si tu veux :

http://sd-1.archive-host.com/membres/up … _amd64.deb


apt-get install libcddb-get-perl  libaudio-flac-header libaudio-scan-perl libmp3-tag-perl
 




dpkg -i pacpl_5.0.0-1_amd64.deb
 

Dernière modification par golgot200 (08-04-2016 19:41:39)


L'ultime question ... l'intelligence a besoin de la bêtise pour s'affirmer, la beauté a besoin de la laideur pour resplendir, le courage nait dans la peur, les forts impressionnent au millieu des faibles, mais au final,... qui a donc besoin d'autant de connards ?

Hors ligne

#14 08-04-2016 19:01:17

golgot200
Membre
Lieu : AIN
Distrib. : Debian Jessie
Noyau : Linux debian 3.16.0-4-amd64
(G)UI : MATE
Inscription : 05-08-2007

Re : Encodage FLAC vers MP3 récursif avec Perl Audio Converter

+

Pour moi, le script pour Caja ( Nautilus )

http://fr.osdn.jp/projects/sfnet_pacpl/ … 1.tar.bz2/

C'est pas mal ce pacpl  !!!  wink

L'ultime question ... l'intelligence a besoin de la bêtise pour s'affirmer, la beauté a besoin de la laideur pour resplendir, le courage nait dans la peur, les forts impressionnent au millieu des faibles, mais au final,... qui a donc besoin d'autant de connards ?

Hors ligne

#15 08-04-2016 20:09:57

mapomme1108
Membre
Inscription : 03-02-2016

Re : Encodage FLAC vers MP3 récursif avec Perl Audio Converter

Merci mais ton deb ne fonctionne pas sous Jessie :
Perl Audio Concerter ne trouve pas mes fichiers FLAC

Hors ligne

#16 08-04-2016 20:53:44

golgot200
Membre
Lieu : AIN
Distrib. : Debian Jessie
Noyau : Linux debian 3.16.0-4-amd64
(G)UI : MATE
Inscription : 05-08-2007

Re : Encodage FLAC vers MP3 récursif avec Perl Audio Converter

C'est bizarre, chez moi tout fonctionne pourtant hmm

L'ultime question ... l'intelligence a besoin de la bêtise pour s'affirmer, la beauté a besoin de la laideur pour resplendir, le courage nait dans la peur, les forts impressionnent au millieu des faibles, mais au final,... qui a donc besoin d'autant de connards ?

Hors ligne

#17 09-04-2016 13:34:15

golgot200
Membre
Lieu : AIN
Distrib. : Debian Jessie
Noyau : Linux debian 3.16.0-4-amd64
(G)UI : MATE
Inscription : 05-08-2007

Re : Encodage FLAC vers MP3 récursif avec Perl Audio Converter

Bonjour,

As-tu bien installé tout ça pour voir.

Les modules:


apt-get install libparse-recdescent-perl libdevel-symdump-perl libtest-pod-coverage-perl libparallel-forkmanager-perl libtest-pod-coverage-perl libaudio-scan-perl libmp3-info-perl libmp3-tag-perl libaudio-flac-header-perl libio-string-perl libcddb-get-perl libcddb-perl
 



Sur deb-multimedia :


aften libmac2 monkeys-audio shorten  ttaenc
 



A la mano, c'est mon choix wink


dpkg -i LES_PAQUETS
 




Les codecs principaux:


apt-get install sndfile-programs libav-tools opus-tools twolame
 



Pas trouvé bonk toolame et la  ( du moins pas dans les règles de l'art)
Pour ce qui est de OFF OFS OFR  ( le site)
http://losslessaudio.org/Downloads.php
et collé tout ça dans /usr/bin


Ma compilation : (configure)


patrick@debian:~/Téléchargements/pacpl-5.0.1$ ./configure --prefix=/usr
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking for rm... /bin/rm
checking for perl... /usr/bin/perl
checking for pod2man... /usr/bin/pod2man
checking for pod2html... /usr/bin/pod2html
checking for gzip... /bin/gzip
configure:
checking for lame... yes
checking for toolame... no
checking for twolame... yes
checking for bladeenc... yes
checking for oggenc... yes
checking for oggdec... yes
checking for opusenc... yes
checking for opusdec... yes
checking for aften... yes
checking for speexenc... yes
checking for speexdec... yes
checking for flac... yes
checking for mac... yes
checking for shorten... yes
checking for sox... yes
checking for faac... yes
checking for faad... yes
checking for ffmpeg... yes
checking for avconv... yes
checking for mplayer... yes
checking for la... no
checking for bonk... no
checking for mpcenc... yes
checking for mpcdec... yes
checking for off... yes
checking for ofr... yes
checking for ofs... yes
checking for ttaenc... yes
checking for wavpack... yes
checking for wvunpack... yes
checking for sndfile-convert... yes
configure:
configure: checking for required perl modules...
configure:
checking for perl module Getopt::Long... ok
checking for perl module File::Basename... ok
checking for perl module File::Find... ok
checking for perl module Parallel::ForkManager... ok
checking for perl module File::Spec::Functions... ok
checking for perl module CDDB... ok
checking for perl module CDDB_get... ok
checking for perl module MP3::Tag... ok
checking for perl module Audio::Scan... ok
checking for perl module Audio::FLAC::Header... ok
configure:
configure: checking for required plugin applications...
configure:
checking for kdialog... no
checking for zenity... yes
checking for nautilus... no
checking for nemo... no
configure:
configure: creating ./config.status
config.status: creating Makefile
configure:
configure:
configure: no plugins have been enabled...
configure:
configure:
configure: Configure finished successfully...
configure:
configure: make && make install
patrick@debian:~/Téléchargements/pacpl-5.0.1$
 




Pour le reste :


patrick@debian:~/Téléchargements/pacpl-5.0.1$ make
/usr/bin/pod2man pacpl |  /bin/gzip -9 > pacpl.1.gz
touch pacpl.1.gz
patrick@debian:~/Téléchargements/pacpl-5.0.1$ su
Mot de passe :
root@debian:/home/patrick/Téléchargements/pacpl-5.0.1# make install
/usr/bin/install -c -d /usr/bin
/usr/bin/install -c -d /etc/pacpl
/usr/bin/install -c -d /usr/share/pacpl/locale
/usr/bin/install -c -d /etc/pacpl/modules
/usr/bin/install -c -d /usr/share/man/man1
/usr/bin/install -c -d /usr/share/doc/pacpl
/usr/bin/install -c -d /etc/pacpl/extra
/usr/bin/install -c pacpl /usr/bin
/usr/bin/install -c -m 644 pacpl.conf codecs.conf pacpl.png /etc/pacpl
/usr/bin/install -c -m 644 po/* /usr/share/pacpl/locale
/usr/bin/install -c -m 644 pacpl.1.gz /usr/share/man/man1
/usr/bin/install -c -m 644 INSTALL README AUTHORS TODO NEWS ChangeLog COPYING /usr/share/doc/pacpl
/usr/bin/install -c -m 644 extra/* /etc/pacpl/extra
root@debian:/home/patrick/Téléchargements/pacpl-5.0.1# checkinstall

checkinstall 1.6.2, Copyright 2009 Felipe Eduardo Sanchez Diaz Duran
           This software is released under the GNU GPL.


The package documentation directory ./doc-pak does not exist.
Should I create a default set of package docs?  [y]:

Preparing package documentation...OK

Warning: Your package description is bigger than 11 lines.
Warning: The Slackware 8.1+ pkgtools might not like it.


*****************************************
**** Debian package creation selected ***
*****************************************

This package will be built according to these values:

0 -  Maintainer: [ root@debian ]
1 -  Summary: [  Perl Audio Converter ]
2 -  Name:    [ pacpl ]
3 -  Version: [ 5.0.1 ]
4 -  Release: [ 1 ]
5 -  License: [ GPL ]
6 -  Group:   [ checkinstall ]
7 -  Architecture: [ amd64 ]
8 -  Source location: [ pacpl-5.0.1 ]
9 -  Alternate source location: [  ]
10 - Requires: [  ]
11 - Provides: [ pacpl ]
12 - Conflicts: [  ]
13 - Replaces: [  ]

Enter a number to change any of them or press ENTER to continue:

Installing with make install...

========================= Installation results ===========================
/usr/bin/install -c -d /usr/bin
/usr/bin/install -c -d /etc/pacpl
/usr/bin/install -c -d /usr/share/pacpl/locale
/usr/bin/install -c -d /etc/pacpl/modules
/usr/bin/install -c -d /usr/share/man/man1
/usr/bin/install -c -d /usr/share/doc/pacpl
/usr/bin/install -c -d /etc/pacpl/extra
/usr/bin/install -c pacpl /usr/bin
/usr/bin/install -c -m 644 pacpl.conf codecs.conf pacpl.png /etc/pacpl
/usr/bin/install -c -m 644 po/* /usr/share/pacpl/locale
/usr/bin/install -c -m 644 pacpl.1.gz /usr/share/man/man1
/usr/bin/install -c -m 644 INSTALL README AUTHORS TODO NEWS ChangeLog COPYING /usr/share/doc/pacpl
/usr/bin/install -c -m 644 extra/* /etc/pacpl/extra

======================== Installation successful ==========================

Copying documentation directory...
./
./ChangeLog
./AUTHORS
./NEWS
./TODO
./README
./COPYING
./INSTALL

Copying files to the temporary directory...OK

Stripping ELF binaries and libraries...OK

Compressing man pages...OK

Building file list...OK

Building Debian package...OK

Installing Debian package...OK

Erasing temporary files...OK

Writing backup package...OK
OK

Deleting temp dir...OK


**********************************************************************

 Done. The new package has been installed and saved to

 /home/patrick/Téléchargements/pacpl-5.0.1/pacpl_5.0.1-1_amd64.deb

 You can remove it from your system anytime using:

      dpkg -r pacpl

**********************************************************************

root@debian:/home/patrick/Téléchargements/pacpl-5.0.1#
 




EDIT: Juste ce message au lancement de l'encodage mais sans incidence ( BUG CONNU)


Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/(\\%(?:\\=)?(\w|\\{ <-- HERE (?:\w|\\[^\w\\{}]|\\\\\\[\\{}])*\\}|\\\W))/ at /usr/share/perl5/MP3/Tag.pm line 2611.
 

Dernière modification par golgot200 (09-04-2016 14:07:38)


L'ultime question ... l'intelligence a besoin de la bêtise pour s'affirmer, la beauté a besoin de la laideur pour resplendir, le courage nait dans la peur, les forts impressionnent au millieu des faibles, mais au final,... qui a donc besoin d'autant de connards ?

Hors ligne

#18 12-04-2016 21:12:47

golgot200
Membre
Lieu : AIN
Distrib. : Debian Jessie
Noyau : Linux debian 3.16.0-4-amd64
(G)UI : MATE
Inscription : 05-08-2007

Re : Encodage FLAC vers MP3 récursif avec Perl Audio Converter

Pas de retour ?

L'ultime question ... l'intelligence a besoin de la bêtise pour s'affirmer, la beauté a besoin de la laideur pour resplendir, le courage nait dans la peur, les forts impressionnent au millieu des faibles, mais au final,... qui a donc besoin d'autant de connards ?

Hors ligne

Pied de page des forums