Filter

Logo Azure Media Services v3


Peringatan

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

Saat mengirimkan konten Anda ke pelanggan (peristiwa Live Streaming atau Video on Demand) klien Anda mungkin memerlukan fleksibilitas daripada yang dijelaskan dalam file manifes aset default. Azure Media Services menawarkan Dynamic Manifest berdasarkan filter yang telah ditentukan sebelumnya.

Filter adalah aturan sisi server yang memungkinkan pelanggan Anda untuk melakukan hal-hal seperti:

  • Putar balik hanya sebagian video (bukan memutar seluruh video). Contohnya:
    • Mengurangi manifes untuk menunjukkan sub-klip peristiwa live ("pemfilteran sub-klip"), atau
    • Memangkas awal video ("memangkas video").
  • Hanya memberikan rendisi yang ditentukan dan/atau track bahasa tertentu yang didukung oleh perangkat yang digunakan untuk memutar kembali konten ("pemfilteran rendisi").
  • Menyesuaikan Jendela Presentasi (DVR) untuk memberikan panjang terbatas dari jendela DVR di pemutar ("menyesuaikan jendela presentasi").

Azure Media Services memungkinkan Anda membuat Filter akun dan Filter aset untuk konten Anda. Selain itu, Anda dapat mengaitkan filter prapembuatan dengan Pencari Lokasi Streaming.

Jenis filter

Ada dua jenis grup:

  • Filter Akun (global) - dapat diterapkan ke aset apa pun di akun Azure Media Services, memiliki masa pakai akun tanpa batas.
  • Filter Aset (lokal) - hanya dapat diterapkan ke aset tempat filter dikaitkan saat pembuatan, memiliki masa pakai aset tanpa batas.

Jenis Filter Akun dan Filter Aset memiliki properti yang sama persis untuk menentukan/mendeskripsikan filter. Kecuali saat membuat Filter Aset, Anda perlu menentukan nama aset yang ingin Anda kaitkan dengan filter.

Bergantung pada skenario Anda, Anda memutuskan jenis filter apa yang lebih cocok (Filter Aset atau Filter Akun). Filter Akun cocok untuk profil perangkat (pemfilteran rendisi) ketika Filter Aset dapat digunakan untuk memangkas aset tertentu.

Anda menggunakan properti berikut untuk menjelaskan filter.

Nama Deskripsi
firstQuality Laju bit kualitas pertama dari filter.
presentationTimeRange Rentang waktu presentasi manifes acara langsung. Properti ini digunakan untuk memfilter titik awal/akhir manifes, panjang jendela presentasi, dan posisi mulai live.
Untuk informasi selengkapnya, lihat PresentationTimeRange.
trek Kondisi pemilihan trek. Untuk informasi selengkapnya, lihat trek

presentationTimeRange

Gunakan properti ini dengan Filter Aset. Tidak disarankan untuk mengatur properti dengan Filter Akun.

Nama Deskripsi
startTimestamp Berlaku untuk Video on Demand (VoD) atau Live Streaming.
Ini adalah nilai panjang yang mewakili titik awal absolut dari aliran. Nilai akan dibulatkan menjadi nilai yang terdekat dengan mulai GOP berikutnya. Unit ini adalah skala waktu, sehingga startTimestamp 150000000 akan menjadi selama 15 detik.
Gunakan startTimestamp dan endTimestamp untuk memangkas fragmen yang akan ada di daftar putar (manifes).
Misalnya, startTimestamp=40000000 dan endTimestamp=100000000 menggunakan skala waktu default akan menghasilkan daftar putar yang berisi fragmen dari antara 4 detik dan 10 detik presentasi VoD. Jika fragmen mengangkangi batas, seluruh fragmen akan disertakan dalam manifes.
endTimestamp Berlaku untuk Video on Demand (VoD).
Untuk presentasi Live Streaming, diabaikan dan diterapkan secara tersembunyi saat presentasi berakhir dan streaming menjadi VoD.
Ini adalah nilai panjang yang mewakili titik akhir absolut presentasi, dibulatkan ke awal GOP terdekat berikutnya. Unit ini adalah skala waktu, jadi endTimestamp 1800000000 akan selama 3 menit.
Gunakan startTimestamp dan endTimestamp untuk memangkas fragmen yang akan ada di daftar putar (manifes).
Misalnya, startTimestamp=40000000 dan endTimestamp=100000000 menggunakan skala waktu default akan menghasilkan daftar putar yang berisi fragmen dari antara 4 detik dan 10 detik presentasi VoD. Jika fragmen mengangkangi batas, seluruh fragmen akan disertakan dalam manifes.
timescale Berlaku untuk semua stempel waktu dan durasi dalam Presentation Time Range, yang ditentukan sebagai jumlah kenaikan dalam satu detik.
Defaultnya adalah 10000000 - sepuluh juta tahapan dalam satu detik, yang mana setiap kenaikan akan berlangsung selama 100 nanodetik. Namun, nilainya mungkin berbeda tergantung pada sumber video atau jika Anda menggunakan acara langsung dengan pengodean di cloud (default ke 90Khz, atau 90000 untuk video.)
Misalnya, jika Anda ingin mengatur startTimestamp pada 30 detik, Anda akan menggunakan nilai 300000000 saat menggunakan skala waktu default. Pastikan untuk memeriksa manifes aset Anda untuk mengonfirmasi bahwa skala waktu untuk trek video berada dalam skala yang Anda tetapkan. Saat menggunakan acara langsung dengan pengodean, skala waktu dapat berada di 90Khz (90000) untuk trek video dan 48khz (48000) untuk trek audio.
liveBackoffDuration Hanya berlaku untuk Live Streaming.
Nilai ini menentukan posisi live terbaru yang dapat dicari klien.
Dengan menggunakan properti ini, Anda dapat menunda posisi pemutaran live dan membuat buffer sisi server untuk pemain.
Unit untuk properti ini adalah skala waktu (lihat di bawah).
Durasi live back off maksimum adalah 300 detik (3000000000).
Misalnya, nilai 2000000000 berarti bahwa konten terbaru yang tersedia adalah 20 detik tertunda dari tepi live nyata.
presentationWindowDuration Hanya berlaku untuk Live Streaming.
Gunakan presentationWindowDuration untuk menerapkan jendela geser fragmen untuk disertakan dalam daftar putar.
Unit untuk properti ini adalah skala waktu (lihat di bawah).
Misalnya, atur presentationWindowDuration=1200000000 untuk menerapkan jendela geser dua menit. Media dalam waktu 2 menit dari tepi live akan disertakan dalam daftar putar. Jika fragmen mengabaikan batas, seluruh fragmen akan disertakan dalam daftar putar. Durasi jendela presentasi minimum adalah 60 detik.
forceEndTimestamp Hanya berlaku untuk Live Streaming.
Menunjukkan apakah properti endTimestamp harus ada. Jika true, endTimestamp harus ditentukan atau kode permintaan yang buruk dikembalikan.
Nilai yang diperbolehkan: false, true.

Trek

Anda menentukan daftar kondisi properti trek filter (FilterTrackPropertyConditions) berdasarkan streaming trek mana (Live Streaming atau Video on Demand [VOD]) yang harus disertakan dalam manifes yang dibuat secara dinamis. Filter digabungkan menggunakan operasi AND dan OR logis.

Kondisi properti jalur filter menjelaskan tipe trek, nilai (dijelaskan dalam tabel berikut), dan operasi (Equal, NotEqual).

Nama Deskripsi
Laju bit Gunakan laju bit trek untuk pemfilteran.

Nilai yang disarankan adalah rentang laju bit, dalam bit per detik. Misalnya, "0-2427000".

Catatan: meskipun Anda dapat menggunakan nilai laju bit tertentu, seperti 250000 (bit per detik), pendekatan ini tidak disarankan, karena laju bit yang tepat dapat berfluktuasi dari satu Aset ke Aset lainnya.
FourCC Gunakan nilai FourCC trek untuk pemfilteran.

Nilai adalah elemen pertama format codec, seperti yang dijelaskan di RFC 6381. Saat ini, codec berikut didukung:
Untuk Video: "avc1", "hev1", "hvc1"
Untuk Audio: "mp4a", "ec-3"

Untuk menentukan nilai FourCC untuk trek dalam Aset, dapatkan dan periksa file manifes.
Bahasa Gunakan bahasa trek untuk pemfilteran.

Nilai adalah tag bahasa yang ingin Anda sertakan, seperti yang ditentukan dalam RFC 5646. Misalnya, "en".
Nama Gunakan nama trek untuk pemfilteran.
Jenis Gunakan jenis trek untuk pemfilteran.

Nilai berikut diperbolehkan: "video", "audio", atau "teks".

Contoh

Contoh berikut menentukan filter Live Streaming:

{
  "properties": {
    "presentationTimeRange": {
      "startTimestamp": 0,
      "endTimestamp": 170000000,
      "presentationWindowDuration": 9223372036854776000,
      "liveBackoffDuration": 0,
      "timescale": 10000000,
      "forceEndTimestamp": false
    },
    "firstQuality": {
      "bitrate": 128000
    },
    "tracks": [
      {
        "trackSelections": [
          {
            "property": "Type",
            "operation": "Equal",
            "value": "Audio"
          },
          {
            "property": "Language",
            "operation": "NotEqual",
            "value": "en"
          },
          {
            "property": "FourCC",
            "operation": "NotEqual",
            "value": "EC-3"
          }
        ]
      },
      {
        "trackSelections": [
          {
            "property": "Type",
            "operation": "Equal",
            "value": "Video"
          },
          {
            "property": "Bitrate",
            "operation": "Equal",
            "value": "3000000-5000000"
          }
        ]
      }
    ]
  }
}

Memfilter manifes HLS atau DASH Anda pada pembuatan Pencari Lokasi Streaming

Azure Media Services memungkinkan Anda membuat Pencari Lokasi Streaming yang telah difilter sebelumnya dengan meneruskan kumpulan filter di properti filter pada entitas pencari lokasi streaming. Ini memungkinkan Anda untuk melakukan pra-filter semua manifes pada pencari lokasi streaming. Manifes asli tidak lagi tersedia melalui pencari streaming ini, dan hanya respons yang difilter yang akan dapat diakses oleh klien yang meminta URL untuk DASH atau HLS dari pencari lokasi streaming yang difilter. Ini berguna dalam situasi di mana Anda hanya ingin menerbitkan sebagian aset, dan mencegah pengguna mendapatkan akses ke manifes asli penuh untuk aset dengan memanipulasi string kueri URL manifes HLS atau DASH.

Anda dapat menentukan daftar filter aset atau akun pada Pencari Lokasi Streaming Anda. Dynamic Packager menerapkan daftar filter ini bersama dengan yang ditentukan oleh klien Anda di URL. Kombinasi ini menghasilkan Dynamic Manifest, yang didasarkan pada filter di URL + filter yang Anda tentukan di Pencari Lokasi Streaming.

Memperbarui filter

Filter dan pencari streaming dapat diperbarui dengan cepat, tetapi perlu diingat bahwa diperlukan waktu hingga 10 detik untuk pembaruan apa pun untuk diperbarui di server web front-end, dan mungkin ada masalah dengan penembolokan CDN hilir konten jika Anda memperbarui Pencari Lokasi Streaming yang sama yang telah diterbitkan dan digunakan dalam produksi sudah.

Tidak disarankan untuk memperbarui definisi filter yang terkait dengan Pencari Lokasi Streamingyang diterbitkan secara aktif, khususnya ketika CDN diaktifkan. Server streaming dan CDN dapat memiliki cache internal yang dapat mengakibatkan data cache basi dikembalikan.

Jika definisi filter perlu diubah, pertimbangkan membuat filter baru dan menambahkannya ke URL Pencari Lokasi Streaming atau menerbitkan Pencari Lokasi Streaming baru yang mereferensikan filter secara langsung.

Mendapatkan bantuan dan dukungan

Anda dapat menghubungi Media Services dengan pertanyaan atau mengikuti pembaruan kami dengan salah satu metode berikut: