Я пытаюсь создать довольно длинную цепочку программ и библиотек, кульминацией которой является использование преобразования текста в текст для преобразования файла mp3 в читаемый человеком текст. Я был удивлен, обнаружив, что очень мало API-интерфейсов, которые делают это в Интернете, - единственное, что я нашел, - это проект speech2text: https://github.com/taf2/speech2text, который подключается к неофициальному API речи-текста.
Сначала это сработало. Я сделал несколько ручных преобразований и остался доволен результатами. Однако, поскольку попытка автоматизировать цепочку процессов в Java перестала работать должным образом.
РЕДАКТИРОВАТЬ - следующие сообщения об ошибках технически получены из самого flac, а не speech2text. Попытка преобразовать эти файлы, используя только flac, а не speech2text, также приводит к сообщению об ошибке id3v2, поэтому ошибка не связана с speech2text (хотя speech2text может быть источником ошибочных тегов)
Java сообщает об этом как об ошибке (после вызова speech2text с использованием ProcessBuilder и распечатки потоков):
/ Библиотека / Ruby / Gems / 1.8 / gems / speech2text-0.3.4 / lib / speech / audio_inspector.rb: 50: in initialize': undefined method
first 'для nil: NilClass (NoMethodError)
из /Library/Ruby/Gems/1.8/gems/speech2text-0.3.4/lib/speech/audio_splitter.rb:77:in new'
from /Library/Ruby/Gems/1.8/gems/speech2text-0.3.4/lib/speech/audio_splitter.rb:77:in
initialize '
из /Library/Ruby/Gems/1.8/gems/speech2text-0.3.4/lib/speech/audio_to_text.rb:15:in new'
from /Library/Ruby/Gems/1.8/gems/speech2text-0.3.4/lib/speech/audio_to_text.rb:15:in
to_text '
из /Library/Ruby/Gems/1.8/gems/speech2text-0.3.4/bin/speech2text:11
из / usr / bin / speech2text: 19: в `load '
из / usr / bin / speech2text: 19
Однако попытка запустить команду вручную для одного и того же файла на самом деле дает мне следующее:
ОШИБКА: входной файл ./chunk-abortion-test-audio-0.mp3 имеет тег ID3v2
/Library/Ruby/Gems/1.8/gems/speech2text-0.3.4/lib/speech/audio_splitter.rb:59:in to_flac': failed to convert chunk: ./chunk-abortion-test-audio-0.mp3 with flac ./chunk-abortion-test-audio-0.mp3 (RuntimeError)
from /Library/Ruby/Gems/1.8/gems/speech2text-0.3.4/lib/speech/audio_to_text.rb:18:in
to_text '
из /Library/Ruby/Gems/1.8/gems/speech2text-0.3.4/lib/speech/audio_to_text.rb:17:in each'
from /Library/Ruby/Gems/1.8/gems/speech2text-0.3.4/lib/speech/audio_to_text.rb:17:in
to_text '
из /Library/Ruby/Gems/1.8/gems/speech2text-0.3.4/bin/speech2text:11
из / usr / bin / speech2text: 19: в `load '
из / usr / bin / speech2text: 19
Конечно, ирония здесь в том, что я действительно очистил файл тегов id3v2, используя
id3v2 --delete-all
в терминале Mac. Так что происходит что-то плохое.
Кто-нибудь может подсказать, что может происходить? Кроме того, учитывая, что speech2text не видел обновлений в течение года, я чувствую, что должно быть более новое решение для преобразования речи в текст, которое используют люди. Поэтому, если есть что-то лучшее, пожалуйста, дайте мне знать.
ура!
РЕДАКТИРОВАТЬ - Кстати, если кому-то интересно, mp3-файл возник из разборки файла .flv с использованием ffmpeg.