Publié le 14 mars 2024 par Andrew Owen (5 minutes)
Bien que ce site Web soit à peu près conforme à mes attentes, je continue à peaufiner le CSS et à ajouter des fonctionnalités. Dernièrement, j’ai ajouté quelques réseaux sociaux supplémentaires à la page d’accueil et quelques options supplémentaires aux boutons de partage social sur les articles. Mais il y a une chose que je voulais vraiment ajouter, c’est l’option d’écouter les articles. J’ai envisagé des services qui offrent un niveau gratuit, tels que Trinity Audio et Speechify, mais j’avais trop de contenu existant. Par ailleurs, la version IA de Speechify de ma propre voix était effrayante. Je pouvais dire qu’il ne s’agissait pas d’un véritable être humain, mais à peine. À la recherche d’une solution à coût zéro, j’ai donc fini par utiliser l’application Automator de macOS. J’ai également décidé de ne pas convertir les articles contenant des exemples de code, car il est préférable de les confier à des lecteurs d’écran spécialisés.
Le Macintosh prend en charge la synthèse vocale depuis 1984. Mais la qualité s’est beaucoup améliorée ces dernières années. Je n’aime toujours pas écouter les voix d’ordinateur, mais je trouve l’Australienne Siri tolérable. Cependant, comme il s’agit de mes mots, ils devraient vraiment être prononcés par une voix masculine, au moins pour la version française. Pour ajouter des voix à votre système, dans Paramètres, allez dans Contenu parlé et dans la liste Voix du système, cliquez sur Gérer les voix. Idéalement, vous devriez choisir une voix de qualité supérieure. Si elle n’est pas disponible, la voix améliorée est la meilleure option. J’ai fini par choisir Evan (Enhanced) pour l’anglais américain et Nicolas (Enhanced) pour le français canadien. Mon propre accent se situe quelque part entre le nord de Londres et la Nouvelle-Angleterre. Et mon contenu en français est partiellement traduit par une machine, ce qui fait qu’il sonne bizarrement pour un natif de France. Après avoir choisi les voix, je devais trouver le moyen le plus efficace de convertir le contenu en fichier MP3 pour l’inclure dans l’article. Et c’est là qu’Automator entre en jeu.
Apple fournit un guide de l’utilisateur, mais il est très basique. Vous pouvez créer des flux de travail qui s’exécutent dans l’application, des applications autonomes, des actions rapides (y compris des services) et bien plus encore.
La façon la plus simple de créer un flux de travail est d’utiliser l’approche par bloc de code. Sélectionnez une entrée, puis faites glisser différentes actions de la liste et remplissez-les de variables.
Le principal obstacle que j’ai dû surmonter a été de trouver comment prendre plusieurs entrées. Il n’y a pas d’étapes parallèles, la solution consiste donc à stocker les entrées sous forme de variables et à s’assurer que l’étape suivante ignore la sortie de l’étape précédente.
Voici comment j’ai créé un service Text to MP3 (French):
TextToSpeak
dans la case Name, puis cliquez sur Done.filename
.filename
dans la case Save As. Après la variable, entrez .fr
. Sélectionnez une destination d’enregistrement dans la liste Where.m4a
, sélectionnez extension only dans la liste et sélectionnez Ignorer Case. Dans la case Replace, entrez mp3
.Text to MP3 (French)
.Nous allons maintenant convertir le texte en fichier audio:
Dans Hugo, j’ai ajouté ce code à mon single.html
:
{{ if .Params.audio }}
<audio controls preload="auto">
<source src="/audio/{{ .File.BaseFileName }}.mp3">
</audio>
{{ end }}
Si audio
est défini à true
dans les métadonnées de l’article, il convertit le slug (y compris le suffixe de langue) en nom d’un fichier mp3
dans le chemin audio
. L’avantage de cette approche est qu’après avoir traduit un texte anglais sur mon site, je peux cliquer sur Français dans le menu et le slug est toujours dans le presse-papiers. Il est également possible d’utiliser des scripts shell avec Automator, il est donc possible d’automatiser davantage le processus. Mais c’est une tâche pour un autre jour.