# pengaturan streaming langsung AWS dan OBS Buat alur kerja langsung AWS, konfigurasikan OBS, uji pemutaran DRM, dan hentikan sumber daya setelah acara Anda. Video terenkripsi dan lisensi DRM dikirim melalui jalur yang berbeda CDN mengirimkan video terenkripsi. Backend Anda memeriksa akses, dan layanan lisensi DRM mengizinkan dekripsi pada perangkat yang kompatibel. - 01**Penyimpanan / CDN** Mengirimkan media terenkripsi ke pemutar. - 02**Backend Anda** Memeriksa hak menonton pengguna dan meminta otorisasi pemutaran dari DRM-X. - 03**DRM-X** Memvalidasi otorisasi pemutaran dan memproses permintaan lisensi DRM. - 04**Pemutar + perangkat** Menggunakan sistem DRM perangkat untuk memperoleh lisensi dan memutar media terenkripsi. Backend Anda memutuskan akses; DRM-X memaksa kebijakan yang ditandatangani. Media tersandi dan DRM lisensi mengikuti jalur pengiriman terpisah. Trial dan akun berbayar dapat membuat saluran Langsung DRM. Koneksi penyimpanan S3 tidak diperlukan untuk alur kerja ini. AWS membebankan biaya secara terpisah untuk pengkodean media, pengemasan, pengiriman, dan sumber daya yang disimpan. Jalur pengirimannya adalah OBS → AWS Elemental MediaLive → MediaPackage v2 → CloudFront → pemutar DRM-X. DRM-X memasok kunci enkripsi melalui SPEKE dan memberi otorisasi kepada setiap pemirsa dengan DRM License Token. ## Buat siaran langsung di DRM-X[#](#create-a-live-event) - Masuk ke konsol pelanggan dan pilih organisasi dan lingkungan yang akan memiliki acara tersebut. - Buka **Live events → New Live Channel**. Masukkan judul. Untuk akun baru, pilih **Create new live content** dan masukkan Content ID unik. Alternatifnya, pilih konten langsung yang ada. - Pilih wilayah AWS, interval rotasi, dan jendela DVR. Gunakan wilayah AWS yang sama untuk MediaLive, MediaPackage, dan jembatan SPEKE. Nilai awalnya adalah 600 detik untuk rotasi dan 7200 detik untuk media yang ditahan DVR. - Buat saluran. Simpan rahasia asal satu kali dengan aman, bersama dengan integrasi ID dan pisahkan ID sumber daya DASH dan HLS. Jangan pernah menaruh rahasia di pemutar, tangkapan layar, tiket dukungan, atau penyimpanan publik. Saluran DRM-X adalah konfigurasi konten dan otorisasi. Memulai DRM-X Live Run dan memulai encoder AWS adalah operasi terpisah. ## Konfigurasikan akun AWS Anda[#](#configure-aws) - Gunakan akun AWS dengan penagihan diaktifkan dan operator resmi yang dapat mengelola CloudFormation, MediaLive, MediaPackage v2, API Gateway, IAM peran layanan, dan CloudFront. Periksa kuota regional dan harga saat ini sebelum latihan Anda. - Unduh templat [DRM-X AWS CloudFormation](https://6.drm-x.com/downloads/drmx-live-aws.yaml) dari konsol. Buat tumpukan dengan `CreateMediaResources=false`, DRM-X integrasi/ID sumber daya, dan rahasia asal. Templat ini membuat peran layanan tercakup dan jembatan SPEKE resmi IAM. - Di DRM-X **Configure AWS**, masukkan AWS akun Anda ID dan tumpukan persisnya `SpekeRoleArn`. Mulai DRM-X Live Run sehingga permintaan kunci yang diautentikasi dapat berhasil. - Perbarui tumpukan yang sama dengan `CreateMediaResources=true`. Jaga rahasia yang ada dan parameter lainnya. Tunggu hingga tumpukan selesai. - Salin keluaran tumpukan `DashOriginUrl`, `HlsOriginUrl`, `DashCloudFrontUrl`, dan `HlsCloudFrontUrl` ke dalam kolom DRM-X yang cocok. Pemirsa menggunakan URL CloudFront. Asalnya tetap terbatas pada CloudFront. - Buat masukan MediaLive **RTMP push**. Hanya izinkan IP publik penyiar saat ini dengan aturan keamanan masukan `/32`. Alamat IP yang diubah oleh ISP Anda memerlukan pembaruan aturan tersebut. - Buat saluran MediaLive dengan `MediaLiveRoleArn` tumpukan, lampirkan masukan, dan tambahkan grup keluaran **MediaPackage v2 CMAF** menggunakan grup saluran tumpukan dan nama saluran. Sebuah pipa tunggal cocok untuk pengujian terbatas; acara produksi memerlukan desain redundansi yang sesuai. Template menghasilkan DASH-CENC untuk Widevine dan PlayReady, serta HLS-CBCS untuk FairPlay. Contract `PRESET_AUDIO_1` dan `PRESET_VIDEO_3` menggunakan kunci terpisah untuk audio, SD, HD, dan UHD. Instalasi yang menggunakan `PRESET_VIDEO_2` perlu meninjau pembaruan contract enkripsi sebelum menambahkan UHD dengan kebijakan berbeda. Lihat [preset enkripsi AWS](https://docs.aws.amazon.com/mediapackage/latest/userguide/drm-content-speke-v2-presets.html). ## Konfigurasikan OBS Studio untuk 4K[#](#configure-obs-for-4k) - Gandakan profil OBS dan koleksi adegan Anda. Beri mereka nama acara langsung yang mudah dikenali. - Tambahkan video atau sumber pengambilan yang diinginkan. Konfirmasikan bahwa itu benar-benar 3840×2160, paskan ke kanvas, dan verifikasi audionya. Untuk file latihan, aktifkan Loop. Sembunyikan tangkapan jendela atau desktop yang tidak digunakan. - Di **Settings → Video**, atur resolusi kanvas dan output ke `3840x2160` dan pilih `30` fps untuk contoh ini. - Di **Output → Advanced → Streaming**, pilih encoder perangkat keras H.264 yang didukung, seperti NVIDIA NVENC H.264. Gunakan CBR `18000 Kbps`, interval bingkai utama `2 s`, high profile, dan nonaktifkan penskalaan keluaran. Dengan NVENC, P5 dan Kualitas Tinggi sebagai titik awal; periksa beban pengkodean selama latihan. - Gunakan audio AAC dan stereo 48 kHz. Nonaktifkan mikrofon dan sumber audio desktop yang tidak diinginkan. - Di **Stream**, pilih Custom. Pisahkan input MediaLive RTMP URL ke dalam server/aplikasi URL dan komponen nama aliran terakhirnya. Letakkan komponen terakhir di Stream Key. Tetap tutupi. Gunakan koneksi unggahan yang stabil dengan kapasitas cadangan di atas gabungan bitrate video dan audio. Jika OBS melaporkan penurunan jaringan atau pengkodean yang berkelanjutan, perbaiki sebelum membuka acara untuk pemirsa. Lihat [OBS panduan pengkodean perangkat keras](https://obsproject.com/kb/hardware-encoding). ## Konfigurasikan keluaran adaptif[#](#configure-4k-adaptive-outputs) Untuk pengaturan OBS di atas, gunakan spesifikasi input AVC/UHD MediaLive dengan maksimum 20 Mbps. Buat output H.264 berikut pada 30 fps, dengan GOP 2 detik tertutup dan segmen CMAF 6 detik yang selaras. Simpan audio AAC dalam versinya sendiri. | Resolusi | Contoh bitrate video | Kelompok kunci | | --- | --- | --- | | 3840×2160 | 16 Mbps | UHD | | 1920×1080 | 5 Mbps | HD | | 1280×720 | 2.5 Mbps | HD | | 854×480 | 1.2 Mbps | SD | | 640×360 | 0.7 Mbps | SD | Ini adalah pengaturan latihan, bukan jaminan kualitas. Saluran 4K masih memerlukan rendisi yang lebih rendah untuk layar yang lebih kecil, jaringan terbatas, dan perangkat yang tingkat keamanannya DRM membatasi kualitas. Periksa [MediaLive codec dan dukungan resolusi](https://docs.aws.amazon.com/medialive/latest/ug/eml-limitations-and-rules.html) saat ini ketika memilih encoder yang berbeda. ## Menggunakan kembali saluran setelah kejadian sebelumnya[#](#reuse-channel-history) Encoder yang berjalan belum membuktikan bahwa pemirsa menerima media terbaru. Periksa header manifest-last-updated pada MediaPackage dan resolusi yang tersedia. Jika saluran yang digunakan kembali masih menyajikan segmen lama setelah perubahan encoder atau rendition, ikuti [prosedur AWS untuk mereset riwayat saluran](https://docs.aws.amazon.com/mediapackage/latest/userguide/channel-reset.html). - Konfirmasikan bahwa konten DVR sebelumnya dapat dihapus secara permanen; reset bukanlah operasi rollback. - Hentikan OBS dan saluran MediaLive. Tunggu hingga MediaLive menampilkan Idle. - Di MediaPackage, setel ulang riwayat untuk saluran pengujian tertentu. Tunggu setidaknya 30 detik setelah reset selesai. - Mulai MediaLive, tunggu Running, lalu mulai OBS. Periksa kembali media DASH/HLS baru, pertukaran SPEKE, dan pemutaran perangkat. ## Tambahkan acara ke PHP, Android, dan iOS[#](#test-web-android-ios) Gunakan Content ID dan lingkungan siaran langsung yang sama di semua contoh. Simpan Site Key dan Access Key di server PHP Anda. Contoh acara yang dihosting adalah `aws-live-test-20260902`, berjudul **4K Live DRM Test**; itu hanya tersedia saat latihan sedang berjalan. Di PHP, tambahkan entri daftar putar tepercaya dengan `id`, `title`, dan `type: live`. Masuk lagi untuk menyegarkan hak sesi sampel. Backend menyelesaikan manifes langsung yang terdaftar dan menolak jenis yang disediakan klien yang tidak cocok dengan katalog. ``` 'playlist' => [ ['id' => 'your-live-content-id', 'title' => 'My live event', 'type' => 'live'], ], ``` Di Android, tambahkan `DrmXPlaylistItem("your-live-content-id", "My live event", "live")` dan teruskan tipe kontennya saat mempersiapkan pemutaran. Dalam sampel Apple, gunakan `DrmXPlaylistItem(contentId: "your-live-content-id", title: "My live event", contentType: .live)`. Entri langsung ditujukan untuk streaming dan tidak boleh masuk antrean pengunduhan offline. ## Mulai, verifikasi, dan hentikan[#](#start-and-stop-the-broadcast) - Mulai DRM-X Live Run, lalu saluran AWS MediaLive. Tunggu hingga MediaLive menampilkan Running. - Mulai Streaming di OBS. Periksa bitrate, frame yang hilang, audio, dan beban encoder. - Pastikan manifest DASH/HLS terus diperbarui dan berisi representasi serta sinyal DRM yang diharapkan. Periksa gambar dan audio yang didekode pada browser, Android dengan Widevine, dan iPhone dengan FairPlay. Biarkan satu pemutar terhubung melewati setidaknya satu rotasi kunci, lalu uji pemirsa yang baru bergabung. - Hentikan streaming OBS, hentikan saluran MediaLive, dan hentikan DRM-X Live Run saat tes berakhir. Konfirmasikan MediaLive kembali ke Idle. Menghentikan OBS saja tidak menghentikan biaya encoder AWS. Periksa masukan yang disimpan, pengemasan/penyimpanan, permintaan, dan biaya pengiriman secara terpisah. Lihat [MediaLive harga](https://aws.amazon.com/medialive/pricing/) dan konsol penagihan AWS Anda. ## Latihan terverifikasi: 17 September 2026[#](#verified-rehearsal) Saluran menyediakan video terenkripsi 3840×2160 dan rendition adaptif beresolusi lebih rendah. iPhone fisik mendekode 4K dan lulus enam menit pemutaran yang melewati batas interval rotasi kunci 600 detik. perangkat Samsung Android lulus sepuluh menit pada 1080p, yaitu batas tampilan yang dilaporkan. Kedua perangkat berhasil bergabung kembali setelah rotasi. Hasil berlaku untuk perangkat, codec, dan kebijakan yang diuji. Gunakan Android SDK **1.0.0-preview.13** atau lebih baru untuk manifes langsung yang tidak di-cache. Tingkatkan versi aplikasi evaluasi [Android](https://docs.drm-x.com/downloads/android/1.0.0-preview.13/drmx-android-player-1.0.0-preview.13.apk) yang ada untuk menyimpan video yang diunduh. Sampel Apple yang diperbarui mempertahankan kunci ID dan IV sambil memadatkan metadata MediaPackage agar sesuai dengan batas pengidentifikasi SPC 200-byte FairPlay. Preferensi resolusinya menyediakan lebar dan tinggi sehingga pemutaran adaptif dapat mencapai 4K. ### Safari pemutaran langsung Gunakan Web SDK 1.2.0-preview.13 atau lebih baru untuk Safari. Ia memilih Apple Media Keys asli bila tersedia di macOS, iOS dan iPadOS, dan menyimpannya API di seluruh perubahan playlist langsung dan VOD. Pemutaran langsung tidak kembali ke MSE/SINF, yang dapat meminta kunci segmen inisialisasi basi setelah MediaPackage memutar kuncinya. Simpan kunci terkini ID dan IV di sinyal HLS. DRM-X SPEKE memancarkan pengidentifikasi aset KeyId/IV yang ringkas sehingga Safari dapat meminta lisensi FairPlay dalam batas ukuran pengidentifikasi. DRM License Token masih mengotorisasi konten dan kunci yang tepat. Setelah memperbarui Layanan Kunci, verifikasi bahwa gateway SPEKE dependennya sedang berjalan; video penerima pembuat enkode tidak dapat memublikasikan keluaran baru yang dilindungi saat pengiriman kunci tidak tersedia. Latihan Safari terpisah selama 15 menit memastikan pemutaran tetap berlanjut melewati rotasi kunci pada Mac dan iPhone. iPhone menggunakan Apple Media Keys native. Mac menggunakan EME modern untuk pemeriksaan rotasi, kemudian berhasil bergabung kembali dengan Apple Media Keys native setelah kesalahan awal EME modern yang muncul sesekali. Adaptasi browser mencapai 720p pada Mac dan 480p pada iPhone. Hasil ini tidak membuktikan pemutaran 4K di browser atau rotasi pada jalur kompatibilitas akhir Mac. Hasil 4K aplikasi native di atas berasal dari pengujian terpisah. ### Sebelum memulai kembali latihan - Verifikasi bahwa titik akhir SPEKE dapat dijangkau dan konsol menunjukkan pertukaran terkini. Encoder yang menerima masukan masih dapat menyajikan media lama ketika pengiriman kunci gagal. - Pisahkan VOD/cache media offline dari sumber manifes langsung. - Periksa dimensi video yang benar-benar didekode. Memilih saluran 4K saja tidak membuktikan pemutaran 4K. - Latihan ini telah dihentikan. Sebelum menguji kembali entri katalog siaran langsung, mulai DRM-X Live Run baru yang terotorisasi, encoder AWS, dan streaming OBS.