Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menanamkan Metadata dalam Stream Video
Metadata berwaktu Amazon Interactive Video Service (IVS) menyediakan cara untuk menyematkan metadata dalam aliran Amazon IVS. Ini memastikan bahwa semua pemirsa Anda menerima metadata pada saat yang sama dalam aliran video, terlepas dari latensi aliran atau lokasi geografis.
Apa itu Metadata Berwaktu?
Metadata berwaktu adalah metadata dengan stempel waktu. Ini dapat dimasukkan ke dalam aliran secara terprogram, menggunakan IVS API atau IVS broadcast SDK. Saat Amazon IVS memproses aliran, metadata berjangka waktu disinkronkan dengan bingkai audio dan video. Selama pemutaran, semua pemirsa streaming mendapatkan metadata pada saat yang sama relatif terhadap aliran. Kode waktu berfungsi sebagai titik isyarat, yang dapat digunakan untuk memicu tindakan berdasarkan data, seperti berikut ini:
-
Memperbarui statistik pemain untuk streaming olahraga.
-
Mengirim detail produk untuk streaming belanja langsung.
-
Mengirim pertanyaan untuk streaming kuis langsung.
Metadata waktu Amazon IVS menggunakan tag ID3 yang disematkan di segmen video. Akibatnya, mereka tersedia dalam video yang direkam.
Menyiapkan Izin IAM
Prasyarat: Sebelum melanjutkan, Anda harus melangkah melalui Memulai dengan IVS Streaming Low-Latency (termasuk membuat pengguna IAM dan menyiapkan izin).
Selanjutnya, Anda harus memberikan izin kepada pengguna IAM Anda untuk menggunakan metadata berwaktu. Ikuti langkah-langkah ini:
-
Masuk ke Konsol Manajemen AWS dan buka konsol IAM di https://console.aws.amazon.com/iam/
. -
Di panel navigasi, pilih Pengguna, lalu pilih pengguna yang diinginkan (nama pengguna yang Anda tentukan saat membuat akun AWS).
-
Di jendela Ring kasan pengguna, pada tab Izin, pilih Tambahkan kebijakan sebaris (di sisi kanan).
-
Pada tab JSON, tempel gumpalan ini:
-
Masih di jendela Buat Kebijakan, pilih Kebijakan Tinjau. Berikan nama pada kebijakan, lalu pilih Buat Kebijakan.
-
Anda akan dikembalikan ke jendela Ringkasan pengguna, menampilkan nama kebijakan baru Anda.
Memasukkan Metadata Berwaktu
Anda dapat memasukkan metadata berwaktu hanya ke aliran aktif pada saluran tertentu.
Menggunakan AWS CLI
Untuk pengujian, cara termudah untuk menambahkan metadata berwaktu adalah dengan AWS CLI. Menggunakan AWS CLI mengharuskan Anda mengunduh dan mengkonfigurasi CLI terlebih dahulu di mesin Anda. Anda mungkin sudah melakukannya ketika Anda melangkah melewat Memulai dengan IVS Streaming Low-Latency inya; jika tidak, lakukan sekarang. Untuk detail, lihat Panduan Pengguna AWS Command Line Interface.
Setelah Anda memiliki CLI:
-
Jalan
put-metadatakan perintah dan berikan saluran ARN dan metadata Anda:aws ivs put-metadata --channel-arn <your-channel-arn> --metadata <your-metadata>Contoh:
aws ivs put-metadata --channel-arn arn:aws:ivs:us-west-2:465369119046:channel/GbiYJna5hFoC --metadata '{"question": "What does IVS stand for?", "correctIndex": 0, "answers": ["interactive video service", "interesting video service", "ingenious video service"]}' -
Amazon IVS memeriksa apakah streaming itu langsung. Jika streaming tidak live, Anda mendapatkan kesalahan; jika tidak, CLI kembali tanpa kesalahan dan metadata (gumpalan teks) dimasukkan ke dalam aliran. Ini terjadi sesegera mungkin. Tidak ada jaminan kapan ini terjadi; namun, semua pemirsa melihat metadata pada titik yang sama dalam streaming.
Menggunakan Amazon IVS API
Untuk menyisipkan metadata berwaktu secara terprogram, gunakan operasi API. PutMetadata
Berikut adalah contoh permintaan HTTP:
POST /PutMetadata HTTP/1.1 { "channelArn": "my_channel", "metadata": "{\"question\": \"What does IVS stand for?\", \"correctIndex\": 0, \"answers\": [\"interactive video service\", \"interesting video service\", \"ingenious video service\"]}" }
Menggunakan IVS Broadcast SDK
Anda dapat memasukkan metadata berwaktu ke dalam band menggunakan IVS broadcast SDK. Ini mungkin berguna untuk menyinkronkan metadata dengan konten audio dan video.
-
Android - Di
BroadcastSessionkelas, gunakansendTimedMetadata. -
iOS - Di
IVSBroadcastSessionkelas, gunakansendTimedMetadata.
Mengkonsumsi Metadata Berwaktu
Gunakan Amazon IVS Player untuk menggunakan metadata berwaktu yang disematkan dalam aliran video. Lihat SDK Pemutar IVS dan dokumentasi Player lainnya.
Berikut adalah contoh cuplikan yang mencetak metadata apa pun yang diterima ke konsol menggunakan Amazon IVS Player SDK. Peristiwa dipicu setiap kali pemutaran mencapai segmen dengan metadata tertanam. (Acara ini TEXT_METADATA_CUE untuk Web, onCue() untuk Android, dan player(_:didOutputCue:) untuk iOS.) Anda dapat menggunakan acara ini untuk memulai fungsionalitas dalam aplikasi klien Anda, seperti memperbarui widget interaktif. Acara ini dipicu untuk konten langsung dan rekaman.
SDK Pemutar Amazon IVS untuk Web:
const player = IVSPlayer.create(); player.addEventListener(IVSPlayer.PlayerEventType.TEXT_METADATA_CUE, function (cue) { console.log('Timed metadata: ', cue.text); });
SDK Pemutar Amazon IVS untuk Android:
@Override public void onCue(@NonNull Cue cue) { if(cue instanceof TextMetadataCue) { Log.i("Timed Metadata: ", ((TextMetadataCue)cue).text); } }
SDK Pemutar Amazon IVS untuk iOS:
func player(_ player: IVSPlayer, didOutputCue cue: IVSCue) { if let textMetadataCue = cue as? IVSTextMetadataCue { print("Timed Metadata: \(textMetadataCue.text)") } }
Catatan: Met adata berjangka waktu didukung untuk iOS Safari dan iOS Chrome di Player 1.3.0 dan yang lebih baru.
Mengkonsumsi Data SEI
Ketika tahap real-time IVS direkam dengan perekaman peserta individu diaktifkan, muatan SEI (Informasi Peningkatan Tambahan) dipertahankan dan diterbitkan sebagai acara. IVSPlayer.PlayerEventType.SEI Di bawah ini adalah contoh cuplikan yang mencetak data SEI ke konsol saat menggunakan SDK pemutar web IVS:
const player = IVSPlayer.create(); player.addEventListener(IVSPlayer.MetadataEventType.SEI, (event) => { const data = new TextDecoder().decode(event.data); const message = JSON.parse(data); console.log(message); });
Catatan: Untuk informasi selengkapnya tentang SEI, lihat Informasi Peningkatan Tambahan (SE I) di Panduan IVS Web Broadcast SDK untuk streaming real-time.
Contoh Demo: Aplikasi Kuis
Contoh kode aplikasi kuis interaktif tersedia di GitHub. Kami menggunakan JSON melalui metadata berwaktu untuk mengisi UI kuis untuk menampilkan pertanyaan dan jawaban. Jawabannya dapat dipilih dan mengungkapkan apakah seleksi itu benar.
| Platform SDK Pemutar Amazon IVS | Repo Sampel |
|---|---|
Web |
|
Android |
https://github.com/aws-samples/amazon-ivs-player-android-sample Dalam repo ini, lihat demo ku |
iOS |
https://github.com/aws-samples/amazon-ivs-player-ios-sample Dalam repo ini, lihat demo ku |
Melihat Metadata Berwaktu
Jika diinginkan, Anda dapat melihat metadata berwaktu yang disematkan di streaming langsung Anda, di konsol:
-
Buka konsol https://console.aws.amazon.com/ivs
Amazon IVS. -
Di kiri atas, pilih ikon hamburger untuk membuka panel navigasi, lalu pilih saluran langsung.
-
Pilih saluran yang streamingnya ingin Anda lihat, untuk membuka halaman detail untuk saluran tersebut.
Streaming langsung diputar di bagian Streaming langsung halaman.
-
Di bagian bawah jendela, pilih Metadata Berwaktu.
Saat pemain bermain, saat setiap peristiwa metadata terwaktu diterima, nilai dan waktu yang diterima ditampilkan.
Untuk Informasi Selengkapnya
Lihat Menggunakan Metadata Berwaktu Layanan Video Interaktif Amazon