java - flac: "ERROR: input file has an ID3v2 tag"(它没有)

标签 java ruby mp3 speech-to-text flac

我正在尝试构建一个相当冗长的程序和库链,最终使用语音转文本 API 将 mp3 文件运行为人类可读的文本。我很惊讶地发现很少有 API 可以在线执行此操作 - 我发现的唯一有效的东西是 voice2text 项目:https://github.com/taf2/speech2text它连接到 Google 的非官方 Speech-To-Text API。

这实际上一开始是有效的。我做了一些手动转换,并对结果感到满意。然而,自从尝试用 Java 实现流程链自动化以来,它就停止了正常工作。

编辑 - 从技术上讲,以下错误消息来自 flac 本身,而不是 voice2text。尝试仅使用flac而不使用speech2text转换这些文件也会导致id3v2错误消息,因此该错误实际上与speech2text无关(尽管speech2text可能是错误标签的来源)

Java 将此报告为错误(在使用 ProcessBuilder 调用 voice2text 并打印出流之后):

/Library/Ruby/Gems/1.8/gems/speech2text-0.3.4/lib/speech/audio_inspector.rb:50:in initialize': undefined methodfirst' for nil:NilClass (NoMethodError) from /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:ininitialize' from /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:into_text' from /Library/Ruby/Gems/1.8/gems/speech2text-0.3.4/bin/speech2text:11 from /usr/bin/speech2text:19:in `load' from /usr/bin/speech2text:19

但是,尝试在同一个文件上手动运行命令实际上给了我这个:

ERROR: input file ./chunk-abortion-test-audio-0.mp3 has an ID3v2 tag /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:into_text' from /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:into_text' from /Library/Ruby/Gems/1.8/gems/speech2text-0.3.4/bin/speech2text:11 from /usr/bin/speech2text:19:in `load' from /usr/bin/speech2text:19

当然,具有讽刺意味的是,我实际上已经使用以下命令清理了 id3v2 标签的文件 Mac 终端上的 id3v2 --delete-all。所以有些奇怪的事情正在发生。

任何人都可以建议可能会发生什么吗?另外,鉴于 Speech2text 已经一年没有更新了,我觉得人们必须使用更新的语音到文本解决方案。因此,如果有更好的东西,请告诉我。

干杯!

编辑 - 顺便说一句,如果有人感兴趣,mp3 文件源自使用 ffmpeg 剥离 .flv 文件。

最佳答案

现在这是两个独立的问题。我只能通过回避使用 .mp3 文件并使用 .wav 来解决 ID3v2 问题。 Java 输出仍然是一个问题,因此我将其转移到一个新问题。

关于java - flac: "ERROR: input file has an ID3v2 tag"(它没有),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9860835/

相关文章:

java - Zlib从python到java

java - JAAS 和 DatabaseServerLoginModule 的问题

ruby - Ruby 套接字编程中的标准套接字超时(秒)是多少?

ruby - DataMapper - 单表继承

ruby-on-rails - ruby /将数组拆分为列

vb.net - 我如何获得 .mp3 的专辑/艺术家数据?

java - Maven:经常从远程存储库下载元数据 xml 文件

java - 未注入(inject)内部依赖项(Weld + JavaSE)

python - 编写 Python 音乐流媒体

audio - 确定 mp3 文件中的位深度