Skema Azure Event Grid untuk peristiwa Media Services

Logo Azure Media Services v3


Peringatan

Azure Media Services akan dihentikan pada 30 Juni 2024. Untuk informasi selengkapnya, lihat Panduan Penghentian AMS.

Artikel ini menyediakan skema dan properti untuk peristiwa Microsoft Azure Media Services.

Untuk daftar contoh skrip dan tutorial, lihat Sumber peristiwa Media Services.

Media Services mengeluarkan jenis peristiwa terkait Pekerjaan yang dijelaskan di bawah ini. Ada dua kategori untuk peristiwa terkait Pekerjaan: "Memantau Perubahan Status Pekerjaan" dan "Memantau Perubahan Status Output Pekerjaan".

Anda bisa mendaftar untuk semua peristiwa dengan berlangganan peristiwa JobStateChange. Atau Anda hanya dapat berlangganan untuk peristiwa tertentu saja (misalnya, status akhir seperti JobErrored, JobFinished, dan JobCanceled).

Memantau Perubahan status pekerjaan

Jenis kejadian Deskripsi
Microsoft.Media.JobStateChange Dapatkan peristiwa untuk semua perubahan Status Pekerjaan.
Microsoft.Media.JobScheduled Dapatkan peristiwa ketika Pekerjaan beralih ke status terjadwal.
Microsoft.Media.JobProcessing Dapatkan peristiwa ketika Pekerjaan beralih ke status pemrosesan.
Microsoft.Media.JobCanceling Dapatkan peristiwa ketika Pekerjaan beralih ke status pembatalan.
Microsoft.Media.JobFinished Dapatkan peristiwa ketika Pekerjaan beralih ke keadaan selesai. Ini adalah keadaan akhir yang mencakup Output pekerjaan.
Microsoft.Media.JobCanceled Dapatkan peristiwa ketika Pekerjaan beralih ke status dibatalkan. Ini adalah peristiwa akhir yang mencakup Output pekerjaan.
Microsoft.Media.JobErrored Dapatkan peristiwa ketika Pekerjaan beralih ke status kesalahan. Ini adalah peristiwa akhir yang mencakup Output pekerjaan.

Lihat Contoh skema yang diikuti.

Memantau perubahan status output pekerjaan

Pekerjaan mungkin berisi beberapa output pekerjaan (jika Anda mengonfigurasi transformasi untuk memiliki beberapa output pekerjaan.) Jika Anda ingin melacak detail output pekerjaan individu, perhatikan peristiwa perubahan output pekerjaan.

Setiap Pekerjaan akan berada pada tingkat yang lebih tinggi daripada JobOutput, sehingga peristiwa output pekerjaan dijalankan di dalam pekerjaan yang sesuai.

Pesan kesalahan di JobFinished, JobCanceled, JobError menampilkan hasil agregat untuk setiap output pekerjaan, ketika semuanya selesai. Sedangkan kejadian output pekerjaan diaktifkan saat setiap pekerjaan selesai. Misalnya, jika Anda memiliki output pengkodean, diikuti dengan output Analitik Video, Anda akan mendapatkan dua kejadian yang diaktifkan sebagai kejadian output pekerjaan sebelum kejadian JobFinished terakhir diaktifkan dengan data gabungan.

Jenis peristiwa Deskripsi
Microsoft.Media.JobOutputStateChange Dapatkan peristiwa untuk semua perubahan status output pekerjaan.
Microsoft.Media.JobOutputScheduled Dapatkan peristiwa ketika Output pekerjaan beralih ke status terjadwal.
Microsoft.Media.JobOutputProcessing Dapatkan peristiwa ketika Output pekerjaan beralih ke status pemrosesan.
Microsoft.Media.JobOutputCanceling Dapatkan peristiwa ketika Output pekerjaan beralih ke status pembatalan.
Microsoft.Media.JobOutputFinished Dapatkan peristiwa ketika Output pekerjaan beralih ke status selesai.
Microsoft.Media.JobOutputCanceled Dapatkan peristiwa ketika Output pekerjaan beralih ke status dibatalkan.
Microsoft.Media.JobOutputErrored Dapatkan peristiwa ketika Output pekerjaan beralih ke status kesalahan.

Lihat Contoh skema yang diikuti.

Memantau kemajuan output pekerjaan

Jenis peristiwa Deskripsi
Microsoft.Media.JobOutputProgress Peristiwa ini mencerminkan kemajuan pemrosesan pekerjaan, dari 0% hingga 100%. Layanan mencoba mengirim peristiwa jika telah terjadi peningkatan 5% atau lebih dalam nilai kemajuan atau sudah lebih dari 30 detik sejak peristiwa terakhir (heartbeat). Nilai kemajuan tidak dijamin mulai dari 0%, atau mencapai 100%, juga tidak dijamin akan meningkat secara konstan dari waktu ke waktu. Jangan gunakan peristiwa ini untuk menentukan bahwa pemrosesan telah selesai – sebaiknya gunakan peristiwa perubahan status.

Lihat Contoh skema yang diikuti.

Jenis acara langsung

Microsoft Azure Media Services juga mengeluarkan jenis acara Langsung yang dijelaskan di bawah ini. Ada dua kategori untuk peristiwaLangsung: kejadian tingkat stream dan kejadian tingkat trek.

Peristiwa tingkat stream

Peristiwa tingkat stream dimunculkan per stream atau koneksi. Setiap peristiwa memiliki parameter StreamId yang mengidentifikasi koneksi atau stream. Setiap stream atau koneksi memiliki satu atau beberapa trek dari berbagai jenis. Misalnya, satu koneksi dari encoder mungkin memiliki satu trek audio dan empat trek video. Jenis peristiwa stream adalah:

Jenis peristiwa Deskripsi
Microsoft.Media.LiveEventConnectionRejected Upaya koneksi encoder ditolak.
Microsoft.Media.LiveEventEncoderConnected Encoder membuat koneksi dengan acara langsung.
Microsoft.Media.LiveEventEncoderConnected Encoder terputus.

Lihat Contoh skema yang diikuti.

Peristiwa tingkat trek

Peristiwa tingkat trek dimunculkan per trek.

Catatan

Semua kejadian tingkat trek dimunculkan setelah encoder langsung terhubung.

Jenis peristiwa tingkat trek adalah:

Jenis peristiwa Deskripsi
Microsoft.Media.LiveEventIncomingDataChunkDropped Server media menghilangkan potongan data karena sudah terlambat atau memiliki tanda waktu yang tumpang tindih (tanda waktu dari potongan data baru kurang dari waktu akhir dari potongan data sebelumnya).
Microsoft.Media.LiveEventIncomingStreamReceived Server media menerima potongan data pertama untuk setiap trek di aliran atau koneksi.
Microsoft.Media.LiveEventIncomingStreamsOutOfSync Server media mendeteksi aliran audio dan video tidak sinkron. Gunakan sebagai peringatan karena pengalaman pengguna mungkin tidak terpengaruh.
Microsoft.Media.LiveEventIncomingVideoStreamsOutOfSync Server media mendeteksi salah satu dari dua aliran video yang berasal dari encoder eksternal tidak sinkron. Gunakan sebagai peringatan karena pengalaman pengguna mungkin tidak terpengaruh.
Microsoft.Media.LiveEventIngestHeartbeat Diterbitkan setiap 20 detik untuk setiap trek saat peristiwa langsung sedang berjalan. Memberikan ringkasan kesehatan penyerapan.

Setelah encoder awalnya tersambung, peristiwa detak jantung terus berbunyi setiap 20 detik baik encoder masih tersambung atau tidak.
Microsoft.Media.LiveEventTrackDiscontinuityDetected Server media mendeteksi diskontinuitas di trek masuk.

Lihat Contoh skema yang diikuti.

Contoh skema peristiwa

JobStateChange

Contoh berikut ini menunjukkan skema peristiwa 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"
  }
]

Objek data memiliki properti berikut:

Properti Jenis Deskripsi
previousState string Status pekerjaan sebelum kejadian.
state string Status baru pekerjaan sedang diberitahukan dalam kejadian ini. Misalnya, "Terjadwal: Pekerjaan siap dimulai" atau "Selesai: Pekerjaan selesai".

Status Pekerjaan dapat berupa salah satu nilai: Dalam Antrean, Terjadwal, Pemrosesan, Selesai, Kesalahan, Dibatalkan, Pembatalan

Catatan

Dalam Antrean hanya akan ada di properti previousState, tetapi tidak akan ada di properti status.

JobScheduled, JobProcessing, JobCanceling

Untuk setiap perubahan status Pekerjaan non-final (seperti JobScheduled, JobProcessing, JobCanceling), skema contohnya terlihat mirip dengan berikut ini:

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

Untuk setiap perubahan status Pekerjaan final (seperti JobFinished, JobCanceled, JobErrored), skema contohnya terlihat mirip dengan berikut:

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

Objek data memiliki properti berikut:

Properti Jenis Deskripsi
outputs Array Mendapatkan output pekerjaan.

JobOutputStateChange

Contoh berikut ini menunjukkan skema kejadian 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

Untuk setiap perubahan status JobOutput, skema contoh terlihat mirip dengan berikut ini:

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

Skema contoh terlihat mirip dengan berikut ini:

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

Contoh berikut menunjukkan skema kejadian 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"
  }
]

Objek data memiliki properti berikut:

Properti Jenis Deskripsi
streamId string Pengidentifikasi aliran atau koneksi. Encoder atau pelanggan bertanggung jawab untuk menambahkan ID ini di URL penyerapan.
ingestUrl string URL penyerapan yang disediakan oleh acara langsung.
encoderIp string IP encoder.
encoderPort string Port encoder dari mana aliran ini berasal.
resultCode string Alasan koneksi ditolak. Kode hasil dicantumkan di dalam tabel berikut.

Anda dapat menemukan kode hasil kesalahan dalam kode kesalahan Acara langsung.

LiveEventEncoderConnected

Contoh berikut ini menunjukkan skema kejadian 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"
  }
]

Objek data memiliki properti berikut:

Properti Jenis Deskripsi
streamId string Pengidentifikasi aliran atau koneksi. Encoder atau pelanggan bertanggung jawab untuk memberikan ID ini di URL penyerapan.
ingestUrl string URL penyerapan yang disediakan oleh acara langsung.
encoderIp string IP encoder.
encoderPort string Port encoder dari tempat aliran ini berasal.

LiveEventEncoderDisconnected

Contoh berikut ini menunjukkan skema kejadian 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"
  }
]

Objek data memiliki properti berikut:

Properti Jenis Deskripsi
streamId string Pengidentifikasi aliran atau koneksi. Encoder atau pelanggan bertanggung jawab untuk menambahkan ID ini di URL penyerapan.
ingestUrl string URL penyerapan yang disediakan oleh acara langsung.
encoderIp string IP encoder.
encoderPort string Port encoder dari mana aliran ini berasal.
resultCode string Alasan pemutusan sambungan encoder. Ini bisa benar-benar terputus atau dari kesalahan. Kode hasil dicantumkan di dalam tabel berikut.

Anda dapat menemukan kode hasil kesalahan dalam kode kesalahan Acara langsung.

Kode hasil pemutusan sambungan dengan benar adalah:

Kode hasil Deskripsi
S_OK Encoder berhasil diputuskan.
MPE_CLIENT_TERMINATED_SESSION Encoder terputus (RTMP).
MPE_CLIENT_DISCONNECTED Encoder terputus (FMP4).
MPI_REST_API_CHANNEL_RESET Perintah reset saluran diterima.
MPI_REST_API_CHANNEL_STOP Perintah penghentian saluran diterima.
MPI_REST_API_CHANNEL_STOP Saluran sedang dalam pemeliharaan.
MPI_STREAM_HIT_EOF Aliran EOF dikirim oleh encoder.

LiveEventIncomingDataChunkDropped

Contoh berikut ini menunjukkan skema kejadian 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"
  }
]

Objek data memiliki properti berikut:

Properti Jenis Deskripsi
trackType string Jenis trek (Audio/Video).
trackName string Nama trek.
bitrate bilangan bulat Laju bit trek.
timestamp string Tanda waktu potongan data dihapus.
timescale string Skala waktu tanda waktu.
resultCode string Alasan penghapusan potongan data. FragmentDrop_OverlapTimestamp atau FragmentDrop_NonIncreasingTimestamp.

LiveEventIncomingStreamReceived

Contoh berikut ini menunjukkan skema kejadian 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"
  }
]

Objek data memiliki properti berikut:

Properti Jenis Deskripsi
trackType string Jenis trek (Audio/Video).
trackName string Nama trek (disediakan oleh encoder atau, dalam kasus RTMP, server dibuat dalam format TrackType_Bitrate).
bitrate bilangan bulat Laju bit trek.
ingestUrl string URL penyerapan yang disediakan oleh acara langsung.
encoderIp string IP encoder.
encoderPort string Port encoder dari mana aliran ini berasal.
timestamp string Tanda waktu pertama dari potongan data yang diterima.
timescale string Skala waktu di mana tanda waktu diwakili.

LiveEventIncomingStreamsOutOfSync

Contoh berikut ini menunjukkan skema peristiwa 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"
  }
]

Objek data memiliki properti berikut:

Properti Jenis Deskripsi
minLastTimestamp string Minimum tanda waktu terakhir di antara semua trek (audio atau video).
typeOfTrackWithMinLastTimestamp string Jenis trek (audio atau video) dengan tanda waktu terakhir minimum.
maxLastTimestamp string Maksimum semua tanda waktu di antara semua trek (audio atau video).
typeOfTrackWithMaxLastTimestamp string Jenis trek (audio atau video) dengan tanda waktu terakhir maksimum.
timescaleOfMinLastTimestamp string Mendapatkan skala waktu yang mewakili "MinLastTimestamp".
timescaleOfMaxLastTimestamp string Mendapatkan skala waktu yang mewakili "MaxLastTimestamp".

LiveEventIncomingVideoStreamsOutOfSync

Contoh berikut ini menunjukkan skema kejadian 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"
  }
]

Objek data memiliki properti berikut:

Properti Jenis Deskripsi
firstTimestamp string Tanda waktu diterima untuk salah satu trek/tingkat kualitas jenis video.
firstDuration string Durasi potongan data dengan tanda waktu pertama.
secondTimestamp string Tanda waktu diterima untuk beberapa trek / tingkat kualitas jenis video lainnya.
secondDuration string Durasi potongan data dengan tanda waktu kedua.
timescale string Skala waktu tanda waktu dan durasi.

LiveEventIngestHeartbeat

Contoh berikut ini menunjukkan skema peristiwa 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"
  }
]

Objek data memiliki properti berikut:

Properti Jenis Deskripsi
trackType string Jenis trek (Audio/Video).
trackName string Nama trek (disediakan oleh encoder atau, dalam kasus RTMP, server dibuat dalam format TrackType_Bitrate).
bitrate bilangan bulat Laju bit trek.
incomingBitrate bilangan bulat Laju bit dihitung berdasarkan potongan data yang berasal dari encoder.
lastTimestamp string Tanda waktu terbaru diterima untuk trek dalam waktu 20 detik terakhir.
timescale string Skala waktu yang mengeskpresikan tanda waktu.
overlapCount bilangan bulat Jumlah potongan data memiliki tanda waktu yang tumpang tindih dalam waktu 20 detik terakhir.
discontinuityCount bilangan bulat Jumlah diskontinuitas yang diamati dalam waktu 20 detik terakhir.
nonIncreasingCount bilangan bulat Jumlah potongan data dengan tanda waktu yang lalu diterima dalam waktu 20 detik terakhir.
unexpectedBitrate bool Jika laju bit yang diharapkan dan yang aktual berbeda lebih dari batas yang diizinkan dalam waktu 20 detik terakhir. Jawabannya benar jika dan hanya jika, incomingBitrate >= 2* bitrate ATAU incomingBitrate <= bitrate/2 OR IncomingBitrate = 0.
state string Status acara langsung.
healthy bool Menunjukkan apakah penyerapannya sehat berdasarkan hitungan dan bendera. Jawabannya benar jika overlapCount = 0 && discontinuityCount = 0 && nonIncreasingCount = 0 && unexpectedBitrate = false.
lastFragmentArrivalTime string Tanda waktu terakhir di UTC bahwa sebuah fragmen tiba di titik akhir penyerapan. Contoh format tanggal adalah "2020-11-11 12:12:12:888999"
ingestDriftValue string Menunjukkan kecepatan penundaan, dalam detik per menit, dari data audio atau video yang masuk selama menit terakhir. Nilainya lebih besar dari nol jika data tiba di acara langsung lebih lambat dari yang diharapkan pada menit terakhir; nol jika data tiba tanpa penundaan; dan "t/a" jika tidak ada data audio atau video yang diterima. Misalnya, jika Anda memiliki encoder kontribusi yang mengirimkan konten langsung, namun melambat karena masalah pemrosesan, atau latensi jaringan, mungkin encoder hanya dapat mengirimkan total 58 detik audio atau video dalam periode satu menit. Hal ini akan dilaporkan sebagai penyimpangan 2 detik per menit. Jika encoder mampu mengejar dan mengirim semua data 60 detik atau lebih setiap menit, Anda akan melihat nilai ini dilaporkan sebagai 0. Jika ada pemutusan atau diskontinuitas dari encoder, nilai ini mungkin masih ditampilkan sebagai 0, karena tidak memperhitungkan jeda dalam data - hanya data yang tertunda dalam stempel waktu.
transcriptionState string Nilai ini "Aktif" untuk heartbeat trek audio jika transkripsi langsung diaktifkan, jika tidak, Anda akan melihat untai kosong. Status ini hanya berlaku untuk tracktype "audio" untuk transkripsi Langsung. Semua trek lainnya akan memiliki nilai kosong.
transcriptionLanguage string Kode bahasa (dalam format BCP-47) dari bahasa transkripsi. Misalnya "de-de" menunjukkan Bahasa Jerman (Jerman). Nilainya kosong untuk heartbeat trek video, atau saat transkripsi langsung dimatikan.

LiveEventChannelArchiveHeartbeat

Contoh berikut menunjukkan skema peristiwa LiveEventChannelArchiveHeartbeatEvent:

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

Objek data memiliki properti berikut:

Properti Jenis Deskripsi
channelLatencyMs string Waktu dalam milidetik (mdtk) yang dihabiskan video yang diserap dalam alur acara langsung sebelum diterbitkan ke manifes HLS/DASH untuk diunduh pemain.
latencyResultCode string Kode hasil untuk penghitungan channelLatencyMs. S_OK menunjukkan bahwa penyerapan acara langsung diterima tanpa masalah. Kode hasil lainnya menunjukkan situasi yang akan menyebabkan channelLatencyMs memiliki nilai kosong. MPE_KEY_FRAME_INTERVAL_TOO_LARGE kode galat menunjukkan bahwa sumber video yang terserap memiliki GOP (jarak bingkai kunci) besar yang akan berdampak negatif pada latensi saluran. MPE_INGEST_DISCONTINUITY kode galat menunjukkan bahwa diskontinuitas terdeteksi pada aliran sumber, yang dapat menambahkan latensi panjang ke saluran.

LiveEventTrackDiscontinuityDetected

Contoh berikut ini menunjukkan skema kejadian 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"
  }
]

Objek data memiliki properti berikut:

Properti Jenis Deskripsi
trackType string Jenis trek (Audio/Video).
trackName string Nama trek (disediakan oleh encoder atau, dalam kasus RTMP, server dibuat dalam format TrackType_Bitrate).
bitrate bilangan bulat Laju bit trek.
previousTimestamp string Tanda waktu dari fragmen sebelumnya.
newTimestamp string Tanda waktu dari fragmen saat ini.
discontinuityGap string Kesenjangan antara dua tanda waktu di atas.
timescale string Skala waktu yang menunjukkan tanda waktu dan kesenjangan diskontinuitas.

Properti kejadian umum

Sebuah peristiwa memiliki data tingkat atas berikut ini:

Properti Jenis Deskripsi
topic string Topik kisi kejadian. Properti ini memiliki ID sumber daya untuk akun Azure Media Services.
subject string Jalur sumber daya untuk saluran Azure Media Services di bawah akun Azure Media Services. Menggabungkan topik dan subjek memberi Anda ID sumber daya untuk pekerjaan tersebut.
eventType string Salah satu jenis kejadian terdaftar untuk sumber kejadian ini. Misalnya, "Microsoft.Media.JobStateChange".
eventTime string Waktu peristiwa dihasilkan berdasarkan waktu UTC penyedia.
id string Pengidentifikasi unik untuk peristiwa.
data objek Data kejadian Microsoft Azure Media Services.
dataVersion string Versi skema objek data. Penerbit mendefinisikan versi skema.
metadataVersion string Versi skema metadata peristiwa. Azure Event Grid menentukan skema properti tingkat atas. Event Grid menyediakan nilai ini.

Lihat juga