Customizando la Xiaomi Yi


Está claro que la Xiaomi Yi es una buena cámara pero, como en muchos casos, la comunidad ha llevado el dispositivo aún más allá de lo que el fabricante ha previsto. Tenemos a nuestro alcance la posibilidad de grabar con mayor calidad y de hacer un ajuste más fino de la imagen.
Tras estar consultando mucha de la información disponible online, he preparado este post para recopilar lo más interesante. ¡Manos a la obra! 📸

La calidad del video y tarjeta de memoria
Nos vamos a centrar en aumentar el bitrate del video resultante para que sea de mayor calidad, lo que implica escribir más datos para almacenar el video, por lo que nos encontramos dos efectos secundarios:
– El archivo final ocupa más espacio en la microSD
– Necesitamos que la microSD sea más rápida para que la escritura de datos no sea un cuello de botella y no se produzcan errores y saltos.

Una tarjeta de memoria lenta provocará que la cámara no pueda, entre otras cosas, escribir el video del tirón. Está programada para que en estos casos, divida el video en trozos, donde se rebajará el bitrate hasta estar en unos niveles que la tarjeta pueda manejar, con lo que perdemos cualquier ventaja del firmware.
En este sentido, yo dispongo de una Kingston SDHC de 32GB Clase 10 U1 que ahora mismo está bien de precio en Amazon, pero no es la más rápida. Yo buscaría una tarjeta como la Samsung SDXC Clase 10 U3 de 64GB, que ofrece unas velocidades de escritura muy superiores aunque no la he podido probar y su precio es bastante alto aun.

¿Como de rápida necesito que sea mi tarjeta? Lo cierto es que la velocidad cambia mucho de unos modelos a otros, y las unidades de marcas raras son muy pero que muy lentas.
En general se suele hablar de que necesitaremos una tarjeta de Clase 10 para grabar video 1080p; pero incluso dentro de estas hay diferencias. A esta resolución, digamos que una calidad alta partiría de 35 Mbps. Para la resolución 2K sí sería recomendable utilizar tasas mayores.
Con mi unidad no he tenido problema en grabar video incluso a un bitrate de 40 Mbps, aunque se producían cortes a 45 Mbps. Con una microSD algo más rápida se pueden alcanzar los 50 Mbps. No está muy claro el límite de la cámara a la hora de grabar; pero también implica que la cámara se calienta sensiblemente más. Ándate con cuidado.

Aquí está una muestra de video Full-HD 1080p @ 60 fps y un bitrate de 40 Mbps (aprox.):

El formato 2K
Con las últimas versiones de firmware, hay una opción de grabar en 2K. Esto puede resultar un poco confuso ya que en teoría la resolución 2K es 2048×1080. Sin embargo, la cámara entrega video a 2304×1296, lo que han denominado algo así como 2,3K.
Y para terminar de rizar el rizo, una plataforma como Youtube ha decidido que para ellos el 2K son 2560×1440 (lo que muchos denominan coloquialmente 2,5K).

Muchos usuarios se quejaban de que al compartir sus videos 2,3K en Youtube, la plataforma solo los publicaba como 1080; pero por suerte hay una modificación que nos permite escalar la resolución para llegar a la que queremos.

En esta otra captura se puede ver el video a 2,5K 1440p @ 30 fps y un bitrate de 40 Mbps (aprox.):

Método 1: utilizar un firmware no oficial
Este método es muy simple. Localizamos el firmware con el que queremos flashear nuestra cámara y lo descargamos. Tendremos un archivo llamado “firmware.bin” que hemos de volcar en la raíz de nuestra tarjeta SD. A continuación, encendemos la cámara con la batería cargada (o enchufada a la corriente) y oiremos un pitido por segundo, aproximadamente durante un minuto. Esto nos indica que se está escribiendo el nuevo firmware en nuestro dispositivo; y la cámara se apagará al terminar.
Listo, ya podemos borrar el archivo que hemos copiado a la tarjeta.
En particular, hay que descargar el firmware para nuestro modelo exacto (el mío es el Z23L), que puedes ver bajo la batería:

He probado algunos y el que más me ha convencido ha sido este: http://grupoxiaomiyiaction.foroactivo.com/t35-firmware-mod-ver-1-2-13-bitrates-40-35-30-y-previsualizacion-by-laureano-para-sn-z23l

Además de aumentar los bitrates, los firmwares permiten otros pequeños ajustes, como transferencia de datos más alta entre la cámara y el móvil para una mejor previsualización y descargas más rápidas de la cámara al teléfono.

Si no encuentras un firmware que se adapte a lo que busques, siempre puedes volver al original u optar por el segundo método.

Método 2: Scripts
Quiero aclarar que no es exclusivo usar un método u otro. Yo he flasheado con un firmware para obtener un bitrate de 40Mbps, pero a través de un script puedes obligar a la cámara a hacer un ajuste muy fino de los parámetros de la imagen, y también hay otras opciones muy interesantes.
Un script es un archivo de texto plano (formato UNIX, así que mira bien como lo editas) que se coloca en la raíz de la tarjeta SD y se lee automáticamente cada vez que la cámara se enciende. Debe llamarse “autoexec.ash” y terminar con una línea en blanco.

He recopilado diferentes comandos y configuraciones y he reunido lo más importante en mi propio script, que puedes ver aquí abajo:

He tratado de documentarlo bien y aunque esté en inglés, creo que se entiende perfectamente cada comando. Los primeros están destinados a ajustar la resolución. En mi caso, he seleccionado 2K en la configuración de la aplicación para luego cargar el script y que se hiciese el reescalado a 2,5K. Ojo, porque solo funciona en formato NTSC según parece, y debes antes configurar el 2K en la aplicación.
Los últimos comandos realizan pequeñas operaciones:
– Aumentar el tamaño máximo de los ficheros que se escriben a 4GB
– Escribir las imagenes en formato RAW (sin compresion, útiles para edición fotográfica avanzada, aunque hay que procesar los archivos a DNG)
– Eliminar los archivos de miniatura cuando se enciende la cámara (para liberar espacio)
– Bajar el volumen de los pitidos
– Emitir una señal al terminar de cargar el script

Pero esto no es todo. Trasteando por ahí, me he terminado por hacer un ajuste algo más fino de la saturación, el gamma, la nitidez, el ruido, etc…
Para ello he necesitado también un archivo llamado “coring.txt” que también debe ir en la raíz de la tarjeta SD. En este archivo ZIP encontrarás ambos. Recuerda que he hecho este script como si fuese una plantilla, así que tal vez quieras ajustar los parámetros de la imagen a tus necesidades personales:
Script Xiaomi Yi (mega.nz)

Y adelante!!
📸📸📸

Anuncios

2 pensamientos en “Customizando la Xiaomi Yi

  1. Hola buenas quiero editar tu script y ponerlo a 1080 60 manimos mbs y los archivos lo mas grandes posibles para evitar cortes. Como puedo editarlos ando un poco perdido? En la segunda captura dices que es 2,5k a 60 fps… son reales? En ese caso como los pondría?. Perdona por tantas preguntas y un saludo.

    Me gusta

    • Hola Adrián.
      El tamaño de archivo más grande que podrás emplear está limitado por el formato de la tarjeta de memoria (la cámara necesita una tarjeta en formato FAT de 32-bit), y ese límite es de 4GB.
      El bitrate más alto que podrás utilizar es de 50 Mbps y para grabar 1080p a 60 fps tendrás que modificar el código para que sea:

      #1080p@60fps 50Mbps
      writeb 0xC05C1EE2 0x4248
      #archivos 4 GB
      writew 0xC03A8520 0x2004

      Se me coló un error explicando la segunda captura, ya que ahí el número de frames por segundo es de 30 fps, y no 60. Lo corregiré de inmediato. Lo que la cámara hace es un escalado en tiempo real desde 2304×1296 hasta los famosos 2560×1440 que Youtube utiliza, interpolando los píxeles que faltan a partir de sus píxeles vecinos.
      El script que he publicado debería hacer que tu cámara saque videos a esta resolución y con un bitrate de 40 Mbps, que no está mal.
      Espero haberte orientado. Gracias por tu comentario.

      Me gusta

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s