Repolode
Vanilagy

Vanilagy/mediabunny

Biblioteca TypeScript sin dependencias para leer, escribir y convertir archivos de video y audio (MP4, WebM, MP3, etc.) en el navegador.

Estrellas
7,441
Forks
339
Issues abiertos
53
Último commit
ayer

¿Qué es?

Mediabunny es una biblioteca JavaScript para leer, escribir y convertir archivos multimedia como MP4, WebM, MP3 y HLS directamente en el navegador. Está escrita desde cero en TypeScript, no tiene dependencias y se diseñó como una alternativa nativa para la web al enfoque de FFmpeg para trabajar con archivos multimedia desde la línea de comandos.

La biblioteca permite demultiplexar y multiplexar contenedores de formatos como MOV, MKV, WAV, Ogg, FLAC y MPEG-TS, y admite más de 25 códecs de video, audio y subtítulos. La codificación y la decodificación usan la API WebCodecs para aprovechar la aceleración por hardware cuando está disponible. Su API de conversión ofrece transmuxing, transcodificación, cambio de tamaño, rotación, recorte, remuestreo y recorte de duración.

El manejo de archivos se basa en streaming, por lo que se pueden procesar archivos grandes sin cargarlos por completo en memoria. El paquete admite tree-shaking y permite generar bundles de apenas unos 5 kB comprimidos con gzip. El mismo código también puede ejecutarse en Node, Bun y Deno mediante el paquete independiente @mediabunny/server.

Funciones clave

  • 01Lee y escribe archivos MP4, MOV, WebM, MKV, HLS, WAV, MP3, Ogg, ADTS, FLAC y MPEG-TS.
  • 02Admite más de 25 códecs de video, audio y subtítulos, con aceleración por hardware mediante WebCodecs.
  • 03Ofrece una API de conversión para transmuxing, transcodificación, cambio de tamaño, recorte, rotación y recorte de duración.
  • 04Procesa la entrada y la salida mediante streaming, por lo que admite archivos de cualquier tamaño.
  • 05Admite tree-shaking, no tiene dependencias en tiempo de ejecución y puede ocupar apenas unos 5 kB comprimidos con gzip.
  • 06Funciona en navegadores y, mediante @mediabunny/server, en Node, Bun y Deno.

Casos de uso

  • Convertir el video que sube un usuario a WebM o MP4 antes de enviarlo a un servidor.
  • Leer la duración, las dimensiones, la rotación y las etiquetas de metadatos de archivos multimedia en una aplicación web.
  • Generar videos MP4 en el navegador a partir de fotogramas de un canvas.
  • Recortar la duración o cambiar el tamaño de clips en un editor de video basado en el navegador.

Inicio rápido

  1. 1

    Instala el paquete desde npm

    npm install mediabunny
  2. 2

    Importa Input, ALL_FORMATS y BlobSource, y lee los metadatos de un archivo

Antes de usarlo

  • Está dirigido al navegador y utiliza la API WebCodecs para los códecs acelerados por hardware.
  • Se requiere TypeScript 5.7 o posterior para usar los tipos.

Temas

#video#audio#webcodecs#typescript#media-processing#transcoding#browser#mp4#decoding#demuxing

Preguntas frecuentes

¿Qué es mediabunny?
Biblioteca TypeScript sin dependencias para leer, escribir y convertir archivos de video y audio (MP4, WebM, MP3, etc.) en el navegador. Mediabunny es una biblioteca JavaScript para leer, escribir y convertir archivos multimedia como MP4, WebM, MP3 y HLS directamente en el navegador. Está escrita desde cero en TypeScript, no tiene dependencias y se diseñó como una alternativa nativa para la web al enfoque de FFmpeg para trabajar con archivos multimedia desde la línea de comandos.
¿mediabunny es gratuito? ¿Qué licencia tiene?
mediabunny es open source bajo la licencia MPL-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿mediabunny sigue mantenido?
Mantenimiento activo. El último commit de mediabunny fue el 6 nov 2026.
¿Para qué puedo usar mediabunny?
Convertir el video que sube un usuario a WebM o MP4 antes de enviarlo a un servidor. Leer la duración, las dimensiones, la rotación y las etiquetas de metadatos de archivos multimedia en una aplicación web. Generar videos MP4 en el navegador a partir de fotogramas de un canvas. Recortar la duración o cambiar el tamaño de clips en un editor de video basado en el navegador.
¿Cómo se instala mediabunny?
Instala el paquete desde npm: npm install mediabunny Importa Input, ALL_FORMATS y BlobSource, y lee los metadatos de un archivo
¿Dónde consigo mediabunny?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/Vanilagy/mediabunny

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados