Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A szöveg–beszéd avatar kötegelt szintézisi API lehetővé teszi a szöveg aszinkron szintézisét egy beszélő avatarba videófájlként. A közzétevők és a videótartalom-platformok ezt az API-t használhatják avatarvideó-tartalmak kötegben való létrehozásához. Ez a megközelítés alkalmas lehet különböző használati esetekre, például tananyagokra, bemutatókra vagy hirdetésekre.
A szintetikus avatarvideó aszinkron módon jön létre, miután a rendszer szöveges bemenetet kap. A létrehozott videokimenet kötegelt módban tölthető le. Szöveget küldhet a szintézishez, lekérdezheti a szintézis állapotát, és letöltheti a videó kimenetét, ha az állapot sikerességet jelez. A szövegbeviteli formátumoknak egyszerű szövegnek vagy beszédszintézisi korrektúranyelvnek (SSML) kell lenniük.
Ez a diagram magas szintű áttekintést nyújt a munkafolyamatról.
A kötegszintézis végrehajtásához a következő REST API-műveleteket használhatja.
Művelet | Metódus | REST API-hívás |
---|---|---|
Kötegszintézis létrehozása | Helyezze | avatar/batchsyntheses/{SynthesisId}?api-version=2024-08-01 |
Kötegszintézis lekérése | KAP | avatar/batchsyntheses/{SynthesisId}?api-version=2024-08-01 |
Kötegszintézis listázása | KAP | avatar/batchsyntheses/?api-version=2024-08-01 |
Kötegszintézis törlése | Törlés... | avatar/batchsyntheses/{SynthesisId}?api-version=2024-08-01 |
A GitHubon található kódmintákra is hivatkozhat.
Kötegszintézis-kérés létrehozása
Új kötegszintézisi feladat létrehozásakor JSON formátumú tulajdonságokra van szükség. Más tulajdonságok megadása nem kötelező. A kötegszintézis válasza más tulajdonságokat is tartalmaz, amelyek információt nyújtanak a szintézis állapotáról és az eredményekről. A tulajdonság például azt a outputs.result
helyet tartalmazza, ahonnan letöltheti az avatarvideóját tartalmazó videofájlt . Innen outputs.summary
elérheti az összegzés és a hibakeresés részleteit.
Kötegszintézis-kérés elküldéséhez az alábbi utasításokat követve hozza létre a HTTP POST kérelem törzsét:
- Állítsa be a szükséges
inputKind
tulajdonságot. - Ha a
inputKind
tulajdonság értékePlainText
a következő, a tulajdonságot is be kell állítania avoice
következőben: .synthesisConfig> Az alábbi példában ainputKind
be van állítvaSSML
-re, így aspeechSynthesis
nincs beállítva. - Állítsa be a szükséges
SynthesisId
tulajdonságot. Válasszon egyeditSynthesisId
ugyanahhoz a beszéderőforráshoz. ASynthesisId
sztring 3–64 karakterből állhat, beleértve a betűket, számokat, "-" vagy "_" karaktert, azzal a feltétellel, hogy betűvel vagy számmal kell kezdődnie és végződnie. - Adja meg a szükséges
talkingAvatarCharacter
éstalkingAvatarStyle
a tulajdonságokat. A támogatott avatarkarakterek és stílusok itt találhatók. - Igény szerint beállíthatja a
videoFormat
,backgroundColor
és egyéb tulajdonságokat is. További információ: kötegszintézis tulajdonságai.
Feljegyzés
Az elfogadott maximális JSON-hasznos adatméret 500 kilobájt.
Minden Speech-erőforrás legfeljebb 200 kötegelt szintézisfeladatot futtathat egyidejűleg.
A kimeneti videó maximális hossza jelenleg 20 perc, és a jövőben potenciálisan nő.
HTTP PUT-kérés létrehozásához használja az alábbi példában látható URI-formátumot. Cserélje le a YourSpeechKey
értéket a Speech erőforráskulcsára, a YourSpeechRegion
értéket pedig a Speech erőforrásrégiójára, és állítsa be a kérés törzstulajdonságait a korábban leírtak szerint.
curl -v -X PUT -H "Ocp-Apim-Subscription-Key: YourSpeechKey" -H "Content-Type: application/json" -d '{
"inputKind": "SSML",
"inputs": [
{
"content": "<speak version='\''1.0'\'' xml:lang='\''en-US'\''><voice name='\''en-US-AvaMultilingualNeural'\''>The rainbow has seven colors.</voice></speak>"
}
],
"avatarConfig": {
"talkingAvatarCharacter": "lisa",
"talkingAvatarStyle": "graceful-sitting"
}
}' "https://YourSpeechRegion.api.cognitive.microsoft.com/avatar/batchsyntheses/my-job-01?api-version=2024-08-01"
A válasz törzsének a következő formátumban kell érkeznie:
{
"id": "my-job-01",
"internalId": "5a25b929-1358-4e81-a036-33000e788c46",
"status": "NotStarted",
"createdDateTime": "2024-03-06T07:34:08.9487009Z",
"lastActionDateTime": "2024-03-06T07:34:08.9487012Z",
"inputKind": "SSML",
"customVoices": {},
"properties": {
"timeToLiveInHours": 744,
},
"avatarConfig": {
"talkingAvatarCharacter": "lisa",
"talkingAvatarStyle": "graceful-sitting",
"videoFormat": "Mp4",
"videoCodec": "hevc",
"subtitleType": "soft_embedded",
"bitrateKbps": 2000,
"customized": false
}
}
A status
tulajdonságnak állapotról állapotra NotStarted
kell haladnia Running
, és végül a következőre kell haladnia Succeeded
: vagy Failed
. Rendszeres időközönként meghívhatja a GET kötegelt szintézis API-t , amíg a visszaadott állapot Succeeded
vagy Failed
.
Kötegszintézis lekérése
A kötegszintézisi feladat állapotának lekéréséhez hozzon létre egy HTTP GET kérést az URI használatával az alábbi példában látható módon.
Cserélje le YourSynthesisId
a kötegszintézis azonosítójára, YourSpeechKey
a Speech erőforráskulcsára és YourSpeechRegion
a Speech-erőforrásterületre.
curl -v -X GET "https://YourSpeechRegion.api.cognitive.microsoft.com/avatar/batchsyntheses/YourSynthesisId?api-version=2024-08-01" -H "Ocp-Apim-Subscription-Key: YourSpeechKey"
A válasz törzsének a következő formátumban kell érkeznie:
{
"id": "my-job-01",
"internalId": "5a25b929-1358-4e81-a036-33000e788c46",
"status": "Succeeded",
"createdDateTime": "2024-03-06T07:34:08.9487009Z",
"lastActionDateTime": "2024-03-06T07:34:12.5698769",
"inputKind": "SSML",
"customVoices": {},
"properties": {
"timeToLiveInHours": 744,
"sizeInBytes": 344460,
"durationInMilliseconds": 2520,
"succeededCount": 1,
"failedCount": 0,
"billingDetails": {
"neuralCharacters": 29,
"talkingAvatarDurationSeconds": 2
}
},
"avatarConfig": {
"talkingAvatarCharacter": "lisa",
"talkingAvatarStyle": "graceful-sitting",
"videoFormat": "Mp4",
"videoCodec": "hevc",
"subtitleType": "soft_embedded",
"bitrateKbps": 2000,
"customized": false
},
"outputs": {
"result": "https://stttssvcprodusw2.blob.core.windows.net/batchsynthesis-output/xxxxx/xxxxx/0001.mp4?SAS_Token",
"summary": "https://stttssvcprodusw2.blob.core.windows.net/batchsynthesis-output/xxxxx/xxxxx/summary.json?SAS_Token"
}
}
A mezőből letöltheti az outputs.result
avatarvideóját tartalmazó videófájlt. A outputs.summary
mező lehetővé teszi az összegzés és a hibakeresési adatok letöltését. A kötegszintézis eredményeiről további információt a kötegszintézis eredményeit ismertető cikkben talál.
Kötegszintézis listázása
A Speech-erőforrás összes kötegelt szintézisi feladatának listázásához hozzon létre egy HTTP GET kérést az URI használatával az alábbi példában látható módon.
Cserélje le YourSpeechKey
a Speech erőforráskulcsra és YourSpeechRegion
a Speech erőforrásrégiójára. Igény szerint az URL-címben beállíthatja az skip
és top
(oldalméret) lekérdezési paramétereket. Az alapértelmezett érték skip
0, az alapértelmezett érték maxpagesize
pedig 100.
curl -v -X GET "https://YourSpeechRegion.api.cognitive.microsoft.com/avatar/batchsyntheses?skip=0&maxpagesize=2&api-version=2024-08-01" -H "Ocp-Apim-Subscription-Key: YourSpeechKey"
A válasz törzse a következő formátumban érkezik:
{
"value": [
{
"id": "my-job-02",
"internalId": "14c25fcf-3cb6-4f46-8810-ecad06d956df",
"status": "Succeeded",
"createdDateTime": "2024-03-06T07:52:23.9054709Z",
"lastActionDateTime": "2024-03-06T07:52:29.3416944",
"inputKind": "SSML",
"customVoices": {},
"properties": {
"timeToLiveInHours": 744,
"sizeInBytes": 502676,
"durationInMilliseconds": 2950,
"succeededCount": 1,
"failedCount": 0,
"billingDetails": {
"neuralCharacters": 32,
"talkingAvatarDurationSeconds": 2
}
},
"avatarConfig": {
"talkingAvatarCharacter": "lisa",
"talkingAvatarStyle": "casual-sitting",
"videoFormat": "Mp4",
"videoCodec": "h264",
"subtitleType": "soft_embedded",
"bitrateKbps": 2000,
"customized": false
},
"outputs": {
"result": "https://stttssvcprodusw2.blob.core.windows.net/batchsynthesis-output/xxxxx/xxxxx/0001.mp4?SAS_Token",
"summary": "https://stttssvcprodusw2.blob.core.windows.net/batchsynthesis-output/xxxxx/xxxxx/summary.json?SAS_Token"
}
},
{
"id": "my-job-01",
"internalId": "5a25b929-1358-4e81-a036-33000e788c46",
"status": "Succeeded",
"createdDateTime": "2024-03-06T07:34:08.9487009Z",
"lastActionDateTime": "2024-03-06T07:34:12.5698769",
"inputKind": "SSML",
"customVoices": {},
"properties": {
"timeToLiveInHours": 744,
"sizeInBytes": 344460,
"durationInMilliseconds": 2520,
"succeededCount": 1,
"failedCount": 0,
"billingDetails": {
"neuralCharacters": 29,
"talkingAvatarDurationSeconds": 2
}
},
"avatarConfig": {
"talkingAvatarCharacter": "lisa",
"talkingAvatarStyle": "graceful-sitting",
"videoFormat": "Mp4",
"videoCodec": "hevc",
"subtitleType": "soft_embedded",
"bitrateKbps": 2000,
"customized": false
},
"outputs": {
"result": "https://stttssvcprodusw2.blob.core.windows.net/batchsynthesis-output/xxxxx/xxxxx/0001.mp4?SAS_Token",
"summary": "https://stttssvcprodusw2.blob.core.windows.net/batchsynthesis-output/xxxxx/xxxxx/summary.json?SAS_Token"
}
}
],
"nextLink": "https://YourSpeechRegion.api.cognitive.microsoft.com/avatar/batchsyntheses/?api-version=2024-08-01&skip=2&maxpagesize=2"
}
Innen outputs.result
letöltheti az avatarvideóját tartalmazó videófájlt. Innen outputs.summary
elérheti az összegzés és a hibakeresés részleteit. További információkért tekintse meg a kötegszintézis eredményeit.
A value
JSON-válasz tulajdonsága felsorolja a szintéziskéréseket. A lista lapszámozott, maximális oldalmérete 100. A nextLink
tulajdonság szükség szerint meg van adva a lapszámozott lista következő oldalának lekéréséhez.
Kötegelt szintézis eredményfájl lekérése
Miután megkapta a "Sikeres" kötegelt szintézisi feladatot status
, letöltheti a videó kimenetének eredményeit. Használja a get batch synthesisoutputs.result
url-címét.
A kötegszintézis eredményfájljának lekéréséhez hozzon létre egy HTTP GET kérést az URI használatával az alábbi példában látható módon. Cserélje le YourOutputsResultUrl
a lekérési kötegszintézis-válasz tulajdonságának outputs.result
URL-címét. Cserélje le YourSpeechKey
a Speech erőforráskulcsot.
curl -v -X GET "YourOutputsResultUrl" -H "Ocp-Apim-Subscription-Key: YourSpeechKey" > output.mp4
A kötegszintézis összefoglaló fájljának lekéréséhez hozzon létre egy HTTP GET kérést az URI használatával, ahogyan az az alábbi példában látható. Cserélje le YourOutputsResultUrl
a lekérési kötegszintézis-válasz tulajdonságának outputs.summary
URL-címét. Cserélje le YourSpeechKey
a Speech erőforráskulcsot.
curl -v -X GET "YourOutputsSummaryUrl" -H "Ocp-Apim-Subscription-Key: YourSpeechKey" > summary.json
Az összefoglaló fájl tartalmazza az egyes szövegbevitelek összefoglaló eredményeit. Íme egy példa summary.json fájlra:
{
"jobID": "5a25b929-1358-4e81-a036-33000e788c46",
"status": "Succeeded",
"results": [
{
"texts": [
"<speak version='1.0' xml:lang='en-US'><voice name='en-US-AvaMultilingualNeural'>The rainbow has seven colors.</voice></speak>"
],
"status": "Succeeded",
"videoFileName": "244a87c294b94ddeb3dbaccee8ffa7eb/5a25b929-1358-4e81-a036-33000e788c46/0001.mp4",
"TalkingAvatarCharacter": "lisa",
"TalkingAvatarStyle": "graceful-sitting"
}
]
}
Kötegszintézis törlése
Miután lekérte a hangkimenet eredményeit, és már nincs szüksége a kötegszintézisi feladat előzményeire, törölheti azt. A Speech szolgáltatás az egyes szintéziselőzményeket legfeljebb 31 napig vagy a kérelem tulajdonsága timeToLiveInHours
által megadott időtartamig őrzi meg, attól függően, hogy melyik hamarabb következik be. Az automatikus törlés dátuma és időpontja a "Sikeres" vagy "Sikertelen" állapotú szintézisfeladatok esetében a rendszer a tulajdonságok és lastActionDateTime
a timeToLive
tulajdonságok összegeként számítja ki.
Kötegszintézisi feladat törléséhez hozzon létre egy HTTP DELETE-kérést az alábbi URI formátum használatával. Cserélje le YourSynthesisId
a kötegszintézis azonosítójára, YourSpeechKey
a Speech erőforráskulcsára és YourSpeechRegion
a Speech-erőforrásterületre.
curl -v -X DELETE "https://YourSpeechRegion.api.cognitive.microsoft.com/avatar/batchsyntheses/YourSynthesisId?api-version=2024-08-01" -H "Ocp-Apim-Subscription-Key: YourSpeechKey"
A válaszfejlécek tartalmazzák HTTP/1.1 204 No Content
, hogy a törlési kérés sikeres volt-e.