將使用者同意新增至個人版語音專案
使用個人語音功能時,必須以使用者明確同意建立每個語音。 使用者必須確認客戶 (Azure AI 語音資源擁有者) 會建立及使用其語音,因此需要使用者錄製的語句。
若要將使用者同意新增至個人語音專案,您可以從可公開存取的 URL 提供預先錄製的同意音訊檔案 (Consents_Create),或上傳音訊檔案 (Consents_Post)。
同意聲明
您需要使用者說話同意聲明的音訊錄製。
您可以從文字到語音 GitHub 存放庫取得每個地區設定的同意語句文字。 如需同意聲明,請參閱 verbal-statement-all-locales.txt。 以下是 en-US
地區設定的範例:
"I [state your first and last name] am aware that recordings of my voice will be used by [state the name of the company] to create and use a synthetic version of my voice."
同意音訊的支援音訊格式
如需同意音訊檔案的支援格式,請參閱下表:
格式 | 採樣速率 | 位元速率 | 位元深度 |
---|---|---|---|
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 位元、24 位元、32 位元 |
從檔案新增同意
在此案例中,音訊檔案必須在本機使用。
若要從本機音訊檔案新增對個人語音專案的同意,請使用自訂語音 API 的 Consents_Post
作業。 根據下列指示來建構要求本文:
- 設定必要的
projectId
屬性。 請參閱 建立專案。 - 設定必要的
voiceTalentName
屬性。 語音配音員名稱稍後無法變更。 - 設定必要的
companyName
屬性。 公司名稱無法在之後變更。 - 使用同意音訊檔案設定必要的
audiodata
屬性。 - 設定必要的
locale
屬性。 這應該是同意的地區設定。 稍後無法變更此地區設定。 您可以在這裡找到文字轉換語音的地區設定清單。
使用 URI 提出 HTTP POST 要求,如下列 Consents_Post
範例所示。
- 以您的語音資源金鑰取代
YourResourceKey
。 - 將
YourResourceRegion
取代為您的語音資源區域。 - 將
JessicaConsentId
取代為您選擇的同意識別碼。 區分大小寫的識別碼將會用於同意的 URI 中,且稍後無法變更。
curl -v -X POST -H "Ocp-Apim-Subscription-Key: YourResourceKey" -F 'description="Consent for Jessica voice"' -F 'projectId="ProjectId"' -F 'voiceTalentName="Jessica Smith"' -F 'companyName="Contoso"' -F 'audiodata=@"D:\PersonalVoiceTest\jessica-consent.wav"' -F 'locale="en-US"' "https://YourResourceRegion.api.cognitive.microsoft.com/customvoice/consents/JessicaConsentId?api-version=2024-02-01-preview"
您應該會收到下列格式的回應本文:
{
"id": "JessicaConsentId",
"description": "Consent for Jessica voice",
"projectId": "ProjectId",
"voiceTalentName": "Jessica Smith",
"companyName": "Contoso",
"locale": "en-US",
"status": "NotStarted",
"createdDateTime": "2024-09-01T05:30:00.000Z",
"lastActionDateTime": "2024-09-02T10:15:30.000Z"
}
回應標頭包含 Operation-Location
屬性。 使用此 URI 來取得 Consents_Post
作業的詳細資料。 以下是回應標頭的範例:
Operation-Location: https://eastus.api.cognitive.microsoft.com/customvoice/operations/070f7986-ef17-41d0-ba2b-907f0f28e314?api-version=2024-02-01-preview
Operation-Id: 070f7986-ef17-41d0-ba2b-907f0f28e314
從 URL 新增同意
在此案例中,音訊檔案必須已儲存在 Azure Blob 儲存體容器中。
若要從音訊檔案的 URL 新增對個人語音專案的同意,請使用 自訂語音 API 的 Consents_Create 作業。 根據下列指示來建構要求本文:
- 設定必要的
projectId
屬性。 請參閱 建立專案。 - 設定必要的
voiceTalentName
屬性。 語音配音員名稱稍後無法變更。 - 設定必要的
companyName
屬性。 公司名稱無法在之後變更。 - 設定必要的
audioUrl
屬性。 語音配音員同意音訊檔案的 URL。 使用 URI 搭配共用存取簽章 (SAS) 權杖。 - 設定必要的
locale
屬性。 這應該是同意的地區設定。 稍後無法變更此地區設定。 您可以在這裡找到文字轉換語音的地區設定清單。
使用 URI 提出 HTTP PUT 要求,如下列 Consents_Create 範例所示。
- 以您的語音資源金鑰取代
YourResourceKey
。 - 將
YourResourceRegion
取代為您的語音資源區域。 - 將
JessicaConsentId
取代為您選擇的同意識別碼。 區分大小寫的識別碼將會用於同意的 URI 中,且稍後無法變更。
curl -v -X PUT -H "Ocp-Apim-Subscription-Key: YourResourceKey" -H "Content-Type: application/json" -d '{
"description": "Consent for Jessica voice",
"projectId": "ProjectId",
"voiceTalentName": "Jessica Smith",
"companyName": "Contoso",
"audioUrl": "https://contoso.blob.core.windows.net/public/jessica-consent.wav?mySasToken",
"locale": "en-US"
} ' "https://YourResourceRegion.api.cognitive.microsoft.com/customvoice/consents/JessicaConsentId?api-version=2024-02-01-preview"
您應該會收到下列格式的回應本文:
{
"id": "JessicaConsentId",
"description": "Consent for Jessica voice",
"projectId": "ProjectId",
"voiceTalentName": "Jessica Smith",
"companyName": "Contoso",
"locale": "en-US",
"status": "NotStarted",
"createdDateTime": "2024-09-01T05:30:00.000Z",
"lastActionDateTime": "2024-09-02T10:15:30.000Z"
}
回應標頭包含 Operation-Location
屬性。 使用此 URI 來取得 Consents_Create 作業的詳細資料。 以下是回應標頭的範例:
Operation-Location: https://eastus.api.cognitive.microsoft.com/customvoice/operations/070f7986-ef17-41d0-ba2b-907f0f28e314?api-version=2024-02-01-preview
Operation-Id: 070f7986-ef17-41d0-ba2b-907f0f28e314