Как транскрибировать любые аудиофайлы и видео в текст в Обсидиан
Последние несколько дней был погружен в эту тему и нашел самый оптимальный способ, как напрямую интегрировать в Obsidian полную транскрибацию любого видео и аудио. И не только на YouTube, но и локальные файлы тоже.
1. Скачать аудио версию YouTube видео в любом формате, чтобы оно занимало не больше 24 Мб. Сделать это можно с помощью этих ботов: @utubebot, @download_it_bot. Если у вас уже имеется аудио, но оно больше 24 Мб, то его нужно сжать или обрезать. Это делается с помощью первого попавшегося сервиса из гугла.
2. Устанавливаем плагин Text Generator для Obsidian. В этом плагине есть функция "Text Extractor Tool", которая может извлечь текст с помощью Whisper из любого аудиофайла, видео или спарсить субтитры с ютуба.
3. Закачиваем файл в заметку Obsidian, вызываем команду "Text Extractor Tool", нажимаем "Convert" и получаем полную транскрибацию всей длины аудио. Транскрибирует очень быстро, например я делаю тексты из полуторачасовых роликов меньше чем за 1 минуту. Единственное ограничение: файл должен быть не более 24 мегабайт.
OpenAI Whisper в этом плагине использует самую большую модель, но при этом по времени занимает меньше времени, чем любая small модель, запущенная локально или любые онлайн-сервисы.
Чем длиннее аудио, тем правильнее будут расставлены все знаки препинания, будут сделаны правильные акценты и будет отличать англоязычные слова в русскоязычном контексте.
Чем короче аудиозапись, тем меньше модель использует плагин. Например, если это голосовое сообщение в Telegram из нескольких секунд, тогда плагин использует самую маленькую модель, а она не будет расставлять знаки препинания, пишет сплошным текстом и маленькими буквами.
Но с помощью того же плагина можно этой в этой аудиозаписи улучшить текст с помощью встроенного ChatGPT, но здесь уже упираемся в ограничения ChatGPT. В Obsidian он не может дать текст на русском языке не более чем на ~2500 русских символов за один раз, но текст можно разделить на части. После первой генерации ответа от ChatGPT в конце заметки написать "продолжи" и снова запустить генерацию. Проделав это четыре раза на выходе получаем готовый текст.
Максимальное ограничение у ChatGPT 4096 токенов, а это ~8000 символов, конечная заметка не может содержать больше.