Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Resolusi streaming khusus di Amazon GameLift Streams
Secara default, Amazon GameLift Streams memberikan aliran interaktif pada resolusi full HD standar industri 1920 × 1080 piksel, dalam rasio aspek 16-by-9 standar. Anda dapat mengatur resolusi khusus untuk setiap sesi agar sesuai dengan bentuk layar atau rasio aspek perangkat pemain. Resolusi khusus mendukung rasio aspek lanskap, potret, dan persegi.
Gunakan resolusi khusus untuk:
-
Streaming pengalaman layar penuh ke ponsel dan tablet dalam rasio aspek perangkat asli mereka, tanpa padding atau cropping.
-
Cocokkan rasio aspek monitor ultrawide untuk pengalaman layar lebar asli.
-
Support streaming game dengan dimensi arbitrer untuk disematkan dalam pengalaman web non-layar penuh.
Anda dapat menggunakan resolusi khusus dengan semua konfigurasi layanan Amazon GameLift Streams, terlepas dari kelas streaming atau lingkungan runtime.
Cara kerja resolusi
Saat Anda menetapkan resolusi khusus, Amazon GameLift Streams mengonfigurasi monitor virtual sesi ke resolusi yang diinginkan. Ini menjadi resolusi monitor untuk sesi tersebut. Untuk kualitas visual terbaik, aplikasi harus merender ke resolusi monitor yang dikonfigurasi.
Resolusi monitor menentukan dimensi monitor virtual dan resolusi di mana bingkai ditangkap. Dua pengaturan SDK Web tambahan memengaruhi resolusi aliran yang dikirimkan ke pemutar:
-
Resolusi maksimum: Pengaturan SDK Web yang membatasi resolusi aliran. Jika tidak ditentukan, tidak ada tutup yang diterapkan dan resolusi monitor penuh dialirkan. Lihat Interaksi dengan resolusi maksimum.
-
Resolusi dinamis: Secara otomatis menyesuaikan resolusi aliran untuk memberikan kualitas visual terbaik yang dapat dipertahankan oleh koneksi jaringan pemirsa. Lihat Interaksi dengan resolusi dinamis.
Pengaturan tidak mengubah resolusi monitor untuk sesi tersebut.
Kendala resolusi khusus
Resolusi yang Anda tentukan harus memenuhi persyaratan ini:
| Kendala | Nilai |
|---|---|
| Total piksel maksimum | 2.073.600 (1920 × 1080) |
| Rentang lebar dan tinggi | 320 - 4096 piksel |
| Paritas dimensi | Baik lebar dan tinggi harus angka genap |
Layanan memvalidasi kendala ini saat Anda memulai sesi. Jika resolusi tidak memenuhi persyaratan, permintaan gagal dengan kesalahan validasi.
Tetapkan resolusi khusus
Anda dapat mengatur resolusi khusus saat memulai sesi streaming menggunakan konsol, AWS CLI, atau API.
Menggunakan konsol Amazon GameLift Streams
Untuk menguji aliran dengan resolusi khusus:
-
Buka konsol Amazon GameLift Streams
dan navigasikan ke grup streaming Anda. -
Pilih Aliran uji.
-
Di dropdown Resolusi, pilih resolusi untuk desktop, tablet, atau perangkat seluler.
-
Pilih Test stream untuk memulai sesi.
Setelah streaming aktif, Anda dapat melihat resolusi saat ini di hamparan statistik waktu nyata.
Menggunakan AWS CLI
Gunakan start-stream-session perintah dengan --display-configuration parameter:
aws gameliftstreams start-stream-session \ --identifier sg-ExampleStreamGroup \ --application-identifier a-ExampleApp \ --protocol WebRTC \ --signal-request "your-signal-request" \ --display-configuration '{"Resolution":{"Width":1920,"Height":1080}}'
Menggunakan API
Dalam permintaan StartStreamSessionAPI, sertakan DisplayConfiguration parameter:
{ "ApplicationIdentifier": "a-ExampleApp", "Protocol": "WebRTC", "SignalRequest": "your-signal-request", "DisplayConfiguration": { "Resolution": { "Width": 1920, "Height": 1080 } } }
Hitung resolusi optimal untuk perangkat
Anda dapat menggunakan resolusi apa pun yang memenuhi batasan resolusi. Rumus berikut adalah salah satu pendekatan yang direkomendasikan untuk menemukan resolusi terbesar untuk rasio aspek tertentu. Ini memaksimalkan piksel yang tersedia untuk kualitas visual terbaik:
height = floor_to_even( sqrt(2,073,600 * H / W) ) width = floor_to_even( height * W / H )
Dalam rumus ini, W:H adalah rasio aspek target dan 2,073,600 jumlah total piksel maksimum (1920 × 1080). Fungsi ini floor_to_even(x) dibulatkan ke bilangan bulat genap terdekat.
contoh 19.5:9 (ponsel)
height = floor_to_even( sqrt(2,073,600 * 9 / 19.5) ) = floor_to_even(978.2) = 978 width = floor_to_even( 978 * 19.5 / 9 ) = floor_to_even(2118.3) = 2118 → Resolution: 2118 × 978 (2,071,404 pixels, 99.9% utilization)
Untuk resolusi potret, hitung resolusi lanskap dan tukar nilai lebar dan tinggi.
Nilai resolusi umum untuk perangkat
Nilai berikut menggunakan rasio standar generik yang mencakup kategori perangkat umum. Perangkat individu mungkin memiliki rasio aspek asli yang sedikit berbeda, yang menghasilkan bilah hitam yang dapat diabaikan secara visual. Untuk pengisian piksel sempurna, gunakan rasio aspek asli perangkat yang tepat dengan rumus di atas.
| Kategori | Rasio aspek | Lanskap | Potret | Perangkat yang cocok |
|---|---|---|---|---|
| Desktop | 16:9 | 1920 × 1080 | 1080 × 1920 | Monitor desktop, TV, ponsel HD |
| Desktop | 16:10 | 1820 × 1138 | 1138 × 1820 | Monitor layar lebar, tablet Amazon Fire |
| Desktop | 21:9 | 2198 × 942 | Tidak berlaku | Monitor Ultrawide |
| Tablet | 3:2 | 1760 × 1174 | 1174 × 1760 | Berbagai iPad |
| Tablet | 4:3 | 1660 × 1246 | 1246 × 1660 | iPad, tablet Android |
| Seluler | 20:9 | 2142 × 964 | 964 × 2142 | Google Pixel, Samsung Galaxy |
| Seluler | 19. 5:9 | 2118 × 978 | 978 × 2118 | iPhone, Samsung Galaxy |
| Seluler | 18:9 | 2036 × 1018 | 1018 × 2036 | Ponsel Android lainnya |
| Lainnya | 1:1 | 1440 × 1440 | Tidak berlaku | Monitor persegi |
Interaksi dengan resolusi maksimum
Resolusi khusus dan resolusi maksimum melayani tujuan yang berbeda:
-
Resolusi khusus: Saat Anda menetapkan resolusi khusus, itu menjadi resolusi monitor untuk sesi tersebut. Inilah yang dirender server, termasuk rasio aspek dan dimensi piksel dari bingkai yang ditangkap.
-
Resolusi maksimum: Pengaturan SDK Web yang membatasi resolusi aliran. Tutupnya pas di dalam kotak pembatas berorientasi dari tingkat yang dipilih (misalnya, 1280 × 720 untuk 720p). Gunakan pengaturan ini untuk menargetkan perangkat kelas bawah yang tidak dapat memecahkan kode gambar resolusi penuh.
Untuk informasi selengkapnya tentang parameter resolusi maksimum, lihat Referensi API SDK Web Amazon GameLift Streams di halaman dokumentasi Amazon GameLift Streams.
Interaksi dengan resolusi dinamis
Resolusi dinamis secara otomatis menyesuaikan resolusi aliran untuk memberikan kualitas visual terbaik yang dapat dipertahankan oleh koneksi jaringan pemirsa. Fitur ini tersedia dengan Amazon GameLift Streams Web SDK versi 1.3.0 dan yang lebih baru.
Resolusi dinamis tidak mempengaruhi resolusi monitor untuk sesi tersebut. Amazon GameLift Streams hanya menyesuaikan resolusi streaming yang dikirimkan ke pemutar. Ketika bandwidth terbatas, resolusi aliran turun sambil mempertahankan rasio aspek. Ketika bandwidth pulih, itu menskalakan kembali ke resolusi monitor penuh atau batas resolusi maksimum.
Misalnya, jika Anda menetapkan resolusi khusus 1080 × 1920 (potret seluler, 9:16), pemain menerima aliran 1080 × 1920 penuh di bawah bandwidth normal. Jika jaringan pemain menjadi terbatas, resolusi dinamis mungkin menskalakan aliran ke resolusi yang lebih rendah (misalnya, 720 × 1280) sambil mempertahankan rasio aspek 9:16. Resolusi monitor di server tetap 1080 × 1920 seluruhnya.
Untuk informasi selengkapnya tentang parameter resolusi dinamis, lihat Referensi API SDK Web Amazon GameLift Streams di halaman dokumentasi Amazon GameLift Streams.
Praktik terbaik
Ikuti praktik terbaik ini saat menggunakan resolusi khusus dengan Amazon GameLift Streams:
-
Cocokkan rasio aspek perangkat pemain untuk mengisi layar tanpa letterboxing atau pillarboxing. Gunakan nilai resolusi umum atau rumus perhitungan untuk menemukan resolusi optimal untuk rasio aspek tertentu. Untuk game seluler berorientasi potret, gunakan resolusi potret untuk memberikan pengalaman vertikal asli.
-
Optimalkan frontend Anda untuk pengalaman streaming. Pastikan klien web Anda menangani rasio aspek streaming dengan benar saat streaming ke perangkat seluler atau tablet.
-
Uji aplikasi Anda dengan resolusi khusus sebelum menerapkan ke pemain. Sebagian besar aplikasi beradaptasi dengan resolusi monitor secara otomatis saat berjalan di layar penuh. Namun, beberapa aplikasi mungkin tidak menangani resolusi non-16:9 dengan anggun.
-
Pastikan kamera dan UI dalam game Anda beradaptasi dengan rasio aspek. Sesuaikan bidang tampilan kamera game untuk menunjukkan jumlah adegan yang sesuai daripada memotong viewport. Reflow atau reposisi elemen UI agar sesuai dengan rasio aspek baru.
-
Hindari mengubah resolusi monitor virtual saat runtime dalam aplikasi Anda. Amazon GameLift Streams menetapkan resolusi monitor saat sesi dimulai. Aplikasi yang memodifikasinya selama bermain game mungkin menghasilkan hasil yang tidak terduga.
-
Tangani rotasi perangkat di aplikasi dan frontend Anda. Resolusi monitor ditetapkan selama sesi berlangsung. Untuk mendukung rotasi perangkat mid-stream, kami sarankan untuk mengirimkan sinyal rotasi Komunikasi saluran data antara aplikasi dan klien web ke aplikasi. Mintalah aplikasi memutar renderingnya, dan perbarui frontend Anda sesuai dengan itu.
Pemecahan masalah
Tabel berikut menjelaskan masalah umum, penyebabnya, dan solusi yang disarankan.
| Isu | Penyebab | Solusi |
|---|---|---|
| Sesi gagal dimulai dengan kesalahan validasi | Resolusi tidak memenuhi kendala | Verifikasi bahwa resolusi Anda memenuhi semua kendala yang tercantum dalam. Kendala resolusi khusus |
| Aplikasi dirender pada resolusi yang salah | Aplikasi tidak berjalan dalam layar penuh, atau dirender pada resolusi yang berbeda dalam mode berjendela | Konfigurasikan aplikasi untuk berjalan di layar penuh. Aplikasi dapat menanyakan sistem untuk resolusi yang dikonfigurasi. |
| Resolusi aliran lebih rendah dari yang diharapkan (rasio aspek yang sama) | Tutup resolusi maksimum atau resolusi dinamis aktif | Ini adalah perilaku yang diharapkan ketika resolusi maksimum atau resolusi dinamis aktif. Kedua fitur menskalakan resolusi aliran ke bawah sambil mempertahankan rasio aspek. Periksa resolusi maksimum atau pengaturan resolusi dinamis di Web SDK. |
| Resolusi aliran berbeda dari resolusi khusus (rasio aspek berbeda) | Aplikasi mengubah resolusi monitor selama startup atau mid-stream | Resolusi maksimum dan resolusi dinamis tidak menyebabkan masalah ini. Ini adalah perilaku yang diketahui untuk beberapa aplikasi yang mengesampingkan resolusi monitor. Pertimbangkan untuk menggunakan aplikasi yang tidak mengesampingkan resolusi monitor, atau konfigurasikan aplikasi untuk dirender pada resolusi monitor dalam layar penuh. |
| Bilah hitam muncul di layar pemain | Rasio aspek ketidakcocokan antara aliran dan perangkat, atau render aplikasi dengan bilah hitam secara internal | Periksa apakah bilah hitam berasal dari klien (ketidakcocokan rasio aspek) atau di dalam aplikasi itu sendiri. Gunakan nilai resolusi yang sesuai dengan rasio aspek perangkat pemain, atau hitung resolusi optimal menggunakan rumus diHitung resolusi optimal untuk perangkat. |