memory-ball-video

Memory Ball Video Maker

License Python

GitHub Repo

Ключевые слова: memory ball видео, электронный шар, магический хрустальный шар, шар с видео, видео шар, кристальный шар с экраном, UM-ER-02, создание слайдшоу из фото, ffmpeg переходы, бесплатный видеоредактор, фото в видео, слайдшоу с музыкой, видео 480x480, альтернатива софту memory ball, видео из фотографий, ffmpeg слайдшоу, python видеомейкер, memory sphere, memory orb, dream sphere

English Version


Что такое Memory Ball?

Memory Ball (также продаётся как Memory Orb, Memory Sphere, Dream Sphere, Crystal Ball Video Player, модель UM-ER-02 и другие) — это небольшое сферическое устройство со встроенным экраном, которое воспроизводит видео. Стало популярным персонализированным подарком — люди загружают в него семейные фото, снимки УЗИ, свадебные воспоминания и любой другой значимый контент.

Сфера обычно около 70 мм в диаметре, имеет встроенный аккумулятор (2–4 часа воспроизведения), 4 ГБ памяти и круглый LCD-дисплей с разрешением 480×480 пикселей. Контент загружается через USB-C кабель или, в новых WiFi-моделях, беспроводно через приложение. Устройство воспроизводит MP4-видео и показывает JPG-изображения с карты памяти.

В чём проблема?

  1. Заявлемая функциональность показа фото не работает. Но можно сделать видео из фотографий.
  2. Продавцы предлагают купить платное проприетарное ПО для создания видео. Некоторые версии идут с «бесплатным» приложением, но оно ограничено и часто плохо сделано.

Их софт вам не нужен. Всё, что он делает — и гораздо больше — можно сделать бесплатно с помощью FFmpeg.


FFmpeg: инструмент, который умеет всё с видео

FFmpeg — это бесплатный инструмент командной строки с открытым исходным кодом для работы с видео, аудио и изображениями. Он существует с 2000 года, используется крупнейшими компаниями (YouTube, Netflix, VLC, даже марсоход Perseverance от NASA), и может справиться практически с любой мультимедийной задачей.

Вот что важно для нас: FFmpeg может сделать всё, что вам когда-либо понадобится для подготовки видео для Memory Ball, и делает это бесплатно.

Суть

FFmpeg — невероятно мощный и гибкий инструмент. Платный софт, который предланают при покупке Memory Ball, делает одну простую вещь: создаёт слайдшоу из фото с переходами. FFmpeg может сделать это и тысячу других вещей.

Вы можете выучить команды FFmpeg самостоятельно, или — ещё проще — попросить любого современного AI-ассистента (Claude, ChatGPT и др.) написать вам команду или скрипт для FFmpeg под конкретную задачу. Опишите что вам нужно обычными словами — и получите рабочую команду за секунды.

Что умеет FFmpeg (примеры)

Конвертировать формат и разрешение видео. Есть MP4 в 1080p? Конвертируйте в 480×480 одной командой:

ffmpeg -i input.mp4 -vf "scale=480:480" -c:v libx264 output.mp4

Создать видео из фотографий. Есть папка с JPG? Превратите их в слайдшоу:

ffmpeg -framerate 1/5 -pattern_type glob -i '*.jpg' -vf "scale=480:480" -c:v libx264 -pix_fmt yuv420p slideshow.mp4

Каждое фото показывается 5 секунд. Поменяйте 1/5 на 1/3 для 3 секунд, 1/10 для 10 и так далее.

Добавить переходы между фото. FFmpeg поддерживает десятки эффектов перехода (crossfade, dissolve, wipe, slide, circle reveal и другие) через фильтр xfade. Это именно то, что делает платный софт Memory Ball — но FFmpeg делает это лучше и с большим количеством вариантов.

Добавить музыку к видео. Наложить аудиодорожку на слайдшоу:

ffmpeg -i video.mp4 -i music.mp3 -c:v copy -c:a aac -shortest output.mp4

Зациклить музыку под длину видео:

ffmpeg -i video.mp4 -stream_loop -1 -i music.mp3 -c:v copy -c:a aac -shortest output.mp4

Обрезать, добавить поля или изменить размер любого видео. Квадратная обрезка из центра:

ffmpeg -i input.mp4 -vf "crop=min(iw\,ih):min(iw\,ih),scale=480:480" output.mp4

Добавить чёрные полосы, чтобы вместить без обрезки:

ffmpeg -i input.mp4 -vf "scale=480:480:force_original_aspect_ratio=decrease,pad=480:480:(ow-iw)/2:(oh-ih)/2" output.mp4

Обрезать видео по времени. Вырезать конкретный фрагмент:

ffmpeg -i input.mp4 -ss 00:00:30 -t 00:01:00 -c copy clip.mp4

Создать коллаж или «картинку в картинке». Объединить несколько видео в одном кадре:

ffmpeg -i video1.mp4 -i video2.mp4 -filter_complex "[0:v]scale=240:240[left];[1:v]scale=240:240[right];[left][right]hstack" collage.mp4

Извлечь кадры из видео. Вытащить отдельные изображения:

ffmpeg -i video.mp4 -vf "fps=1" frame_%04d.jpg

Конвертировать между любыми форматами. MP4, AVI, MOV, MKV, WebM, GIF — FFmpeg работает со всеми. Он поддерживает практически все существующие видео- и аудиокодеки.


Скрипт: готовый пример

В качестве практического примера я написал Python-скрипт, который автоматизирует одну из самых частых задач: создание видео-слайдшоу из фотографий со случайными переходами и опциональной фоновой музыкой. Он заточен под формат Memory Ball 480×480, но легко адаптируется под что угодно.

Можете использовать скрипт как есть, модифицировать его или просто взять как основу для своего. Скрипт доступен на GitHub.

Что делает скрипт

Требования

Нужны Python 3.7+ и FFmpeg:

Проверьте, что оба работают:

python --version
ffmpeg -version

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

  1. Скачайте create_video.py из репозитория
  2. Положите фотографии в папку photos/
  3. Запустите:
python create_video.py --photos ./photos

Всё. Получите output.mp4, готовый для вашего Memory Ball.

Дополнительные параметры

# Своё имя файла, 7 секунд на фото, переходы по 1.5 секунды
python create_video.py --photos ./photos --output my_video.mp4 --duration 7 --transition 1.5

# Добавить фоновую музыку
python create_video.py --photos ./photos --music ./music

# Показать конкретные фото первыми, остальные — в случайном порядке
python create_video.py --photos ./photos --first favorite1.jpg favorite2.jpg

# Выбрать режим обработки неквадратных фото: crop (по умолчанию), pad, blur или stretch
python create_video.py --photos ./photos --mode blur

# Всё вместе
python create_video.py --photos ./photos --duration 5 --transition 1 --music ./music --first cover.jpg intro.jpg --mode blur --output memory_ball.mp4

Параметры

Параметр Что делает По умолчанию
--photos <folder> Папка с фотографиями Обязательный
--output <file> Имя выходного файла output.mp4
--duration <seconds> Секунд на фото 5
--transition <seconds> Длительность перехода в секундах 1
--music <папка> Папка с музыкой (MP3, M4A, WAV) Нет
--first <files...> Фото, которые показать первыми (по порядку) None
--mode <mode> Как обрабатывать неквадратные фото: crop, pad, blur, stretch crop

Доступные переходы

Скрипт случайно выбирает из: fade, dissolve, wipeleft, wiperight, wipeup, wipedown, slideleft, slideright, slideup, slidedown, circleopen, circleclose, smoothleft, smoothright, smoothup, smoothdown, fadeblack.

Режимы масштабирования фото

Структура папок

my-project/
├── photos/           # Ваши фото (JPG, PNG, BMP)
├── music/            # Музыкальные файлы (опционально)
└── create_video.py   # Скрипт

Решение проблем

«FFmpeg not found» — Убедитесь, что FFmpeg установлен и добавлен в системный PATH. Проверьте: ffmpeg -version.

«No images found» — Проверьте, что фото лежат в правильной папке и имеют расширение .jpg, .jpeg, .png или .bmp.

Видео слишком короткое или длинное — Настройте параметр duration. Общее время = количество фото × duration.

Обработка занимает много времени — Это нормально для сотен фотографий. Для 100 фото обычно уходит 1–5 минут. Скрипт обрабатывает пакетами.


Технические детали


Лицензия

MIT — используйте, модифицируйте и распространяйте свободно.


Главная идея

FFmpeg бесплатен, мощен и умеет всё то же, что платный софт Memory Ball — и гораздо больше. Современные AI-ассистенты позволяют любому человеку писать свои скрипты и команды. Этот проект — лишь один пример того, что возможно.

Не просто используйте этот скрипт — поймите подход. FFmpeg — вот настоящий инструмент. Изучайте его, просите AI помочь с ним или пишите свои скрипты. Полный контроль в ваших руках.