

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Penyaringan manifes
<a name="manifest-filtering"></a>

Dengan pemfilteran manifes, AWS Elemental MediaPackage secara dinamis menghasilkan manifes klien berdasarkan parameter yang Anda tentukan dalam kueri yang ditambahkan ke permintaan pemutaran Anda. Ini memungkinkan Anda melakukan hal-hal seperti membatasi akses penampil ke konten 4K HEVC premium, atau menargetkan jenis perangkat tertentu dan rentang laju sampel audio, semuanya dari satu titik akhir. Sebelumnya, Anda harus mengonfigurasi beberapa titik akhir untuk mencapai perilaku ini. MediaPackage sekarang menyediakan cara yang hemat biaya untuk secara dinamis menghasilkan manifes klien yang berbeda pada titik akhir yang sama.

## Bekerja dengan filter manifes
<a name="working-with-manifest-filters"></a>

Saat Anda menggunakan filter manifes, manifes yang dihasilkan hanya menyertakan aliran audio dan video yang cocok dengan karakteristik yang Anda tentukan dalam kueri. Jika tidak ada filter manifes yang digunakan, maka semua aliran yang tertelan hadir dalam aliran keluaran titik akhir. Pengecualian untuk ini adalah jika Anda telah mengatur filter aliran untuk titik akhir, seperti bitrate video minimum. Dalam hal ini, filter manifes diterapkan setelah filter aliran, yang dapat memiringkan output Anda, dan tidak disarankan.

Pemfilteran manifes dapat digunakan pada semua jenis titik akhir yang didukung oleh: MediaPackage
+ Apel HLS
+ DASH-ISO
+ Streaming Microsoft yang Lancar
+ CMAF

Untuk menggunakan pemfilteran manifes, tambahkan parameter `aws.manifestfilter` kueri ke permintaan pemutaran Anda. MediaPackage MediaPackage mengevaluasi kueri, dan menyajikan manifes klien berdasarkan parameter kueri tersebut. Kueri manifes *tidak* peka huruf besar/kecil dan panjangnya bisa mencapai 1024 karakter. Jika kueri salah bentuk, atau jika tidak ada aliran yang cocok dengan parameter kueri, MediaPackage mengembalikan manifes yang tidak lengkap atau kosong. Untuk sintaks kueri, lihat bagian berikut.

**catatan**  
Jika Anda menggunakan titik akhir Apple HLS atau CMAF, ketentuan khusus berlaku. Untuk informasi tentang kondisi ini, lihat[Kondisi khusus untuk manifestasi HLS dan CMAF](#special-conditions-HLS-CMAF-manifests).

**Sintaks kueri**  
Parameter kueri dasar adalah`aws.manifestfilter`, yang diikuti oleh nama parameter opsional dan pasangan nilai. Untuk membuat kueri, tambahkan `?aws.manifestfilter=` ke akhir URL MediaPackage titik akhir, diikuti dengan nama parameter dan nilai. Untuk daftar semua parameter yang tersedia, lihat[Parameter kueri filter manifes](#manifest-filter-query-parameters).

Kueri filter Apple HLS mungkin terlihat seperti ini:

`https://example-mediapackage-endpoint.mediapackage.us-west-2.amazonaws.com/out/v1/examplemediapackage/index.m3u8?aws.manifestfilter=audio_sample_rate:0-44100;video_bitrate:0-2147483647;video_codec:h265;audio_language:fr,en-US,de`

Sintaks query tercantum dalam tabel berikut.


| Komponen string kueri | Deskripsi | 
| --- | --- | 
| ? | Karakter terbatas yang menandai awal kueri. | 
| aws.manifestfilter= | Kueri dasar, yang diikuti oleh parameter yang dibangun dari pasangan nama dan nilai. Untuk daftar semua parameter yang tersedia, lihat[Parameter kueri filter manifes](#manifest-filter-query-parameters). | 
| : | Digunakan untuk mengaitkan nama parameter dengan nilai. Misalnya, parameter\$1name:value. | 
| ; | Memisahkan parameter dalam kueri yang berisi beberapa parameter. Misalnya, parameter1\$1name:value;parameter2\$1name:minValue-maxValue. | 
| , | Memisahkan daftar nilai. Misalnya, parameter\$1name:value1,value2,value3. Nilai yang dipisahkan koma dalam daftar menyiratkan hubungan. OR | 
| - | Digunakan untuk menentukan minimum parameter - rentang nilai maksimum. Misalnya, audio\$1sample\$1rate:0-44100. Ketika nilai numerik digunakan dalam rentang, itu termasuk dalam definisi rentang. Ini berarti bahwa aliran harus lebih besar dari atau sama dengan nilai minimum, dan kurang dari atau sama dengan nilai maksimum. Dengan rentang, nilai minimum dan maksimum adalah wajib. Nilai rentang yang didukung adalah 0 -2147483647. | 

**catatan**  
Jika Anda menggunakan Amazon CloudFront sebagai CDN, Anda mungkin perlu menyetel konfigurasi tambahan. Untuk informasi selengkapnya, lihat [Mengonfigurasi perilaku cache untuk semua titik akhir](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/live-streaming.html#live-streaming-with-mediapackage-create-cache-behavior). .

## Parameter kueri filter manifes
<a name="manifest-filter-query-parameters"></a>

MediaPackage mendukung parameter query berikut.


| Kategori | Nama | Deskripsi | Contoh | 
| --- | --- | --- | --- | 
| Audio | audio\$1bitrate |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/mediapackage/latest/ug/manifest-filtering.html)  | stream.mpd?aws.manifestfilter=audio\$1bitrate:0-2147483647 | 
| Audio | audio\$1channels |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/mediapackage/latest/ug/manifest-filtering.html)  | stream.mpd?aws.manifestfilter=audio\$1channels:1-8 | 
| Audio | audio\$1codec |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/mediapackage/latest/ug/manifest-filtering.html)  | stream.mpd?aws.manifestfilter=audio\$1codec:AACL,AC-3 | 
| Audio | audio\$1language |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/mediapackage/latest/ug/manifest-filtering.html)  | stream.mpd?aws.manifestfilter=audio\$1language:fr,en-US,de | 
| Audio | audio\$1sample\$1rate |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/mediapackage/latest/ug/manifest-filtering.html)  | stream.mpd?aws.manifestfilter=audio\$1sample\$1rate:0-44100 | 
| Subtitle | subtitle\$1language |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/mediapackage/latest/ug/manifest-filtering.html)  | stream.mpd?aws.manifestfilter=subtitle\$1language:en-US, hi | 
| Video | trickplay\$1height |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/mediapackage/latest/ug/manifest-filtering.html)  | stream.mpd?aws.manifestfilter=trickplay\$1height:200-1200 | 
| Video | trickplay\$1type |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/mediapackage/latest/ug/manifest-filtering.html)  | stream.mpd?aws.manifestfilter=trickplay\$1type:iframe | 
| Video | video\$1bitrate |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/mediapackage/latest/ug/manifest-filtering.html)  | stream.mpd?aws.manifestfilter=video\$1bitrate:0-2147483647 | 
| Video | video\$1codec |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/mediapackage/latest/ug/manifest-filtering.html)  | stream.mpd?aws.manifestfilter=video\$1codec:h264 | 
| Video | video\$1dynamic\$1range |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/mediapackage/latest/ug/manifest-filtering.html)  | stream.mpd?aws.manifestfilter=video\$1dynamic\$1range:hdr10 | 
| Video | video\$1framerate |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/mediapackage/latest/ug/manifest-filtering.html)  | stream.mpd?aws.manifestfilter=video\$1framerate:23.976-30 | 
| Video | video\$1height |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/mediapackage/latest/ug/manifest-filtering.html)  | stream.mpd?aws.manifestfilter=video\$1height:720-1080 | 

## Contoh penyaringan manifes
<a name="manifest-filtering-examples"></a>

Ini adalah contoh penyaringan manifes.

**Example 1: Targetkan pemain yang mendukung AVC dan kecepatan sampel audio 44.1k**  
Penampil memutar konten pada perangkat yang hanya dapat mendukung AVC dan kecepatan sampel audio 44.1k. Anda mengatur `video_codec` dan `audio_sample_rate` memfilter aliran yang tidak sesuai dengan persyaratan ini.

`?aws.manifestfilter=audio_sample_rate:0-44100;video_codec:h264`

**Example 2: Batasi konten 4K HEVC**  
Stream 4K HEVC Anda adalah 15 Mbps, dan semua aliran Anda yang lain kurang dari 9 Mbps. Untuk mengecualikan aliran 4K dari kumpulan aliran, Anda menetapkan ambang batas 9.000.000 bit per detik untuk menyaring bitrate yang lebih tinggi.

`?aws.manifestfilter=video_bitrate:0-9000000`

**Example 3: Sertakan video antara 23,976 dan 30 frame per detik**  
Untuk hanya menyertakan video dalam rentang frame rate tertentu, gunakan`video_framerate`. Parameter ini menerima angka floating-point dengan hingga tiga nilai desimal opsional.

`?aws.manifestfilter=video_framerate:23.976-30`

## Kondisi khusus untuk manifestasi HLS dan CMAF
<a name="special-conditions-HLS-CMAF-manifests"></a>

Jika Anda menggunakan manifes HLS atau CMAF, ketentuan khusus ini berlaku.
+ Untuk manifes HLS, kami sangat menyarankan Anda menggunakan grup rendisi audio untuk menghindari penghapusan aliran video yang dimultipleks dengan aliran audio yang disaring. Untuk informasi selengkapnya tentang grup rendisi, lihat. [Referensi grup rendisi di AWS Elemental MediaPackage](rendition-groups.md)
+ Dalam manifes HLS dan CMAF, laju sampel audio tidak diberi sinyal, jadi tidak mudah untuk memeriksa manifes asli atau yang difilter secara visual untuk pengaturan ini. Untuk memverifikasi laju sampel audio, periksa laju sampel audio pada tingkat encoder dan tingkat output.
+ Dalam manifes HLS dan CMAF, `BANDWIDTH` atribut untuk varian mengaitkan bandwidth trek audio dengan trek video, apakah itu multipleks dengan trek video, atau jika itu adalah trek rendisi audio yang direferensikan oleh trek video. Oleh karena itu, Anda tidak dapat memeriksa manifes asli dan yang difilter secara visual untuk mengonfirmasi bahwa `video_bitrate` filter telah berfungsi. Untuk memverifikasi filter, periksa bitrate video pada tingkat encoder dan tingkat output.
+ Untuk manifes HLS dan CMAF, parameter permintaan yang ditambahkan ke daftar putar bitrate atau segmen menghasilkan kesalahan HTTP 400.

## Kondisi kesalahan
<a name="error-conditions-and-handling"></a>

Beberapa perangkat pemutaran akan mengembalikan kesalahan jika manifes atau segmen menyertakan parameter kueri yang tidak valid atau tidak dikenal. Berikut ini adalah parameter kueri yang MediaPackage dapat memproses:
+ `m`
+ `start`
+ `end`
+ `aws.manifestfilter`
+ `aws.drmsettings`

Jika Anda memiliki parameter kueri selain yang terdaftar, gunakan CDN seperti Amazon CloudFront untuk menghapus parameter yang tidak perlu. Untuk informasi selengkapnya, lihat [Cache konten berdasarkan parameter string kueri](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/QueryStringParameters.html) di *Panduan CloudFront Pengembang Amazon*.

Tabel berikut berisi kondisi kesalahan umum tambahan. 


****  

| Kondisi kesalahan | Contoh | Kode status HTTP | 
| --- | --- | --- | 
| Parameter daftar tidak ditemukan dan bukan bagian dari daftar terbatas | ?aws.manifestfilter=audio\$1language:dahlia | 200 | 
| Hanya aliran subtitle yang ada di aliran | ?aws.manifestfilter=audio\$1sample\$1rate:0-1;video\$1bitrate=0-1 | 200 | 
| Parameter filter duplikat | ?aws.manifestfilter=audio\$1sample\$1rate:0-48000;aws.manifestfilter=audio\$1sample\$1rate:0-48000 | 400 | 
| Parameter tidak valid | ?aws.manifestfilter=donut\$1type:rhododendron | 400 | 
| Parameter rentang tidak valid | ?aws.manifestfilter=audio\$1sample\$1rate:300-0 | 400 | 
| Nilai rentang tidak valid (lebih dari) INT\$1MAX | ?aws.manifestfilter=audio\$1sample\$1rate:0-2147483648 | 400 | 
| String kueri cacat | ?aws.manifestfilter=audio\$1sample\$1rate:is:0-44100 | 400 | 
| Parameter string lebih besar dari 1024 karakter | ?aws.manifestfilter=audio\$1language:abcdef.... | 400 | 
| Parameter kueri pada manifes bitrate HLS atau CMAF | index\$11.m3u8?aws.manifestfilter=video\$1codec:h264 | 400 | 
| Parameter kueri pada permintaan segmen | ...\$11.[ts\$1mp4\$1vtt..]?aws.manifestfilter=video\$1codec:h264 | 400 | 
| Parameter kueri berulang | ?aws.manifestfilter=audio\$1sample\$1rate:0-48000;aws.manifestfilter=video\$1bitrate:0-1 | 400 | 
| Penerapan filter menghasilkan manifes kosong (konten tidak memiliki aliran yang memenuhi kondisi yang ditentukan dalam string kueri) | ?aws.manifestfilter=audio\$1sample\$1rate:0-1;video\$1bitrate=0-1 | 400 | 