Obtenir un ID de profil de locuteur pour la voix personnelle
Pour utiliser la voix personnelle dans votre application, vous devez obtenir un ID de profil d’orateur. L’ID de profil d’orateur permet de générer une sortie audio synthétisée avec l’entrée de texte fournie.
Vous créez un ID de profil de locuteur basé sur la déclaration de consentement oral du locuteur et un prompt audio (un échantillon de voix humaine claire d’une durée comprise entre 5 et 90 secondes). Les caractéristiques vocales de l’utilisateur sont encodées dans la propriété speakerProfileId
utilisée pour la synthèse vocale. Pour obtenir plus d’informations, consultez Utiliser la voix personnelle dans votre application.
Remarque
L’ID de voix personnelle et l’ID de profil d’orateur ne sont pas les mêmes. Vous pouvez choisir l’ID de voix personnelle, mais l’ID de profil d’orateur est généré par le service. Vous utilisez l’ID de voix personnelle pour gérer la voix personnelle. L’ID de profil d’orateur est utilisé pour la synthèse vocale.
Vous fournissez les fichiers audio à partir d’une URL accessible publiquement (PersonalVoices_Create) ou chargez les fichiers audio (PersonalVoices_Post).
Format audio de prompt
Les formats pris en charge pour les fichiers audio de prompt sont les suivants :
Format | Taux d’échantillonnage | Vitesse de transmission | Profondeur de bits |
---|---|---|---|
mp3 | 16 kHz, 24 kHz, 44,1 kHz, 48 kHz | 128 Kb/s, 192 Kb/s, 256 Kb/s, 320 Kb/s | / |
wav | 16 kHz, 24 kHz, 44,1 kHz, 48 kHz | / | 16 bits, 24 bits, 32 bits |
Créer une voix personnelle à partir d’un fichier
Dans ce scénario, les fichiers audio doivent être disponibles localement.
Pour créer une voix personnelle et obtenir l’ID du profil d’orateur, utilisez l’opération PersonalVoices_Post de l’API de voix personnalisée. Construisez le corps de la requête conformément aux instructions suivantes :
- Définissez la propriété requise
projectId
. Consultez Créer un projet. - Définissez la propriété requise
consentId
. Consultez Ajouter le consentement de l’utilisateur. - Définissez la propriété requise
audiodata
. Vous pouvez spécifier un ou plusieurs fichiers audio dans la même requête.
Effectuez une requête HTTP POST à l’aide de l’URI, comme indiqué dans l’exemple PersonalVoices_Post suivant.
- Remplacez
YourResourceKey
par votre clé de ressource Speech. - Remplacez
YourResourceRegion
par la région de votre ressource Speech. - Remplacez
JessicaPersonalVoiceId
par l’ID de voix personnelle de votre choix. L’ID sensible à la casse est utilisé dans l’URI de la voix personnelle et ne peut pas être modifié par la suite.
curl -v -X POST -H "Ocp-Apim-Subscription-Key: YourResourceKey" -F 'projectId="ProjectId"' -F 'consentId="JessicaConsentId"' -F 'audiodata=@"D:\PersonalVoiceTest\CNVSample001.wav"' -F 'audiodata=@"D:\PersonalVoiceTest\CNVSample002.wav"' "
https://YourResourceRegion.api.cognitive.microsoft.com/customvoice/personalvoices/JessicaPersonalVoiceId?api-version=2024-02-01-preview"
Vous devriez recevoir un corps de réponse au format suivant :
{
"id": "JessicaPersonalVoiceId",
"speakerProfileId": "3059912f-a3dc-49e3-bdd0-02e449df1fe3",
"projectId": "ProjectId",
"consentId": "JessicaConsentId",
"status": "NotStarted",
"createdDateTime": "2024-09-01T05:30:00.000Z",
"lastActionDateTime": "2024-09-02T10:15:30.000Z"
}
Utilisez la propriété speakerProfileId
pour intégrer la voix personnelle dans votre application de synthèse vocale. Pour obtenir plus d’informations, consultez Utiliser la voix personnelle dans votre application.
L’en-tête de réponse contient la propriété Operation-Location
. Utilisez cet URI pour obtenir des détails sur l’opération PersonalVoices_Post. Voici un exemple d’en-tête de réponse :
Operation-Location: https://eastus.api.cognitive.microsoft.com/customvoice/operations/1321a2c0-9be4-471d-83bb-bc3be4f96a6f?api-version=2024-02-01-preview
Operation-Id: 1321a2c0-9be4-471d-83bb-bc3be4f96a6f
Créer une voix personnelle à partir d’une URL
Dans ce scénario, les fichiers audio doivent déjà être stockés dans un conteneur Stockage Blob Azure.
Pour créer une voix personnelle et obtenir l’ID du profil d’orateur, utilisez l’opération PersonalVoices_Create de l’API de voix personnalisée. Construisez le corps de la requête conformément aux instructions suivantes :
- Définissez la propriété requise
projectId
. Consultez Créer un projet. - Définissez la propriété requise
consentId
. Consultez Ajouter le consentement de l’utilisateur. - Définissez la propriété requise
audios
. Dans la propriétéaudios
, définissez les propriétés suivantes :- Définissez la propriété requise
containerUrl
sur l’URL du conteneur Stockage Blob Azure qui contient les fichiers audio. Utilisez les signatures d'accès partagé (SAS) SAS pour un conteneur avec des autorisations de lecture et de liste. - Définissez la propriété requise
extensions
sur les extensions des fichiers audio. - Si vous le souhaitez, définissez la propriété
prefix
pour définir un préfixe pour le nom de l’objet blob.
- Définissez la propriété requise
Effectuez une requête HTTP PUT en utilisant l’URI, comme illustré dans l’exemple PersonalVoices_Create suivant.
- Remplacez
YourResourceKey
par votre clé de ressource Speech. - Remplacez
YourResourceRegion
par la région de votre ressource Speech. - Remplacez
JessicaPersonalVoiceId
par l’ID de voix personnelle de votre choix. L’ID sensible à la casse est utilisé dans l’URI de la voix personnelle et ne peut pas être modifié par la suite.
curl -v -X PUT -H "Ocp-Apim-Subscription-Key: YourResourceKey" -H "Content-Type: application/json" -d '{
"projectId": "ProjectId",
"consentId": "JessicaConsentId",
"audios": {
"containerUrl": "https://contoso.blob.core.windows.net/voicecontainer?mySasToken",
"prefix": "jessica/",
"extensions": [
".wav"
]
}
} ' "https://YourResourceRegion.api.cognitive.microsoft.com/customvoice/personalvoices/JessicaPersonalVoiceId?api-version=2024-02-01-preview"
# Ensure the `containerUrl` has both read and list permissions.
# Ensure the `.wav` files are located in the "jessica" folder within the container. The `prefix` matches all `.wav` files in the "jessica" folder. If there is no such folder, the prefix will match `.wav` files with names starting with "jessica".
Vous devriez recevoir un corps de réponse au format suivant :
{
"id": "JessicaPersonalVoiceId",
"speakerProfileId": "3059912f-a3dc-49e3-bdd0-02e449df1fe3",
"projectId": "ProjectId",
"consentId": "JessicaConsentId",
"status": "NotStarted",
"createdDateTime": "2024-09-01T05:30:00.000Z",
"lastActionDateTime": "2024-09-02T10:15:30.000Z"
}
Utilisez la propriété speakerProfileId
pour intégrer la voix personnelle dans votre application de synthèse vocale. Pour obtenir plus d’informations, consultez Utiliser la voix personnelle dans votre application.
L’en-tête de réponse contient la propriété Operation-Location
. Utilisez cet URI pour obtenir des détails sur l’opération PersonalVoices_Create. Voici un exemple d’en-tête de réponse :
Operation-Location: https://eastus.api.cognitive.microsoft.com/customvoice/operations/1321a2c0-9be4-471d-83bb-bc3be4f96a6f?api-version=2024-02-01-preview
Operation-Id: 1321a2c0-9be4-471d-83bb-bc3be4f96a6f