Messages : 4,256 
	Sujets : 82 
	Inscription : Mar 2019
	
 Type: Particulier
 Localisation: Côte d'Or
	 
 
	
		
		
		05-17-2022, 03:40 PM 
(Modification du message : 05-17-2022, 03:49 PM par zaurux.)
		
	 
	
		Mise en place de Squeezelite sur le ZenStream (Volumio).
Pour ceux qui utilise LMS ou Daphile et qui veulent utiliser le ZenStream comme une Squeezebox sans passer par une solution du type UPNP, il est possible d'installer squeezelite. 
Certes la version de la Debian Jessie mais parfaitement fonctionnelle (testée sous Roon et LMS - merci ds21).
 
Le ZenStream utilise des "modes exclusifs" qui ne lancent qu'un seul player à l'excusion des autres, pour éviter toute perturbation. 
Nous allons utiliser le mode HQPlayer (player = networkaudiod") pour lui substituer, squeezelite.     
Message classique : je décline toutes responsabilités et si vous testez, c'est en assumant pleinement ce choix... mais vous ne risquez rien. C'est du logiciel et dans le pire des cas, un reset usine vous ramène à l'OS livré avec le Zen.     
En route :
 
 - Accorder l'accès via SSH au Zenstream sous Volumio.
 
 
 
Sous mode "AIO", se connecter à l'interface web :  https://ifi.local/dev/
Et passer "ssh" à "enable" :
 https://volumio.github.io/docs/User_Manual/SSH.html
- Se connecter en ssh (par exemple avec Putty sous windows".
 
 
 
user : volumio / pass : volumio
 - Basculer en mode "naa" pour avoir comme player "networkaudiod" auquel on va substituer "squeezelite".
 
 
 
Faire un update de la base logicielle :
 Code : volumio@ifi:~$ apt-get update 
Ign http://ftp2.cn.debian.org jessie InRelease 
Hit http://ftp2.cn.debian.org jessie Release.gpg 
Hit http://ftp2.cn.debian.org jessie Release 
Hit http://ftp2.cn.debian.org jessie/main Sources 
Hit http://ftp2.cn.debian.org jessie/contrib Sources 
Hit http://ftp2.cn.debian.org jessie/non-free Sources 
Hit http://ftp2.cn.debian.org jessie/main armhf Packages 
Hit http://ftp2.cn.debian.org jessie/contrib armhf Packages 
Hit http://ftp2.cn.debian.org jessie/non-free armhf Packages 
Hit http://ftp2.cn.debian.org jessie/contrib Translation-en 
Hit http://ftp2.cn.debian.org jessie/main Translation-en 
Hit http://ftp2.cn.debian.org jessie/non-free Translation-en 
Reading package lists... Done
 
Si ça bloque, s'assurer que le Zen a bien accès au web !
 Code : volumio@ifi:~$ ping google.comPING google.com (216.58.206.238) 56(84) bytes of data.64 bytes from par10s34-in-f14.1e100.net (216.58.206.238): icmp_seq=1 ttl=119 time=14.2 ms64 bytes from par10s34-in-f14.1e100.net (216.58.206.238): icmp_seq=2 ttl=119 time=17.8 ms
  
Code : volumio@ifi:~$ apt-get install squeezelite
 - stopper networkaudiod (naa pour HQPlayer) :
 
 
 
Code : volumio@ifi:~$ systemctl stop networkaudiod 
volumio@ifi:~$ systemctl disable networkaudiod 
Removed symlink /etc/systemd/system/multi-user.target.wants/networkaudiod.service. 
volumio@ifi:~$ systemctl status networkaudiod 
● networkaudiod.service - Network Audio Adapter daemon 
 Loaded: loaded (/lib/systemd/system/networkaudiod.service; disabled) 
 Active: inactive (dead)
  
- Dac allumé, lancer squeezelite pour trouver la carte audio et mettre à jour le fichier de configuration.
 
 
 
Lister les cartes avec :
 Code : volumio@ifi:~$ squeezelite -l 
Output devices: 
null                           - Discard all samples (playback) or generate zero samples (capture) 
pulse                          - PulseAudio Sound Server 
softvolume 
softvol 
default:CARD=DAC55688069       - ADI-2 DAC (55688069), USB Audio - Default Audio Device 
sysdefault:CARD=DAC55688069    - ADI-2 DAC (55688069), USB Audio - Default Audio Device
 - Editer en root avec sudo, le fichier de configuration de squeezelite.
 
 
 
Vi doit être installé mais je préfère nano que j'ai installé (même commande "apt-get install").
 Code : volumio@ifi:~$ sudo nano /etc/default/squeezelite
 
Remplacer la bonne ligne avec les bonnes infos.
 Code : # ALSA output device: 
SL_SOUNDCARD="default:CARD=DAC55688069"
  
Code : volumio@ifi:~$ shutdown -r now
 - on vérifie que squeezelite fonctionne, avec la bonne sortie audio :
 
 
 
Code : volumio@ifi:~$ systemctl status squeezelite 
● squeezelite.service - LSB: Lightweight headless Squeezebox emulator 
 Loaded: loaded (/etc/init.d/squeezelite) 
 Active: active (running) since Thu 2022-03-31 01:11:27 UTC; 54s ago 
Process: 741 ExecStart=/etc/init.d/squeezelite start (code=exited, status=0/SUCCESS) 
 CGroup: /system.slice/squeezelite.service 
         └─784 /usr/bin/squeezelite -n ifi -o default:CARD=DAC55688069
 
Si squeezelite n'est pas lancé, faire un :
 Code : volumio@ifi:~$ systemctl start squeezelite
 
Vous devez trouver votre squeezebox "ifi" sous LMS ou Daphile. 
Si vous voulez revenir à HQplayer, il suffit de reprendre les dernières commandes à l'inverse.
 Code : volumio@ifi:~$ systemctl stop squeezelite 
systemctl disable squeezelite 
systemctl enable networkaudiod 
systemctl start networkaudiod
  
Enjoy !!    
 
	 
	
	
	
		
	 
 
 
	
	
	
		
	Messages : 4,256 
	Sujets : 82 
	Inscription : Mar 2019
	
 Type: Particulier
 Localisation: Côte d'Or
	 
 
	
		
		
		05-17-2022, 08:02 PM 
(Modification du message : 01-18-2023, 09:29 PM par zaurux.)
		
	 
	
		Invalider la sortie SPDIF du ZenStream
Voir le lancement d'une session SSH ci-dessus.
 
Selon l'OS du PC distant, on installe un logiciel SSH comme PuTTY, par ex (pour windows). - On bascule dans le mode exclusif de son choix. Dans le cas présent, ROON, puisque c'était la demande.
 
 
 
Pour précision, je n'ai pas testé le mode Roon mais à priori les modes fonctionnent de la même manière avec (je pense) des scripts de lancement de services avec le bon player. Je n'ai pas fait le test de rebasculer en mode AIO puis de nouveau en mode exclusif car mon mode NAA est optimisé et j'ai peur qu'il faille tout recommencer. 
Je le ferai le jour où iFi audio modifie le coeur du Zen.. enfin le kerne, mais j'ai comme un doute. 
 - Donc, une fois en mode Roon, on ouvre une session SSH.
 
 
- On installe un éditeur de texte. J'aime bien nano : 
 
 
 
Code : volumio@ifi:~$ sudo apt-get install nano
 - Ensuite, il suffit d'invalider l'utilisation du driver (module) spdif au démarrage en le "blacklistant". 
 
 
 
Code : sudo nano /etc/modprobe.d/fbdev-blacklist.conf
 et dans l'éditeur, il suffit de coller le nom du module :   snd_soc_rockchip_spdif   à la fin de la liste, précédé de "blacklist". 
Avec nano et PuTTY, vous copiez le nom ci-dessus, vous faites défiler avec les flèches et une fois le curseur bien positionné, il suffit d'un clic droit pour coller le texte. 
Pour enregistrer '^X', c'est l'équivalent de 'ctrl + X'. Vous confirmez le nom du fichier proposé. - Si vous redémarrez le Zen avec la commande "shudown -r now", il ne devrait plus y avoir de spdif ou plutôt uniquement l'usb.
 
Pour faire machine arrière, il suffit de retirer le nom du module de la blacklist. Normalement, cela suffit.    
 
... 
 
 
Sur mon Zen, j'ai également modifié le fichier 'alsa-base.conf', pour que l'USB soit la 'card 0' (vérifiable en tapant 'aplay -l' ) 
Il est modifié de la manière suivante :
 Code : volumio@ifi:~$ sudo nano /etc/modprobe.d/alsa-base.conf 
 
 GNU nano 2.2.6       File: /etc/modprobe.d/alsa-base.conf 
 
install snd /sbin/modprobe --ignore-install snd && { /sbin/modprobe --quiet snd$ 
install snd-rawmidi /sbin/modprobe --ignore-install snd-rawmidi && { /sbin/modp$ 
install snd-emu10k1 /sbin/modprobe --ignore-install snd-emu10k1 && { /sbin/modp$ 
# Keep snd-pcsp from beeing loaded as first soundcard 
#options snd-pcsp index=-2 
 
# Keep snd-usb-audio from beeing loaded as first soundcard 
options snd-usb-audio index=0 
 
# Prevent abnormal drivers from grabbing index 0 
# options bt87x index=-2 
# options cx88_alsa index=-2 
# options snd-atiixp-modem index=-2 
# options snd-intel8x0m index=-2 
# options snd-via82xx-modem index=-2 
options snd-usb-audio nrpacks=1
 
Tous les modules éventuels son invalidés, sauf 'options snd-usb-audio index=0'
 Code : volumio@ifi:~$ aplay -l 
**** List of PLAYBACK Hardware Devices **** 
card 0: DAC55688069 [ADI-2 DAC (55688069)], device 0: USB Audio [USB Audio] 
 Subdevices: 0/1 
 Subdevice #0: subdevice #0
  
	 
	
	
	
		
	 
 
 
	
	
	
		
	Messages : 1 
	Sujets : 0 
	Inscription : May 2022
	
 Type: Particulier
	 
 
	
	
		Juste un merci car ça m'intéressait bcp
	 
	
	
	
		
	 
 
 
	
	
	
		
	Messages : 8,161 
	Sujets : 173 
	Inscription : Sep 2017
	
 Type: Particulier
	 
 
	
	
		Bonjour et bienvenue yohan,    
tu n'oublieras pas de te présenter, comme le demande la charte du forum, quand tu auras deux minutes ...
 
 ... le lien de la charte:  http://forum-hifi.fr/announcement-1.html
 ... le lien pour la présentation des nouveaux membres:  http://forum-hifi.fr/forum-8.html 
 ... Clique sur  Nouveau sujet ...
 
Merci !
 
La modération.
	  
	
	
"Les vinyles neufs qui sortent actuellement sont fait à 99,99% avec les mêmes fichiers numérique que ceux qui sont diffusés en streaming, gravés sur CD ou les fichiers eux-mêmes, vendu tel quel, par les maisons de disques ... et n'ont donc aucun intérêt ..." 
 
 
	
		
	 
 
 
	
	
	
		
	Messages : 4,256 
	Sujets : 82 
	Inscription : Mar 2019
	
 Type: Particulier
 Localisation: Côte d'Or
	 
 
	
		
		
		06-17-2022, 02:49 PM 
(Modification du message : 06-27-2022, 08:37 AM par zaurux.)
		
	 
	
		Bon j'ai un peu laissé le sujet maintenant que mon Zen tourne avec une stabilité digne d'une Citroën de la croisière jaune (pas sûr de la comparaison) !!     
Comme pour l'ensemble de ce post, je partage mais vous mettez en oeuvre sous votre responsabilité     
Mais bon, c'est de la modification logicielle qui peut être effacé par une retour à la "config. usine".
 
Avant d'aller plus loin, voici les services qui tournent dans mon mode "NAA personnalisé'.
 Code : volumio@ifi:~$ service --status-all 
[ - ]  alsa-utils 
[ - ]  avahi-daemon 
[ - ]  bootlogs 
[ - ]  bootmisc.sh 
[ - ]  cgmanager 
[ - ]  cgproxy 
[ - ]  checkfs.sh 
[ - ]  checkroot-bootclean.sh 
[ - ]  checkroot.sh 
[ + ]  cpufrequtils 
[ - ]  dbus 
[ - ]  dhcpcd 
[ - ]  dnsmasq 
[ + ]  fake-hwclock 
[ - ]  glances 
[ - ]  haveged 
[ - ]  hddtemp 
[ - ]  hostapd 
[ - ]  hostname.sh 
[ - ]  hwclock.sh 
[ + ]  ifplugd 
[ - ]  isc-dhcp-server 
[ - ]  killprocs 
[ + ]  kmod 
[ - ]  lirc 
[ - ]  lm-sensors 
[ + ]  loadcpufreq 
[ - ]  motd 
[ - ]  mountall-bootclean.sh 
[ - ]  mountall.sh 
[ - ]  mountdevsubfs.sh 
[ - ]  mountkernfs.sh 
[ - ]  mountnfs-bootclean.sh 
[ - ]  mountnfs.sh 
[ - ]  mpd 
[ + ]  networking 
[ - ]  nfs-common 
[ - ]  nmbd 
[ - ]  ntp 
[ - ]  plymouth 
[ - ]  plymouth-log 
[ + ]  procps 
[ + ]  rc.local 
[ - ]  rmnologin 
[ - ]  rpcbind 
[ - ]  rsync 
[ - ]  samba 
[ - ]  samba-ad-dc 
[ - ]  sendsigs 
[ - ]  smbd 
[ - ]  squeezelite 
[ + ]  ssh 
[ - ]  sudo 
[ - ]  triggerhappy 
[ + ]  udev 
[ - ]  udev-finish 
[ - ]  umountfs 
[ - ]  umountnfs.sh 
[ - ]  umountroot 
[ - ]  upmpdcli 
[ - ]  urandom 
[ - ]  winbind 
[ - ]  x11-common
 
Vous remarquez qu'il n'y a plus beaucoup de "+"
 
Avant de revenir sur les modalités d'arrêt, un petit truc pour éviter de rentrer régulièrement son mot de passe via sudo. 
Il suffit d'autoriser l'utilisation de sudo sans mot de passe. 
Sûr le zen, il faut modifier ce fichier :
 Code : ## sudo sans password : éditer /etc/sudoers.d/volumio-user 
sudo nano /etc/sudoers.d/volumio-user 
## modifier volumio ALL=(ALL) ALL 
volumio ALL=(ALL) NOPASSWD:ALL
 
J'ai invalidé certains services et par ailleurs fait un fichier exécutable avec quelques lignes d'optimisations (récupérées sur le net) + des commandes d'arrêt de service à la fin du démarrage.
 
Pour les services  arrêtés de manière permanente :
 Code : systemctl disable mpd 
systemctl disable nmbd 
systemctl disable smbd 
systemctl disable samba-ad-dc 
systemctl disable nfs-common 
systemctl disable ntp 
systemctl disable winbind 
systemctl disable lirc 
systemctl disable rpcbind 
systemctl disable dhcpd 
systemctl disable dhcpcd 
systemctl disable getty@tty1 
systemctl disable ifi-streamer-irq
 
Pour les relancer, il suffit de remplacer "disable" par "enable".
 
Certains services ne peuvent être arrêtés totalement (liés à des process kernel..), je les ai masqués avec la commande suivante :
 Code : systemctl mask rtkit-daemon.service 
systemctl mask dbus 
systemctl mask systemd-journald
 
Pour les autres commandes j'ai donc créé un fichier "naa", rendu exécutable et lancé dans  /etc/rc.local avant "exit". 
Le fichier s'appelle "naa" et donc je rajoute : 
"/usr/sbin/naa" dans le fichier rc.local, à la fin juste avant "exit"
 
Pour créer ce fichier, vous pouvez faire : "sudo nano /usr/sbin/naa" et copié les éléments ci dessous. 
Pour le rendre exécutable : "sudo chmod +x /usr/sbin/naa"
 Code : #!/bin/bash 
 
#Reduce Audio thread latency 
 
chrt -f -p 54 $(pgrep ksoftirqd/0) 
chrt -f -p 54 $(pgrep ksoftirqd/1) 
chrt -f -p 54 $(pgrep ksoftirqd/2) 
chrt -f -p 54 $(pgrep ksoftirqd/3) 
 
 
#Reduce operating system latency 
echo 1000000 > /proc/sys/kernel/sched_latency_ns 
echo 100000 > /proc/sys/kernel/sched_min_granularity_ns 
echo 25000 > /proc/sys/kernel/sched_wakeup_granularity_ns 
 
#stop services 
#some services are already "disabled"  
systemctl stop ifi-streamer-switches.service 
systemctl stop ifi-streamer-leds.service 
systemctl stop avahi-daemon 
systemctl stop udisks 
systemctl stop triggerhappy 
systemctl stop udev 
systemctl stop udev-finish 
systemctl stop winbind 
systemctl stop volumio-remote-updater-push 
systemctl stop ifi-streamer-ethernet 
systemctl stop ifi-streamer-thermal 
systemctl stop ifi-streamer-leds 
systemctl stop volumiologrotate 
systemctl stop hostapd 
systemctl stop serial-getty@ttyFIQ0 
 
sleep 15 
systemctl stop haveged 
systemctl stop urandom 
 
exit
 
Je pense que j'ai tout mis.. par la suite, je vous indiquerai : - comment rajouter un autre script pour lancer "cpuset" (à installer) afin d'isoler naa sur un seul coeur.
 
 
- limiter la fréquence du CPU (600Mhz, chez moi)
 
 
- utiliser l'IPV6 (mon zen est connecté en direct depuis le serveur WIN10 sans passer par un switch avec une IPV6 fixe).
 
 
 
Info isolation cpu :
 Code : volumio@ifi:~$ cset shield -v -v 
cset: --> shielding system active with 
 
cset: "system" cpuset of CPUSPEC(0-2) with 7 tasks running 
  USER       PID  PPID SPPr TASK NAME 
  -------- ----- ----- ---- --------- 
  root         1     0 Soth [systemd] 
  root       774     1 Soth [sshd] 
  root      3599     1 Soth [systemd-udevd] 
  root      3822   774 Soth [sshd] 
  volumio   3824  3822 Soth [sshd] 
  volumio   3825  3824 Soth -bash 
  volumio   6582  3825 Roth /usr/bin/python /usr/bin/cset shield -v -v 
 
cset: "user" cpuset of CPUSPEC(3) with 1 task running 
  USER       PID  PPID SPPr TASK NAME 
  -------- ----- ----- ---- --------- 
  root       918     1 Sr98 [networkaudiod]
  
	 
	
	
	
		
	 
 
 
	
	
	
		
	Messages : 1,202 
	Sujets : 3 
	Inscription : Aug 2019
	
 Type: Particulier
 Localisation: Côte d'Or
	 
 
	
	
		Bonjour, 
 
Merci Stéphane, j’essaie ça dès que j’ai un moment. Mais pour contourner mon problème de connexion au DAC en USB, je vais devoir passer au coaxial pour éviter de devoir démarrer par la position AIO... 
 
Cdlt.
	 
	
	
	
		
	 
 
 
	
	
	
		
	Messages : 1,202 
	Sujets : 3 
	Inscription : Aug 2019
	
 Type: Particulier
 Localisation: Côte d'Or
	 
 
	
	
		 (06-17-2022, 02:49 PM)zaurux a écrit :  Bon j'ai un peu laissé le sujet maintenant que mon Zen tourne avec une stabilité digne d'une Citroën de la croisière jaune (pas sûr de la comparaison) !!     
 
Comme pour l'ensemble de ce post, je partage mais vous mettez en oeuvre sous votre responsabilité     
Mais bon, c'est de la modification logicielle qui peut être effacé par une retour à la "config. usine". 
 
Avant d'aller plus loin, voici les services qui tournent dans mon mode "NAA personnalisé'. 
 
Code : volumio@ifi:~$ service --status-all 
[ - ]  alsa-utils 
[ - ]  avahi-daemon 
[ - ]  bootlogs 
[ - ]  bootmisc.sh 
[ - ]  cgmanager 
[ - ]  cgproxy 
[ - ]  checkfs.sh 
[ - ]  checkroot-bootclean.sh 
[ - ]  checkroot.sh 
[ + ]  cpufrequtils 
[ - ]  dbus 
[ - ]  dhcpcd 
[ - ]  dnsmasq 
[ + ]  fake-hwclock 
[ - ]  glances 
[ - ]  haveged 
[ - ]  hddtemp 
[ - ]  hostapd 
[ - ]  hostname.sh 
[ - ]  hwclock.sh 
[ + ]  ifplugd 
[ - ]  isc-dhcp-server 
[ - ]  killprocs 
[ + ]  kmod 
[ - ]  lirc 
[ - ]  lm-sensors 
[ + ]  loadcpufreq 
[ - ]  motd 
[ - ]  mountall-bootclean.sh 
[ - ]  mountall.sh 
[ - ]  mountdevsubfs.sh 
[ - ]  mountkernfs.sh 
[ - ]  mountnfs-bootclean.sh 
[ - ]  mountnfs.sh 
[ - ]  mpd 
[ + ]  networking 
[ - ]  nfs-common 
[ - ]  nmbd 
[ - ]  ntp 
[ - ]  plymouth 
[ - ]  plymouth-log 
[ + ]  procps 
[ + ]  rc.local 
[ - ]  rmnologin 
[ - ]  rpcbind 
[ - ]  rsync 
[ - ]  samba 
[ - ]  samba-ad-dc 
[ - ]  sendsigs 
[ - ]  smbd 
[ - ]  squeezelite 
[ + ]  ssh 
[ - ]  sudo 
[ - ]  triggerhappy 
[ + ]  udev 
[ - ]  udev-finish 
[ - ]  umountfs 
[ - ]  umountnfs.sh 
[ - ]  umountroot 
[ - ]  upmpdcli 
[ - ]  urandom 
[ - ]  winbind 
[ - ]  x11-common
  
Vous remarquez qu'il n'y a plus beaucoup de "+" 
 
Avant de revenir sur les modalités d'arrêt, un petit truc pour éviter de rentrer régulièrement son mot de passe via sudo. 
Il suffit d'autoriser l'utilisation de sudo sans mot de passe. 
Sûr le zen, il faut modifier ce fichier : 
 
Code : ## sudo sans password : éditer /etc/sudoers.d/volumio-user 
sudo nano /etc/sudoers.d/volumio-user 
## modifier volumio ALL=(ALL) ALL 
volumio ALL=(ALL) NOPASSWD:ALL
  
J'ai invalidé certains services et par ailleurs fait un fichier exécutable avec quelques lignes d'optimisations (récupérées sur le net) + des commandes d'arrêt de service à la fin du démarrage. 
 
Pour les services arrêtés de manière permanente : 
 
Code : systemctl disable mpd 
systemctl disable nmbd 
systemctl disable smbd 
systemctl disable samba-ad-dc 
systemctl disable nfs-common 
systemctl disable ntp 
systemctl disable winbind 
systemctl disable lirc 
systemctl disable rpcbind 
systemctl disable dhcpd 
systemctl disable dhcpcd 
systemctl disable getty@tty1 
systemctl disable ifi-streamer-irq
  
Pour les relancer, il suffit de remplacer "disable" par "enable". 
 
Certains services ne peuvent être arrêtés totalement (liés à des process kernel..), je les ai masqués avec la commande suivante : 
 
Code : systemctl mask rtkit-daemon.service 
systemctl mask dbus 
systemctl mask systemd-journald
  
Pour les autres commandes j'ai donc créé un fichier "naa", rendu exécutable et lancé dans  /etc/rc.local avant "exit". 
Le fichier s'appelle "naa" et donc je rajoute : 
"/usr/sbin/naa" dans le fichier rc.local, à la fin juste avant "exit" 
 
 
Pour créer ce fichier, vous pouvez faire : "sudo nano /usr/sbin/naa" et copier les éléments ci dessous. 
Pour le rendre exécutable : "sudo chmod +x /usr/sbin/naa" 
 
Code : #!/bin/bash 
 
#Reduce Audio thread latency 
 
chrt -f -p 54 $(pgrep ksoftirqd/0) 
chrt -f -p 54 $(pgrep ksoftirqd/1) 
chrt -f -p 54 $(pgrep ksoftirqd/2) 
chrt -f -p 54 $(pgrep ksoftirqd/3) 
 
 
#Reduce operating system latency 
echo 1000000 > /proc/sys/kernel/sched_latency_ns 
echo 100000 > /proc/sys/kernel/sched_min_granularity_ns 
echo 25000 > /proc/sys/kernel/sched_wakeup_granularity_ns 
 
#stop services 
#some services are already "disabled"  
systemctl stop ifi-streamer-switches.service 
systemctl stop ifi-streamer-leds.service 
systemctl stop avahi-daemon 
systemctl stop udisks 
systemctl stop triggerhappy 
systemctl stop udev 
systemctl stop udev-finish 
systemctl stop winbind 
systemctl stop volumio-remote-updater-push 
systemctl stop ifi-streamer-ethernet 
systemctl stop ifi-streamer-thermal 
systemctl stop ifi-streamer-leds 
systemctl stop volumiologrotate 
systemctl stop hostapd 
systemctl stop serial-getty@ttyFIQ0 
 
sleep 15 
systemctl stop haveged 
systemctl stop urandom 
 
exit
  
Je pense que j'ai tout mis.. par la suite, je vous indiquerai :- comment rajouter un autre script pour lancer "cpuset" (à installer) afin d'isoler naa sur un seul coeur.
 
 
- limiter la fréquence du CPU (600Mhz, chez moi)
 
 
- utiliser l'IPV6 (mon zen est connecté en direct depuis le serveur WIN10 sans passer par un switch avec une IPV6 fixe).
 
 
 
Info isolation cpu : 
 
Code : volumio@ifi:~$ cset shield -v -v 
cset: --> shielding system active with 
 
cset: "system" cpuset of CPUSPEC(0-2) with 7 tasks running 
  USER       PID  PPID SPPr TASK NAME 
  -------- ----- ----- ---- --------- 
  root         1     0 Soth [systemd] 
  root       774     1 Soth [sshd] 
  root      3599     1 Soth [systemd-udevd] 
  root      3822   774 Soth [sshd] 
  volumio   3824  3822 Soth [sshd] 
  volumio   3825  3824 Soth -bash 
  volumio   6582  3825 Roth /usr/bin/python /usr/bin/cset shield -v -v 
 
cset: "user" cpuset of CPUSPEC(3) with 1 task running 
  USER       PID  PPID SPPr TASK NAME 
  -------- ----- ----- ---- --------- 
  root       918     1 Sr98 [networkaudiod]
  
Bonjour Stéphane,
 
Je viens de faire la manipulation sur mon zen stream.
 
J’ai corrigé l’instruction d’édition de fichier, qui doit être : sudo nano "nom de fichier à éditer", et, à part ça,  tout fonctionne, et au niveau du rendu audio, je ne sais pas si c’est la qualité exceptionnelle du courant EDF aujourd’hui     , encore que, avec l’orage qui se pointe...    , ou bien l’apport de tes modifications...mais le son est très bon sur tous mes morceaux tests.  Je ne reviendrai pas en arrière.
 
Merci encore.
 
Cdlt.
	  
	
	
	
		
	 
 
 
	
	
	
		
	Messages : 4,256 
	Sujets : 82 
	Inscription : Mar 2019
	
 Type: Particulier
 Localisation: Côte d'Or
	 
 
	
	
		 (06-25-2022, 06:57 PM)ds21 a écrit :  Bonjour Stéphane, 
 
Je viens de faire la manipulation sur mon zen stream. 
 
J’ai corrigé l’instruction d’édition de fichier, qui doit être : sudo nano "nom de fichier à éditer", et, à part ça,  tout fonctionne, et au niveau du rendu audio, je ne sais pas si c’est la qualité exceptionnelle du courant EDF aujourd’hui    , encore que, avec l’orage qui se pointe...   , ou bien l’apport de tes modifications...mais le son est très bon sur tous mes morceaux tests.  Je ne reviendrai pas en arrière. 
 
Merci encore. 
 
Cdlt. 
Bonjour Didier, merci    
J'ai 5 minutes, j'en profite :
 
La gestion de la fréquence cpu : 
La carte peut fonctionner entre " hardware limits: 408 MHz - 1.39 GHz". 
J'ai décidé de la bloquer à 600 Mhz ce qui est suffisant pour naa. J'avoue ne pas avoir fait de tests d'écoute mais pour la consommation électrique (température) pourquoi faire tourner plus.  
Il suffit de jouer avec l'instruction : cpufreq-set
 Code : sudo cpufreq-set -d 600000 -u 600000
  
	 
	
	
	
		
	 
 
 
	
	
	
		
	Messages : 1,202 
	Sujets : 3 
	Inscription : Aug 2019
	
 Type: Particulier
 Localisation: Côte d'Or
	 
 
	
	
		 (06-27-2022, 08:43 AM)zaurux a écrit :  .... 
 
Bonjour Didier, merci    
 
J'ai 5 minutes, j'en profite : 
 
La gestion de la fréquence cpu : 
La carte peut fonctionner entre "hardware limits: 408 MHz - 1.39 GHz". 
J'ai décidé de la bloquer à 600 Mhz ce qui est suffisant pour naa. J'avoue ne pas avoir fait de tests d'écoute mais pour la consommation électrique (température) pourquoi faire tourner plus.  
Il suffit de jouer avec l'instruction : cpufreq-set 
 
Code : sudo cpufreq-set -d 600000 -u 600000
  
Bonjour Stéphane,
 
J’avais désactivé SSH et je n’ai plus accès à l’écran qui permet de le réactiver. Donc, il me faudrait encore réinitialiser la config usine, puis recharger le dernier firmware et refaire toute les modifications sous SSH...désolé, je verrai ça plus tard si l’occasion se présente. 
MERCI quand même pour l’info 
 
Cdlt.
	  
	
	
	
		
	 
 
 
	
	
	
		
	Messages : 4,256 
	Sujets : 82 
	Inscription : Mar 2019
	
 Type: Particulier
 Localisation: Côte d'Or
	 
 
	
	
		 (06-27-2022, 10:05 AM)ds21 a écrit :  ... 
J’avais désactivé SSH et je n’ai plus accès ... 
Ah dommage..     !
 
LA dernière optimisation et pas des moindres : l'isolation de l'exe "networkaudiod" sur un coeur ... le 3.
 
Il est nécessaire d'installer "cpuset" qui créée un "bouclier (shield) et répartit l'ensemble des process sur tous les coeurs en en gardant un pour le process choisit.
 Code : sudo apt-get install cpuset
 
Ensuite comme précédemment, simplement créer un fichier exécutable "isolnaa" et le rajouter en fin du fichier "rc.local".
 Code : sudo nano /usr/sbin/isolnaa
 
Voici le contenu de mon fichier "isolnaa" affiché avec la commande cat :
 Code : volumio@ifi:~$ cat /usr/sbin/isolnaa 
#!/bin/bash 
 
#networkaudiod isolation on CPU3 
 
cset shield -c 3 
pids=$(pgrep -x networkaudiod) 
for pid in $pids 
do 
cset proc --move  --threads --toset=user --force --pid=$pid 
chrt -r -a -p 98 $pid 
done 
volumio@ifi:~$
  
Quand vous relancer le ZenStream et que  "isolnaa" s'exécute, voici ce que cela donne (avec la commande : cset shield -v -v).
 Code : volumio@ifi:~$ cset shield -v -v 
cset: --> shielding system active with 
cset: "system" cpuset of CPUSPEC(0-2) with 6 tasks running 
  USER       PID  PPID SPPr TASK NAME 
  -------- ----- ----- ---- --------- 
  root         1     0 Soth [systemd] 
  root       774     1 Soth [sshd] 
  root      1173   774 Soth [sshd] 
  volumio   1175  1173 Soth [sshd] 
  volumio   1176  1175 Soth -bash 
  volumio   1254  1176 Roth /usr/bin/python /usr/bin/cset shield -v -v 
cset: "user" cpuset of CPUSPEC(3) with 2 tasks running 
  USER       PID  PPID SPPr TASK NAME 
  -------- ----- ----- ---- --------- 
  root       911     1 Sr98 [networkaudiod] 
  root      1248     1 Sf_1 [networkaudiod] 
volumio@ifi:~$
 
Vous voyez 2 blocs : 
Les taches lancées dans les coeurs 0/1/2 CPUSPEC(0-2) 
Et le bloc du coeur 3 avec 2 tâches CPUSPEC(3) avec 2 instances "networkaudiod" (exécutable du protocole NAA pour HQplayer).     
Visible également avec "top" ou "htop".
	  
	
	
	
		
	 
 
 
	 
 |