Obtenir des fichiers audio de Radio-Canada

Je mentionnais:

C’est maintenant disponible avec npm:

npm install --global radcan

Les sources de radcan se trouvent sur GitHub.

Par exemple pour télécharger les trois segments qui se trouve sur:

https://ici.radio-canada.ca/premiere/premiereplus/science/p/49306/limprimante-3d-arrive-et-elle-va-changer-nos

radcan https://ici.radio-canada.ca/premiere/premiereplus/science/p/49306/limprimante-3d-arrive-et-elle-va-changer-nos

Répondre Y/N pour chacun des trois segments et les fichiers seront téléchargés dans outs/[fichier-audio].aac (où [fichier-audio] est représenté par un identifiant interne de Radio-Canada et un fichier de méta-données se trouvera à côté sous l’extension .json.

Faites moi signe si vous tentez des URLs qui devraient renvoyer un fichier audio mais qui bugguent avec ce petit client à la ligne de commande.

UPDATE: J’ai aussi mis à votre disposition des binaires de radcan pour les 3 OS desktop habituels, si vous n’avez pas déjà node et ne voulez pas l’installer.

40 MiB pour une application (binaire) qui fait si peu, ça fait un peu rire (surtout que ça prend aussi un binaire de ffmpeg). Peut-être que je devrais me recycler à Go ou Rust :wink:

Avec npm (en sources), c’est que 25 MiB de dépendances.

3 « J'aime »

J’ai hâte d’essayer ça, je me demande pourquoi il n’ent ont pas simplement fait des ballado.

Est-ce que ça “colle” les 3 segments à la fin? Est-ce que c’est possible rouler en “tout télécharger” pour une page donnée?

Et autre question, je suis curieux, pourquoi AGPL?

Maintenant que j’y pense, AGPL c’est curieux pour un cli.Mais c’est ma goto licence. D’un autre côté, je verrais aussi un webapp offrir ce même service.

Je crois que Radio-Canada tiens trop à son sobriquet de Cadenas pour faire de la balado mur-à-mur. Dans ce cas-ci, je n’essaie même pas de voir si c’est une balado et je passe toujours par le stream.

Enfin, ça peut télécharger tous les segments mais il faudra dire «Oui (Y)» à chacun et les fichiers ne seront pas concaténés mais sauvés individuellement.

Éventuellement. on pourra transcoder, concatener et ainsi de suite mais je préférais sortir radcan dès qu’il était fonctionnel et unit testé à 100%.

Mis à jour, légèrement plus léger et avec quelques options de plus, dont radcan --help.

Par exemple, on peut sélectionner le répertoire de sorties (--dir ...) et demander de télécharger tous les segments (--all).

1 « J'aime »

Wow merci ! Fonctionne très bien pour moi !

Content que ça fonctionne pour toi @francois.pelletier :slight_smile:

Installé d’un binaire (radcan-linux) ou avec npm?

Est-ce que tu trouverais pratique que radcan passe des options de conversion audio à ffmpeg? Pour le moment, je prends une copie conforme du stream en format aac mais ça pourrait aisément sauvegarder en Opus par exemple. Ou d’autres suggestions?

Avec npm. Pour la conversion, je n’ajouterais pas ça au programme actuel comme ça peut être géré par la suite. Par contre, je mettrais une option pour donner un nom plus convivial au fichier de sortie.

Pour les conversions, il suffit que radcan passe les bons arguments à ffmpeg, ça n’ajouterais pas trop de complexité vu que ce dernier est déjà utilisé pour lire le stream.

Pour le nom plus convivial, je pourrais me baser sur le titre du segment (minuscules, sans accents, avec des tirets au lieu des espaces), ça ferait la job? Sinon, comment voyais-tu ça @francois.pelletier ?