Streaming qui rame sur Kodi + Raspberry Pi. Comment régler ce problème de cache ?
Je bidouille pas mal ma Recalbox installée sur un Raspberry Pi 3 en ce moment et je vais vous parler d’un petit problème que j’avais avec Kodi (Media Center) et de comment je l’ai réglé.
Lorsque j’utilisais Kodi, pour regarder une vidéo MKV en streaming (plugin Putio), j’avais régulièrement des temps de pause à cause du buffering. Pas cool. Seulement voilà, le buffering se fait sur la RAM du Raspberry Pi et celle-ci semble un peu trop juste.
J’ai donc creusé le truc et j’ai trouvé une solution que j’ai dû appliquer en 2 étapes. Kodi dispose d’un fichier de config qu’il est possible de modifier pour justement faire quelques réglages au niveau du cache.
Il faut donc d’abord ouvrir une session SSH sur la recalbox puis allez éditer le fichier le fichier
nano /recalbox/share/system/.kodi/userdata/advancedsettings.xml
Avec nano, j’ai eu l’erreur suivante :
“Error opening terminal : xterm-256color”
Pour arranger ça, fait simplement un export comme ceci :
export TERM=xterm
Ensuite dans le fichier advancedsettings.xml et ajoutez une section network avec au choix les paramètres suivants :
buffermode : 0 pour activer le cache internet uniquement / 1 pour activer le cache internet et local / 2 pour activer le cache internet en http uniquement / 3 pas de buffer. J’ai donc mis 1 pour que ça couvre tous les cas de figure.
readbufferfactor : C’est le coef de remplissage du cache. Avec la valeur 1, Kodi met en cache juste ce qu’il faut pour ne pas que ça bufferise (normalement) mais si vous voulez être plus large, 1.5 voire 2 c’est faisable. Mais ça bouffera plus de ressource sur votre Raspberry (car ça stocke plus).
cachemembuffersize : Si vous mettez un chiffre, par exemple 20971520 bits, cela représente 20 MB de mémoire stockée en RAM. Mais si votre RAM est trop juste, vous pouvez mettre 0. Avec la valeur 0, le cache n’est plus placé en RAM mais directement sur la carte SD. Ce n’est pas l’idéal, car ça sollicite en écriture la carte micro SD donc, elle vivra moins longtemps mais c’est ce que j’ai mis, car c’est la seule façon pour que ça ne rame pas.
Voici donc mes valeurs :
Sur ma recalbox, j’avais une carte de 16 GB remplie à ras bord, donc j’avais même après mes modifications encore un message pendant la lecture, qui me disait que le cache était plein. Normal, ça remplissait trop vite la carte SD. J’ai donc fait une copie de ma carte avec DD sur une nouvelle carte de 128 GB et j’ai ensuite augmenté la taille des partitions avec Gparted et voilà.
Bref, voilà comment j’ai procédé pour régler ce problème de buffering sur Kodi présent sur Recalbox. J’espère que ça pourra servir à d’autres.