Merci de ne pas parler du piratage/téléchargement, ni de mentionner les addons "illégaux" permettant par exemple de regarder la TV ou des films en streaming.
Liste des dépôts/addons bannis : https://kodi.wiki/view/Official:For [...] ed_add-ons
SOMMAIRE :
Citation :
1) QU'EST-CE QUE KODI ?
2) AVEC QUEL MATERIEL L'UTILISER ?
3) VERSIONS DE KODI
- 3.1 Historique des versions
- 3.2 Téléchargements
- 3.3 Versions alternatives
4) PERSONNALISATION DE L'INTERFACE
- 4.1 Changement de skin
- 4.2 Utilisation des "smart playlists" pour ranger ses vidéos
5) PLUGINS ET OUTILS RECOMMANDÉS
- 5.1 Télécommandes pour Android / iOS
- 5.2 Maintenance du cache
- 5.3 Interfaces web
- 5.4 Addons
6) CENTRALISATION DE LA MÉDIATHÈQUE
- 6.1 Base de données MysQL/MariaDB
- 6.2 Utilisation d'Emby
- 6.3 Utilisation de l'addon Trakt
7) UTILISATION AVANCÉE DE KODI
- 7.1 Fichiers et répertoires importants
- 7.2 Centralisation de la configuration
- 7.3 Déplacement des fichiers médias
- 7.4 Tuning réseau
- 7.5 Décalage audio / vidéo
- 7.6 Affichage des infos de lecture
- 7.7 Divers
8) INTERFAÇAGE DE KODI AVEC PLEX
- 8.1 Plex for Kodi (addon "officiel" )
- 8.2 PlexBMC
- 8.3 PlexKodiConnect (PKC)
9) TV EN DIRECT
10) LIENS UTILES
|
1) QU'EST-CE QUE KODI ?
Kodi, à l'origine XBMC est un lecteur multimédia libre. Initialement créé pour la console de jeux Xbox, il a ensuite été porté sous les systèmes d’exploitation Windows, Linux, macOS, Android et iOS. Kodi permet de lire des vidéos, de la musique ou des photos depuis des médias locaux ou en streaming. Il gère un grand nombre de protocoles réseau (SMB, NFS, DLNA, etc.)
Kodi est basé sur une médiathèque, et utilise des scrapers pour récupérer les informations sur les médias : TheTVDB.com, themoviedb.org, etc.
L'une des grandes forces de Kodi, outre sa prise en charge de tous les formats multimédias, est d'être extensible à l'infini via un système d'addons.
Il est ainsi possible de modifier l'apparence du lecteur, de s'interfacer avec d'autres logiciels, etc.
2) AVEC QUEL MATERIEL L'UTILISER ?
Kodi tourne sous les systèmes d'exploitation majeurs (Windows, Linux et macOS), et permet d'utiliser un ordinateur comme HTPC.
Il est également possible de faire tourner Kodi (comme "système d'exploitation" ) sur de nombreux périphériques.
Cette solution est souvent appréciée pour un HTPC qui consomme peu d'énergie et prend peu de place.
Parmi les périphériques "populaires", ceux-ci reviennent souvent :
* avantages : coût (~ 40 € sans alimentation / boitier / stockage), excellent support de la communauté Kodi, rapidité de mise en oeuvre, lecture HEVC/x265 avec la version 4
* inconvénients : pas de passthrough HD (seul le DTS core sera transmis), pas de sortie optique ou de port infrarouge
* avantages : compatibilité avec les applications/jeux du Google Play Store (y compris Netflix en 4K, grâce à la présence de Widevine)
* inconvénients : coût (~ 200 € pour la version 2017), pas de port infrarouge de base (version 2017) sauf sur la version Pro
- "box Android" à base de processeurs Amlogic S905X/S912
* avantages : coût très bas (~ 30 € pour une box avec 2 Go de RAM et 8 Go de stockage), présence de port infrarouge et de sortie optique, gestion du HEVC / x265 et HDR 10 bits (S905X/S912)
* très mauvais support logiciel sous Android (ces box ne sont intéressantes que sous CoreELEC, maintenu par quelques développeurs)
* avantages : support de la 3D MVC avec une version "spéciale" de Kodi, possibilité sous Windows d'utiliser des filtres comme madVR
* inconvénient : coût (~ 300 €), support HDR pas complètement fonctionnel
* avantages : Android TV (possibilité d'utiliser My Canal, Molotov.tv, Spotify/Deezer), coût (~ 70€), présence d'un récepteur IR
* inconvénients : pas de port Ethernet de base (des adaptateurs USB à ~ 10 € fonctionnent), pas de sortie SPDIF optique, pas de son HD avec la Mi Box S
- box Android Zidoo X8-X9S-X10 / HiMedia Q5-Q10
* avantages : excellente qualité d'image avec leurs puces Realtek (Zidoo) / Hisilicom (HiMedia), connectique très complète, possibilité d'ajouter un disque dur interne dans certains modèles
* inconvénients : coût (~ 130 €), interface Android assez austère.
* avantages : excellent support logiciel (5 ans) par les développeurs d'OSMC, wifi AC, télécommande IR/BT, sortie optique
* inconvénients : coût (~ 140 €)
* avantages : très bons composants hardware, possibilité d'utiliser une mémoire eMMC, très bien supporté par CoreELEC
* inconvénients : coût (~ 100 € pour un kit complet)
- TV Philips/Sony sous Androdi TV
* avantages : pas besoin de matériel supplémentaire
* inconvénients : de fréquents bugs (passthrough DTS, HDR non fonctionnel).
Les topics suivants peuvent aider à faire son choix :
3) VERSIONS DE KODI
- 3.1 Historique des versions
Jusqu'à la version 13, Kodi s'appelait XBMC (Xbox Media Center).
Les dernières versions de Kodi sont les suivantes :
- Helix, version 14.2 sortie le 28/03/2015
- Isengard, version 15.2 sortie le 19/10/2015
- Jarvis, version 16.1 sortie le 24/04/2016
- Krypton, version 17.6 sortie le 15/11/2017
- Leia, version 18.2 sortie le 22/04/2019.
Les 2 grosses nouveautés de Leia sont la gestion des DRM (des plugins - non officiels - pour Netflix / Amazon Prime Video existent) et la gestion des émulateurs.
La prochaine version majeure de Kodi (19) sera nommée Matrix.
Kodi est téléchargeable sur https://kodi.tv/download pour les versions Windows, macOS et Android.
La version Windows 10 / Xbox One est également disponible dans le Microsoft Store.
Toujours pour Windows, une version HTPC/NUC avec 3D MVC native est disponible.
Sous Android, un addon permet de choisir la version à installer :
Avec un Raspberry Pi, 2 distributions "just enough OS" sont plébiscitées:
- LibreELEC, distribution très simple sans beaucoup de personnalisation possible
- OSMC, basé sur une Debian et qui permet d'installer de nombreux packages.
Pour les box Amlogic, la distribution Linux CoreELEC est disponible pour les SoC S905* et S912 : https://coreelec.org/
Des versions non officielles de LibreELEC sont disponibles pour les anciens SoC Amlogic (S802 et S805 par exemple) : https://forum.libreelec.tv/board/38-amlogic/
- 3.3 Versions alternatives
Un dérivé de Kodi pour iPhone, iPad, Apple TV et FireTV est disponible : MrMC.
Cette version est très épurée (il n'est par exemple pas possible d'ajouter des addons) et ne propose que quelques skins.
4) PERSONNALISATION DE L'INTERFACE
Le changement le plus visible de Kodi 17 est le nouveau skin"Estuary" (dont la version pour périphériques tactiles est "Estouchy" ).
L'ancien skin, "Confluence" est toujours disponible dans le dépôt Kodi.
Une galerie de skins permet de faire son choix
Attention cependant, certains skins assez "lourds" ne sont pas adaptés à des machines peu puissantes type Raspberry Pi.
Les skins les plus appréciés ici sont Arctic Zephyr
(Artic Zephyr n'est pas dans le dépôt de Kodi 16, mais il s'installe sans soucis depuis un .zip)
et Amber
- 4.2 Utilisation des "smart playlists" pour séparer les vidéos
Par défaut, les vidéos peuvent faire partie de 3 catégories : films, séries TV et concerts.
Ceci peut être très limitant si on veut séparer les films des dessins animés ou documentaires.
Heureusement, Kodi permet de définir des smart playlists.
L'usage le plus commun est de filtrer les vidéos selon leur chemin, mais un grand nombre de champs est utilisable.
Un tutoriel se trouve dans le 2ème post de ce topic.
5) PLUGINS ET OUTILS RECOMMANDÉS
- 5.1 Télécommandes pour Android / iOS
En complément d'une Logitech Harmony (
), plusieurs télécommandes sont disponibles :
- Kore pour Android, la télécommande officielle
- Yatse pour Android, qui dispose de nombreux plugins (dont certains payants)
- Official Kodi Remote pour iOS.
Une autre télécommande existe pour iOS : Kyra
Kyra 2 est la version à utiliser à partir de Kodi 17.
Kodi est également pilotable en ligne de commande, grâce à la commande "kodi-send".
Par exemple, pour forcer la mise à jour de la médiathèque :
$ kodi-send --action=UpdateLibrary(video) |
Pour afficher les infos sur la lecture en cours :
$ kodi-send --action=CodecInfo |
Avec le temps, le cache Kodi (contenant les miniatures/posters des films ou épisodes de série) tend à prendre énormément de place, et les miniatures ne sont pas supprimées quand une vidéo est effacée.
Heureusement le script Texture Cache Maintenance utility est disponible
Ce script nécessite que le serveur web soit activé dans Kodi.
Les options les plus communes sont les suivantes :
- Récupération des miniatures manquantes
$ ./texturecache.py duplicates |
Ce script permet également de savoir si une lecture est en cours, de la stopper, etc.
Kodi est également contrôlable depuis une interface web.
Avec Krypton, l'interface web par défaut est maintenant Chorus 2
D'autres interfaces web sont disponibles.
Voici une liste non exhaustive d'addons très utiles :
- Trakt, pour synchroniser films et séries avec son compte Trakt.tv!
- Keymap Editor, qui permet d'affecter des actions à des touches de télécommande (fonctionne en IR et en CEC)
- Library Auto Update (anciennement "XBMC Library Auto Update" ), qui permet de mettre à jour/nettoyer la médiathèque à intervalles réguliers
- YouTube, utilisé entre autres pour lire les bandes annonces
- Watchdog, qui permet de scanner des répertoires et mettre à jour la médiathèque quand un nouveau fichier est détecté (attention, cet addon peut consommer ENORMEMENT de ressources)
- Dbmc, permettant de lire des vidéos depuis un cloud Dropbox
- Backup, pour sauvegarder sa configuration Kodi (Dropbox est pris en charge)
- Next Up Notifications, pour enchainer la lecture des épisodes de séries
- Hyperion, pour gérer un "Ambilight Like"
- FReplay, qui donne accès aux services de replay TF1, Arte, France 2/3/4/5, etc.
6) Centralisation de la médiathèque entre plusieurs périphériques Kodi
Contrairement à Plex qui fonctionne en client/serveur, Kodi gère par défaut une base de données (SQlite) sur chaque périphérique.
Il est néanmoins possible de centraliser la médiathèque (sur un NAS, un PC allumé 24/7); cela permet de synchroniser les statuts "nu/non lu", de reprendre une vidéo là où on avait arrêté, etc.
Attention, même en cas d'utilisation d'une médiathèque partagée, les images (pochettes, "fanarts" ) sont stockés sur chaque périphérique Kodi.
Plusieurs méthodes de synchronisation sont décrites dans le wiki.
- 6.1 Base de données MysQL/MariaDB
L'usage le plus répandu pour synchroniser la médiathèque est une base de données MySQL/MariaDB
Une fois l'utilisateur crée, avec les bons droits, il faut indiquer à Kodi comment accéder au serveur MySQL/MariaDB :
<advancedsettings>
<videodatabase>
<type>mysql</type>
<host>192.168.0.1</host>
<port>3306</port>
<user>kodi</user>
<pass>kodi</pass>
</videodatabase> <musicdatabase>
<type>mysql</type>
<host>192.168.0.1</host>
<port>3306</port>
<user>kodi</user>
<pass>kodi</pass>
</musicdatabase>
<videolibrary>
<importwatchedstate>true</importwatchedstate>
<importresumepoint>true</importresumepoint>
</videolibrary>
</advancedsettings> |
Au 1er démarrage, Kodi se chargera de créer la base et d'y importer le schéma.
Chaque périphérique Kodi doit avoir la même version majeure (attention aux mises à jour automatiques sous Android, par exemple).
Lors de la mise à jour vers une nouvelle version majeure de Kodi, il est recommandé de procéder comme suit :
- arrêter tous les périphériques Kodi, sauf le "plus puissant"
- faire la mise à jour de Kodi sur ce périphérique
- au prochain lancement de Kodi, la base de données sera mise à jour (une copie sera d'abord faite par Kodi, en cas de besoin d'un retour arrière), ce qui peut durer plusieurs minutes
- mettre ensuite à jour les autres périphériques Kodi.
Après une mise à jour (majeure) de Kodi, l'ancienne base de données n'est plus utile et peut être archivée/supprimée.
Les versions des bases sont détaillées ici ('MyVideos107' pour Krypton, 'MyVideos99' pour Jarvis, etc.)
Il est utile de mettre en place des sauvegardes de base Kodi, sauf si on est prêt à refaire tout le scraping de sa médiathèque
En cas de migration d'une base locale vers une base MySQL, il est possible de faire un export / import :
- soit depuis l'interface graphique Kodi
- soit en ligne de commande :
$ kodi-send --action="exportlibrary(video,false,/storage/export)" |
Pour conserver les statuts 'lu' / 'non 'lu', il suffit d'ajouter ceci dans advancedsettings.xml :
<videolibrary>
<importwatchedstate>true</importwatchedstate>
<importresumepoint>true</importresumepoint>
<usefasthash>false</usefasthash>
</videolibrary> |
Emby (serveur et indexeur de médias) peut être utilisé "sous" Kodi, pour synchroniser une médiathèque.
Emby gère également le scraping, et gère les images (affiches, posters, etc.).
Un article très complet comparant Emby et MySQL/MariaDB.
- 6.3 Utilisation de l'addon Trakt
L'addon Trakt permet de synchroniser le statut "lu/non lu" entre plusieurs périphériques Kodi.
Cet article décrit cette mise en oeuvre.
7) UTILISATION AVANCÉE DE KODI
- 7.1 Fichiers et répertoires importants
La configuration de Kodi est stockée dans le répertoire "Userdata", dont le chemin varie suivant les OS.
Les fichiers / répertoires les plus importants sont :
- advancedsettings.xml, qui contient les paramètres avancés de Kodi (dont l'accès à une base MySQL/MariaDB si utilisée)
- sources.xml, qui contient toutes les sources (locales ou en réseau) de vos fichiers
- favourites.xml, qui contient les répertoires favoris
- guisettings.xml, qui contient les paramètres "système" de Kodi (NE PAS PARTAGER CE FICHIER ENTRE PLUSIEURS OS DIFFERENTS)
- profiles.xml, qui contient les profils si un profil autre que celui par défaut est utilisé
- le sous-répertoire "keymaps" contient les éventuels remplacement de touches (l'extension y stocke ses fichiers)
- le sous-répertoire "playlists/video" contient les smart playlists
- le fichier de log principal est temp/kodi.log
- 7.2 Centralisation de la configuration
Il peut être très utile de centraliser certains fichiers de configuration, pour ne pas avoir à les copier entre différents périphériques Kodi.
La manipulation se fait dans advancedsettings.xml :
<pathsubstitution> <substitute> <from>special://profile/sources.xml</from> <to>smb://192.168.0.1/XBMC/sources.xml</to> </substitute> </pathsubstitution> |
Ce mécanisme de "path substitution" est décrit plus en détails ici.
- 7.3 Déplacement des fichiers médias
En cas de déplacement des fichiers médias (changement de réseau ou de NAS, par exemple), il est nécessaire d'indiquer à Kodi où trouver les fichiers déjà présents dans la médiathèque.
2 techniques sont utilisables :
- le "path substitution" décrit précédemment
- la mise à jour de la base de données MySQL/MariaDB
Dans certaines situations, il peut arriver qu'un tuning réseau soit nécessaire (si certaines vidéos sont lues de façon non fluide).
Si les vidéos sont stockées sur un système Unix, le protocole NFS est à privilégier par rapport à SMB/CIFS.
Si le périphérique Kodi est également un système Linux, il peut être très intéressant de monter les partages NFS depuis l'OS, et non depuis Kodi (qui utilise la bibliothèque 'libnfs', moins performante).
Exemple d'optimisation avec un système LibreELEC (dans /storage/.config/system.d*.mount) :
# Any options you usually use with the "-o" parameter in the mount command
Options=hard,sync,intr,rw,vers=3,rsize=32768,wsize=32768 |
La taille des paquets NFS devra également être positionnée à 32ko.
Sur un NAS Synology, ceci se modifie dans Services de fichiers -> NFS -> Paramètres avancés
Toujours à propos de NAS Synology, une box Android y accédant en NFS requiert cette option :
Les permissions locales des fichiers sont également à vérifier ("lecture" pour "tout le monde" ).
Il est également possible de modifier le cache vidéo.
<advancedsettings>
<cache>
<buffermode>1</buffermode>
<memorysize>52428800</memorysize>
</cache>
</advancedsettings> |
Dans cet exemple, Kodi va mettre en cache 50 Mo (de contenu local/réseau), et la RAM libre devra être du triple, soit 150 Mo.
- 7.5 Décalage audio / vidéo
Il peut arriver que le son et l'image soient décalés, surtout en cas d'utilisation du passthrough.
Ceci peut se corriger en cours de lecture, en faisant 'OK' puis en choisissant le menu 'son' :
Une fois la correction apportée, il est possible d'en faire la valeur par défaut pour toutes les vidéos :
Il est également possible de régler le décalage son / image pour une fréquence précise, dans le fichier advancedsettings.xml.
Exemple avec un décalage de 175ms en mode 24p :
<video> <latency>
<delay>0</delay>
<refresh>
<min>23</min>
<max>24</max>
<delay>175</delay>
</refresh>
</latency
<video> |
- 7.6 Affichage des infos de lecture
Il est possible d'afficher, en cours de lecture, des informations de 'debug' (skipped frames, nombre de pistes audio, framerate, etc.)
Sous Kodi >= 17, ces informations sont réparties sur 2 écrans.
La touche 'o' / la commande 'PlayerProcessInfo' affiche ceci :
La commande 'CodecInfo' de Kodi 16 donne le même résultat.
Et la touche 'CTRL+SHIFT+o' (commande PlayerDebug) affiche cela :
En fonction de l'environnement où sont stockées les vidéos (NAS Synology, macOS, etc.), il peut être utile de masquer certains fichiers / répertoires.
Ceci se fait dans advancedsettings.xml :
<video>
<excludetvshowsfromscan>
<regexp>\@eaDir</regexp>
<regexp>\@eadir</regexp>
<regexp>\@EADIR</regexp>
<regexp>\.DS_Store</regexp>
<regexp>\#recycle</regexp>
<regexp>-trailer</regexp>
<regexp>[!-._ \\/]sample[-._ \\/]</regexp>
</excludetvshowsfromscan>
<excludefromscan>
<regexp>\@eaDir</regexp>
<regexp>\@eadir</regexp>
<regexp>\@EADIR</regexp>
<regexp>\.DS_Store</regexp>
<regexp>\#recycle</regexp>
<regexp>-trailer</regexp>
<regexp>[!-._ \\/]sample[-._ \\/]</regexp>
</excludefromscan>
<excludefromlisting>
<regexp>\@eaDir</regexp>
<regexp>\@eadir</regexp>
<regexp>\@EADIR</regexp>
<regexp>\.DS_Store</regexp>
<regexp>\#recycle</regexp>
<regexp>-trailer</regexp>
<regexp>[!-._ \\/]sample[-._ \\/]</regexp>
</excludefromlisting>
</video> |
8) INTERFAÇAGE DE KODI AVEC PLEX
- 8.1 Plex for Kodi (addon "officiel" )
Fin 2016, un addon officiellement supporté a vu le jour : Plex for Kodi
Il permet de lire des vidéos depuis un serveur Plex.
La différence entre les versions "free" et "premium" est détaillée ici.
Il existe un autre addon : (PlexBMC).
TODO : différences avec les 2 autres
- 8.3 PlexKodiConnect (PKC)
A la différence des 2 premiers addons, PlexKodiConnect :
- permet d'utiliser n'importe quel skin Kodi
- est compatible avec tous les autres addons, qui auront accès aux vidéos
- met en cache les images, pour rendre l'interface plus rapide.
Exemple d'utilisation de PlexKodiConnect avec le skin Titan :
PlexKodiConnect s'installe depuis un dépôt alternatif.