Azure Event Grid schema's voor Media Services-gebeurtenissen

Media Services-logo v3


Waarschuwing

Azure Media Services wordt op 30 juni 2024 buiten gebruik gesteld. Zie de handleiding voor buitengebruikstelling van AMS voor meer informatie.

Dit artikel bevat de schema's en eigenschappen voor Media Services-gebeurtenissen.

Zie Media Services-gebeurtenisbron voor een lijst met voorbeeldscripts en zelfstudies.

Media Services verzendt de taakgerelateerde gebeurtenistypen die hieronder worden beschreven. Er zijn twee categorieën voor de taakgerelateerde gebeurtenissen: 'Wijzigingen in taakstatus bewaken' en 'Wijzigingen in taakuitvoerstatus bewaken'.

U kunt zich registreren voor alle gebeurtenissen door u te abonneren op de gebeurtenis JobStateChange. U kunt zich ook alleen abonneren op specifieke gebeurtenissen (bijvoorbeeld eindstatussen zoals JobErrored, JobFinished en JobCanceled).

Wijzigingen in taakstatus bewaken

Gebeurtenistype Beschrijving
Microsoft.Media.JobStateChange Een gebeurtenis ophalen 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 wordt overgezet naar de status Voltooid. Dit is een uiteindelijke status die taakuitvoer bevat.
Microsoft.Media.JobCanceled Een gebeurtenis ophalen wanneer de taak overgaat naar de status Geannuleerd. Dit is een uiteindelijke status die taakuitvoer bevat.
Microsoft.Media.JobErrored Een gebeurtenis ophalen wanneer taak overgaat naar de foutstatus. Dit is een uiteindelijke status die taakuitvoer bevat.

Zie Schemavoorbeelden die volgen.

Wijzigingen in taakuitvoerstatus bewaken

Een taak kan meerdere taakuitvoer bevatten (als u de transformatie hebt geconfigureerd om meerdere taakuitvoer te hebben.) Als u de details van de uitvoer van de afzonderlijke taak wilt bijhouden, luistert u naar een wijzigings-gebeurtenis voor de taakuitvoer.

Elke taak zal zich op een hoger niveau bevinden dan JobOutput, waardoor taakuitvoer gebeurtenissen worden geactiveerd binnen een bijbehorende taak.

De foutberichten in JobFinished, voeren JobErrorJobCanceledde geaggregeerde resultaten uit voor elke taakuitvoer wanneer ze allemaal zijn voltooid. Terwijl de uitvoer van de taak wordt geactiveerd wanneer elke taak is voltooid. Als u bijvoorbeeld een coderingsuitvoer hebt, gevolgd door een Video Analytics-uitvoer, krijgt u twee gebeurtenissen die als taakuitvoergebeurtenissen worden geactiveerd voordat de laatste gebeurtenis JobFinished wordt geactiveerd met de geaggregeerde gegevens.

Gebeurtenistype Beschrijving
Microsoft.Media.JobOutputStateChange Een gebeurtenis ophalen voor alle wijzigingen in de status van de taakuitvoer.
Microsoft.Media.JobOutputScheduled Een gebeurtenis ophalen wanneer taakuitvoer overgaat naar de geplande status.
Microsoft.Media.JobOutputProcessing Een gebeurtenis ophalen wanneer taakuitvoer overgaat naar de verwerkingsstatus.
Microsoft.Media.JobOutputCanceling Een gebeurtenis ophalen wanneer taakuitvoer overgaat naar de status Annuleren.
Microsoft.Media.JobOutputFinished Een gebeurtenis ophalen wanneer taakuitvoer overgaat naar de status Voltooid.
Microsoft.Media.JobOutputCanceled Een gebeurtenis ophalen wanneer taakuitvoer overgaat naar de status Geannuleerd.
Microsoft.Media.JobOutputErrored Een gebeurtenis ophalen wanneer 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 de voortgangswaarde met 5% of hoger is gestegen of als het meer dan 30 seconden geleden is sinds de laatste gebeurtenis (heartbeat). De voortgangswaarde begint niet bij 0% of bereikt 100%, en het is ook niet gegarandeerd dat deze in de loop van de tijd met een constant tempo toeneemt. Gebruik deze gebeurtenis niet om te bepalen dat de verwerking is voltooid. Gebruik in plaats daarvan de statuswijzigingsgebeurtenissen.

Zie Schemavoorbeelden die volgen.

Typen livegebeurtenissen

Media Services verzendt ook de livegebeurtenistypen die hieronder worden beschreven. Er zijn twee categorieën voor de livegebeurtenissen: gebeurtenissen op streamniveau en gebeurtenissen op trackniveau.

Gebeurtenissen op stroomniveau

Gebeurtenissen op stroomniveau worden per stream of verbinding gegenereerd. 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 stroom zijn:

Gebeurtenistype Beschrijving
Microsoft.Media.LiveEventConnectionRejected De verbindingspoging van de encoder is geweigerd.
Microsoft.Media.LiveEventEncoderConnected Encoder brengt verbinding tot stand met een livegebeurtenis.
Microsoft.Media.LiveEventEncoderDisconnected Encoder verbreekt de verbinding.

Zie Schemavoorbeelden die volgen.

Gebeurtenissen bijhouden op niveau

Gebeurtenissen op trackniveau worden per track gegenereerd.

Notitie

Alle gebeurtenissen op trackniveau 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 overlappend tijdstempel heeft (tijdstempel van nieuw gegevenssegment is kleiner dan de eindtijd van het vorige gegevenssegment).
Microsoft.Media.LiveEventIncomingStreamReceived Mediaserver ontvangt het eerste gegevenssegment voor elke track in de stream of verbinding.
Microsoft.Media.LiveEventIncomingStreamsOutOfSync Mediaserver detecteert dat audio- en videostreams niet zijn gesynchroniseerd. 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 gesynchroniseerd zijn. Gebruik als waarschuwing omdat de gebruikerservaring mogelijk niet wordt beïnvloed.
Microsoft.Media.LiveEventIngestHeartbeat Elke 20 seconden gepubliceerd voor elk nummer wanneer een livegebeurtenis wordt uitgevoerd. Geeft een samenvatting van de opnamestatus.

Nadat de encoder in eerste instantie is verbonden, blijft de heartbeat-gebeurtenis elke 20 seconden verzenden, ongeacht of de encoder nog is verbonden of niet.
Microsoft.Media.LiveEventTrackDiscontinuityDetected Mediaserver detecteert 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 gebeurtenis JobStateChange :

[
  {
    "topic": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaservices/<account-name>",
    "subject": "transforms/VideoAnalyzerTransform/jobs/<job-id>",
    "eventType": "Microsoft.Media.JobStateChange",
    "eventTime": "2018-04-20T21:26:13.8978772",
    "id": "b9d38923-9210-4c2b-958f-0054467d4dd7",
    "data": {
      "previousState": "Processing",
      "state": "Finished"
    },
    "dataVersion": "1.0",
    "metadataVersion": "1"
  }
]

Het gegevensobject heeft de volgende eigenschappen:

Eigenschap Type Description
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 beginnen' of 'Voltooid: de taak is voltooid'.

Waarbij de taakstatus een van de waarden kan zijn: In wachtrij, Gepland, Verwerken, Voltooid, Fout, Geannuleerd, Annuleren

Notitie

Wachtrij is alleen aanwezig in de eigenschap previousState , maar niet in de eigenschap state .

JobScheduled, JobProcessing, JobCanceling

Voor elke niet-definitieve taakstatuswijziging (zoals JobScheduled, JobProcessing, JobCanceling) 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.JobProcessing",
  "eventTime": "2018-10-12T16:12:18.0839935",
  "id": "a0a6efc8-f647-4fc2-be73-861fa25ba2db",
  "data": {
    "previousState": "Scheduled",
    "state": "Processing",
    "correlationData": {
      "testKey1": "testValue1",
      "testKey2": "testValue2"
    }
  },
  "dataVersion": "1.0",
  "metadataVersion": "1"
}]

JobFinished, JobCanceled, JobErrored

Voor elke laatste taakstatuswijziging (zoals JobFinished, JobCanceled, JobErrored) 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.JobFinished",
  "eventTime": "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"
    }
  },
  "dataVersion": "1.0",
  "metadataVersion": "1"
}]

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"
}]

LiveEventConnectionRejected

In het volgende voorbeeld ziet u het schema van de gebeurtenis LiveEventConnectionRejected :

[
  {
    "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 Description
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 van de livegebeurtenis.
encoderIp tekenreeks IP van de encoder.
encoderPort tekenreeks Poort van de encoder van waaruit deze stream afkomstig is.
resultCode tekenreeks De reden waarom de verbinding is geweigerd. De resultaatcodes worden weergegeven in de volgende tabel.

U vindt de foutcodes in foutcodes voor livegebeurtenissen.

LiveEventEncoderConnected

In het volgende voorbeeld ziet u het schema van de gebeurtenis LiveEventEncoderConnected :

[
  {
    "topic": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaservices/<account-name>",
    "subject": "liveEvent/mle1",
    "eventType": "Microsoft.Media.LiveEventEncoderConnected",
    "eventTime": "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"
    },
    "dataVersion": "1.0",
    "metadataVersion": "1"
  }
]

Het gegevensobject heeft de volgende eigenschappen:

Eigenschap Type Description
streamId tekenreeks Id van de stream of verbinding. Encoder of klant is verantwoordelijk voor het opgeven van deze id in de opname-URL.
ingestUrl tekenreeks Opname-URL van de livegebeurtenis.
encoderIp tekenreeks IP van de encoder.
encoderPort tekenreeks Poort van de encoder van waaruit deze stream afkomstig is.

LiveEventEncoderDisconnected

In het volgende voorbeeld ziet u het schema van de gebeurtenis LiveEventEncoderDisconnected :

[
  {
    "topic": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaservices/<account-name>",
    "subject": "liveEvent/mle1",
    "eventType": "Microsoft.Media.LiveEventEncoderDisconnected",
    "eventTime": "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"
    },
    "dataVersion": "1.0",
    "metadataVersion": "1"
  }
]

Het gegevensobject heeft de volgende eigenschappen:

Eigenschap Type Description
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 van de livegebeurtenis.
encoderIp tekenreeks IP van de encoder.
encoderPort tekenreeks Poort van de encoder van waaruit deze stream afkomstig is.
resultCode tekenreeks De reden waarom de encoder de verbinding heeft verbroken. Het kan een probleemloze verbroken verbinding of een fout zijn. De resultaatcodes worden weergegeven in de volgende tabel.

U vindt de foutcodes in foutcodes voor livegebeurtenissen.

De probleemloze resultaatcodes voor het verbreken van de verbinding zijn:

Resultaatcode Description
S_OK De verbinding met 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 Kanaal opnieuw instellen is ontvangen.
MPI_REST_API_CHANNEL_STOP Kanaalstopopdracht ontvangen.
MPI_REST_API_CHANNEL_STOP Kanaal dat onderhoud ondergaat.
MPI_STREAM_HIT_EOF De EOF-stroom wordt verzonden door de encoder.

LiveEventIncomingDataChunkDropped

In het volgende voorbeeld ziet u het schema van de gebeurtenis LiveEventIncomingDataChunkDropped :

[
  {
    "topic": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaServices/<account-name>",
    "subject": "/LiveEvents/MyLiveEvent1",
    "eventType": "Microsoft.Media.LiveEventIncomingDataChunkDropped",
    "eventTime": "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"
    },
    "dataVersion": "1.0",
    "metadataVersion": "1"
  }
]

Het gegevensobject heeft de volgende eigenschappen:

Eigenschap Type Description
trackType tekenreeks Type nummer (audio/video).
trackName tekenreeks Naam van het nummer.
bitrate geheel getal Bitrate van het spoor.
timestamp tekenreeks Tijdstempel van het gegevenssegment dat is verwijderd.
timescale tekenreeks Tijdschaal van de tijdstempel.
resultCode tekenreeks Reden waarom het gegevenssegment is gedaald. FragmentDrop_OverlapTimestamp of FragmentDrop_NonIncreasingTimestamp.

LiveEventIncomingStreamReceived

In het volgende voorbeeld ziet u het schema van de gebeurtenis LiveEventIncomingStreamReceived :

[
  {
    "topic": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaservices/<account-name>",
    "subject": "liveEvent/mle1",
    "eventType": "Microsoft.Media.LiveEventIncomingStreamReceived",
    "eventTime": "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"
    },
    "dataVersion": "1.0",
    "metadataVersion": "1"
  }
]

Het gegevensobject heeft de volgende eigenschappen:

Eigenschap Type Description
trackType tekenreeks Type nummer (audio/video).
trackName tekenreeks De naam van het nummer (geleverd door de encoder of, in het geval van RTMP, de server genereert in TrackType_Bitrate-indeling ).
bitrate geheel getal Bitrate van het spoor.
ingestUrl tekenreeks Opname-URL van de livegebeurtenis.
encoderIp tekenreeks IP van de encoder.
encoderPort tekenreeks Poort van de encoder van waaruit deze stream afkomstig is.
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 :

[
  {
    "topic": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaservices/<account-name>",
    "subject": "liveEvent/mle1",
    "eventType": "Microsoft.Media.LiveEventIncomingStreamsOutOfSync",
    "eventTime": "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"
    },
    "dataVersion": "1.0",
    "metadataVersion": "1"
  }
]

Het gegevensobject heeft de volgende eigenschappen:

Eigenschap Type Description
minLastTimestamp tekenreeks Minimaal de laatste tijdstempels tussen alle nummers (audio of video).
typeOfTrackWithMinLastTimestamp tekenreeks Type nummer (audio of video) met minimale laatste tijdstempel.
maxLastTimestamp tekenreeks Maximum van alle tijdstempels tussen alle nummers (audio of video).
typeOfTrackWithMaxLastTimestamp tekenreeks Type nummer (audio of video) met maximale laatste tijdstempel.
timescaleOfMinLastTimestamp tekenreeks Hiermee wordt de tijdschaal opgehaald 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 :

[
  {
    "topic": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaServices/<account-name>",
    "subject": "/LiveEvents/LiveEvent1",
    "eventType": "Microsoft.Media.LiveEventIncomingVideoStreamsOutOfSync",
    "eventTime": "2018-01-16T01:57:26.005121Z",
    "id": "6dd4d862-d442-40a0-b9f3-fc14bcf6d750",
    "data": {
      "firstTimestamp": "2162058216",
      "firstDuration": "2000",
      "secondTimestamp": "2162057216",
      "secondDuration": "2000",
      "timescale": "10000000"
    },
    "dataVersion": "1.0",
    "metadataVersion": "1"
  }
]

Het gegevensobject heeft de volgende eigenschappen:

Eigenschap Type Description
firstTimestamp tekenreeks Tijdstempel ontvangen voor een van de tracks/kwaliteitsniveaus van het type video.
firstDuration tekenreeks Duur van het gegevenssegment met eerste tijdstempel.
secondTimestamp tekenreeks Tijdstempel ontvangen voor een ander track/kwaliteitsniveau van het type video.
secondDuration tekenreeks Duur van het gegevenssegment met tweede tijdstempel.
timescale tekenreeks Tijdschaal van tijdstempels en duur.

LiveEventIngestHeartbeat

In het volgende voorbeeld ziet u het schema van de gebeurtenis LiveEventIngestHeartbeat :

[
  {
    "topic": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaservices/<account-name>",
    "subject": "liveEvent/mle1",
    "eventType": "Microsoft.Media.LiveEventIngestHeartbeat",
    "eventTime": "2021-05-14T23:50:00.324",
    "id": "7f450938-491f-41e1-b06f-c6cd3965d786",
    "data": {
      "trackType":"video",
      "trackName":"video",
      "bitrate":2500000,
      "incomingBitrate":2462597,
      "lastTimestamp":"106999",
      "timescale":"1000",
      "overlapCount":0,
      "discontinuityCount":0,
      "nonincreasingCount":0,
      "unexpectedBitrate":false,
      "state":"Running",
      "healthy":true,
      "lastFragmentArrivalTime":"2021-05-14T23:50:00.324",
      "ingestDriftValue":"0",
      "transcriptionState":"",
      "transcriptionLanguage":""
    },
    "dataVersion": "1.0",
    "metadataVersion": "1"
  }
]

Het gegevensobject heeft de volgende eigenschappen:

Eigenschap Type Description
trackType tekenreeks Type nummer (audio/video).
trackName tekenreeks De naam van het nummer (geleverd door de encoder of, in het geval van RTMP, de server genereert 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 nummer in de afgelopen 20 seconden.
timescale tekenreeks Tijdschaal waarin tijdstempels worden uitgedrukt.
overlapCount geheel getal Het aantal gegevenssegmenten heeft de afgelopen 20 seconden tijdstempels overlapt.
discontinuityCount geheel getal Aantal discontinuïteiten waargenomen in de afgelopen 20 seconden.
nonIncreasingCount geheel getal Het aantal gegevenssegmenten met tijdstempels in het verleden is ontvangen in de afgelopen 20 seconden.
unexpectedBitrate booleaans Indien verwacht en werkelijke bitrates verschillen meer dan de toegestane limiet in de afgelopen 20 seconden. Dit is waar als en alleen als, incomingBitrate >= 2* bitrate OR incomingBitrate <= bitrate/2 OR IncomingBitrate = 0.
state tekenreeks Status van de livegebeurtenis.
healthy booleaans Hiermee wordt aangegeven 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 een fragment is aangekomen bij het opname-eindpunt. Voorbeeld van datumnotatie is "2020-11-11 12:12:12:888999"
ingestDriftValue tekenreeks Geeft de vertragingssnelheid in seconden per minuut aan van de binnenkomende audio- of videogegevens tijdens de laatste minuut. De waarde is groter dan nul als gegevens in de laatste minuut langzamer dan verwacht binnenkomen bij de livegebeurtenis; nul als de gegevens zonder vertraging zijn aangekomen; en 'n.v.v. als er geen audio- of videogegevens zijn ontvangen. Als u bijvoorbeeld een bijdrage-encoder hebt die live inhoud verzendt en deze vertraging ondervindt vanwege verwerkingsproblemen of netwerklatentie, kan deze mogelijk in totaal slechts 58 seconden aan audio of video leveren in een periode van één minuut. Dit wordt gerapporteerd als twee seconden per minuut afwijking. Als de encoder alle 60 seconden of meer gegevens elke minuut kan inhalen en verzenden, wordt deze waarde gerapporteerd als 0. Als er sprake is van een verbroken verbinding of discontinuïteit met de encoder, kan deze waarde nog steeds worden weergegeven als 0, omdat deze geen rekening houdt met onderbrekingen in de gegevens, alleen gegevens die worden vertraagd in tijdstempels.
transcriptionState tekenreeks Deze waarde is 'Aan' voor heartbeats van audiotracks als livetranscriptie is ingeschakeld, anders ziet u een lege tekenreeks. Deze status is alleen van toepassing op het tracktype van 'audio' voor livetranscriptie. Alle andere sporen hebben een lege waarde.
transcriptionLanguage tekenreeks De taalcode (in BCP-47-indeling) van de transcriptietaal. 'de-de' geeft bijvoorbeeld Duits (Duitsland) aan. De waarde is leeg voor de heartbeats van de videotrack of wanneer livetranscriptie is uitgeschakeld.

LiveEventChannelArchiveHeartbeat

In het volgende voorbeeld ziet u het schema van de gebeurtenis LiveEventChannelArchiveHeartbeatEvent :

[
  {
    "topic": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaservices/<account-name>",
    "subject": "liveEvent/mle1",
    "eventType": "Microsoft.Media.LiveEventChannelArchiveHeartbeat",
    "eventTime": "2021-05-14T23:50:00.324",
    "id": "7f450938-491f-41e1-b06f-c6cd3965d786",
    "data": {
      "channelLatencyMs": "10",
      "latencyResultCode": "S_OK"
    },
    "dataVersion": "1.0",
    "metadataVersion": "1"
  }
]

Het gegevensobject heeft de volgende eigenschappen:

Eigenschap Type Description
channelLatencyMs tekenreeks De tijd in milliseconden (ms) die de opgenomen video doorbrengt in de pijplijn voor livegebeurtenissen voordat deze wordt gepubliceerd naar het HLS/DASH-manifest dat spelers kunnen downloaden.
latencyResultCode tekenreeks De resultaatcode voor de berekening channelLatencyMs. S_OK geeft aan dat de opname van de livegebeurtenis probleemloos is ontvangen. Andere resultaatcodes geven situaties aan waardoor de channelLatencyMs een lege waarde hebben. MPE_KEY_FRAME_INTERVAL_TOO_LARGE foutcode geeft aan dat de opgenomen videobron een grote GOP (sleutelframeafstand) heeft die een negatieve invloed zou hebben op de kanaallatentie. MPE_INGEST_DISCONTINUITY foutcode geeft aan dat er discontinuïteiten zijn gedetecteerd in de bronstroom, waardoor lange latenties aan het kanaal kunnen worden toegevoegd.

LiveEventTrackDiscontinuityDetected

In het volgende voorbeeld ziet u het schema van de gebeurtenis LiveEventTrackDiscontinuityDetected :

[
  {
    "topic": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Media/mediaservices/<account-name>",
    "subject": "liveEvent/mle1",
    "eventType": "Microsoft.Media.LiveEventTrackDiscontinuityDetected",
    "eventTime": "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"
    },
    "dataVersion": "1.0",
    "metadataVersion": "1"
  }
]

Het gegevensobject heeft de volgende eigenschappen:

Eigenschap Type Description
trackType tekenreeks Type nummer (audio/video).
trackName tekenreeks De naam van het nummer (geleverd door de encoder of, in het geval van RTMP, de server genereert 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 Afstand tussen twee tijdstempels boven.
timescale tekenreeks Tijdschaal waarin zowel tijdstempels als discontinuïtiteitsverschillen worden weergegeven.

Algemene gebeurteniseigenschappen

Een gebeurtenis bevat de volgende gegevens op het hoogste niveau:

Eigenschap Type Description
topic tekenreeks Het event grid-onderwerp. Deze eigenschap bevat 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.
eventType tekenreeks Een van de geregistreerde gebeurtenistypen voor deze gebeurtenisbron. Bijvoorbeeld 'Microsoft.Media.JobStateChange'.
eventTime 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.
dataVersion tekenreeks De schemaversie van het gegevensobject. De uitgever definieert de schemaversie.
metadataVersion tekenreeks De schemaversie van de metagegevens van de gebeurtenis. Event Grid definieert het schema voor de eigenschappen op het hoogste niveau. Event Grid biedt deze waarde.

Zie ook