La Inteligencia Artificial (IA) está revolucionando la forma en que creamos contenido y el video no iba a ser una excepción.
Gracias a la IA, los profesionales del marketing y de la comunicación pueden producir contenidos mucho más rápido y presentarlos a sus respectivas audiencias de manera atractiva a una fracción del coste.
Y con los videos está sucediendo lo mismo.
Todavía resulta un poco complicado pero… ¿Quién se acuerda ya de los tiempos en los que era necesario una cámara y un set de televisión para grabar tu programa?
Eso pasó a la historia hace 10 años.
Y con total seguridad esto puede ocurrir con los estudios virtuales y programas de edición de video con la llegada de la IA.
Y es que, en muy poco tiempo, casi con total seguridad no va ser necesario siquiera tener grabadas las imágenes para producir videos de mayor calidad a su audiencia en menos tiempo.
De hecho, ya podemos contar con herramientas de IA que nos permiten convertir texto en imagen, generar audio de forma automática y editar texto con mayor eficiencia.
¿Qué nos dirías si, además, tuvieras una herramienta que pudiera hacerlo todo y de manera automática?
Pues ya es posible gracias a este pequeño script que te va a permitir generar videos con IA en piloto automático.
Ingredientes: Qué necesitas para la creación de un video con inteligencia artificial
Pero ¿Cómo vamos a crear este video de forma automática?
Vale para ello es necesario encadenar tres APIs distintas:
- A la hora de crear un video, lo primero que necesitaremos es el contenido. Para ello, generamos el texto con la API de OpenAI y el modelo GPT 3. Aunque también podemos optar por GPT u otro modelo superior. Existen otros modelos alternativos que puedes utilizar, como por ejemplo, Bloom.
- Después convertiremos ese texto en voz. Para ello, utilizaremos Amazon Web Services (AWS), una de las APIs más comunes y usaremos su biblioteca de texto a voz, Polly. Las principales ventajas de Polly frente a otras herramientas es su bajo coste y muy sencilla de utilizar. Porque es fácil de usar y económico.
- Por último, transformamos el texto en imágenes. Emplearemos imágenes estáticas, no generaremos un video, aunque están ocurriendo muchos avances en este campo. Para ello, usaremos la API de Replicate y el modelo StyleGAN.
Aquí tienes un esquema con las funciones que vamos a usar, la API y el modelo concreto.
Cómo hacer videos con inteligencia artificial
El input para nuestro video será un prompt en el que le especificaremos la temática de nuestro video.
Le indicaremos a GPT-3: «escribe un guión para un video sobre la generación de videos con Inteligencia Artificial».
El modelo GPT3 nos devolverá un guión y le diremos a Polly: «coge este texto y genera una voz».
Esto nos dará un documento de audio, ahora nos toca hacerle una petición a Replicate: «Por cada frase, separa el texto en puntos y genera una imagen adecuada sobre ese texto».
Esto nos dará una lista de imágenes. Luego, juntaremos el audio y las imágenes en un video final.
Funciones del script de contenidos para categorizar palabras clave:
Ahora, vamos a explicarte qué tareas ejecuta el script que ha programado nuestro Head of SEO, Alvaro Peña de Luna, basado en el script generado por @DavidGarciaSEO
Es cierto que a veces aparecen imágenes algo "raras" pero es cuestión de que la tecnología avance o probar con otra API diferente a Dall-e.
— David García (@DavidGarciaSEO) February 10, 2023
El script lo tienes aquí (no funciona en colab): https://t.co/MSsTmYhB1M
Te recomiendo ver antes este vídeo: https://t.co/S9fXlCXMw8
El Colab realiza una serie de tareas específicas que te describiré a continuación:
- Recoge un prompt: El Colab recoge un prompt o una sugerencia de texto que se proporciona para generar contenido.
- Genera texto: A partir del prompt, el Colab genera automáticamente un texto utilizando modelos de lenguaje artificial entrenados previamente.
- Le pone voz: Luego, el Colab utiliza un programa de síntesis de voz para convertir el texto generado en una voz sintética.
- Crea las imágenes para cada una de las frases: Para cada una de las frases generadas, el Colab crea imágenes que corresponden a la visualización de las mismas. Estas imágenes pueden ser gráficos, ilustraciones o cualquier otra imagen que sea relevante para el contenido generado.
- Concatena las imágenes: Después, el Colab concatena todas las imágenes generadas para cada frase y las une en una sola imagen que representa todo el contenido generado.
- Crea un vídeo: Finalmente, el Colab utiliza un programa de edición de video para crear un video en el que se muestra la imagen generada para cada frase junto con la voz sintética que las lee.
Pasos previos a la ejecución del script para generación de video con IA
Lo primero que debes hacer es abrir el código de Python en tu navegador utilizando Google Colab.
Ahora, debemos tener acceso a las tres APIS que vamos a necesitar. Si eres seguidor de nuestra lista de IA en el canal de YouTube o de nuestro blog, el primer acceso ya lo tendrás creado.
- API OpenAI
- Acceso y contraseña de Polly
- API de Replicate
Una vez tengamos todas ellas, deberemos introducirlas en las siguientes líneas de código:
Vamos a nuestro Colab y ejecutar script
- Creamos un cliente para la API de OpenAI , utilizando bibliotecas estándar de Python para el uso de APIs.
- Escribimos el prompt inicial en la línea 16 del script de Phyton.
- Proporcionaremos las claves de acceso necesarias para el input y output de la API y elegimos los parámetros a utilizar. Recuerda: puedes jugar con el modelo, la temperatura, número de tokens máximo a utilizar…
- Con el texto del prompt, se generará un audio gracias al cliente que hemos utilizado de Polly, el cual se guardará en formato MP3.
- Calcularemos la duración y separaremos el texto en frases para crear una imagen por cada una de ellas. Con estos datos, se determinará la duración de cada imagen.
- Utilizando la API de Stable Difusión de Replicate, se generará una imagen para cada fragmento de texto, ajustando los parámetros según sea necesario.
- Se verificará que todo esté correcto y se guardará cada imagen en el contenido.
- Concatenamos las imágenes con la duración establecida y agregamos el audio correspondiente.
- El resultado se guardará en formato MP4 y se podrá descargar.
Este contenido se genera a partir de la locución del audio por lo que puede contener errores.
(00:00) muy buenas bienvenidas y bienvenidos a un nuevo vídeo de social web yo soy Luis Fernández y continuamos con la serie de vídeos sobre Inteligencia artificial y automatizaciones explicando Algo súper chulo en este vídeo La verdad vamos a hacer un Script que a partir de un Chrome que generemos nosotros en el que marquemos una temática concreta nos va a generar un vídeo completo con imágenes contenido y voz narrado por voz simplemente con darle el click esto es un Script generado por Álvaro Peña y está basado en un Script generado por David García
(00:29) tenéis en el vídeo y en la descripción de este propio vídeo los háms de Twitter para que los puedas seguir ya que publican cosas chulísimas de Inteligencia artificial si os interesa el tema no falléis por ahí y también recordaros que tenemos una serie de vídeos de Inteligencia artificial una Playlist aquí en el Canal de social web os recomiendo echarle un vistazo porque este vídeo es un poco más complejo hay más piezas moviéndose en este vídeo que los anteriores por lo que si queréis una explicación paso a paso de cómo ejecutar
(00:56) un Collage que es python etcétera tenéis los vídeos anteriores son también acciones bastante básicas pero súper chulas y que sirven para una base muy buena a la hora de hacer este tipo de tareas Así que os recomiendo verlos y vamos a ir a entramos en detalles ya básicamente vamos a generar un vídeo de forma totalmente automática cómo vamos a hacer eso vamos a encadenar tres apis distintas os he preparado aquí un esquema ya que este vídeo es un poco más complejo Y tenemos aquí una columna en la que nos marca la función que queremos realizar
(01:27) otra la aplicamos a utilizar y otra el modelo concreto Entonces qué necesitamos para un vídeo necesitamos primero el contenido de que va a hablar el vídeo entonces necesitamos un programa de generación de texto estamos a hacer con la Api de openiye y el modelo va a ser gp3 en este caso siempre podéis utilizar gpt o un modelo superior si lo veis más adelante en el tiempo incluso modelos alternativos como Bloom la cosa es que necesitamos generar texto luego tenemos que pasar ese texto a voz para eso vamos a utilizar
(01:55) aws que es Amazon web Services que también es otra de las apis no de las apis de los servicios más habituales de internet por lo que nos vendrá bien saber utilizarlo y vamos a utilizar poli que es su librería de textos Pitch de texto a voz existen otras está viendo Muchos avances sobre esta whisper por parte de openila y también que no hace texto a voz sino voz a texto pero esperad que haya grandes mejoras en este sentido en este caso vamos a utilizar poli porque es bastante fácil de utilizar y económica y finalmente
(02:24) estamos pasar ese texto a imagen necesitamos generar unas imágenes en este caso vamos a utilizar imágenes estáticas no vamos a generar un vídeo pero está viendo Muchos avances por ahí así que estás atentos a un futuro porque igual podemos sacar una modificación para ello vamos a utilizar la Api de replicate y el modelo de estilo difusión como veis son tres apis que vamos a tener que encajar en nuestro caso el input para nuestro programa Va a ser un inicial en el que le digamos la temática de nuestro vídeo va a ser por ejemplo
(02:52) escribir un guión para un vídeo sobre la generación de vídeos con Inteligencia artificial es un poco meta vamos a hacer un vídeo sobre generar vídeos Pero puede quedar muy chulo este pront el único que vamos a tener que escribir esto se vamos a pasar a gpt3 y nos va a dar un resultado un guión en este caso sería la generación de vídeos con Inteligencia artificial se está convirtiendo en una herramienta muy utilizada etcétera etcétera tenemos el texto y hacemos con él primer lugar se lo amasamos a wspoly decimos Oye coge este texto y generar
(03:23) una voz esto nos va a dar un documento de audio Aquí tengo el ejemplo no lo voy a dar el Play porque os quiero enseñar el resultado completo pero tendríamos el audio guardamos el audio y por otra parte con el mismo texto se vamos a pasar a este igual difusión a través de réplicate y vamos a decir vale por cada frase vamos a separar el texto en puntos generarnos una imagen adecuada sobre este texto nos va a generar un listado de imágenes y vamos a nuestro audio nuestras imágenes y lo vamos a juntar en un vídeo
(03:52) final y este sería el resultado Aquí tienes un ejemplo le voy a dar al Play un poco para que veáis Cómo suena la generación de vídeos con Inteligencia artificial y a se está convirtiendo en una herramienta de creación de contenido cada vez más popular Esto se debe a que la ia ayuda a los creadores de contenido a crear videos más rápido y con mayor precisión la ia puede ayudar a los creadores de contenido a editar animar y componer vídeos con menos esfuerzo no está súper optimizado aquí podéis meterle muchas variedades en mucho tipo
(04:25) de a la hora de generar imágenes hay un curro bastante Interesante como si habéis estado siguiendo Así un poco en un vídeo es casi un arte por sí mismo os voy a enseñar replicate aquí tenemos su web principal y aquí tenéis el modelo stable difusión dentro de replicate tenéis un playground Esto va a estar enlazado dentro del Script de python en el que podéis incluir el Front aquí por ejemplo le he puesto el United video por YouTube es decir una guía haciendo vídeos para YouTube Este es el resultado que me ha dado Pero
(04:56) como podéis ver el pron puede ser mucho más grande ya sabe Los prons de sobretener sobre todo en difusión se beneficia mucho de Añadir muchos términos tipo HD y similares se benefician mucho también de Añadir pruebas negativos podéis jugar aquí con un montón de valores una vez le daréis clic a submit y aquí podéis incluir haciendo pruebas antes de ejecutarlo veis que se está ejecutando para ver el resultado y ver si os van cuadrando los vídeos o no vamos a esperar un poquito de carga que va bastante rápido Ahí está y aquí tenemos la imagen
(05:35) no es muy buena la verdad el pront es un pron improvisado rápidamente los de nuestro vídeo son algo mejores la verdad es que a mí me parecen una pasada sobre todo para este tipo de vídeos explicativos tener imágenes así abstractas relacionadas está muy muy chulo y en dentro de réplica y te aprovecho ahora para enredarme un poco tenéis un montón de modelos una vez aprendes utilizar esta app y generéis vuestra aquí tenéis por ejemplo este igual difusión pero tenéis blip 2 que os permite responder preguntas sobre
(06:02) imágenes tenéis whisper de opening también si nos gusta el lápiz de opening tenéis acceso whisper aquí tenéis un montón de modelos y está la verdad que es una startup porque está funcionando muy bien así que yo le echaré un ojo Y tenemos el vídeo final vamos a pasar al código y si queréis hacemos un repaso rápido y cómo ejecutar todo como siempre se Ejecutan celda celda en este caso vamos a tener Solo dos celdas una para instalar todas las dependencias veis que utilizamos la librería de python de openite esta librería nos va a permitir
(06:34) generar el vídeo es una librería súper utilizada ff Tenemos también boto3 que es para conectarnos a Amazon web Services tenemos Pilot también para manipular imágenes tenemos la librería de replicate Aquí vamos a importar todas las librerías necesarias junto con algunas ya incluidas en python y en esta sección que veis que pone datos a rellenar tenemos todo lo que voy a necesitar tocar solo estas líneas de código la Vais a tener que modificar aquí metéis el pront inicial a continuación vuestra piropenia y vuestra Access
(07:12) con todos estos resultados aquí tenéis los enlaces para generar vuestras claves necesarias simplemente los generáis los utilizáis y recordad que todo esto tiene un límite y cuentas gratuitas pero no Vais a poder generar de forma ilimitada gratis Vais a tener que meter una tarjeta de crédito y una vez rellenéis todos estos datos el resto es código le podréis dar al play y se ejecutaría un resultado final Que si vamos aquí os descargaría un título llamado vídeo si hay punto mp4 y ya tendríais un resultado como el que yo
(07:43) tengo aquí esto lo podéis automatizar e ir metiéndolo dentro de un bucle e iterando los proms iniciales y pues generar decenas de vídeos si queréis y herramientas tomaros esto como una base Esto es lo más básico que se puede hacer a partir de aquí podéis ir mejorando el código y consiguiendo cosas chulísimas y para terminar un poco finalmente os voy a explicar lo que hace cada parte del código Así un poco por encima Para los que tengáis curiosidad o los que queráis modificarlo para que sepáis dónde podéis ir tocando
(08:12) una vez rellene los datos por aquí empezamos con la llamada a lápiz de 3 esto como os dije antes podéis actualizarlo a chat gpt tendréis que cambiar un poco en formato incluyéndole en Jason lo que sería el agente de echar gpt más el texto anterior más la respuesta que quieres que te genere y podrías ir encadenando incluso hay mucha no me voy a enrollar ahora Pero sabes que Concha gpt hay mucha chicha es más barato y podéis optimizarlo bastante aquí siempre puedes jugar también con la temperatura acordaos que es como el
(08:47) determinismo del modelo la podéis bajar o subir a vuestro gusto y podéis jugar con el número de tokens a continuación tenemos el resultado Esto va a ser la respuesta cogemos el formato correcto y nos quedamos Únicamente con la respuesta con el texto la respuesta y a continuación creamos un cliente para la Api de poli es muy similar si os fijáis el uso de apis sobre todo aquí en python que está estandarizado en librerías es muy similar elegimos lo que vamos a utilizar en este caso da 23 en este caso poli tenemos unos unas Kiss de
(09:20) acceso en este caso en opening Ya lo hemos incluido anteriormente Déjame ver donde aquí se fijáis opened y la colocamos pero básicamente hay que queremos de la Api en las claves de acceso y si hay un input en la Api en este caso por ejemplo le vamos a pasar aquí esto es el cliente pues vamos a crear cliente Mira le pasamos nuestro texto el texto generado con el link que queremos y el app que queremos Pero siempre va a ser unos inputs y unos deseados y un tipo de autentificación entonces con esta llamada al cliente que hemos creado la
(09:57) app nos va a generar el audio aquí guardamos el audio en formateamos un poco de poder utilizarlo en python lo abrimos y nos lo guardamos en un fichero voz. mp3 a continuación calculamos la duración y lo que vamos a hacer es separar el texto que teníamos de antes por puntos lo que os contábamos hacer una imagen para cada frase y con estos dos datos de duración y fragmentos vamos a crear la duración por imagen vamos a guardarnos ese dato para decirle luego en la creación del vídeo Oye queremos que cada imagen dure
(10:30) tanto tiempo Aquí vamos a hacer la última llamada que nos queda vamos a llamar a estability stable difusión dentro de replicate vamos a una versión en concreto del modelo y por cada uno de los fragmentos de texto que hemos generado le vamos a pasar ese fragmento de texto con una serie de parámetros que como os dije antes lo mejor es que os vayáis aquí y juguéis un poco vosotros De antemano y probéis las medidas que queréis hacemos toda esa gran llamada vamos a mostrarnos la imagen para que la veamos a la medida que se van generando
(11:06) hacemos una serie de peticiones y de comprobaciones para ver que está todo correcto Y si nos devuelven un 200 nos vamos a guardar la imagen guardamos la imagen con nombre imagen ella y aquí por cada repetición vamos a sumarle uno es decir va a ser la imagen ahí hay uno para segunda repetición Es decir para el segundo texto la imagen ahí hay dos etcétera y lo guardamos en nuestro contenido verificamos que está todo creado correctamente y finalmente vamos a hacer la creación del vídeo para ello vamos a hacer si os fijáis ahí
(11:39) aquí tenemos una variable llamada vídeo en la que hacemos un concatenible videoclips vamos concatenando las distintas imágenes con la duración que hemos marcado y para terminar le añadimos el audio vídeo entonces audio y todo esto lo guardamos en formato con los codes h264 en MP4 marcamos los fps Le ponemos el nombre y nos lo guardamos y Finalmente nos lo podemos bajar Y eso sería todo es un poco denso nos como siempre pyzone es un lenguaje bastante comprensible si te controlas un poco de inglés y vas leyendo poco a poco puedes inferir lo
(12:16) que hace cada cosa y eso es todo aquí tenéis El ejemplo del vídeo dejaremos todo escrito en un post entre la web social web por si queréis revisarlo con calma Si el vídeo es muy rápido y ya sabéis cualquier duda nos la podéis comentar en los comentarios y estamos para ayudaros un saludo y muchas gracias por vuestro tiempo
Descarga Google Colab y crea tus propios videos
Este es el script que hemos utilizado en el video anterior: Accede aquí al Google Colab
Pruébalo y dinos qué te parece.
O mejor aún, comparte tu trabajo con nosotros, para que podamos ver los resultados en directo.
Este el resultado obtenido
El resultado del video no es para echar cohetes porque el prompt utilizado en este caso: “AI generating videos for youtube” es muy pobre.
Ten en cuenta que los prompts empleados en el script de colab están mucho más elaborados y te darán mejor resultados que los vistos en el video tutorial que hemos grabado.
Lo importante, en definitiva, es quedarte con la idea de cómo es posible generar un video en automático.
Además, si sabes de python, puedes tocar nuestro script y mejorar el prompt para obtener un video mucho mejor elaborado para tus objetivos.
Co-CEO y Head of SEO de iSocialWeb, una agencia especializada en SEO, SEM y CRO que gestiona más de +350M de visitas orgánicas al año y con una infraestructura 100% descentralizada.
Además de la empresa Virality Media, una empresa de proyectos propios con más de 150 Millones de visitas activas mensuales repartidos entre diferentes sectores e industrias.
Ingeniero de Sistemas de formación y SEO de vocación. Aprendiz incansable, fan de la IA y soñador de prompts.