Repolode
Vanilagy

Vanilagy/mediabunny

TypeScript-библиотека без зависимостей для чтения, записи и конвертации видео- и аудиофайлов (MP4, WebM, MP3 и др.) в браузере.

Звёзды
7,445
Форки
340
Открытые issues
53
Последний коммит
вчера

Что это?

Mediabunny — JavaScript-библиотека для чтения, записи и конвертации медиафайлов, таких как MP4, WebM, MP3 и HLS, прямо в браузере. Она с нуля написана на TypeScript, не имеет зависимостей и служит веб-ориентированной альтернативой подходу FFmpeg к работе с медиафайлами из командной строки.

Библиотека поддерживает демультиплексирование и мультиплексирование контейнеров, включая MOV, MKV, WAV, Ogg, FLAC и MPEG-TS, а также более 25 видеокодеков, аудиокодеков и кодеков субтитров. Для кодирования и декодирования используется WebCodecs API, обеспечивающий аппаратное ускорение при наличии поддержки. API конвертации позволяет выполнять трансмуксинг и транскодирование, менять размер, поворачивать и обрезать видео, изменять частоту дискретизации и обрезать фрагменты.

Файлы обрабатываются потоково, поэтому можно работать с большими файлами, не загружая их целиком в память. Пакет поддерживает tree-shaking, а размер минимальной сборки составляет около 5 кБ в gzip-сжатом виде. Тот же код можно запускать в Node, Bun и Deno с помощью отдельного пакета @mediabunny/server.

Ключевые возможности

  • 01Читает и записывает MP4, MOV, WebM, MKV, HLS, WAV, MP3, Ogg, ADTS, FLAC и MPEG-TS.
  • 02Поддерживает более 25 видеокодеков, аудиокодеков и кодеков субтитров, а также аппаратное ускорение через WebCodecs.
  • 03Предоставляет API конвертации для трансмуксинга и транскодирования, изменения размера, обрезки, поворота и удаления фрагментов.
  • 04Потоково обрабатывает входные и выходные данные и позволяет работать с файлами любого размера.
  • 05Поддерживает tree-shaking, не имеет зависимостей во время выполнения; размер сборки — всего около 5 кБ в gzip-сжатом виде.
  • 06Работает в браузерах, а через @mediabunny/server — в Node, Bun и Deno.

Сценарии использования

  • Конвертация загруженного пользователем видео в WebM или MP4 перед отправкой на сервер.
  • Чтение длительности, размеров, ориентации и тегов метаданных медиафайлов в веб-приложении.
  • Создание MP4-видео в браузере из кадров canvas.
  • Обрезка фрагментов или изменение размера клипов в видеоредакторе, работающем в браузере.

Быстрый старт

  1. 1

    Установите пакет из npm

    npm install mediabunny
  2. 2

    Импортируйте Input, ALL_FORMATS и BlobSource и прочитайте метаданные файла

Что важно знать

  • Пакет предназначен для браузера и использует API WebCodecs для аппаратного ускорения кодеков.
  • Для использования типов требуется TypeScript 5.7 или новее.

Темы

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

Частые вопросы

Что такое mediabunny?
TypeScript-библиотека без зависимостей для чтения, записи и конвертации видео- и аудиофайлов (MP4, WebM, MP3 и др.) в браузере. Mediabunny — JavaScript-библиотека для чтения, записи и конвертации медиафайлов, таких как MP4, WebM, MP3 и HLS, прямо в браузере. Она с нуля написана на TypeScript, не имеет зависимостей и служит веб-ориентированной альтернативой подходу FFmpeg к работе с медиафайлами из командной строки.
mediabunny можно использовать бесплатно? Какая у него лицензия?
mediabunny распространяется с открытым исходным кодом под лицензией MPL-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
mediabunny всё ещё поддерживается?
Активно поддерживается. Последний коммит в mediabunny — 6 нояб. 2026 г..
Для чего можно использовать mediabunny?
Конвертация загруженного пользователем видео в WebM или MP4 перед отправкой на сервер. Чтение длительности, размеров, ориентации и тегов метаданных медиафайлов в веб-приложении. Создание MP4-видео в браузере из кадров canvas. Обрезка фрагментов или изменение размера клипов в видеоредакторе, работающем в браузере.
Как установить mediabunny?
Установите пакет из npm: npm install mediabunny Импортируйте Input, ALL_FORMATS и BlobSource и прочитайте метаданные файла
Где скачать mediabunny?
Исходный код и инструкции по установке — на GitHub: https://github.com/Vanilagy/mediabunny

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Набор библиотек на C и инструментов командной строки для декодирования, кодирования, конвертации, фильтрации и потоковой передачи аудио, видео и субтитров.

66,7 тыс.+549 за неделю14,5 тыс.COtherОбновлён 2 часа назад

Распределённая система автоматизации медиатеки: транскодирует и ремультиплексирует видео- и аудиофайлы с помощью FFmpeg или HandBrake по условным правилам плагинов.

4,4 тыс.+15 за неделю124MakefileOtherОбновлён 4 дня назад

Многодорожечный видеоредактор, работающий прямо в браузере: медиафайлы хранятся локально, эффекты используют WebGPU, а экспорт выполняется в браузере.

2,3 тыс.+9 за неделю366TypeScriptMITАктивно поддерживаетсяОбновлён 9 дней назад