首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用Java进行音频处理

用Java进行音频处理
EN

Stack Overflow用户
提问于 2014-01-09 14:11:28
回答 2查看 5.7K关注 0票数 4

数字图像的最小单位是像素。数字声音的最小单位是什么?什么是声音的像素?我们如何使用java来操纵它呢?

EN

回答 2

Stack Overflow用户

发布于 2014-01-09 14:30:01

数字声音的最小单位是一个样本--一个特定时间点的信号电平。但见下文增编。

要使用Java来操作它:如果你必须问这个问题,你可能想去寻找其他人写过的库。

但是,如果你想知道一般情况下会涉及到什么:读入声音文件。如果它是压缩格式(如MP3),则解压缩它。这将给你一个很长的阵列/样本向量。您可以剪切和粘贴部分,以编辑录音,或缩放,使其更软或更响亮(小心“剪辑”,这会导致你试图超过最大音量)。更复杂的操作是可能的,但这是digital signal processing的一个完整的过程,我不打算在这里做--网络搜索这个短语,特别是与soundaudiomusic结合使用时,应该可以找到更多的信息。

您还可以通过编程方式生成示例来生成自己的音频。在不同样本间正弦变化的信号会产生纯音。其他重复的形状增加了各种不同的色调。改变重复的频率会改变音高。将多个信号加在一起(同时注意剪裁)会将它们混合成一个信号。诸若此类。

请注意,MIDI不是“数字声音”--它是一个数字分数。它描述了什么音符应该在什么时候播放,但要由合成器来把它转换成声音。

增编:我以前没听过“框架”这个词(见安德鲁的回答),但我会相信的。我想到示例是因为我在考虑硬件层,但是区别于示例意味着音频剪辑是一件好事,所以我打赌帧确实更正确/当前。

票数 2
EN

Stack Overflow用户

发布于 2014-01-09 14:19:50

在java中,您通常会使用AudioInputStream实例(这些实例是从Java定义的类中获得的)。这些都是按字节读取的回放。我从来没有做过自己的操作,但据我所知,这主要是通过Java声音的混合器类完成的。

下面的教程应该包含您正在寻找的所有信息:http://docs.oracle.com/javase/tutorial/sound/playing.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21022554

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档