Tts via elevenlabs

Bonjour
je découvre elevenlabs et je trouve ca assez bluffant comme tout le monde je pense.

du coup je me suis posé la question, est il possible d’utiliser le TTS d’elevenlabs via jeedom ?
il y a une jolie API

alors je me suis dit que c’était envisageable

qu’en pensez vous ?

Bonjour,
Tout est possible mais le problème est toujours le meme : qui paye ? Car la avec 10 000 caractères par mois gratuit ca en fait pas bcp…

J’ai un compte elevenlabs donc je suis au dela de 10 000. et si on va dans ce sens la, alors comment fait on avec les plugins payants sur le market jeedom, qui paie !?
Je ne trouve pas anormal de payer pour un service, quelle drole d’idée… :blush:

Je vais regarder comment le TTS est implémenté sur le plugin Googlecast, ca me donnera peut etre des pistes et des idées pour faire quelques modifs et tester tout ca.

si quelqu’un d’autre a une idée ou une volonté quelconque d’utiliser elevenlabs, faites un signe !

1 « J'aime »

Salut,
Toi oui tu trouves pas ca anormal mais malheureusement c’est pas le cas de 90% des utilisateurs.

ha bon ? chacun n’est il pas libre d’utiliser ou non des plugins ou services payants ?
qu’est-ce que c’est que ce discours , je rêve…
( je n’ai pas parlé de forcer la population a utiliser ce service hein ? )

Il nous faut un nombre minimal d’utilisateur achetant le service pour ne serais ce que de ne pas perdre d’argent. On a essayé de faire ca sur du tts google et ca nous coute de l’argent tous les mois car les utilisateurs ne sont pas pret a payer (ils utilisent que le free use qu’on met a disposition).

Ah mais toi tu parles d’une implémentation native, je me doute bien qu’il n’est pas envisageable de proposer des services payants un peu partout.
Moi je pensais a utiliser ce TTS au travers d’un plugin , tout comme le fait Googlecast.

Pour tout dire je n’ai jamais essayé le TTS « natif » ^^.

je vais faire quelques tests d’implémentation pour voir comment ça se passe et si ca réagit bien.

A oui moi un truc natif. Il est bien le tts natif si tu as le plugin song qui rajoute le moteur de google dans la liste des moteur tts natif jeedom. Mais tu es limité a une demande par jour (a noter qu’il y a du cache en local sur ton jeedom donc si tu fais 2 fois le meme tts ca ne compte que pour un).

oui y a surement moyen de mettre en cache n’importe quel TTS provider.
je ne pense pas utiliser le natif a moins que le code soit plus simple a éditer , je verrais.

Pour le code il suffit de mettre ca dans la class du plugin :

 public static function tts($_filename,$_text) {
    try {
      $url = config::byKey('service::cloud::url').'/user/';
      $url .= sha512(mb_strtolower(config::byKey('market::username')).':'.config::byKey('market::password'));
      $url .= '/service/tts';
      $url .= '?lang='.config::byKey('language', 'core', 'fr_FR');
      $url .= '&text='.urlencode($_text);
      $request_http = new com_http(trim($url,'&'));
      $datas = $request_http->exec();
      if(is_json($datas)){
        throw new \Exception(__('Erreur sur la récuperation des données : ',__FILE__).$datas);
      }
      file_put_contents($_filename, $datas);
    } catch (Exception $e) {
      log::add('dataservice', 'error', '[TTS] ' . $e->getMessage());
    }
  }

Et ca dans le info.json :

"hasTtsEngine": true,

A adapté bien sur la c’est pour le systeme de tts du cloud jeedom. Ensuite tu auras dans la configuration de jeedom le choix de ton nouveau moteur tts.

1 « J'aime »

Pour le problème des 10000 caractètres il suffit de remettre au goût du jour l’écriture sms ! Pas sûr du résultat parlé par contre :clown_face:

Bonjour,

Je viens de faire un plugin Elevenlabs TTS (Actuellement en beta).
Et ça permet de l’utiliser à la place de Pico ou Espeak nativement via le TTS de jeedom.

Kenin

2 « J'aime »

Hello.
Je m’intéresse aux voix elevenlabs, j’ai donc essayé ton plugin.
J’ai compris qu’il s’intégrait dans le moteur de jeedom. Mais je sais pas comment l’utiliser. Par exemple pour générer un mp3 ?

Bonjour,

Effectivement dans cette première version il est fait uniquement pour s’intégrer au moteur de Jeedom.

Mais je peux ajouter ça.
L’idée serait d’ajouter un équipement ou on pourrait choisir une voix pour cet équipement spécifique.
Ça permettrait de pouvoir gérer plusieurs voix pour ceux qui veulent.
Et cet équipement aurait une commande action pour générer le TTS, et une information ou on aurait le chemin d’accès du dernier fichier MP3.

Ça serait pour l’utiliser avec quoi pour voir ce que je peux faire pour au mieux intégrer ça?

En fait, moi j’ai plusieurs besoins autour du TTS c’est pour çà que le MP3 est utile. Par exemple je récupère un mp3 via un appel à l’api google texttospeech :

wget -q -U Chrome -O /var/www/html/mp3/retourttsgoogle.mp3 "https://www.google.com/speech-api/v2/synthesize?enc=mpeg&client=chromium&key=AIzaSy........rtHl2Y4&text=$1&lang=fr-fr&speed=0.5&pitch=0.5"

Et ce mp3 je le balance selon mes besoins:

un cast du mp3 vers un googlehome (plugin google cast)
un dépot du mp3 sur un chemin pour qu’il soit lu par un nabaztag en http
un tts pour envoi vers un appel grâce au plugin phonemarket

Et comme j’ai 3 nabaztag, il pourrait être bien de mettre des voix différentes ^^.

Bref il y a plein de cas d’usage.

Ok ça marche.

J’essaie de faire le dev de ça la semaine prochaine :slight_smile:

1 « J'aime »

Je viens de publier une nouvelle version beta.
J’ai ajouté du coup les équipements.

Du coup maintenant un équipement est configurable Voix, stabilité, clarté et il a deux commandes, une action message pour faire générer le fichier, et une information string avec le dernier fichier généré.

(La doc n’est pas encore à jour par contre)

Hello
Je viens de tester la béta. Bravo zéro défaut !

En revanche, pour les chiffres çà bascule en Anglais : Bonjour, demain il fera sixteen degrés.
Je pense que çà vient du modèle Multilanguage V1 qui fait çà. En V2 pas de pb.

Effectivement, j’avais lu un peu trop rapidement la doc, et j’avais mal saisie le fonctionnement pour le modèle V2.
Une nouvelle version beta dispo, elle permet de choisir le modèle entre v1 et v2, avec par défaut le modèle v2.
J’ai ajouté une petite note si la voix à un meilleur rendu en V1.

Hello, je viens de tester la nouvelle version. C’est tout bon merci pour le boulot :+1: