Editar Video con Blender

Publicado el sábado, 15 de septiembre de 2012

Esta es una traducción al Castellano de mi articulo en  Blender Art Magazine. Es la primera vez que trato de acelerar el proceso de traducción con google translate. Ayuda un poco, pero no funciona muy bien, asi que si no se logra entender lo que hay abajo, avísame.

Blender se ha convertido en una excelente herramienta, para aquellos que no estaban acostumbrado a la interfaz antigua, la nueva interfaz es mucho más fácil de entender en comparación con la versión anterior a Blender 2.5.

Aunque he seguido el desarrollo y he jugado con Blender durante años, sólo hasta ahora he trasladado todo mi trabajo de producción al editor de secuencias Blender  (Video Sequence Editor – VSE). Por un lado, iMovie no me da suficiente campo para sincronizar mis pistas de audio con precisión al vídeo. Y por otro lado mi PC principal ahora se ejecuta Ubuntu Linux en vez de OSX.

iMovie es increíble para hacer ediciones rápidas sin muchas complicaciones, y la adición de una banda sonora es igual de fácil. Pero hay limites que no te deja sobrepasar. Blender por el otro lado le permite hacer casi cualquier cosa que se te ocurra, especialmente en combinación con FFMPEG. Sin embargo, puedes asumir que en algún momento te estarás arrancando el cabello buscando cómo hacer las cosas que te has propuesto.
Esto de ninguna manera pretende ser un manual, ni siquiera pretende ser una descripción de cómo hacer las cosas en Blender. Tómelo como una historia de mi experiencia al mudarme desde iMovie a esta plataforma. El manual de Blender en sí es bueno, pero tiende a estar una versión atras de la actual (lo que es lógico dada la enorme cantidad de trabajo que un manual de este tipo involucra).

Configuración de software adicional para el audio

La parte más difícil que encontré fue la gestión de audio. Aunque la instalación de Blender viene con FFMPEG incorporado, no siempre logra hacer un render del video con el audio que has incluido.

La interfaz de Blender para rendering y codificación (Output and Encoding) te permite configurar todo tipo de combinaciones de opciones que simplemente no funcionan, sobre todo cuando se trata de añadir una pista de audio. Esto sólo deja de ser molesto cuando decides separar el flujo de trabajo (workflow) de audio y el flujo de trabajo de vídeo por completo.

El conjunto de herramientas que terminé usando consiste de:

Para Video

Para Audio

Si está utilizando Windows o OSX, la lista sería más corto para audio: puedes usar Reaper ahora que tiene la posibilidad de añadir una pista de vídeo.

¿Por qué tantos programas? Bueno, lo que pierdes en facilidad de uso, ganas al tener control sobre todos los aspectos detallados del proceso de la creación del vídeo. Para dar un poco de contexto de lo que hago, voy a describir el uso de los diferentes componentes para la edición una presentación de producto que hice recientemente.

Video:

Audio:

Preparación e importación de vídeo

Asegúrate de configurar el “frame rate” del archivo de vídeo en la pestaña Dimensiones (Dimensions) antes de empezar a trabajar. Por ejemplo, si estás trabajando con Nikon D90 necesitas fijar el frame rate a 24 fotogramas por segundo y el tamaño en 1280 x 720. Al importar los clips de película al VSE se establece el frame rate de acuerdo con estos valores, sin fijarse en la características del video que estás importando. Así que si no lo haces antes de empezar,  tendrías que importar todas sus escenas de nuevo para corregirlo después.

Algunas pistas de vídeo los había convertido anteriormente para el códec de Apple intermedio, y ya no tenía acceso a los originales AVI. Para poder usarlos, deben ser exportados utilizando Apple Quicktime Pro, y la codificación H.264 multipaso funcionó para mí después de un poco de experimentación. En mi caso el audio del vídeo nunca fue utilizado, por lo que no presté atención a eso.

Luego importé todas las pistas de vídeo seleccionados a Blender, utilizando canales independientes para el vídeo y las imágenes fijas. Las imágenes fijas deben estar en los canales de mayor número y tener un canal alfa transparente para poder sobreponerlos al vídeo. Esto se hace usando la opción de “caer encima” (en: “drop over) como lo puedes ver en la figura aquí al lado. Imágenes con una resolución menor a 1280 x 720, sin embargo, a veces se meten en problemas con la configuración de des-entrelazado (en: de-interlace). Sólo ún píxel impar en los grises puede conducir a un píxel de color blanco o extraño en el render de Blender. Yo no he descubierto exactamente cómo y por qué, pero la solución que he encontrado es aumentar la cantidad de píxeles (la resolución) de las imágenes. Si no dispone de una resolución más alta disponible, pruebe a quitar (más o menos al azar) a uno de los grises de nivel más bajo en la transparencia usando Gimp. Si aciertas al que es (y hay que experimentar un poco) al cambiar solo un píxel de repente muchos, si no todos, los píxeles blancos desaparecen en el  render.

Adición de imágenes fijas

Hay una manera de utilizar Blender para mover títulos y créditos rodantes, pero no he descubierto todavía la manera de hacer eso. En lugar de eso uso una presentación de PowerPoint como base para todos los títulos, subtítulos y créditos, editados en GIMP. Para los subtítulos en lugar de utilizar una cantidad x de exportaciones desde PowerPoint, he creado una sola capa con las imágenes de subtítulos transparentes, y luego x cantidad de capas con el texto. Si exportas desde Gimp con el ajuste “exportar capas visibles” puedes exportar cada texto como un marco separado. Así puedes evitar tener que  ir y venir a PowerPoint y después otra vez a Gimp para añadir la transparencia a cada marco.

Para añadir la transparencia, la opción de sustituir un color (blanco en mi caso) para un canal alfa es lo más eficiente. Para las áreas donde  esto no se quiere (un logotipo gris por ejemplo), sólo tiene que utilizar la herramienta de selección en Gimp, y seleccionar las áreas donde el blanco se pueden sustituir de forma segura antes de hacer la sustitución.

Sincronización de audio

Posiblemente ser que tu banda sonora está lista y sólo tienes que sincronizar el vídeo a la misma, o la banda de sonido tendrá que ser editado en iteraciones para ajustarla a su película. Esto último ocurre, por ejemplo, cuando se está preparando una presentación con texto hablado.

En cualquier caso, cuando se inicia la sincronización del audio con el vídeo, asegúrate de tener AV-Sync activado. Esto le indica a Blender que tiene que seguir siempre la pista de audio aunque le toque olvidarse de algunos cuadros para seguir el paso. Una advertencia: si has incluido imágenes de alta resolución, Blender muchas veces no es capaz de mostrar los marcos a tiempo, y la sincronización con el audio será intermitente. Una forma de hacerlo es incluir una imagen de baja resolución durante la edición y volver a ponerlo en su carpeta de imágenes con la versión de alta resolución antes de hacer el render final. La otra opción es confiar en el marcador de tiempo y fijarse en la forma de onda de audio para comprobar si el sincronización es la correcta.

A continuación, carga banda sonora (yo uso el canal 0, ya que es mi referencia para la colocación del resto) y asegúrate de establecer la opción para dibujar la forma de onda (en: Draw Waveform). Si tienes fragmentos de sonido (como bloques de texto hablado o pedazos de un guión de la presentación), entonces usted puede agregar una tras otra o arrastrarlos desde el Explorador de archivos de Blender.

Usted puede hacer lo mismo con los fragmentos de su voz. Durante la edición de esta manera puedes conseguir la longitud más o menos correcta con base en estos fragmentos de voz. Así queda menos trabajo al hacer una versión final de la banda sonora con voz, porque solo tendrás que mover algunos cuadros, donde la mayoría del vídeo ya esta mas o menos en la posición correcta (véase más adelante).

Render de la banda sonora

Necesitarás una aplicación de audio como  Ardour en Ubuntu o Reaper en Windows o OSX para editar la música y la voz si se vas a utilizar una banda sonora. Lo que hice fue hacer una pista de la voz líder con Ardour y cortar los fragmentos de voz con Audacity (Audacity es ideal para ediciones rápidas de audio). Estos fragmentos luego los usé en el VSE de Blender. Con estos cortes pude establecer la duración de los vídeos y fotos, y luego decidir como editar banda sonora final.

Para la edición final, me usé una versión muda de la película en un archivo que puede ser leído por xjadeo (o Reaper si trabaja en Windows / OSX. No necesitas una versión de alta calidad del vídeo, sólo lo suficiente para ver todos los marco. Depende de la configuración y velocidad de computador cual resolución aún permite trabajar con suficiente poder de procesamiento para editar el audio. Una forma es reducir el peso de su hacer es reducir el tamaño del marco a la mitad en Blender, en este ejemplo, exportar una película con resolución de 1080 × 720 a una resolución de 540 × 360.

Si trabajas en Ubuntu lo mejor es manejar todo el transporte con Jack, por lo que es necesario ajustar Ardour para que sincronice con la cantidad de marcos por segundo correcta (en Opciones -> FPS). Mi mayor reto ha sido el hecho de que sólo hay 24 cuadros por segundo. Y eso no siempre permite una sincronización precisa. No hay forma de evitar esto n una pista de audio de largo, las 24 tramas son fijos. Para musica esto puede ser un reto, mas sin embargo, voz se puede cortar y reajustar con mayor precisión.

Después de su última edición de la banda sonora, importarlo de nuevo en el entorno VSE Blender. Asegúrate de cambiar el punto de inicio de la pista de audio, o tendrás que transponer todos los marcos para que coincida con el principio. La longitud total de la película puede ser ser diferente a la banda sonora, quizás porque has creado unos marcos finales con los contribuyentes. De cualquier forma, trata de asegurarte que la longitud de los dos es idéntica (hasta donde es posible).

Esto tiene que ser hecho, porque para combinar el audio y la pista de vídeo en FFMPEG tanto el sonido y el archivo de vídeo necesitan tener exactamente la misma longitud. Hay una opción para indicar a FFMPEG de utilizar el más corto de los dos archivos. Pero esto solo funciona para solucionar pequeñas diferencias de longitud entre audio y vídeo (menos de 1/24 segundos).

Rendering

Una vez que has hecho todo esto, lo mejor es comenzar con un render de la película en un formato sin pérdidas. Te da una base de archivos que servirán de base para cualquier formato de archivo al cual necesitas exportar tu producto final (y estos pueden ser muchos – y una vez que se hace no lo querrás hacer de nuevo, a menos que tengas un computador muy veloz).  A pesar de que Blender no parecen hacer uso de todos los núcleos disponibles, para FFMPEG entre procesadores más tienes en tu GPU, mejor.

Yo usa el siguiente llamado a FFMPEG

ffmpeg -analyzeduration 1000000000 -i ../AudioFiles/myFinalAudioRender.flac -i myFinalVideoRender.avi -ab 320k -ar 44100 -vcodec libx264 -preset veryslow -tune zerolatency -threads 0 myFinalMovieWithSound.avi

La opción clave aquie es -tune zerolatency lo cual mejorará la calidad de la sincronización de audio a su película.

Nota final

Me tomó reunió por lo menos dos semanas para acostumbrarme a esta forma de trabajar. Pero ya no lo cambiaría por nada. La mejor parte es la interfaz de Blender, que te permite definir exactamente lo que ves en tu pantalla. Durante la edición tengo la forma de onda de mi archivo de audio en la esquina izquierda, por ejemplo, donde el cursor de reproducción (la barra verde que indica que el cuadro actual) es visible a través tanto en las secuencias de vídeo como en el cuadro con el audio.

También me doy cuenta de que hay mucho, mucho que aprender. En lo anterior ni siquiera he mencionado el uso de nodos de composición para manipular pistas de vídeo. O las posibilidades de combinar vídeo con animaciones 3D. Como dije al principio, si se trata de una edición rápida no te molestes con Blender. Pero si quieres ampliar tu caja de herramientas en un entorno creativo y desafiante, entonces Blender es el camino a seguir.