Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
NanoPi NEO2
#11
@Bz31

Merci pour ton retour je vais regarder ça sur mon Olimex car j'ai quelques soucis en ce moment et j'utilise ARMbian
Streamer : Windows Server 2019 & AO 3 & HQPlayer | Aurdirvana -> Diretta
Dac : PS Paul Hynes SR4 -> Chord 2Qute
Casque : Auris HA-2SF -> Focal Clear MG
Démat : Auris HA-2SF -> Atoll IN100 By JCT (Ampli) -> Harbeth LS3/5A 11 Ohms
Vinyle : Thorens TD 295 MK IV & Autio-Technica AT-150MLX




Répondre
#12
@bz31 

Si tu veux t'amuser à tester quelques configurations...

Cela peut t'intéresser de regarder ce site (lightmpd): https://sites.google.com/site/digififan/...nolightmpd

C'est en japonais mais la traduction automatique de Google marche très bien.

Ils utilisent buildroot également. Dans le menu à gauche il y a plusieurs pages intéressantes:
- leur configuration dans buildroot - https://sites.google.com/site/digififan/...ng-fang-fa
- une page qui explique plusieurs architectures réseau - https://sites.google.com/site/digififan/...bo/gai-yao

Ensuite il y a également ceci, ou ils se basent sur lightmpd mais utilisent deux cartes nanopi connectées via un câble RJ45 , l'une communiquant à l'autre le flux audio avec ncat:

http://community.phileweb.com/mypage/ent...104/58139/
ou ici
https://github.com/papalius/symphonic-mpd/wiki

Ex: 
- carte A est connectée avec la carte B via le port Rj45 
- la carte A est également connectée au LAN via un adaptateur Rj45 sur le port USB otg (je ne sais pas comment ça marche) 
- sur la carte A on installe MPD et on a un accès à un NAS sur le réseau local 
- sur la carte B on installe uniquement ALSA et ncat (package nmap) 
- dans les paramètres MPD de la carte A on définit un "output" de type "pipe" qui envois le flux audio vers la carte B
- sur la carte B un service lit le flux audio de la carte A et l'envois à Alsa via l'instruction aplay 

L'intérêt est que la carte connectée au DAC est très "light". Est-ce que cela fait une différence ? A toi de voir...

J'ai essayé (pas avec des nanopi) en utilisant une variante plus simple: 
- on active le loopback (snd-aloop) sur la carte A
- on lance sur la carte À l'instruction arecord qui va prendre la sortie du loopback et envoyer le flux vers la carte B
De cette manière on peut utiliser n'importe quel lecteur sur la carte A (mpd, Roon, squeezelite...).

J'ai utilisé pour A une carte Intel i3 sur laquelle j'ai rajouté un d'ongle WiFi. 
Il faut jouer avec les paramètres réseau pour que les deux cartes communiquent entre elles via les ports LAN (avec un cable reseau normal)

Ex, sur la carte A

iface eth0 inet static
address 10.0.0.2
netmask 255.255.255.0

gateway 10.0.0.3

sur la carte B

iface eth0 inet static
address 10.0.0.3
netmask 255.255.255.0

gateway 10.0.0.2

Sur la carte A, la config MPD contient:

audio_output {
type "pipe"
name "PIPE"
always_on "yes"
command "ncat 10.10.10.3 4444"
}


sur la carte B, on lance une instruction du type:

/usr/bin/ncat -kl 4444 -e "/usr/bin/aplay  -f cd"

Voila, il y a de quoi s'amuser.
Répondre
#13
Merci paulw. Je vais regarder de plus près.
La config deux cartes A-B est en fait un service de streaming local direct de A vers B. Intéressant comme idée.
Il y a aussi ce site pour musicien : https://github.com/MitchRatquest/nanopi_..._buildroot
Répondre
#14
Merci pour le lien.
En configuration avec deux cartes, tu peux simplement utiliser un dongle usb WiFi pour avoir deux ports réseau sur l'une des cartes.
Répondre
#15
OK. Merci. J'ai un mini dongle qui marche bien sous linux. Sinon j'ai aussi une carte Orange Pi Zero dont le support WiFi n'est pas encore top.
Il y a de quoi s'amuser pour un moment Smile

C'est bien un flux audo qui passe de A vers B ? Théoriquement pourquoi c'est utile ? As-tu une idée ?

Cet après midi, changement de programme  Smile  :
Carmen https://blog.culture31.com/2018/04/05/le...cigariere/
Répondre
#16
Bon spectacle !

J'ai refait rapidement la configuration (suis en train de l'écouter...), avec:
- carte NanoPi avec MPD (carte A)
- carte Allo USBridge en tant que "player" (carte B)

Pourquoi est-ce que ce serai meilleur ? Je ne sais pas si c'est meilleur, mais peut être que le "player" est plus leger, que la connection reseau est moins "bruitée", aucune idée... Il faut tester.

Nos confrères japonais trouvent cela meilleur, mais c'est peut être l'effet d'une hallucination collective (ce ne serai pas la première fois). Et puis surtout, meilleur que quoi ? Il n'y a que quelques comparaisons, et c'est difficile, sans maîtriser le japonais, de tout comprendre...

Voici ce que j'ai fait.
Sur la carte A

- dans /etc/network/interfaces

iface eth0 inet static
address 10.10.10.02
netmask 255.255.255.0
gateway 10.10.10.03

auto wlxc0562780420e
iface wlxc0562780420e inet static
      wpa-ssid "freebox_XSDFCR"
      wpa-psk 881a137aac2cbc78ef5c91a410c58e1030ceb3dc72bdb78177cf8c585f39de61
      address 192.168.0.12
      netmask 255.255.255.0
      gateway 192.168.0.254
      dns-nameservers 8.8.8.8 8.8.4.4

note: si je rajoute auto eth0, le demarrage plante. Il faut après le démarrage que je fasse "ifup eth0", qui d'ailleurs me donne un message d'erreur, mais qui lance quand même bien l'interface. Bizarre.

ensuite dans /etc/mpd.conf

audio_output {
        type            "pipe"
        name            "pipe"
        always_on "yes"
        command "ncat 10.10.10.03 4444"
        format          "44100:16:2"
}


Sur la carte B

- dans etc/network/interfaces

auto eth0
iface eth0 inet static
address 10.10.10.03
netmask 255.255.255.252
gateway 10.10.10.02

- je crée un service
dans /etc/systemd/system/streamfrom.service

[Unit]
Description=Recording Daemon

[Install]
WantedBy=multi-user.target

[Service]
Type=simple
PrivateTmp=true
ExecStart = /usr/bin/ncat -kl 4444 -e "/usr/bin/aplay -D plughw:UV --period-size=384 --buffer-size=21888 -f cd"

C'est tout !
Répondre
#17
J'ai parcouru le site lightmpd.

Il y a des choses intéressantes qui peuvent donner des idées. En particulier, cette page sur upnp avec l'usage de polipo
https://sites.google.com/site/digififan/...mpd-upnpgw
https://github.com/jech/polipo

L'installation de lightmpd m'intéresse moins. Je n'ai pas compris pourquoi ils se complique la vie en séparant l'installation en une image boot (vide de contenu) et un package lightmpd. Et je n'ai pas compris non plus pourquoi ils ne créent pas le uboot et kernel par Buildroot. Ça me parait beaucoup plus simple de laisser Buildroot tout faire pour créer un système complet.
Répondre
#18
Je n'ai pas bien compris l'usage de polipo - tu peux détailler ?
Répondre
#19
Concernant polipo, c'est lié au mode de fonctionnement de UPnP.
Upmpdcli transforme MPD en un player : https://www.lesbonscomptes.com/upmpdcli/
Et MPD cherche les fichiers sur le serveur distant avec le protocole HTTP.
polipo sur le player crée un cache local (dans RAM et/ou dans disque) pour ces fichiers.

Normalement Upmpdcli et MPD sont tous sur le player. Un peu comme ce que tu est entrain de tester le mode deux ordi A-B, il y a aussi l'idée de mettre upmpdcli sur le serveur ou un autre ordi pour alléger le player. Ainsi on ne met que MPD sur le player.
Répondre
#20
Merci pour les explications.
Un autre paramètre que je vois utilisé avec la commande aplay est l'instruction "-M" qui corresponds à l'utilisation de MMAP. Je ne trouve pas de documentation dessus. Tu connais le fonctionnement ?
Je ne l'utilisais pas, j'essaierai.
Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)