Memberikan video streaming langsung dengan CloudFront dan Layanan AWS Media - Amazon CloudFront

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

Memberikan video streaming langsung dengan CloudFront dan Layanan AWS Media

Untuk menggunakan Layanan AWS Media CloudFront untuk mengirimkan konten langsung ke audiens global, lihat panduan berikut.

Gunakan AWS Elemental MediaLiveuntuk menyandikan streaming video langsung secara real time. Untuk menyandikan aliran video besar, MediaLive kompres ke dalam versi yang lebih kecil (encode) yang dapat didistribusikan ke pemirsa Anda.

Setelah Anda mengompresi streaming video langsung, Anda dapat menggunakan salah satu dari dua opsi utama berikut untuk menyiapkan dan menyajikan konten:

  • Konversikan konten Anda ke dalam format yang diperlukan, lalu sajikan — Jika Anda memerlukan konten dalam berbagai format, gunakan AWS Elemental MediaPackageuntuk mengemas konten untuk berbagai jenis perangkat. Saat Anda mengemas konten, Anda juga dapat menerapkan fitur ekstra dan menambahkan manajemen hak digital (DRM) untuk mencegah penggunaan konten yang tidak sah. Untuk step-by-step petunjuk penggunaan CloudFront untuk menyajikan konten yang MediaPackage diformat, lihatSajikan video langsung yang diformat dengan AWS Elemental MediaPackage.

  • Simpan dan sajikan konten Anda menggunakan asal yang dapat diskalakan — Jika konten MediaLive yang disandikan dalam format yang diperlukan oleh semua perangkat yang digunakan pemirsa Anda, gunakan sumber yang sangat skalabel seperti AWS Elemental MediaStoreuntuk menyajikan konten. Untuk step-by-step petunjuk penggunaan CloudFront untuk menyajikan konten yang disimpan dalam MediaStore wadah, lihatSajikan video dengan menggunakan AWS Elemental MediaStore sebagai asal.

Setelah Anda mengatur asal Anda dengan menggunakan salah satu opsi ini, Anda dapat mendistribusikan video streaming langsung ke pemirsa dengan menggunakan CloudFront.

Tip

Anda dapat mempelajari tentang AWS solusi yang secara otomatis menyebarkan layanan untuk membangun pengalaman menonton real-time yang sangat tersedia. Untuk melihat langkah-langkah untuk menerapkan solusi ini secara otomatis, lihat Penyebaran Otomatis Streaming Langsung.

Sajikan video dengan menggunakan AWS Elemental MediaStore sebagai asal

Jika Anda memiliki video yang disimpan dalam AWS Elemental MediaStorewadah, Anda dapat membuat CloudFront distribusi untuk menyajikan konten.

Untuk memulai, Anda memberikan CloudFront akses ke MediaStore wadah Anda. Kemudian Anda membuat CloudFront distribusi dan mengkonfigurasinya agar berfungsi MediaStore.

Untuk menyajikan konten dari AWS Elemental MediaStore wadah
  1. Ikuti prosedur di Mengizinkan Amazon CloudFront mengakses AWS Elemental MediaStore penampung Anda, lalu kembali ke langkah-langkah ini untuk membuat distribusi Anda.

  2. Buat distribusi dengan pengaturan berikut:

    1. Domain asal — Titik akhir data yang ditetapkan ke MediaStore wadah Anda. Dari daftar dropdown, pilih MediaStore wadah untuk video langsung Anda.

    2. Jalur asal - Struktur folder dalam MediaStore wadah tempat objek Anda disimpan. Untuk informasi selengkapnya, lihat Jalur asal.

    3. Tambahkan header kustom - Tambahkan nama header dan nilai-nilai jika Anda CloudFront ingin menambahkan header kustom ketika meneruskan permintaan ke asal Anda.

    4. Kebijakan protokol penampil - Pilih Redirect HTTP ke HTTPS. Untuk informasi selengkapnya, lihat Kebijakan protokol penampil.

    5. Kebijakan cache dan kebijakan permintaan Origin

      • Untuk kebijakan Cache, pilih Buat kebijakan, lalu buat kebijakan cache yang sesuai untuk kebutuhan caching dan durasi segmen Anda. Setelah membuat kebijakan, segarkan daftar kebijakan cache dan pilih kebijakan yang baru saja dibuat.

      • Untuk kebijakan permintaan Origin, pilih CORS- CustomOrigin dari daftar tarik-turun.

    Untuk pengaturan lainnya, Anda dapat menetapkan nilai spesifik berdasarkan persyaratan teknis lain atau kebutuhan bisnis Anda. Untuk daftar semua opsi distribusi dan informasi tentang pengaturannya, lihat Referensi pengaturan distribusi.

  3. Untuk tautan dalam aplikasi Anda (misalnya, pemutar media), tentukan nama file media dalam format yang sama yang Anda gunakan untuk objek lain yang Anda distribusikan. CloudFront

Sajikan video langsung yang diformat dengan AWS Elemental MediaPackage

Jika Anda memformat streaming langsung dengan menggunakan AWS Elemental MediaPackage, Anda dapat membuat CloudFront distribusi dan mengonfigurasi perilaku cache untuk menyajikan streaming langsung. Proses berikut mengasumsikan bahwa Anda telah membuat saluran dan menambahkan titik akhir untuk video langsung Anda menggunakan. MediaPackage

Untuk membuat CloudFront distribusi secara MediaPackage manual, ikuti langkah-langkah berikut:

Langkah 1: Buat dan konfigurasikan CloudFront distribusi

Selesaikan prosedur berikut untuk mengatur CloudFront distribusi saluran video langsung yang Anda buat MediaPackage.

Untuk membuat distribusi untuk saluran video langsung Anda
  1. Masuk ke AWS Management Console dan buka CloudFront konsol dihttps://console.aws.amazon.com/cloudfront/v4/home.

  2. Pilih Buat Distribusi.

  3. Pilih pengaturan untuk distribusi, termasuk berikut ini:

    Domain asal

    Asal tempat saluran video MediaPackage langsung dan titik akhir Anda berada. Pilih bidang teks, lalu dari daftar dropdown, pilih domain MediaPackage asal untuk video langsung Anda. Anda dapat memetakan satu domain ke beberapa titik akhir asal.

    Jika Anda membuat domain asal menggunakan AWS akun lain, ketikkan nilai URL asal ke dalam bidang. Asal harus berupa URL HTTPS.

    Misalnya, untuk titik akhir HLS sepertihttps://3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com/out/v1/abc123/index.m3u8, domain asal adalah. 3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com

    Untuk informasi selengkapnya, lihat Domain asal.

    Jalur asal

    Jalur ke MediaPackage titik akhir dari mana konten disajikan.

    Bidang jalur Asal tidak diisi untuk Anda. Anda harus memasukkan jalur asal yang benar secara manual.

    Untuk informasi selengkapnya tentang cara kerja jalur asal, lihatJalur asal.

    penting

    Jalur wildcard * diperlukan untuk merutekan suatu tempat dalam CloudFront distribusi. Untuk mencegah permintaan tidak cocok dengan jalur eksplisit dari perutean ke asal sebenarnya, buat asal “dummy” untuk jalur wildcard tersebut.

    contoh : Membuat asal “dummy”

    Dalam contoh berikut, titik akhir abc123 dan def456 rute ke asal “nyata”, tetapi meminta rute konten video titik akhir lainnya mediapackage.us-west-2.amazonaws.com tanpa subdomain yang tepat, yang menghasilkan kesalahan HTTP. 404

    MediaPackage titik akhir:

    https://3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com/out/v1/abc123/index.m3u8 https://3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com/out/v1/def456/index.m3u8

    CloudFront Asal A:

    Domain: 3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com Path: None

    CloudFront Asal B:

    Domain: mediapackage.us-west-2.amazonaws.com Path: None

    CloudFront perilaku cache:

    1. Path: /out/v1/abc123/* forward to Origin A 2. Path: /out/v1/def456/* forward to Origin A 3. Path: * forward to Origin B

    Untuk pengaturan distribusi lainnya, tetapkan nilai spesifik berdasarkan persyaratan teknis lain atau kebutuhan bisnis Anda. Untuk daftar semua opsi distribusi dan informasi tentang pengaturannya, lihat Referensi pengaturan distribusi.

    Setelah Anda selesai memilih pengaturan distribusi lainnya, pilih Buat distribusi.

  4. Pilih distribusi yang baru saja Anda buat, lalu pilih Behaviors.

  5. Pilih perilaku cache default, lalu pilih Edit. Tentukan pengaturan perilaku cache yang benar untuk saluran yang Anda pilih untuk asal. Kemudian, Anda akan menambahkan satu atau beberapa pengaturan perilaku cache tambahan dan mengeditnya.

  6. Buka halaman CloudFront distribusi.

  7. Tunggu hingga nilai kolom Terakhir yang dimodifikasi untuk distribusi Anda telah berubah dari Deploying ke tanggal dan waktu, yang menunjukkan bahwa CloudFront telah membuat distribusi Anda.

Langkah 2: Tambahkan Origins untuk domain endpoint Anda MediaPackage

Ulangi langkah-langkah di sini untuk menambahkan setiap titik akhir MediaPackage saluran Anda ke distribusi Anda, dengan mengingat perlunya membuat asal “dummy”.

Untuk menambahkan titik akhir lain sebagai asal
  1. Di CloudFront konsol, pilih distribusi yang Anda buat untuk saluran Anda.

  2. Pilih Origins, lalu pilih Create origin.

  3. Untuk domain Origin, di daftar tarik-turun, pilih MediaPackage titik akhir untuk saluran Anda.

  4. Untuk pengaturan lainnya, tetapkan nilai berdasarkan persyaratan teknis lain atau kebutuhan bisnis Anda. Untuk informasi selengkapnya, lihat Pengaturan asal.

  5. Pilih Buat asal.

Langkah 3 : Konfigurasi perilaku cache untuk semua titik akhir

Untuk setiap titik akhir, Anda harus mengonfigurasi perilaku cache untuk menambahkan pola jalur yang memenuhi permintaan rute dengan benar. Pola jalur yang Anda tentukan tergantung pada format video yang sedang Anda sajikan. Prosedur berikut mencakup informasi pola jalur yang dapat digunakan untuk format Apple HLS, CMAF, DASH, dan Microsoft Smooth Streaming.

Anda biasanya menyiapkan dua perilaku cache untuk setiap endpoint:

  • Manifest induk, yang merupakan indeks untuk file Anda.

  • Segmen, yang merupakan file konten video.

Untuk membuat perilaku cache untuk titik akhir
  1. Di CloudFront konsol, pilih distribusi yang Anda buat untuk saluran Anda.

  2. Pilih Perilaku, lalu pilih Buat perilaku.

  3. Untuk pola Path, gunakan MediaPackage OriginEndpoint GUID tertentu sebagai awalan jalur.

    Pola jalur

    Untuk titik akhir HLS sepertihttps://3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com/out/v1/abc123/index.m3u8, buat dua perilaku cache berikut:

    • Untuk manifes orang tua dan anak, gunakan /out/v1/abc123/*.m3u8.

    • Untuk segmen konten, gunakan /out/v1/abc123/*.ts.

    Untuk titik akhir CMAF sepertihttps://3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com/out/v1/abc123/index.m3u8, buat dua perilaku cache berikut:

    • Untuk manifes orang tua dan anak, gunakan /out/v1/abc123/*.m3u8.

    • Untuk segmen konten, gunakan /out/v1/abc123/*.mp4.

    Untuk endpoint DASH sepertihttps://3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com/out/v1/abc123/index.mpd, buat dua perilaku cache berikut:

    • Untuk manifest orang tua, gunakan /out/v1/abc123/*.mpd.

    • Untuk segmen konten, gunakan /out/v1/abc123/*.mp4.

    Untuk titik akhir Microsoft Smooth Streaming sepertihttps://3ae97e9482b0d011.mediapackage.us-west-2.amazonaws.com/out/v1/abc123/index.ism, hanya manifes yang disajikan, jadi Anda hanya membuat satu perilaku cache:out/v1/abc123/index.ism/*.

  4. Untuk setiap perilaku cache, tentukan nilai untuk pengaturan berikut:

    Kebijakan protokol penampil

    Pilih Arahkan ulang HTTP ke HTTPS.

    Kebijakan cache dan kebijakan permintaan asal

    Untuk kebijakan Cache, pilih Buat kebijakan. Untuk kebijakan cache baru Anda, tentukan pengaturan berikut:

    TTL Minimum

    Atur hingga 5 detik atau kurang, untuk membantu mencegah agar konten basi tidak tertahan.

    String pertanyaan

    Untuk string Kueri (dalam pengaturan kunci Cache), pilih Sertakan string kueri yang ditentukan. Untuk Izinkan, tambahkan nilai berikut dengan mengetiknya lalu pilih Tambah item:

    • Tambahkan m sebagai parameter string kueri yang CloudFront ingin Anda gunakan sebagai dasar untuk caching. MediaPackage Respons selalu menyertakan tag ?m=### untuk menangkap waktu yang dimodifikasi dari titik akhir. Jika konten sudah di-cache dengan nilai berbeda untuk tag ini, CloudFront minta manifes baru alih-alih menyajikan versi cache.

    • Jika Anda menggunakan fungsionalitas tampilan bergeser waktu MediaPackage, tentukan start dan end sebagai parameter string kueri tambahan pada perilaku cache untuk permintaan manifes (*.m3u8,*.mpd, danindex.ism/*). Dengan cara ini, konten disajikan khusus untuk periode waktu yang diminta dalam permintaan manifes. Untuk informasi selengkapnya tentang tampilan dan pemformatan parameter permintaan awal dan akhir konten yang diubah waktu, lihat Tampilan bergeser waktu di Panduan Pengguna.AWS Elemental MediaPackage

    • Jika Anda menggunakan fitur pemfilteran manifes di MediaPackage, tentukan aws.manifestfilter sebagai parameter string kueri tambahan untuk kebijakan cache yang Anda gunakan dengan perilaku cache untuk permintaan manifes (*.m3u8,*.mpd, danindex.ism/*). Ini mengonfigurasi distribusi Anda untuk meneruskan string aws.manifestfilter kueri ke MediaPackage asal Anda, yang diperlukan agar fitur pemfilteran manifes berfungsi. Untuk informasi selengkapnya, lihat Pemfilteran manifes di Panduan AWS Elemental MediaPackage Pengguna.

    • Jika Anda menggunakan HLS latensi rendah (LL-HLS), tentukan _HLS_msn dan _HLS_part sebagai parameter string kueri tambahan untuk kebijakan cache yang Anda gunakan dengan perilaku cache untuk permintaan manifes (). *.m3u8 Ini mengonfigurasi distribusi Anda untuk meneruskan string _HLS_msn dan _HLS_part kueri ke MediaPackage asal Anda, yang diperlukan agar fitur permintaan daftar putar pemblokiran LL-HLS berfungsi.

  5. Pilih Buat.

  6. Setelah Anda membuat kebijakan cache, kembali ke alur kerja pembuatan perilaku cache. Segarkan daftar kebijakan cache, dan pilih kebijakan yang baru saja Anda buat.

  7. Pilih Buat perilaku.

  8. Jika titik akhir Anda bukan titik akhir Microsoft Smooth Streaming, ulangi langkah-langkah ini untuk membuat perilaku cache kedua.

Langkah 4: Aktifkan Otorisasi CDN berbasis header MediaPackage

Sebaiknya aktifkan Otorisasi MediaPackage CDN berbasis header antara MediaPackage titik akhir dan distribusi. CloudFront Untuk informasi selengkapnya, lihat Mengaktifkan otorisasi CDN MediaPackage di AWS Elemental MediaPackage Panduan Pengguna.

Langkah 5: Gunakan CloudFront untuk melayani saluran streaming langsung

Setelah Anda membuat distribusi, menambahkan asal, membuat perilaku cache, dan mengaktifkan otorisasi CDN berbasis header, Anda dapat menayangkan saluran streaming langsung menggunakan. CloudFront CloudFront merutekan permintaan dari pemirsa ke MediaPackage titik akhir yang benar berdasarkan pengaturan yang Anda konfigurasikan untuk perilaku cache.

Untuk tautan dalam aplikasi Anda (misalnya, pemutar media), tentukan URL untuk file media dalam format standar untuk CloudFront URL. Untuk informasi selengkapnya, lihat Sesuaikan format URL untuk file di CloudFront.