pavlovma007 / media2text

Конвертер голосовых и видео файлов в текст и srt

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

media2text

Конвертер голосовых и видео файлов в текст и srt

поддерживает все виды контейнеров и кодеков (mp3, mp4, avi,... ) которые понимает ffmpeg.

Предназначение

я часто записываю голосовые сообщения и пользуюсь диктофоном. а так же пишу документы и в пишу в блог. Хочу иметь как медиа материалы, так и их текстовую форму т.к. по тексту работает поиск и иногда это упрощает набор текста (если хорошо надиктовано).

Используемые модели обучены на dataset "аудиокниги" т.е. подходящий входной звук это - в тишине относительно выразительное и членораздельное чтение диктора, один одновременно звучащий голос. Для распознавания с диктофона этот dataset хорошо подходит.

В планах: у меня есть проект https://redforester.com и плагины для него. Это может стать основой плагина для

  • системы управления контентом (генерирование текстового представления)
  • для поиска в медиафайлах
  • для распознавания голосовых команд

У меня есть телеграмм бот. там тоже может быть сделано распознавание голосовых команд.

Использование

с временными метками (субтитры)

$ ./media2srt.sh /media/mp/ac22fd5c-3daf-4f5a-a4bf-65b346984f64/home/mp/Загрузки/0.mp3 
[sudo] пароль для mp: 
1
00:00:01,020 --> 00:00:03,990
уважаемые друзья ещё больше аудио книг на

2
00:00:03,990 --> 00:00:06,360
ресурсах книга в ухе книга в ухе

3
00:00:06,390 --> 00:00:09,750
самая большая коллекция аудиокниг слушай или качай

4
00:00:09,752 --> 00:00:11,160
совершенно бесплатно

только текст

$ ./media2text.sh /media/mp/ac22fd5c-3daf-4f5a-a4bf-65b346984f64/home/mp/Загрузки/0.mp3 
уважаемые друзья ещё больше аудио книг на ресурсах книга в ухе книга в ухе самая большая коллекция аудиокниг слушай или качай совершенно бесплатно

чтобы сохранить сделайте перенаправление вида > fileName.txt

Можно использовать в пакетном режиме для обработки нескольких файлов через xargs + sh + parallel . Например так:

$ sudo cp ./media2text.sh  /usr/local/sbin/
$ pwd 
/media/mp/ac22fd5c-3daf-4f5a-a4bf-65b346984f64/BACKUP/Видео/_кодекс мастера аудиокнига
$ HERE=$(pwd)
$ # передать все mp3 файлы на обработку и дописать выходной файл их результатами
$ ls *.mp3 | xargs -I {} sh -x -c "media2text.sh '$HERE/{}' >> TEXT_RESULT.txt" 

Принцип работы

  1. входной файл приходит в ffmpeg (через docker mount, а не через входной поток) , из него извлекается голос.
  2. язык текста выбирается выбором образа, который уже содержит обченную модель.
  3. данные подаются на вход модели порциями и забираем частичнораспонанный текст. Когда модель подтвеждает распознанный блок текста - он печатается на выход (+ опционально srt заголовок)

Сборка \ установка

  1. скачать.
  2. собрать docker образы. в скрипте сборки можете выбрать комментариями языки (мне нужен только русский)
  3. можно закинуть sh скрипт себе в /usr/local/bin

About

Конвертер голосовых и видео файлов в текст и srt


Languages

Language:Dockerfile 65.4%Language:Shell 34.6%