GIF en el que puedes escuchar el sonido. ¿Cómo hacer un GIF a partir de un vídeo? ¡Instrucciones detalladas! Usando el servicio Buildgif

« Lo que permitió que el GIF permaneciera fue la animación en bucle que agregó Netscape. Si Netscape no hubiera añadido soporte GIF a su navegador, GIF habría muerto en 1998»

Alejandro Trevor,
jefe de equipo Creación de GIF en CompuServe


El formato GIF celebró en junio de este año su 25 aniversario y hoy es el más antiguo formato gráfico, que se distribuye en Internet. Cuando pasas el fin de semana viendo divertidos GIF animados, te das cuenta de que algunos de ellos serían mucho mejores con sonido. Todas las soluciones actuales para bucles de animación con sonido (por ejemplo: coub.com, gifsound.com) sugieren abandonar el GIF, pero esta no es una opción. Y decidí sacrificar la visualización de GIF durante el fin de semana para resolver este problema extremadamente importante.

El primer gif con sonido de Internet, sigue el enlace. Debes hacer clic en el botón azul y luego en el GIF. El reproductor debería funcionar en todos. navegadores modernos(probado en último Firefox y Chrome).

No habrá GIF debajo del corte, sino el proceso de crear una extensión para el estándar, escribir un convertidor y un reproductor.

Desde 1987, el formato GIF ha sufrido sólo dos cambios significativos:

  1. En 1989, se lanzó una segunda versión del formato (llamada GIF 89a). Se hizo posible especificar el retraso entre imágenes (varias imágenes en un archivo estaban en el primer formato GIF 87a). Desarrolladores externos Ahora pudimos agregar nuestros propios bloques al archivo (Bloque de extensión de aplicación).
  2. En 1990, Netscape añadió su propio bloque, que permitía especificar cuántas veces se repetiría la animación.

Desarrollo de una extensión de formato.

Como se mencionó anteriormente, el estándar GIF 89a permite que las aplicaciones coloquen archivo gif tus datos. Formato de bloque de extensión de aplicación:

Intentemos ajustar el encabezado del archivo WAVE aquí:

Dado que el tamaño del bloque está controlado formato gif, elimine el campo de tamaño de datos del encabezado y escriba "RIFFWAVE" en el identificador de la aplicación. Escribiremos el resto del archivo WAVE como bloques GIF anidados.

Insertaremos un bloque con sonido justo antes del primer bloque con una imagen (de hecho, puedes insertarlo en cualquier lugar).

Desarrollo de convertidores

El convertidor acepta archivos GIF y WAVE como entrada y genera GIF con un bloque RIFFWAVE. código fuente puedes mirar mirar .

El código es bastante simple, leemos el archivo WAVE y creamos un bloque GIF a partir de él. Luego leemos el archivo GIF y anotamos todos los bloques, en cuanto encontramos el primer bloque con una imagen, insertamos un bloque con sonido delante. La sección más importante del código es convertir un archivo WAVE en un bloque GIF:

Def get_wav_block(archivo): # leer datos del archivo (firma, tamaño, formato) = desempaquetar("4sI4s", archivo) si firma! = "RIFF": generar excepción ("No es un archivo RIFF") si formato! = " WAVE": rise Exception("No es un archivo WAVE") data = file.read(size - 4) # Prepare el encabezado del bloque wave_block_header = struct.pack("BBB8sBBB", 0x21, 0xff, 11, "RIFFWAVE", 0, 0, 0) subbloques_datos =;

# dividir los datos en bloques de 255 bytes para i en range(0, len(data) // 255): data_subblocks.append(chr(0xff)) data_subblocks.append(data) if (len(data) % 255) > 0: rest = len(data) % 255 data_subblocks.append(chr(rest)) data_subblocks.append(data[-rest:]) # agregar símbolo de fin de bloque data_subblocks.append(chr(0)) return "".join( subbloques_datos)

Hacer un GIF con sonido vamos a hacer:
gif animados
# ffmpeg obtiene fotogramas individuales ffmpeg -ss 0:00:9.73 -t 2.86 -i warlus.webm -s 500x280 -r 10 frames/image%03d.png # convierte un GIF animado -delay 10 -loop 0 frames/*. fuente png.gif
Obtenemos el sonido y comprobamos que todo se ve (y suena) como lo planeamos:
mplayer -ss 0:00:9.73 -endpos 2.86 warlus.webm -ao pcm:file="source.wav" -vo null mplayer -loop 0 -audiofile fuente.wav fuente.gif
Convertir a GIF con sonido

python wave2gif.py ejemplo/source.gif ejemplo/source.wav resultado.gif

haciendo un jugador
  • El reproductor se basará en jsgif, un reproductor de GIF animados en JavaScript. jsgif analiza el gif y lo reproduce, dibujando cada cuadro en Canvas. Agreguemos una función que, cuando se detecta un bloque “RIFFWAVE”:
  • convertir los datos del bloque nuevamente al formato de archivo WAVE;
convierta el archivo resultante en datos: URL y páselo al elemento Audio.
jsgif no es rápido, pero con la adición del sonido se vuelve aún más lento. Además, para recibir datos de archivos, el reproductor llama a XMLHttpRequest, por lo que solo funciona con imágenes de un dominio. ¿Pero es esto un obstáculo para el arte?

¿Qué sigue?

Disfruta de gifs con sonido. Es posible implementar un complemento para navegadores que permitiría reproducir dichos GIF sin un XMLHttpRequest adicional y que quizás funcionaría más rápido. Si alguien se ha encontrado tarea similar, agradecería que me indicaran en qué dirección mirar para escribir un complemento que procese ciertos tipos archivos.

¿Por qué necesitarías hacer un GIF a partir de un vídeo?

¿Por qué no utilizar simplemente el vídeo?

El vídeo es pesado. El vídeo pesará varios MB y un GIF similar será entre 10 y 100 veces más pequeño.

Sí, los canales de Internet son cada vez más gordos, pero también hay internet movil, Hay computadoras lentas etcétera.

La animación GIF tiene 2 funciones...

¿Para qué se utilizan los GIF?

Veo 2 funciones. La primera es mostrar algún proceso con claridad.

Aquí, por ejemplo, está mi GIF que muestra cómo funciona. programa punto Conmutador:

Llevaría mucho tiempo describir cómo funciona el programa, pero es mucho más fácil poner un gif como este. Y todo está claro para todos. Su peso es de sólo 29 KB.

Por cierto, la segunda opción es tomar una captura de pantalla interesante con flechas. Escribí sobre cómo hacer esto.

La segunda función es simplemente FAN (entretenimiento, broma, etc.).

Cuando un artículo necesita mostrar alguna emoción mejores medios No encontrarás nada como la animación GIF.

Por ejemplo, este gif muestra perfectamente la ira (499 kb):

y esto es aburrimiento (392 kb):

y aquí está la consideración (385 kb):

Al insertar una imagen de este tipo en un artículo, inmediatamente transmitirá plenamente su emoción. ¿No es genial?

Pero, ¿cómo encontrar el GIF adecuado en línea?

Por ejemplo, lo usé para hacer este gif a partir de un vídeo de YouTube en 5 minutos. Tamaño - sólo 390 KB:

Se puede utilizar cuando es necesario mostrar, por ejemplo, excesivo formalismo y glamour en circunstancias absolutamente inapropiadas.

Sobre cómo hice esta animación y cómo reducirla en general. Tamaños de GIF- mi instrucciones paso a paso.

Opción 2. GIF de captura de pantalla

Si desea grabar un GIF con algún proceso (por ejemplo, para enviarlo a un colega ayuda visual), entonces puedes simplemente hacer un screencast con cualquier programa.

Para ello utilizo el práctico programa recolector ShareX (enlace).

Por supuesto, te permite tomar vídeo de la pantalla, pero también puede crear inmediatamente un GIF de todo el proceso.

No solo un gif. ¡Coub!

La imagen es buena. Pero a veces el sonido es incluso mejor. El GIF con sonido es Coub.

Internet está lleno de cubos divertidos.

Mi favorito es “¡Bueno, por favor! ¡Realmente no quería!”

Pero sobre nuestros artesanos populares que darán calor a cualquier tecnológico de Massachusetts:

Y este cubo trata sobre las carreteras rusas. Desafortunadamente, vemos escenas así cada primavera:

Striptease en el bosque. Nunca he estado en un striptease, ahora sé cómo sucede:

Bueno, estoy seguro de que todos estarán en este estado el viernes por la noche.

« Lo que permitió que el GIF permaneciera fue la animación en bucle que agregó Netscape. Si Netscape no hubiera añadido soporte GIF a su navegador, GIF habría muerto en 1998»

Alejandro Trevor,
Líder del equipo GIF en CompuServe

El formato GIF celebró este junio su 25 aniversario y es hoy el formato gráfico más antiguo común en Internet. Cuando pasas el fin de semana viendo divertidos GIF animados, te das cuenta de que algunos de ellos serían mucho mejores con sonido. Todas las soluciones actuales para bucles de animación con sonido (por ejemplo: coub.com, gifsound.com) sugieren abandonar el GIF, pero esta no es una opción. Y decidí sacrificar la visualización de GIF durante el fin de semana para resolver este problema extremadamente importante.

El primer gif con sonido de Internet, sigue el enlace. Debes hacer clic en el botón azul y luego en el GIF. El reproductor debería funcionar en todos los navegadores modernos (probado en las últimas versiones de Firefox y Chrome).

No habrá GIF debajo del corte, sino el proceso de crear una extensión para el estándar, escribir un convertidor y un reproductor.

Desde 1987, el formato GIF ha sufrido sólo dos cambios significativos:

  1. En 1989, se lanzó una segunda versión del formato (llamada GIF 89a). Se hizo posible especificar el retraso entre imágenes (varias imágenes en un archivo estaban en el primer formato GIF 87a). Los desarrolladores externos ahora podían agregar sus propios bloques al archivo (Bloque de extensión de aplicación).
  2. En 1990, Netscape añadió su propio bloque, que permitía especificar cuántas veces se repetiría la animación.

Desarrollo de una extensión de formato.

Como se mencionó anteriormente, el estándar GIF 89a permite que las aplicaciones coloquen sus datos en un archivo GIF. Formato de bloque de extensión de aplicación:

Intentemos ajustar el encabezado del archivo WAVE aquí:

Dado que el tamaño del bloque está controlado por el formato GIF, eliminaremos el campo de tamaño de datos del encabezado y escribiremos "RIFFWAVE" en el identificador de la aplicación. Escribiremos el resto del archivo WAVE como bloques GIF anidados.

Insertaremos un bloque con sonido justo antes del primer bloque con una imagen (de hecho, puedes insertarlo en cualquier lugar).

Desarrollo de convertidores

El convertidor acepta archivos GIF y WAVE como entrada y genera GIF con un bloque RIFFWAVE. El código fuente se puede ver en .

El código es bastante simple, leemos el archivo WAVE y creamos un bloque GIF a partir de él. Luego leemos el archivo GIF y anotamos todos los bloques, en cuanto encontramos el primer bloque con una imagen, insertamos un bloque con sonido delante. La sección más importante del código es convertir un archivo WAVE en un bloque GIF:

Def get_wav_block(archivo): # leer datos del archivo (firma, tamaño, formato) = desempaquetar("4sI4s", archivo) si firma! = "RIFF": generar excepción ("No es un archivo RIFF") si formato! = " WAVE": rise Exception("No es un archivo WAVE") data = file.read(size - 4) # Prepare el encabezado del bloque wave_block_header = struct.pack("BBB8sBBB", 0x21, 0xff, 11, "RIFFWAVE", 0, 0, 0) subbloques_datos =;

# dividir los datos en bloques de 255 bytes para i en range(0, len(data) // 255): data_subblocks.append(chr(0xff)) data_subblocks.append(data) if (len(data) % 255) > 0: rest = len(data) % 255 data_subblocks.append(chr(rest)) data_subblocks.append(data[-rest:]) # agregar símbolo de fin de bloque data_subblocks.append(chr(0)) return "".join( subbloques_datos)

# dividir los datos en bloques de 255 bytes para i en range(0, len(data) // 255): data_subblocks.append(chr(0xff)) data_subblocks.append(data) if (len(data) % 255) > 0: rest = len(data) % 255 data_subblocks.append(chr(rest)) data_subblocks.append(data[-rest:]) # agregar símbolo de fin de bloque data_subblocks.append(chr(0)) return "".join( subbloques_datos)

Hacer un gif animado:

# ffmpeg obtiene fotogramas individuales ffmpeg -ss 0:00:9.73 -t 2.86 -i warlus.webm -s 500x280 -r 10 frames/image%03d.png # convierte un GIF animado -delay 10 -loop 0 frames/*. fuente png.gif

Obtenemos el sonido y comprobamos que todo se ve (y suena) como lo planeamos:

Mplayer -ss 0:00:9.73 -endpos 2.86 warlus.webm -ao pcm:file="source.wav" -vo null mplayer -loop 0 -audiofile fuente.wav fuente.gif

Convertir a GIF con sonido

« Lo que permitió que el GIF permaneciera fue la animación en bucle que agregó Netscape. Si Netscape no hubiera añadido soporte GIF a su navegador, GIF habría muerto en 1998»

Alejandro Trevor,
Líder del equipo GIF en CompuServe


Python wave2gif.py ejemplo/source.gif ejemplo/source.wav resultado.gif

El formato GIF celebró este junio su 25 aniversario y es hoy el formato gráfico más antiguo común en Internet. Cuando pasas el fin de semana viendo divertidos GIF animados, te das cuenta de que algunos de ellos serían mucho mejores con sonido. Todas las soluciones actuales para bucles de animación con sonido (por ejemplo: coub.com, gifsound.com) sugieren abandonar el GIF, pero esta no es una opción. Y decidí sacrificar la visualización de GIF durante el fin de semana para resolver este problema extremadamente importante.

No habrá GIF debajo del corte, sino el proceso de crear una extensión para el estándar, escribir un convertidor y un reproductor.

Desde 1987, el formato GIF ha sufrido sólo dos cambios significativos:

  1. En 1989, se lanzó una segunda versión del formato (llamada GIF 89a). Se hizo posible especificar el retraso entre imágenes (varias imágenes en un archivo estaban en el primer formato GIF 87a). Los desarrolladores externos ahora podían agregar sus propios bloques al archivo (Bloque de extensión de aplicación).
  2. En 1990, Netscape añadió su propio bloque, que permitía especificar cuántas veces se repetiría la animación.

Desarrollo de una extensión de formato.

El primer gif con sonido de Internet, sigue el enlace. Debes hacer clic en el botón azul y luego en el GIF. El reproductor debería funcionar en todos los navegadores modernos (probado en las últimas versiones de Firefox y Chrome).

Intentemos ajustar el encabezado del archivo WAVE aquí:

Como se mencionó anteriormente, el estándar GIF 89a permite que las aplicaciones coloquen sus datos en un archivo GIF. Formato de bloque de extensión de aplicación:

Insertaremos un bloque con sonido justo antes del primer bloque con una imagen (de hecho, puedes insertarlo en cualquier lugar).

Desarrollo de convertidores

Dado que el tamaño del bloque está controlado por el formato GIF, eliminaremos el campo de tamaño de datos del encabezado y escribiremos "RIFFWAVE" en el identificador de la aplicación. Escribiremos el resto del archivo WAVE como bloques GIF anidados.

El código es bastante simple, leemos el archivo WAVE y creamos un bloque GIF a partir de él. Luego leemos el archivo GIF y anotamos todos los bloques, en cuanto encontramos el primer bloque con una imagen, insertamos un bloque con sonido delante. La sección más importante del código es convertir un archivo WAVE en un bloque GIF:

Def get_wav_block(archivo): # leer datos del archivo (firma, tamaño, formato) = desempaquetar("4sI4s", archivo) si firma! = "RIFF": generar excepción ("No es un archivo RIFF") si formato! = " WAVE": rise Exception("No es un archivo WAVE") data = file.read(size - 4) # Prepare el encabezado del bloque wave_block_header = struct.pack("BBB8sBBB", 0x21, 0xff, 11, "RIFFWAVE", 0, 0, 0) subbloques_datos =;

# dividir los datos en bloques de 255 bytes para i en range(0, len(data) // 255): data_subblocks.append(chr(0xff)) data_subblocks.append(data) if (len(data) % 255) > 0: rest = len(data) % 255 data_subblocks.append(chr(rest)) data_subblocks.append(data[-rest:]) # agregar símbolo de fin de bloque data_subblocks.append(chr(0)) return "".join( subbloques_datos)

El convertidor acepta archivos GIF y WAVE como entrada y genera GIF con un bloque RIFFWAVE. El código fuente se puede ver en .
gif animados
# ffmpeg obtiene fotogramas individuales ffmpeg -ss 0:00:9.73 -t 2.86 -i warlus.webm -s 500x280 -r 10 frames/image%03d.png # convierte un GIF animado -delay 10 -loop 0 frames/*. fuente png.gif
Obtenemos el sonido y comprobamos que todo se ve (y suena) como lo planeamos:
mplayer -ss 0:00:9.73 -endpos 2.86 warlus.webm -ao pcm:file="source.wav" -vo null mplayer -loop 0 -audiofile fuente.wav fuente.gif
Convertir a GIF con sonido

python wave2gif.py ejemplo/source.gif ejemplo/source.wav resultado.gif

haciendo un jugador
  • El reproductor se basará en jsgif, un reproductor de GIF animados en JavaScript. jsgif analiza el gif y lo reproduce, dibujando cada cuadro en Canvas. Agreguemos una función que, cuando se detecta un bloque “RIFFWAVE”:
  • convertir los datos del bloque nuevamente al formato de archivo WAVE;
convierta el archivo resultante en datos: URL y páselo al elemento Audio.
jsgif no es rápido, pero con la adición del sonido se vuelve aún más lento. Además, para recibir datos de archivos, el reproductor llama a XMLHttpRequest, por lo que solo funciona con imágenes de un dominio. ¿Pero es esto un obstáculo para el arte?

¿Qué sigue?

Disfruta de gifs con sonido. Es posible implementar un complemento para navegadores que permitiría reproducir dichos GIF sin un XMLHttpRequest adicional y que quizás funcionaría más rápido. Si alguien ha encontrado un problema similar, le agradecería que me indicara en qué dirección mirar para escribir un complemento que procese ciertos tipos de archivos.

Cada usuario puede crear un GIF en línea. Esta animación es un conjunto de fotogramas simplificados que se traducen al formato de imagen.

Los usuarios de Internet utilizan GIF para compartirlos como chistes divertidos o momentos individuales de una película o dibujos animados.

Gracias a rápido crecimiento A medida que aumentaba la demanda de Internet, también existía una demanda de servicios de proveedores.

Usuarios de hoy red global Utilizan innumerables pegatinas, emoticones, postales y gifs diferentes en el proceso de comunicación.

La animación se puede realizar de dos formas:

  • Usar video como entrada;
  • Emparejar un archivo de varias fotos seleccionadas.

Servicio Minimultik

El servicio Minimultik es uno de los más grandes y difundidos en Internet en los países de la CEI. La dirección principal del trabajo del sitio es la creación de gifs a partir de imágenes.

También en resultado final Se pueden agregar subtítulos y efectos visuales.

La creación es absolutamente gratuita.

Para convertir un conjunto fotos ordinarias en un GIF animado, siga las instrucciones:

  • Vaya al sitio web oficial del desarrollador del servicio. Enlace: http://minimultik.ru/
  • Verá tres columnas divididas condicionalmente, cuya información debe completarse. Para comenzar, cargue imágenes en el servidor del sitio usando el botón “seleccionar foto e imagen...”, que tiene color beige en la imagen de abajo;
  • Después de seleccionar las imágenes, puede comenzar a editar los datos de la animación. Para hacer esto, en el menú indicado en la Figura 1, especifique el tamaño requerido del gif, su orientación, color de fondo, tipo de esquinas, longitud máxima y velocidad de fotogramas por segundo;
  • En el campo "Texto" puedes agregar un título a uno de los marcos del gif. Omita este campo si no es necesario;
  • Del mismo modo, a petición del usuario, podrá elegir la presencia de cualquier efectos visuales;
  • Haga clic en el botón para crear una animación a partir de una foto. La velocidad de creación depende del número de fotogramas, los efectos aplicados y la frecuencia de visualización de las imágenes componentes.

El servicio también admite la posibilidad de crear un GIF corto con sonido.

La animación con sonido ya es una especie de vídeo que usuarios modernos Internet se llama Vine (de palabra inglesa"enredadera").

Crear animación directamente desde una cámara web, con efectos

Muchos usuarios se preguntan dónde crear un hermoso GIF desde una cámara web.

De hecho, no existen muchos servicios que puedan convertirse en un GIF en tiempo real. Uno de estos servicios es el sitio web fungif.ru.

Su esencia es que absolutamente todos los usuarios pueden crear su propio GIF, que se colocará en la parte superior de la primera página del recurso.

Cabe señalar que para crear imagen de alta calidad y una animación clara de la cámara, es necesario tener una cámara web de alta calidad que no distorsione la imagen y el sonido (en el caso de que el usuario necesite hacer un GIF con sonido).

Ejemplos de GIF creados a partir de cámaras web por usuarios del servicio en tiempo real

¡Consejo! Para crear tu propia animación solo necesitas permitir que el servicio acceda a la cámara y grabe. vídeo corto, que luego se convierte en una imagen animada.

La imagen GIF terminada se puede descargar a su computadora y desde su computadora se puede distribuir en Internet.

Usando el servicio Buildgif

Al usar de este servicio Puedes hacer un GIF a partir de un vídeo de YouTube. Dado que el servicio tiene un enfoque bastante limitado, interfaz de usuario El sitio es muy simple.

Seguir instrucciones cortas para crear tu propia imagen animada desde YouTube:

  1. Ir a pagina oficial aplicaciones en Internet. Enlace: http://buildgif.com/
  2. En el campo de texto, inserte un enlace a la página web con el video, que conduce al sitio de YouTube;
  3. Si la búsqueda tiene éxito, el vídeo aparecerá debajo, como se muestra en la figura anterior;
  4. Establezca el volumen de la animación en la configuración y haga clic en el botón "Crear animación".

El proceso de creación de animaciones a partir de vídeos en el alojamiento de vídeos de YouTube.




Arriba