gpt4 book ai didi

java - java中加载音频文件并在特定位置播放

转载 作者:行者123 更新时间:2023-11-30 04:50:26 27 4
gpt4 key购买 nike

我的文件夹中有一组音频文件。现在,我想使用 Java 将所有这些音频文件加载到内存中,以节省稍后的读取时间。此外,用户可以选择要播放哪个音频文件以及在什么位置播放。

有人可以建议我合适的 API

  1. 加载内存中的所有音频文件
  2. 在正确的位置播放音频文件。

我听说过 Clip 库,但听说它只存储 1 秒的音频。有什么建议吗?

如果有帮助的话,我的案例中的音频文件每个长 4 分钟,我有 40 个。

最佳答案

对于可以使用可用(应用程序)RAM 的 Clip,请参阅 BigClip .

..the BigClip class through a outof memory exception.

它将在具有标准内存的 JRE 中。我有一个 DukeBox 来存放我的音乐 Collection 。它可以在分配给应用程序的 512 Meg 内存内播放长达 20 分钟的典型 MP3(立体声、16 位、44.1KHz)。

您还没有指定声音的格式,因此无法说出 160 分钟的音频需要多少内存,除了“很多”之外。

OTOH,您可能会发现单独加载每个 BigClip 所需的时间并不是很长。我的软件设计为直接从本地磁盘加载,并包含在默认的 ProgressMonitorInputStream 中。进度对话框很少出现 - 并且仅适用于播放超过 12-14 分钟的轨道。对于您的声音样本,“一次一个”可能会在标准内存中工作。

<小时/>

..4 minutes long each and I have 40..

包含 160 分钟音频所需的内存大小将相差 (BOTE) 16 - 在高 (44100 KHz)/低 (11025 KHz) 采样率、单声道/立体声和 8/16 位之间表示音频格式。

较低分辨率

160 min * 
60 SecPerMin *
11025 KHz *
1 mono *
1 byte (8 bit)
=
105,840,000 bytes

或者下限大约为105兆

关于java - java中加载音频文件并在特定位置播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9974026/

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