gpt4 book ai didi

java - 如何从麦克风捕获音频并将其保存为 Java 中的 FLAC 文件格式类型?

转载 作者:行者123 更新时间:2023-11-30 09:41:57 25 4
gpt4 key购买 nike

我需要用 Java 制作一个简单的应用程序,从麦克风捕获一些音频,并将其保存在文件中,使用 FLAC。我找到了教程: http://www.developer.com/java/other/article.php/2105421/Java-Sound-Capturing-Microphone-Data-into-an-Audio-File.htm ,但我需要将文件保存为 flac 音频,所以我添加了 jFLAC 库,我只是在做:

AudioSystem.write(new AudioInputStream(targetDataLine), FlacFileFormatType.FLAC, new File("junk.flac"));

但我得到一个异常(exception):

java.lang.IllegalArgumentException: could not write audio file: file type not supported: FLAC
at javax.sound.sampled.AudioSystem.write(AudioSystem.java:1346)
at pl.com.stream.snippet.concurentmap_test.AudioRecorder02$CaptureThread.run(AudioRecorder02.java:211)

是否有任何示例或教程说明如何在 Java 中以 flac 格式保存音频文件?

最佳答案

来自info. page on JavaSound :

服务提供商接口(interface)

Java Sound API 使用服务提供者接口(interface)来识别声音格式和序列类型的编码器和解码器。这样,添加对新格式或类型的支持就像为其提供解码器和/或编码器一样简单,将 SPI 文件添加到它所在的 Jar 的 list 中,然后将 Jar 添加到运行时类中——应用程序的路径。 ...

该页面的进一步引用:

Java 声音功能

可以使用AudioSystem.getAudioFileTypes() ...等方法获取采样声音API的功能......


我想如果你迭代那个方法返回的数组,你会发现没有列出 FLAC。解决方案是使用 SPI 添加 FLAC 编码器。

关于java - 如何从麦克风捕获音频并将其保存为 Java 中的 FLAC 文件格式类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8804406/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com