Installer Pinchflat avec Docker
Pinchflat

Installer Pinchflat avec Docker

Table des matières

GitHub - kieraneglin/pinchflat: Your next YouTube media manager
Your next YouTube media manager. Contribute to kieraneglin/pinchflat development by creating an account on GitHub.

Pour quelque raison que ce soit, vous pourriez avoir envie de télécharger des playlists ou le contenu d'une chaîne YouTube, mais tout faire à la main peut se révéler fastidieux.

Aujourd'hui nous allons parler de Pinchflat! Une application qui va, suivant comment elle est configurée, récupérer le contenu YouTube d'une playlist, d'une chaîne complète ou encore, de l'audio uniquement.

La récupération est très rapide, je m'étais laissé allé à télécharger une chaîne entière:

En tout cas pour sniffer des playlists, c'est vachement pratique! Ah, au fait, Pinchflat peut aussi détecter les nouveaux ajouts car il regarde, suivant le réglage de la fréquence, régulièrement s'il n'y a pas de nouveaux médias. La classe non?


⚡Caractéristiques

  • Autonome: un seul conteneur Docker sans dépendances externes.
  • Système de nommage puissant pour que le contenu soit stocké à l'endroit et de la manière que vous souhaitez.
  • Interface web facile à utiliser avec des préréglages pour vous permettre de démarrer immédiatement.
  • Prise en charge de premier ordre des applications de centre multimédia telles que Plex, Jellyfin et Kodi.
  • Prise en charge de l'envoi de flux RSS à votre application de podcast préférée. Documentation.
  • Télécharge automatiquement les nouveaux contenus des chaînes et des listes de lecture: utilise une nouvelle approche pour télécharger les nouveaux contenus plus rapidement que les autres applications.
  • Prise en charge du téléchargement de contenu audio.
  • Règles personnalisées pour la gestion des courts métrages YouTube et des diffusions en direct (livestreams).
  • Prise en charge d'Apprise pour les notifications.
  • Permet de retélécharger automatiquement les nouveaux médias après une période déterminée: cela permet d'améliorer la qualité de téléchargement des nouveaux contenus ou d'améliorer les balises SponsorBlock.
  • Option de suppression automatique des anciens contenus (documents).
  • Options avancées telles que la définition de dates limites et le filtrage par titre.
  • Fonctionnement autonome fiable.
  • Possibilité de transmettre des cookies à YouTube pour télécharger vos listes de lecture privées.
  • Intégration de Sponsorblock.

💾 L'installation

  1. Créez votre compose.yml dans le dossier où vous comptez installer Pinchflat:
sudo nano compose.yml
  1. Collez ça dedans en prenant soin d'adapter les ports et les volumes suivant votre configuration:
version: '3'
services:
  pinchflat:
    image: ghcr.io/kieraneglin/pinchflat:latest
    environment:
      - TZ=Europe/Brussels
      #- BASIC_AUTH_USERNAME=zarev
      #- BASIC_AUTH_PASSWORD=zarev
    ports:
      - '8945:8945'
    volumes:
      - ./config:/config
      - ./downloads:/downloads

Veillez à changer:

  • - TZ=Europe/Brussels => Remplacez Europe/Brussels par votre time zone.

Si vous désirez une fenêtre d'authentification, supprimer les # des deux lignes suivantes:

#- BASIC_AUTH_USERNAME=zarev
#- BASIC_AUTH_PASSWORD=zarev

Ce qui donne:

environment:
      - TZ=Europe/Brussels
      - BASIC_AUTH_USERNAME=zarev
      - BASIC_AUTH_PASSWORD=zarev

Veillez à changer:

  • - BASIC_AUTH_USERNAME=zarev => Remplacez zarev par votre nom d'utilisateur.
  • - BASIC_AUTH_PASSWORD=zarev => Remplacez zarev par un mot de passe fort.
  1. On va dépoyer l'application:
docker-compose up -d

ou avec docker-compose V2:

docker compose up -d
  1. Rendez-vous sur l'ip:port, suivant l'IP de votre serveur local et du port choisi, 8945 par défaut:
http://ip:8945/

ou votre domaine:

https://mondomaine.com

🔌 Première connexion

Lorsque vous lancez pour la première fois Pinchflat, vous allez devoir répondre à quelques petites question, rassurez-vous, rien n'est définitif après avoir complété ces questions, vous pourrez ajouter, modifier ou encore effacer ultérieurement les paramètres.

Pour commencer cliquez sur + New Media Profile:

Petite parenthèse, il y aura 4 modes de profile. Le profil choisi activera certains paramètres et pas d'autres.

  • Default => Conviendra pour la majorité des cas pour sauvegarder des vidéos YouTube.
  • Media Center => Adapté si vous comptez utiliser Jellyfin, Plex, Kodi pour lire les vidéos. Les fichiers seront nommées différemment, il y aura les miniatures,...
  • Music => Profil spécialisé pour le téléchargement de musique, il n'y aura par exemple, pas les sous titres comme il pourrait y en avoir pour une vidéo.
  • Archiving => Aura tendance à choisir des paramètres pour avoir la meilleure qualité, bien vérifier car avec ce paramètre Pinchflat aura tendance à choper du 4K.

Pour chaque profil je vous invite à faire un tour des paramètres pour vérifier que cela vous convienne. Dans notre exemple on va prendre le profil Music pour télécharger une playslit. Encore une fois, tout est éditable par après.

Vous devez donc sélectionner Music et cliquez, très important, sur Load Preset:

Descendez un peu la page et cliquez sur Save Media profile:

Maintenant Pinchflart va vous demander de choisir la source. La source correspond à ce qui doit-être pris sur YouTube, pour faire simple. Cela peut-être une chaîne complète, une playlist. Je vais donc ajouter une playlist à moi.

Cliquez sur + New Source:

Ce qui vous amène ici:

  • Source URL => Ajoutez l'URL de la chaîne ou la playlist.
  • Custom Name => Vous pouvez donner un petit nom à votre source.

Quand vous avez terminé, cliquez Save Source:

Vous voici à la dernière étape où il suffira de cliquer sur Let's Go 🚀 !

On peut constater qu'il est déjà occupé à récupérer toute la playlist:

Après quelques secondes supplémentaires:

Vous pouvez voir les tâches en cours ici:


🔔 Notifications

Pour configurer les notifications, rendez-vous dans Config, Settings:

Vous allez arriver ici:

Il suffira d'indiquer dans Apprise Server, ce que vous voulez utiliser comme système de notification.

Avec Apprise, vous avez tout un tas de possibilité pour être notifié:

Home
Apprise - Push Notifications that work with just about every platform! - caronc/apprise

Je vais en prendre une populaire, Gotify! Pour créer une application et sa clé API, je vous renvoie vers ce tutoriel:

Installer Gotify avec Docker
Tutoriel d’installation de Gotify, un serveur simple pour envoyer et recevoir messages.

Les connexions sécurisées (via https) doivent être référencées en utilisant gotifys:// tandis que les connexions non sécurisées (via http) doivent être référencées via gotify://.

Avec HTTPS:

gotifys://gotify.mondomaine.com/AJBbTWN1dTlsB5p

Et sans HTTPS:

gotify://gotify.mondomaine.com/AJBbTWN1dTlsB5p

Si vous vous connectez à Gotify avec une ip:port alors cela devra avoir cette forme:

gotifys://192.168.1.154:4748/AJBbTWN1dTlsB5p

Donc une fois arrivé ici, il faudra entrer cette information dans Apprise Server et cliquer sur Send Test pour tester le bon fonctionnement:

Ce qui donne:


🎱 Astuce

Libre à vous de monter le(s) dossier(s) de réception dans Jellyfin, Navidrome, Plex, pour plus de confort et ainsi profiter de vos fichiers sauvegardés.

zarev

->.<-
🐧 Passionné de self-hosting, je partage ce que je connais et me nourris des connaissances des bonnes âmes qui partagent avec moi. Soutenons l'utilisation des apps open source et leurs développeurs.