Maison développement back-end tutoriel php PHP implémente la fonction de synthèse vocale dans le mini-programme WeChat

PHP implémente la fonction de synthèse vocale dans le mini-programme WeChat

Jun 01, 2023 am 08:15 AM
php 微信小程序 语音转换

Avec la popularité des outils sociaux et la popularité continue des smartphones, je pense que tout le monde peut profiter des avantages et de la commodité de communiquer en envoyant des messages vocaux. Dans la vie quotidienne, nous pouvons facilement utiliser les fonctions de saisie vocale et de synthèse vocale des smartphones pour compléter la saisie et la sortie de texte vocal. Cependant, pour certaines applications Web, elles ne sont pas fournies avec ces fonctions, nous devons donc utiliser des services tiers pour implémenter ces fonctions. Cet article explique comment utiliser le langage PHP pour implémenter la fonction de synthèse vocale dans l'applet WeChat.

Préparation des connaissances préalables

Avant de commencer, nous avons besoin de quelques connaissances de base :

  • Connaissance de base du développement de l'applet WeChat
  • Connaissance de base du langage PHP ;
  • Principes de base de la synthèse vocale ; Requête HTTP et connaissance de base de la réponse.
  • Le principe de base de la synthèse vocale

La synthèse vocale est une technologie qui convertit les informations textuelles en informations sonores. Son principe est de convertir le texte en son grâce à un algorithme de synthèse basé sur les phonèmes, les tons, les syllabes, la grammaire du langage et. d'autres informations. Il existe de nombreuses technologies pour mettre en œuvre la synthèse vocale, parmi lesquelles les plus largement utilisées sont la technologie de synthèse vocale basée sur HMM et la technologie de synthèse vocale basée sur les réseaux neuronaux.

Connaissance de base des requêtes et réponses HTTP

Dans le processus de création de requêtes HTTP, nous devons utiliser le protocole HTTP. Le protocole HTTP contient généralement les parties suivantes :

En-tête de requête : l'en-tête de requête contient les informations de base de la requête, telles que la méthode de requête, le chemin de la requête, les paramètres de la requête, les en-têtes de requête et d'autres informations.
  • Corps de la requête : le corps de la requête contient le contenu de l'entité de la requête HTTP, tel que les paramètres et les fichiers de la requête POST.
  • En-tête de réponse : l'en-tête de réponse contient le code d'état, le type de données, l'en-tête de réponse et d'autres informations renvoyées par le serveur.
  • Corps de la réponse : le corps de la réponse contient le contenu réel des données renvoyées par le serveur.
  • Lorsque nous effectuons des requêtes HTTP via PHP, nous pouvons utiliser la bibliothèque CURL pour implémenter ce processus. Le processus de mise en œuvre spécifique est le suivant :

Initialisez l'instance CURL et définissez les options associées.
  • Envoyez la demande et définissez l'en-tête de la demande, le corps de la demande et d'autres informations.
  • Recevez le résultat de la réponse et analysez l'en-tête de la demande, le corps de la demande et d'autres informations.
  • Processus d'implémentation

Ensuite, voyons comment utiliser PHP pour implémenter la fonction de synthèse vocale dans l'applet WeChat.

Étape 1 : demander le jeton d'accès de l'API Baidu Voice

Avant d'utiliser l'API Baidu Voice pour implémenter la fonction de synthèse vocale, vous devez demander le jeton d'accès de l'API Baidu Voice. Le jeton d'accès est principalement utilisé pour la vérification de l'identité de divers services sur la plateforme ouverte Baidu AI et doit être facturé en fonction du nombre de demandes.

Comment obtenir un jeton d'accès est le suivant :

Tout d'abord, vous devez créer un compte sur Baidu AI Open Platform et créer une application.
  • Ensuite, lors de la création d'une application, vous devez sélectionner la fonction « synthèse vocale » et configurer les informations de l'application.
  • Enfin, vous pouvez obtenir le jeton d'accès dans la page de gestion de l'application.
  • Étape 2 : Écrire un script PHP

Installer le module CURL
  1. Dans le langage PHP, nous devons utiliser le module CURL pour implémenter les fonctions de requête et de réponse HTTP. Par conséquent, avant d'implémenter la fonction de synthèse vocale, nous devons nous assurer que le module CURL a été correctement installé et activé.

Le code PHP pour obtenir le jeton d'accès
  1. Le code PHP pour obtenir le jeton d'accès est le suivant :
const ACCESS_TOKEN_URL = 'https://aip.baidubce.com/oauth/2.0/token';

function getAccessToken()
{
    $url = ACCESS_TOKEN_URL;
    
    $params = array(
        'grant_type' => 'client_credentials',
        'client_id' => '********',
        'client_secret' => '********',
    );
    
    $options = array(
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_HEADER => false,
        CURLOPT_POST => count($params),
        CURLOPT_POSTFIELDS => http_build_query($params),
    );
    
    $ch = curl_init($url);
    curl_setopt_array($ch, $options);
    
    $response = curl_exec($ch);
    
    $result = json_decode($response, true);
    
    if (! isset($result['access_token'])) {
        return false;
    }
    
    return $result['access_token'];
} 
Copier après la connexion

Où :

$url est l'adresse API demandée
  • $params est le tableau de paramètres demandé ;
  • $ options sont les options de la requête CURL, y compris la méthode de requête, l'en-tête de la requête, le corps de la requête et d'autres informations. Par exemple, CURLOPT_RETURNTRANSFER est vrai, ce qui signifie que la requête renverra le résultat au lieu de l'afficher directement à l'écran. ;
  • $response est les données originales renvoyées par la requête ;
  • $result est le résultat de la conversion de $response en tableau.
  • En appelant cette fonction, nous pouvons obtenir le jeton d'accès de l'API Baidu Speech et l'utiliser comme authentification valide pour les demandes de synthèse vocale ultérieures.

Le code PHP qui implémente la synthèse vocale
  1. Le code PHP pour la synthèse vocale est le suivant :
const TEXT_TO_SPEECH_URL = 'https://tsn.baidu.com/text2audio';

function textToSpeech($text, $access_token)
{
    $url = TEXT_TO_SPEECH_URL;
        
    $params = array(
        'tex' => urlencode($text),
        'cuid' => 'PHP TEXT TO SPEECH',
        'lan' => 'zh',
        'ctp' => '1',
        'spd' => '5',
        'vol' => '15',
        'per' => '0',
        'aue' => '3',
        'tok' => $access_token,
    );
    
    $options = array(
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_HEADER => false,
        CURLOPT_POST => count($params),
        CURLOPT_POSTFIELDS => http_build_query($params),
    );
    
    $ch = curl_init($url);
    curl_setopt_array($ch, $options);
    
    $response = curl_exec($ch);
    
    return $response;
}
Copier après la connexion

Parmi eux :

$text est l'information textuelle qui doit être convertie en discours ;
  • $acess_token est le jeton d'accès obtenu. Card ;
  • $params est le tableau de paramètres de la requête, comprenant les informations textuelles qui doivent être synthétisées, la langue utilisée, le son utilisé et d'autres informations.
  • En appelant cette fonction, nous pouvons convertir les informations textuelles en un fichier vocal au format MP3 et le restituer à l'appelant.

Étape 3 : Appelez le script PHP dans le mini-programme WeChat et implémentez la fonction de synthèse vocale

L'utilisation de PHP dans le mini-programme WeChat pour implémenter la fonction de synthèse vocale peut être divisée en les étapes suivantes :

Sur la page du mini programme, écrivez le code pertinent pour obtenir les informations textuelles qui doivent être converties
  • Appelez le script PHP sur l'applet et transmettez les informations textuelles qui doivent être converties en paramètre au script ; Analysez le fichier vocal renvoyé par le script PHP et lisez-le via le lecteur.
  • Le processus spécifique de mise en œuvre est relativement compliqué et ne sera pas décrit en détail dans cet article. Les lecteurs peuvent mettre en œuvre cette fonction en se référant aux documents et tutoriels pertinents.
  • Résumé

Cet article explique comment utiliser le langage PHP pour implémenter la fonction de synthèse vocale dans l'applet WeChat. En utilisant la bibliothèque CURL, nous pouvons facilement implémenter le processus de requête et de réponse HTTP et convertir les informations textuelles en informations vocales en appelant l'API vocale Baidu. J'espère que cet article pourra être utile aux lecteurs.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Configuration du projet CakePHP Configuration du projet CakePHP Sep 10, 2024 pm 05:25 PM

Dans ce chapitre, nous comprendrons les variables d'environnement, la configuration générale, la configuration de la base de données et la configuration de la messagerie dans CakePHP.

Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

Date et heure de CakePHP Date et heure de CakePHP Sep 10, 2024 pm 05:27 PM

Pour travailler avec la date et l'heure dans cakephp4, nous allons utiliser la classe FrozenTime disponible.

Téléchargement de fichiers CakePHP Téléchargement de fichiers CakePHP Sep 10, 2024 pm 05:27 PM

Pour travailler sur le téléchargement de fichiers, nous allons utiliser l'assistant de formulaire. Voici un exemple de téléchargement de fichiers.

Routage CakePHP Routage CakePHP Sep 10, 2024 pm 05:25 PM

Dans ce chapitre, nous allons apprendre les sujets suivants liés au routage ?

Discuter de CakePHP Discuter de CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP est un framework open source pour PHP. Il vise à faciliter grandement le développement, le déploiement et la maintenance d'applications. CakePHP est basé sur une architecture de type MVC à la fois puissante et facile à appréhender. Modèles, vues et contrôleurs gu

CakePHP travaillant avec la base de données CakePHP travaillant avec la base de données Sep 10, 2024 pm 05:25 PM

Travailler avec la base de données dans CakePHP est très simple. Nous comprendrons les opérations CRUD (Créer, Lire, Mettre à jour, Supprimer) dans ce chapitre.

CakePHP créant des validateurs CakePHP créant des validateurs Sep 10, 2024 pm 05:26 PM

Le validateur peut être créé en ajoutant les deux lignes suivantes dans le contrôleur.

See all articles