Debian-facile

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

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

#26 25-10-2020 21:09:14

Cram28
Membre
Lieu : Eure-et-Loir
Distrib. : Debian Buster
Noyau : Linux 4.19.0-12-amd64
(G)UI : Xfce
Inscription : 14-09-2020

Re : cdda2wav Wav + cue

Bonsoir,

golgot200 a écrit :

eh ben, tu lui as mis plein de chrome à mon script.


lol J'adore faire les chromes ! lol (et pis ça permet de comprendre à peu près les choses quand tu commentes et organises... en espérant que ce soit pas faux ... roll)

A propos de CD protégé, je suis tombé sur un qui me dit qu'il trouve un ISRC code: Ça l’empêche d'accéder au contenu visiblement ? (j'ai essayer avec les trois serveurs CDDB sans succès)
International Standard Recording Code qu'i disent , y a des outils - j'imagine - qui l'obtienne ? Tu connais ?


. Fabrication du fichier du contenu (toc)...
Cdrdao version 1.2.4 - (C) Andreas Mueller <andreas@daneb.de>
WARNING: SCSI device is currently in use. Only read commands are supported.
/dev/sr0: ATAPI iHAS124   C Rev: LL06
Using driver: Generic SCSI-3/MMC - Version 2.0 (options 0x20000)

Reading toc data...

Track   Mode    Flags  Start                Length
------------------------------------------------------------
 1      AUDIO   0      00:00:00(     0)     03:31:36( 15861)
 2      AUDIO   0      03:31:36( 15861)     03:50:18( 17268)
 3      AUDIO   0      07:21:54( 33129)     03:25:64( 15439)
 4      AUDIO   0      10:47:43( 48568)     03:40:36( 16536)
 5      AUDIO   0      14:28:04( 65104)     02:59:02( 13427)
 6      AUDIO   0      17:27:06( 78531)     03:56:70( 17770)
 7      AUDIO   0      21:24:01( 96301)     03:29:64( 15739)
 8      AUDIO   0      24:53:65(112040)     02:49:55( 12730)
 9      AUDIO   0      27:43:45(124770)     02:18:37( 10387)
10      AUDIO   0      30:02:07(135157)     03:00:69( 13569)
11      AUDIO   0      33:03:01(148726)     05:12:34( 23434)
12      AUDIO   0      38:15:35(172160)     04:08:63( 18663)
Leadout AUDIO   0      42:24:23(190823)

PQ sub-channel reading (audio track) is supported, data format is BCD.
Raw P-W sub-channel reading (audio track) is supported.
Cooked R-W sub-channel reading (audio track) is supported.
Analyzing track 01 (AUDIO): start 00:00:00, length 03:31:36...
Found ISRC code.
Analyzing track 02 (AUDIO): start 03:31:36, length 03:50:18...
Found ISRC code.
Analyzing track 03 (AUDIO): start 07:21:54, length 03:25:64...
Found ISRC code.
Analyzing track 04 (AUDIO): start 10:47:43, length 03:40:36...
Found ISRC code.
Analyzing track 05 (AUDIO): start 14:28:04, length 02:59:02...
Found ISRC code.
Analyzing track 06 (AUDIO): start 17:27:06, length 03:56:70...
Found ISRC code.
Analyzing track 07 (AUDIO): start 21:24:01, length 03:29:64...
Found ISRC code.
Analyzing track 08 (AUDIO): start 24:53:65, length 02:49:55...
Found ISRC code.
Analyzing track 09 (AUDIO): start 27:43:45, length 02:18:37...
Found ISRC code.
Analyzing track 10 (AUDIO): start 30:02:07, length 03:00:69...
Found ISRC code.
Analyzing track 11 (AUDIO): start 33:03:01, length 05:12:34...
Found ISRC code.
Analyzing track 12 (AUDIO): start 38:15:35, length 04:08:63...
Found ISRC code.
Found disk catalogue number.
         
CDDB: Connecting to http://freedb.dbpoweramp.com:80/~cddb/cddb.cgi ...
CDDB: Ok.
Found following inexact match:

    DISKID   CATEGORY     TITLE

 1. b109f20c misc         Artiste inconnu / Album inconnu


Select match, 0 for none [0-1]?
 



@suivre, @+


Travaille du chapeau: "Je sais que vous croyez comprendre ce que vous pensez que j'ai dit, mais je ne suis pas certain que vous réalisiez que ce que vous avez entendu n'est pas exactement ce que je voulais dire..."

Hors ligne

#27 26-10-2020 05:57:18

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.9.4-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : cdda2wav Wav + cue

Cram28 a écrit :



A propos de CD protégé, je suis tombé sur un qui me dit qu'il trouve un ISRC code: Ça l’empêche d'accéder au contenu visiblement ? (j'ai essayer avec les trois serveurs CDDB sans succès)
International Standard Recording Code qu'i disent , y a des outils - j'imagine - qui l'obtienne ? Tu connais ?



Je regarde ça hmm

Je ne pense pas que ce soit un problème au niveau de l'ISRC mais plutôt un problème au niveau du cddb "b109f20c"

Dans ton fichier "b109f20c", il y a quoi dedans ?
Il est peut-être foireux sur les 3 serveurs. Enfin, je dis ça mais c'est vraiment au pif. hmm

Un GUI du type Asunder avec gnudb.gnudb.org dans ses options de recherche. Est-ce qu'il te trouve le titre et l'artiste ?


EDIT: Sur ton interrogation sur l'utilité du CUE dans le script, il te sert pour le split du single, pour la récupération des noms et pourquoi pas pour le gravage sur une galette. smile
Un clic droit sur celui-ci --- ouvrir avec mpv (exemple), tu auras les pistes pour naviguer et surtout les titres nommés des tracks. C'est plus sympa. tongue

Dernière modification par golgot200 (26-10-2020 07:43:55)

Hors ligne

#28 26-10-2020 18:59:47

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.9.4-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : cdda2wav Wav + cue

@Cram28

Bon, j'ai eu un bon pif en faite.

Je suis allé récupérer ton fameux fichier "b109f20c" dans mon dossier "freedb-complete-20200601", voilà ce qu'il me dit :


# xmcd CD database file
#
# Track frame offsets:
# 150
# 16011
# 33279
# 48718
# 65254
# 78681
# 96451
# 112190
# 124920
# 135307
# 148876
# 172310
#
# Disc length: 2548 seconds
#
# Revision: 2
# Processed by: cddbd v1.5.2PL0 Copyright (c) Steve Scherf et al.
# Submitted via: jetAudio 5
#
DISCID=b109f20c
DTITLE=Artiste inconnu / Album inconnu
DYEAR=
DGENRE=Genre inconnu
TTITLE0=Piste 1
TTITLE1=Piste 2
TTITLE2=Piste 3
TTITLE3=Piste 4
TTITLE4=Piste 5
TTITLE5=Piste 6
TTITLE6=Piste 7
TTITLE7=Piste 8
TTITLE8=Piste 9
TTITLE9=Piste 10
TTITLE10=Piste 11
TTITLE11=Piste 12
EXTD=
EXTT0=
EXTT1=
EXTT2=
EXTT3=
EXTT4=
EXTT5=
EXTT6=
EXTT7=
EXTT8=
EXTT9=
EXTT10=
EXTT11=
PLAYORDER=
 



Il est bien dans misc et me donne bien en info :


DISCID=b109f20c
DTITLE=Artiste inconnu / Album inconnu
 



Donc tout est normal, si je peux dire. wink

Le fichier est foireux dans la base.

Hors ligne

#29 27-10-2020 01:10:11

Cram28
Membre
Lieu : Eure-et-Loir
Distrib. : Debian Buster
Noyau : Linux 4.19.0-12-amd64
(G)UI : Xfce
Inscription : 14-09-2020

Re : cdda2wav Wav + cue

Bonsoir,

Il me semble qu'il y a autre chose (j'ai pas tout dit, pardon...).

Je poursuis l' "opération chrome" et j'ai ajouté l'info "CD ID" dans la procédure de lecture des choix et donc je l'affiche (avec 'genre' et 'serveur CDDB'):


$ ./df_rip_audio_v1.3.sh
┌────────────┬─────────────────────────────────────────────────────┬───────────┐
│ Catégorie  │  Description                                        │  Version  │
├────────────┼─────────────────────────────────────────────────────┼───────────┤
│ Multimedia │  RIP de CD audio                                    │    1.3    │
└────────────┴─────────────────────────────────────────────────────┴───────────┘
Disque Ok. Analyse, recherche de l'album....

3 titre(s) pour l'album, proposés par 3 serveur(s) :

1.Renan Luce - Le Clan Des Miros
  Genre: misc - IdCD: ca0c170d - (Serv: 0 - http://freedb.freac.org)
2.Renan Luce - Le Clan Des Miros
  Genre: misc - IdCD: ca0c170d - (Serv: 1 - http://gnudb.gnudb.org)
3.Renan Luce - Le Clan Des Miros
  Genre: misc - IdCD: ca0c170d - (Serv: 2 - http://freedb.dbpoweramp.com)


==> Entrer votre choix ('0' pour abandonner): 1

Votre album sera nommé Renan Luce - Le Clan Des Miros, en tant que dossier dans le répertoire courant "/home/cram28/bin".
==> Confirmez-vous ce choix ? [o/n]: o

Oui, on ripe....cdparanoia III release 10.2 (September 11, 2008)

 

Attempting to set speed to 48x...
Ripping from sector       0 (track  1 [0:00.00])
    to sector  190822 (track 12 [4:08.62])

outputting to Renan Luce - Le Clan Des Miros.wav

 (== PROGRESS == [                              | 190822 00 ] == :^D * ==)  

Done.


OK, Rip terminé, stocké dans /home/cram28/bin/Renan Luce - Le Clan Des Miros/.
. Récupération et conversion du contenu du CD...
.. Conversion du fichier CDDB en utf-8.
. Fabrication du fichier du contenu (toc)...
 


Le CD est ripé et le fichier nommé 'ca0c170d' (CD ID) est créé et contient:


 xmcd
#
# Track frame offsets:
#     150
#     16011
#     33279
#     48718
#     65254
#     78681
#     96451
#     112190
#     124920
#     135307
#     148876
#     172310
#     202373
#
# Disc length: 3097
#
# Revision: 8
# Processed by: cddbd v1.5.2PL0 Copyright (c) Steve Scherf et al.
# Submitted via: fre:ac v1.0.27
#
DISCID=ca0c170d
DTITLE=Renan Luce / Le Clan Des Miros
TTITLE0=Le clan des miros
TTITLE1=La fille de la bande
TTITLE2=Les gens sont fous
TTITLE3=Nantes
TTITLE4=Rue de l'oiseau lyre
TTITLE5=Chez toi
TTITLE6=Ridicule
TTITLE7=Grand-père
TTITLE8=Grand-père II
TTITLE9=On n'est pas à une bêtise près
TTITLE10=Aux timides anonymes
TTITLE11=Femme à lunettes
TTITLE12=Data Track
EXTD=
EXTT0=
EXTT1=
EXTT2=
EXTT3=
EXTT4=
EXTT5=
EXTT6=
EXTT7=
EXTT8=
EXTT9=
EXTT10=
EXTT11=
EXTT12=
PLAYORDER=
 


On connaît les titres des pistes donc.

Il me semble que c'est après que çà "se gatte" avec la commande 'cdrdao' qui... ne sait pas trancher parce que code ISRC et proposition d'un autre CD ID  'b109f20c' (album et artiste inconnus cette fois) ?


Cdrdao version 1.2.4 - (C) Andreas Mueller <andreas@daneb.de>
/dev/sr0: ATAPI iHAS124   C Rev: LL06
Using driver: Generic SCSI-3/MMC - Version 2.0 (options 0x20000)

Reading toc data...

Track   Mode    Flags  Start                Length
------------------------------------------------------------
 1      AUDIO   0      00:00:00(     0)     03:31:36( 15861)
 2      AUDIO   0      03:31:36( 15861)     03:50:18( 17268)
 3      AUDIO   0      07:21:54( 33129)     03:25:64( 15439)
 4      AUDIO   0      10:47:43( 48568)     03:40:36( 16536)
 5      AUDIO   0      14:28:04( 65104)     02:59:02( 13427)
 6      AUDIO   0      17:27:06( 78531)     03:56:70( 17770)
 7      AUDIO   0      21:24:01( 96301)     03:29:64( 15739)
 8      AUDIO   0      24:53:65(112040)     02:49:55( 12730)
 9      AUDIO   0      27:43:45(124770)     02:18:37( 10387)
10      AUDIO   0      30:02:07(135157)     03:00:69( 13569)
11      AUDIO   0      33:03:01(148726)     05:12:34( 23434)
12      AUDIO   0      38:15:35(172160)     04:08:63( 18663)
Leadout AUDIO   0      42:24:23(190823)

PQ sub-channel reading (audio track) is supported, data format is BCD.
Raw P-W sub-channel reading (audio track) is supported.
Cooked R-W sub-channel reading (audio track) is supported.
Analyzing track 01 (AUDIO): start 00:00:00, length 03:31:36...
Found ISRC code.
Analyzing track 02 (AUDIO): start 03:31:36, length 03:50:18...
Found ISRC code.
Analyzing track 03 (AUDIO): start 07:21:54, length 03:25:64...
Found ISRC code.
Analyzing track 04 (AUDIO): start 10:47:43, length 03:40:36...
Found ISRC code.
Analyzing track 05 (AUDIO): start 14:28:04, length 02:59:02...
Found ISRC code.
Analyzing track 06 (AUDIO): start 17:27:06, length 03:56:70...
Found ISRC code.
Analyzing track 07 (AUDIO): start 21:24:01, length 03:29:64...
Found ISRC code.
Analyzing track 08 (AUDIO): start 24:53:65, length 02:49:55...
Found ISRC code.
Analyzing track 09 (AUDIO): start 27:43:45, length 02:18:37...
Found ISRC code.
Analyzing track 10 (AUDIO): start 30:02:07, length 03:00:69...
Found ISRC code.
Analyzing track 11 (AUDIO): start 33:03:01, length 05:12:34...
Found ISRC code.
Analyzing track 12 (AUDIO): start 38:15:35, length 04:08:63...
Found ISRC code.
Found disk catalogue number.
         
CDDB: Connecting to http://freedb.freac.org:80/~cddb/cddb.cgi ...
CDDB: Ok.
Found following inexact match:

    DISKID   CATEGORY     TITLE

 1. b109f20c misc         Artiste inconnu / Album inconnu


Select match, 0 for none [0-1]?
 



(Bon, fini pour ce soir: j'va dormir, demain "y a école"...  sad )

@+


Travaille du chapeau: "Je sais que vous croyez comprendre ce que vous pensez que j'ai dit, mais je ne suis pas certain que vous réalisiez que ce que vous avez entendu n'est pas exactement ce que je voulais dire..."

Hors ligne

#30 27-10-2020 05:41:43

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.9.4-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : cdda2wav Wav + cue

Bonjour,

tu veux dire que c'est le même CD ?
J'avoue être perdu là. hmm

EDIT: Et répercuter lors des choix ALBUMNAME "freac, gnudb, et dbpoweramp" un CDDBURL="http://CHOIX_URL/~cddb/cddb.cgi" pour le CDDB car là je vois qu'on a une url par défaut dans la recherche du fichier cddb.

Dernière modification par golgot200 (27-10-2020 05:51:40)

Hors ligne

#31 27-10-2020 23:59:14

Cram28
Membre
Lieu : Eure-et-Loir
Distrib. : Debian Buster
Noyau : Linux 4.19.0-12-amd64
(G)UI : Xfce
Inscription : 14-09-2020

Re : cdda2wav Wav + cue

Hello bonsoir,

Voui, c'est le même CD.
Les trois serveurs trouvent la même référence initiale de CD : ca0c170d

Disque Ok. Analyse, recherche de l'album....

3 titre(s) pour l'album, proposés par 3 serveur(s) :

1.Renan Luce - Le Clan Des Miros
  Genre: misc - IdCD: ca0c170d - (Serv: 0 - http://freedb.freac.org)
2.Renan Luce - Le Clan Des Miros
  Genre: misc - IdCD: ca0c170d - (Serv: 1 - http://gnudb.gnudb.org)
3.Renan Luce - Le Clan Des Miros
  Genre: misc - IdCD: ca0c170d - (Serv: 2 - http://freedb.dbpoweramp.com)
 


Et j'intègre bien le serveur CDDB correspondant au choix initial (j'ai modifié l'adresse qui était effectivement en dur de sorte qu'elle corresponde au serveur choisi):

  • pour cddb-tool:


    CD=$(cddb-tool query "${CDDBServeur[${IndServ[$choix-1]}]}/~cddb/cddb.cgi" 1 "${MYUSER}" "${MYHOST}" "${DISCID}")
    cddb-tool read "${CDDBServeur[${IndServ[$choix-1]}]}/~cddb/cddb.cgi" 3 "${MYUSER}" "${MYHOST}" \
              "$(echo "$CD" | head -1 | awk '{print $2 " " $3}')" > "${ALBUMNAME}/$NAME_FILE"
     

  • comme pour cdrdao:


    (
        cd "${ALBUMNAME}" || exit
        # dans ${CDDBServeur[${IndServ[$choix-1]}]}, virer le http://... 7 en dur mais si demain httpS... A gérer...
        cdrdao read-toc --fast-toc --device "$DEVICE" --driver generic-mmc:0x20000 --paranoia-mode 0 \
                --with-cddb --cddb-servers ${CDDBServeur[${IndServ[$choix-1]}]:7}:/~cddb/cddb.cgi "${ALBUMNAME}.toc"
    )
     


Et j'ai bien le même choix proposé quelque soit le serveur CDDB, d'un disque de référence '1. b109f20c misc         Artiste inconnu / Album inconnu' dont je ne sais d'où elle sort:

  1. CDDB: Connecting to http://freedb.freac.org:80/~cddb/cddb.cgi ...
    CDDB: Ok.
    Found following inexact match:

        DISKID   CATEGORY     TITLE

     1. b109f20c misc         Artiste inconnu / Album inconnu


    Select match, 0 for none [0-1]?

  2. CDDB: Connecting to http://gnudb.gnudb.org:80/~cddb/cddb.cgi ...
    CDDB: Ok.
    Found following inexact match:

        DISKID   CATEGORY     TITLE

     1. b109f20c misc         Artiste inconnu / Album inconnu
     

  3. CDDB: Connecting to http://freedb.dbpoweramp.com:80/~cddb/cddb.cgi ...
    CDDB: Ok.
    Found following inexact match:

        DISKID   CATEGORY     TITLE

     1. b109f20c misc         Artiste inconnu / Album inconnu
     



Mystère ... hmm

@+

PS: Mes dernières modif. à toutes fins utiles...:


#!/bin/bash
# ========================  df_rip-audio.sh  ================================ #
#                                                                             #
# RIP de CD audio avec recherche de pochette album                            #
# debian-facile.org - golgot200                                               #
#                                                                             #
# =========================================================================== #
# Dépendance debian:                                                          #
# ------------------                                                          #
# cdparanoia cdrdao flac cuetools cd-discid shntool abcde (pour cddb-tool)    #
# sacad pour les pochettes d'album                                            #
#                                                                             #
# Dépendance arch:                                                            #
# ------------------                                                          #
# ...                                                                         #
#                                                                             #
# Evolutions possibles                                                        #
# ---------------------                                                       #
# * Intégrer les réponses en 2xx des serveurs CDDB: plusieurs titres possibles#
#   dans une seule réponse pour un serveur donné.                             #
# * choix lecteur /dev/srx, et sa vitesse, ici ou en argument de lancement ?  #
# * choix d'un format selon cible lecteur:                                    #
#   - natif wav                                                               #
#   - sans perte flac, ogg                                                    #
#   - mp3 pour téléphone..                                                    #
# * Intégrer MusicBrainz ?                                                    #
# * Gérer les tag: genre (folk, pop, classique), année, etc...                #
# * Offrir le choix d'un dossier cible, éventuellement sur un NAS...          #
# * Gérer un fichier de log                                                   #
# * ...                                                                       #
# --------------------------------------------------------------------------- #
# Vers Date       Commentaires                                                #
# --------------------------------------------------------------------------- #
# 1.0  2020.10.17 Version initiale                                            #
# 1.1  2020.10.17 Appel cuetag.sh / cuetag selon os arch / debian             #
# 1.2  2020.10.19 Réorganisation choix et url serveurs cddb                   #
# 1.3  2020.10.26 ....                                                        #
# ...  ssaa.mm.jj ... ...                                                     #
# =========================================================================== #
# --------------------------------------------------------------------------- #
# Variables
# --------------------------------------------------------------------------- #
# Pour la mise en forme / couleurs
readonly NORM="\\e[0m"                    # "Normal"
readonly GRAS="\\e[1m"                    # Texte en gras
readonly FAIBLE="\\e[2m"                  # Texte "faible"
readonly ITAL="\\e[3m"                    # Texte italique
readonly SOULIGN="\\e[4m"                 # Texte souligé
readonly CLIGN="\\e[5m"                   # Texte clignotant
readonly INV="\\e[7m"                     # Inversé texte/fond
readonly MASQ="\\e[8m"                    # Texte masqué

readonly BLEUFONCE="\\e[1;34m"
readonly VERT="\\e[0;32m"
readonly ROUGE="\\e[1;31m"

# Le script...
readonly VERSION="1.3"
#readonly DESC="${GRAS}Utilitaire - RIP de CD audio - version ${NORM}${INV}${VERSION}${NORM}"
readonly DESC="┌────────────┬─────────────────────────────────────────────────────┬───────────┐
│\\e[44;96m Catégorie  ${NORM}│\\e[44;96m  Description                                        ${NORM}│\\e[44;96m  Version  ${NORM}
├────────────┼─────────────────────────────────────────────────────┼───────────┤
│ Multimedia │  RIP de CD audio                                    │    ${INV}${VERSION}${NORM}    │
└────────────┴─────────────────────────────────────────────────────┴───────────┘"

# Variables pour atteindre les serveurs CDDB - tableaux
declare -a CDDBServeur=( http://freedb.freac.org http://gnudb.gnudb.org http://freedb.dbpoweramp.com )
declare -a ListeTitres IdCD Genre
MYUSER="whoami"
MYHOST="hostname"

START_TIME=""                   # Heure de début, à positionner au début du rip
CURPATH=$(pwd)                  # Répertoire courant
ALBUMNAME=""                    # Nom de l'abum audio: dossier et fichiers
choix=-1                          # N° de choix: permet des pointer l'album, le nom du serveur, l'indice des tableaux
FORMAT="FLAC"                   # format par défaut des pistes audio en sortie
DEVICE="/dev/sr0"               # lecteur cdrom par défaut
# Vitesse lecteur mais "le 1ier qui vient"...
SPEED=$(more /proc/sys/dev/cdrom/info | grep 'drive speed:' | awk '{print $3}')
# --------------------------------------------------------------------------- #
# J'ai deux lecteurs CD/DVD sr0 et graveur CD/DV/BR sr1 sur la machine.
# ?.?? Comment fixer celui qu'on veut riper, et sa vitesse SPEED ?.??
# Par exemple 'more /proc/sys/dev/cdrom/info' retourne chez moi:
#  $ more /proc/sys/dev/cdrom/info
#  
#  CD-ROM information, Id: cdrom.c 3.20 2003/12/17
#  
#  drive name:             sr1 sr0
#  drive speed:            40  48
#  drive # of slots:       1   1
#  Can close tray:         1   1
#  Can open tray:          1   1
#  Can lock tray:          1   1
#  Can change speed:       1   1
#  Can select disk:        0   0
#  Can read multisession:  1   1
#  Can read MCN:           1   1
#  Reports media changed:  1   1
#  Can play audio:         1   1
#  Can write CD-R:         1   1
#  Can write CD-RW:        1   1
#  Can read DVD:           1   1
#  Can write DVD-R:        1   1
#  Can write DVD-RAM:      1   1
#  Can read MRW:           1   1
#  Can write MRW:          1   1
#  Can write RAM:          1   1

# --------------------------------------------------------------------------- #
# Fonctions
# --------------------------------------------------------------------------- #
# Affiche la version courante du script
# --------------------------------------------------------------------------- #
function version() {
  echo "$VERSION"
}
# --------------------------------------------------------------------------- #
# Affiche l'usage/les option de la ligne de commande
# --------------------------------------------------------------------------- #
function usage() {
  echo -e "$DESC"
  echo -e "Commande: ${VERT}$0 [-d cdrom | -o [flac|ogg] | -v | -h ]"
  echo -e "  ${BLEUFONCE}-d${NORM}: par défaut valorisé à /dev/sr0, fixe un autre lecteur"
  echo -e "  ${BLEUFONCE}-o${NORM}: Format des fichiers pistes en sortie; seul 'flac' est implémenté à date..."
  echo -e "  ${VERT}-v${NORM}: version du script"
  echo -e "  ${VERT}-h${NORM}: cet écran d'aide"
}
# --------------------------------------------------------------------------- #
# Valide la valeur du choix $1: numérique et inférieur à $2
# Il y a sûrement mieux à faire ?
# --------------------------------------------------------------------------- #
function is_num_valid() {
  local choix=$1
  local max=$2

  if [[ $choix = +([0-9]) ]]
  then
    if [[ $choix -le $max ]]
    then
      return 0
    else
      return 1
    fi
  else
    return 1
  fi
}
# --------------------------------------------------------------------------- #
# Interroge le CDDBServeur position $1 du tableau sur l'album présent
# sur le disque $2
# Formate et retourne le résultat sous la forme de chaines en 'x yyy zzzz..'
# 'x': indice du serveur (1 position) qui a répondu - 'yyy zzz..' etc
# Peut retourner un tableau de chaines...
# Faire de la variable résultat un tableau de chaines ?
# --------------------------------------------------------------------------- #
function recup_titres() {
  local ind=$1                   # Indice du server CDDB
  local device=$2                # le lecteur cd
  local url=${CDDBServeur[$ind]} # le serveur cddb
  local manip=""                 # comme son nom l'indique
  #local declare -a resultat      # le résultat est une liste de titres
 
  # données d'identification du CD concaténées avec '+' au lieu de ' ' pour la requette cddb
  cd_data=$(cd-discid "$DEVICE" | sed 's/ /+/g')
  # requette au serveur
  req_cddb="${url}/~cddb/cddb.cgi?cmd=cddb+query+${cd_data}&hello=user+hostname+cdparanoia+3&proto=3"
  # réponse du serveur
  rep_cddb=$(curl -s ${req_cddb})

  # Mise en forme / "nettoyage" du retour en fonction du code:
  # '200' match, titre unique
  # '210'/'211' plusieurs retours possibles, entête et liste terminée par '.'
  return_code=${rep_cddb:0:3}
  case $return_code in
    200)
      # une seule réponse au format <code retour> <genre> <cdid> <libellé album>
      # On veut faire <indice serveur> <genre> <cdid> <libellé album>
      # On vire code retour, on garde genre et idcd
      manip="$ind $(echo ${rep_cddb} | awk '{$1=""; print}')"
      #resultat=$(echo ${rep_cddb} | sed -e 's/AC\/DC/\ACDC/g')
      manip=$(echo ${manip} | sed 's|\/| - |g')
      #resultat=$(echo ${resultat} | awk '{$1=""; $2=""; $3=""; sub("  ", " "); print}')
      manip=$(echo ${manip} | sed s'/.$//')
      #manip=$(echo ${manip} | awk '{gsub(/^[ \t]+|[ \t]+$/,"")};1')
      manip=$(echo ${manip} | iconv --from-code=ISO-8859-1 --to-code=UTF-8)
      ;;
    211)
      # ne matche pas exactement...

      ;;
    *)
      # a faire... analyse et découpage en titre(s) candidats qui peuvent être plusieurs
      # Le cas par exemple avec le retour
      #  211 Found inexact matches, list follows (until terminating `.')
      #  folk 870b920a Andor Tréger (Cimbalom), Lajos Boross (Violin) and hist Gipsy Band / The Virtuosi of the Gipsy Musik
      #  .
      # à la question:
      # http://freedb.freac.org/~cddb/cddb.cgi?cmd=cddb+query+840b920a+10+150+13267+30840+50950+64112+82947+96557+111415+132995+166155+2964&hello=user+hostname+cdparanoia+3&proto=3
      manip="RAF"
      ;;
  esac
  echo ${manip}
}

# --------------------------------------------------------------------------- #
# Entrée
# --------------------------------------------------------------------------- #

# Gestion des options de la ligne de commande
while getopts d:o:vh option
do
  case $option in
    h)
      usage
      exit 0
      ;;
    v)
      version
      exit 0
      ;;
    d)
      DEVICE=${OPTARG}
      ;;
    o)
      FORMAT=${OPTARG}
      # RAF / RUF...
      ;;
    *)
      usage
      exit 1
      ;;
  esac
done

# --------------------------------------------------------------------------- #
# Rechercher des propositions de noms d'album (et par suite de dossier)
# pour chaque serveur identifié dans le tableau 'CDDBServeur'.
# --------------------------------------------------------------------------- #
echo -e "$DESC"
# On vérifie tout de suite qu'il y a un disque audio dedans
CDDA=$(cdparanoia -Q -d ${DEVICE} 2>&1 | grep -c 'audio only')
if [ "$CDDA" -ne 1 ]
then
  echo "Pas de CD Audio identifié dans le lecteur \"${DEVICE}\"... Sortie."
  exit 1
fi
echo -e "Disque Ok. \c"
echo -e "Analyse, recherche de l'album.\c"
# On parcours la liste des serveurs
for (( i=0; i<${#CDDBServeur[@]}; i++ ))
do
  rep_cddb=$(recup_titres $i ${DEVICE})
# echo -e "rep_cddb:\t*${rep_cddb}*"
# echo -e "IndServ:\t*$(echo ${rep_cddb} | awk '{ print $1}')*"
# echo -e "Genre:\t*$(echo ${rep_cddb} | awk '{ print $2}')*"
# echo -e "IdCD:\t*$(echo ${rep_cddb} | awk '{ print $3}')*"
# echo -e "Titre:\t*$(echo ${rep_cddb} | cut -d' ' --complement -s -f1,2,3)*"  
  IndServ+=("$(echo ${rep_cddb} | awk '{ print $1}')")
  Genre+=("$(echo ${rep_cddb} | awk '{ print $2}')")
  IdCD+=("$(echo ${rep_cddb} | awk '{ print $3}')")
  ListeTitres+=("$(echo ${rep_cddb} | cut -d' ' --complement -s -f1,2,3)")
  #echo
  echo -e ".\c"
done
echo

# --------------------------------------------------------------------------- #
# Présentation résultats des requettes aux serveurs & Choix utilisateur
# --------------------------------------------------------------------------- #
echo -e "\n\\e[1m${#ListeTitres[@]} titre(s) pour l'album, proposés par ${#CDDBServeur[@]} serveur(s) :${NORM}\n"
for (( i=0; i<${#ListeTitres[@]}; i++ ))
do
  num=$(($i + 1))
  # alterner les couleurs
  ((i%2)) && echo -e "\\e[44;96m$num.${ListeTitres[$i]}${NORM} \n  ${ITAL}Genre: ${Genre[$i]} - IdCD: ${IdCD[$i]} - (Serv: ${IndServ[$i]} - ${CDDBServeur[${IndServ[$i]}]})${NORM}" \
            || echo -e "\\e[106;94m$num.${ListeTitres[$i]}${NORM} \n  ${ITAL}Genre: ${Genre[$i]} - IdCD: ${IdCD[$i]} - (Serv: ${IndServ[$i]} - ${CDDBServeur[${IndServ[$i]}]})${NORM}"
done
while true
do
  echo -e "\n"
  read -r -p "==> Entrer votre choix ('0' pour abandonner): " choix
  is_num_valid $choix ${#ListeTitres[@]}
  num_valid=$?
  if [[ $num_valid == 0 ]]
  then
    if [[ $choix -eq 0 ]]
    then
      #echo "OK, see you!"
      exit 0
    else
      ALBUMNAME="${ListeTitres[$choix-1]}"
      break
    fi
  fi
  echo "Choix invalide. Recommencez..."
done

# --------------------------------------------------------------------------- #
# Confirmation du nom d'album + Riper le CD
# --------------------------------------------------------------------------- #
echo -e "\nVotre album sera nommé \\e[107;94m${ALBUMNAME}${NORM}, en tant que dossier dans le répertoire courant \"${CURPATH}\"."
read -r -p "==> Confirmez-vous ce choix ? [o/n]: " input
case $input in
    [oO][uU][iI]|[oO])
        echo -e "\nOui, on ripe....\c"  
        START_TIME=$(date +%s)
        mkdir -p "${ALBUMNAME}"
        (
            cd "${ALBUMNAME}" || exit
            cdparanoia -Z -S "$SPEED" 1- -w "${ALBUMNAME}.wav"
        )
        echo -e "OK, Rip terminé, stocké dans \\e[107;94m${CURPATH}/${ALBUMNAME}/${NORM}."
        ;;
    [nN][oO][nN]|[nN])
        echo -e "\nNon ? Alors ..."
        read -r -p "==> Veuillez choisir un nom d'album personnalisé (<ENTREE> pour abandonner): " ALBUMNAME
        if [[ -z "${ALBUMNAME}" ]]; then
            echo -e "Pas de saisie, on sort..."
            exit 1
        else    
          START_TIME=$(date +%s)
            mkdir -p "${ALBUMNAME}"
            (
                cd "${ALBUMNAME}" || exit
                cdparanoia -Z -S "$SPEED" 1- -w "${ALBUMNAME}.wav"
            )
            echo -e "OK, Rip terminé, stocké dans \\e[107;94m${CURPATH}/${ALBUMNAME}/${NORM}."
        fi
        ;;
    *)
        echo -e "Choix invalide, on sort..."
        exit 1
        ;;
esac

# --------------------------------------------------------------------------- #
# Récupération du fichier CDDB.
# Supression de la première et de la dernière ligne dans le CDDB
# Conversion en UTF-8 si necessaire.
# --------------------------------------------------------------------------- #
echo -e "\e[3;94m. Récupération et conversion du contenu du CD...${NORM}(IdCD: ${IdCD[$choix-1]} - Serveur CDDB: ${CDDBServeur[${IndServ[$choix-1]}]})"
DISCID=$(cd-discid "$DEVICE" 2>/dev/null) || exit 1
NAME_FILE=$(echo "${DISCID}" | awk '{print $1}')
CD=$(cddb-tool query "${CDDBServeur[${IndServ[$choix-1]}]}/~cddb/cddb.cgi" 1 "${MYUSER}" "${MYHOST}" "${DISCID}")
cddb-tool read "${CDDBServeur[${IndServ[$choix-1]}]}/~cddb/cddb.cgi" 3 "${MYUSER}" "${MYHOST}" \
          "$(echo "$CD" | head -1 | awk '{print $2 " " $3}')" > "${ALBUMNAME}/$NAME_FILE"
sed -i -e '$d' -e '1d' "${ALBUMNAME}/$NAME_FILE"

CODE=$( file -i "${ALBUMNAME}/$NAME_FILE" | sed 's/^.*charset=/charset=/')

if [[ "$CODE" == "charset=iso-8859-1" ]]
then
    echo -e "\e[3;94m.. Conversion du fichier CDDB en utf-8.${NORM}"
    iconv --from-code=ISO-8859-1 --to-code=UTF-8 "${ALBUMNAME}/$NAME_FILE" > "${ALBUMNAME}/CONV_$NAME_FILE"
    rm -f "${ALBUMNAME}/$NAME_FILE"
    mv "${ALBUMNAME}/CONV_$NAME_FILE" "${ALBUMNAME}/$NAME_FILE"
else
    echo -e "\e[3;94m.. Le fichier à le bon encodage.${NORM}"
fi

# --------------------------------------------------------------------------- #
# Fabrication fichier toc
# --------------------------------------------------------------------------- #
echo -e "\n\e[3;94m. Fabrication du fichier du contenu (toc)...${NORM}(IdCD: ${IdCD[$choix-1]} - Serveur CDDB: ${CDDBServeur[${IndServ[$choix-1]}]:7})"
(
    cd "${ALBUMNAME}" || exit
    # dans ${CDDBServeur[${IndServ[$choix-1]}]}, virer le http://... 7 en dur mais si demain httpS... A gérer...
    cdrdao read-toc --fast-toc --device "$DEVICE" --driver generic-mmc:0x20000 --paranoia-mode 0 \
            --with-cddb --cddb-servers ${CDDBServeur[${IndServ[$choix-1]}]:7}:/~cddb/cddb.cgi "${ALBUMNAME}.toc"
)

# --------------------------------------------------------------------------- #
# https://cryptii.com/pipes/text-octal
# https://pjb.com.au/comp/diacritics.html
# https://www.systutorials.com/docs/linux/man/7-iso_8859-15/
# --------------------------------------------------------------------------- #
sed -i -e 's/\\240/ /g' -e 's/\\300/À/g' -e 's/\\340/à/g' \
       -e 's/\\241/¡/g' -e 's/\\301/Á/g' -e 's/\\341/á/g' \
       -e 's/\\242/¢/g' -e 's/\\302/Â/g' -e 's/\\342/â/g' \
       -e 's/\\243/£/g' -e 's/\\303/Ã/g' -e 's/\\343/ã/g' \
       -e 's/\\244/¤/g' -e 's/\\304/Ä/g' -e 's/\\344/ä/g' \
       -e 's/\\245/¥/g' -e 's/\\305/Å/g' -e 's/\\345/å/g' \
       -e 's/\\246/¦/g' -e 's/\\306/Æ/g' -e 's/\\346/æ/g' \
       -e 's/\\247/§/g' -e 's/\\307/Ç/g' -e 's/\\347/ç/g' \
       -e 's/\\250/¨/g' -e 's/\\310/È/g' -e 's/\\350/è/g' \
       -e 's/\\251/©/g' -e 's/\\311/É/g' -e 's/\\351/é/g' \
       -e 's/\\252/ª/g' -e 's/\\312/Ê/g' -e 's/\\352/ê/g' \
       -e 's/\\253/«/g' -e 's/\\313/Ë/g' -e 's/\\353/ë/g' \
       -e 's/\\254/¬/g' -e 's/\\314/Ì/g' -e 's/\\354/ì/g' \
       -e 's/\\255/ /g' -e 's/\\315/Í/g' -e 's/\\355/í/g' \
       -e 's/\\256/®/g' -e 's/\\316/Î/g' -e 's/\\356/î/g' \
       -e 's/\\257/¯/g' -e 's/\\317/Ï/g' -e 's/\\357/ï/g' \
       -e 's/\\260/°/g' -e 's/\\320/Ð/g' -e 's/\\360/ð/g' \
       -e 's/\\261/±/g' -e 's/\\321/Ñ/g' -e 's/\\361/ñ/g' \
       -e 's/\\262/²/g' -e 's/\\322/Ò/g' -e 's/\\362/ò/g' \
       -e 's/\\263/³/g' -e 's/\\323/Ó/g' -e 's/\\363/ó/g' \
       -e 's/\\264/´/g' -e 's/\\324/Ô/g' -e 's/\\364/ô/g' \
       -e 's/\\265/µ/g' -e 's/\\325/Õ/g' -e 's/\\365/õ/g' \
       -e 's/\\266/¶/g' -e 's/\\326/Ö/g' -e 's/\\366/ö/g' \
       -e 's/\\267/·/g' -e 's/\\327/×/g' -e 's/\\367/÷/g' \
       -e 's/\\270/¸/g' -e 's/\\330/Ø/g' -e 's/\\370/ø/g' \
       -e 's/\\271/¹/g' -e 's/\\331/Ù/g' -e 's/\\371/ù/g' \
       -e 's/\\272/º/g' -e 's/\\332/Ú/g' -e 's/\\372/ú/g' \
       -e 's/\\273/»/g' -e 's/\\333/Û/g' -e 's/\\373/û/g' \
       -e 's/\\274/¼/g' -e 's/\\334/Ü/g' -e 's/\\374/ü/g' \
       -e 's/\\275/½/g' -e 's/\\335/Ý/g' -e 's/\\375/ý/g' \
       -e 's/\\276/¾/g' -e 's/\\336/Þ/g' -e 's/\\376/þ/g' \
       -e 's/\\277/¿/g' -e 's/\\337/ß/g' -e 's/\\377/ÿ/g' "${ALBUMNAME}/${ALBUMNAME}.toc"


## https://unix.stackexchange.com/questions/155331/sed-replace-a-character-in-a-matched-line-in-place
sed -i -e '/TITLE/s/\\"//g' "${ALBUMNAME}/${ALBUMNAME}.toc"

# --------------------------------------------------------------------------- #
# CRÉATION DU SCRIPT "toc2tag.pl"
# https://gist.github.com/diresi/a1a905546aa0136eaf7399c3ae4ffedd#file-toc2tag-pl
# --------------------------------------------------------------------------- #
echo -e "\e[3;94m. Outils pour tager et mise en oeuvre...${NORM}"
# On s'embête moins avec les ' et ; et mise en forme... avec cette méthode ;-)
var_toc2tag='#!/usr/bin/perl -w
# from: http://forums.slimdevices.com/showthread.php?12776-Using-linux-to-generate-a-FLAC-file-of-a-complete-CD&p=33237&viewfull=1#post33237

$GotAlbum=0;
$Tracknum=0;
#$IsVarious=0;
$Artist="";

while (<>)
{
  if (/\/\/ Track (\d*)/)
  {
    $Tracknum=$1;
    print "TRACKNUMBER[$Tracknum]=$Tracknum\n";
  }

  if (/TITLE "(.*)"/)
  {
    if (!$GotAlbum)
    {
      $GotAlbum=1;
      $Album=$1;
      $Album=~ s/\// - /;
      print "ALBUM=$Album\n";
    }
    else
    {
      print "TITLE[$Tracknum]=$1\n";
    }
  }

  if (/PERFORMER "(.*)"/)
  {
    if ($Tracknum==0)
    {
      $Artist=$1;
      $Artist=~ s/\// - /;
      print "ARTIST=$Artist\n";
    }
    else
    {
      if ($1 ne $Artist)
      {
        print "ARTIST[$Tracknum]=$1\n";
      }
    }
  }
}'


echo "$var_toc2tag" > "${ALBUMNAME}/toc2tag.pl"

# --------------------------------------------------------------------------- #
# Script perl excécutable et utilisation pour tager l'album
# --------------------------------------------------------------------------- #
chmod u+x "${ALBUMNAME}/toc2tag.pl"
awk '{print $0}' "${ALBUMNAME}/${ALBUMNAME}.toc" | "${ALBUMNAME}"/./toc2tag.pl > "${ALBUMNAME}/${ALBUMNAME}.tags"

## Cà sert à quoi ce fichier .cue ?
cueconvert -i toc -o cue "${ALBUMNAME}/${ALBUMNAME}.toc" "${ALBUMNAME}/${ALBUMNAME}.cue"

# --------------------------------------------------------------------------- #
# Supprimer toutes les lignes qui se trouvent entre PREGAP et TRACK
# Créer un INDEX 00 00:00:00 au dessus de PREGAP
# Remplacer le mot PREGAP par INDEX 01
# Supprimer tous les espaces entre les lignes ( c'est pas utile )
# --------------------------------------------------------------------------- #
sed -i -e '/PREGAP/,/TRACK/{//!d}' "${ALBUMNAME}/${ALBUMNAME}.cue"
sed -i -e '/^PREGAP.*/i INDEX 00 00:00:00' "${ALBUMNAME}/${ALBUMNAME}.cue"
sed -i -e 's/PREGAP/INDEX 01/g' "${ALBUMNAME}/${ALBUMNAME}.cue"
sed -i -e '/^[[:blank:]]*$/d' "${ALBUMNAME}/${ALBUMNAME}.cue"

# --------------------------------------------------------------------------- #
# Créer les pistes FLAC
# --------------------------------------------------------------------------- #
echo -e "\e[3;94m. Créer les pistes au format ${FORMAT}...${NORM}"
flac --cuesheet="${ALBUMNAME}/${ALBUMNAME}.cue" "${ALBUMNAME}/${ALBUMNAME}.wav"

# IMPORTER TAGS DANS LE FICHIER FLAC
metaflac --add-replay-gain --no-utf8-convert --import-tags-from="${ALBUMNAME}/${ALBUMNAME}.tags" "${ALBUMNAME}/${ALBUMNAME}.flac"

mkdir -p "${ALBUMNAME}/FLACS"
cuebreakpoints "${ALBUMNAME}/${ALBUMNAME}.cue" | shnsplit -d "${ALBUMNAME}/FLACS" "${ALBUMNAME}/${ALBUMNAME}.flac" -o "cust ext=flac flac -V --fast -o %f -"
# Changement: cf. https://superuser.com/questions/1243374/shntool-splits-wav-files-at-the-wrong-split-points
#shnsplit -f "${ALBUMNAME}/${ALBUMNAME}.cue" -o "${ALBUMNAME}/FLACS" "${ALBUMNAME}/${ALBUMNAME}.flac -s -o %f -" "${ALBUMNAME}/${ALBUMNAME}.wav"

# La distribution consitionne la commande: cuetag.[sh |]
arch=$(tail /etc/os-release | awk '/^ID=/ { print $0 }')
if  [ "$arch" = "ID=arch" ]
then
    #echo ""
    #echo -e "\e[3;94m. On est sous Archlinux, on utilise la commande cuetag.sh\033[m"
    cuetag.sh "${ALBUMNAME}/${ALBUMNAME}.cue" "${ALBUMNAME}/FLACS"/split-track*.flac
else
    #echo -e "\e[3;94m. On n'est pas sous Archlinux, on utilise la commande cuetag\033[m"
    cuetag "${ALBUMNAME}/${ALBUMNAME}.cue" "${ALBUMNAME}/FLACS"/split-track*.flac
fi

for i in "${ALBUMNAME}/FLACS"/split-track*
do
    title=$(metaflac --show-tag=TITLE "$i" | sed -e 's/TITLE=//' | sed -e 's/\//-/g')
    album=$(metaflac --show-tag=ALBUM "$i" | sed -e 's/ALBUM=//' | sed -e 's/\//-/g')
    artist=$(metaflac --show-tag=ARTIST "$i" | sed -e 's/ARTIST=//' | sed -e 's/\//-/g')
    track=$(metaflac --show-tag=TRACKNUMBER "$i" | sed -e 's/TRACKNUMBER=//' | sed -e 's/\//-/g')
    mv "$i" "${ALBUMNAME}/FLACS/$track - $title.flac"
    echo ""
    echo "Le fichier "$i" a bien été renommé avec son numéro, ainsi que son titre:"
    echo -e "\e[3;94m=> $track - $title.flac\033[m"
    echo ""
    sleep 1
done

# --------------------------------------------------------------------------- #
# CRéer un fichier "liste de lecture" M3U pour les pistes FLACS séparées
# --------------------------------------------------------------------------- #
(
    cd "${ALBUMNAME}/FLACS" || exit
    echo '#EXTM3U'
    for file in *.flac
    do
        echo '#EXTINF:0,'"$file"
        echo "$file"
    done
) >> "${ALBUMNAME}/FLACS/${ALBUMNAME}.m3u"

echo -e "\e[32mTemps total écoulé:\e[0m \e[3;6;94m$(date -ud "@$(($(date +%s) - START_TIME))" +%T)\e[0m  (HH:MM:SS)"

# --------------------------------------------------------------------------- #
# La pochette
# --------------------------------------------------------------------------- #
echo -e "
Ajout pochette..."
#PERFORMER=$(echo ${ALBUMNAME} |  awk -F' -' '{print $1}')
#SACAD_PERFORMER=\"${PERFORMER}\"
#ALBUM_TITLE=$(echo ${ALBUMNAME} |  awk -F'- ' '{print $2}')
#SACAD_ALBUM_TITLE=\"${ALBUM_TITLE}\"
#sacad "
$SACAD_PERFORMER" "$SACAD_ALBUM_TITLE"  500 "${ALBUMNAME}/AlbumArt.jpg"
SACAD_Artist=$(cat "${ALBUMNAME}/${ALBUMNAME}.tags" | grep ARTIST | cut -d'=' --complement -s -f1)
SACAD_Artist2=\"${SACAD_Artist}\"
SACAD_Album=$(cat "${ALBUMNAME}/${ALBUMNAME}.tags" | grep ALBUM | cut -d'=' --complement -s -f1)
SACAD_Album2=\"${SACAD_Album}\"
echo -e "
sacad \"$SACAD_Artist2\" \"$SACAD_Album2\" 500 \"${ALBUMNAME}/AlbumArt.jpg\""
sacad "
$SACAD_Artist2" "$SACAD_Album2" 500 "${ALBUMNAME}/AlbumArt.jpg"

Dernière modification par Cram28 (28-10-2020 00:01:41)


Travaille du chapeau: "Je sais que vous croyez comprendre ce que vous pensez que j'ai dit, mais je ne suis pas certain que vous réalisiez que ce que vous avez entendu n'est pas exactement ce que je voulais dire..."

Hors ligne

#32 28-10-2020 07:42:32

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.9.4-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : cdda2wav Wav + cue

Bonjour Cram28


Ça, c'est fort smile J'ai une solution .... Ouvres ta poubelle, mets ce cd-audio dedans ..... et referme celle-ci.  lol lol lol


Je voudrais vérifier un truc :

apt install asunder



Quelle info CDDB, il te propose. ( modifies le serveur, si ce n'ai déjà pas fait sur la version du dépôt). Il peut te proposer plusieurs choix dans son menu déroulant.

Hors ligne

#33 28-10-2020 18:52:29

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.9.4-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : cdda2wav Wav + cue

Bonsoir,

On peut virer cddb-tool (abcde) pour utiliser toc2cddb (cdrdao) wink
Peut-être que ça résoudra ton problème.


EDIT: yeeeeees, ça fonctionne !!!
cdrdao pour le toc
nettoyage des mauvais caractères
toc2cddb pour la génération en local du fichier cddb simplement d'après le fichier toc, et le tour est joué smile

Je butais sur un seul Cd ou le fichier sur les serveurs était vide et qui maintenant est rempli à partir du TOC.

Résultat toc2cddb direct :


# xmcd
#
# Track frame offsets:
#
# 150
# 24605
# 49295
# 73430
# 94920
# 111307
# 127797
# 150217
# 168275
# 177880
# 191587
# 204767
# 244307
# 251535
# 269492
# 291470
#
# Disc length: 4202 seconds
#
# Revision: 0
# Submitted via: cdrdao-1.2.4
DISCID=e8106810
DTITLE=Hubert Felix Thiefaine / en concert a Bercy (CD2)
DYEAR=
DGENRE=
TTITLE0=La ballade d'abdallah geronimo cohen
TTITLE1=Les mouches bleues
TTITLE2=Un automne a tanger
TTITLE3=Dans quel etat terre
TTITLE4=Narcisse 81
TTITLE5=Les Dingues et les paumes
TTITLE6=Sweet amandinte phalloide queen
TTITLE7=Zone chaude, mome
TTITLE8=La cancoillotte
TTITLE9=La philosophie du chaos
TTITLE10=Les chaos de la philosophie
TTITLE11=Exercise de simple provocation avec 33 fois le mot coupable
TTITLE12=Talking
TTITLE13=Les adieux
TTITLE14=Lorelei sebasto cha
TTITLE15=La fille du coupeur de joints
EXTD=
EXTT0=
EXTT1=
EXTT2=
EXTT3=
EXTT4=
EXTT5=
EXTT6=
EXTT7=
EXTT8=
EXTT9=
EXTT10=
EXTT11=
EXTT12=
EXTT13=
EXTT14=
EXTT15=
PLAYORDER=
 



Mon script : ( on utilise donc que cdrdao pour chercher les infos sur les serveurs )


#!/bin/bash
## Programmes : cdparanoia cdrdao flac cuebreakpoints
#### http://freedb.dbpoweramp.com:80
#### --driver generic-mmc:0x20000 n'est pas nécessaire pour la génération seule du TOC
#### metaflac --export-tags-to=file.txt "FICHIER.flac"
START_TIME=$(date +%s)



CDDA=$(cdparanoia -Q 2>&1 | grep -c 'audio only')
if [ "$CDDA" -eq 1 ]; then
echo "CD Audio détecté."
echo ""
else
echo "Pas de CD Audio ... Terminé."
exit 0


   fi


DEVICE=/dev/sr0
SPEED=$(more /proc/sys/dev/cdrom/info | grep -E --color 'drive speed:' | awk '{print $3}')

#### Ici, pour avoir des propositions de noms de dossiers.
freac_name_folder=$(curl -s "http://freedb.freac.org/~cddb/cddb.cgi?cmd=cddb+query+$(cd-discid "$DEVICE" | sed 's/ /+/g')&hello=user+hostname+cdparanoia+3&proto=3" | \
            sed -e 's/AC\/DC/\ACDC/g' | sed 's/\// - /g'|awk '{$1=""; $2=""; $3=""; sub("  ", " "); print}'| sed s'/.$//' | \
            awk '{gsub(/^[ \t]+|[ \t]+$/,"")};1' | iconv --from-code=ISO-8859-1 --to-code=UTF-8)

gnudb_name_folder=$(curl -s "http://gnudb.gnudb.org/~cddb/cddb.cgi?cmd=cddb+query+$(cd-discid "$DEVICE" | sed 's/ /+/g')&hello=user+hostname+cdparanoia+3&proto=3" | \
            sed -e 's/AC\/DC/\ACDC/g' | sed 's/\// - /g'|awk '{$1=""; $2=""; $3=""; sub("  ", " "); print}'| sed s'/.$//' | \
            awk '{gsub(/^[ \t]+|[ \t]+$/,"")};1' | iconv --from-code=ISO-8859-1 --to-code=UTF-8)

dbpoweramp_name_folder=$(curl -s "http://freedb.dbpoweramp.com/~cddb/cddb.cgi?cmd=cddb+query+$(cd-discid "$DEVICE" | sed 's/ /+/g')&hello=user+hostname+cdparanoia+3&proto=3" | \
            sed -e 's/AC\/DC/\ACDC/g' | sed 's/\// - /g'|awk '{$1=""; $2=""; $3=""; sub("  ", " "); print}'| sed s'/.$//' | \
            awk '{gsub(/^[ \t]+|[ \t]+$/,"")};1' | iconv --from-code=ISO-8859-1 --to-code=UTF-8)




 while true; do
echo "Différents titres vous sont proposés:"
echo -e "\e[3;32m1. \033[m \e[3;94m$freac_name_folder\033[m ====> sur le site freac.org"
echo -e "\e[3;32m2. \033[m \e[3;94m$gnudb_name_folder\033[m ====> sur le site gnudb.org"
echo -e "\e[3;32m3. \033[m \e[3;94m$dbpoweramp_name_folder\033[m ====> sur le site dbpoweramp.com"
echo

echo -n "Entrer votre choix, 0 pour quitter: "
read -r choice
echo

case $choice in
     1)
ALBUMNAME="$freac_name_folder"
    break
     ;;
     2)
ALBUMNAME="$gnudb_name_folder"
    break
     ;;
     3)
ALBUMNAME="$dbpoweramp_name_folder"
    break
     ;;
    0)
    echo "OK, see you!"
    exit 1
    ;;
    *)
    echo "Invalid input..."
    echo "Quit"
    exit 1
    ;;
esac  
done



    echo -e "Le nom de l'album sera donc: \e[3;94m$ALBUMNAME\033[m"
read -r -p "Confirmé vous ce choix ? [Y/n] " input
case $input in
    [yY][eE][sS]|[yY])
 
    echo "Oui"  
    mkdir -p "$ALBUMNAME"
    ( cd "$ALBUMNAME" || exit
    cdparanoia -Z -S "$SPEED" 1- -w "$ALBUMNAME.wav")
    echo "OK, Rip terminé!"
  ;;
    [nN][oO]|[nN])
    echo -e "Non"
read -r -p "Alors, veuillez choisir un nom d'album personnalisé: " ALBUMNAME
if [[ -z "$ALBUMNAME" ]]; then
    echo "Invalid input..."
    echo "Quit"
     exit 1
else    
    mkdir -p "$ALBUMNAME"
    ( cd "$ALBUMNAME" || exit
    cdparanoia -Z -S "$SPEED" 1- -w "$ALBUMNAME.wav")
    echo "OK, Rip terminé!"
fi
  ;;
    *)
 echo "Invalid input..."
 echo "Quit"
 exit 1
 ;;
esac



#### http://freedb.freac.org
if  [[ "$choice" == "1" ]]; then
    ( cd "$ALBUMNAME" || exit
    cdrdao read-toc --fast-toc --device "$DEVICE" --driver generic-mmc:0x20000 --paranoia-mode 0 \
            --with-cddb --cddb-servers freedb.freac.org:/~cddb/cddb.cgi "$ALBUMNAME.toc")

fi


#### http://gnudb.gnudb.org
if  [[ "$choice" == "2" ]]; then
    ( cd "$ALBUMNAME" || exit
    cdrdao read-toc --fast-toc --device "$DEVICE" --driver generic-mmc:0x20000 --paranoia-mode 0 \
            --with-cddb --cddb-servers gnudb.gnudb.org:/~cddb/cddb.cgi "$ALBUMNAME.toc")

fi


#### http://freedb.dbpoweramp.com
if  [[ "$choice" == "3" ]]; then
    ( cd "$ALBUMNAME" || exit
    cdrdao read-toc --fast-toc --device "$DEVICE" --driver generic-mmc:0x20000 --paranoia-mode 0 \
            --with-cddb --cddb-servers freedb.dbpoweramp.com:/~cddb/cddb.cgi "$ALBUMNAME.toc")

fi

 
## https://cryptii.com/pipes/text-octal
## https://pjb.com.au/comp/diacritics.html
## https://www.systutorials.com/docs/linux/man/7-iso_8859-15/
sed -i -e 's/\\240/ /g' -e 's/\\300/À/g' -e 's/\\340/à/g' \
       -e 's/\\241/¡/g' -e 's/\\301/Á/g' -e 's/\\341/á/g' \
       -e 's/\\242/¢/g' -e 's/\\302/Â/g' -e 's/\\342/â/g' \
       -e 's/\\243/£/g' -e 's/\\303/Ã/g' -e 's/\\343/ã/g' \
       -e 's/\\244/¤/g' -e 's/\\304/Ä/g' -e 's/\\344/ä/g' \
       -e 's/\\245/¥/g' -e 's/\\305/Å/g' -e 's/\\345/å/g' \
       -e 's/\\246/¦/g' -e 's/\\306/Æ/g' -e 's/\\346/æ/g' \
       -e 's/\\247/§/g' -e 's/\\307/Ç/g' -e 's/\\347/ç/g' \
       -e 's/\\250/¨/g' -e 's/\\310/È/g' -e 's/\\350/è/g' \
       -e 's/\\251/©/g' -e 's/\\311/É/g' -e 's/\\351/é/g' \
       -e 's/\\252/ª/g' -e 's/\\312/Ê/g' -e 's/\\352/ê/g' \
       -e 's/\\253/«/g' -e 's/\\313/Ë/g' -e 's/\\353/ë/g' \
       -e 's/\\254/¬/g' -e 's/\\314/Ì/g' -e 's/\\354/ì/g' \
       -e 's/\\255/ /g' -e 's/\\315/Í/g' -e 's/\\355/í/g' \
       -e 's/\\256/®/g' -e 's/\\316/Î/g' -e 's/\\356/î/g' \
       -e 's/\\257/¯/g' -e 's/\\317/Ï/g' -e 's/\\357/ï/g' \
       -e 's/\\260/°/g' -e 's/\\320/Ð/g' -e 's/\\360/ð/g' \
       -e 's/\\261/±/g' -e 's/\\321/Ñ/g' -e 's/\\361/ñ/g' \
       -e 's/\\262/²/g' -e 's/\\322/Ò/g' -e 's/\\362/ò/g' \
       -e 's/\\263/³/g' -e 's/\\323/Ó/g' -e 's/\\363/ó/g' \
       -e 's/\\264/´/g' -e 's/\\324/Ô/g' -e 's/\\364/ô/g' \
       -e 's/\\265/µ/g' -e 's/\\325/Õ/g' -e 's/\\365/õ/g' \
       -e 's/\\266/¶/g' -e 's/\\326/Ö/g' -e 's/\\366/ö/g' \
       -e 's/\\267/·/g' -e 's/\\327/×/g' -e 's/\\367/÷/g' \
       -e 's/\\270/¸/g' -e 's/\\330/Ø/g' -e 's/\\370/ø/g' \
       -e 's/\\271/¹/g' -e 's/\\331/Ù/g' -e 's/\\371/ù/g' \
       -e 's/\\272/º/g' -e 's/\\332/Ú/g' -e 's/\\372/ú/g' \
       -e 's/\\273/»/g' -e 's/\\333/Û/g' -e 's/\\373/û/g' \
       -e 's/\\274/¼/g' -e 's/\\334/Ü/g' -e 's/\\374/ü/g' \
       -e 's/\\275/½/g' -e 's/\\335/Ý/g' -e 's/\\375/ý/g' \
       -e 's/\\276/¾/g' -e 's/\\336/Þ/g' -e 's/\\376/þ/g' \
       -e 's/\\277/¿/g' -e 's/\\337/ß/g' -e 's/\\377/ÿ/g' "$ALBUMNAME/$ALBUMNAME.toc"


## https://unix.stackexchange.com/questions/155331/sed-replace-a-character-in-a-matched-line-in-place
sed -i -e '/TITLE/s/\\"//g' "$ALBUMNAME/$ALBUMNAME.toc"


#### Création du fichier CDDB depuis le fichier toc avec l'utilitaire toc2cddb (cdrdao).
NAME_FILE=$(cd-discid "$DEVICE" 2>/dev/null | awk '{print $1}')
    toc2cddb "$ALBUMNAME/$ALBUMNAME.toc" > "$ALBUMNAME/$NAME_FILE"




#### Conversion en UTF-8 si necessaire du fichier cddb.
CODE=$( file -i "$ALBUMNAME/$NAME_FILE" | sed 's/^.*charset=/charset=/')

if [[ "$CODE" == "charset=iso-8859-1" ]]; then
    echo -e "\e[3;94mConversion du fichier CDDB en utf-8.\033[m"
iconv --from-code=ISO-8859-1 --to-code=UTF-8 "$ALBUMNAME/$NAME_FILE" > "$ALBUMNAME/CONV_$NAME_FILE"
rm -f "$ALBUMNAME/$NAME_FILE"
mv "$ALBUMNAME/CONV_$NAME_FILE" "$ALBUMNAME/$NAME_FILE"

else
    echo -e "\e[3;94mLe fichier à le bon encodage.\033[m"


fi



# CRÉATION DU SCRIPT "toc2tag.pl"
## https://gist.github.com/diresi/a1a905546aa0136eaf7399c3ae4ffedd#file-toc2tag-pl

{ echo "#!/usr/bin/perl -w" ;
echo '';  
echo '$GotAlbum=0;' ;
echo '$Tracknum=0;';
echo '#$IsVarious=0;';  
echo '$Artist="";';  
echo '';  
echo 'while (<>)';  
echo '{';  
echo 'if (/\/\/ Track (\d*)/)';  
echo '{';  
echo '$Tracknum=$1;';  
echo 'print "TRACKNUMBER[$Tracknum]=$Tracknum\n";';  
echo '}';  
echo '';  
echo 'if (/TITLE "(.*)"/)';  
echo '{';  
echo 'if (!$GotAlbum)';  
echo '{';  
echo '$GotAlbum=1;';  
echo '$Album=$1;';  
echo '$Album=~ s/\// - /;';  
echo 'print "ALBUM=$Album\n";';  
echo '}';  
echo 'else';  
echo '{';  
echo 'print "TITLE[$Tracknum]=$1\n";';  
echo '}';  
echo '}';  
echo '';  
echo 'if (/PERFORMER "(.*)"/)';  
echo '{';  
echo 'if ($Tracknum==0)';  
echo '{';  
echo '$Artist=$1;';  
echo '$Artist=~ s/\// - /;';  
echo 'print "ARTIST=$Artist\n";';  
echo '}';  
echo 'else';  
echo '{';  
echo 'if ($1 ne $Artist)';  
echo '{';
echo 'print "ARTIST[$Tracknum]=$1\n";';
echo '}';
echo '}';
echo '}';
echo '}';
} >> "$ALBUMNAME/toc2tag.pl"

chmod u+x "$ALBUMNAME/toc2tag.pl"


awk '{print $0}' "$ALBUMNAME/$ALBUMNAME.toc" | "$ALBUMNAME"/./toc2tag.pl > "$ALBUMNAME/$ALBUMNAME.tags"


cueconvert -i toc -o cue "$ALBUMNAME/$ALBUMNAME.toc" "$ALBUMNAME/$ALBUMNAME.cue"

#### Vivaldi.wav: ERROR parsing cuesheet "Vivaldi/Vivaldi.cue" on line 5: illegal INDEX offset (not of the form MM:SS:FF)
#### ====>>

#### TRACK 01 AUDIO
#### PREGAP 00:00:38
#### INDEX 00 00:00:-38
#### INDEX 01 00:00:00

#### Supprimer toutes les lignes qui se trouvent entre PREGAP et TRACK
#### Créer un INDEX 00 00:00:00 au dessus de PREGAP
#### Remplacer le mot PREGAP par INDEX 01
#### Supprimer tous les espaces entre les lignes ( c'est pas utile )

sed -i -e '/PREGAP/,/TRACK/{//!d}' "$ALBUMNAME/$ALBUMNAME.cue"
sed -i -e '/^PREGAP.*/i INDEX 00 00:00:00' "$ALBUMNAME/$ALBUMNAME.cue"
sed -i -e 's/PREGAP/INDEX 01/g' "$ALBUMNAME/$ALBUMNAME.cue"
sed -i -e '/^[[:blank:]]*$/d' "$ALBUMNAME/$ALBUMNAME.cue"


flac --cuesheet="$ALBUMNAME/$ALBUMNAME.cue" "$ALBUMNAME/$ALBUMNAME.wav"


# IMPORTER TAGS DANS LE FICHIER FLAC
     metaflac --add-replay-gain --no-utf8-convert \
         --import-tags-from="$ALBUMNAME/$ALBUMNAME.tags" "$ALBUMNAME/$ALBUMNAME.flac"


mkdir -p "$ALBUMNAME/FLACS"


cuebreakpoints "$ALBUMNAME/$ALBUMNAME.cue" | shnsplit -d "$ALBUMNAME/FLACS" "$ALBUMNAME/$ALBUMNAME.flac" -o "cust ext=flac flac -V --fast -o %f -"


 tail /etc/os-release | awk '/^ID=/ { print $0 }'
arch=$(tail /etc/os-release | awk '/^ID=/ { print $0 }')

if  [ "$arch" = "ID=arch" ]; then
echo ""
echo -e "\e[3;94mOn est sous Archlinux, on utilise la commande cuetag.sh\033[m"
cuetag.sh "$ALBUMNAME/$ALBUMNAME.cue" "$ALBUMNAME/FLACS"/split-track*.flac
else
echo -e "\e[3;94mOn n'est pas sous Archlinux, on essaie d'utiliser la commande cuetag.sh\033[m"
cuetag "$ALBUMNAME/$ALBUMNAME.cue" "$ALBUMNAME/FLACS"/split-track*.flac


fi


for i in "$ALBUMNAME/FLACS"/split-track*; do

    title=$(metaflac --show-tag=TITLE "$i" | sed -e 's/TITLE=//' | sed -e 's/\//-/g')
    album=$(metaflac --show-tag=ALBUM "$i" | sed -e 's/ALBUM=//' | sed -e 's/\//-/g')
    artist=$(metaflac --show-tag=ARTIST "$i" | sed -e 's/ARTIST=//' | sed -e 's/\//-/g')
        track=$(metaflac --show-tag=TRACKNUMBER "$i" | sed -e 's/TRACKNUMBER=//' | sed -e 's/\//-/g')
       

mv "$i" "$ALBUMNAME/FLACS/$track - $title.flac"
echo ""
echo "Le fichier "$i" a bien été renommé avec son numéro, ainsi que son titre:"
echo -e "\e[3;94m$track - $title.flac\033[m"
echo ""
sleep 1
done


## CRÉER UN FICHIER M3U POUR LES FLACS SÉPARÉS.
( cd "$ALBUMNAME/FLACS" || exit

  echo '#EXTM3U'
for file in *.flac; do
  echo '#EXTINF:0,'"$file"
  echo "$file"
done ) >> "$ALBUMNAME/FLACS/$ALBUMNAME.m3u"


echo -e "\e[32mTemps total écoulé:\e[0m \e[3;6;94m$(date -ud "@$(($(date +%s) - START_TIME))" +%T)\e[0m  (HH:MM:SS)"

Dernière modification par golgot200 (28-10-2020 20:43:45)

Hors ligne

#34 29-10-2020 08:07:06

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.9.4-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : cdda2wav Wav + cue

Bonjour,

Je pense que si on veut utiliser cueconvert et si on veut éviter de mettre des sed, grep etc à tout va pour corriger le fichier toc aux niveaux des ISRC invalid, SIZE_INFO incorrect etc, il est conseillé d'enlever l'option --fast-toc dans la commande cdrdao.

Une chose aussi, cueconvert n'aime pas dans le fichier toc, à la ligne message "un roman ..." les message trop long roll
(voir comment faire pour lui faire accepter ou autre méthode plus radicale)

Dernière modification par golgot200 (29-10-2020 08:15:22)

Hors ligne

#35 29-10-2020 23:14:38

Cram28
Membre
Lieu : Eure-et-Loir
Distrib. : Debian Buster
Noyau : Linux 4.19.0-12-amd64
(G)UI : Xfce
Inscription : 14-09-2020

Re : cdda2wav Wav + cue

Bonsoir,

Poubelle quand même pas  big_smile : il va  au final retourner dans son carton au grenier, d'autant qu'il est déjà ripé sur mon NAS en flac (je sais plus quel outil j'avais utilisé).

Peut-être bien Asunder qui s'en sort très bien on trouvant les titres et dont le serveur cddb configuré par défaut est : gnudb.gnudb.org / port 8880.

Mais dans ton dernier script cependant, le problème des codes ISRC demeure et apparaît justement avec cdrdao, donc çà ne règle pas le problème: cdrao échoue a trouver le bon disque, et du coup toc2cd aussi...:


$ ./rip_golgot_2020.10.28.sh
CD Audio détecté.

Différents titres vous sont proposés:
1.  Renan Luce - Le Clan Des Miros ====> sur le site freac.org
2.  Renan Luce - Le Clan Des Miros ====> sur le site gnudb.org
3.  Renan Luce - Le Clan Des Miros ====> sur le site dbpoweramp.com

Entrer votre choix, 0 pour quitter: 2

Le nom de l'album sera donc: Renan Luce - Le Clan Des Miros
Confirmé vous ce choix ? [Y/n] y
Oui
cdparanoia III release 10.2 (September 11, 2008)

 

Attempting to set speed to 48x...
Ripping from sector       0 (track  1 [0:00.00])
    to sector  190822 (track 12 [4:08.62])

outputting to Renan Luce - Le Clan Des Miros.wav

 (== PROGRESS == [                              | 190822 00 ] == :^D * ==)  

Done.


OK, Rip terminé!
Cdrdao version 1.2.4 - (C) Andreas Mueller <andreas@daneb.de>
/dev/sr0: ATAPI iHAS124   C Rev: LL06
Using driver: Generic SCSI-3/MMC - Version 2.0 (options 0x20000)

Reading toc data...

Track   Mode    Flags  Start                Length
------------------------------------------------------------
 1      AUDIO   0      00:00:00(     0)     03:31:36( 15861)
 2      AUDIO   0      03:31:36( 15861)     03:50:18( 17268)
 3      AUDIO   0      07:21:54( 33129)     03:25:64( 15439)
 4      AUDIO   0      10:47:43( 48568)     03:40:36( 16536)
 5      AUDIO   0      14:28:04( 65104)     02:59:02( 13427)
 6      AUDIO   0      17:27:06( 78531)     03:56:70( 17770)
 7      AUDIO   0      21:24:01( 96301)     03:29:64( 15739)
 8      AUDIO   0      24:53:65(112040)     02:49:55( 12730)
 9      AUDIO   0      27:43:45(124770)     02:18:37( 10387)
10      AUDIO   0      30:02:07(135157)     03:00:69( 13569)
11      AUDIO   0      33:03:01(148726)     05:12:34( 23434)
12      AUDIO   0      38:15:35(172160)     04:08:63( 18663)
Leadout AUDIO   0      42:24:23(190823)

PQ sub-channel reading (audio track) is supported, data format is BCD.
Raw P-W sub-channel reading (audio track) is supported.
Cooked R-W sub-channel reading (audio track) is supported.
Analyzing track 01 (AUDIO): start 00:00:00, length 03:31:36...
Found ISRC code.
Analyzing track 02 (AUDIO): start 03:31:36, length 03:50:18...
Found ISRC code.
Analyzing track 03 (AUDIO): start 07:21:54, length 03:25:64...
Found ISRC code.
Analyzing track 04 (AUDIO): start 10:47:43, length 03:40:36...
Found ISRC code.
Analyzing track 05 (AUDIO): start 14:28:04, length 02:59:02...
Found ISRC code.
Analyzing track 06 (AUDIO): start 17:27:06, length 03:56:70...
Found ISRC code.
Analyzing track 07 (AUDIO): start 21:24:01, length 03:29:64...
Found ISRC code.
Analyzing track 08 (AUDIO): start 24:53:65, length 02:49:55...
Found ISRC code.
Analyzing track 09 (AUDIO): start 27:43:45, length 02:18:37...
Found ISRC code.
Analyzing track 10 (AUDIO): start 30:02:07, length 03:00:69...
Found ISRC code.
Analyzing track 11 (AUDIO): start 33:03:01, length 05:12:34...
Found ISRC code.
Analyzing track 12 (AUDIO): start 38:15:35, length 04:08:63...
Found ISRC code.
Found disk catalogue number.
         
CDDB: Connecting to http://gnudb.gnudb.org:80/~cddb/cddb.cgi ...
CDDB: Ok.
Found following inexact match:

    DISKID   CATEGORY     TITLE

 1. b109f20c misc         Artiste inconnu / Album inconnu


Select match, 0 for none [0-1]?
0
No match selected.
Reading of toc data finished successfully.
Le fichier à le bon encodage.

flac 1.3.2
Copyright (C) 2000-2009  Josh Coalson, 2011-2016  Xiph.Org Foundation
flac comes with ABSOLUTELY NO WARRANTY.  This is free software, and you are
welcome to redistribute it under certain conditions.  Type `flac' for details.

Renan Luce - Le Clan Des Miros.wav: wrote 272305356 bytes, ratio=0,607
Splitting [Renan Luce - Le Clan Des Miros/Renan Luce - Le Clan Des Miros.flac] (42:24.23) --> [Renan Luce - Le Clan Des Miros/FLACS/split-track01.flac] (3:31.36) : 100% OK
Splitting [Renan Luce - Le Clan Des Miros/Renan Luce - Le Clan Des Miros.flac] (42:24.23) --> [Renan Luce - Le Clan Des Miros/FLACS/split-track02.flac] (3:50.18) : 100% OK
Splitting [Renan Luce - Le Clan Des Miros/Renan Luce - Le Clan Des Miros.flac] (42:24.23) --> [Renan Luce - Le Clan Des Miros/FLACS/split-track03.flac] (3:25.64) : 100% OK
Splitting [Renan Luce - Le Clan Des Miros/Renan Luce - Le Clan Des Miros.flac] (42:24.23) --> [Renan Luce - Le Clan Des Miros/FLACS/split-track04.flac] (3:40.36) : 100% OK
Splitting [Renan Luce - Le Clan Des Miros/Renan Luce - Le Clan Des Miros.flac] (42:24.23) --> [Renan Luce - Le Clan Des Miros/FLACS/split-track05.flac] (2:59.02) : 100% OK
Splitting [Renan Luce - Le Clan Des Miros/Renan Luce - Le Clan Des Miros.flac] (42:24.23) --> [Renan Luce - Le Clan Des Miros/FLACS/split-track06.flac] (3:56.70) : 100% OK
Splitting [Renan Luce - Le Clan Des Miros/Renan Luce - Le Clan Des Miros.flac] (42:24.23) --> [Renan Luce - Le Clan Des Miros/FLACS/split-track07.flac] (3:29.64) : 100% OK
Splitting [Renan Luce - Le Clan Des Miros/Renan Luce - Le Clan Des Miros.flac] (42:24.23) --> [Renan Luce - Le Clan Des Miros/FLACS/split-track08.flac] (2:49.55) : 100% OK
Splitting [Renan Luce - Le Clan Des Miros/Renan Luce - Le Clan Des Miros.flac] (42:24.23) --> [Renan Luce - Le Clan Des Miros/FLACS/split-track09.flac] (2:18.37) : 100% OK
Splitting [Renan Luce - Le Clan Des Miros/Renan Luce - Le Clan Des Miros.flac] (42:24.23) --> [Renan Luce - Le Clan Des Miros/FLACS/split-track10.flac] (3:00.69) : 100% OK
Splitting [Renan Luce - Le Clan Des Miros/Renan Luce - Le Clan Des Miros.flac] (42:24.23) --> [Renan Luce - Le Clan Des Miros/FLACS/split-track11.flac] (5:12.34) : 100% OK
Splitting [Renan Luce - Le Clan Des Miros/Renan Luce - Le Clan Des Miros.flac] (42:24.23) --> [Renan Luce - Le Clan Des Miros/FLACS/split-track12.flac] (4:08.63) : 100% OK
ID=debian
On n'est pas sous Archlinux, on essaie d'utiliser la commande cuetag.sh

Le fichier Renan Luce - Le Clan Des Miros/FLACS/split-track01.flac a bien été renommé avec son numéro, ainsi que son titre:
01 - .flac


Le fichier Renan Luce - Le Clan Des Miros/FLACS/split-track02.flac a bien été renommé avec son numéro, ainsi que son titre:
02 - .flac


Le fichier Renan Luce - Le Clan Des Miros/FLACS/split-track03.flac a bien été renommé avec son numéro, ainsi que son titre:
03 - .flac


Le fichier Renan Luce - Le Clan Des Miros/FLACS/split-track04.flac a bien été renommé avec son numéro, ainsi que son titre:
04 - .flac


Le fichier Renan Luce - Le Clan Des Miros/FLACS/split-track05.flac a bien été renommé avec son numéro, ainsi que son titre:
05 - .flac


Le fichier Renan Luce - Le Clan Des Miros/FLACS/split-track06.flac a bien été renommé avec son numéro, ainsi que son titre:
06 - .flac


Le fichier Renan Luce - Le Clan Des Miros/FLACS/split-track07.flac a bien été renommé avec son numéro, ainsi que son titre:
07 - .flac


Le fichier Renan Luce - Le Clan Des Miros/FLACS/split-track08.flac a bien été renommé avec son numéro, ainsi que son titre:
08 - .flac


Le fichier Renan Luce - Le Clan Des Miros/FLACS/split-track09.flac a bien été renommé avec son numéro, ainsi que son titre:
09 - .flac


Le fichier Renan Luce - Le Clan Des Miros/FLACS/split-track10.flac a bien été renommé avec son numéro, ainsi que son titre:
10 - .flac


Le fichier Renan Luce - Le Clan Des Miros/FLACS/split-track11.flac a bien été renommé avec son numéro, ainsi que son titre:
11 - .flac


Le fichier Renan Luce - Le Clan Des Miros/FLACS/split-track12.flac a bien été renommé avec son numéro, ainsi que son titre:
12 - .flac

Temps total écoulé: 00:31:43  (HH:MM:SS)
 



Comme cddb-tool trouve le bon contenu dans le fichier <IDCD>, y a-t-il une sorte de cddb2toc ... qui pourrait faire un .toc de ce contenu scratchhead.gif:

# xmcd
#
# Track frame offsets:
#     150
#     16011
#     33279
#     48718
#     65254
#     78681
#     96451
#     112190
#     124920
#     135307
#     148876
#     172310
#     202373
#
# Disc length: 3097
#
# Revision: 8
# Processed by: cddbd v1.5.2PL0 Copyright (c) Steve Scherf et al.
# Submitted via: fre:ac v1.0.27
#
DISCID=ca0c170d
DTITLE=Renan Luce / Le Clan Des Miros
TTITLE0=Le clan des miros
TTITLE1=La fille de la bande
TTITLE2=Les gens sont fous
TTITLE3=Nantes
TTITLE4=Rue de l'oiseau lyre
TTITLE5=Chez toi
TTITLE6=Ridicule
TTITLE7=Grand-père
TTITLE8=Grand-père II
TTITLE9=On n'est pas à une bêtise près
TTITLE10=Aux timides anonymes
TTITLE11=Femme à lunettes
TTITLE12=Data Track
EXTD=
EXTT0=
EXTT1=
EXTT2=
EXTT3=
EXTT4=
EXTT5=
EXTT6=
EXTT7=
EXTT8=
EXTT9=
EXTT10=
EXTT11=
EXTT12=
PLAYORDER=
 



@+


Travaille du chapeau: "Je sais que vous croyez comprendre ce que vous pensez que j'ai dit, mais je ne suis pas certain que vous réalisiez que ce que vous avez entendu n'est pas exactement ce que je voulais dire..."

Hors ligne

#36 30-10-2020 07:13:07

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.9.4-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : cdda2wav Wav + cue

Bonjour Cram28

Enlève --fast-toc

Donnes-moi le retour de cette commande :


DEVICE=/dev/sr0
    cdrdao read-toc --device "$DEVICE" --driver generic-mmc:0x20000 --paranoia-mode 0 \
            --with-cddb --cddb-servers gnudb.gnudb.org:/~cddb/cddb.cgi "OUTPUT.toc"
 

Hors ligne

#37 30-10-2020 08:22:31

Cram28
Membre
Lieu : Eure-et-Loir
Distrib. : Debian Buster
Noyau : Linux 4.19.0-12-amd64
(G)UI : Xfce
Inscription : 14-09-2020

Re : cdda2wav Wav + cue

Bonjour !
(ouff... c'est pas "mon heure" çà... wink )

Même chose... enfin il me semble que non: Y a des 'sub-channels with CRC errors'

$ cdrdao read-toc --device "$DEVICE" --driver generic-mmc:0x20000 --paranoia-mode 0 --with-cddb --cddb-servers gnudb.gnudb.org:/~cddb/cddb.cgi "OUTPUT.toc"
Cdrdao version 1.2.4 - (C) Andreas Mueller <andreas@daneb.de>
/dev/sr0: ATAPI iHAS124   C Rev: LL06
Using driver: Generic SCSI-3/MMC - Version 2.0 (options 0x20000)

Reading toc data...

Track   Mode    Flags  Start                Length
------------------------------------------------------------
 1      AUDIO   0      00:00:00(     0)     03:31:36( 15861)
 2      AUDIO   0      03:31:36( 15861)     03:50:18( 17268)
 3      AUDIO   0      07:21:54( 33129)     03:25:64( 15439)
 4      AUDIO   0      10:47:43( 48568)     03:40:36( 16536)
 5      AUDIO   0      14:28:04( 65104)     02:59:02( 13427)
 6      AUDIO   0      17:27:06( 78531)     03:56:70( 17770)
 7      AUDIO   0      21:24:01( 96301)     03:29:64( 15739)
 8      AUDIO   0      24:53:65(112040)     02:49:55( 12730)
 9      AUDIO   0      27:43:45(124770)     02:18:37( 10387)
10      AUDIO   0      30:02:07(135157)     03:00:69( 13569)
11      AUDIO   0      33:03:01(148726)     05:12:34( 23434)
12      AUDIO   0      38:15:35(172160)     04:08:63( 18663)
Leadout AUDIO   0      42:24:23(190823)

PQ sub-channel reading (audio track) is supported, data format is BCD.
Raw P-W sub-channel reading (audio track) is supported.
Cooked R-W sub-channel reading (audio track) is supported.
Analyzing track 01 (AUDIO): start 00:00:00, length 03:31:36...
Found 954 Q sub-channels with CRC errors.
Found ISRC code.
Control nibbles of track match CD-TOC settings.
Analyzing track 02 (AUDIO): start 03:31:36, length 03:50:18...
Found 1342 Q sub-channels with CRC errors.
Found ISRC code.
Control nibbles of track match CD-TOC settings.
Analyzing track 03 (AUDIO): start 07:21:54, length 03:25:64...
Found 509 Q sub-channels with CRC errors.
Found ISRC code.
Control nibbles of track match CD-TOC settings.
Analyzing track 04 (AUDIO): start 10:47:43, length 03:40:36...
Found 165 Q sub-channels with CRC errors.
Found ISRC code.
Control nibbles of track match CD-TOC settings.
Analyzing track 05 (AUDIO): start 14:28:04, length 02:59:02...
Found 244 Q sub-channels with CRC errors.
Found ISRC code.
Control nibbles of track match CD-TOC settings.
Analyzing track 06 (AUDIO): start 17:27:06, length 03:56:70...
Found 372 Q sub-channels with CRC errors.
Found ISRC code.
Control nibbles of track match CD-TOC settings.
Analyzing track 07 (AUDIO): start 21:24:01, length 03:29:64...
Found 351 Q sub-channels with CRC errors.
Found ISRC code.
Control nibbles of track match CD-TOC settings.
Analyzing track 08 (AUDIO): start 24:53:65, length 02:49:55...
Found 167 Q sub-channels with CRC errors.
Found ISRC code.
Control nibbles of track match CD-TOC settings.
Analyzing track 09 (AUDIO): start 27:43:45, length 02:18:37...
Found 169 Q sub-channels with CRC errors.
Found ISRC code.
Control nibbles of track match CD-TOC settings.
Analyzing track 10 (AUDIO): start 30:02:07, length 03:00:69...
Found 133 Q sub-channels with CRC errors.
Found ISRC code.
Control nibbles of track match CD-TOC settings.
Analyzing track 11 (AUDIO): start 33:03:01, length 05:12:34...
Found pre-gap: 00:00:59
Found 318 Q sub-channels with CRC errors.
Found ISRC code.
Control nibbles of track match CD-TOC settings.
Analyzing track 12 (AUDIO): start 38:15:35, length 04:08:63...
Found 371 Q sub-channels with CRC errors.
Found ISRC code.
Control nibbles of track match CD-TOC settings.
Found disk catalogue number.
         
CDDB: Connecting to http://gnudb.gnudb.org:80/~cddb/cddb.cgi ...
CDDB: Ok.
Found following inexact match:

    DISKID   CATEGORY     TITLE

 1. b109f20c misc         Artiste inconnu / Album inconnu


Select match, 0 for none [0-1]?
0
No match selected.
Reading of toc data finished successfully.

 



Choix '0' car 1 disque inconnu...
Résultat OUTPUT.toc:

CD_DA

CATALOG "0600753200612"

// Track 1
TRACK AUDIO
NO COPY
NO PRE_EMPHASIS
TWO_CHANNEL_AUDIO
ISRC "FRUM70901122"
FILE "data.wav" 0 03:31:36


// Track 2
TRACK AUDIO
NO COPY
NO PRE_EMPHASIS
TWO_CHANNEL_AUDIO
ISRC "FRUM70900924"
FILE "data.wav" 03:31:36 03:50:18


// Track 3
TRACK AUDIO
NO COPY
NO PRE_EMPHASIS
TWO_CHANNEL_AUDIO
ISRC "FRUM70901123"
FILE "data.wav" 07:21:54 03:25:64


// Track 4
TRACK AUDIO
NO COPY
NO PRE_EMPHASIS
TWO_CHANNEL_AUDIO
ISRC "FRUM70901124"
FILE "data.wav" 10:47:43 03:40:36


// Track 5
TRACK AUDIO
NO COPY
NO PRE_EMPHASIS
TWO_CHANNEL_AUDIO
ISRC "FRUM70901127"
FILE "data.wav" 14:28:04 02:59:02


// Track 6
TRACK AUDIO
NO COPY
NO PRE_EMPHASIS
TWO_CHANNEL_AUDIO
ISRC "FRUM70901118"
FILE "data.wav" 17:27:06 03:56:70


// Track 7
TRACK AUDIO
NO COPY
NO PRE_EMPHASIS
TWO_CHANNEL_AUDIO
ISRC "FRUM70901126"
FILE "data.wav" 21:24:01 03:29:64


// Track 8
TRACK AUDIO
NO COPY
NO PRE_EMPHASIS
TWO_CHANNEL_AUDIO
ISRC "FRUM70901120"
FILE "data.wav" 24:53:65 02:49:55


// Track 9
TRACK AUDIO
NO COPY
NO PRE_EMPHASIS
TWO_CHANNEL_AUDIO
ISRC "FRUM70901121"
FILE "data.wav" 27:43:45 02:18:37


// Track 10
TRACK AUDIO
NO COPY
NO PRE_EMPHASIS
TWO_CHANNEL_AUDIO
ISRC "FRUM70901125"
FILE "data.wav" 30:02:07 03:00:10


// Track 11
TRACK AUDIO
NO COPY
NO PRE_EMPHASIS
TWO_CHANNEL_AUDIO
ISRC "FRUM70901117"
FILE "data.wav" 33:02:17 05:13:18
START 00:00:59


// Track 12
TRACK AUDIO
NO COPY
NO PRE_EMPHASIS
TWO_CHANNEL_AUDIO
ISRC "FRUM70901119"
FILE "data.wav" 38:15:35 04:08:63

 



Merci golgot200, bonne journée


Travaille du chapeau: "Je sais que vous croyez comprendre ce que vous pensez que j'ai dit, mais je ne suis pas certain que vous réalisiez que ce que vous avez entendu n'est pas exactement ce que je voulais dire..."

Hors ligne

#38 30-10-2020 18:56:08

golgot200
Membre
Distrib. : Archlinux 2018-02-03
Noyau : 5.9.4-arch1-1
(G)UI : Mate (Strict Minimum)
Inscription : 05-08-2007

Re : cdda2wav Wav + cue

Bonsoir,
C'est toujours bizarre ton truc hmm


Regardes le fichier toc que je me paie moi. Un vrai roman à la ligne 10 big_smile


CD_DA

CD_TEXT {
  LANGUAGE_MAP {
    0: 9
  }
  LANGUAGE 0 {
    TITLE "MK III - THE FINAL CONCERTS CD1"
    PERFORMER "DEEP PURPLE"
    MESSAGE "Mk III : The Final Concerts - Disc 1 of 2 \251 1996 Connoisseur Collection/Deep Purple (Overseas) Ltd.   Originally Recorded live in Graz, Austria on 4th April 1975 (tracks 1, 2, 8, 10 & 11) and Paris on 7th April 1975 (tracks 3-7 & 9)  Originally Released August 16, 1996 (UK) \"Archive Alive\" Originally Released May 20, 1997 (USA) Connoisseur Collection Originally Released June 30, 1998 (USA)  AMG EXPERT REVIEW:  Archive Alive is a double-disc set of previously unreleased live material from Deep Purple, including a complete concert from the group's peak period in the mid-'70s. In addition to the full concert, there's a selection of bonus tracks, and taken together, the set offers a good portrait of Deep Purple live on stage, making it a nice addition to the serious collector's library.  -- Stephen Thomas Erlewine   AMG EXPERT REVIEW:  If you were to declare \"Deep Purple is my favorite band,\" then a fitting immediate question would be \"What era/lineup?\" Unlike some bands that stick to the same lineup from the beginning to end of their careers, Purple are one of the few rock bands to retain their following despite numerous lineup shuffles over the years. One of the most drastic moves was jettisoning Ian Gillan and Roger Glover in favor of David Coverdale and Glenn Hughes -- a move (supposedly at the behest of Ritchie Blackmore) that was supposed to help expand the group musically. While Purple didincorporate more soul/R&B sounds on such subsequent releases as Burn and Stormbringer, it did not help elongate the shelf life ofthe lineup, as Blackmore himself was gone with the wind by early1975. As the title of 2004's The Final Concerts attests, this 11-track live set features selected performances from the final moments of Purple's Mk III lineup -- and as heard on such standouts as the title tracks from both Burn and Stormbringer, the lineup was still strong enough to blow the roof off any arena. But as with the majority of arena rock acts of the early to mid-'70s, Purple could turn into a woefully self-indulgent beast in concert: case in point, painfully long versions of such classics as \"Smoke onthe Water\" and \"Space Truckin'\" (the latter of which almost reaches 20 minutes), which feature way too much mind-numbingly meandering jams/solos that manage to sap the power of the succinct original versions. To their credit, though, Purple were certainly notthe only notable rock band at the time indulging in overboard live improv (just give Led Zeppelin's How the West Was Won a listen).  -- Greg Prato   Amazon.com Product Description Two disc set from Ritchie Blackmore's 1975 farewell tour & his final concert in Paris. All tracks are previously unreleased and are restored& remixed Sony Super Bit Mapped Masters. This is the full concert ('Made In Europe' only hadfive tracks), plus two very differenttakes of 'Mistreated' & 'You Fool No One' as bonus tracks. Also has authoritative sleevenotes & photos. 11 tracks total. Double jewel case. 1996 release on Connoisseur.   Half.com N/A  AMAZON.COM CUSTOMER REVIEW (Archive Alive Edition) Full of interest for the fan and collector alike., June 14, 1999  By A Customer  1972 there was Made in Japan (Mk 2) and 1976 there was the release of Made in Europe (Mk. 3 feat. David Coverdale (Whitesnake) and Glenn Hughes (ex. Trapeze and Black Sabbath). The latter consisted of songs recorded in early 1975 in Saarbruecken, Paris and Graz. These were Ritchie Blackmores final concerts before the foundation of Rainbow and his departure from Deep Purple. This CD herefeature a complete gig compiled of unissued material from Paris and Graz. There are also two bonus tracks and a Mk 3 version of Going Down as well as the first ever live version of Gypsy. Released originally 1996 in Europe as \"Mk 3: The final concerts\" (Connoisseur) this double set is a useful souvenir of some great Mk 3 playing and sound-wise a lot better than California Jamming/Live at the California Jam. As a bonus, it contains three songs from the Stormbringer album. Full of powerful and virtuoso playing the set is driven forward by the whole band towards the guitar splintering climax. Not the most vital Deep Purple recordings ever but certainly full of interest for the fan and collector alike. Recommended.    AMAZON.COM CUSTOMER REVIEW (Archive Alive Edition) Sloppy, Uninspired and somebody please turn Glen's mic off!, October 22, 1999  By A Customer  \"Burn\" and \"Stormbringer\" are my 2 favorite DP albums, but this cd is weak. Most of the problems lie in the vocal performance. Coverdale's cracking and Hughes' caterwalling make it almost unforgivable. The ending of Mistreated (both times) is so bad, it will make your teeth rattle. I give it 2 stars only because of the great guitar work by Blackmore. It's best to stick to the studio albums, if you like Blackmore's live playing check out Rainbow On Stage.....much better!!    AMAZON.COM CUSTOMER REVIEW (Connoisseur) At Last The 1975 Album, May 6, 2002  By A Customer  Back in 1975 after being told of Ritchie Blackmore's intention to leave the ranks of Deep Purple, and fearing that this would be the end of the band, Purple's managementdecided to cover their bases by recording the final shows on theSpring 1975 European tour with the intention of putting out a double live album in the event that the band folded.  Well they didn't....at least not for another year, by which time the tapes had been shelved. When the band finally dissolved in 1976, the management leapt on this opportunity and released what turned out tobe the first in a very long line of Deep Purple exploitation albums. Don't get me wrong, \"Made In Europe\" was OK, if you ignore the fact that the applause was a tape loop, the songs were hacked together from the best bits of each version recorded on the tour,and the label of the original LP had a picture of Tommy Bolin. Talk about crass!!  But there are people out there who love DeepPurple, and this is one of the many results. With this release the feeling of a \"real\" concert has been restored, the running order has been reinstated, and we get to hear the Mark III line-up run through some great songs.  Ignore some of the editorial on this album. \"Stormbringer\" was issued on \"Made In Europe\" along with \"Burn\", \"Mistreated\", \"Lady Double Dealer\", and \"You Fool No One\". It is the tracks they didn't bother with the first time around that hold some of the surprises. The inclusion of \"Gypsy\" is something of a surprise, coming as it does from the album which forced Blackmore to reconsider his position, and one which he described as cr*p!   What is nice about CDs is the ability to include alternate versions. OK, in many cases they don't bring anythingnew, but at least it gives an idea of what went on at different shows, and if you don't like one version you can program an alternative.  Some of the reviews from the time said that Blackmore was preoccupied with his own project during this tour, but it is hard to figure out where this new material was sneaked in. \"Burn\"blasts the show open as it always did, and the medley of \"Going Down/Highway Star\" brings the show to a high-octane ending.  All in all, this makes a much better souvenir of the final 1975 shows than \"Made In Europe\" although after all these years it would be nice to play the two albums back-to-back to hear the differences. Maybe it is time that the fans had more input into the posthumous releases of their favorite bands.  Does this album rate 5 stars? To this listener, yes it does...but you be the judge.    AMAZON.COM CUSTOMER REVIEW (Connoisseur) Glenn Hughes \"attempt at singing\" ruins this one for me, August 24, 2005  By  Dominick\"DJD\" (Contoocook, NH)  Glenn Hughes' voice was obviously shotby this final leg of the tour, so instead of maybe just shuttinghis mouth or taking it easy, he still \"tries\" to sing. But it must hurt with the vocal chords being that worn out. So he instead howls and shouts and does a good job of mucking up most of the vocal sections he shares with Coverdale. Most notably ruined; Stormbringer & Burn.   Great live set otherwise, especially when they do songs where Glenn's vocals are not necessary. It is reasonably priced for a 2CD set, but look for a used copy first if this sub-par vocal performace has you feeling wary.    -- RELATED INFO ------------------------------------------------------------------------------------------------ from Wikipedia.com  HISTORY MK III: The Final Concerts, alternatively entitled Archive Alive, is a live album released by Deep Purple, recorded during the band's 1975 European tour in support of Stormbringer. It was released in 1996.  This double CD release is culled from the very last performances from Deep Purple MK III featuring Ritchie Blackmore before he left to launch his new band Rainbow with singer Ronnie James Dio. The album features for the most part material from the last concert of the tour held at the Palais des Sports in Paris on April 7, 1975, with a few tracks taken from two shows in Graz, Austria, April 3 and 4.  At the time of the taping of the shows, the rest of the band was unaware of Blackmore's decision to leave the band by tour's end. Managers decided to tape the last 4shows (Paris, Graz and Saarbrucken) in order to have some product available for release in the event of the band splitting up.  After the end of the tour, and facing the prospect of the end ofthe band, Jon Lord mentioned to the press the upcoming release of a double live set consisting of performances from the last European tour. However, as the band decided to carry on, the plans for the release were scrapped.  In 1976, after the definitive breakup of the band, the single disc Made in Europe live album was released, using some of the material previously mentioned by Lord (from the Saarbrucken show), but apparently none of the material included on this release. Made in Europe was met with mixed reactions, as some argued that it failed to capture the energy that the band displayed live. Additionally, some resented what they feltwas a healthy amount of studio editing.  Blackmore's lack of enthusiasm, as well as band tension onstage, are fairly evident onsome of the tracks: Blackmore unexpectedly loses his way on the intro for \"Mistreated\" and he seems totally surprised by Lord's solo on \"Lady Double Dealer\" (the studio version of this song lacks a keyboard solo).  The alternate takes of \"Mistreated\" and \"You Fool No One\" on disc two are from the Graz shows, and althoughthe liner notes mention \"technical problems\" on the Paris tapes as the justification for their inclusion, it is more likely that their inclusion has more to do with mistakes by the band.  Strangely, the alternate take of \"You Fool No One\" lacks Ian Paice's trademark drum solo, even after being announced by David Coverdale.  During the intro jam for \"You Fool No One\" Blackmore playedriffs which he would later use on the songs \"Still I'm Sad\" and \"Man On The Silver Mountain\" from Rainbow's first LP Ritchie Blackmore's Rainbow, which was already recorded only weeks before these shows.   -- RELATED INFO ------------------------------------------------------------------------------------------------ from All-Reviews.com  Review by Keith \"MuzikMan\" Hannaleck  Just when you think you have heard all of the live Deep Purple albums and another surfaces. Don't you love it? Well I suppose you would if you were a big fan like I was. \"MKIII The Final Concerts\" was originally titled \"Live In Europe.\" Its actually different recordings from that same timeframe, but its also the last three days of concerts with Ritchie Blackmore before he left the group. This group has been around for so long and have had so many incarnations, it isn't real hard to imagine that they would have a hugearchive of studio and live tapes hanging around just waiting to grabbed from the shelves to be remastered and remarketed to theiradoring faithful. It works for me. I am not the only one that gobbles up this stuff, there are many more out there just like me. I happen to really enjoy this version of Deep Purple with David Coverdale (vocals) and Glen Hughes (bass, vocals). They gave the band a good shot of soul and funk. This however was not to Mr. Blackmore's (the original guitar player and founding member) liking,he thought that most of the music they made during that time wasgarbage. It seems Blackmore thought the albums 'Burn' and 'Stormbringer' were too funky for his taste. He would rather be playingpretty music, or hard rock. Well that was taken care of shortly after this concert was recorded. Blackmore took off on a nine year venture with his new group Rainbow, which by the way is a groupI really liked, especially the first two albums.   The versionof 'Smoke On The Water' on this two-disc set was hard to swallow. The music was terrific as usual, but it just didn't sound rightwith Coverdale singing it, Ian Gillan was sorely missed on that tune. However, that is the only song on this entire set were I feel the pre MKIII lineup could have been more appreciated. Everything from 'Burn' and 'Stormbringer' offered excellent live funky and soulful versions thanks to Coverdale and Hughes playing off ofeach other so well. Hughes seemed to really get in a good groovewhen Coverdale was on lead vocals, although you can hear how hisbass becomes less innovative when he is singing lead. That seemslike it would be a perfectly natural transition, there are very few bass players that can do both at the same time exceptionally well. 'Space Truckin' is an immensely long song (19:56), and a very interesting one at that. Even though this was a pre MKIII tune, the new members don't bat an eyelash and they make it their own. A lot of improvising is done by each member on their instruments, proving that it didn't matter what state of mind that band wasin or who was in the lineup, they still were one of the greatestlive rock shows on the earth. 'Going Down/Highway Star' turns into a medley of sorts, and it rocks with plenty of great guitar licks from Blackmore and some outstanding bass playing by Hughes. The shining moment for Blackmore is the red-hot closer 'You Fool No One.' Ritchie's guitar playing is breathtaking, and the band sounded like they had reached their peak as a live unit. This seemslike a fitting end, and the song is placed perfectly in order ironically. Maybe Ritchie was fooling no one and everyone did know that he was on the way out. None of that really matters anymore. This is a great live Deep Purple album and should waste no time in getting it.    -- RELATED INFO ------------------------------------------------------------------------------------------------ from JohnMcFerrinMusicReviews.org  Mk III - The Final Concerts - 1996 Connoisseur Rating: 7 (10)   You know, there comes a point where buying as many of a band's albums as you can leavesthe realm of completism and just becomes masochism. Seeing as I'm not a fan of Mk3 to begin with, and I already had a live album of this incarnation (taken from the same shows no less, though the renditions here are not the same as the renditions there), I cannot begin to understand what exactly it was that caused me to buy this (NEW, no less).  Fortunately, it's no worse than Made inEurope, and even better in some ways. The first version of Mistreated is absolutely astounding, as Ritchie slowly works into the introduction and then just WAILS that slow, emotional guitar line(missing some notes, but to good effect) in a way that outdoes just about every other power-metal ballad that would be made afterwards. Plus, David continues to prove that there is one song in the world that justifies his existence; I could do without the parts where David is basically whaling solo, but they could be worse, and everything else in the performance is just dandy.  Elsewhere, the other songs that also had renditions on Europe work justas well here as there (heck, I'd say Lady Double Dealer works better), and even Gypsy sounds better live than in the studio. Cometo think of it, the only significant problems (aside from that You Fool No One endless drum solo) on here come when the band decides to tackle Mk. 2 material. Smoke on the Water is really limp here (tasty introductory licks from Lazy aside), done too fast to preserve the intensity that was always its strongest point (not to mention that Dave and Glenn can't sound convincing when singinghere). Space Truckin', despite some twists in the jam that I appreciate (the quick quote of Child in Time especially), has some seriously ugly synth noises, not to mention that Dave isn't at allin tune when he's singing in the verses. And Highway Star, you may ask? \"She's got big fat tits, big fat tits and everything.\" Enough said, shut your mouth Dave.  Still, it all could be a lot worse. Throw in alternate versions of Mistreated (which rules, naturally) and You Fool No One (which doesn't really, but whatever), and this can honestly function as all the Mk. 3 Purple you need. Which more or less makes it worth having, I guess."
  }
}

// Track 1
TRACK AUDIO
NO COPY
NO PRE_EMPHASIS
TWO_CHANNEL_AUDIO
CD_TEXT {
  LANGUAGE 0 {
    TITLE "Burn (Live In Graz, Austria, Liebenauer Eishalle, April 1975)"
    PERFORMER "DEEP PURPLE"
    MESSAGE ""
  }
}
SILENCE 00:00:32
FILE "data.wav" 0 07:33:65
START 00:00:32


// Track 2
TRACK AUDIO
NO COPY
NO PRE_EMPHASIS
TWO_CHANNEL_AUDIO
CD_TEXT {
  LANGUAGE 0 {
    TITLE "Stormbringer (Live In Graz, Austria, Liebenauer Eishalle, April 1975)"
    PERFORMER "DEEP PURPLE"
    MESSAGE ""
  }
}
FILE "data.wav" 07:33:65 04:37:03


// Track 3
TRACK AUDIO
NO COPY
NO PRE_EMPHASIS
TWO_CHANNEL_AUDIO
CD_TEXT {
  LANGUAGE 0 {
    TITLE "Gypsy (Live In Paris, France, Palais Des Sports, 7 April 1975)"
    PERFORMER "DEEP PURPLE"
    MESSAGE ""
  }
}
FILE "data.wav" 12:10:68 05:39:07


// Track 4
TRACK AUDIO
NO COPY
NO PRE_EMPHASIS
TWO_CHANNEL_AUDIO
CD_TEXT {
  LANGUAGE 0 {
    TITLE "Lady Double Dealer (Live In Paris, France, Palais Des Sports,7 April 1975)"
    PERFORMER "DEEP PURPLE"
    MESSAGE ""
  }
}
FILE "data.wav" 17:50:00 03:53:38


// Track 5
TRACK AUDIO
NO COPY
NO PRE_EMPHASIS
TWO_CHANNEL_AUDIO
CD_TEXT {
  LANGUAGE 0 {
    TITLE "Mistreated (Live In Paris, France, Palais Des Sports, 7 April1975)"
    PERFORMER "DEEP PURPLE"
    MESSAGE ""
  }
}
FILE "data.wav" 21:43:38 12:38:42


// Track 6
TRACK AUDIO
NO COPY
NO PRE_EMPHASIS
TWO_CHANNEL_AUDIO
CD_TEXT {
  LANGUAGE 0 {
    TITLE "Smoke On The Water (Live In Paris, France, Palais Des Sports,7 April 1975)"
    PERFORMER "DEEP PURPLE"
    MESSAGE ""
  }
}
FILE "data.wav" 34:22:05 10:17:70


// Track 7
TRACK AUDIO
NO COPY
NO PRE_EMPHASIS
TWO_CHANNEL_AUDIO
CD_TEXT {
  LANGUAGE 0 {
    TITLE "You Fool No One (Live In Paris, France, Palais Des Sports, 7 April 1975)"
    PERFORMER "DEEP PURPLE"
    MESSAGE ""
  }
}
FILE "data.wav" 44:40:00 13:24:00

 



Je me suis fait un truc à ma façon qui corrige ce problème en mettant une limite à 100 caractères.


#### AVEC CUECONVERT ( voir si on peut améliorer )
#### Message is too long -- (Deep Purple Europe MK III Final concert)
message_is_too_long=$(awk '{print $0}' "$ALBUMNAME/$ALBUMNAME.toc" | awk '/MESSAGE/ && length($0) > 100' | wc -l)
line=$(grep -n MESSAGE "$ALBUMNAME/$ALBUMNAME.toc" | awk '/MESSAGE/ && length($0) > 100' | cut -d : -f1 | tr "\n" " ")


if [[ "$message_is_too_long" -gt 0 ]] ; then
echo "Message is too long in toc file..."
sleep 2
for i in $line; do
sed -i "${i}s/.*/    MESSAGE \"\"/" "$ALBUMNAME/$ALBUMNAME.toc"
echo "Supression du message à la ligne $i"
sleep 2
done
else
    echo "toc file is good ..."
sleep 2
fi
 




Message is too long in toc file...
Supression du message à la ligne 10
 

Dernière modification par golgot200 (30-10-2020 19:00:49)

Hors ligne

Pied de page des forums