Mulai sesi streaming dengan Amazon GameLift Streams - GameLift Aliran Amazon

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

Mulai sesi streaming dengan Amazon GameLift Streams

Bagian ini mencakup sesi streaming, contoh sebenarnya dari aliran di mana pengguna akhir atau pemain dapat berinteraksi dengan aplikasi Anda atau memainkan game Anda. Anda akan belajar tentang cara menguji sesi streaming Anda sendiri dan memahami siklus hidup sesi streaming.

Untuk meluncurkan sesi streaming ke pengguna akhir, Anda harus mengintegrasikan Amazon GameLift Streams ke layanan Anda sendiri. Untuk informasi lebih lanjut, lihatAmazon GameLift Streams layanan backend dan klien web.

Tentang sesi streaming

Prasyarat untuk memulai sesi streaming adalah aplikasi dan grup aliran yang memiliki kapasitas aktif yang tersedia. Sesi streaming berjalan pada salah satu sumber daya komputasi, atau kapasitas aliran, yang telah dialokasikan oleh grup aliran. Saat memulai streaming, Anda harus menentukan grup aliran dan aplikasi untuk melakukan streaming menggunakan nilai ARN atau ID mereka.

Ketika Anda berhasil memulai sesi streaming, Anda menerima pengenal unik untuk sesi streaming tersebut. Kemudian, Anda menggunakan ID itu untuk menghubungkan sesi streaming ke pengguna akhir. Untuk informasi selengkapnya, lihat StartStreamSessiondi Referensi API Amazon GameLift Streams.

Menguji aliran di konsol

Cara paling langsung bagi Anda untuk menguji bagaimana streaming aplikasi Anda adalah melalui konsol Amazon GameLift Streams. Saat memulai streaming, Amazon GameLift Streams menggunakan salah satu sumber daya komputasi yang dialokasikan grup streaming Anda. Jadi, Anda harus memiliki kapasitas yang tersedia di grup streaming Anda.

Untuk menguji streaming Anda di konsol Amazon GameLift Streams
  1. Masuk ke AWS Management Console dan buka konsol Amazon GameLift Streams.

  2. Anda dapat menguji aliran dengan beberapa cara. Mulai dari halaman grup Stream atau halaman aliran Uji dan ikuti langkah-langkah berikut:

    1. Pilih grup streaming yang ingin Anda gunakan untuk melakukan streaming.

    2. Jika Anda memulai dari halaman Grup Stream, pilih Aliran uji. Jika Anda memulai dari halaman aliran Uji, pilih Pilih. Ini membuka halaman konfigurasi aliran Uji untuk grup aliran yang dipilih.

    3. Di Aplikasi tertaut, pilih aplikasi.

    4. Di Lokasi, pilih lokasi dengan kapasitas yang tersedia.

    5. (Opsional) Dalam konfigurasi Program, masukkan argumen baris perintah atau variabel lingkungan untuk diteruskan ke aplikasi saat diluncurkan.

    6. Konfirmasikan pilihan Anda, dan pilih Aliran uji.

  3. Setelah streaming dimuat, Anda dapat melakukan tindakan berikut di streaming:

    1. Untuk menghubungkan input, seperti mouse, keyboard, dan gamepad Anda (kecuali mikrofon, yang tidak didukung dalam aliran Uji), pilih Lampirkan input. Anda secara otomatis melampirkan mouse Anda ketika Anda memindahkan kursor ke jendela aliran.

    2. Agar file yang dibuat selama sesi streaming diekspor ke bucket Amazon S3 di akhir sesi, pilih Ekspor file dan tentukan detail bucket. File yang diekspor dapat ditemukan di halaman Sesi.

    3. Untuk melihat streaming di layar penuh, pilih Layar penuh. Tekan Escape untuk membalikkan tindakan ini.

  4. Untuk mengakhiri streaming, pilih Hentikan sesi. Ketika aliran terputus, kapasitas aliran menjadi tersedia untuk memulai aliran lain.

catatan

Fitur Test stream di konsol Amazon GameLift Streams tidak mendukung mikrofon.

Siklus hidup sesi streaming

Saat bekerja dengan sesi streaming di Amazon GameLift Streams, diagram ini dapat membantu Anda memahami berbagai status transisi sesi streaming sepanjang siklus hidupnya.

  • StartStreamSessionmembuat sesi aliran baru, yang dimulai dalam ACTIVATING keadaan. Saat Amazon GameLift Streams menemukan sumber daya yang tersedia untuk meng-host streaming, sesi streaming akan beralih ke. ACTIVE Ketika klien terhubung ke aliran aktif, sesi streaming bertransisi keCONNECTED.

  • Ketika klien terputus dari aliran, sesi aliran bertransisi ke PENDING_CLIENT_RECONNECTION status. CreateStreamSessionConnectiontransisi sesi streaming keRECONNECTING, dan akan memulai klien untuk menyambung kembali ke aliran atau membuat sesi aliran baru. Ketika sesi streaming siap untuk klien untuk terhubung kembali, itu beralih ke. ACTIVE Ketika klien terhubung kembali, ia beralih kembali ke. CONNECTED Jika klien terputus lebih lama dariConnectionTimeoutSeconds, sesi streaming berakhir.

  • Ketika klien tidak terhubung ke sesi aliran dalam ACTIVE atau PENDING_CLIENT_RECONNECTION status dalam periode waktu yang ditentukan olehConnectionTimeoutSeconds, maka ia beralih keTERMINATED.

  • TerminateStreamSessionmemulai penghentian aliran, dan sesi aliran transisi ke TERMINATING status. Ketika sesi streaming berhasil berakhir, ia beralih ke. TERMINATED

  • Sesi aliran dalam keadaan apa pun, kecualiTERMINATED, dapat beralih keERROR. Ketika panggilan API kembali ERROR sebagai nilai Status, periksa nilai StatusReason untuk deskripsi singkat tentang penyebab kesalahan. Anda juga dapat menelepon GetStreamSessionuntuk memeriksa nilai-nilai ini.

Diagram ini menunjukkan keadaan berbeda yang transisi sesi aliran ke seluruh siklus hidupnya.

Nilai batas waktu yang memengaruhi sesi streaming

Sesi streaming diatur oleh beberapa nilai batas waktu yang mengontrol berbagai aspek siklus hidup sesi. Dalam urutan kronologis kira-kira kapan Anda biasanya menemukannya selama siklus hidup sesi streaming, mereka mencakup yang berikut:

Batas waktu penempatan

Batas waktu Amazon GameLift Streams untuk menemukan sumber daya komputasi untuk meng-host sesi streaming menggunakan kapasitas yang tersedia. Batas waktu penempatan bervariasi berdasarkan jenis kapasitas yang digunakan untuk memenuhi permintaan streaming Anda:

  • Kapasitas selalu aktif: 75 detik

  • Kapasitas sesuai permintaan:

    • Runtime Linux/Proton: 90 detik

    • Runtime Windows: 10 menit

  • Perilaku: Jika Amazon GameLift Streams tidak dapat mengidentifikasi sumber daya yang tersedia dalam waktu ini, sesi streaming akan Status berubah menjadi ERROR dengan a StatusReason of. placementTimeout

Batas waktu koneksi

Lama waktu Amazon GameLift Streams menunggu klien untuk terhubung atau menyambung kembali ke sesi streaming.

  • Parameter: ConnectionTimeoutSeconds di StartStreamSession

  • Rentang: 1 - 3600 detik (1 jam)

  • Default: 120 detik (2 menit)

  • Perilaku: Timer dimulai saat sesi streaming mencapai ACTIVE atau PENDING_CLIENT_RECONNECTION status. Jika tidak ada klien yang terhubung sebelum batas waktu, sesi akan Status beralih ke. TERMINATED

Batas waktu idle

Lamanya waktu sesi streaming dapat menganggur tanpa input pengguna.

  • Parameter: (internal)

  • Nilai: 60 menit

  • Perilaku: Jika tidak ada input pengguna yang diterima selama waktu ini, Amazon GameLift Streams menghentikan sesi streaming.

Batas waktu lama sesi

Durasi maksimum Amazon GameLift Streams membuat sesi streaming tetap terbuka.

  • Parameter: SessionLengthSeconds di StartStreamSession

  • Rentang: 1 - 86400 detik (24 jam)

  • Default: 43200 detik (12 jam)

  • Perilaku: Mengakhiri sesi streaming terlepas dari koneksi klien yang ada saat batas waktu tercapai.

Mengakhiri sesi streaming

Jika Anda perlu memaksa sesi streaming untuk mengakhiri, Anda memiliki opsi berikut:

  • Gunakan TerminateStreamSession API: Untuk menggunakan TerminateStreamSession, Anda akan memerlukan ID grup streaming dan ID sesi streaming. Anda dapat menggunakan ListStreamSessionsatau ListStreamSessionsByAccountdengan --status CONNECTED parameter untuk mendapatkan daftar sesi streaming yang memiliki klien yang terhubung.

  • Hapus lokasi sesi dari grup alirannya: Menghapus lokasi dari grup streaming tempat sesi streaming akan menghentikan semua sesi streaming aktif di lokasi tersebut. Anda dapat menghapus lokasi dalam grup streaming dari konsol atau dengan menggunakan RemoveStreamGroupLocationsAPI.

  • Hapus grup aliran sesi: Menghapus grup aliran akan menghentikan semua sesi aliran aktif di semua lokasi grup aliran. Anda dapat menghapus grup streaming dari konsol atau dengan menggunakan DeleteStreamGroupAPI. Gunakan dengan hati-hati karena Anda akan tiba-tiba mengakhiri koneksi klien.

Menyambung kembali ke sesi streaming

Jika klien terputus dari sesi streaming tanpa mengakhiri sesi, klien dapat terhubung kembali ke sesi dalam waktu yang ditentukan oleh ConnectionTimeoutSeconds saat sesi streaming dimulai. Untuk menyambung kembali ke sesi, Anda memerlukan ID sesi streaming. Untuk detailnya, lihat CreateStreamSessionConnectiondi Referensi API Amazon GameLift Streams. Anda dapat melihat contoh menghubungkan kembali ke sesi streaming di React Starter Sample.