Lancer simplement un CD audio (avec mpv ou pas)

Bonjour,
Impossible de lire un cd audio avec mpv:

$ mpv --cdrom-device=/dev/cdrom
mpv 0.32.0 Copyright © 2000-2020 mpv/MPlayer/mplayer2 projects
 built on UNKNOWN
ffmpeg library versions:
   libavutil       56.51.100
   libavcodec      58.91.100
   libavformat     58.45.100
   libswscale      5.7.100
   libavfilter     7.85.100
   libswresample   3.7.100
ffmpeg version: 4.3.6-0+deb11u1

Usage:   mpv [options] [url|path/]filename

Basic options:
 --start=<time>    seek to given (percent, seconds, or hh:mm:ss) position
 --no-audio        do not play sound
 --no-video        do not play video
 --fs              fullscreen playback
 --sub-file=<file> specify subtitle file to use
 --playlist=<file> specify playlist file

 --list-options    list all mpv options
 --h=<string>      print options which contain the given string in their name

Pour le lire avec VLC, je dois d’abord ouvrir VLC puis cliquer dans le menu «ouvrir un CD»
Pour y accéder, je dois aussi monter le CD avec l’icône CD du tableau de bord (sans trouver de montage avec la commande «mount»).

Bref, vous avez compris que je ne comprends pas grand chose…

J’aimerais trouver une solution pour que l’insertion d’un CD audio permette une lecture sans avoir à passer par toutes ces étapes.

Il me semble que je faisais cela sans avoir à poser la question (je ne suis sous bullseye que depuis peu, je sais, suis en retard d’un train. C’est toute l’histoire de ma vie…)

(Bullseye / Mate)

Liste les protocoles disponibles pour ta version de MPV :

mpv  --list-protocols

Ensuite si tu as le bon bah un truc comme ça :

mpv cdda://[device] --cdrom-device=PATH

Sinon audacious qui est léger avec interface graphique :wink:

1 J'aime

merci Clochette,

mpv  --list-protocols

affiche bien cdda://

Mais que mettre comme «device» ?

ni dev/cdrom, ni cdrom ne conviennent (idem avec sr0):

mpv cdda://cdrom --cdrom-device=/dev/sr0
++ WARN: Can't get file status for cdrom:
No such file or directory
++ WARN: could not retrieve file info for `cdrom': No such file or directory
++ WARN: can't open nrg image file cdrom for reading
[cdda] Can't open CDDA device.
Failed to open cdda://cdrom.

(/dev/cdrom pointe sur /dev/sr0)

Même étape nécessaire qu’avec VLC: je dois passer par le menu «Service→Lire un CD», qui affiche le message:

Erreur en lisant cdda://sr0
Erreur de lecture des meta-données

Avant ce menu, le message est:

Erreur en lisant cdda://
Aucun fichier trouvé

Mais après avoir fermé la fenêtre d’erreur, il affiche une liste (Fichier1…) lisible

(PS. j’en déduit que la syntaxe de mpv devrait bien être: cdda://sr0 , mais que mpv comme audacious trouvent une erreur)

Je sais pas trop j’ai pas lancé un cd rom sur un ordinateur depuis des éons :smiley:

Regarde peut-re sur ce lien j’ai trouvé des info identiques à mes souvenirs dessus : Lecture CD audio

Merci Clochette, je regarderai ces pages avec intérêt.

Je me souviens aujourd’hui que, précédemment, à l’introduction d’un CD audio une fenêtre s’ouvrait automatiquement pour choisir l’application à utiliser.

Pour info:

la commande suivante démarre la lecture du CD, et stoppe aussitôt:

$mpv cdda:// --cdrom-device=/dev/cdrom

avec l’affichage suivant:

$time mpv cdda:// --cdrom-device=/dev/cdrom
[cdda] Switched to track 1
 (+) Audio --aid=1 (pcm_s16le 2ch 44100Hz)
AO: [pulse] 44100Hz stereo 2ch s16
A: 00:00:00 / 00:00:00 (78%) Cache: 0.0s

Exiting... (End of file)

real	0m8,330s
user	0m0,270s
sys	0m0,092s

Tu peux utiliser les commandes cd* (cdplay, cdpause…) du paquet cdtool.

Merci Nicola,
je me heurte à un problème équivalent:
le CD se lance, et rien ne se passe, cdplay rend la main au shell.

cdinfo -v affiche: no-status 0 0:21.45 0:19.45
(les valeurs changent à chaque montage ou démontage du CD)

Peut-être parce que la sortie du son du CD ne passe pas par les bons tuyaux (OSS3, ALSA, pipewire…)
Essaie avec strace, tu verras bien à la fin de la tonne de blabla ce qui merdule.

ce degré d’autopsie me dépasse. Mais j’obtiens du son une petite seconde avec mpv, et je peux lire avec VLC et les bons choix de menu, ce qui me laisse supposer que ça devrait pouvoir fonctionner autrement (il y a sûrement des tuyaux qui fonctionnent…).

strace mpv cdda:// --cdrom-device=/dev/cdrom

renvoie des égalités ésotériques, dont les dernières lignes suivante (après l’émission de 2 notes…):

...
munmap(0x7f0c6c000000, 67108864)        = 0
close(7)                                = 0
close(8)                                = 0
close(12)                               = 0
close(13)                               = 0
rt_sigaction(SIGCONT, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7f0c9d6e5140}, NULL, 8) = 0
rt_sigaction(SIGTSTP, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7f0c9d6e5140}, NULL, 8) = 0
rt_sigaction(SIGINT, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7f0c9d6e5140}, NULL, 8) = 0
rt_sigaction(SIGQUIT, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7f0c9d6e5140}, NULL, 8) = 0
rt_sigaction(SIGTERM, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7f0c9d6e5140}, NULL, 8) = 0
rt_sigaction(SIGTTIN, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7f0c9d6e5140}, NULL, 8) = 0
rt_sigaction(SIGTTOU, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7f0c9d6e5140}, NULL, 8) = 0
write(5, "\0", 1)                       = 1
munmap(0x7f0c8d0df000, 8392704)         = 0
close(4)                                = 0
close(5)                                = 0
ioctl(3, TCGETS, {B38400 opost isig -icanon -echo ...}) = 0
write(3, "\33>", 2)                     = 2
ioctl(3, TCGETS, {B38400 opost isig -icanon -echo ...}) = 0
ioctl(3, SNDCTL_TMR_START or TCSETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(3, TCGETS, {B38400 opost isig icanon echo ...}) = 0
close(3)                                = 0
futex(0x555ac921ed98, FUTEX_WAKE_PRIVATE, 2147483647) = 1
futex(0x555ac921ed48, FUTEX_WAKE_PRIVATE, 1) = 1
munmap(0x7f0c8e8e2000, 8392704)         = 0
getpid()                                = 1875010
munmap(0x7f0c9ed19000, 16384)           = 0
getpid()                                = 1875010
exit_group(0)                           = ?
+++ exited with 0 +++

essaie déjà avec un cd de données qui contient des mp3 pour voir

J’ai trouvé une solution simple:
nvlc cdda://
Il ne me reste plus qu’à trouver comment lancer cette cmmande à l’introduction du CD, mais un simple alias ou une icône sur le tableau de bord fera très bien l’affaire.