Кейс: локальный пайплайн для генерации видео на Mac Mini M4
(Docker + Kokoro TTS + Python-скрипты) Привет, коллеги! Продолжаю серию экспериментов с локальной автоматизацией. В прошлый раз я поднимал пайплайн для генерации видео на старом Mac Pro 2008 (ссылка на пост в ВК: https://vk.ru/wall10503398_5669). Тогда это заняло 1,5 часа на рендеринг 44-секундного ролика. Сейчас я перешел на Mac Mini M4 (32 ГБ) и развернул всё в Docker. Задача — полностью локальный сервис для нарезки видео с озвучкой и субтитрами, без облачных зависимостей. 🛠️ Стек и архитектура - Контейнеризация: Docker (изоляция зависимостей). - TTS (озвучка): сначала Microsoft Edge TTS (облачный, бесплатный), затем — Kokoro TTS (локальный русский порт). - G2P (ударения): русский движок \ru_g2p\ на базе \RUAccent. - Интерфейс: Streamlit. - Рендеринг: FFmpeg + MoviePy. 🧩 Технические проблемы и решения 1. Microsoft Edge TTS: голос Дмитрий (\ru-RU-DmitryNeural\) перестал работать из-за блокировки серверов Microsoft. Голос Светлана (\ru-RU-SvetlanaNeural\) работает, но качество произношения неидеально. 2. Kokoro TTS (русский порт): локальный сервер на Python (FastAPI + Uvicorn). Подключены голоса: \sveta, \masha, \dima. 3. Ограничение Kokoro: лимит в 510 фонем на один запрос. При длинных текстах сервер падал с \IndexError: index out of bounds. Решение: написан Python-скрипт, который автоматически дробит текст на предложения, отправляет их по очереди и склеивает аудио. 4. Ударения: \ru_g2p\ иногда ошибается. Решается добавлением слов в словарь \_RESPELL_WORD\ в коде. 📦 Что в итоге Два скрипта запуска: - \start_mpt_kokoro.command\ — поднимает и программу, и сервер Kokoro. - \stop_mpt_all.command\ — гасит всё. Всё работает локально: данные не уходят в облако, нет зависимости от VPN и курса валют. 💼 Вопросы к разным аудиториям Маркетологи и контент-специалисты: для вас собрать такой инструмент — это «просто»? С учетом того, что у меня был только чат DeepSeek, Google и метод тыка. Или вы предпочитаете готовые сервисы с подписками? IT-специалисты: ваше мнение — маркетолог, который сам собрал себе (и команде) рабочий инструмент без подписок и внешних зависимостей, — это ценный навык? Или «так может каждый, просто не все хотят»? HR и рекрутеры: вы вообще читаете резюме? Или там только «стрессоустойчивость» и «работа в команде»? В 2026 году, чтобы пройти фильтр, нужно быть маркетологом, аналитиком, LLM-инженером, монтажером, девопсом, сисадмином, немного дизайнером и психологом для самого себя, когда в третий раз за вечер падает Docker. Кем еще надо быть, чтобы вам понравиться? 😄 #локальныйИИ #Kokoro #Docker #MacMiniM4 #нейросети #видеогенерация #Python #EdgeTTS #Microsoft #автоматизация #маркетинг #IT #hh_ru #резюме #поискработы #шр #рекрутмент