分享方式:


Azure 媒體服務作為事件方格來源

本文提供媒體服務事件的結構描述和屬性。

媒體服務會發出如下所述的 [作業] 相關事件類型。 [作業] 相關事件有兩種類別:「監視工作狀態變更」和「監視作業輸出的狀態變更」。

您可以訂閱 JobStateChange 事件來註冊所有事件。 或者,您可以只訂閱特定事件 (例如,JobErrored、JobFinished 和 JobCanceled 等最終狀態)。

監視作業狀態變更

事件類型 描述
Microsoft.Media.JobStateChange 取得所有作業狀態變更的事件。
Microsoft.Media.JobScheduled 取得當作業轉換成已排程狀態時的事件。
Microsoft.Media.JobProcessing 取得當作業轉換成處理狀態時的事件。
Microsoft.Media.JobCanceling 取得當作業轉換成取消狀態時的事件。
Microsoft.Media.JobFinished 取得當作業轉換成完成狀態時的事件。 這是包含作業輸出的最終狀態。
Microsoft.Media.JobCanceled 取得當作業轉換成已取消狀態時的事件。 這是包含作業輸出的最終狀態。
Microsoft.Media.JobErrored 取得當作業轉換成錯誤狀態時的事件。 這是包含作業輸出的最終狀態。

請參閱接下來將說明的結構描述範例

監視作業輸出狀態變更

工作可能包含多個工作輸出 (如果您已將轉換設定為具有多個工作輸出)。如果您想要追蹤個別工作輸出的詳細資料,則請接聽工作輸出變更事件。

每個作業都會在高於 JobOutput 的層級,因此作業輸出事件會在對應的作業內引發。

JobFinishedJobCanceledJobError 中的錯誤訊息會針對每個作業輸出來輸出彙總結果 - 當所有作業完成時。 而作業輸出事件會在每個工作完成時引發。 例如,如果您有編碼輸出,後面接著影片分析輸出,您會在最後一個 JobFinished 事件引發之前,使用彙總的資料引發兩個事件作為作業輸出事件。

事件類型 描述
Microsoft.Media.JobOutputStateChange 取得所有作業輸出狀態變更的事件。
Microsoft.Media.JobOutputScheduled 取得當作業輸出轉換成已排程狀態時的事件。
Microsoft.Media.JobOutputProcessing 取得當作業輸出轉換成處理狀態時的事件。
Microsoft.Media.JobOutputCanceling 取得當作業輸出轉換成取消狀態時的事件。
Microsoft.Media.JobOutputFinished 取得當作業輸出轉換成完成狀態時的事件。
Microsoft.Media.JobOutputCanceled 取得當作業輸出轉換成已取消態時的事件。
Microsoft.Media.JobOutputErrored 取得當作業輸出轉換成錯誤狀態時的事件。

請參閱接下來將說明的結構描述範例

監視作業輸出進度

事件類型 描述
Microsoft.Media.JobOutputProgress 此事件反映作業處理進度 (從 0% 到 100%)。 若進度值增加超過 5%,或自上一個事件起已超過 30 秒 (活動訊號),則服務會嘗試傳送事件。 進度值不一定會從 0% 開始、不一定會達到 100%,也不一定會隨著時間的經過而以固定速率增加。 您不應該使用此事件來判斷處理是否已完成,您應該改為使用狀態變更事件。

請參閱接下來將說明的結構描述範例

即時事件類型

媒體服務也會發出如下所述的 [即時] 事件類型。 即時事件有兩種類別:資料流層級事件和資料軌層級事件。

串流層級事件

資料流層級事件會以每個資料流或連線為基礎來引發。 每個事件都有 StreamId 參數可識別連線或資料流。 每個資料流或連線都有一或多個不同類型的資料軌。 例如,來自編碼器的一個連線可能會有一個音訊資料軌和四個視訊資料軌。 資料流事件類型有:

事件類型 描述
Microsoft.Media.LiveEventConnectionRejected 編碼器的連線嘗試遭到拒絕。
Microsoft.Media.LiveEventEncoderConnected 編碼器對即時事件建立連線。
Microsoft.Media.LiveEventEncoderDisconnected 編碼器中斷連線。

請參閱接下來將說明的結構描述範例

追蹤層級事件

資料軌層級事件會以每個資料軌為基礎來引發。

注意

所有追蹤層級事件都會在即時編碼器連線之後引發。

追蹤層級事件類型有:

事件類型 描述
Microsoft.Media.LiveEventIncomingDataChunkDropped 媒體伺服器卸除資料區塊,原因是其來得太晚或有重疊的時間戳記 (新資料區塊的時間戳記小於先前資料區塊的結束時間)。
Microsoft.Media.LiveEventIncomingStreamReceived 媒體伺服器收到資料流或連線中每個資料軌的第一個資料區塊。
Microsoft.Media.LiveEventIncomingStreamsOutOfSync 媒體伺服器偵測到音訊和視訊資料流未同步。可作為警告,原因是使用者體驗可能不受影響。
Microsoft.Media.LiveEventIncomingVideoStreamsOutOfSync 媒體伺服器偵測到來自外部編碼器的兩個視訊資料流中,有任一個未同步。可作為警告,原因是使用者體驗可能不受影響。
Microsoft.Media.LiveEventIngestHeartbeat 當即時事件執行時,會針對每個資料軌每 20 秒發佈一次。 提供內嵌健康情況摘要。

一開始連線編碼器之後,活動訊號事件會繼續每隔 20 秒發出一次,無論編碼器是否仍然保持連線。
Microsoft.Media.LiveEventTrackDiscontinuityDetected 媒體伺服器偵測到內送的資料軌發生中斷。

請參閱接下來將說明的結構描述範例

事件結構描述範例

JobStateChange

下列範例顯示 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"
  }
]

資料物件具有下列屬性:

屬性 類型​ 描述
previousState string 工作在該事件之前的狀態。
state string 在此事件中,被通知的工作新狀態。 例如,「已排程:作業已準備好啟動」或「已完成:作業已完成」。

工作狀態可以是以下其中一個值:已排入佇列已排程處理中已完成錯誤已取消取消中

注意

「已排入佇列」 只會存在於 previousState 屬性中,但是不會在 state 屬性中。

JobScheduled、JobProcessing、JobCanceling

對於每個非最終作業狀態的變更 (例如 JobScheduled、JobProcessing、JobCanceling),範例結構描述看起來如下所示:

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

對於每個最終作業狀態的變更 (例如 JobFinished、JobCanceled、JobErrored),範例結構描述看起來如下所示:

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

資料物件具有下列屬性:

屬性 類型​ 描述
outputs 陣列 取得作業輸出。

JobOutputStateChange

下列範例顯示 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

對於每個 JobOutput 狀態變更,範例結構描述看起來如下所示:

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

範例結構描述看起來像下面這樣:

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

下列範例顯示 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"
  }
]

資料物件具有下列屬性:

屬性 類型​ 描述
streamId string 資料流或連線的識別碼。 編碼器或客戶要負責在內嵌 URL 中新增此識別碼。
ingestUrl string 即時事件所提供的內嵌 URL。
encoderIp string 編碼器的 IP。
encoderPort string 此資料流來源編碼器的連接埠。
resultCode string 連線遭到拒絕的原因。 結果碼列於下表。

您可以在即時事件錯誤碼中找到錯誤結果碼。

LiveEventEncoderConnected

下列範例顯示 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"
  }
]

資料物件具有下列屬性:

屬性 類型​ 描述
streamId string 資料流或連線的識別碼。 編碼器或客戶要負責在內嵌 URL 中提供此識別碼。
ingestUrl string 即時事件所提供的內嵌 URL。
encoderIp string 編碼器的 IP。
encoderPort string 此資料流來源編碼器的連接埠。

LiveEventEncoderDisconnected

下列範例顯示 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"
  }
]

資料物件具有下列屬性:

屬性 類型​ 描述
streamId string 資料流或連線的識別碼。 編碼器或客戶要負責在內嵌 URL 中新增此識別碼。
ingestUrl string 即時事件所提供的內嵌 URL。
encoderIp string 編碼器的 IP。
encoderPort string 此資料流來源編碼器的連接埠。
resultCode string 編碼器中斷連線的原因。 可能是正常中斷連線或錯誤所致。 結果碼列於下表。

您可以在即時事件錯誤碼中找到錯誤結果碼。

正常中斷連線的結果碼如下:

結果碼 描述
S_OK 編碼器已成功中斷連線。
MPE_CLIENT_TERMINATED_SESSION 編碼器已中斷連線 (RTMP)。
MPE_CLIENT_DISCONNECTED 編碼器已中斷連線 (FMP4)。
MPI_REST_API_CHANNEL_RESET 收到通道重設命令。
MPI_REST_API_CHANNEL_STOP 收到通道停止命令。
MPI_REST_API_CHANNEL_STOP 通道正在進行維護。
MPI_STREAM_HIT_EOF 編碼器傳送了 EOF 資料流。

LiveEventIncomingDataChunkDropped

下列範例顯示 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"
  }
]

資料物件具有下列屬性:

屬性 類型​ 描述
trackType string 資料軌的類型 (音訊/視訊)。
trackName string 資料軌的名稱。
bitrate 整數 資料軌的位元速率。
timestamp string 資料區塊的卸除時間戳記。
timescale string 時間戳記的時幅。
resultCode string 資料區塊卸除的原因。 FragmentDrop_OverlapTimestampFragmentDrop_NonIncreasingTimestamp

LiveEventIncomingStreamReceived

下列範例顯示 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"
  }
]

資料物件具有下列屬性:

屬性 類型​ 描述
trackType string 資料軌的類型 (音訊/視訊)。
trackName string 資料軌的名稱 (由編碼器提供,在 RTMP 的案例中,伺服器會以 TrackType_Bitrate 格式產生)。
bitrate 整數 資料軌的位元速率。
ingestUrl string 即時事件所提供的內嵌 URL。
encoderIp string 編碼器的 IP。
encoderPort string 此資料流來源編碼器的連接埠。
timestamp string 所收到資料區塊的第一個時間戳記。
timescale string 用來表示時間戳記的時幅。

LiveEventIncomingStreamsOutOfSync

下列範例顯示 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"
  }
]

資料物件具有下列屬性:

屬性 類型​ 描述
minLastTimestamp string 所有資料軌 (音訊或視訊) 最後一個時間戳記之間的最小值。
typeOfTrackWithMinLastTimestamp string 最後一個時間戳記為最小值的資料軌 (音訊或視訊) 類型。
maxLastTimestamp string 所有資料軌 (音訊或視訊) 的所有時間戳記之間的最大值。
typeOfTrackWithMaxLastTimestamp string 最後一個時間戳記為最大值的資料軌 (音訊或視訊) 類型。
timescaleOfMinLastTimestamp string 取得用來表示 "MinLastTimestamp" 的時幅。
timescaleOfMaxLastTimestamp string 取得用來表示 "MaxLastTimestamp" 的時幅。

LiveEventIncomingVideoStreamsOutOfSync

下列範例顯示 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"
  }
]

資料物件具有下列屬性:

屬性 類型​ 描述
firstTimestamp string 其中一個視訊類型資料軌/品質層級所收到的時間戳記。
firstDuration string 具有第一個時間戳記的資料區塊持續時間。
secondTimestamp string 其他某些視訊類型資料軌/品質層級所收到的時間戳記。
secondDuration string 具有第二個時間戳記的資料區塊持續時間。
timescale string 時間戳記和持續時間的時幅。

LiveEventIngestHeartbeat

下列範例顯示 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"
  }
]

資料物件具有下列屬性:

屬性 類型​ 描述
trackType string 資料軌的類型 (音訊/視訊)。
trackName string 資料軌的名稱 (由編碼器提供,在 RTMP 的案例中,伺服器會以 TrackType_Bitrate 格式產生)。
bitrate 整數 資料軌的位元速率。
incomingBitrate 整數 根據來自編碼器的資料區塊所計算出的位元速率。
lastTimestamp string 資料軌在過去 20 秒所收到的最新時間戳記。
timescale string 用來表示時間戳記的時幅。
overlapCount 整數 在過去 20 秒有重疊時間戳記的資料區塊數目。
discontinuityCount 整數 在過去 20 秒所觀察到的中斷次數。
nonIncreasingCount 整數 在過去 20 秒所收到有過去時間戳記的資料區塊數目。
unexpectedBitrate bool 在過去 20 秒內,預期和實際的位元速率差異是否超過允許的限制。 只有在「incomingBitrate >= 2* 位元速率」或「incomingBitrate <= 位元速率/2」或「IncomingBitrate = 0」時,才會是 true。
state string 即時事件的狀態。
healthy bool 根據計數和旗標來指出內嵌是否狀況良好。 如果 overlapCount = 0 && discontinuityCount = 0 && nonIncreasingCount = 0 && unexpectedBitrate = false,則健康情況為 true。
lastFragmentArrivalTime string 片段到達擷取端點的最後一個 UTC 時間戳記。 範例日期格式為「2020-11-11 12:12:12:888999」
ingestDriftValue string 指出過去一分鐘內傳入音訊或視訊資料的延遲速度,以每分鐘秒數為單位。 如果資料抵達即時活動的速度比最後一分鐘的預期還慢,則此值大於零;如果資料抵達且沒有延遲,則為零;如果未收到音訊或視訊資料,則為「n/a」。 例如,如果您有在即時內容中傳送的參與編碼器,而且因為處理問題或網路延遲而變慢,可能只能在一分鐘內提供總共 58 秒的音訊或視訊。 這會回報為每分鐘漂移 2 秒。 如果編碼器每分鐘能夠趕上並傳送所有 60 秒以上的資料,則您會看到此值回報為 0。 如果編碼器有中斷連線或不連續,則此值仍會顯示為 0,因為不會考慮資料中斷,只會考慮延遲時間戳記的資料。
transcriptionState string 如果開啟即時謄寫,則音訊資料軌活動訊號的此值為開啟,否則您會看到空字串。 此狀態僅適用於即時謄寫 audiotracktype。 所有其他資料軌都會有空值。
transcriptionLanguage string 謄寫語言的語言代碼 (BCP-47 格式)。 例如,「de-de」表示德文 (德國)。 視訊播放軌活動訊號或關閉即時謄寫時,此值是空的。

LiveEventTrackDiscontinuityDetected

下列範例顯示 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"
  }
]

資料物件具有下列屬性:

屬性 類型​ 描述
trackType string 資料軌的類型 (音訊/視訊)。
trackName string 資料軌的名稱 (由編碼器提供,在 RTMP 的案例中,伺服器會以 TrackType_Bitrate 格式產生)。
bitrate 整數 資料軌的位元速率。
previousTimestamp string 上一個片段的時間戳記。
newTimestamp string 當前片段的時間戳記。
discontinuityGap string 上述兩個時間戳記之間的間距。
timescale string 用來表示時間戳記和中斷間距的時幅。

常見的事件屬性

事件具有下列的最高層級資料:

屬性 類型​ 描述
topic string 事件方格主題。 此屬性有媒體服務帳戶的資源識別碼。
subject string 媒體服務帳戶底下媒體服務通道的資源路徑。 串連主題和主旨即可獲得作業的資源識別碼。
eventType string 此事件來源已註冊的事件類型之一。 例如,"Microsoft.Media.JobStateChange"。
eventTime string 事件產生的時間,以提供者的 UTC 時間為準。
id string 事件的唯一識別碼。
data object 媒體服務事件資料。
dataVersion string 資料物件的結構描述版本。 發行者會定義結構描述版本。
metadataVersion string 事件中繼資料的結構描述版本。 「事件方格」會定義最上層屬性的結構描述。 事件方格提供此值。

下一步

請參閱登記工作狀態變更事件

另請參閱