Azure Event Grid-Schemas für Media Services-EreignisseAzure Event Grid schemas for Media Services events

Media Services-Logo v3media services logo v3


Dieser Artikel beschreibt die Schemas und Eigenschaften für Media Services-Ereignisse.This article provides the schemas and properties for Media Services events.

Eine Liste von Beispielskripts und Tutorials finden Sie unter Media Services-Ereignisquelle.For a list of sample scripts and tutorials, see Media Services event source.

Media Services gibt die nachfolgend beschriebenen auftragsbezogenen Ereignistypen aus.Media Services emits the Job related event types described below. Es gibt zwei Kategorien für die auftragsbezogenen Ereignisse: „Überwachen von Auftragszustandsänderungen“ und „Überwachen von Auftragsausgabezustandsänderungen“.There are two categories for the Job related events: "Monitoring Job State Changes" and "Monitoring Job Output State Changes".

Sie können sich für alle Ereignisse registrieren, indem Sie das JobStateChange-Ereignis abonnieren.You can register for all of the events by subscribing to the JobStateChange event. Sie können auch nur bestimmte Ereignisse abonnieren (z. B. Endzustände wie JobErrored, JobFinished und JobCanceled).Or, you can subscribe for specific events only (for example, final states like JobErrored, JobFinished, and JobCanceled).

Überwachen von AuftragszustandsänderungenMonitoring Job state changes

EreignistypEvent type BESCHREIBUNGDescription
Microsoft.Media.JobStateChangeMicrosoft.Media.JobStateChange Rufen Sie ein Ereignis für alle Auftragszustandsänderungen ab.Get an event for all Job State changes.
Microsoft.Media.JobScheduledMicrosoft.Media.JobScheduled Rufen Sie ein Ereignis ab, wenn der Auftrag in den geplanten Zustand übergeht.Get an event when Job transitions to scheduled state.
Microsoft.Media.JobProcessingMicrosoft.Media.JobProcessing Rufen Sie ein Ereignis ab, wenn der Auftrag in den Verarbeitungszustand übergeht.Get an event when Job transitions to processing state.
Microsoft.Media.JobCancelingMicrosoft.Media.JobCanceling Rufen Sie ein Ereignis ab, wenn der Auftrag in den Zustand „Abbrechen“ übergeht.Get an event when Job transitions to canceling state.
Microsoft.Media.JobFinishedMicrosoft.Media.JobFinished Rufen Sie ein Ereignis ab, wenn der Auftrag in den abgeschlossenen Zustand übergeht.Get an event when Job transitions to finished state. Dies ist ein Endzustand, der Auftragsausgaben umfasst.This is a final state that includes Job outputs.
Microsoft.Media.JobCanceledMicrosoft.Media.JobCanceled Rufen Sie ein Ereignis ab, wenn der Auftrag in den Zustand „Abgebrochen“ übergeht.Get an event when Job transitions to canceled state. Dies ist ein Endzustand, der Auftragsausgaben umfasst.This is a final state that includes Job outputs.
Microsoft.Media.JobErroredMicrosoft.Media.JobErrored Rufen Sie ein Ereignis ab, wenn der Auftrag in den Zustand „Fehler“ übergeht.Get an event when Job transitions to error state. Dies ist ein Endzustand, der Auftragsausgaben umfasst.This is a final state that includes Job outputs.

Weitere Informationen enthalten die folgenden Schemabeispiele.See Schema examples that follow.

Überwachen von AuftragsausgabezustandsänderungenMonitoring job output state changes

Ein Auftrag kann mehrere Auftragsausgaben enthalten (wenn Sie die Transformation für mehrere Auftragsausgaben konfiguriert haben). Wenn Sie die Details der einzelnen Auftragsausgabe nachverfolgen wollen, lauschen Sie auf ein Änderungsereignis der Auftragsausgabe.A job may contain multiple job outputs (if you configured the transform to have multiple job outputs.) If you want to track the details of the individual job output, listen for a job output change event.

Jeder Auftrag befindet sich auf einer höheren Ebene als JobOutput, daher werden Auftragsausgabeereignisse innerhalb eines entsprechenden Auftrags ausgelöst.Each Job is going to be at a higher level than JobOutput, thus job output events get fired inside of a corresponding job.

Die Fehlermeldungen in JobFinished, JobCanceled, JobError geben die aggregierten Ergebnisse für jede Auftragsausgabe aus – wenn alle abgeschlossen sind.The error messages in JobFinished, JobCanceled, JobError output the aggregated results for each job output – when all of them are finished. Die Auftragsausgabeereignisse hingegen werden nach Abschluss jeder Aufgabe ausgelöst.Whereas, the job output events fire as each task finishes. Wenn Sie z. B. über eine Codierungsausgabe und eine anschließende Videoanalyseausgabe verfügen, erhalten Sie zwei Ereignisse, die als Auftragsausgabeereignisse ausgelöst werden, bevor das letzte JobFinished-Ereignis mit den aggregierten Daten ausgelöst wird.For example, if you have an encoding output, followed by a Video Analytics output, you would get two events firing as job output events before the final JobFinished event fires with the aggregated data.

EreignistypEvent type BESCHREIBUNGDescription
Microsoft.Media.JobOutputStateChangeMicrosoft.Media.JobOutputStateChange Rufen Sie ein Ereignis für alle Auftragsausgabezustandsänderungen ab.Get an event for all Job output State changes.
Microsoft.Media.JobOutputScheduledMicrosoft.Media.JobOutputScheduled Rufen Sie ein Ereignis ab, wenn die Auftragsausgabe in den geplanten Zustand übergeht.Get an event when Job output transitions to scheduled state.
Microsoft.Media.JobOutputProcessingMicrosoft.Media.JobOutputProcessing Rufen Sie ein Ereignis ab, wenn die Auftragsausgabe in den Verarbeitungszustand übergeht.Get an event when Job output transitions to processing state.
Microsoft.Media.JobOutputCancelingMicrosoft.Media.JobOutputCanceling Rufen Sie ein Ereignis ab, wenn die Auftragsausgabe in den Zustand „Abbrechen“ übergeht.Get an event when Job output transitions to canceling state.
Microsoft.Media.JobOutputFinishedMicrosoft.Media.JobOutputFinished Rufen Sie ein Ereignis ab, wenn die Auftragsausgabe in den abgeschlossenen Zustand übergeht.Get an event when Job output transitions to finished state.
Microsoft.Media.JobOutputCanceledMicrosoft.Media.JobOutputCanceled Rufen Sie ein Ereignis ab, wenn die Auftragsausgabe in den Zustand „Abgebrochen“ übergeht.Get an event when Job output transitions to canceled state.
Microsoft.Media.JobOutputErroredMicrosoft.Media.JobOutputErrored Rufen Sie ein Ereignis ab, wenn die Auftragsausgabe in den Zustand „Fehler“ übergeht.Get an event when Job output transitions to error state.

Weitere Informationen enthalten die folgenden Schemabeispiele.See Schema examples that follow.

Überwachen des Fortschritts der AuftragsausgabeMonitoring job output progress

EreignistypEvent type BESCHREIBUNGDescription
Microsoft.Media.JobOutputProgressMicrosoft.Media.JobOutputProgress Dieses Ereignis gibt den Fortschritt der Auftragsverarbeitung von 0 bis 100 % wieder.This event reflects the job processing progress, from 0% to 100%. Der Dienst versucht, ein Ereignis zu senden, wenn der Fortschrittswert um 5 % oder mehr angestiegen ist oder mehr als 30 Sekunden seit dem letzten Ereignis (Heartbeat) vergangen sind.The service attempts to send an event if there has been 5% or greater increase in the progress value or it has been more than 30 seconds since the last event (heartbeat). Es ist weder garantiert, dass der Fortschrittswert bei 0 % beginnt oder 100 % erreicht, noch ist gewährleistet, dass er mit der Zeit konstant ansteigt.The progress value is not guaranteed to start at 0%, or to reach 100%, nor is it guaranteed to increase at a constant rate over time. Mit diesem Ereignis sollte nicht ermittelt werden, ob die Verarbeitung abgeschlossen ist, sondern stattdessen die Statusänderungsereignisse verwendet werden.This event should not be used to determine that the processing has been completed – you should instead use the state change events.

Weitere Informationen enthalten die folgenden Schemabeispiele.See Schema examples that follow.

LiveereignistypenLive event types

Media Services gibt auch die nachfolgend beschriebenen Live-Ereignistypen aus.Media Services also emits the Live event types described below. Es gibt zwei Kategorien für die Liveereignisse: Ereignisse auf Streamebene und Ereignisse auf Spurebene.There are two categories for the Live events: stream-level events and track-level events.

Ereignisse auf StreamebeneStream-level events

Ereignisse auf Streamebene werden pro Stream oder Verbindung ausgelöst.Stream-level events are raised per stream or connection. Jedes Ereignis verfügt über einen Parameter StreamId, der die Verbindung oder den Stream identifiziert.Each event has a StreamId parameter that identifies the connection or stream. Jeder Stream und jede Verbindung verfügt über mindestens eine Spur verschiedener Typen.Each stream or connection has one or more tracks of different types. Beispielsweise kann eine Verbindung von einem Encoder eine Audiospur und vier Videospuren umfassen.For example, one connection from an encoder may have one audio track and four video tracks. Die Streamereignistypen sind:The stream event types are:

EreignistypEvent type BESCHREIBUNGDescription
Microsoft.Media.LiveEventConnectionRejectedMicrosoft.Media.LiveEventConnectionRejected Verbindungsversuch des Encoders wurde verweigert.Encoder's connection attempt is rejected.
Microsoft.Media.LiveEventEncoderConnectedMicrosoft.Media.LiveEventEncoderConnected Encoder stellt die Verbindung mit dem Liveereignis her.Encoder establishes connection with live event.
Microsoft.Media.LiveEventEncoderDisconnectedMicrosoft.Media.LiveEventEncoderDisconnected Verbindung des Encoders wird getrennt.Encoder disconnects.

Weitere Informationen enthalten die folgenden Schemabeispiele.See Schema examples that follow.

Ereignisse auf SpurebeneTrack-level events

Ereignisse auf Spurebene werden pro Spur ausgelöst.Track-level events are raised per track.

Hinweis

Alle Ereignisse auf Spurebene werden ausgelöst, nachdem ein Liveencoder angeschlossen wurde.All track-level events are raised after a live encoder is connected.

Die Ereignistypen auf der Spurebene sind:The track-level event types are:

EreignistypEvent type BESCHREIBUNGDescription
Microsoft.Media.LiveEventIncomingDataChunkDroppedMicrosoft.Media.LiveEventIncomingDataChunkDropped Media-Server verwirft Datenblöcke, da es zu spät ist oder es einen überlappenden Zeitstempel gibt (Zeitstempel des neuen Datenblocks liegt vor der Endzeit des vorherigen Datenblocks).Media server drops data chunk because it's too late or has an overlapping timestamp (timestamp of new data chunk is less than the end time of the previous data chunk).
Microsoft.Media.LiveEventIncomingStreamReceivedMicrosoft.Media.LiveEventIncomingStreamReceived Media-Server empfängt den ersten Datenblock für jede Spur im Stream oder über die Verbindung.Media server receives first data chunk for each track in the stream or connection.
Microsoft.Media.LiveEventIncomingStreamsOutOfSyncMicrosoft.Media.LiveEventIncomingStreamsOutOfSync Media-Server hat erkannt, dass Audio- und Videostreams nicht synchron sind. Verwenden Sie dies als Warnung, da die Darstellung für den Benutzer möglicherweise nicht beeinträchtigt ist.Media server detects audio and video streams are out of sync. Use as a warning because user experience may not be impacted.
Microsoft.Media.LiveEventIncomingVideoStreamsOutOfSyncMicrosoft.Media.LiveEventIncomingVideoStreamsOutOfSync Media-Server hat erkannt, dass die beiden Videostreams von einem externen Encoder nicht mehr synchron sind. Verwenden Sie dies als Warnung, da die Darstellung für den Benutzer möglicherweise nicht beeinträchtigt ist.Media server detects any of the two video streams coming from external encoder are out of sync. Use as a warning because user experience may not be impacted.
Microsoft.Media.LiveEventIngestHeartbeatMicrosoft.Media.LiveEventIngestHeartbeat Wird alle 20 Sekunden für jede Spur veröffentlicht, wenn ein Liveereignis ausgeführt wird.Published every 20 seconds for each track when live event is running. Bietet eine Zusammenfassung der Erfassungsintegrität.Provides ingest health summary.

Nachdem der Encoder anfänglich angeschlossen war, sendet das Heartbeatereignis weiterhin alle 20 Sekunden, unabhängig davon, ob der Encoder noch angeschlossen ist.After the encoder was initially connected, the heartbeat event continues to emit every 20 sec whether the encoder is still connected or not.
Microsoft.Media.LiveEventTrackDiscontinuityDetectedMicrosoft.Media.LiveEventTrackDiscontinuityDetected Media-Server hat eine Diskontinuität in der eingehenden Spur erkannt.Media server detects discontinuity in the incoming track.

Weitere Informationen enthalten die folgenden Schemabeispiele.See Schema examples that follow.

Beispiele für EreignisschemasEvent schema examples

JobStateChangeJobStateChange

Das folgende Beispiel zeigt das Schema des JobStateChange-Ereignisses:The following example shows the schema of the JobStateChange event:

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

Das Datenobjekt weist die folgenden Eigenschaften auf:The data object has the following properties:

EigenschaftProperty typeType BESCHREIBUNGDescription
previousStatepreviousState Zeichenfolgestring Der Status des Auftrags vor dem Ereignis.The state of the job before the event.
statestate Zeichenfolgestring Der neue Status des Auftrags, über den in diesem Ereignis eine Benachrichtigung erfolgt.The new state of the job being notified in this event. Beispiel: „Geplant: Der Auftrag ist startbereit“ oder „Abgeschlossen: Der Auftrag wurde abgeschlossen“.For example, "Scheduled: The job is ready to start" or "Finished: The job is finished" .

Der Auftragsstatus kann einen der folgenden Werte aufweisen: Queued (In Warteschlange), Scheduled (Geplant), Processing (Wird verarbeitet), Finished (Abgeschlossen), Error (Fehler), Canceled (Abgebrochen), Canceling (Wird abgebrochen).Where the Job state can be one of the values: Queued, Scheduled, Processing, Finished, Error, Canceled, Canceling

Hinweis

Queued (In Warteschlange) liegt nur in der Eigenschaft previousState, aber nicht in der Eigenschaft state vor.Queued is only going to be present in the previousState property but not in the state property.

JobScheduled, JobProcessing, JobCancelingJobScheduled, JobProcessing, JobCanceling

Für jede nicht abschließende Auftragszustandsänderung (z. B. JobScheduled, JobProcessing, JobCanceling) sieht das Beispielschema etwa wie folgt aus:For each non-final Job state change (such as JobScheduled, JobProcessing, JobCanceling), the example schema looks similar to the following:

[{
  "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, JobErroredJobFinished, JobCanceled, JobErrored

Für jede abschließende Auftragszustandsänderung (z. B. JobFinished, JobCanceled, JobErrored) sieht das Beispielschema etwa wie folgt aus:For each final Job state change (such as JobFinished, JobCanceled, JobErrored), the example schema looks similar to the following:

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

Das Datenobjekt weist die folgenden Eigenschaften auf:The data object has the following properties:

EigenschaftProperty typeType BESCHREIBUNGDescription
outputsoutputs ArrayArray Ruft die Auftragsausgaben ab.Gets the Job outputs.

JobOutputStateChangeJobOutputStateChange

Das folgende Beispiel zeigt das Schema des JobOutputStateChange-Ereignisses:The following example shows the schema of the JobOutputStateChange event:

[{
  "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, JobOutputErroredJobOutputScheduled, JobOutputProcessing, JobOutputFinished, JobOutputCanceling, JobOutputCanceled, JobOutputErrored

Für jede Zustandsänderung von „JobOutput“ sieht das Beispielschema etwa wie folgt aus:For each JobOutput state change, the example schema looks similar to the following:

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

JobOutputProgressJobOutputProgress

Das Beispielschema ähnelt Folgendem:The example schema looks similar to the following:

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

LiveEventConnectionRejectedLiveEventConnectionRejected

Das folgende Beispiel zeigt das Schema des LiveEventConnectionRejected-Ereignisses:The following example shows the schema of the LiveEventConnectionRejected event:

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

Das Datenobjekt weist die folgenden Eigenschaften auf:The data object has the following properties:

EigenschaftProperty typeType BESCHREIBUNGDescription
streamIdstreamId Zeichenfolgestring Bezeichner des Streams oder der Verbindung.Identifier of the stream or connection. Der Encoder bzw. der Kunde ist dafür verantwortlich, diese ID in die Erfassungs-URL einzufügen.Encoder or customer is responsible to add this ID in the ingest URL.
ingestUrlingestUrl Zeichenfolgestring Erfassungs-URL, die vom Liveereignis bereitgestellt wird.Ingest URL provided by the live event.
encoderIpencoderIp Zeichenfolgestring IP-Adresse des Encoders.IP of the encoder.
encoderPortencoderPort Zeichenfolgestring Port des Encoders, von dem dieser Stream stammt.Port of the encoder from where this stream is coming.
resultCoderesultCode Zeichenfolgestring Der Grund, aus dem die Verbindung abgelehnt wurde.The reason the connection was rejected. Diese Ergebniscodes werden in der folgenden Tabelle aufgeführt.The result codes are listed in the following table.

Die Fehlerergebniscodes finden Sie unter Fehlercodes für Liveereignisse.You can find the error result codes in live Event error codes.

LiveEventEncoderConnectedLiveEventEncoderConnected

Das folgende Beispiel zeigt das Schema des LiveEventEncoderConnected-Ereignisses:The following example shows the schema of the LiveEventEncoderConnected event:

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

Das Datenobjekt weist die folgenden Eigenschaften auf:The data object has the following properties:

EigenschaftProperty typeType BESCHREIBUNGDescription
streamIdstreamId Zeichenfolgestring Bezeichner des Streams oder der Verbindung.Identifier of the stream or connection. Der Encoder bzw. der Kunde ist dafür verantwortlich, diese ID in die Erfassungs-URL bereitzustellen.Encoder or customer is responsible for providing this ID in the ingest URL.
ingestUrlingestUrl Zeichenfolgestring Erfassungs-URL, die vom Liveereignis bereitgestellt wird.Ingest URL provided by the live event.
encoderIpencoderIp Zeichenfolgestring IP-Adresse des Encoders.IP of the encoder.
encoderPortencoderPort Zeichenfolgestring Port des Encoders, von dem dieser Stream stammt.Port of the encoder from where this stream is coming.

LiveEventEncoderDisconnectedLiveEventEncoderDisconnected

Das folgende Beispiel zeigt das Schema des LiveEventEncoderDisconnected-Ereignisses:The following example shows the schema of the LiveEventEncoderDisconnected event:

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

Das Datenobjekt weist die folgenden Eigenschaften auf:The data object has the following properties:

EigenschaftProperty typeType BESCHREIBUNGDescription
streamIdstreamId Zeichenfolgestring Bezeichner des Streams oder der Verbindung.Identifier of the stream or connection. Der Encoder bzw. der Kunde ist dafür verantwortlich, diese ID in die Erfassungs-URL einzufügen.Encoder or customer is responsible to add this ID in the ingest URL.
ingestUrlingestUrl Zeichenfolgestring Erfassungs-URL, die vom Liveereignis bereitgestellt wird.Ingest URL provided by the live event.
encoderIpencoderIp Zeichenfolgestring IP-Adresse des Encoders.IP of the encoder.
encoderPortencoderPort Zeichenfolgestring Port des Encoders, von dem dieser Stream stammt.Port of the encoder from where this stream is coming.
resultCoderesultCode Zeichenfolgestring Der Grund für die Trennung der Verbindung mit dem Encoder.The reason for the encoder disconnecting. Die Trennung kann ordnungsgemäß oder verursacht durch einen Fehler erfolgen.It could be graceful disconnect or from an error. Diese Ergebniscodes werden in der folgenden Tabelle aufgeführt.The result codes are listed in the following table.

Die Fehlerergebniscodes finden Sie unter Fehlercodes für Liveereignisse.You can find the error result codes in live Event error codes.

Ergebniscodes für ordnungsgemäße Trennungen sind:The graceful disconnect result codes are:

ErgebniscodeResult code BESCHREIBUNGDescription
S_OKS_OK Der Encoder hat die Verbindung erfolgreich getrennt.Encoder disconnected successfully.
MPE_CLIENT_TERMINATED_SESSIONMPE_CLIENT_TERMINATED_SESSION Encoder getrennt (RTMP).Encoder disconnected (RTMP).
MPE_CLIENT_DISCONNECTEDMPE_CLIENT_DISCONNECTED Encoder getrennt (FMP4).Encoder disconnected (FMP4).
MPI_REST_API_CHANNEL_RESETMPI_REST_API_CHANNEL_RESET Befehl zum Zurücksetzen des Kanals wurde empfangen.Channel reset command is received.
MPI_REST_API_CHANNEL_STOPMPI_REST_API_CHANNEL_STOP Befehl zum Beenden des Kanals wurde empfangen.Channel stop command received.
MPI_REST_API_CHANNEL_STOPMPI_REST_API_CHANNEL_STOP Kanal wird gerade gewartet.Channel undergoing maintenance.
MPI_STREAM_HIT_EOFMPI_STREAM_HIT_EOF EOF-Stream wird vom Encoder gesendet.EOF stream is sent by the encoder.

LiveEventIncomingDataChunkDroppedLiveEventIncomingDataChunkDropped

Das folgende Beispiel zeigt das Schema des LiveEventIncomingDataChunkDropped-Ereignisses:The following example shows the schema of the LiveEventIncomingDataChunkDropped event:

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

Das Datenobjekt weist die folgenden Eigenschaften auf:The data object has the following properties:

EigenschaftProperty typeType BESCHREIBUNGDescription
trackTypetrackType Zeichenfolgestring Spurtyp (Audio/Video)Type of the track (Audio / Video).
trackNametrackName Zeichenfolgestring Name der SpurName of the track.
bitratebitrate integerinteger Bitrate der SpurBitrate of the track.
timestamptimestamp Zeichenfolgestring Zeitstempel des gelöschten DatenblocksTimestamp of the data chunk dropped.
timescaletimescale Zeichenfolgestring Zeitskala des ZeitstempelsTimescale of the timestamp.
resultCoderesultCode Zeichenfolgestring Grund für das Löschen des Datenblocks.Reason of the data chunk drop. FragmentDrop_OverlapTimestamp oder FragmentDrop_NonIncreasingTimestamp.FragmentDrop_OverlapTimestamp or FragmentDrop_NonIncreasingTimestamp.

LiveEventIncomingStreamReceivedLiveEventIncomingStreamReceived

Das folgende Beispiel zeigt das Schema des LiveEventIncomingStreamReceived-Ereignisses:The following example shows the schema of the LiveEventIncomingStreamReceived event:

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

Das Datenobjekt weist die folgenden Eigenschaften auf:The data object has the following properties:

EigenschaftProperty typeType BESCHREIBUNGDescription
trackTypetrackType Zeichenfolgestring Spurtyp (Audio/Video)Type of the track (Audio / Video).
trackNametrackName Zeichenfolgestring Name der Spur (entweder vom Encoder oder (bei RTMP) vom Server im Format SpurTyp_Bitrate generiert).Name of the track (either provided by the encoder or, in case of RTMP, server generates in TrackType_Bitrate format).
bitratebitrate integerinteger Bitrate der SpurBitrate of the track.
ingestUrlingestUrl Zeichenfolgestring Erfassungs-URL, die vom Liveereignis bereitgestellt wird.Ingest URL provided by the live event.
encoderIpencoderIp Zeichenfolgestring IP-Adresse des Encoders.IP of the encoder.
encoderPortencoderPort Zeichenfolgestring Port des Encoders, von dem dieser Stream stammt.Port of the encoder from where this stream is coming.
timestamptimestamp Zeichenfolgestring Erster Zeitstempel des empfangenen DatenblocksFirst timestamp of the data chunk received.
timescaletimescale Zeichenfolgestring Zeitskala für die Darstellung des ZeitstempelsTimescale in which timestamp is represented.

LiveEventIncomingStreamsOutOfSyncLiveEventIncomingStreamsOutOfSync

Das folgende Beispiel zeigt das Schema des LiveEventIncomingStreamsOutOfSync-Ereignisses:The following example shows the schema of the LiveEventIncomingStreamsOutOfSync event:

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

Das Datenobjekt weist die folgenden Eigenschaften auf:The data object has the following properties:

EigenschaftProperty typeType BESCHREIBUNGDescription
minLastTimestampminLastTimestamp Zeichenfolgestring Minimum der letzten Zeitstempel für alle Spuren (Audio oder Video).Minimum of last timestamps among all the tracks (audio or video).
typeOfTrackWithMinLastTimestamptypeOfTrackWithMinLastTimestamp Zeichenfolgestring Der Typ der Spur (Audio oder Video) mit dem niedrigsten letzten Zeitstempel.Type of the track (audio or video) with minimum last timestamp.
maxLastTimestampmaxLastTimestamp Zeichenfolgestring Maximum aller Zeitstempel in allen Spuren (Audio oder Video).Maximum of all the timestamps among all the tracks (audio or video).
typeOfTrackWithMaxLastTimestamptypeOfTrackWithMaxLastTimestamp Zeichenfolgestring Der Typ der Spur (Audio oder Video) mit dem höchsten letzten Zeitstempel.Type of the track (audio or video) with maximum last timestamp.
timescaleOfMinLastTimestamptimescaleOfMinLastTimestamp Zeichenfolgestring Ruft die Zeitskala ab, in der „MinLastTimestamp“ dargestellt wird.Gets the timescale in which "MinLastTimestamp" is represented.
timescaleOfMaxLastTimestamptimescaleOfMaxLastTimestamp Zeichenfolgestring Ruft die Zeitskala ab, in der „MaxLastTimestamp“ dargestellt wird.Gets the timescale in which "MaxLastTimestamp" is represented.

LiveEventIncomingVideoStreamsOutOfSyncLiveEventIncomingVideoStreamsOutOfSync

Das folgende Beispiel zeigt das Schema des LiveEventIncomingVideoStreamsOutOfSync-Ereignisses:The following example shows the schema of the LiveEventIncomingVideoStreamsOutOfSync event:

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

Das Datenobjekt weist die folgenden Eigenschaften auf:The data object has the following properties:

EigenschaftProperty typeType BESCHREIBUNGDescription
firstTimestampfirstTimestamp Zeichenfolgestring Zeitstempel, der für eine der Spuren/Qualitätsstufen vom Typ Video empfangen wurde.Timestamp received for one of the tracks/quality levels of type video.
firstDurationfirstDuration Zeichenfolgestring Dauer des Datenblocks mit dem ersten Zeitstempel.Duration of the data chunk with first timestamp.
secondTimestampsecondTimestamp Zeichenfolgestring Zeitstempel, der für einige andere Spuren/Qualitätsstufen vom Typ Video empfangen wurde.Timestamp received for some other track/quality level of the type video.
secondDurationsecondDuration Zeichenfolgestring Dauer des Datenblocks mit dem zweiten Zeitstempel.Duration of the data chunk with second timestamp.
timescaletimescale Zeichenfolgestring Die Zeitskala für Zeitstempel und Dauer.Timescale of timestamps and duration.

LiveEventIngestHeartbeatLiveEventIngestHeartbeat

Das folgende Beispiel zeigt das Schema des LiveEventIngestHeartbeat-Ereignisses:The following example shows the schema of the LiveEventIngestHeartbeat event:

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

Das Datenobjekt weist die folgenden Eigenschaften auf:The data object has the following properties:

EigenschaftProperty typeType BESCHREIBUNGDescription
trackTypetrackType Zeichenfolgestring Spurtyp (Audio/Video)Type of the track (Audio / Video).
trackNametrackName Zeichenfolgestring Name der Spur (entweder vom Encoder oder (bei RTMP) vom Server im Format SpurTyp_Bitrate generiert).Name of the track (either provided by the encoder or, in case of RTMP, server generates in TrackType_Bitrate format).
bitratebitrate integerinteger Bitrate der SpurBitrate of the track.
incomingBitrateincomingBitrate integerinteger Berechnete Bitrate basierend auf den Datenblöcken vom Encoder.Calculated bitrate based on data chunks coming from encoder.
lastTimestamplastTimestamp Zeichenfolgestring Neuester Zeitstempel, der für eine Spur in den letzten 20 Sekunden empfangen wurde.Latest timestamp received for a track in last 20 seconds.
timescaletimescale Zeichenfolgestring Zeitskala für die Darstellung der Zeitstempel.Timescale in which timestamps are expressed.
overlapCountoverlapCount integerinteger Anzahl der Datenblöcke mit überlappenden Zeitstempeln in den letzten 20 Sekunden.Number of data chunks had overlapped timestamps in last 20 seconds.
discontinuityCountdiscontinuityCount integerinteger Anzahl von Diskontinuitäten in den letzten 20 Sekunden.Number of discontinuities observed in last 20 seconds.
nonIncreasingCountnonIncreasingCount integerinteger Anzahl der Datenblöcke mit Zeitstempeln in der Vergangenheit, die in den letzten 20 Sekunden empfangen wurden.Number of data chunks with timestamps in the past were received in last 20 seconds.
unexpectedBitrateunexpectedBitrate boolbool Die erwarteten und tatsächlichen Bitraten in den letzten 20 Sekunden unterscheiden sich um mehr als das maximal zulässige Limit.If expected and actual bitrates differ by more than allowed limit in last 20 seconds. TRUE, wenn (und nur wenn) incomingBitrate >= 2 * Bitrate OR incomingBitrate <= Bitrate / 2 OR IncomingBitrate = 0 gilt.It's true if and only if, incomingBitrate >= 2* bitrate OR incomingBitrate <= bitrate/2 OR IncomingBitrate = 0.
statestate Zeichenfolgestring Zustand des Liveereignisses.State of the live event.
healthyhealthy boolbool Gibt an, ob die Erfassung hinsichtlich Anzahl und Flags fehlerfrei ist.Indicates whether ingest is healthy based on the counts and flags. Healthy ist TRUE, wenn overlapCount = 0 && discontinuityCount = 0 && nonIncreasingCount = 0 && unexpectedBitrate = false gilt.Healthy is true if overlapCount = 0 && discontinuityCount = 0 && nonIncreasingCount = 0 && unexpectedBitrate = false.

LiveEventTrackDiscontinuityDetectedLiveEventTrackDiscontinuityDetected

Das folgende Beispiel zeigt das Schema des LiveEventTrackDiscontinuityDetected-Ereignisses:The following example shows the schema of the LiveEventTrackDiscontinuityDetected event:

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

Das Datenobjekt weist die folgenden Eigenschaften auf:The data object has the following properties:

EigenschaftProperty typeType BESCHREIBUNGDescription
trackTypetrackType Zeichenfolgestring Spurtyp (Audio/Video)Type of the track (Audio / Video).
trackNametrackName Zeichenfolgestring Name der Spur (entweder vom Encoder oder (bei RTMP) vom Server im Format SpurTyp_Bitrate generiert).Name of the track (either provided by the encoder or, in case of RTMP, server generates in TrackType_Bitrate format).
bitratebitrate integerinteger Bitrate der SpurBitrate of the track.
previousTimestamppreviousTimestamp Zeichenfolgestring Zeitstempel des vorherigen Fragments.Timestamp of the previous fragment.
newTimestampnewTimestamp Zeichenfolgestring Zeitstempel des aktuellen Fragments.Timestamp of the current fragment.
discontinuityGapdiscontinuityGap Zeichenfolgestring Lücke zwischen den beiden obigen Zeitstempeln.Gap between above two timestamps.
timescaletimescale Zeichenfolgestring Zeitskala für die Darstellung von Zeitstempel und Diskontinuitätslücke.Timescale in which both timestamp and discontinuity gap are represented.

Allgemeine EreigniseigenschaftenCommon event properties

Ein Ereignis weist die folgenden Daten auf oberster Ebene aus:An event has the following top-level data:

EigenschaftProperty typeType BESCHREIBUNGDescription
topictopic Zeichenfolgestring Das EventGrid-Thema.The EventGrid topic. Diese Eigenschaft enthält die Ressourcen-ID für das Media Services-Konto.This property has the resource ID for the Media Services account.
subjectsubject Zeichenfolgestring Ressourcenpfad für den Media Services-Kanal unter dem Media Services-Konto.The resource path for the Media Services channel under the Media Services account. Durch Verketten von topic und subject erhalten Sie die Ressourcen-ID für den Auftrag.Concatenating the topic and subject give you the resource ID for the job.
eventTypeeventType Zeichenfolgestring Einer der registrierten Ereignistypen für die Ereignisquelle.One of the registered event types for this event source. Beispiel: “Microsoft.Media.JobStateChange“.For example, "Microsoft.Media.JobStateChange".
eventTimeeventTime Zeichenfolgestring Die Zeit, in der das Ereignis generiert wird, basierend auf der UTC-Zeit des Anbieters.The time the event is generated based on the provider's UTC time.
idid Zeichenfolgestring Eindeutiger Bezeichner für das Ereignis.Unique identifier for the event.
datadata Objekt (object)object Media Services-Ereignisdaten.Media Services event data.
dataVersiondataVersion Zeichenfolgestring Die Schemaversion des Datenobjekts.The schema version of the data object. Der Herausgeber definiert die Schemaversion.The publisher defines the schema version.
metadataVersionmetadataVersion Zeichenfolgestring Die Schemaversion der Ereignismetadaten.The schema version of the event metadata. Event Grid definiert das Schema der Eigenschaften der obersten Ebene.Event Grid defines the schema of the top-level properties. Dieser Wert wird von Event Grid bereitgestellt.Event Grid provides this value.

Nächste SchritteNext steps

Registrieren für Statusänderungsereignisse von AufträgenRegister for job state change events

Weitere InformationenSee also