Premiers pas avec Automator

illustrations illustrations illustrations illustrations illustrations illustrations illustrations
post-thumb

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):

  1. Dans Automator, dans le menu File, cliquez sur New et sélectionnez Quick Actio.
  2. Réglez Workflow receives current sur text dans any application.
  3. Dans l’onglet Actions, recherchez Set Value of Variable et faites-la glisser dans le flux de travail. Cliquez sur New Variable et entrez TextToSpeak dans la case Name, puis cliquez sur Done.
  4. Dans l’onglet Actions, ajoutez une action Get Contents of Clipboard au flux de travail sous la dernière action. Cliquez sur l’onglet Options et sélectionnez Ignore this action’s input.
  5. Ajoutez une nouvelle action Set Value of Variable et définissez la Variable à une nouvelle variable appelée filename.
  6. Ajoutez une action Get Value of Variable et dans ses Options, sélectionnez Ignore this action’s input.
  7. Ajoutez une action Text to Audio File et sélectionnez votre System Voice préférée. Dans le menu View, assurez-vous que Variables est visible et faites glisser la variable filename dans la case Save As. Après la variable, entrez .fr. Sélectionnez une destination d’enregistrement dans la liste Where.
  8. Ajoutez une action Encoder to MPEG Audio et sous Destination, sélectionnez Mame as source file et Delete source files after processing.
  9. Ajoutez une action Rename Finder Items et sélectionnez Remlace text dans la liste. Dans la boîte Find, entrez m4a, sélectionnez extension only dans la liste et sélectionnez Ignorer Case. Dans la case Replace, entrez mp3.
  10. Enregistrez le flux de travail et donnez-lui un nom. Exemple: Text to MP3 (French).

Nous allons maintenant convertir le texte en fichier audio:

  1. Ouvrez le texte dans une application. Exemple: une page dans un navigateur web.
  2. Copiez le nom du fichier que vous souhaitez utiliser dans le presse-papiers. Exemple: la balise à la fin de l’URL.
  3. Mettez en surbrillance le texte à traduire.
  4. Cliquez avec le bouton droit de la souris pour ouvrir le menu contextuel et, à partir de Services, sélectionnez votre flux de travail. Le fichier est Le fichier est enregistré à l’emplacement que vous avez sélectionné dans le flux de travail.

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.