Aller au contenu

[Mpd] Installation De Music Player Daemon Sur Un Ds207+


2spirit

Messages recommandés

Bonjour à tous,

Jusqu'à maintenant j'utilisais le service AudioStation couplé à une carte son usb (Behringer UCA202) pour lire mes fichiers Flac sur mon ampli.

Cela fonctionne plutôt bien mais d'après ce que j'ai lu la qualité n'est pas optimale pour lire directement sur la carte son (je n'ai pas besoin de la fonction streaming) et la lecture des Flac avec AudioStation est assez gourmande en ressources sur le syno.

Je voulais donc essayer avec le service MPD pour voir...

Sauf que je n'arrive pas à faire reconnaître la carte son usb par MPD, qui pourtant doit bien être reconnue par le système vu qu'elle fonctionne correctement avec AudioStation.

Voici ce que j'ai fais jusqu'à maintenant :

- Installation avec MPD avec : ipkg install mpd

- Création des différents répertoires pour les logs, la database, etc...

- Création du fichier de conf mpd.conf avec comme configuration audio :


audio_output {

type "oss"

name "UCA202"

device "/dev/dsp"

auto_resample   "no"

mixer_type	  "disabled"

}

Je lance MPD avec : mpd -v /etc/mpd.conf :

config: loading file /etc/mpd.conf

listen: binding to any address

listen: binding to socket address [::]:6600

listen: binding to socket address 0.0.0.0:6600

path: path_set_fs_charset: fs charset is: UTF-8

database: reading DB

daemon: opening pid file

daemon: daemonized!

daemon: writing pid file

Et quand je lance le client ncmpc et que je veux jouer une chanson, l'état passe tout de suite en "paused" et voici ce que j'obtiens dans le log :

Dec 16 14:46 : output: Failed to open "UCA202" [oss]: Error opening OSS device "/dev/dsp": No such device or address

Pourtant, je lance pour l'instant le démon MPD en root. J'ai essayé avec différents devices (/dev/dsp4 par exemple) mais j'ai toujours le même résultât. Une idée du problème ? Voici le log complet :

Dec 16 14:38 : avahi: Initializing interface

Dec 16 14:38 : avahi: Failed to create client: Daemon not running

Dec 16 14:38 : avahi: Shutting down interface

Dec 16 14:38 : state_file: Saving state file

Dec 16 14:40 : avahi: Shutting down interface

Dec 16 14:40 : listen: listen_global_finish called

Dec 16 14:40 : db_finish took 0.000000 seconds

Dec 16 14:45 : avahi: Initializing interface

Dec 16 14:45 : avahi: Failed to create client: Daemon not running

Dec 16 14:45 : avahi: Shutting down interface

Dec 16 14:45 : state_file: Saving state file

Dec 16 14:45 : client: [0] opened from 127.0.0.1:2348

Dec 16 14:45 : client: [0] process command "status"

Dec 16 14:45 : Unable to open oss mixer "/dev/mixer"

Dec 16 14:45 : client: [0] command returned 0

Dec 16 14:45 : client: [0] process command "playlistinfo"

Dec 16 14:45 : client: [0] command returned 0

Dec 16 14:45 : client: [0] process command "idle"

Dec 16 14:45 : client: [0] command returned 1

Dec 16 14:45 : client: [0] process command "lsinfo """

Dec 16 14:45 : client: [0] command returned 0

Dec 16 14:45 : client: [0] process command "idle"

Dec 16 14:45 : client: [0] command returned 1

Dec 16 14:46 : client: [0] process command "addid "01_Highway_To_Hell.flac""

Dec 16 14:46 : add to playlist: 01_Highway_To_Hell.flac

Dec 16 14:46 : database: get song: 01_Highway_To_Hell.flac

Dec 16 14:46 : client: [0] command returned 0

Dec 16 14:46 : client: [0] process command "playid "0""

Dec 16 14:46 : playlist: play 0:"01_Highway_To_Hell.flac"

Dec 16 14:46 : decoder: audio_format=44100:16:2, seekable=true

Dec 16 14:46 : client: [0] command returned 0

Dec 16 14:46 : client: [0] process command "idle"

Dec 16 14:46 : client: [0] command returned 1

Dec 16 14:46 : client: [0] process command "status"

Dec 16 14:46 : client: [0] command returned 0

Dec 16 14:46 : client: [0] process command "playlistinfo"

Dec 16 14:46 : client: [0] command returned 0

Dec 16 14:46 : client: [0] process command "idle"

Dec 16 14:46 : client: [0] command returned 1

Dec 16 14:46 : output: Failed to open "UCA202" [oss]: Error opening OSS device "/dev/dsp": No such device or address

Dec 16 14:46 : player_thread: problems opening audio device while playing "01_Highway_To_Hell.flac"

Dec 16 14:46 : client: [0] process command "status"

Dec 16 14:46 : client: [0] command returned 0

Dec 16 14:46 : client: [0] process command "idle"

Dec 16 14:46 : client: [0] command returned 1

Dec 16 14:46 : client: [0] process command "playid "0""

Dec 16 14:46 : playlist: play 0:"01_Highway_To_Hell.flac"

Dec 16 14:46 : decoder: audio_format=44100:16:2, seekable=true

Dec 16 14:46 : client: [0] command returned 0

Dec 16 14:46 : client: [0] process command "idle"

Dec 16 14:46 : client: [0] command returned 1

Dec 16 14:46 : client: [0] process command "status"

Dec 16 14:46 : client: [0] command returned 0

Dec 16 14:46 : client: [0] process command "idle"

Dec 16 14:46 : client: [0] command returned 1

Dec 16 14:46 : output: Failed to open "UCA202" [oss]: Error opening OSS device "/dev/dsp": No such device or address

Dec 16 14:46 : player_thread: problems opening audio device while playing "01_Highway_To_Hell.flac"

Dec 16 14:46 : client: [0] process command "status"

Dec 16 14:46 : client: [0] command returned 0

Dec 16 14:46 : client: [0] process command "idle"

Dec 16 14:46 : client: [0] command returned 1

Dec 16 14:46 : client: [0] process command list

Dec 16 14:46 : command_process_list: process command "clear"

Dec 16 14:46 : playlist: stop

Dec 16 14:46 : command_process_list: command returned 0

Dec 16 14:46 : command_process_list: process command "status"

Dec 16 14:46 : command_process_list: command returned 0

Dec 16 14:46 : client: [0] process command list returned 0

Dec 16 14:46 : client: [0] process command "idle"

Dec 16 14:46 : client: [0] command returned 1

Dec 16 14:46 : client: [0] process command "status"

Dec 16 14:46 : client: [0] command returned 0

Dec 16 14:46 : client: [0] process command "idle"

Dec 16 14:46 : client: [0] command returned 1


Voici le résultât de la commande ls -al /dev/dsp*

crw-r--r--	1 root	 root	   14,   3 Mar 20  2007 /dev/dsp

crw-r--r--	1 root	 root	   14,  19 Aug 19  2010 /dev/dsp1

crw-r--r--	1 root	 root	   14,  35 Aug 19  2010 /dev/dsp2

crw-r--r--	1 root	 root	   14,  51 Aug 19  2010 /dev/dsp3

crw-r--r--	1 root	 root	   14,  67 Aug 19  2010 /dev/dsp4

crw-r--r--	1 root	 root	   14,  83 Aug 19  2010 /dev/dsp5

crw-r--r--	1 root	 root	   14,  99 Aug 19  2010 /dev/dsp6

crw-r--r--	1 root	 root	   14, 115 Aug 19  2010 /dev/dsp7

Et de dmesg | grep -i audio :

hiddev104: USB HID v1.00 Device [Burr-Brown from TI			   USB Audio CODEC ] on usb-ehci_platform.4523-1.2

Le fichier de conf temporaire complet:

music_directory				 "/volume1/music/ACDC_2003_Highway_To_Hell_\(Remastered\)/"

playlist_directory			  "/var/services/homes/mpd/playlists"

db_file						 "/var/services/homes/mpd/database"

log_file						"/var/services/homes/mpd/log"

pid_file						"/var/services/homes/mpd/pid"

state_file					  "/var/services/homes/mpd/state"

user							"root"

log_level					   "verbose"

audio_output {

type "oss"

name "UCA202"

device "/dev/dsp4" # optional

}

Mes sources : http://www.audiophil...lna-t21815.html Edit du 18-01-2012 : Config OK avec ce fichier de conf /etc/mpd.conf :

music_directory "/volume1/music/"

playlist_directory "/volume1/music/playlists"

db_file "/var/lib/mpd/database"

log_file "/var/log/mpd/log"

pid_file "/var/run/mpd/pid"

state_file "/var/run/mpd/state"

user "mpd"

bind_to_address "any"

port "6600"

#log_level "verbose"

zeroconf_enabled "no"

audio_output {

type "oss"

name "USB Audio CODEC"

device "/dev/dsp4"

auto_resample "no"

#mixer_type "disabled"

mixer_type "oss"

mixer_device "/dev/mixer4"

mixer_control "PCM"

}


Modifié par 2spirit
Lien vers le commentaire
Partager sur d’autres sites

J'ai du nouveau, quand le service AudioStation est coupé, le répertoire /proc/asound/ n'éxiste pas mais après son démarrage :

ls -la /proc/asound/ :


dr-xr-xr-x    5 root	 root			 0 Dec 16 16:51 .

dr-xr-xr-x   86 root	 root			 0 Jan  1  1970 ..

dr-xr-xr-x    4 root	 root			 0 Dec 16 16:51 card0

-r--r--r--    1 root	 root			 0 Dec 16 16:51 cards

lrwxrwxrwx    1 root	 root			 5 Dec 16 16:51 default -> card0

-r--r--r--    1 root	 root			 0 Dec 16 16:51 devices

-r--r--r--    1 root	 root			 0 Dec 16 16:51 hwdep

-r--r--r--    1 root	 root			 0 Dec 16 16:51 modules

dr-xr-xr-x    2 root	 root			 0 Dec 16 16:51 oss

-r--r--r--    1 root	 root			 0 Dec 16 16:51 pcm

dr-xr-xr-x    2 root	 root			 0 Dec 16 16:51 seq

-r--r--r--    1 root	 root			 0 Dec 16 16:51 syno_audio_volume

-r--r--r--    1 root	 root			 0 Dec 16 16:51 timers

-r--r--r--    1 root	 root			 0 Dec 16 16:51 version

Il doit activer certaines choses pour le son, reste à savoir les paramètres à appliquer avec MPD...

Ce répertoire est bien celui d'ALSA ?

Lien vers le commentaire
Partager sur d’autres sites

Le syno utilise OSS pour la gestion du son, une rapide recherche ma confirmer que MPD s'avait exploité l'OSS.

Le point de montage de ta carte son doit être qq chose du type /dev/dsp ou /dev/dsp1 .... 9, jamais utiliser pour la lecture mais pour l'enregistrement cela marche et le mic de ma webcam est monté en /dev/dsp4. Pour trouver le point de montage tu peux essayer directement mdp ou avec ffmpeg avec l'option "-f oss"

Lien vers le commentaire
Partager sur d’autres sites

J'ai déjà essayé avec /dev/dsp et /dev/dsp4 (par rapport à ce que j'ai lu sur les forums) mais cela ne fonctionne pas, je peux essayer avec les autres de 1 à 9 pour voir...

Pour trouver le point de montage, tu as un exemple de la ligne de commande avec ffmpeg ? il faut que je teste avec un MP3 alors ?

Lien vers le commentaire
Partager sur d’autres sites

Je viens de tester avec les /dev/dsp de 1 à 9 et à chaque fois j'obtiens ceci dans le fichier de log :


Dec 19 11:08 : state_file: Saving state file

Dec 19 11:08 : database: get song: 02_You_Know_I'm_No_Good.flac

Dec 19 11:08 : playlist: play 0:"02_You_Know_I'm_No_Good.flac"

Dec 19 11:08 : decoder: audio_format=44100:16:2, seekable=true

Dec 19 11:08 : client: [0] opened from 127.0.0.1:4900

Dec 19 11:08 : client: [0] process command "status"

Dec 19 11:08 : Unable to open oss mixer "/dev/mixer"

Dec 19 11:08 : client: [0] command returned 0

Dec 19 11:08 : client: [0] process command "playlistinfo"

Dec 19 11:08 : client: [0] command returned 0

Dec 19 11:08 : client: [0] process command "idle"

Dec 19 11:08 : client: [0] command returned 1

Dec 19 11:08 : client: [0] process command "playid "0""

Dec 19 11:08 : playlist: play 0:"02_You_Know_I'm_No_Good.flac"

Dec 19 11:08 : decoder: audio_format=44100:16:2, seekable=true

Dec 19 11:08 : client: [0] command returned 0

Dec 19 11:08 : client: [0] process command "idle"

Dec 19 11:08 : client: [0] command returned 1

Dec 19 11:08 : client: [0] process command "status"

Dec 19 11:08 : client: [0] command returned 0

Dec 19 11:08 : client: [0] process command "idle"

Dec 19 11:08 : client: [0] command returned 1

Dec 19 11:08 : output: Failed to open "USB Audio" [oss]: Error opening OSS device "/dev/dsp9": No such file or directory

Dec 19 11:08 : player_thread: problems opening audio device while playing "02_You_Know_I'm_No_Good.flac"

Dec 19 11:08 : client: [0] process command "status"

Dec 19 11:08 : client: [0] command returned 0

Dec 19 11:08 : client: [0] process command "idle"

Dec 19 11:08 : client: [0] command returned 1

Dec 19 11:08 : client: [0] closed

Voici le fichier de conf utilisé avec cette config :

music_directory				 "/volume1/music/test/"

playlist_directory			  "/volume1/music/playlists"

db_file						 "/var/lib/mpd/database"

log_file					    "/var/log/mpd/log"

pid_file					    "/var/run/mpd/pid"

state_file					  "/var/run/mpd/state"

user						    "root"

bind_to_address		 "any"

port						    "6600"

log_level					   "verbose"

zeroconf_enabled			    "no"

audio_output {

type "oss"

name "USB Audio"

device "/dev/dsp9"

#auto_resample   "no"

#mixer_type	  "disabled"

format "44100:16:2" # optional

}

Lien vers le commentaire
Partager sur d’autres sites

Je veux bien mais ça m'a l'air compliqué comme programme, j'ai l'impression que c'est plus dédié à la conversion de fichier...? :

http://www.jcartier.net/spip.php?article36

Si tu as la ligne de commande adéquate pour lire un fichier audio, flac, wav ou mp3 sur la sortie son.

Modifié par 2spirit
Lien vers le commentaire
Partager sur d’autres sites

Ca y est ! J'ai enfin réussi à paramétrer !

Merci à toi spar0, j'ai réussi à trouver le bon device avec l'outil ffmpeg, il s'agit de /dev/dsp4, (tout les autres indiquaient une erreur) :

ffmpeg -i fichier.flac -f oss /dev/dsp4

Par contre, j'avais déjà indiqué ce device dans ma conf MPD mais il y avait une autre erreur, il faut indiquer le bon nom de device également.

Dans mon cas, c'est "USB Audio CODEC"

Je donne le mpd.conf complet por ceux que cela intéresse :


music_directory "/volume1/music/"

playlist_directory "/volume1/music/playlists"

db_file "/var/lib/mpd/database"

log_file "/var/log/mpd/log"

pid_file "/var/run/mpd/pid"

state_file "/var/run/mpd/state"

user "root"

bind_to_address "any"

port "6600"

log_level "verbose"

zeroconf_enabled "no"

audio_output {

type "oss"

name "USB Audio CODEC"

device "/dev/dsp4"

auto_resample "no"

mixer_type "disabled"

}

Je précise que cette conf ne fonctionne qu'avec AudioStation de lancé pour l'instant, il doit charger les modules audio nécessaires, il faudrait que je les gères plus tard avec mes scripts de lancement auto.

Modifié par 2spirit
Lien vers le commentaire
Partager sur d’autres sites

D'après mes 1er tests, cette config respecte mieux la qualité qu'AudioStation comme indiqué sur le post : http://www.audiophil...lna-t21815.html

Les fichiers sont bien "bitperfect" quand ils sont en 16 bits par contre pour du 24 bit, il y a un ré-échantillonnage, exemple ici avec un Flac issu d'un rip d'un SACD :


Dec 19 17:19 : decoder: audio_format=88200:24:2, seekable=true

Dec 19 17:19 : output: opened plugin=oss name="USB Audio CODEC" audio_format=88200:16:2

Dec 19 17:19 : output: converting from 88200:24:2

Modifié par 2spirit
Lien vers le commentaire
Partager sur d’autres sites

Ca y est ! J'ai enfin réussi à paramétrer !

Merci à toi spar0, j'ai réussi à trouver le bon device avec l'outil ffmpeg, il s'agit de /dev/dsp4, (tout les autres indiquaient une erreur) :

ffmpeg -i fichier.flac -f oss /dev/dsp4

Par contre, j'avais déjà indiqué ce device dans ma conf MPD mais il y avait une autre erreur, il faut indiquer le bon nom de device également.

Dans mon cas, c'est "USB Audio CODEC"

Je donne le mpd.conf complet por ceux que cela intéresse :

...

Je précise que cette conf ne fonctionne qu'avec AudioStation de lancé pour l'instant, il doit charger les modules audio nécessaires, il faudrait que je les gères plus tard avec mes scripts de lancement auto.

Mais c'est toujours un plaisir de partager mes modestes compétences !!!!

Pour info, j'ai cross compilé le support ALSA pour Syno avec succès. Plus besoin de se faire chier à spécifier le device /dev/dspx biggrin.png

C'est ce que je vais utiliser pour mon SPK de reconaissance vocale.

Merci pour la contribution constructive Diaoul ... d'un autre coté en installant une distro linux standard sur un pc standard on ce ferait encore moins "chier"

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.