Vue normale

Reçu aujourd’hui — 13 novembre 2025

Codes de Shinobi Reborn pour novembre 2025 : débloquez des récompenses exclusives !

13 novembre 2025 à 15:24

Mise à jour : 13 novembre 2025 Des nouvelles excitantes pour les fans de Naruto ! Le monde de Shinobi Reborn vous invite à participer aux passionnants examens Chunin. Si vous êtes aussi passionné par cet arc que moi, c’est le moment parfait pour plonger dans le jeu et commencer votre aventure. Mais avant de […]

Le post Codes de Shinobi Reborn pour novembre 2025 : débloquez des récompenses exclusives ! est apparu en premier sur Moyens I/O.

Reçu hier — 12 novembre 2025

Test du Hisense HT Saturn : et si le vrai home-cinéma sans fil ne venait pas de Sony ni de Samsung ?

12 novembre 2025 à 17:34

Avec son architecture quadriphonique et sa configuration sans fil, le Hisense HT Saturn promet une immersion sonore à 360 degrés dans une formule compacte et ultra simple à installer. Misant sur la collaboration avec Devialet pour le réglage acoustique, ce système 4.1.2 veut proposer des effets Atmos spectaculaires, le tout à un prix maîtrisé. En voici notre test complet.
 [Lire la suite]

Tous nos bons plans directement sur WhatsApp. Rejoignez Frandroid Bons Plans, zéro spam garanti.

Reçu — 9 novembre 2025

La quête de l’amulette de Fisch Varn : Trouvez tous les emplacements des lettres Léviathan

9 novembre 2025 à 06:16

Pour invoquer la piscine Leviathan, vous devez d’abord assembler l’amulette, et obtenir le fragment d’amulette de Varn est essentiel. Vous pouvez acquérir ce fragment en interagissant avec les lettres Leviathan dispersées dans le repaire des cultistes. Dans ce guide, nous révélerons les emplacements de ces lettres Leviathan pour vous aider à compléter la quête du […]

Le post La quête de l’amulette de Fisch Varn : Trouvez tous les emplacements des lettres Léviathan est apparu en premier sur Moyens I/O.

Reçu — 30 octobre 2025
Reçu — 27 octobre 2025
Reçu — 2 septembre 2025

MiniVid : indexage, lecture, tags et favoris pour vos vidéos locales

Par :Aerya
2 septembre 2025 à 22:57

Il y a quelque temps on m’a demandé si je connaissais un agrégateur et lecteur de vidéos auto-hébergé. Après avoir parlé des classiques Plex, Emby, Jellyfin, Kodi, j’ai compris que c’était comme prendre un tank pour aller chercher le pain… vu qu’il s’agissait d’avoir une interface de lecture de vidéos X.

Le fait est que je n’ai rien trouvé de probant, simple, assez récent, puis ça m’a saoulé. J’ai donc créé MiniVid, présenté ici et dont le code est publié sur GitHub !

Bien évidemment, ça s’adapte parfaitement à d’autres vidéos comme des clips, documentaires, téléchargements YouTube, Twitch etc.


MàJ du 05.09.25 : j’ai publié le Docker sur GitHub, y’a plus à build localement, vous pouvez utiliser ghcr.io/aerya/minivid:latest

MàJ du 08.09.25 : j’ai ajouté un script Windows-MiniVid.cmd
– Il installera si nécessaire Docker Desktop sur la machine,

  • – Guidage complet pour la configuration de MiniVid (édition complète disponible),
  • – Ajout de dossiers locaux comme distants (SMB/CIFS avec ou sans user:pwd).
minivid windows
minivid1
minivid4
minivid2
minivid3
📂 Navigation par dossiers
Accédez à vos vidéos avec une arborescence claire.

🔖 Tags automatiques extraits des noms de fichiers
Tags globaux par dossier
Tags individuels par fichier
Multi-sélection et recherche par tags
Blacklist configurable pour supprimer les mots inutiles (and, the, source, etc.)

🔍 Recherche avancée
Par nom de fichier
Par tags multiples
Par favoris
Par statut Lue / Non lue

🗂 Filtres et tris personnalisables
Nom
Taille
Date de modification
Statut Lues / Non lues

⭐ Favoris
Marquez vos vidéos d’un clic (★)
Accédez à la vue dédiée « Favoris »

🎥 Lecteur intégré (HTML5 natif)
Supporte mp4, webm et mkv (Chrome/Chromium)
Les fichiers non compatibles avec Firefox (.mkv, .avi, .flv, .m2ts) sont automatiquement basculés en remux/transcodage à la volée avec ffmpeg si activé

🖼 Miniatures automatiques
Générées avec ffmpeg
Capture par défaut à 5 secondes (pour éviter logos/intro)
Ajustable via variables (MINI_THUMB_OFFSET, MINI_THUMB_MAX)

📱 Interface responsive
Desktop, tablette et mobile

🌙 Mode clair / sombre
Bascule instantanée

🛠 Page Maintenance
Rescan complet de la bibliothèque
Purge des miniatures
Journal d’événements en direct (logs des actions)

⏱ Scan automatique
Toutes les heures par défaut
Intervalle configurable via MINI_SCAN_INTERVAL

🔐 Authentification optionnelle
Mode public ou mono-utilisateur avec identifiant/mot de passe

⚙ Configuration simple
Tout se règle via variables d’environnement dans votre docker-compose.yml

VariableValeur par défautDescription
MEDIA_DIRS(vide)Liste des dossiers vidéos (séparés par `
MEDIA_NAMESDossier 1, Dossier 2…Noms affichés pour chaque dossier (même ordre que MEDIA_DIRS)
MINI_ALLOWED_EXT.mp4,.webm,.mkv,.avi,.flv,.m2tsExtensions autorisées
MINI_BANNED_TAGS(vide)Liste de mots à ignorer lors de la génération de tags (and,the,source,…)
DATA_DIR/dataDossier de stockage interne (état, favoris, prefs)
THUMB_DIR/cache/thumbsDossier cache des miniatures
MINI_USER(vide)Identifiant de connexion (optionnel)
MINI_PASS(vide)Mot de passe de connexion (optionnel)
SECRET_KEY(aléatoire)Clé de session Flask (authentification)
MINI_PLAYBACKdirectMode lecture : direct, auto, remux
MINI_TRANSCODE0Autoriser le transcodage H.264/AAC (1 = oui, 0 = non)
MINI_FIREFOX_MKV_FALLBACK1Force le remux des .mkv dans Firefox
MINI_AUTOSCAN1Activer le rescan automatique (1 = oui)
MINI_SCAN_INTERVAL3600Intervalle entre scans auto (en secondes)
MINI_THUMB_OFFSET5Seconde du screenshot miniature
MINI_THUMB_MAX30Offset max (si vidéo longue)
MINI_FFPROBE_TIMEOUT10Timeout en secondes pour ffprobe/ffmpeg
API_READ_KEY(vide)Clé API (optionnelle) pour accès en lecture seule


Pour l’installation et la configuration, reportez-vous au dépôt GitHub.


Exemple de docker-compose.yml

services:
  minivid:
    image: ghcr.io/aerya/minivid:latest
    container_name: minivid
    restart: always
    environment:
      TZ: Europe/Paris
      MEDIA_DIRS: /videos1|/videos2|/videos3|/videos4|/videos5
      MEDIA_NAMES: ruTorrent|MeTube|Docs|Concerts|Tests formats vidéo
      DATA_DIR: /data
      THUMB_DIR: /cache/thumbs
      MINI_ALLOWED_EXT: .mp4,.webm,.mkv,.avi,.flv,.m2ts
      MINI_PLAYBACK	Mode de lecture : auto
      MINI_TRANSCODE: 1
      MINI_FIREFOX_MKV_FALLBACK: 1
      MINI_THUMB_OFFSET: 5
      MINI_THUMB_MAX: 30
      MINI_AUTOSCAN: 1
      # Auth (prises du .env ; si vide => pas d'auth)
      MINI_USER: ${MINI_USER}
      MINI_PASS: ${MINI_PASS}
      SECRET_KEY: 032cb57bd9a0ed97c62a46518aaa3cf2ka9d256da92e17e75e75d282ad5cda87
      # Liste noire tags (les mots de moins de 3 lettres sont automatiquement bannis)
      MINI_BANNED_TAGS:  >
        and,the,source,video,videos,vid,vids,film,movie,part,
        les,une,des,ils,elles,sur,sous,dans,par,pour,sans,avec,chez,
        cet,cette,ces,mon,mes,ton,tes,ses,notre,nos,votre,vos,leur,leurs,
        qui,que,quoi,dont,quand,comme,
        your,they,for,with,without,into,onto,about,this,that,these,those,
        here,there,then,than,are,was,being,been,have,had,just,only,
        over,under,very,more,most,less,were,com,net
    volumes:
      - /mnt/user/rutorrent-direct:/videos1:ro
      - /mnt/user/MeTube:/videos2:ro
      - /mnt/user/TEST/Docs:/videos3:ro
      - /mnt/user/TEST/Concerts:/videos4:ro
      - /mnt/user/TEST/Formats:/videos5:ro
      - /mnt/user/appdata/MiniVid/data:/data
      - /mnt/user/appdata/MiniVid/cache:/cache
      - /etc/localtime:/etc/localtime:ro
      - /etc/timezone:/etc/timezone:ro
    ports:
      - "8080:8080"

  # Scan toutes les INTERVAL secondes
  minivid-scheduler:
    image: curlimages/curl:8.10.1
    container_name: minivid-scheduler
    depends_on:
      - minivid
    restart: always
    environment:
      APP_URL: ${APP_URL}
      MINI_USER: ${MINI_USER}
      MINI_PASS: ${MINI_PASS}
      INTERVAL: ${INTERVAL}
    command: >
      sh -c '
        set -eu;
        for i in $(seq 1 60); do curl -fsS "$APP_URL/maintenance" >/dev/null 2>&1 && break || sleep 2; done
        while :; do
          if [ -n "$MINI_USER" ] && [ -n "$MINI_PASS" ]; then
            # login (remember=on)
            curl -sS -c /tmp/c.jar -X POST "$APP_URL/login" \
              -d "username=$MINI_USER" -d "password=$MINI_PASS" -d "remember=on" -o /dev/null || true
            if curl -sS -b /tmp/c.jar "$APP_URL/api/maintenance/progress" | grep -qi "\"running\"\\s*:\\s*true"; then
              sleep 120
            else
              curl -m 5 -sS -b /tmp/c.jar -X POST "$APP_URL/api/maintenance/rescan" -o /dev/null || true
            fi
          else
            curl -m 5 -sS -X POST "$APP_URL/api/maintenance/rescan" -o /dev/null || true
          fi
          sleep "$INTERVAL"
        done
      '

Exemple de .env

# URL interne du service
APP_URL=http://minivid:8080

# Auth (laisser vide pour désactiver l'auth)
MINI_USER=admin
MINI_PASS=admin

# Fréquence en secondes (3600 = 1h)
INTERVAL=3600

L’indexation des fichiers se fait à la volée au 1er lancement, plus ou moins rapidement selon la quantité de vidéos et le CPU. Le transcodage sous Firefox/LibreWolf peut faire souffrir le CPU sur une petite machine, je ne l’ai pas optimisé vu qu’il est plus rapide de passer par un autre navigateur.

Aucun appel externe, tout est 100% local. Fonctionne en http://IP:port comme en reverse proxy.

minivid8
minivid11
minivid9
minivid10
minivid5
minivid6
minivid7

Loading

Reçu — 31 août 2025
❌