Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Resolución de transmisión personalizada en Amazon GameLift Streams
De forma predeterminada, Amazon GameLift Streams ofrece transmisiones interactivas con la resolución Full HD estándar del sector de 1920 × 1080 píxeles, en una relación de aspecto estándar de 16 x 9. Puede establecer una resolución personalizada para cada sesión para que coincida con la forma de la pantalla o la relación de aspecto del dispositivo del reproductor. Las resoluciones personalizadas admiten relaciones de aspecto horizontales, verticales y cuadradas.
Usa resoluciones personalizadas para:
-
Transmita experiencias de pantalla completa a teléfonos y tabletas en la relación de aspecto de sus dispositivos nativos, sin rellenar ni recortar.
-
Haga coincidir las relaciones de aspecto de los monitores ultraanchos para disfrutar de una experiencia de pantalla ancha nativa.
-
Support retransmisiones de juegos con dimensiones arbitrarias para integrarlas en experiencias web que no sean de pantalla completa.
Puede utilizar una resolución personalizada con todas las configuraciones de servicio de Amazon GameLift Streams, independientemente de la clase de transmisión o del entorno de ejecución.
Cómo funciona la resolución
Cuando establece una resolución personalizada, Amazon GameLift Streams configura el monitor virtual de la sesión con la resolución deseada. Se convierte en la resolución del monitor de la sesión. Para obtener la mejor calidad visual, la aplicación debe renderizarse con la resolución de monitor configurada.
La resolución del monitor determina las dimensiones del monitor virtual y la resolución con la que se capturan los fotogramas. Hay dos ajustes adicionales del SDK web que afectan a la resolución de la transmisión que se envía al reproductor:
-
Resolución máxima: configuración del SDK web que limita la resolución de la transmisión. Si no se especifica, no se aplica ningún límite y se transmite la resolución completa del monitor. Consulte Interacción con la máxima resolución.
-
Resolución dinámica: ajusta automáticamente la resolución de la transmisión para ofrecer la mejor calidad visual que pueda ofrecer la conexión de red del espectador. Consulte Interacción con la resolución dinámica.
Ninguno de los dos ajustes cambia la resolución del monitor de la sesión.
Restricciones de resolución personalizadas
La resolución que especifique debe cumplir los siguientes requisitos:
| Restricción | Valor |
|---|---|
| Número máximo de píxeles totales | 2.073.600 (1920 × 1080) |
| Rango de anchura y altura | 320 — 4096 píxeles |
| Paridad de dimensiones | Tanto la anchura como la altura deben ser números pares |
El servicio valida estas restricciones al iniciar una sesión. Si la resolución no cumple los requisitos, la solicitud falla y se produce un error de validación.
Establezca una resolución personalizada
Puede establecer una resolución personalizada al iniciar una sesión de transmisión mediante la consola, la AWS CLI o la API.
Uso de la consola de Amazon GameLift Streams
Para probar una transmisión con una resolución personalizada:
-
Abre la consola de Amazon GameLift Streams
y navega hasta tu grupo de transmisiones. -
Selecciona Probar transmisión.
-
En el menú desplegable Resolución, selecciona una resolución para ordenadores de sobremesa, tabletas o dispositivos móviles.
-
Selecciona Probar transmisión para iniciar la sesión.
Una vez que la transmisión esté activa, podrás ver la resolución actual en la superposición de estadísticas en tiempo real.
Uso de AWS CLI
Utilice el comando start-stream-session con el parámetro --display-configuration:
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}}'
Uso de la API
En la solicitud StartStreamSessionde API, incluye el DisplayConfiguration parámetro:
{ "ApplicationIdentifier": "a-ExampleApp", "Protocol": "WebRTC", "SignalRequest": "your-signal-request", "DisplayConfiguration": { "Resolution": { "Width": 1920, "Height": 1080 } } }
Calcule la resolución óptima para un dispositivo
Puede utilizar cualquier resolución que cumpla con las restricciones de resolución. La siguiente fórmula es un enfoque recomendado para encontrar la resolución más alta para una relación de aspecto específica. Maximiza los píxeles disponibles para obtener la mejor calidad visual:
height = floor_to_even( sqrt(2,073,600 * H / W) ) width = floor_to_even( height * W / H )
En esta fórmula, W:H es la relación de aspecto objetivo y 2,073,600 es el recuento total máximo de píxeles (1920 × 1080). La función floor_to_even(x) redondea hacia abajo al entero par más cercano.
ejemplo 19. 5:9 (teléfono móvil)
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)
Para las resoluciones verticales, calcule la resolución horizontal e intercambie los valores de ancho y alto.
Valores de resolución comunes para los dispositivos
Los siguientes valores utilizan relaciones estándar genéricas que cubren las categorías de dispositivos más comunes. Los dispositivos individuales pueden tener relaciones de aspecto nativas ligeramente diferentes, lo que da como resultado barras negras visualmente insignificantes. Para un relleno perfecto en píxeles, usa la relación de aspecto nativa exacta del dispositivo con la fórmula anterior.
| Categoría | Relación de aspecto | Paisaje | Retrato | Dispositivos coincidentes |
|---|---|---|---|---|
| Escritorio | 16:9 | 1920 × 1080 | 1080 × 1920 | Monitores de sobremesa, televisores, móviles HD |
| Escritorio | 16:10 | 1820 × 1138 | 1138 × 1820 | Monitores de pantalla ancha, tabletas Amazon Fire |
| Escritorio | 21:9 | 2198 × 942 | No aplicable | Monitores ultraanchos |
| Tablet | 3:2 | 1760 × 1174 | 1174 × 1760 | Varios iPads |
| Tablet | 4:3 | 1660 × 1246 | 1246 × 1660 | iPads, tabletas Android |
| Móvil | 20:9 | 2142 × 964 | 964 × 2142 | Google Pixel, Samsung Galaxy |
| Móvil | 19. 5:9 | 2118 × 978 | 978 × 2118 | iPhones, Samsung Galaxy |
| Móvil | 18:9 | 2036 × 1018 | 1018 × 2036 | Otros teléfonos Android |
| Otro | 1:1 | 1440 × 1440 | No aplicable | Monitores cuadrados |
Interacción con la máxima resolución
La resolución personalizada y la resolución máxima sirven para diferentes propósitos:
-
Resolución personalizada: al establecer una resolución personalizada, se convierte en la resolución del monitor de la sesión. Esto es lo que renderiza el servidor, incluida la relación de aspecto y las dimensiones en píxeles de los fotogramas capturados.
-
Resolución máxima: configuración del SDK web que limita la resolución de la transmisión. El límite cabe dentro del cuadro delimitador orientado del nivel seleccionado (por ejemplo, 1280 × 720 para 720p). Usa esta configuración para dirigirte a dispositivos de gama baja que no pueden decodificar una imagen de resolución completa.
Para obtener más información sobre el parámetro de resolución máxima, consulte la referencia de la API del SDK web de Amazon GameLift Streams en la página de documentación de Amazon GameLift Streams.
Interacción con la resolución dinámica
La resolución dinámica ajusta automáticamente la resolución de la transmisión para ofrecer la mejor calidad visual que pueda ofrecer la conexión de red del espectador. Esta función está disponible con Amazon GameLift Streams Web SDK versión 1.3.0 y versiones posteriores.
La resolución dinámica no afecta a la resolución del monitor de la sesión. Amazon GameLift Streams ajusta solo la resolución de transmisión entregada al reproductor. Cuando el ancho de banda es limitado, la resolución de la transmisión se reduce y, al mismo tiempo, conserva la relación de aspecto. Cuando se recupera el ancho de banda, se vuelve a escalar hasta alcanzar la resolución completa del monitor o el límite máximo de resolución.
Por ejemplo, si estableces una resolución personalizada de 1080 × 1920 (versión móvil, 9:16), el reproductor recibirá la transmisión completa de 1080 × 1920 con un ancho de banda normal. Si la red del reproductor se ve restringida, la resolución dinámica puede reducir la transmisión a una resolución inferior (por ejemplo, 720 × 1280) y, al mismo tiempo, mantener la relación de aspecto de 9:16. La resolución del monitor del servidor sigue siendo de 1080 × 1920 en todo momento.
Para obtener más información sobre el parámetro de resolución dinámica, consulte la referencia de la API del SDK web de Amazon GameLift Streams en la página de documentación de Amazon GameLift Streams.
Prácticas recomendadas
Siga estas prácticas recomendadas cuando utilice resoluciones personalizadas con Amazon GameLift Streams:
-
Haga coincidir la relación de aspecto del dispositivo del jugador para llenar la pantalla sin usar letras ni columnas. Usa los valores de resolución habituales o la fórmula de cálculo para encontrar la resolución óptima para una relación de aspecto determinada. En el caso de los juegos móviles orientados a retratos, usa una resolución vertical para ofrecer una experiencia vertical nativa.
-
Optimice su interfaz para la experiencia de streaming. Asegúrese de que su cliente web gestione correctamente la relación de aspecto de la transmisión cuando la transmita a dispositivos móviles o tabletas.
-
Prueba tu aplicación con resoluciones personalizadas antes de implementarla en los reproductores. La mayoría de las aplicaciones se adaptan automáticamente a la resolución del monitor cuando se ejecutan en pantalla completa. Sin embargo, es posible que algunas aplicaciones no manejen correctamente las resoluciones distintas de 16:9.
-
Asegúrate de que la cámara y la interfaz de usuario del juego se adapten a la relación de aspecto. Ajusta el campo de visión de la cámara del juego para mostrar la cantidad adecuada de escena en lugar de recortar la ventana gráfica. Redistribuye o reposiciona los elementos de la interfaz de usuario para adaptarlos a la nueva relación de aspecto.
-
Evite cambiar la resolución del monitor virtual en tiempo de ejecución en su aplicación. Amazon GameLift Streams establece la resolución del monitor cuando se inicia la sesión. Las aplicaciones que la modifican durante el juego pueden producir resultados inesperados.
-
Controle la rotación de dispositivos en su aplicación y en la interfaz. La resolución del monitor es fija durante toda la sesión. Para permitir la rotación intermedia del dispositivo, recomendamos enviar la señal de rotación Comunicación por canal de datos entre una aplicación y un cliente web a la aplicación. Haz que la aplicación rote su renderización y actualice la interfaz en consecuencia.
Resolución de problemas
En la siguiente tabla se describen los problemas más comunes, sus causas y las soluciones sugeridas.
| Problema | Causa | Solución |
|---|---|---|
| La sesión no se inicia debido a un error de validación | La resolución no cumple con las restricciones | Compruebe que la resolución cumpla con todas las restricciones enumeradas enRestricciones de resolución personalizadas. |
| La aplicación se renderiza con una resolución incorrecta | La aplicación no se ejecuta en pantalla completa o se renderiza con una resolución diferente en modo ventana | Configure la aplicación para que se ejecute en pantalla completa. La aplicación puede consultar al sistema la resolución configurada. |
| La resolución de la transmisión es inferior a la esperada (misma relación de aspecto) | El límite máximo de resolución o la resolución dinámica están activos | Este es el comportamiento esperado cuando la resolución máxima o la resolución dinámica están activas. Ambas funciones reducen la resolución de la transmisión y, al mismo tiempo, conservan la relación de aspecto. Compruebe la resolución máxima o la configuración de resolución dinámica en el SDK web. |
| La resolución de transmisión es diferente de la resolución personalizada (diferente relación de aspecto) | La aplicación cambia la resolución del monitor durante el inicio o a mitad de la transmisión | La resolución máxima y la resolución dinámica no causan este problema. Este es un comportamiento conocido en algunas aplicaciones que anulan la resolución del monitor. Considere la posibilidad de utilizar una aplicación que no anule la resolución del monitor o configure la aplicación para que se renderice con la resolución del monitor en pantalla completa. |
| Aparecen barras negras en la pantalla del reproductor | La relación de aspecto entre la transmisión y el dispositivo no coincide, o la aplicación se renderiza internamente con barras negras | Comprueba si las barras negras provienen del cliente (la relación de aspecto no coincide) o de la propia aplicación. Utilice un valor de resolución que coincida con la relación de aspecto del dispositivo del reproductor o calcule la resolución óptima utilizando la fórmula enCalcule la resolución óptima para un dispositivo. |