Files
Noxely/CHANGELOG.md
T
tuxgyver 2dabfdbc84 Choix des pistes, écoute en ligne, playlists et source Wikimedia (1.2.0)
Un album ou un livre se téléchargeait en aveugle : l'application retenait une
piste arbitraire sans jamais dire laquelle ni ce qu'elle pesait. La fiche d'un
résultat liste désormais toutes ses pistes avec durée et taille, le total est
annoncé, et le bouton chiffre ce qu'on s'apprête à emporter. Chaque piste
s'essaie d'abord en streaming, sans rien mettre en cache.

Les playlists manquaient pour organiser ce qu'on garde : listes nommées,
ajout par appui long, lecture enchaînée. Les contrôles se complètent d'un
arrêt et de sauts de quinze secondes.

Le filtre de langue de LibriVox ne pouvait pas marcher côté serveur : l'API
accepte le paramètre puis l'ignore, « language=French » seul renvoyant des
livres anglais. Le tri se fait sur le champ de chaque livre. Les délais réseau
suivent la latence réellement mesurée des services, LibriVox répondant en
quatorze à seize secondes quelle que soit la taille demandée.

Wikimedia Commons rejoint les catalogues libres. Openverse et ccMixter ont été
essayés puis écartés : le premier refuse l'accès anonyme, le second exige un
en-tête Referer que Media3 ne sait pas poser par téléchargement.
2026-09-13 09:44:56 +02:00

75 lines
4.1 KiB
Markdown

# Changelog
Toutes les évolutions notables de Cachette sont documentées ici.
Le format suit [Keep a Changelog](https://keepachangelog.com/fr/1.1.0/)
et le versionnage [SemVer](https://semver.org/lang/fr/).
## [1.2.0] — 2026-09-13
### 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.
## [1.1.0] — 2026-09-11
### 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é.
## [1.0.0] — 2026-09-11
### 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.