Az Azure Media Services mint Event Grid-forrás
Ez a cikk a Media Services-események sémáit és tulajdonságait ismerteti.
Feladattal kapcsolatos eseménytípusok
A Media Services az alábbiakban ismertetett feladattal kapcsolatos eseménytípusokat bocsátja ki. A feladattal kapcsolatos eseményeknek két kategóriája van: "Feladatállapotváltozások figyelése" és "Feladat kimeneti állapotának változásainak figyelése".
Az összes eseményre regisztrálhat a JobStateChange eseményre való feliratkozással. Vagy csak bizonyos eseményekre (például a JobErrored, a JobFinished és a JobCanceled) előfizethet.
Feladat állapotváltozásának figyelése
Eseménytípus | Leírás |
---|---|
Microsoft.Media.JobStateChange | Esemény lekérése az összes feladatállapot-módosításhoz. |
Microsoft.Media.JobScheduled | Esemény lekérése, amikor a feladat ütemezett állapotba vált. |
Microsoft.Media.JobProcessing | Esemény lekérése, amikor a feladat átáll a feldolgozási állapotra. |
Microsoft.Media.JobCanceling | Esemény lekérése, amikor a Feladat megszakítási állapotra vált. |
Microsoft.Media.JobFinished | Esemény lekérése, amikor a feladat befejezett állapotra vált. Ez egy végső állapot, amely a feladat kimeneteit tartalmazza. |
Microsoft.Media.JobCanceled | Esemény lekérése, amikor a Feladat megszakított állapotra vált. Ez egy végső állapot, amely a feladat kimeneteit tartalmazza. |
Microsoft.Media.JobErrored | Esemény lekérése, amikor a feladat hibaállapotra vált. Ez egy végső állapot, amely a feladat kimeneteit tartalmazza. |
Lásd az alábbi séma-példákat .
Feladat kimeneti állapotának változásainak figyelése
Egy feladat több feladatkimenetet is tartalmazhat (ha az átalakítást több feladatkimenetre konfigurálta.) Ha nyomon szeretné követni az egyes feladatok kimenetének részleteit, figyelje meg a feladat kimenetének változási eseményét.
Minden feladat magasabb szinten lesz, mint a JobOutput, így a feladat kimeneti eseményei egy megfelelő feladaton belül aktiválva lesznek.
A hibaüzenetek az JobFinished
JobCanceled
JobError
egyes feladatkimenetek összesített eredményeit jelenítik meg, ha mindegyik befejeződött. Míg a feladat kimeneti eseményei az egyes tevékenységek befejeződése után aktiválódik. Ha például kódolási kimenettel rendelkezik, majd videoelemzési kimenettel rendelkezik, két eseményt fog aktiválni feladatkimeneti eseményként, mielőtt a végső JobFinished esemény aktiválódik az összesített adatokkal.
Eseménytípus | Leírás |
---|---|
Microsoft.Media.JobOutputStateChange | Esemény lekérése a feladat kimeneti állapotának minden módosításához. |
Microsoft.Media.JobOutputScheduled | Esemény lekérése, amikor a feladat kimenete ütemezett állapotba vált. |
Microsoft.Media.JobOutputProcessing | Esemény lekérése, amikor a feladat kimenete átáll a feldolgozási állapotra. |
Microsoft.Media.JobOutputCanceling | Esemény lekérése, amikor a feladat kimenete a megszakítási állapotra vált. |
Microsoft.Media.JobOutputFinished | Esemény lekérése, amikor a feladat kimenete befejezett állapotba vált. |
Microsoft.Media.JobOutputCanceled | Esemény lekérése, amikor a feladat kimenete megszakított állapotra vált. |
Microsoft.Media.JobOutputErrored | Esemény lekérése, amikor a feladat kimenete hibaállapotba vált. |
Lásd az alábbi séma-példákat .
Feladat kimenetének monitorozása
Eseménytípus | Leírás |
---|---|
Microsoft.Media.JobOutputProgress | Ez az esemény a feladat feldolgozásának előrehaladását tükrözi, 0% és 100% között. A szolgáltatás akkor kísérel meg eseményt küldeni, ha a folyamat értéke 5%-kal vagy nagyobb mértékben nőtt, vagy több mint 30 másodperc telt el az utolsó esemény (szívverés) óta. Az előrehaladási érték nem garantáltan 0%-os vagy 100%-os kezdőérték, és az sem garantált, hogy állandó ütemben növekszik az idő függvényében. Ez az esemény nem használható annak megállapítására, hogy a feldolgozás befejeződött- ehelyett az állapotváltozási eseményeket kell használnia. |
Lásd az alábbi séma-példákat .
Élő eseménytípusok
A Media Services az alább ismertetett élő eseménytípusokat is kibocsátja. Az élő eseményeknek két kategóriája van: streamszintű események és pályaszintű események.
Stream szintű események
A streamszintű események streamenként vagy kapcsolatonként jönnek létre. Minden eseményhez tartozik egy StreamId
paraméter, amely azonosítja a kapcsolatot vagy a streamet. Minden stream vagy kapcsolat egy vagy több különböző típusú számmal rendelkezik. Egy kódolóból származó kapcsolat például egy hangsávot és négy videosávot tartalmazhat. A streames eseménytípusok a következők:
Eseménytípus | Leírás |
---|---|
Microsoft.Media.LiveEvent Csatlakozás ionRejected | A kódoló csatlakozási kísérlete elutasítva. |
Microsoft.Media.LiveEventEncoder Csatlakozás ed | Az Encoder kapcsolatot létesít az élő eseményekkel. |
Microsoft.Media.LiveEventEncoderDisconnected | A kódoló leválasztja a kapcsolatot. |
Lásd az alábbi séma-példákat .
Pályaszintű események
A pályaszintű eseményeket a rendszer sávonként emeli ki.
Feljegyzés
Az élő kódoló csatlakoztatása után minden pályaszintű esemény létre lesz hozva.
A pályaszintű eseménytípusok a következők:
Eseménytípus | Leírás |
---|---|
Microsoft.Media.LiveEventIncomingDataChunkDropped | A médiakiszolgáló elveti az adattömbet, mert túl késő, vagy átfedésben van az időbélyeggel (az új adattömb időbélyege kisebb, mint az előző adattömb befejezési ideje). |
Microsoft.Media.LiveEventIncomingStreamReceived | A médiakiszolgáló megkapja az első adattömbet a streamben vagy a kapcsolatban lévő egyes pályákhoz. |
Microsoft.Media.LiveEventIncoming adatfolyamok OutOfSync | A médiakiszolgáló észleli, hogy a hang- és videostreamek nincsenek szinkronizálva. Figyelmeztetésként használható, mert előfordulhat, hogy a felhasználói élmény nem lesz hatással. |
Microsoft.Media.LiveEventIncomingVideo adatfolyamok OutOfSync | A médiakiszolgáló észleli, hogy a külső kódolóból érkező két videostream nincs szinkronizálva. Figyelmeztetésként használható, mert előfordulhat, hogy a felhasználói élmény nem lesz hatással. |
Microsoft.Media.LiveEventIngestHeartbeat | Az élő esemény futtatásakor minden számhoz 20 másodpercenként közzétéve. A betöltési állapot összegzése. A kódoló első csatlakoztatása után a szívverési esemény továbbra is 20 másodpercenként bocsát ki, függetlenül attól, hogy a kódoló továbbra is csatlakoztatva van-e. |
Microsoft.Media.LiveEventTrackDiscontinuityDetected | A médiakiszolgáló észleli a bejövő zeneszám megszakadását. |
Lásd az alábbi séma-példákat .
Példák eseményséma-példákra
JobStateChange
Az alábbi példa a JobStateChange esemény sémáját mutatja be:
[
{
"source": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaservices/<account-name>",
"subject": "transforms/VideoAnalyzerTransform/jobs/<job-id>",
"type": "Microsoft.Media.JobStateChange",
"time": "2018-04-20T21:26:13.8978772",
"id": "b9d38923-9210-4c2b-958f-0054467d4dd7",
"data": {
"previousState": "Processing",
"state": "Finished"
},
"specversion": "1.0"
}
]
Az adatobjektum a következő tulajdonságokkal rendelkezik:
Tulajdonság | Típus | Leírás |
---|---|---|
previousState |
húr | A feladat állapota az esemény előtt. |
state |
húr | Az eseményben értesített feladat új állapota. Például: "Ütemezett: A feladat készen áll a kezdésre" vagy a "Kész: A feladat befejeződött". |
Ahol a feladat állapota a következő értékek egyike lehet: Queued, Scheduled, Processing, Finished, Error, Canceled, Canceling
Feljegyzés
A várólista csak az előzőState tulajdonságban lesz jelen, az állapottulajdonságban nem.
JobScheduled, JobProcessing, JobCanceling
Minden nem végleges feladatállapot-változás (például Feladatütemezés, Feladatfeldolgozás, JobCanceling) esetében a példaséma a következőhöz hasonlóan néz ki:
[{
"source": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaservices/<account-name>",
"subject": "transforms/VideoAnalyzerTransform/jobs/<job-id>",
"type": "Microsoft.Media.JobProcessing",
"time": "2018-10-12T16:12:18.0839935",
"id": "a0a6efc8-f647-4fc2-be73-861fa25ba2db",
"data": {
"previousState": "Scheduled",
"state": "Processing",
"correlationData": {
"testKey1": "testValue1",
"testKey2": "testValue2"
}
},
"specversion": "1.0"
}]
JobFinished, JobCanceled, JobErrored
Minden egyes végleges feladatállapot-változás (például JobFinished, JobCanceled, JobErrored) esetében a példaséma a következőhöz hasonlóan néz ki:
[{
"source": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaservices/<account-name>",
"subject": "transforms/VideoAnalyzerTransform/jobs/<job-id>",
"type": "Microsoft.Media.JobFinished",
"time": "2018-10-12T16:25:56.4115495",
"id": "9e07e83a-dd6e-466b-a62f-27521b216f2a",
"data": {
"outputs": [
{
"@odata.type": "#Microsoft.Media.JobOutputAsset",
"assetName": "output-7640689F",
"error": null,
"label": "VideoAnalyzerPreset_0",
"progress": 100,
"state": "Finished"
}
],
"previousState": "Processing",
"state": "Finished",
"correlationData": {
"testKey1": "testValue1",
"testKey2": "testValue2"
}
},
"specversion": "1.0"
}]
Az adatobjektum a következő tulajdonságokkal rendelkezik:
Tulajdonság | Típus | Leírás |
---|---|---|
outputs |
Tömb | Lekéri a feladat kimeneteit. |
JobOutputStateChange
Az alábbi példa a JobOutputStateChange esemény sémáját mutatja be:
[{
"topic": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaservices/<account-name>",
"subject": "transforms/VideoAnalyzerTransform/jobs/<job-id>",
"eventType": "Microsoft.Media.JobOutputStateChange",
"eventTime": "2018-10-12T16:25:56.0242854",
"id": "dde85f46-b459-4775-b5c7-befe8e32cf90",
"data": {
"previousState": "Processing",
"output": {
"@odata.type": "#Microsoft.Media.JobOutputAsset",
"assetName": "output-7640689F",
"error": null,
"label": "VideoAnalyzerPreset_0",
"progress": 100,
"state": "Finished"
},
"jobCorrelationData": {
"testKey1": "testValue1",
"testKey2": "testValue2"
}
},
"dataVersion": "1.0",
"metadataVersion": "1"
}]
JobOutputScheduled, JobOutputProcessing, JobOutputFinished, JobOutputCanceling, JobOutputCanceled, JobOutputErrored
Az egyes JobOutput-állapotváltozások esetében a példaséma a következőhöz hasonlóan néz ki:
[{
"topic": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaservices/<account-name>",
"subject": "transforms/VideoAnalyzerTransform/jobs/<job-id>",
"eventType": "Microsoft.Media.JobOutputProcessing",
"eventTime": "2018-10-12T16:12:18.0061141",
"id": "f1fd5338-1b6c-4e31-83c9-cd7c88d2aedb",
"data": {
"previousState": "Scheduled",
"output": {
"@odata.type": "#Microsoft.Media.JobOutputAsset",
"assetName": "output-7640689F",
"error": null,
"label": "VideoAnalyzerPreset_0",
"progress": 0,
"state": "Processing"
},
"jobCorrelationData": {
"testKey1": "testValue1",
"testKey2": "testValue2"
}
},
"dataVersion": "1.0",
"metadataVersion": "1"
}]
JobOutputProgress
A példaséma a következőhöz hasonlóan néz ki:
[{
"topic": "/subscriptions/<subscription-id>/resourceGroups/belohGroup/providers/Microsoft.Media/mediaservices/<account-name>",
"subject": "transforms/VideoAnalyzerTransform/jobs/job-5AB6DE32",
"eventType": "Microsoft.Media.JobOutputProgress",
"eventTime": "2018-12-10T18:20:12.1514867",
"id": "00000000-0000-0000-0000-000000000000",
"data": {
"jobCorrelationData": {
"TestKey1": "TestValue1",
"testKey2": "testValue2"
},
"label": "VideoAnalyzerPreset_0",
"progress": 86
},
"dataVersion": "1.0",
"metadataVersion": "1"
}]
LiveEvent Csatlakozás ionRejected
Az alábbi példa a LiveEvent Csatlakozás ionRejected esemény sémáját mutatja be:
[
{
"topic": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaServices/<account-name>",
"subject": "/LiveEvents/MyLiveEvent1",
"eventType": "Microsoft.Media.LiveEventConnectionRejected",
"eventTime": "2018-01-16T01:57:26.005121Z",
"id": "b303db59-d5c1-47eb-927a-3650875fded1",
"data": {
"streamId":"Mystream1",
"ingestUrl": "http://abc.ingest.isml",
"encoderIp": "118.238.251.xxx",
"encoderPort": 52859,
"resultCode": "MPE_INGEST_CODEC_NOT_SUPPORTED"
},
"dataVersion": "1.0",
"metadataVersion": "1"
}
]
Az adatobjektum a következő tulajdonságokkal rendelkezik:
Tulajdonság | Típus | Leírás |
---|---|---|
streamId |
húr | A stream vagy a kapcsolat azonosítója. A kódoló vagy az ügyfél felelős azért, hogy hozzáadja ezt az azonosítót a betöltési URL-címhez. |
ingestUrl |
húr | Az élő esemény által megadott URL-cím betöltése. |
encoderIp |
húr | A kódoló IP-címe. |
encoderPort |
húr | A kódoló portja, ahonnan ez a stream érkezik. |
resultCode |
húr | A kapcsolat elutasításának oka. Az eredménykódok az alábbi táblázatban találhatók. |
A hibaeredmény-kódokat élő esemény hibakódjaiban találja.
LiveEventEncoder Csatlakozás ed
Az alábbi példa a LiveEventEncoder Csatlakozás ed esemény sémáját mutatja be:
[
{
"source": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaservices/<account-name>",
"subject": "liveEvent/mle1",
"type": "Microsoft.Media.LiveEventEncoderConnected",
"time": "2018-08-07T23:08:09.1710643",
"id": "<id>",
"data": {
"ingestUrl": "http://mle1-amsts03mediaacctgndos-ts031.channel.media.azure-test.net:80/ingest.isml",
"streamId": "15864-stream0",
"encoderIp": "131.107.147.xxx",
"encoderPort": "27485"
},
"specversion": "1.0"
}
]
Az adatobjektum a következő tulajdonságokkal rendelkezik:
Tulajdonság | Típus | Leírás |
---|---|---|
streamId |
húr | A stream vagy a kapcsolat azonosítója. A kódoló vagy az ügyfél felelős azért, hogy ezt az azonosítót a betöltési URL-címben adja meg. |
ingestUrl |
húr | Az élő esemény által megadott URL-cím betöltése. |
encoderIp |
húr | A kódoló IP-címe. |
encoderPort |
húr | A kódoló portja, ahonnan ez a stream érkezik. |
LiveEventEncoderDisconnected
Az alábbi példa a LiveEventEncoderDisconnected esemény sémáját mutatja be :
[
{
"source": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaservices/<account-name>",
"subject": "liveEvent/mle1",
"type": "Microsoft.Media.LiveEventEncoderDisconnected",
"time": "2018-08-07T23:08:09.1710872",
"id": "<id>",
"data": {
"ingestUrl": "http://mle1-amsts03mediaacctgndos-ts031.channel.media.azure-test.net:80/ingest.isml",
"streamId": "15864-stream0",
"encoderIp": "131.107.147.xxx",
"encoderPort": "27485",
"resultCode": "S_OK"
},
"specversion": "1.0"
}
]
Az adatobjektum a következő tulajdonságokkal rendelkezik:
Tulajdonság | Típus | Leírás |
---|---|---|
streamId |
húr | A stream vagy a kapcsolat azonosítója. A kódoló vagy az ügyfél felelős azért, hogy hozzáadja ezt az azonosítót a betöltési URL-címhez. |
ingestUrl |
húr | Az élő esemény által megadott URL-cím betöltése. |
encoderIp |
húr | A kódoló IP-címe. |
encoderPort |
húr | A kódoló portja, ahonnan ez a stream érkezik. |
resultCode |
húr | A kódoló leválasztásának oka. Lehet, hogy kecses a kapcsolat bontása, vagy hiba történt. Az eredménykódok az alábbi táblázatban találhatók. |
A hibaeredmény-kódokat élő esemény hibakódjaiban találja.
A kecses leválasztási eredménykódok a következők:
Eredménykód | Leírás |
---|---|
S_OK | A kódoló kapcsolata sikeresen megszakadt. |
MPE_CLIENT_TERMINATED_Standard kiadás SSION | A kódoló leválasztva (RTMP). |
MPE_CLIENT_DISCONNECTED | A kódoló leválasztva (FMP4). |
MPI_REST_API_CHANNEL_RE Standard kiadás T | A csatorna alaphelyzetbe állítási parancsa megérkezik. |
MPI_REST_API_CHANNEL_STOP | Csatorna leállítása parancs érkezett. |
MPI_REST_API_CHANNEL_STOP | Karbantartás alatt álló csatorna. |
MPI_STREAM_HIT_EOF | Az EOF-streamet a kódoló küldi el. |
LiveEventIncomingDataChunkDropped
Az alábbi példa a LiveEventIncomingDataChunkDropped esemény sémáját mutatja be:
[
{
"source": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaServices/<account-name>",
"subject": "/LiveEvents/MyLiveEvent1",
"type": "Microsoft.Media.LiveEventIncomingDataChunkDropped",
"time": "2018-01-16T01:57:26.005121Z",
"id": "03da9c10-fde7-48e1-80d8-49936f2c3e7d",
"data": {
"trackType": "Video",
"trackName": "Video",
"bitrate": 300000,
"timestamp": 36656620000,
"timescale": 10000000,
"resultCode": "FragmentDrop_OverlapTimestamp"
},
"specversion": "1.0"
}
]
Az adatobjektum a következő tulajdonságokkal rendelkezik:
Tulajdonság | Típus | Leírás |
---|---|---|
trackType |
húr | A zeneszám típusa (hang/ videó). |
trackName |
húr | A pálya neve. |
bitrate |
egész szám | A pálya bitráta. |
timestamp |
húr | Az eldobott adattömb időbélyege. |
timescale |
húr | Az időbélyeg időskálája. |
resultCode |
húr | Az adattömb elvetésének oka. FragmentDrop_OverlapTimestamp vagy FragmentDrop_NonIncreasingTimestamp. |
LiveEventIncomingStreamReceived
Az alábbi példa a LiveEventIncomingStreamReceived esemény sémáját mutatja be :
[
{
"source": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaservices/<account-name>",
"subject": "liveEvent/mle1",
"type": "Microsoft.Media.LiveEventIncomingStreamReceived",
"time": "2018-08-07T23:08:10.5069288Z",
"id": "7f939a08-320c-47e7-8250-43dcfc04ab4d",
"data": {
"ingestUrl": "http://mle1-amsts03mediaacctgndos-ts031.channel.media.azure-test.net:80/ingest.isml/Streams(15864-stream0)15864-stream0",
"trackType": "video",
"trackName": "video",
"bitrate": 2962000,
"encoderIp": "131.107.147.xxx",
"encoderPort": "27485",
"timestamp": "15336831655032322",
"duration": "20000000",
"timescale": "10000000"
},
"specversion": "1.0"
}
]
Az adatobjektum a következő tulajdonságokkal rendelkezik:
Tulajdonság | Típus | Leírás |
---|---|---|
trackType |
húr | A zeneszám típusa (hang/ videó). |
trackName |
húr | A pálya neve (vagy a kódoló által megadott, vagy RTMP esetén a kiszolgáló TrackType_Bitrate formátumban generál). |
bitrate |
egész szám | A pálya bitráta. |
ingestUrl |
húr | Az élő esemény által megadott URL-cím betöltése. |
encoderIp |
húr | A kódoló IP-címe. |
encoderPort |
húr | A kódoló portja, ahonnan ez a stream érkezik. |
timestamp |
húr | A fogadott adattömb első időbélyege. |
timescale |
húr | Időskálázás, amelyben az időbélyeg jelenik meg. |
LiveEventIncoming adatfolyamok OutOfSync
Az alábbi példa a LiveEventIncoming adatfolyamok OutOfSync esemény sémáját mutatja be:
[
{
"source": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaservices/<account-name>",
"subject": "liveEvent/mle1",
"type": "Microsoft.Media.LiveEventIncomingStreamsOutOfSync",
"time": "2018-08-10T02:26:20.6269183Z",
"id": "b9d38923-9210-4c2b-958f-0054467d4dd7",
"data": {
"minLastTimestamp": "319996",
"typeOfStreamWithMinLastTimestamp": "Audio",
"maxLastTimestamp": "366000",
"typeOfStreamWithMaxLastTimestamp": "Video",
"timescaleOfMinLastTimestamp": "10000000",
"timescaleOfMaxLastTimestamp": "10000000"
},
"specversion": "1.0"
}
]
Az adatobjektum a következő tulajdonságokkal rendelkezik:
Tulajdonság | Típus | Leírás |
---|---|---|
minLastTimestamp |
húr | Az utolsó időbélyegek minimális száma az összes zeneszám (hang vagy videó) között. |
typeOfTrackWithMinLastTimestamp |
húr | A zeneszám típusa (hang vagy videó) minimális utolsó időbélyeggel. |
maxLastTimestamp |
húr | Az időbélyegek maximális száma az összes zeneszám (hang vagy videó) között. |
typeOfTrackWithMaxLastTimestamp |
húr | A zeneszám típusa (hang vagy videó) a maximális utolsó időbélyeggel. |
timescaleOfMinLastTimestamp |
húr | Lekéri azt az időskálát, amelyben a "MinLastTimestamp" szerepel. |
timescaleOfMaxLastTimestamp |
húr | Lekéri az időskálát, amelyben a "MaxLastTimestamp" szerepel. |
LiveEventIncomingVideo adatfolyamok OutOfSync
Az alábbi példa a LiveEventIncomingVideo adatfolyamok OutOfSync esemény sémáját mutatja be:
[
{
"source": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaServices/<account-name>",
"subject": "/LiveEvents/LiveEvent1",
"type": "Microsoft.Media.LiveEventIncomingVideoStreamsOutOfSync",
"time": "2018-01-16T01:57:26.005121Z",
"id": "6dd4d862-d442-40a0-b9f3-fc14bcf6d750",
"data": {
"firstTimestamp": "2162058216",
"firstDuration": "2000",
"secondTimestamp": "2162057216",
"secondDuration": "2000",
"timescale": "10000000"
},
"specversion": "1.0"
}
]
Az adatobjektum a következő tulajdonságokkal rendelkezik:
Tulajdonság | Típus | Leírás |
---|---|---|
firstTimestamp |
húr | Az időbélyeg a videó típusának egyik sávjára/minőségi szintjére érkezett. |
firstDuration |
húr | Az adattömb időtartama az első időbélyeggel. |
secondTimestamp |
húr | Az időbélyeg a típusvideó egyéb pálya-/minőségi szintjéhez érkezett. |
secondDuration |
húr | Az adattömb időtartama a második időbélyeggel. |
timescale |
húr | Időbélyegek és időtartamok időskálája. |
LiveEventIngestHeartbeat
Az alábbi példa a LiveEventIngestHeartbeat esemény sémáját mutatja be:
[
{
"source": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaservices/<account-name>",
"subject": "liveEvent/mle1",
"type": "Microsoft.Media.LiveEventIngestHeartbeat",
"time": "2018-08-07T23:17:57.4610506",
"id": "7f450938-491f-41e1-b06f-c6cd3965d786",
"data": {
"trackType": "audio",
"trackName": "audio",
"bitrate": 160000,
"incomingBitrate": 155903,
"lastTimestamp": "15336837535253637",
"timescale": "10000000",
"overlapCount": 0,
"discontinuityCount": 0,
"nonincreasingCount": 0,
"unexpectedBitrate": false,
"state": "Running",
"healthy": true
},
"specversion": "1.0"
}
]
Az adatobjektum a következő tulajdonságokkal rendelkezik:
Tulajdonság | Típus | Leírás |
---|---|---|
trackType |
húr | A zeneszám típusa (hang/ videó). |
trackName |
húr | A pálya neve (vagy a kódoló által megadott, vagy RTMP esetén a kiszolgáló TrackType_Bitrate formátumban generál). |
bitrate |
egész szám | A pálya bitráta. |
incomingBitrate |
egész szám | Számított bitráta a kódolótól érkező adattömbök alapján. |
lastTimestamp |
húr | A legutóbbi időbélyeg az elmúlt 20 másodpercben egy számhoz érkezett. |
timescale |
húr | Időskálázás, amelyben időbélyegek vannak kifejezve. |
overlapCount |
egész szám | Az adattömbök száma az elmúlt 20 másodpercben átfedésben volt az időbélyegekkel. |
discontinuityCount |
egész szám | Az elmúlt 20 másodpercben megfigyelt megszakítások száma. |
nonIncreasingCount |
egész szám | A múltban időbélyeggel rendelkező adattömbök száma az elmúlt 20 másodpercben érkezett. |
unexpectedBitrate |
logikai | Ha a várt és a tényleges bitráta az elmúlt 20 másodpercben a megengedettnél nagyobb mértékben tér el egymástól. Igaz, ha és csak akkor, bejövőbitráta >= 2* bitráta VAGY incomingBitrate <= bitráta/2 VAGY IncomingBitrate = 0. |
state |
húr | Az élő esemény állapota. |
healthy |
logikai | Azt jelzi, hogy a betöltés kifogástalan-e a számok és a jelzők alapján. Az állapot akkor igaz, ha átfedésCount = 0 &> nem folytonosCount = 0 &> nonIncreasingCount = 0 &> unexpectedBitrate = false. |
lastFragmentArrivalTime |
húr | Az utolsó időbélyeg UTC-ben, amikor egy töredék megérkezett a betöltési végponthoz. Példa dátumformátum: "2020-11-11 12:12:12:888999" |
ingestDriftValue |
húr | A bejövő hang- vagy videoadatok percenkénti késleltetési sebességét jelzi az utolsó percben. Az érték nagyobb, mint nulla, ha az adatok az utolsó pillanatban a vártnál lassabban érkeznek az élő eseményre; nulla, ha az adatok késedelem nélkül érkeznek; és "n/a", ha nem érkezett hang- vagy videoadat. Ha például van egy közreműködő kódolója, amely élő tartalmakat küld, és feldolgozási problémák vagy hálózati késés miatt lelassul, előfordulhat, hogy egy perc alatt összesen 58 másodpercnyi hang- vagy videoképet képes továbbítani. Ez 2 másodperc/perc eltérést jelent. Ha a kódoló percenként képes felzárkózni és elküldeni az összes 60 másodperces vagy annál több adatot, akkor ez az érték 0-ként jelenik meg. Ha a kódoló leválasztása vagy megszakítása történt, ez az érték továbbra is 0-ként jelenhet meg, mivel nem veszi figyelembe az adatok töréseit – csak az időbélyegekben késleltetett adatokat. |
transcriptionState |
húr | Ha az élő átírás be van kapcsolva, akkor ez az érték "Be" a hangsáv szívveréséhez, ellenkező esetben üres sztring jelenik meg. Ez az állapot csak élőtracktype audio átírás esetén alkalmazható. Az összes többi számnak üres értéke lesz. |
transcriptionLanguage |
húr | Az átírás nyelvének nyelvi kódja (BCP-47 formátumban). A "de-de" például német (Németország) értéket jelöl. Az érték üres a videókövetés szívveréseihez, vagy ha az élő átírás ki van kapcsolva. |
LiveEventTrackDiscontinuityDetected
Az alábbi példa a LiveEventTrackDiscontinuityDetected esemény sémáját mutatja be:
[
{
"source": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaservices/<account-name>",
"subject": "liveEvent/mle1",
"type": "Microsoft.Media.LiveEventTrackDiscontinuityDetected",
"time": "2018-08-07T23:18:06.1270405Z",
"id": "5f4c510d-5be7-4bef-baf0-64b828be9c9b",
"data": {
"trackName": "video",
"previousTimestamp": "15336837615032322",
"trackType": "video",
"bitrate": 2962000,
"newTimestamp": "15336837619774273",
"discontinuityGap": "575284",
"timescale": "10000000"
},
"specversion": "1.0"
}
]
Az adatobjektum a következő tulajdonságokkal rendelkezik:
Tulajdonság | Típus | Leírás |
---|---|---|
trackType |
húr | A zeneszám típusa (hang/ videó). |
trackName |
húr | A pálya neve (vagy a kódoló által megadott, vagy RTMP esetén a kiszolgáló TrackType_Bitrate formátumban generál). |
bitrate |
egész szám | A pálya bitráta. |
previousTimestamp |
húr | Az előző töredék időbélyege. |
newTimestamp |
húr | Az aktuális töredék időbélyege. |
discontinuityGap |
húr | Két időbélyeg feletti távolság. |
timescale |
húr | Az időskálázás, amelyben az időbélyeg és a megszakítási rés is szerepel. |
Gyakori eseménytulajdonságok
Egy esemény a következő legfelső szintű adatokkal rendelkezik:
Tulajdonság | Típus | Leírás |
---|---|---|
source |
húr | Az Event Grid-témakör. Ez a tulajdonság rendelkezik a Media Services-fiók erőforrás-azonosítójával. |
subject |
húr | A Media Services-csatorna erőforrás-elérési útja a Media Services-fiók alatt. A témakör és a tárgy összefűzésével megadhatja a feladat erőforrás-azonosítóját. |
type |
húr | Az eseményforráshoz felvett eseménytípusok egyike. Például: "Microsoft.Media.JobStateChange". |
time |
húr | Az esemény létrehozásának időpontja a szolgáltató UTC-ideje alapján. |
id |
húr | Az esemény egyedi azonosítója. |
data |
object | Media Services-eseményadatok. |
specversion |
húr | A CloudEvents sémaspecifikációs verziója. |
Következő lépések
A feladat állapotváltozási eseményeinek regisztrálása