{"id":405,"date":"2026-05-18T16:00:00","date_gmt":"2026-05-18T15:00:00","guid":{"rendered":"https:\/\/chainesteve.be\/?p=405"},"modified":"2026-05-18T17:03:30","modified_gmt":"2026-05-18T16:03:30","slug":"hp-prodesk-400-g4-sff-batocera-htpc-retrogaming","status":"publish","type":"post","link":"https:\/\/chainesteve.be\/index.php\/2026\/05\/18\/hp-prodesk-400-g4-sff-batocera-htpc-retrogaming\/","title":{"rendered":"HTPC Gaming DIY : Films 4K H265 (nvdec) &amp; R\u00e9tro-Upscale (Tuto Complet Batocera)"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Comment transformer un HP ProDesk 400 G4 SFF en PC de salon sous Batocera : multim\u00e9dia avec Kodi, lecture H.265 via mpv, \u00e9mulation r\u00e9tro, Steam et montage d\u2019un NAS.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Introduction<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Peut-on transformer un vieux PC de bureau d\u2019occasion en vraie machine de salon sous Linux ?<br>C\u2019est exactement l\u2019id\u00e9e de ce projet.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dans ce guide, je pars d\u2019un <strong>HP ProDesk 400 G4 SFF<\/strong> \u00e9quip\u00e9 d\u2019un <strong>Intel Core i7-7700<\/strong>, de <strong>16 Go de RAM<\/strong>, d\u2019un <strong>SSD SATA<\/strong>, et d\u2019une <strong>NVIDIA Quadro P1000<\/strong> en option. Sur <strong>mon exemplaire<\/strong>, il n\u2019y a pas de port NVMe exploitable pour le stockage, donc je reste volontairement sur une configuration simple et accessible.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">L\u2019objectif est double :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>utiliser cette machine comme <strong>lecteur multim\u00e9dia<\/strong> pour lire une biblioth\u00e8que vid\u00e9o locale ;<\/li>\n\n\n\n<li>en faire aussi une <strong>petite console de salon<\/strong> pour l\u2019\u00e9mulation r\u00e9tro et quelques jeux PC en 1080p.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">La vid\u00e9o compl\u00e8te est disponible ici :<br><\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/youtu.be\/qnswZNTXyEA\n<\/div><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Cet article s\u2019adresse surtout \u00e0 celles et ceux qui :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>viennent de Windows ;<\/li>\n\n\n\n<li>d\u00e9butent totalement sous Linux ;<\/li>\n\n\n\n<li>veulent une solution simple, stable et claire ;<\/li>\n\n\n\n<li>cherchent un guide durable, pas une info jetable.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Pourquoi partir sur Batocera ?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Batocera<\/strong> est une distribution Linux orient\u00e9e jeu et salon.<br>Une <strong>distribution Linux<\/strong>, c\u2019est simplement une version de Linux d\u00e9j\u00e0 pr\u00e9par\u00e9e avec ses outils, ses r\u00e9glages et son interface. Un peu comme une \u201c\u00e9dition\u201d pr\u00eate \u00e0 l\u2019emploi.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Batocera a plusieurs avantages pour ce projet :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>il d\u00e9marre vite ;<\/li>\n\n\n\n<li>il se pilote facilement \u00e0 la manette ;<\/li>\n\n\n\n<li>il int\u00e8gre d\u00e9j\u00e0 <strong>Kodi<\/strong> pour la partie multim\u00e9dia ;<\/li>\n\n\n\n<li>il peut aussi accueillir <strong>Steam<\/strong> sur les machines <strong>x86_64<\/strong> ;<\/li>\n\n\n\n<li>il prend en charge <strong>Moonlight<\/strong> pour le streaming local depuis un autre PC. (<a href=\"https:\/\/wiki.batocera.org\/kodi?utm_source=chatgpt.com\">Batocera<\/a>)<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Kodi<\/strong>, de son c\u00f4t\u00e9, est un <strong>media center<\/strong>.<br>En clair : une interface pens\u00e9e pour organiser et lire des films, s\u00e9ries, musiques ou fichiers locaux, confortablement depuis le canap\u00e9. Batocera le propose d\u00e9j\u00e0 pr\u00e9install\u00e9 et configur\u00e9 pour le support manette sur les plateformes compatibles. (<a href=\"https:\/\/wiki.batocera.org\/kodi?utm_source=chatgpt.com\">Batocera<\/a>)<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Le mat\u00e9riel utilis\u00e9 dans ce projet<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">La base ici, c\u2019est donc :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>HP ProDesk 400 G4 SFF<\/strong><\/li>\n\n\n\n<li><strong>Intel Core i7-7700<\/strong><\/li>\n\n\n\n<li><strong>16 Go de RAM<\/strong><\/li>\n\n\n\n<li><strong>SSD SATA<\/strong><\/li>\n\n\n\n<li><strong>NVIDIA Quadro P1000<\/strong> en option<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Le format <strong>SFF<\/strong> veut dire <strong>Small Form Factor<\/strong>.<br>En fran\u00e7ais : un petit bo\u00eetier de bureau compact.<br>C\u2019est pratique, discret, facile \u00e0 recycler\u2026 mais cela limite aussi le choix des cartes graphiques.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dans ce format, on vise en g\u00e9n\u00e9ral des cartes :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>low profile<\/strong> ;<\/li>\n\n\n\n<li>sobres en consommation ;<\/li>\n\n\n\n<li>sans connecteur d\u2019alimentation additionnel si possible.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">C\u2019est pour cela qu\u2019une <strong>Quadro P1000<\/strong>, une <strong>GTX 1050 Ti Low Profile<\/strong> ou m\u00eame une <strong>GT 1030<\/strong> peuvent avoir du sens selon le budget et l\u2019objectif. Batocera rappelle d\u2019ailleurs qu\u2019une combinaison de type <strong>Intel i5 4xxx + GT 1030<\/strong> reste d\u00e9j\u00e0 int\u00e9ressante pour l\u2019\u00e9mulation jusqu\u2019\u00e0 la PS2 \u00e0 co\u00fbt raisonnable. (<a href=\"https:\/\/wiki.batocera.org\/supported_pc_hardware\">Batocera<\/a>)<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Pour les d\u00e9butants : les mots techniques \u00e0 conna\u00eetre<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">CPU<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Le <strong>CPU<\/strong>, c\u2019est le processeur principal.<br>C\u2019est le \u201ccerveau g\u00e9n\u00e9ral\u201d du PC.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">GPU<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Le <strong>GPU<\/strong>, c\u2019est la puce graphique.<br>C\u2019est elle qui s\u2019occupe de l\u2019affichage, de la 3D, et parfois aussi du d\u00e9codage vid\u00e9o mat\u00e9riel.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">H.265 \/ HEVC<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Le <strong>H.265<\/strong>, aussi appel\u00e9 <strong>HEVC<\/strong>, est un format vid\u00e9o moderne.<br>Il compresse tr\u00e8s bien la 4K, mais demande plus de puissance \u00e0 d\u00e9coder que de vieux formats.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">HDR<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Le <strong>HDR<\/strong> am\u00e9liore la plage dynamique de l\u2019image : plus de lumi\u00e8re, plus de profondeur, plus de nuances.<br>Mais il faut que toute la cha\u00eene suive : lecteur, pilote, syst\u00e8me, c\u00e2ble, \u00e9cran ou TV.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Tone Mapping<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Le <strong>tone mapping<\/strong>, c\u2019est une adaptation de l\u2019image HDR vers un affichage SDR plus classique.<br>En gros, on ne garde pas le \u201cvrai HDR\u201d jusqu\u2019\u00e0 la TV, mais on essaye de conserver une image agr\u00e9able et \u00e9quilibr\u00e9e.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">SSH<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>SSH<\/strong> permet de contr\u00f4ler la machine \u00e0 distance en ligne de commande.<br>C\u2019est comme ouvrir un terminal Batocera depuis un autre PC, sans brancher clavier et \u00e9cran dessus.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">X11<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>X11<\/strong> est un ancien syst\u00e8me d\u2019affichage sous Linux.<br>Tu peux le voir comme le \u201cgestionnaire d\u2019\u00e9cran\u201d qui permet aux applications graphiques de s\u2019afficher.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Flatpak<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Flatpak<\/strong> est un format de paquets Linux portable.<br>En simplifiant : c\u2019est une fa\u00e7on d\u2019installer des applications sans d\u00e9pendre totalement du syst\u00e8me principal. Batocera l\u2019utilise notamment pour certains usages comme Steam sur x86_64. (<a href=\"https:\/\/wiki.batocera.org\/systems%3Aflatpak?do=export_pdf&amp;rev=1656054416&amp;utm_source=chatgpt.com\">Batocera<\/a>)<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u00c9tape 1 : forcer le pilote NVIDIA si n\u00e9cessaire<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Sur Batocera, les pilotes NVIDIA officiels existent d\u00e9j\u00e0 pour les cartes compatibles, mais selon les versions et les cas, il peut \u00eatre utile de <strong>forcer leur utilisation<\/strong> dans le fichier de d\u00e9marrage. La documentation Batocera indique aussi qu\u2019on peut v\u00e9rifier apr\u00e8s coup si le syst\u00e8me utilise bien <strong>NVIDIA<\/strong> ou au contraire <strong>MESA<\/strong> via <strong>Main Menu \u2192 System Settings \u2192 Information<\/strong>. (<a href=\"https:\/\/wiki.batocera.org\/supported_pc_hardware\">Batocera<\/a>)<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Avant de commencer<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Batocera recommande d\u2019utiliser <strong>SSH<\/strong> depuis un autre ordinateur du m\u00eame r\u00e9seau local.<br>SSH est activ\u00e9 par d\u00e9faut dans la documentation consult\u00e9e, le nom d\u2019utilisateur est <strong>root<\/strong>, et le mot de passe par d\u00e9faut est <strong>linux<\/strong> tant qu\u2019il n\u2019a pas \u00e9t\u00e9 chang\u00e9. Batocera rappelle aussi qu\u2019il ne faut pas exposer la machine \u00e0 un r\u00e9seau public comme si c\u2019\u00e9tait un serveur s\u00e9curis\u00e9. (<a href=\"https:\/\/wiki.batocera.org\/access_the_batocera_via_ssh?do=export_pdf&amp;rev=1678801479\">Batocera<\/a>)<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Commandes \u00e0 utiliser<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>mount -o remount,rw \/boot\nnano \/boot\/batocera-boot.conf\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Dans ce fichier, cherche cette ligne :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#nvidia-driver=true\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Supprime simplement le <code>#<\/code> en d\u00e9but de ligne pour obtenir :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>nvidia-driver=true\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Enregistre ensuite le fichier, puis red\u00e9marre la machine.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Pourquoi cette \u00e9tape ?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Parce que sans le bon pilote, Batocera peut retomber sur <strong>Nouveau<\/strong> ou sur une pile graphique moins performante.<br>Ce n\u2019est pas forc\u00e9ment dramatique pour de la bureautique, mais pour un projet multim\u00e9dia et jeu, on pr\u00e9f\u00e8re que la carte NVIDIA soit bien exploit\u00e9e. (<a href=\"https:\/\/wiki.batocera.org\/supported_pc_hardware\">Batocera<\/a>)<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Astuce<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Apr\u00e8s red\u00e9marrage, v\u00e9rifie dans :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Main Menu \u2192 System Settings \u2192 Information<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Si la ligne OpenGL mentionne <strong>NVIDIA<\/strong>, c\u2019est bon.<br>Si elle mentionne <strong>MESA<\/strong>, le pilote propri\u00e9taire n\u2019est probablement pas actif. (<a href=\"https:\/\/wiki.batocera.org\/supported_pc_hardware\">Batocera<\/a>)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u26a0\ufe0f <strong>Important<\/strong><br>Je ne recommande pas d\u2019ajouter ici d\u2019autres r\u00e9glages non test\u00e9s \u201cau hasard\u201d.<br>Mieux vaut une petite modification claire qu\u2019un fichier de boot transform\u00e9 en champ de mines.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u00c9tape 2 : utiliser Kodi pour la m\u00e9diath\u00e8que<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Batocera int\u00e8gre d\u00e9j\u00e0 Kodi et le configure pour la navigation \u00e0 la manette sur les plateformes prises en charge.<br>C\u2019est ce qui en fait une base int\u00e9ressante pour un HTPC simple : tu gardes une interface salon, sans te battre avec un bureau Windows ou une usine \u00e0 gaz. (<a href=\"https:\/\/wiki.batocera.org\/kodi?utm_source=chatgpt.com\">Batocera<\/a>)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dans mon cas, Kodi sert \u00e0 :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>parcourir la biblioth\u00e8que locale ;<\/li>\n\n\n\n<li>lancer les films depuis le canap\u00e9 ;<\/li>\n\n\n\n<li>garder une interface propre et claire.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u00c9tape 3 : contourner la limite H.265 avec mpv<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">C\u2019est ici qu\u2019on entre dans le c\u0153ur du compromis.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Sous Linux, Kodi expose surtout <strong>VDPAU<\/strong> c\u00f4t\u00e9 NVIDIA dans ses r\u00e9glages vid\u00e9o. Le wiki officiel de Kodi documente bien <strong>\u201cAllow hardware acceleration &#8211; VDPAU\u201d<\/strong> comme option Linux\/NVIDIA. Mais dans ce projet pr\u00e9cis, la lecture H.265\/HEVC lourde n\u2019est pas id\u00e9ale avec le lecteur interne seul. (<a href=\"https:\/\/kodi.wiki\/view\/Settings\/Player\/Videos?utm_source=chatgpt.com\">kodi.wiki<\/a>)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">La solution retenue ici consiste \u00e0 :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>garder <strong>Kodi<\/strong> comme interface de m\u00e9diath\u00e8que ;<\/li>\n\n\n\n<li>d\u00e9l\u00e9guer certains fichiers lourds \u00e0 <strong>mpv<\/strong> ;<\/li>\n\n\n\n<li>utiliser un fichier de configuration nomm\u00e9 <strong><code>playercorefactory.xml<\/code><\/strong>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Kodi documente officiellement cette m\u00e9thode de <strong>lecteur externe<\/strong> avec <code>playercorefactory.xml<\/code>, y compris avec un exemple utilisant <strong>mpv<\/strong> sous GNU\/Linux. (<a href=\"https:\/\/kodi.wiki\/view\/External_players\">kodi.wiki<\/a>)<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Concr\u00e8tement, qu\u2019est-ce que cela change ?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Kodi reste ton \u201cmenu\u201d.<br>Mais quand tu lances un fichier H.265 ou 4K, il peut transmettre la lecture \u00e0 <strong>mpv<\/strong>, qui est plus int\u00e9ressant ici pour exploiter le d\u00e9codage mat\u00e9riel NVIDIA.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\ud83d\udca1 <strong>\u00c0 retenir<\/strong><br>Ce n\u2019est pas une simple case \u00e0 cocher dans l\u2019interface.<br>C\u2019est une <strong>petite bidouille propre<\/strong>, utile, mais qui reste une personnalisation avanc\u00e9e.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u00c9tape 4 : cr\u00e9er le fichier <code>playercorefactory.xml<\/code><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Sur Linux, Kodi lit ce fichier depuis son dossier <strong>userdata<\/strong>. Le wiki Kodi documente ce principe pour GNU\/Linux, avec le chemin g\u00e9n\u00e9rique <code>~\/.kodi\/userdata\/playercorefactory.xml<\/code>. Dans mon installation Batocera, j\u2019utilise le chemin ci-dessous. (<a href=\"https:\/\/kodi.wiki\/view\/External_players?utm_source=chatgpt.com\">kodi.wiki<\/a>)<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Commande<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>nano \/userdata\/system\/.kodi\/userdata\/playercorefactory.xml\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Contenu propos\u00e9<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;playercorefactory&gt;\n  &lt;players&gt;\n    &lt;player name=\"mpv_nvdec\" type=\"ExternalPlayer\" audio=\"false\" video=\"true\"&gt;\n      &lt;filename&gt;\/usr\/bin\/mpv&lt;\/filename&gt;\n      &lt;args&gt;--hwdec=nvdec --fs \"{1}\"&lt;\/args&gt;\n      &lt;hidexbmc&gt;true&lt;\/hidexbmc&gt;\n      &lt;hideconsole&gt;true&lt;\/hideconsole&gt;\n    &lt;\/player&gt;\n  &lt;\/players&gt;\n  &lt;rules action=\"prepend\"&gt;\n    &lt;rule videocodec=\"hevc\" player=\"mpv_nvdec\"\/&gt;\n    &lt;rule videoresolution=\"2160\" player=\"mpv_nvdec\"\/&gt;\n  &lt;\/rules&gt;\n&lt;\/playercorefactory&gt;\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Ce que fait ce fichier<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Il dit \u00e0 Kodi :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u201csi la vid\u00e9o est en <strong>HEVC\/H.265<\/strong>\u201d<\/li>\n\n\n\n<li>ou \u201csi elle est en <strong>4K<\/strong>\u201d<\/li>\n\n\n\n<li>alors \u201cutilise <strong>mpv<\/strong> au lieu du lecteur interne\u201d.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Le principe du lecteur externe est officiellement support\u00e9 par Kodi. En revanche, comme toujours avec ce type de personnalisation, il peut y avoir des diff\u00e9rences selon la version de Kodi, la version de Batocera ou ton propre montage r\u00e9seau. (<a href=\"https:\/\/kodi.wiki\/view\/External_players\">kodi.wiki<\/a>)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u26a0\ufe0f <strong>Prudence<\/strong><br>Si cela ne fonctionne pas chez toi du premier coup, v\u00e9rifie :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>que <code>mpv<\/code> est bien pr\u00e9sent ;<\/li>\n\n\n\n<li>que le chemin du fichier XML est correct ;<\/li>\n\n\n\n<li>que ton fichier est bien enregistr\u00e9 en <strong>LF<\/strong> et pas en <strong>CRLF<\/strong> si tu l\u2019as \u00e9dit\u00e9 sous Windows. Batocera insiste justement sur ce point pour ses scripts et fichiers texte. (<a href=\"https:\/\/www.wiki.batocera.org\/scripting_services_rules_examples?do=export_pdf&amp;rev=1728868746\">Batocera<\/a>)<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u00c9tape 5 : comprendre le compromis HDR<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Je pr\u00e9f\u00e8re \u00eatre clair :<br>avec cette configuration, je ne cherche pas \u00e0 vendre du r\u00eave en mode \u201cHDR parfait sur tous les plans\u201d.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dans ce projet, l\u2019id\u00e9e est plut\u00f4t la suivante :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>pas de promesse magique sur le <strong>passthrough HDR natif<\/strong> ;<\/li>\n\n\n\n<li>en revanche, un <strong>compromis stable<\/strong> ;<\/li>\n\n\n\n<li>une image agr\u00e9able gr\u00e2ce au <strong>tone mapping<\/strong> ;<\/li>\n\n\n\n<li>un syst\u00e8me simple, coh\u00e9rent et pilotable depuis le canap\u00e9.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Autrement dit :<br>je pr\u00e9f\u00e8re une machine stable, lisible et agr\u00e9able \u00e0 utiliser au quotidien, plut\u00f4t qu\u2019un montage plus fragile juste pour faire appara\u00eetre un logo HDR sur la t\u00e9l\u00e9vision.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u00c9tape 6 : monter un dossier r\u00e9seau pour les films<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Si tes films sont stock\u00e9s sur un <strong>NAS<\/strong>, tu peux les monter localement dans Batocera.<br>Un <strong>NAS<\/strong>, c\u2019est simplement un stockage sur le r\u00e9seau : un \u201cdisque dur accessible depuis plusieurs appareils de la maison\u201d.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Exemple de montage manuel<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>mkdir -p \/userdata\/kodi\/NasMedia\nmount -t cifs \/\/192.168.1.10\/Media \/userdata\/kodi\/NasMedia -o username=steve,password=diabolo\nls \/userdata\/kodi\/NasMedia\/Movies\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">\u00c0 quoi sert cette \u00e9tape ?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Elle permet de pr\u00e9senter le partage r\u00e9seau comme un <strong>dossier local<\/strong>.<br>Et \u00e7a, c\u2019est utile pour \u00e9viter certaines limites lorsqu\u2019on utilise un <strong>lecteur externe<\/strong> avec Kodi. Le wiki Kodi pr\u00e9cise notamment que les lecteurs externes peuvent \u00eatre d\u00e9licats avec certaines sources r\u00e9seau directes, et qu\u2019un montage par le syst\u00e8me peut \u00eatre pr\u00e9f\u00e9rable. (<a href=\"https:\/\/kodi.wiki\/view\/External_players\">kodi.wiki<\/a>)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u26a0\ufe0f <strong>Attention au mot de passe<\/strong><br>La documentation Batocera rappelle qu\u2019avec les montages <strong>CIFS\/SMB<\/strong>, les caract\u00e8res sp\u00e9ciaux dans le mot de passe doivent parfois \u00eatre \u00e9chapp\u00e9s correctement. (<a href=\"https:\/\/wiki.batocera.org\/store_games_on_a_nas?do=export_pdf\">Batocera<\/a>)<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u00c9tape 7 : automatiser ce montage au d\u00e9marrage<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Ici, je te conseille de <strong>moderniser l\u00e9g\u00e8rement la m\u00e9thode<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Oui, <code>custom.sh<\/code> existe encore.<br>Mais Batocera indique clairement que <strong><code>custom.sh<\/code> est d\u00e9pr\u00e9ci\u00e9 depuis la v38<\/strong> et que la m\u00e9thode recommand\u00e9e d\u00e9sormais est celle des <strong>services utilisateur<\/strong> dans <code>\/userdata\/system\/services\/<\/code>. (<a href=\"https:\/\/wiki.batocera.org\/launch_a_script\">Batocera<\/a>)<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">La m\u00e9thode recommand\u00e9e aujourd\u2019hui<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Cr\u00e9e un fichier de service, <strong>sans extension <code>.sh<\/code><\/strong>, par exemple :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>nano \/userdata\/system\/services\/mountnas\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Puis colle ceci :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#!\/bin\/bash\n\ncase \"$1\" in\n  start)\n    mkdir -p \/userdata\/kodi\/NasMedia\n    mount -t cifs \/\/ipdevotrenas\/r\u00e9pertoiredevosm\u00e9dias \/userdata\/kodi\/NasMedia -o username=nomutilisateur,password=motdepasse\n    ;;\n  stop)\n    umount \/userdata\/kodi\/NasMedia\n    ;;\n  restart|reload)\n    ;;\n  *)\n    echo \"Usage: $0 {start|stop|restart}\"\n    exit 1\n    ;;\nesac\n\nexit 0\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Ensuite :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>chmod +x \/userdata\/system\/services\/mountnas\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Red\u00e9marre Batocera.<br>Le service devrait ensuite appara\u00eetre dans :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Main Menu \u2192 System Settings \u2192 Services<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Tu pourras alors l\u2019activer proprement depuis l\u2019interface. Batocera documente bien ce fonctionnement pour les services utilisateur, ainsi que le dossier \u00e0 utiliser. (<a href=\"https:\/\/www.wiki.batocera.org\/scripting_services_rules_examples?do=export_pdf&amp;rev=1728868746\">Batocera<\/a>)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\ud83d\udca1 <strong>Alternative avanc\u00e9e<\/strong><br>Batocera documente aussi une m\u00e9canique nomm\u00e9e <strong><code>sharenetwork_cmd#<\/code><\/strong>, utile pour des cas plus complexes. Pour un simple dossier multim\u00e9dia, un petit service reste souvent plus lisible pour un d\u00e9butant. (<a href=\"https:\/\/wiki.batocera.org\/store_games_on_a_nas?do=export_pdf\">Batocera<\/a>)<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u00c9tape 8 : et pour le jeu dans tout \u00e7a ?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Une fois la partie multim\u00e9dia en place, la machine garde tout son int\u00e9r\u00eat c\u00f4t\u00e9 jeu.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u00c9mulation<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Avec un i7-7700 et une carte comme la P1000, on peut viser confortablement :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>les anciennes g\u00e9n\u00e9rations ;<\/li>\n\n\n\n<li>un peu d\u2019upscale en 1080p ;<\/li>\n\n\n\n<li>et, en restant raisonnable, quelques \u00e9carts sur des g\u00e9n\u00e9rations plus lourdes.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Le point important, c\u2019est de rester honn\u00eate :<br>on ne parle pas d\u2019un monstre de puissance, mais d\u2019un <strong>excellent projet de recyclage intelligent<\/strong>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Steam<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Batocera prend aussi en charge <strong>Steam<\/strong> sur les machines <strong>x86_64<\/strong>. La documentation pr\u00e9cise qu\u2019il passe par <strong>Flatpak<\/strong> et qu\u2019un <strong>clavier et une souris<\/strong> sont requis pour l\u2019installation initiale. (<a href=\"https:\/\/wiki.batocera.org\/systems%3Asteam?do=export_pdf&amp;rev=1633176131&amp;utm_source=chatgpt.com\">Batocera<\/a>)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Cela permet d\u2019aller plus loin que l\u2019\u00e9mulation et de lancer quelques jeux PC l\u00e9gers ou moyennement exigeants depuis le salon.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Moonlight et Sunshine<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Autre possibilit\u00e9 : utiliser la machine comme client de <strong>streaming local<\/strong>.<br>Batocera prend en charge <strong>Moonlight<\/strong>, qui permet de streamer des jeux depuis un autre PC du r\u00e9seau. C\u2019est une excellente piste si ton \u201cgros PC\u201d reste dans une autre pi\u00e8ce. (<a href=\"https:\/\/wiki.batocera.org\/systems%3Amoonlight?utm_source=chatgpt.com\">Batocera<\/a>)<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Pour les d\u00e9butants : ce qu\u2019il faut retenir avant de vous lancer<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Si tout cela vous para\u00eet beaucoup, retenez simplement ceci :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>vous n\u2019avez pas besoin de tout comprendre d\u2019un coup ;<\/li>\n\n\n\n<li>ce projet peut se faire <strong>par \u00e9tapes<\/strong> ;<\/li>\n\n\n\n<li>le plus important est d\u2019avoir une machine stable avant de chercher la perfection.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Tu peux tr\u00e8s bien commencer avec :<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Batocera seul ;<\/li>\n\n\n\n<li>Kodi pour la lecture simple ;<\/li>\n\n\n\n<li>la carte graphique plus tard ;<\/li>\n\n\n\n<li>le lecteur externe mpv dans un second temps ;<\/li>\n\n\n\n<li>le NAS encore apr\u00e8s.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\u274c <strong>Erreur classique \u00e0 \u00e9viter<\/strong><br>Vouloir tout faire en une soir\u00e9e : pilote, Kodi, r\u00e9seau, Steam, HDR, manettes, scraping, montage NAS\u2026<br>C\u2019est le meilleur moyen de se perdre.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u2714\ufe0f <strong>Bonne m\u00e9thode<\/strong><br>Teste une brique \u00e0 la fois.<br>Quand une \u00e9tape fonctionne, passe \u00e0 la suivante.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Ce projet montre qu\u2019un <strong>vieux PC de bureau d\u2019occasion<\/strong> peut devenir bien plus qu\u2019une machine de compta fatigu\u00e9e.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Avec <strong>Batocera<\/strong>, <strong>Kodi<\/strong>, un peu de m\u00e9thode et une carte graphique adapt\u00e9e au format <strong>SFF<\/strong>, on peut obtenir :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>un <strong>lecteur multim\u00e9dia de salon<\/strong> ;<\/li>\n\n\n\n<li>une <strong>petite machine d\u2019\u00e9mulation<\/strong> ;<\/li>\n\n\n\n<li>un acc\u00e8s \u00e0 <strong>Steam<\/strong> ;<\/li>\n\n\n\n<li>et m\u00eame un client de <strong>streaming local<\/strong> pour les gros jeux. (<a href=\"https:\/\/wiki.batocera.org\/kodi?utm_source=chatgpt.com\">Batocera<\/a>)<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Ce n\u2019est pas la solution parfaite universelle.<br>Ce n\u2019est pas non plus un HTPC haut de gamme sans compromis.<br>Mais c\u2019est une solution <strong>coh\u00e9rente, accessible, r\u00e9parable, et franchement amusante \u00e0 monter<\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/youtu.be\/qnswZNTXyEA\n<\/div><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Si tu le souhaites, je peux maintenant te faire la <strong>version encore plus pr\u00eate pour WordPress<\/strong>, avec :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>un <strong>chap\u00f4 plus journalistique<\/strong>,<\/li>\n\n\n\n<li>des <strong>encadr\u00e9s \u201castuce \/ attention \/ erreur fr\u00e9quente\u201d d\u00e9j\u00e0 format\u00e9s<\/strong>,<\/li>\n\n\n\n<li>et une <strong>mise en page Gutenberg<\/strong> facile \u00e0 coller bloc par bloc.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Comment transformer un HP ProDesk 400 G4 SFF en PC de salon sous Batocera : multim\u00e9dia avec Kodi, lecture H.265 via mpv, \u00e9mulation r\u00e9tro, Steam et montage d\u2019un NAS. Introduction Peut-on transformer un vieux PC de bureau d\u2019occasion en vraie machine de salon sous Linux ?C\u2019est exactement l\u2019id\u00e9e de ce projet. Dans ce guide, je &#8230; <a title=\"HTPC Gaming DIY : Films 4K H265 (nvdec) &amp; R\u00e9tro-Upscale (Tuto Complet Batocera)\" class=\"read-more\" href=\"https:\/\/chainesteve.be\/index.php\/2026\/05\/18\/hp-prodesk-400-g4-sff-batocera-htpc-retrogaming\/\" aria-label=\"Read more about HTPC Gaming DIY : Films 4K H265 (nvdec) &amp; R\u00e9tro-Upscale (Tuto Complet Batocera)\">Lire la suite<\/a><\/p>\n","protected":false},"author":1,"featured_media":416,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[14,15],"tags":[],"class_list":["post-405","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-medias-streaming","category-retrogaming-gaming"],"_links":{"self":[{"href":"https:\/\/chainesteve.be\/index.php\/wp-json\/wp\/v2\/posts\/405","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/chainesteve.be\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/chainesteve.be\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/chainesteve.be\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/chainesteve.be\/index.php\/wp-json\/wp\/v2\/comments?post=405"}],"version-history":[{"count":3,"href":"https:\/\/chainesteve.be\/index.php\/wp-json\/wp\/v2\/posts\/405\/revisions"}],"predecessor-version":[{"id":417,"href":"https:\/\/chainesteve.be\/index.php\/wp-json\/wp\/v2\/posts\/405\/revisions\/417"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/chainesteve.be\/index.php\/wp-json\/wp\/v2\/media\/416"}],"wp:attachment":[{"href":"https:\/\/chainesteve.be\/index.php\/wp-json\/wp\/v2\/media?parent=405"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/chainesteve.be\/index.php\/wp-json\/wp\/v2\/categories?post=405"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/chainesteve.be\/index.php\/wp-json\/wp\/v2\/tags?post=405"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}