2023-11-29 20:55:36 +01:00
|
|
|
# Écoute, un player...
|
|
|
|
|
|
|
|
Écoute n'est pas un player comme les autres.
|
|
|
|
Vous êtes prévenus.
|
|
|
|
Certaines fonctionalités que l'on nomme *classiques*, comme
|
|
|
|
le support des *playlists* ou la recherche de pochette
|
|
|
|
de disque ne sont pas là.
|
|
|
|
|
|
|
|
En fait, j'ai commencé à écrire ce logiciel il y a très
|
|
|
|
longtemps pour découvrir
|
|
|
|
[libsndfile](https://en.wikipedia.org/wiki/Libsndfile).
|
2023-11-30 02:49:33 +01:00
|
|
|
Ensuite, je l'ai un peu oublié dans son coin.
|
|
|
|
Il manque même pas mal de formats de base (ex, le .ogg) dans
|
|
|
|
ce qu'il connait. Mais je
|
2023-11-29 20:55:36 +01:00
|
|
|
viens de lui trouver une nouvelle utilité, il va m'aider
|
|
|
|
à trier les fichiers de mon [Tascam](https://www.thomann.de/intl/tascam_dr_05x.htm). Il faut juste rajouter les fonctions
|
|
|
|
qui manquent.
|
|
|
|
|
|
|
|
|
|
|
|
## Compilation
|
|
|
|
|
2023-11-29 21:43:46 +01:00
|
|
|
Il faut installer les paquets
|
|
|
|
`libao-dev` et `libsndfile-dev` avoir de pouvoir
|
2023-11-29 22:00:54 +01:00
|
|
|
générer le moindre exécutable.
|
2023-12-10 21:33:05 +01:00
|
|
|
Les machins *ncurses* sont censé être là, sinon
|
|
|
|
c'est `ncurses-dev` qui manque.
|
|
|
|
|
2023-11-29 22:00:54 +01:00
|
|
|
Ensuite, un tout simple
|
2023-11-29 21:43:46 +01:00
|
|
|
run de `make` fera le travail.
|
2023-11-29 22:00:54 +01:00
|
|
|
Dans le [Makefile](Makefile), vous avez quelques options à
|
|
|
|
régler, genre le `DEBUG_LEVEL` si vous ne voulez pas
|
|
|
|
submerger votre stderr.
|
2023-12-10 21:33:05 +01:00
|
|
|
Mais si vous avez activé cette friture, vous
|
|
|
|
lancer le logiciel par `./ecoute 2> tracelog` dans un xterm,
|
|
|
|
puis vous lancez `tail -f tracelog` dans un autre xterm
|
|
|
|
pour le voir raconter sa vie. *Astuce !*
|
2023-11-29 21:43:46 +01:00
|
|
|
|
|
|
|
## Utilisation
|
|
|
|
|
|
|
|
Une fois lancé, le logiciel vous affiche la liste des
|
|
|
|
fichiers sons dans le répertoire courant. Parfois il
|
|
|
|
en manque.
|
2023-11-29 22:00:54 +01:00
|
|
|
|
2023-11-29 21:43:46 +01:00
|
|
|
La touche **`?`** affiche une petite fenêtre d'aide.
|
2023-11-29 22:00:54 +01:00
|
|
|
La touche **`Q`** (*:q!*) sort de ce machin.
|
|
|
|
|
|
|
|
Il y a des fonctions de tri (nom, taille, ...) par
|
|
|
|
les touches dédiées (voir l'aide).
|
|
|
|
En pressant **`I`** des informations diverses et
|
|
|
|
souvent inutiles sur le fichier pointé.
|
2023-12-10 21:33:05 +01:00
|
|
|
Le **`D`** propose un dump hexadécimal et ascii qui
|
|
|
|
va être grandement amélioré dans les jours qui viennent.
|
|
|
|
Et enfin avec **`$`**, vous aurez quelques informations techniques
|
|
|
|
sur les trucs techniques.
|
|
|
|
|
2023-11-29 21:43:46 +01:00
|
|
|
|
|
|
|
## Pour la suite ?
|
|
|
|
|
|
|
|
Première étape : Prévoir la possibilité de faire un *abort*
|
2023-11-30 02:49:33 +01:00
|
|
|
pendant la lecture d'un fichier son. Ça ne va pas être simple, il
|
|
|
|
faut d'abord factoriser la fonction de scrutation du clavier
|
|
|
|
pendant la lecture du son, et ensuite la brancher dans les
|
|
|
|
différents modules.
|
2023-11-29 21:43:46 +01:00
|
|
|
|
2023-12-10 21:33:05 +01:00
|
|
|
Deuxième étape : Implémenter une fonction bien *molly-guarded* pour pouvoir
|
|
|
|
effacer un fichier sans le moindre risque d'erreur.
|
2023-11-29 21:43:46 +01:00
|
|
|
|
2023-11-30 02:49:33 +01:00
|
|
|
tTh.
|
|
|
|
|
2023-11-29 20:55:36 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|