Azure Media Services als event grid-bron
Dit artikel bevat de schema's en eigenschappen voor Media Services-gebeurtenissen.
Taakgerelateerde gebeurtenistypen
Media Services verzendt de taakgerelateerde gebeurtenistypen die hieronder worden beschreven. Er zijn twee categorieën voor de taakgerelateerde gebeurtenissen: 'Wijzigingen in taakstatus bewaken' en 'Statuswijzigingen van taak controleren'.
U kunt zich registreren voor alle gebeurtenissen door u te abonneren op de JobStateChange-gebeurtenis. U kunt zich ook alleen abonneren op specifieke gebeurtenissen (bijvoorbeeld definitieve statussen zoals JobErrored, JobFinished en JobCanceled).
Wijzigingen in taakstatus bewaken
Gebeurtenistype | Beschrijving |
---|---|
Microsoft.Media.JobStateChange | Haal een gebeurtenis op voor alle wijzigingen in de taakstatus. |
Microsoft.Media.JobScheduled | Een gebeurtenis ophalen wanneer de taak overgaat naar de geplande status. |
Microsoft.Media.JobProcessing | Een gebeurtenis ophalen wanneer de taak overgaat naar de verwerkingsstatus. |
Microsoft.Media.JobCanceling | Een gebeurtenis ophalen wanneer de taak overgaat naar de status Annuleren. |
Microsoft.Media.JobFinished | Een gebeurtenis ophalen wanneer de taak overgaat naar de voltooide status. Dit is een laatste status met taakuitvoer. |
Microsoft.Media.JobCanceled | Een gebeurtenis ophalen wanneer de taak overgaat naar de geannuleerde status. Dit is een laatste status met taakuitvoer. |
Microsoft.Media.JobErrored | Een gebeurtenis ophalen wanneer de taak overgaat naar de foutstatus. Dit is een laatste status met taakuitvoer. |
Zie schemavoorbeelden die volgen.
Wijzigingen in de uitvoerstatus van de taak bewaken
Een taak kan meerdere taakuitvoer bevatten (als u de transformatie hebt geconfigureerd voor meerdere taakuitvoer.) Als u de details van de uitvoer van de afzonderlijke taak wilt bijhouden, luistert u naar een gebeurtenis voor taakuitvoerwijziging.
Elke taak zal op een hoger niveau zijn dan JobOutput, waardoor taakuitvoer gebeurtenissen worden geactiveerd binnen een bijbehorende taak.
De foutberichten in JobFinished
, JobCanceled
JobError
voert de geaggregeerde resultaten voor elke taakuitvoer uit wanneer ze allemaal zijn voltooid. Terwijl de taakuitvoer gebeurtenissen worden geactiveerd zodra elke taak is voltooid. Als u bijvoorbeeld een coderingsuitvoer hebt, gevolgd door een Video Analytics-uitvoer, krijgt u twee gebeurtenissen die worden geactiveerd als taakuitvoergebeurtenissen voordat de uiteindelijke JobFinished-gebeurtenis wordt geactiveerd met de geaggregeerde gegevens.
Gebeurtenistype | Beschrijving |
---|---|
Microsoft.Media.JobOutputStateChange | Haal een gebeurtenis op voor alle wijzigingen in de taakuitvoerstatus. |
Microsoft.Media.JobOutputScheduled | Haal een gebeurtenis op wanneer de taakuitvoer overgaat naar de geplande status. |
Microsoft.Media.JobOutputProcessing | Haal een gebeurtenis op wanneer taakuitvoer overgaat naar de verwerkingsstatus. |
Microsoft.Media.JobOutputCanceling | Haal een gebeurtenis op wanneer de taakuitvoer overgaat naar de status Annuleren. |
Microsoft.Media.JobOutputFinished | Haal een gebeurtenis op wanneer de taakuitvoer overgaat naar de voltooide status. |
Microsoft.Media.JobOutputCanceled | Haal een gebeurtenis op wanneer de taakuitvoer overgaat naar de geannuleerde status. |
Microsoft.Media.JobOutputErrored | Een gebeurtenis ophalen wanneer de taakuitvoer overgaat naar de foutstatus. |
Zie schemavoorbeelden die volgen.
Voortgang van taakuitvoer bewaken
Gebeurtenistype | Beschrijving |
---|---|
Microsoft.Media.JobOutputProgress | Deze gebeurtenis weerspiegelt de voortgang van de taakverwerking, van 0% tot 100%. De service probeert een gebeurtenis te verzenden als er 5% of hoger is geweest in de voortgangswaarde of meer dan 30 seconden sinds de laatste gebeurtenis (heartbeat). De voortgangswaarde is niet gegarandeerd om te beginnen bij 0%, of om 100% te bereiken, noch is het gegarandeerd om in de loop van de tijd met een constante snelheid te stijgen. Deze gebeurtenis mag niet worden gebruikt om te bepalen of de verwerking is voltooid. Gebruik in plaats daarvan de statuswijzigingsgebeurtenissen. |
Zie schemavoorbeelden die volgen.
Typen livegebeurtenissen
Media Services verzendt ook de typen livegebeurtenissen die hieronder worden beschreven. Er zijn twee categorieën voor de livegebeurtenissen : gebeurtenissen op streamniveau en gebeurtenissen op track-level.
Gebeurtenissen op streamniveau
Gebeurtenissen op streamniveau worden gegenereerd per stream of verbinding. Elke gebeurtenis heeft een StreamId
parameter die de verbinding of stream identificeert. Elke stream of verbinding heeft een of meer sporen van verschillende typen. Eén verbinding van een encoder kan bijvoorbeeld één audiospoor en vier videosporen hebben. De gebeurtenistypen van de stream zijn:
Gebeurtenistype | Beschrijving |
---|---|
Microsoft.Media.LiveEvent Verbinding maken ionRejected | De verbindingspoging van de encoder wordt geweigerd. |
Microsoft.Media.LiveEventEncoder Verbinding maken ed | De encoder brengt verbinding met een livegebeurtenis tot stand. |
Microsoft.Media.LiveEventEncoderDisconnected | De verbinding met encoder wordt verbroken. |
Zie schemavoorbeelden die volgen.
Gebeurtenissen op trackniveau
Gebeurtenissen op trackniveau worden per track gegenereerd.
Notitie
Alle gebeurtenissen op track-niveau worden gegenereerd nadat een live encoder is verbonden.
De gebeurtenistypen op trackniveau zijn:
Gebeurtenistype | Beschrijving |
---|---|
Microsoft.Media.LiveEventIncomingDataChunkDropped | Mediaserver verwijdert het gegevenssegment omdat het te laat is of een overlappende tijdstempel heeft (tijdstempel van nieuwe gegevenssegment is minder dan de eindtijd van het vorige gegevenssegment). |
Microsoft.Media.LiveEventIncomingStreamReceived | Mediaserver ontvangt het eerste gegevenssegment voor elk spoor in de stream of verbinding. |
Microsoft.Media.LiveEventIncomingStreamsOutOfSync | Mediaserver detecteert dat audio- en videostreams niet synchroon zijn. Gebruik als waarschuwing omdat de gebruikerservaring mogelijk niet wordt beïnvloed. |
Microsoft.Media.LiveEventIncomingVideoStreamsOutOfSync | Mediaserver detecteert dat een van de twee videostreams die afkomstig zijn van een externe encoder, niet synchroon zijn. Gebruik als waarschuwing omdat de gebruikerservaring mogelijk niet wordt beïnvloed. |
Microsoft.Media.LiveEventIngestHeartbeat | Elke 20 seconden wordt elke 20 seconden voor elk nummer gepubliceerd wanneer een livegebeurtenis wordt uitgevoerd. Geeft een samenvatting van de opnamestatus. Nadat de encoder in eerste instantie is verbonden, blijft de heartbeatgebeurtenis elke 20 seconden verzenden, ongeacht of de encoder nog steeds is verbonden of niet. |
Microsoft.Media.LiveEventTrackDiscontinuityDetected | Mediaserver detecteert de discontinuïteit in het binnenkomende spoor. |
Zie schemavoorbeelden die volgen.
Voorbeelden van gebeurtenisschema's
JobStateChange
In het volgende voorbeeld ziet u het schema van de JobStateChange-gebeurtenis :
[
{
"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"
}
]
Het gegevensobject heeft de volgende eigenschappen:
Eigenschap | Type | Omschrijving |
---|---|---|
previousState |
tekenreeks | De status van de taak vóór de gebeurtenis. |
state |
tekenreeks | De nieuwe status van de taak die in deze gebeurtenis wordt gemeld. Bijvoorbeeld 'Gepland: De taak is gereed om te starten' of 'Voltooid: de taak is voltooid'. |
Waar de taakstatus een van de waarden kan zijn: In de wachtrij geplaatst, Gepland, Verwerken, Voltooid, Fout, Geannuleerd, Annuleren
Notitie
In de wachtrij staat alleen de eigenschap previousState, maar niet in de statuseigenschap.
JobScheduled, JobProcessing, JobCanceling
Voor elke niet-definitieve taakstatuswijziging (zoals JobScheduled, JobProcessing, JobCanceling), ziet het voorbeeldschema er ongeveer als volgt uit:
[{
"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
Voor elke laatste wijziging van de taakstatus (zoals JobFinished, JobCanceled, JobErrored) ziet het voorbeeldschema er ongeveer als volgt uit:
[{
"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"
}]
Het gegevensobject heeft de volgende eigenschappen:
Eigenschap | Type | Description |
---|---|---|
outputs |
Matrix | Hiermee haalt u de taakuitvoer op. |
JobOutputStateChange
In het volgende voorbeeld ziet u het schema van de gebeurtenis JobOutputStateChange :
[{
"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
Voor elke jobOutput-statuswijziging ziet het voorbeeldschema er ongeveer als volgt uit:
[{
"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
Het voorbeeldschema ziet er ongeveer als volgt uit:
[{
"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 Verbinding maken ionRejected
In het volgende voorbeeld ziet u het schema van de gebeurtenis LiveEvent Verbinding maken ionRejected:
[
{
"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"
}
]
Het gegevensobject heeft de volgende eigenschappen:
Eigenschap | Type | Omschrijving |
---|---|---|
streamId |
tekenreeks | Id van de stream of verbinding. Encoder of klant is verantwoordelijk voor het toevoegen van deze id in de opname-URL. |
ingestUrl |
tekenreeks | Opname-URL geleverd door de livegebeurtenis. |
encoderIp |
tekenreeks | IP van de encoder. |
encoderPort |
tekenreeks | Poort van de encoder van waaruit deze stream komt. |
resultCode |
tekenreeks | De reden waarom de verbinding is geweigerd. De resultaatcodes worden weergegeven in de volgende tabel. |
U vindt de foutcodes in livegebeurtenisfoutcodes.
LiveEventEncoder Verbinding maken ed
In het volgende voorbeeld ziet u het schema van de gebeurtenis LiveEventEncoder Verbinding maken ed:
[
{
"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"
}
]
Het gegevensobject heeft de volgende eigenschappen:
Eigenschap | Type | Omschrijving |
---|---|---|
streamId |
tekenreeks | Id van de stream of verbinding. Encoder of klant is verantwoordelijk voor het opgegeven van deze id in de opname-URL. |
ingestUrl |
tekenreeks | Opname-URL geleverd door de livegebeurtenis. |
encoderIp |
tekenreeks | IP van de encoder. |
encoderPort |
tekenreeks | Poort van de encoder van waaruit deze stream komt. |
LiveEventEncoderDisconnected
In het volgende voorbeeld ziet u het schema van de gebeurtenis LiveEventEncoderDisconnected :
[
{
"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"
}
]
Het gegevensobject heeft de volgende eigenschappen:
Eigenschap | Type | Omschrijving |
---|---|---|
streamId |
tekenreeks | Id van de stream of verbinding. Encoder of klant is verantwoordelijk voor het toevoegen van deze id in de opname-URL. |
ingestUrl |
tekenreeks | Opname-URL geleverd door de livegebeurtenis. |
encoderIp |
tekenreeks | IP van de encoder. |
encoderPort |
tekenreeks | Poort van de encoder van waaruit deze stream komt. |
resultCode |
tekenreeks | De reden voor het verbreken van de verbinding met de encoder. Het kan een probleemloze verbinding of een fout veroorzaken. De resultaatcodes worden weergegeven in de volgende tabel. |
U vindt de foutcodes in livegebeurtenisfoutcodes.
De resultaatcodes voor de respijtloze verbinding zijn:
Resultaatcode | Beschrijving |
---|---|
S_OK | De verbinding met de encoder is verbroken. |
MPE_CLIENT_TERMINATED_SESSION | De verbinding met encoder is verbroken (RTMP). |
MPE_CLIENT_DISCONNECTED | De verbinding met encoder is verbroken (FMP4). |
MPI_REST_API_CHANNEL_RESET | De opdracht Kanaalherstel wordt ontvangen. |
MPI_REST_API_CHANNEL_STOP | De opdracht Kanaalstop is ontvangen. |
MPI_REST_API_CHANNEL_STOP | Kanaal dat onderhoud ondergaat. |
MPI_STREAM_HIT_EOF | EOF-stream wordt verzonden door de encoder. |
LiveEventIncomingDataChunkDropped
In het volgende voorbeeld ziet u het schema van de gebeurtenis LiveEventIncomingDataChunkDropped :
[
{
"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"
}
]
Het gegevensobject heeft de volgende eigenschappen:
Eigenschap | Type | Omschrijving |
---|---|---|
trackType |
tekenreeks | Type van het nummer (Audio/Video). |
trackName |
tekenreeks | Naam van het nummer. |
bitrate |
geheel getal | Bitrate van het spoor. |
timestamp |
tekenreeks | Tijdstempel van het gegevenssegment is verwijderd. |
timescale |
tekenreeks | Tijdschaal van de tijdstempel. |
resultCode |
tekenreeks | Reden voor het verwijderen van het gegevenssegment. FragmentDrop_OverlapTimestamp of FragmentDrop_NonIncreasingTimestamp. |
LiveEventIncomingStreamReceived
In het volgende voorbeeld ziet u het schema van de gebeurtenis LiveEventIncomingStreamReceived :
[
{
"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"
}
]
Het gegevensobject heeft de volgende eigenschappen:
Eigenschap | Type | Omschrijving |
---|---|---|
trackType |
tekenreeks | Type van het nummer (Audio/Video). |
trackName |
tekenreeks | De naam van het nummer (opgegeven door de encoder of, in het geval van RTMP, wordt de server gegenereerd in TrackType_Bitrate indeling). |
bitrate |
geheel getal | Bitrate van het spoor. |
ingestUrl |
tekenreeks | Opname-URL geleverd door de livegebeurtenis. |
encoderIp |
tekenreeks | IP van de encoder. |
encoderPort |
tekenreeks | Poort van de encoder van waaruit deze stream komt. |
timestamp |
tekenreeks | Eerste tijdstempel van het ontvangen gegevenssegment. |
timescale |
tekenreeks | Tijdschaal waarin tijdstempel wordt weergegeven. |
LiveEventIncomingStreamsOutOfSync
In het volgende voorbeeld ziet u het schema van de gebeurtenis LiveEventIncomingStreamsOutOfSync :
[
{
"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"
}
]
Het gegevensobject heeft de volgende eigenschappen:
Eigenschap | Type | Omschrijving |
---|---|---|
minLastTimestamp |
tekenreeks | Minimum van laatste tijdstempels tussen alle nummers (audio of video). |
typeOfTrackWithMinLastTimestamp |
tekenreeks | Type track (audio of video) met minimale laatste tijdstempel. |
maxLastTimestamp |
tekenreeks | Maximum van alle tijdstempels tussen alle nummers (audio of video). |
typeOfTrackWithMaxLastTimestamp |
tekenreeks | Type track (audio of video) met maximale laatste tijdstempel. |
timescaleOfMinLastTimestamp |
tekenreeks | Hiermee haalt u de tijdschaal op waarin 'MinLastTimestamp' wordt weergegeven. |
timescaleOfMaxLastTimestamp |
tekenreeks | Hiermee haalt u de tijdschaal op waarin 'MaxLastTimestamp' wordt weergegeven. |
LiveEventIncomingVideoStreamsOutOfSync
In het volgende voorbeeld ziet u het schema van de gebeurtenis LiveEventIncomingVideoStreamsOutOfSync :
[
{
"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"
}
]
Het gegevensobject heeft de volgende eigenschappen:
Eigenschap | Type | Omschrijving |
---|---|---|
firstTimestamp |
tekenreeks | Tijdstempel ontvangen voor een van de tracks/kwaliteitsniveaus van het type video. |
firstDuration |
tekenreeks | Duur van het gegevenssegment met de eerste tijdstempel. |
secondTimestamp |
tekenreeks | Tijdstempel ontvangen voor een ander niveau van track/kwaliteit van het type video. |
secondDuration |
tekenreeks | Duur van het gegevenssegment met de tweede tijdstempel. |
timescale |
tekenreeks | Tijdschaal van tijdstempels en duur. |
LiveEventIngestHeartbeat
In het volgende voorbeeld ziet u het schema van de LiveEventIngestHeartbeat-gebeurtenis :
[
{
"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"
}
]
Het gegevensobject heeft de volgende eigenschappen:
Eigenschap | Type | Omschrijving |
---|---|---|
trackType |
tekenreeks | Type van het nummer (Audio/Video). |
trackName |
tekenreeks | De naam van het nummer (opgegeven door de encoder of, in het geval van RTMP, wordt de server gegenereerd in TrackType_Bitrate indeling). |
bitrate |
geheel getal | Bitrate van het spoor. |
incomingBitrate |
geheel getal | Berekende bitrate op basis van gegevenssegmenten die afkomstig zijn van de encoder. |
lastTimestamp |
tekenreeks | Laatste tijdstempel ontvangen voor een track in de afgelopen 20 seconden. |
timescale |
tekenreeks | Tijdschaal waarin tijdstempels worden uitgedrukt. |
overlapCount |
geheel getal | Het aantal gegevenssegmenten overlapte tijdstempels in de afgelopen 20 seconden. |
discontinuityCount |
geheel getal | Aantal niet-aaneennemingen waargenomen in de afgelopen 20 seconden. |
nonIncreasingCount |
geheel getal | Het aantal gegevenssegmenten met tijdstempels in het verleden is in de afgelopen 20 seconden ontvangen. |
unexpectedBitrate |
bool | Indien verwacht en werkelijke bitrates verschillen met meer dan de toegestane limiet in de afgelopen 20 seconden. Het is waar als en alleen als, incomingBitrate >= 2* bitrate OF incomingBitrate <= bitrate/2 OF IncomingBitrate = 0. |
state |
tekenreeks | Status van de livegebeurtenis. |
healthy |
bool | Geeft aan of opname in orde is, op basis van de aantallen en vlaggen. In orde is waar als overlapCount = 0 && discontinuityCount = 0 && nonIncreasingCount = 0 && unexpectedBitrate = false. |
lastFragmentArrivalTime |
tekenreeks | De laatste tijdstempel in UTC dat er een fragment is aangekomen bij het opname-eindpunt. Voorbeelddatumnotatie is '2020-11-11 12:12:12:888999' |
ingestDriftValue |
tekenreeks | Geeft de snelheid aan van vertraging, in seconden per minuut, van de binnenkomende audio- of videogegevens tijdens de laatste minuut. De waarde is groter dan nul als gegevens langzamer aankomen bij de livegebeurtenis dan verwacht in de laatste minuut; nul als gegevens zonder vertraging zijn aangekomen; en 'n/a' als er geen audio- of videogegevens zijn ontvangen. Als u bijvoorbeeld een bijdrage-encoder hebt die in live-inhoud verzendt en deze vertraagt vanwege verwerkingsproblemen of netwerklatentie, kan het mogelijk slechts 58 seconden audio of video binnen één minuut leveren. Dit wordt gerapporteerd als 2 seconden per minuut drift. Als de encoder alle 60 seconden of meer gegevens elke minuut kan inhalen en verzenden, ziet u deze waarde gerapporteerd als 0. Als er sprake is van een verbroken verbinding of een onderbreking van de encoder, wordt deze waarde mogelijk nog steeds weergegeven als 0, omdat deze geen rekening houdt met onderbrekingen in de gegevens, alleen gegevens die zijn vertraagd in tijdstempels. |
transcriptionState |
tekenreeks | Deze waarde is 'Aan' voor heartbeats voor audiotracks als livetranscriptie is ingeschakeld, anders ziet u een lege tekenreeks. Deze status is alleen van toepassing optracktype audio livetranscriptie. Alle andere sporen hebben een lege waarde. |
transcriptionLanguage |
tekenreeks | De taalcode (in BCP-47-indeling) van de transcriptietaal. Bijvoorbeeld 'de-de' geeft Duits (Duitsland) aan. De waarde is leeg voor de heartbeats van het videospoor of wanneer livetranscriptie is uitgeschakeld. |
LiveEventTrackDiscontinuityDetected
In het volgende voorbeeld ziet u het schema van de gebeurtenis LiveEventTrackDiscontinuityDetected :
[
{
"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"
}
]
Het gegevensobject heeft de volgende eigenschappen:
Eigenschap | Type | Omschrijving |
---|---|---|
trackType |
tekenreeks | Type van het nummer (Audio/Video). |
trackName |
tekenreeks | De naam van het nummer (opgegeven door de encoder of, in het geval van RTMP, wordt de server gegenereerd in TrackType_Bitrate indeling). |
bitrate |
geheel getal | Bitrate van het spoor. |
previousTimestamp |
tekenreeks | Tijdstempel van het vorige fragment. |
newTimestamp |
tekenreeks | Tijdstempel van het huidige fragment. |
discontinuityGap |
tekenreeks | Tussenruimte tussen twee tijdstempels. |
timescale |
tekenreeks | Tijdschaal waarin zowel de tijdstempel als de discontinuïteitsverschil worden weergegeven. |
Algemene gebeurteniseigenschappen
Een gebeurtenis bevat de volgende gegevens op het hoogste niveau:
Eigenschap | Type | Omschrijving |
---|---|---|
source |
tekenreeks | Het Event Grid-onderwerp. Deze eigenschap heeft de resource-id voor het Media Services-account. |
subject |
tekenreeks | Het resourcepad voor het Media Services-kanaal onder het Media Services-account. Als u het onderwerp en het onderwerp samenvoegt, krijgt u de resource-id voor de taak. |
type |
tekenreeks | Een van de geregistreerde gebeurtenistypen voor deze gebeurtenisbron. Bijvoorbeeld 'Microsoft.Media.JobStateChange'. |
time |
tekenreeks | Het tijdstip waarop de gebeurtenis wordt gegenereerd op basis van de UTC-tijd van de provider. |
id |
tekenreeks | Unieke id voor de gebeurtenis. |
data |
object | Media Services-gebeurtenisgegevens. |
specversion |
tekenreeks | CloudEvents schemaspecificatieversie. |
Volgende stappen
Zie Registreren voor taakstatuswijzigingsevenementen