miércoles, 12 de agosto de 2015

Grabación de Gameplay's via software - I) Fundamentos (Update 13/08/15).

Update: 13/08/15.

Hola a todos! Voy a empezar a subir una serie de entradas relacionadas con el encodeo y grabación de Gameplays via software (ej. FRAPS). Intentaré abordar la mayor cantidad de información posible, contar mis experiencias, responder preguntas y de ser necesario iré actualizando el (los) hilo (s) con información nueva, asi no se me hace tan pesado de hacer y además es más simple de leer.

Youtube al dia de hoy sigue en pleno auge, tanto es asi que para que se hagan una idea, se estima que cada 1 Minuto se suben cerca de 300 Minutos de video, buena parte de ellos son relacionado con los videojuegos, gameplay's, guias, etc. Muy pocos contamos con "hardware dedicado" para ello (tarjeta de tv, capturadora, etc) teniendo que recurrir a software para cumplir tal tarea, pero como todo tiene sus ventajas y desventajas:


Ventajas.

- El software de captura es mucho más asequible, en algunos casos hasta gratis, en comparación con una capturadora real.
- Mucho más flexible a la hora de escoger resoluciones, codecs, bit-rate, frame-rate, etc.
- Se puede conseguir una calidad excepcional en algunos casos (lossless), ideal para editar posteriormente.
- Muchas opciones disponibles, adecuándose más a nuestro hardware.


Desventajas.

-  Grabar via software, aún en la actualidad, es una tarea muy costosa para el CPU, GPU y HDD, sobretodo en juegos modernos.
- Para lograr una captura fluida es necesario sobrepasar los requerimientos recomendados de cada juego, esto se debe a que los programas de captura están muy vinculados con el GPU, haciendo uso de ellos.
- A veces resulta muy complicado alcanzar los 1080p@60FPS sin ninguna caida de fps (fps drops).
- Hay juegos que son "timidos" y se niegan a ser grabados via software.



Glosario.

Antes de seguir con en el tema, es muy importante saber que significa cada cosa, estos nombres se suelen repetir en la mayoria de programas:

- Contenedor (File type): Esto indica el formato en el que se guardará (o está guardado) el video. Es importante no confundir con codec. Por ej, podemos tener un video grabado en H264 pero con extensión .avi, en este caso el contenedor seria AVI (Audio  Video Interleace). Actualmente MP4 es más compatible y recomendado.

- FPS/Frame rate: Indica la tasa de cuadros por segundo a la que se grabará el video (o se hará el intento) a veces el valor viene prefijado, iniciando con 5fps hasta los 120fps, mientras mayor sea la cifra, más fluido será el video, pero a la véz mucho más demandante para el PC en general.

- Frame Rate Mode: En la actualidad se usan dos tipos* de frame-rate; VFR y CFR

*En algunos programas no podremos escoger entre uno y otro.

VFR (Variable Frame Rate): Esto significa que el programa/codec detectará de manera automatica cuando el video no necesita un frame-rate fijo para ahorrar recursos del sistema. Suele ser menos demandante, pero a veces falla catastroficamente* y suele llevarse mal con editores de video del tipo Adobe Premier, SONY Vegas, etc.

*En teoria si un PC no es capáz de lograr el frame rate objetivo (por temas de poder de procesamiento) se omitirán fps para evitar desincronización de audio, pero la autodetección suele fallar, y aún con HW potente se omiten fps, un real problema a veces.

CFR (Constant Frame Rate): Tasa de frames constantes, en otras palabras, si lo fijamos a 60fps no bajará nunca de ese framerate (si es que tenemos el suficiente poder de procesamiento) pero por esta razón es considerado ineficiente, ya que aún en imagenes fijas se mantendrá a la tasa de cuadros objetivo, resultando en archivos más grandes, pero es mucho más compatible con los editores y es lo recomendado si se tiene la suficiente fuerza bruta.

- Codec: Abreviatura de Codificador/Decodificador, ahora mismo tenemos muchos tipos para escoger, los más populares son H264, MPEG-2, MJPEG, RGB24, etc. Cada uno tiene sus cualidades, contando con su propio algoritmo de compresión y calidad.

- Bit-Rate: La Tasa de Bits es expresada en Kbps o Mbps, mientras más mejor calidad, pero a la véz mayor tamaño de archivo. No se conoce un limite conocido ya que dependerá de la fuente y de la configuración usada (resolución, fps, etc). En juegos con grandes escenarios y con mucho movimiento en pantalla, sumado a ciertos codecs, podremos alcanzar una "ridicula" cifra de 1300Mbps - 2000Mbps, todo un "overkill"!, sobrepasando por mucho nuestro limite, causando severos fps drops, desincronización visual y de audio, entre otros.

- Tipo de compresión: Hay codecs que usan distintos tipos de compresión, algunos son lossless* (sin perdida de calidad) otros son lossy (compresión con perdida de calidad), la elección dependerá de nuestro PC y de el objetivo a lograr.

*Esto no es tan cierto, por ej FRAPS es considerado lossless, pero la verdad es que si aplica compresión, pero la calidad final es muy buena.

Por ahora esto es todo, este tema dará para mucho, tengo mucho que comentar, aprovecharé de desmentir mitos y dar algunas recomendaciones sobre que programa usar, si tienen alguna duda o sugerencia no duden en escribir en los comentarios.

Salu2 - Darkness Knight.

3 comentarios:

  1. Estaba esperando este post hace mucho meses, se agradece. Siempre quise subir gameplays a youtube pero mi pc no se la banca.

    Mi pc:
    Windows 7 - 64
    Amd Phenom II 3.0Ghz (Phenom II x4 - Activando 2 nucleos)
    4GB Ram
    Mother Asus M5A88-M (AM3R2)
    AMD Radeon HD 6770 (Sapphire)

    Me funcionan todos los juegos nuevos a la minima en off con todos los programas cerrados, por ejemplo Mortal Kombat X y The Witcher 3.

    ResponderEliminar
  2. Son complicados de capturar los juegos nuevos, ya que suelen ser CPU dependientes, pero no es imposible, en el peor de los casos se puede grabar a una resolucion menor (720p) y luego reescalarlo a 1080p ya que Youtube ocupa mejor calidad para ese estandar de video, saludos!.

    ResponderEliminar