Media Services 用の Azure Event Grid スキーマAzure Event Grid schemas for Media Services events

この記事では、Media Services イベント用のスキーマとプロパティについて説明します。This article provides the schemas and properties for Media Services events.

サンプル スクリプトとチュートリアルの一覧については、Media Services のイベント ソースに関する記事を参照してください。For a list of sample scripts and tutorials, see Media Services event source.

Media Services では、以下の種類のジョブ関連イベントが出力されます。Media Services emits the Job related event types described below. ジョブ関連イベントには 2 つのカテゴリがあります。"ジョブの状態変更の監視" と "ジョブ出力の状態変更の監視" です。There are two categories for the Job related events: "Monitoring Job State Changes" and "Monitoring Job Output State Changes".

JobStateChange イベントをサブスクライブすると、すべてのイベントを登録できます。You can register for all of the events by subscribing to the JobStateChange event. また、特定のイベントのみ (たとえば、JobErrored、JobFinished、JobCanceled などの最終状態) をサブスクライブすることもできます。Or, you can subscribe for specific events only (for example, final states like JobErrored, JobFinished, and JobCanceled).

ジョブの状態変更の監視Monitoring Job state changes

イベントの種類Event type 説明Description
Microsoft.Media.JobStateChangeMicrosoft.Media.JobStateChange ジョブの状態変更のイベントをすべて取得します。Get an event for all Job State changes.
Microsoft.Media.JobScheduledMicrosoft.Media.JobScheduled ジョブがスケジュール済みの状態に遷移したときにイベントを取得します。Get an event when Job transitions to scheduled state.
Microsoft.Media.JobProcessingMicrosoft.Media.JobProcessing ジョブが処理中の状態に遷移したときにイベントを取得します。Get an event when Job transitions to processing state.
Microsoft.Media.JobCancelingMicrosoft.Media.JobCanceling ジョブが取り消し中の状態に遷移したときにイベントを取得します。Get an event when Job transitions to canceling state.
Microsoft.Media.JobFinishedMicrosoft.Media.JobFinished ジョブが終了中の状態に遷移したときにイベントを取得します。Get an event when Job transitions to finished state. これは、ジョブの出力を含む最終状態です。This is a final state that includes Job outputs.
Microsoft.Media.JobCanceledMicrosoft.Media.JobCanceled ジョブが取り消し済みの状態に遷移したときにイベントを取得します。Get an event when Job transitions to canceled state. これは、ジョブの出力を含む最終状態です。This is a final state that includes Job outputs.
Microsoft.Media.JobErroredMicrosoft.Media.JobErrored ジョブがエラー状態に遷移したときにイベントを取得します。Get an event when Job transitions to error state. これは、ジョブの出力を含む最終状態です。This is a final state that includes Job outputs.

次のスキーマの例を参照してください。See Schema examples that follow.

ジョブの出力の状態変更の監視Monitoring Job output state changes

イベントの種類Event type 説明Description
Microsoft.Media.JobOutputStateChangeMicrosoft.Media.JobOutputStateChange ジョブ出力の状態変更のイベントをすべて取得します。Get an event for all Job output State changes.
Microsoft.Media.JobOutputScheduledMicrosoft.Media.JobOutputScheduled ジョブ出力がスケジュール済みの状態に遷移したときにイベントを取得します。Get an event when Job output transitions to scheduled state.
Microsoft.Media.JobOutputProcessingMicrosoft.Media.JobOutputProcessing ジョブ出力が処理中の状態に遷移したときにイベントを取得します。Get an event when Job output transitions to processing state.
Microsoft.Media.JobOutputCancelingMicrosoft.Media.JobOutputCanceling ジョブ出力が取り消し中の状態に遷移したときにイベントを取得します。Get an event when Job output transitions to canceling state.
Microsoft.Media.JobOutputFinishedMicrosoft.Media.JobOutputFinished ジョブ出力が終了済みの状態に遷移したときにイベントを取得します。Get an event when Job output transitions to finished state.
Microsoft.Media.JobOutputCanceledMicrosoft.Media.JobOutputCanceled ジョブ出力が取り消し済みの状態に遷移したときにイベントを取得します。Get an event when Job output transitions to canceled state.
Microsoft.Media.JobOutputErroredMicrosoft.Media.JobOutputErrored ジョブ出力がエラー状態に遷移したときにイベントを取得します。Get an event when Job output transitions to error state.

次のスキーマの例を参照してください。See Schema examples that follow.

ジョブ出力の進行状況の監視Monitoring Job output progress

イベントの種類Event type 説明Description
Microsoft.Media.JobOutputProgressMicrosoft.Media.JobOutputProgress このイベントは、ジョブ処理の進行状況を反映します (0 % から 100%)。This event reflects the job processing progress, from 0% to 100%. 進行状況の値が 5% 以上増加した場合、または前回のイベントから 30 秒以上経過した (ハートビート) 場合に、サービスによるイベントの送信が試されます。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). 進行状況の値は、0% で始まることも 100% に達することも保証されていません。さらに、時間の経過とともに一定の率で増加することも保証されていません。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. このイベントは、処理が完了していることを判断するために使用すべきではありません。代わりに、状態変更イベントを使用する必要があります。This event should not be used to determine that the processing has been completed – you should instead use the state change events.

次のスキーマの例を参照してください。See Schema examples that follow.

ライブ イベントの種類Live event types

Media Services では、以下の種類のライブ イベントも出力されます。Media Services also emits the Live event types described below. Live イベントには、ストリーム レベル イベントとトラック レベル イベントの 2 つのカテゴリがあります。There are two categories for the Live events: stream-level events and track-level events.

ストリーム レベル イベントStream-level events

ストリーム レベル イベントは、ストリームまたは接続ごとに発生します。Stream-level events are raised per stream or connection. 各イベントには、接続またはストリームを識別する StreamId パラメーターがあります。Each event has a StreamId parameter that identifies the connection or stream. 各ストリームまたは接続には、さまざまな種類のトラックが少なくとも 1 つ存在します。Each stream or connection has one or more tracks of different types. たとえば、エンコーダーからの接続 1 つにつき、1 つのオーディオ トラックと 4 つのビデオ トラックが存在する場合もあります。For example, one connection from an encoder may have one audio track and four video tracks. ストリーム イベントには、次の種類があります。The stream event types are:

イベントの種類Event type 説明Description
Microsoft.Media.LiveEventConnectionRejectedMicrosoft.Media.LiveEventConnectionRejected エンコーダーの接続試行が拒否されました。Encoder's connection attempt is rejected.
Microsoft.Media.LiveEventEncoderConnectedMicrosoft.Media.LiveEventEncoderConnected エンコーダーがライブ イベントとの接続を確立しました。Encoder establishes connection with live event.
Microsoft.Media.LiveEventEncoderDisconnectedMicrosoft.Media.LiveEventEncoderDisconnected エンコーダーが切断されました。Encoder disconnects.

次のスキーマの例を参照してください。See Schema examples that follow.

トラック レベル イベントTrack-level events

トラック レベル イベントは、トラックごとに発生します。Track-level events are raised per track.

注意

すべてのトラックレベル イベントは、ライブ エンコーダーが接続された後に発生します。All track-level events are raised after a live encoder is connected.

トラックレベル イベントには、次の種類があります。The track-level event types are:

イベントの種類Event type 説明Description
Microsoft.Media.LiveEventIncomingDataChunkDroppedMicrosoft.Media.LiveEventIncomingDataChunkDropped データ チャンクが遅すぎるか、タイムスタンプが重複している (新しいデータ チャンクのタイムスタンプが前のデータ チャンクの終了時間よりも古い) ため、メディア サーバーがデータ チャンクをドロップしました。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 receives first data chunk for each track in the stream or connection.
Microsoft.Media.LiveEventIncomingStreamsOutOfSyncMicrosoft.Media.LiveEventIncomingStreamsOutOfSync オーディオ ストリームとビデオ ストリームの同期がずれていることをメディア サーバーが検出しました。ユーザー エクスペリエンスへの影響はないと考えられるため、警告として使用してください。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 外部エンコーダーから受信している 2 つのビデオ ストリームの同期がずれていることをメディア サーバーが検出しました。ユーザー エクスペリエンスへの影響はないと考えられるため、警告として使用してください。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 ライブ イベントの実行中、各トラックについて 20 秒ごとに発行されます。Published every 20 seconds for each track when live event is running. 取り込みの正常性についての概要が得られます。Provides ingest health summary.

エンコーダーが最初に接続された後、エンコーダーがまだ接続されているかどうかにかかわらず、ハートビート イベントは 20 秒ごとに出力され続けます。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 detects discontinuity in the incoming track.

次のスキーマの例を参照してください。See Schema examples that follow.

イベント スキーマの例Event schema examples

JobStateChangeJobStateChange

次の例は、JobStateChange イベントのスキーマを示しています。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"
  }
]

データ オブジェクトには、次のプロパティがあります。The data object has the following properties:

プロパティProperty TypeType 説明Description
previousStatepreviousState stringstring イベントの前のジョブの状態。The state of the job before the event.
statestate stringstring このイベントで通知されるジョブの新しい状態。The new state of the job being notified in this event. 例: "Scheduled:The job is ready to start" または "Finished:The job is finished"。For example, "Scheduled: The job is ready to start" or "Finished: The job is finished" .

ジョブの状態。値は次のいずれかです。QueuedScheduledProcessingFinishedErrorCanceledCancelingWhere the Job state can be one of the values: Queued, Scheduled, Processing, Finished, Error, Canceled, Canceling

注意

QueuedpreviousState プロパティでのみ示され、state プロパティでは示されません。Queued is only going to be present in the previousState property but not in the state property.

JobScheduled、JobProcessing、JobCancelingJobScheduled, JobProcessing, JobCanceling

非最終ジョブの状態変更 (JobScheduled、JobProcessing、JobCanceling など) については、 サンプル スキーマは次のようになります。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

最終ジョブの状態変更 (JobFinished、JobCanceled、JobErrored など) については、 サンプル スキーマは次のようになります。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"
}]

データ オブジェクトには、次のプロパティがあります。The data object has the following properties:

プロパティProperty TypeType 説明Description
outputsoutputs ArrayArray ジョブ出力を取得します。Gets the Job outputs.

JobOutputStateChangeJobOutputStateChange

次の例は、JobOutputStateChange イベントのスキーマを示しています。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

各 JobOutput の状態変更については、サンプル スキーマは次のようになります。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

スキーマの例は次のようになります。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

次の例は、LiveEventConnectionRejected イベントのスキーマを示しています。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"
  }
]

データ オブジェクトには、次のプロパティがあります。The data object has the following properties:

プロパティProperty TypeType 説明Description
streamIdstreamId stringstring ストリームまたは接続の識別子。Identifier of the stream or connection. この ID は、エンコーダーまたはカスタマーが取り込み URL に追加します。Encoder or customer is responsible to add this ID in the ingest URL.
ingestUrlingestUrl stringstring ライブ イベントから提供される取り込み URL。Ingest URL provided by the live event.
encoderIpencoderIp stringstring エンコーダーの IP。IP of the encoder.
encoderPortencoderPort stringstring このストリームの送信元であるエンコーダーのポート。Port of the encoder from where this stream is coming.
resultCoderesultCode stringstring 接続が拒否された理由。The reason the connection was rejected. 結果コードについては、以下の表をご覧ください。The result codes are listed in the following table.

次に示したのは、結果コードの一覧です。The result codes are:

結果コードResult code 説明Description
MPE_RTMP_APPID_AUTH_FAILUREMPE_RTMP_APPID_AUTH_FAILURE 取り込み URL が正しくありません。Incorrect ingest URL
MPE_INGEST_ENCODER_CONNECTION_DENIEDMPE_INGEST_ENCODER_CONNECTION_DENIED 構成されている IP 許可リストにエンコーダー IP が存在しません。Encoder IP isn't present in IP allow list configured
MPE_INGEST_RTMP_SETDATAFRAME_NOT_RECEIVEDMPE_INGEST_RTMP_SETDATAFRAME_NOT_RECEIVED ストリームに関するメタデータがエンコーダーから送信されませんでした。Encoder didn't send metadata about the stream.
MPE_INGEST_CODEC_NOT_SUPPORTEDMPE_INGEST_CODEC_NOT_SUPPORTED 指定されたコーデックはサポートされていません。Codec specified isn't supported.
MPE_INGEST_DESCRIPTION_INFO_NOT_RECEIVEDMPE_INGEST_DESCRIPTION_INFO_NOT_RECEIVED ストリームのヘッダーを受信する前にそのフラグメントを受信しました。Received a fragment before receiving and header for that stream.
MPE_INGEST_MEDIA_QUALITIES_EXCEEDEDMPE_INGEST_MEDIA_QUALITIES_EXCEEDED 指定された品質の数が、許容される上限を超えています。Number of qualities specified exceeds allowed max limit.
MPE_INGEST_BITRATE_AGGREGATED_EXCEEDEDMPE_INGEST_BITRATE_AGGREGATED_EXCEEDED 集約されたビットレートが、許容される上限を超えています。Aggregated bitrate exceeds max allowed limit.
MPE_RTMP_FLV_TAG_TIMESTAMP_INVALIDMPE_RTMP_FLV_TAG_TIMESTAMP_INVALID RTMP エンコーダーからのビデオまたはオーディオ FLVTag のタイムスタンプが無効です。The timestamp for video or audio FLVTag is invalid from RTMP encoder.

LiveEventEncoderConnectedLiveEventEncoderConnected

次の例は、LiveEventEncoderConnected イベントのスキーマを示しています。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"
  }
]

データ オブジェクトには、次のプロパティがあります。The data object has the following properties:

プロパティProperty TypeType 説明Description
streamIdstreamId stringstring ストリームまたは接続の識別子。Identifier of the stream or connection. この ID は、エンコーダーまたはカスタマーが取り込み URL に指定します。Encoder or customer is responsible for providing this ID in the ingest URL.
ingestUrlingestUrl stringstring ライブ イベントから提供される取り込み URL。Ingest URL provided by the live event.
encoderIpencoderIp stringstring エンコーダーの IP。IP of the encoder.
encoderPortencoderPort stringstring このストリームの送信元であるエンコーダーのポート。Port of the encoder from where this stream is coming.

LiveEventEncoderDisconnectedLiveEventEncoderDisconnected

次の例は、LiveEventEncoderDisconnected イベントのスキーマを示しています。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"
  }
]

データ オブジェクトには、次のプロパティがあります。The data object has the following properties:

プロパティProperty TypeType 説明Description
streamIdstreamId stringstring ストリームまたは接続の識別子。Identifier of the stream or connection. この ID は、エンコーダーまたはカスタマーが取り込み URL に追加します。Encoder or customer is responsible to add this ID in the ingest URL.
ingestUrlingestUrl stringstring ライブ イベントから提供される取り込み URL。Ingest URL provided by the live event.
encoderIpencoderIp stringstring エンコーダーの IP。IP of the encoder.
encoderPortencoderPort stringstring このストリームの送信元であるエンコーダーのポート。Port of the encoder from where this stream is coming.
resultCoderesultCode stringstring エンコーダーの切断の理由。The reason for the encoder disconnecting. 正常な切断とエラーによる切断とがあります。It could be graceful disconnect or from an error. 結果コードについては、以下の表をご覧ください。The result codes are listed in the following table.

次に示したのは、エラー結果コードの一覧です。The error result codes are:

結果コードResult code 説明Description
MPE_RTMP_SESSION_IDLE_TIMEOUTMPE_RTMP_SESSION_IDLE_TIMEOUT RTMP セッションは、アイドル状態のまま許容制限時間を超えてタイムアウトしました。RTMP session timed out after being idle for allowed time limit.
MPE_RTMP_FLV_TAG_TIMESTAMP_INVALIDMPE_RTMP_FLV_TAG_TIMESTAMP_INVALID RTMP エンコーダーからのビデオまたはオーディオ FLVTag のタイムスタンプが無効です。The timestamp for video or audio FLVTag is invalid from RTMP encoder.
MPE_CAPACITY_LIMIT_REACHEDMPE_CAPACITY_LIMIT_REACHED エンコーダーからデータが送信される速度が速すぎます。Encoder sending data too fast.
不明なエラー コードUnknown Error Codes これらのエラー コードは、メモリ エラーから、ハッシュ マップにおけるエントリの重複まで多岐にわたります。These error codes can range from memory error to duplicate entries in hash map.

正常な切断の結果コードは次のとおりです。The graceful disconnect result codes are:

結果コードResult code 説明Description
S_OKS_OK エンコーダーが正常に切断されました。Encoder disconnected successfully.
MPE_CLIENT_TERMINATED_SESSIONMPE_CLIENT_TERMINATED_SESSION エンコーダーが切断されました (RTMP)。Encoder disconnected (RTMP).
MPE_CLIENT_DISCONNECTEDMPE_CLIENT_DISCONNECTED エンコーダーが切断されました (FMP4)。Encoder disconnected (FMP4).
MPI_REST_API_CHANNEL_RESETMPI_REST_API_CHANNEL_RESET チャンネルのリセット コマンドを受信しました。Channel reset command is received.
MPI_REST_API_CHANNEL_STOPMPI_REST_API_CHANNEL_STOP チャンネルの停止コマンドを受信しました。Channel stop command received.
MPI_REST_API_CHANNEL_STOPMPI_REST_API_CHANNEL_STOP チャンネルはメンテナンス中です。Channel undergoing maintenance.
MPI_STREAM_HIT_EOFMPI_STREAM_HIT_EOF エンコーダーから EOF ストリームが送信されました。EOF stream is sent by the encoder.

LiveEventIncomingDataChunkDroppedLiveEventIncomingDataChunkDropped

次の例は、LiveEventIncomingDataChunkDropped イベントのスキーマを示しています。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"
  }
]

データ オブジェクトには、次のプロパティがあります。The data object has the following properties:

プロパティProperty TypeType 説明Description
trackTypetrackType stringstring 追跡のタイプ (オーディオ/ビデオ)。Type of the track (Audio / Video).
trackNametrackName stringstring トラックの名前。Name of the track.
bitratebitrate integerinteger トラックのビットレート。Bitrate of the track.
timestamptimestamp stringstring ドロップされたデータ チャンクのタイムスタンプ。Timestamp of the data chunk dropped.
timescaletimescale stringstring タイムスタンプのタイムスケール。Timescale of the timestamp.
resultCoderesultCode stringstring データ チャンクがドロップされた理由。Reason of the data chunk drop. FragmentDrop_OverlapTimestamp または FragmentDrop_NonIncreasingTimestampFragmentDrop_OverlapTimestamp or FragmentDrop_NonIncreasingTimestamp.

LiveEventIncomingStreamReceivedLiveEventIncomingStreamReceived

次の例は、LiveEventIncomingStreamReceived イベントのスキーマを示しています。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"
  }
]

データ オブジェクトには、次のプロパティがあります。The data object has the following properties:

プロパティProperty TypeType 説明Description
trackTypetrackType stringstring 追跡のタイプ (オーディオ/ビデオ)。Type of the track (Audio / Video).
trackNametrackName stringstring トラックの名前。エンコーダーによって指定されるか、または RTMP の場合は、TrackType_Bitrate 形式でサーバーによって生成されます。Name of the track (either provided by the encoder or, in case of RTMP, server generates in TrackType_Bitrate format).
bitratebitrate integerinteger トラックのビットレート。Bitrate of the track.
ingestUrlingestUrl stringstring ライブ イベントから提供される取り込み URL。Ingest URL provided by the live event.
encoderIpencoderIp stringstring エンコーダーの IP。IP of the encoder.
encoderPortencoderPort stringstring このストリームの送信元であるエンコーダーのポート。Port of the encoder from where this stream is coming.
timestamptimestamp stringstring 受信したデータ チャンクの最初のタイムスタンプ。First timestamp of the data chunk received.
timescaletimescale stringstring タイムスタンプの表示に使用されるタイムスケール。Timescale in which timestamp is represented.

LiveEventIncomingStreamsOutOfSyncLiveEventIncomingStreamsOutOfSync

次の例は、LiveEventIncomingStreamsOutOfSync イベントのスキーマを示しています。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"
  }
]

データ オブジェクトには、次のプロパティがあります。The data object has the following properties:

プロパティProperty TypeType 説明Description
minLastTimestampminLastTimestamp stringstring 全トラック (オーディオまたはビデオ) における最後のタイムスタンプの最小値。Minimum of last timestamps among all the tracks (audio or video).
typeOfTrackWithMinLastTimestamptypeOfTrackWithMinLastTimestamp stringstring 最後のタイムスタンプが最も小さいトラックの種類 (オーディオまたはビデオ)。Type of the track (audio or video) with minimum last timestamp.
maxLastTimestampmaxLastTimestamp stringstring 全トラック (オーディオまたはビデオ) におけるすべてのタイムスタンプの最大値。Maximum of all the timestamps among all the tracks (audio or video).
typeOfTrackWithMaxLastTimestamptypeOfTrackWithMaxLastTimestamp stringstring 最後のタイムスタンプが最も大きいトラックの種類 (オーディオまたはビデオ)。Type of the track (audio or video) with maximum last timestamp.
timescaleOfMinLastTimestamptimescaleOfMinLastTimestamp stringstring "MinLastTimestamp" の表示に使用されるタイムスケールを取得します。Gets the timescale in which "MinLastTimestamp" is represented.
timescaleOfMaxLastTimestamptimescaleOfMaxLastTimestamp stringstring "MaxLastTimestamp" の表示に使用されるタイムスケールを取得します。Gets the timescale in which "MaxLastTimestamp" is represented.

LiveEventIncomingVideoStreamsOutOfSyncLiveEventIncomingVideoStreamsOutOfSync

次の例は、LiveEventIncomingVideoStreamsOutOfSync イベントのスキーマを示しています。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"
  }
]

データ オブジェクトには、次のプロパティがあります。The data object has the following properties:

プロパティProperty TypeType 説明Description
firstTimestampfirstTimestamp stringstring 種類がビデオであるいずれかのトラック/品質レベルについて受信したタイムスタンプ。Timestamp received for one of the tracks/quality levels of type video.
firstDurationfirstDuration stringstring 1 つ目のタイムスタンプを持つデータ チャンクの期間。Duration of the data chunk with first timestamp.
secondTimestampsecondTimestamp stringstring 種類がビデオである他の何らかのトラック/品質レベルについて受信したタイムスタンプ。Timestamp received for some other track/quality level of the type video.
secondDurationsecondDuration stringstring 2 つ目のタイムスタンプを持つデータ チャンクの期間。Duration of the data chunk with second timestamp.
timescaletimescale stringstring タイムスタンプと時間のタイムスケール。Timescale of timestamps and duration.

LiveEventIngestHeartbeatLiveEventIngestHeartbeat

次の例は、LiveEventIngestHeartbeat イベントのスキーマを示しています。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"
  }
]

データ オブジェクトには、次のプロパティがあります。The data object has the following properties:

プロパティProperty TypeType 説明Description
trackTypetrackType stringstring 追跡のタイプ (オーディオ/ビデオ)。Type of the track (Audio / Video).
trackNametrackName stringstring トラックの名前。エンコーダーによって指定されるか、または RTMP の場合は、TrackType_Bitrate 形式でサーバーによって生成されます。Name of the track (either provided by the encoder or, in case of RTMP, server generates in TrackType_Bitrate format).
bitratebitrate integerinteger トラックのビットレート。Bitrate of the track.
incomingBitrateincomingBitrate integerinteger エンコーダーから送信されるデータ チャンクに基づいて計算されたビットレート。Calculated bitrate based on data chunks coming from encoder.
lastTimestamplastTimestamp stringstring トラックに関して直近 20 秒に受信した最新のタイムスタンプ。Latest timestamp received for a track in last 20 seconds.
timescaletimescale stringstring タイムスタンプの表示に使用されるタイムスケール。Timescale in which timestamps are expressed.
overlapCountoverlapCount integerinteger 直近 20 秒にタイムスタンプが重複したデータ チャンクの数。Number of data chunks had overlapped timestamps in last 20 seconds.
discontinuityCountdiscontinuityCount integerinteger 直近 20 秒に観察された途切れの数。Number of discontinuities observed in last 20 seconds.
nonIncreasingCountnonIncreasingCount integerinteger 直近 20 秒に過去のタイムスタンプを受信したデータ チャンクの数。Number of data chunks with timestamps in the past were received in last 20 seconds.
unexpectedBitrateunexpectedBitrate boolbool 直近 20 秒における予想ビットレートと実ビットレートの差が、許容されている上限を超えているかどうか。If expected and actual bitrates differ by more than allowed limit in last 20 seconds. incomingBitrate がビットレートの 2 倍以上または incomingBitrate がビットレートの 1/2 以下または incomingBitrate が 0 のとき、かつそのときに限り true。It's true if and only if, incomingBitrate >= 2* bitrate OR incomingBitrate <= bitrate/2 OR IncomingBitrate = 0.
statestate stringstring ライブ イベントの状態。State of the live event.
healthyhealthy boolbool カウントとフラグに基づき、取り込みが正常であるかどうかを示します。Indicates whether ingest is healthy based on the counts and flags. overlapCount = 0 && discontinuityCount = 0 && nonIncreasingCount = 0 && unexpectedBitrate = false の場合、Healthy は true になります。Healthy is true if overlapCount = 0 && discontinuityCount = 0 && nonIncreasingCount = 0 && unexpectedBitrate = false.

LiveEventTrackDiscontinuityDetectedLiveEventTrackDiscontinuityDetected

次の例は、LiveEventTrackDiscontinuityDetected イベントのスキーマを示しています。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"
  }
]

データ オブジェクトには、次のプロパティがあります。The data object has the following properties:

プロパティProperty TypeType 説明Description
trackTypetrackType stringstring 追跡のタイプ (オーディオ/ビデオ)。Type of the track (Audio / Video).
trackNametrackName stringstring トラックの名前。エンコーダーによって指定されるか、または RTMP の場合は、TrackType_Bitrate 形式でサーバーによって生成されます。Name of the track (either provided by the encoder or, in case of RTMP, server generates in TrackType_Bitrate format).
bitratebitrate integerinteger トラックのビットレート。Bitrate of the track.
previousTimestamppreviousTimestamp stringstring 前のフラグメントのタイムスタンプ。Timestamp of the previous fragment.
newTimestampnewTimestamp stringstring 現在のフラグメントのタイムスタンプ。Timestamp of the current fragment.
discontinuityGapdiscontinuityGap stringstring 2 つのタイムスタンプの差。Gap between above two timestamps.
timescaletimescale stringstring タイムスタンプと不連続性の両方について、差を表すときに使用されるタイムスケール。Timescale in which both timestamp and discontinuity gap are represented.

共通のイベント プロパティCommon event properties

イベントのトップレベルのデータを次に示します。An event has the following top-level data:

プロパティProperty TypeType 説明Description
topictopic stringstring EventGrid トピック。The EventGrid topic. このプロパティは、Media Services アカウントのリソース ID を保持します。This property has the resource ID for the Media Services account.
subjectsubject stringstring Media Services アカウント下の Media Services チャンネルのリソース パス。The resource path for the Media Services channel under the Media Services account. トピックとサブジェクトを連結することで、ジョブのリソース ID が得られます。Concatenating the topic and subject give you the resource ID for the job.
eventTypeeventType stringstring このイベント ソース用に登録されたイベントの種類のいずれか。One of the registered event types for this event source. 例: "Microsoft.Media.JobStateChange"For example, "Microsoft.Media.JobStateChange".
eventTimeeventTime stringstring プロバイダーの UTC 時刻に基づくイベントの生成時刻。The time the event is generated based on the provider's UTC time.
idid stringstring イベントの一意識別子。Unique identifier for the event.
datadata objectobject Media Services イベント データ。Media Services event data.
dataVersiondataVersion stringstring データ オブジェクトのスキーマ バージョン。The schema version of the data object. スキーマ バージョンは発行元によって定義されます。The publisher defines the schema version.
metadataVersionmetadataVersion stringstring イベント メタデータのスキーマ バージョン。The schema version of the event metadata. 最上位プロパティのスキーマは Event Grid によって定義されます。Event Grid defines the schema of the top-level properties. この値は Event Grid によって指定されます。Event Grid provides this value.

次の手順Next steps

ジョブ状態変更イベントを登録するRegister for job state change events

関連項目See also