Compartilhar via


Obter uma ID de perfil do locutor para a voz pessoal

Para usar a voz pessoal em seu aplicativo, é necessário obter uma ID de perfil do locutor. A ID do perfil do locutor é usada para gerar áudio sintetizado com a entrada de texto fornecida.

Você cria uma ID de perfil do locutor com base na instrução de consentimento verbal do orador e em um prompt de áudio (uma amostra de voz humana limpa entre 5 e 90 segundos). As características da voz do usuário são codificadas na propriedade speakerProfileId que é usada para conversão de texto em fala. Para obter mais informações, confira usar a voz pessoal no seu aplicativo.

Observação

A ID de voz pessoal e a ID de perfil do locutor não são as mesmas. Você pode escolher a ID de voz pessoal, mas a ID do perfil do locutor é gerada pelo serviço. A ID de voz pessoal é usada para gerenciar a voz pessoal. A ID de perfil do locutor é usada para conversão de texto em fala.

Forneça os arquivos de áudio de uma URL acessível publicamente (PersonalVoices_Create) ou carregue os arquivos de áudio (PersonalVoices_Post).

Formato de áudio de prompt

Os formatos com suporte para arquivos de áudio de prompt são:

Formatar Taxa de amostragem Taxa de bits Profundidade de bits
mp3 16 kHz, 24 kHz, 44.1 kHz e 48 kHz 128 kbps, 192 kbps, 256 kbps e 320 kbps /
WAV 16 kHz, 24 kHz, 44.1 kHz e 48 kHz / 16 bits, 24 bits e 32 bits

Criar uma voz pessoal a partir de um arquivo

Nesse cenário, os arquivos de áudio devem estar disponíveis localmente.

Para criar uma voz pessoal e obter a ID do perfil do locutor, 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 projectId necessária. Consulte Criar um projeto.
  • Defina a propriedade consentId obrigatória. Consulte adicionar consentimento do usuário.
  • Defina a propriedade audiodata obrigatória. 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 do recurso de Fala.
  • Substitua YourResourceRegion por sua região de recursos do Serviço Cognitivo do Azure para Fala.
  • Substitua JessicaPersonalVoiceId por uma ID de voz pessoal de sua escolha. A ID sensível a maiúsculas e minúsculas será usada no URI da voz pessoal e não poderá ser alterada 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"

Você deve 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 speakerProfileId para integrar a voz pessoal em seu aplicativo de conversão de texto em fala. Para obter mais informações, confira usar a voz pessoal no seu aplicativo.

O cabeçalho da resposta contém a propriedade Operation-Location. Use esse 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 uma voz pessoal a partir de uma URL

Nesse cenário, os arquivos de áudio já devem estar armazenados em um contêiner do Armazenamento de Blobs do Azure.

Para criar uma voz pessoal e obter a ID do perfil do locutor, 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 projectId necessária. Consulte Criar um projeto.
  • Defina a propriedade consentId obrigatória. Consulte adicionar consentimento do usuário.
  • Defina a propriedade audios obrigatória. Dentro da propriedade audios, defina as seguintes propriedades:
    • Defina a propriedade containerUrl obrigatória para a URL do contêiner do Armazenamento de Blobs do Azure que contém os arquivos de áudio. Use SAS (assinaturas de acesso compartilhado) para um contêiner com permissões de leitura e listagem.
    • Defina a propriedade extensions obrigatória para as extensões dos arquivos de áudio.
    • Opcionalmente, defina a propriedade prefix para definir um prefixo para o nome do blob.

Faça uma solicitação HTTP PUT usando o URI, conforme mostrado no exemplo de PersonalVoices_Create a seguir.

  • Substitua YourResourceKey pela chave do recurso de Fala.
  • Substitua YourResourceRegion por sua região de recursos do Serviço Cognitivo do Azure para Fala.
  • Substitua JessicaPersonalVoiceId por uma ID de voz pessoal de sua escolha. A ID sensível a maiúsculas e minúsculas será usada no URI da voz pessoal e não poderá ser alterada 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". 

Você deve 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 speakerProfileId para integrar a voz pessoal em seu aplicativo de conversão de texto em fala. Para obter mais informações, confira usar a voz pessoal no seu aplicativo.

O cabeçalho da resposta contém a propriedade Operation-Location. Use esse 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

Próximas etapas