• v1.4.0 b96354c40f

    tuxgyver released this 2026-09-13 10:16:16 +00:00 | 11 commits to main since this release

    Ajouté

    • Titrage automatique des enregistrements radio. Le service demande désormais les métadonnées
      ICY, ce qui fait annoncer par la station le morceau diffusé : l'enregistrement prend son nom,
      la station passe en sous-titre, et le titre en cours s'affiche pendant la capture comme dans
      la notification. Ces octets de métadonnées sont retirés avant écriture — laissés dans le
      fichier, ils le rendraient illisible. Les stations qui n'en diffusent pas gardent le nom
      « Station — date ».

    Corrigé

    • Les enregistrements radio n'apparaissaient pas dans l'onglet « Hors ligne », qui ne listait que
      ce qui porte un état de téléchargement. L'écran annonçait donc un nombre d'éléments disponibles
      sans réseau en omettant précisément ceux qui l'étaient déjà. La taille affichée additionne
      maintenant le cache et les enregistrements, et « Tout libérer » précise qu'il ne les touche pas.
    • Les titres comportant une apostrophe étaient tronqués à la première rencontrée : « Ain't That a
      Kick in the Head » devenait « Ain ». La valeur est lue jusqu'à la fin du champ ICY.
    Downloads
  • v1.3.0 4017c71ca7

    tuxgyver released this 2026-09-13 10:01:18 +00:00 | 12 commits to main since this release

    Ajouté

    • Radio. Les stations les plus écoutées via l'annuaire communautaire Radio Browser, avec
      filtres par genre et recherche par nom. Chaque station s'écoute en direct, ou s'enregistre :
      un service de premier plan copie le flux dans un fichier jusqu'à l'arrêt demandé, et le verse
      dans la bibliothèque — déjà hors connexion, sans rien à télécharger ensuite.
    • Relance automatique des téléchargements en échec, après une pause croissante de 5, 15 puis
      45 secondes. Une relance manuelle repart d'un compteur neuf.

    Notes

    • Les flux HLS sont écartés de la liste des stations : ils se lisent, mais ne s'enregistrent pas
      par copie d'octets, et un bouton qui échouerait vaudrait moins que pas de bouton.
    • La relance et la reprise sur coupure réseau sont deux mécanismes distincts, et c'est voulu :
      sans réseau, Media3 met le téléchargement en attente et le reprend de lui-même ; la relance,
      elle, ne traite que les vrais échecs serveur.
    • Le repli automatique vers une autre source n'a pas été retenu : rien ne garantit qu'un même
      titre trouvé sur deux catalogues soit le même enregistrement, et l'application téléchargerait
      silencieusement autre chose que ce qui a été choisi.
    Downloads
  • v1.2.0 2dabfdbc84

    tuxgyver released this 2026-09-13 07:45:32 +00:00 | 13 commits to main since this release

    Ajouté

    • Écran de choix des pistes. Un album ou un livre n'est plus une boîte noire : ses pistes sont
      listées avec leur durée et leur taille, le total est annoncé, et le bouton dit exactement ce
      qu'on s'apprête à télécharger (« Garder 4,2 Mo »). Les variantes d'un même morceau sont
      regroupées — autant de lignes que d'œuvres, pas que de formats.
    • Écoute en ligne avant téléchargement : un appui sur une piste la joue en streaming sans rien
      mettre en cache.
    • Playlists : listes nommées, ajout par appui long sur un média ou depuis l'écran de lecture,
      lecture enchaînée, suppression piste par piste.
    • Contrôles de lecture complétés : arrêt, saut de 15 secondes en avant et en arrière.
    • Filtrage par langue des catalogues (français, anglais, allemand, espagnol, italien, néerlandais).
    • Nouvelle source libre : Wikimedia Commons, pour les enregistrements classiques et les
      archives sonores du domaine public.

    Corrigé

    • Le filtre de langue de LibriVox ne pouvait pas fonctionner côté serveur : l'API accepte le
      paramètre language puis l'ignore (language=French seul renvoie des livres anglais). Le tri
      se fait désormais sur le champ language de chaque livre.
    • Délais réseau ajustés d'après la latence mesurée des services : LibriVox répond en 14 à
      16 secondes quelle que soit la taille demandée, ce qui faisait expirer les requêtes parallèles.

    Notes

    • Deux catalogues ont été évalués puis écartés sur mesure plutôt que sur principe : Openverse
      refuse désormais l'accès anonyme (401 sur huit requêtes sur huit) et ccMixter exige un
      en-tête Referer que Media3 ne permet pas de poser par téléchargement.
    Downloads
  • v1.1.0 c1912c2056

    tuxgyver released this 2026-09-11 18:58:25 +00:00 | 14 commits to main since this release

    Ajouté

    • Mise à jour intégrée : Cachette surveille les releases du dépôt, télécharge l'APK en Wi-Fi
      et propose l'installation. Vérification quotidienne en tâche de fond, et à la demande depuis
      l'écran Sources, qui affiche aussi la version installée.
    • La taille approximative de chaque résultat Internet Archive est affichée avant sélection : un
      élément de 500 Mo ne se laisse plus confondre avec une chanson.

    Corrigé

    • Recherche LibriVox qui ne renvoyait rien. L'API cherche les titres en correspondance exacte
      sauf si la requête est préfixée par ^, et les auteurs sur le seul nom de famille : « Jules
      Verne » n'atteignait donc ni l'un ni l'autre. Les trois critères sont désormais interrogés en
      parallèle et dédoublonnés, et un « aucun résultat » (HTTP 404) n'est plus traité comme une panne.
    • Téléchargements Internet Archive qui échouaient ou n'aboutissaient pas. Trois causes distinctes :
      les éléments en accès restreint répondaient 401 et sont maintenant écartés dès la recherche ;
      seuls les fichiers .mp3 et .mp4 étaient acceptés, ce qui excluait des éléments ne proposant
      que du .m4a ou de l'.ogg ; et le fichier retenu était le premier trouvé, souvent l'original
      non compressé — c'est désormais le plus petit dérivé, soit 9 Mo au lieu de 30 sur un cas mesuré.
    Downloads
  • v1.0.0 992fe88cc4

    tuxgyver released this 2026-09-11 18:29:52 +00:00 | 15 commits to main since this release

    Ajouté

    • Lecture audio et vidéo en arrière-plan (Media3 MediaSessionService), avec notification
      système, commandes casque et écran verrouillé.
    • Mise en cache hors connexion explicite : téléchargement à la demande, reprise automatique
      après coupure réseau ou redémarrage via WorkManager.
    • Bibliothèque unifiée mêlant le contenu de l'appareil (MediaStore) et les médias importés.
    • Sources : appareil, lien direct http(s), flux RSS de podcast.
    • Catalogues libres de droits intégrés : Internet Archive et LibriVox, sans compte ni clé d'API.
    • Parcours d'une source avec sélection multiple et téléchargement en lot.
    • Écran « Hors ligne » : taille du cache, progression, libération élément par élément ou en bloc.
    • Interface Jetpack Compose Material 3, thème clair et sombre, palette de marque.
    Downloads