Obter um ID de perfil de orador para a voz pessoal
Para usar a voz pessoal em seu aplicativo, você precisa obter um ID de perfil de alto-falante. O ID do perfil do alto-falante é usado para gerar áudio sintetizado com a entrada de texto fornecida.
Você cria um ID de perfil de alto-falante com base na declaração de consentimento verbal do orador e um prompt de áudio (uma amostra de voz humana limpa entre 5 e 90 segundos). As características de voz do usuário são codificadas na propriedade usada para conversão de texto em speakerProfileId
fala. Para obter mais informações, consulte Usar voz pessoal em seu aplicativo.
Nota
O ID de voz pessoal e o ID do perfil do orador não são os mesmos. Você pode escolher o ID de voz pessoal, mas o ID do perfil do alto-falante é gerado pelo serviço. O ID de voz pessoal é usado para gerenciar a voz pessoal. O ID do perfil do orador é usado para conversão de texto em fala.
Você fornece os arquivos de áudio a partir de um URL acessível publicamente (PersonalVoices_Create) ou carrega os arquivos de áudio (PersonalVoices_Post).
Prompt formato de áudio
Os formatos suportados para arquivos de áudio prompt são:
Formato | Taxa de amostragem | Taxa de bits | Profundidade de bits |
---|---|---|---|
mp3 | 16 kHz, 24 kHz, 44,1 kHz, 48 kHz | 128 kbps, 192 kbps, 256 kbps, 320 kbps | / |
WAV | 16 kHz, 24 kHz, 44,1 kHz, 48 kHz | / | 16 bits, 24 bits, 32 bits |
Criar voz pessoal a partir de um ficheiro
Nesse cenário, os arquivos de áudio devem estar disponíveis localmente.
Para criar uma voz pessoal e obter o ID do perfil do orador, use a operação PersonalVoices_Post da API de voz personalizada. Construa o corpo da solicitação de acordo com as seguintes instruções:
- Defina a propriedade necessária
projectId
. Consulte Criar um projeto. - Defina a propriedade necessária
consentId
. Consulte Adicionar consentimento do usuário. - Defina a propriedade necessária
audiodata
. Você pode especificar um ou mais arquivos de áudio na mesma solicitação.
Faça uma solicitação HTTP POST usando o URI, conforme mostrado no exemplo de PersonalVoices_Post a seguir.
- Substitua
YourResourceKey
pela chave de recurso de fala. - Substitua
YourResourceRegion
pela região de recursos de Fala. - Substitua
JessicaPersonalVoiceId
por um ID de voz pessoal de sua escolha. O ID sensível a maiúsculas e minúsculas será usado no URI da voz pessoal e não poderá ser alterado posteriormente.
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"
Deverá receber um corpo de resposta no seguinte formato:
{
"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"
}
Use a propriedade para integrar voz speakerProfileId
pessoal em seu aplicativo de texto para fala. Para obter mais informações, consulte Usar voz pessoal em seu aplicativo.
O cabeçalho de resposta contém a Operation-Location
propriedade. Use este URI para obter detalhes sobre a operação PersonalVoices_Post. Aqui está um exemplo do cabeçalho da resposta:
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
Criar voz pessoal a partir de um URL
Nesse cenário, os arquivos de áudio já devem estar armazenados em um contêiner de Armazenamento de Blob do Azure.
Para criar uma voz pessoal e obter o ID do perfil do orador, use a operação PersonalVoices_Create da API de voz personalizada. Construa o corpo da solicitação de acordo com as seguintes instruções:
- Defina a propriedade necessária
projectId
. Consulte Criar um projeto. - Defina a propriedade necessária
consentId
. Consulte Adicionar consentimento do usuário. - Defina a propriedade necessária
audios
. Dentro daaudios
propriedade, defina as seguintes propriedades:- Defina a propriedade necessária
containerUrl
para a URL do contêiner de Armazenamento de Blob do Azure que contém os arquivos de áudio. Use assinaturas de acesso compartilhado (SAS) SAS para um contêiner com permissões de leitura e lista. - Defina a propriedade required
extensions
para as extensões dos arquivos de áudio. - Opcionalmente, defina a propriedade para definir um prefixo
prefix
para o nome do blob.
- Defina a propriedade necessária
Faça uma solicitação HTTP PUT usando o URI, conforme mostrado no exemplo de PersonalVoices_Create a seguir.
- Substitua
YourResourceKey
pela chave de recurso de fala. - Substitua
YourResourceRegion
pela região de recursos de Fala. - Substitua
JessicaPersonalVoiceId
por um ID de voz pessoal de sua escolha. O ID sensível a maiúsculas e minúsculas será usado no URI da voz pessoal e não poderá ser alterado posteriormente.
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".
Deverá receber um corpo de resposta no seguinte formato:
{
"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"
}
Use a propriedade para integrar voz speakerProfileId
pessoal em seu aplicativo de texto para fala. Para obter mais informações, consulte Usar voz pessoal em seu aplicativo.
O cabeçalho de resposta contém a Operation-Location
propriedade. Use este URI para obter detalhes sobre a operação PersonalVoices_Create . Aqui está um exemplo do cabeçalho da resposta:
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