该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

diffsum += diff;

}

else {

diffsum -= diff;

}

}

if (diffsum < amin) {

amin = diffsum;

pitch =d;

}

amd[d-pmin]= diffsum;

}

return pitch;

}

/**

* Waveファイルを読み込んで 何らかの信号処理をした上で、Waveファイルとして书き出す

* 现时点ではモノラルを想定

*/

public static void main(String[] args) throws IOException {

try {

/*

* .wavファイル名を引数として 読み込んでbyte配列 data[]に読み込む

*/

// オーディオファイルを开き入力ストリームに関系づける

String fname="1.1.wav";

AudioInputStream ais =

AudioSystem.getAudioInputStream(new File(fname));

// オーディオ入力ストリームからデータ読む

byte [] data = new byte [ais.available()];

ais.read(data);

ais.close();

// ファイルのフォーマットを调べる

AudioFormat af = ais.getFormat();

System.out.println("#channels: " + af.getChannels());

System.out.println("#isBigEndian: " + af.isBigEndian());

System.out.println("#FrameSize: " + af.getFrameSize());

System.out.println("#SampleSizeInBits: " + af.getSampleSizeInBits());

System.out.println("#SampleRate: " + af.getSampleRate());

if (af.getEncoding() == AudioFormat.Encoding.PCM_SIGNED) {

System.out.println("符号付きPCM");

}

else if (af.getEncoding() == AudioFormat.Encoding.PCM_UNSIGNED) {

System.out.println("符号なしPCM");

}

System.out.println("サイズ: " + data.length + "バイト: "

+ data.length / af.getSampleRate() / af.getFrameSize() + "秒");

short wavdata[] = new short[data.length/2+1];// 波形データ16ビット符号付き

/*

* byte配列から short配列に入れ直す

* byte配列は 下位8ビット→上位8ビットの顺にならんでいる

*/

// ステレオ16ビット符号付きPCM リトルエンディアンのみ

int Nsamples=0;

if (af.getChannels() <= 2 &&

af.getSampleSizeInBits() == 16 &&

af.getEncoding() == AudioFormat.Encoding.PCM_SIGNED &&

(!af.isBigEndian())) {

// 2Byte short に変换; Byteデータは 下位8ビット->上位8ビットの顺で并んでいる

int iw=0;

for (int i = 0; i < data.length-3; i += 4) {

wavdata[iw++] = (short)(data[i] & 0xff | (data[i+1] << 8));

if (af.getChannels() == 1) {

wavdata[iw++] = (short)(data[i+2] & 0xff | (data[i+3] << 8));

}

//if ((i%1000)==0 && wavdata[iw-2]>0)

//System.out.println(iw+" " + wavdata[iw-2] );

}

Nsamples= iw;

}

else {

音乐编辑 java_求助 关于java编辑音乐相关推荐

  1. 音乐编辑 java_音乐制作软件怎么用?教你编辑音频文件的方法

    音乐制作软件怎么用?在我们日常生活或工作中或多或少需要用到音乐制作软件,例如把多段音频合并到一直制作合集或将某个音频文件的部分音频提取出来制作成铃声闹铃等情况都需要使用到音乐制作软件.那么你知道我们该 ...

  2. 怎么使用音乐格式转换器?一分钟编辑音频文件的技巧

    怎么使用音乐格式转换器?在短视频逐渐火热的当下音乐格式转换器是我们经常需要使用到的工具,音乐格式转换器不仅可以用来转换音频间的格式,也可以将多段音频合并到一起,甚至还能把视频中的音频片段提取出来等.然 ...

  3. Java Swing音乐播放器

    该音乐播放器是用Java swing编写的界面,分为客户端和服务端,用户可以通过登录客户端,进行本地以及在线音乐的播放,管理人员可以通过服务器进行在线音乐的导入和管理. 本地音乐下,用户可以进行歌曲的 ...

  4. 基于SSM的java WEB音乐网站

    项目简介 本系统后端使用Spring + Mybatis 框架,前端框架主要使用BootStrap,前后端不分离,可以直接打包成war包部署,或者使用idea直接配置运行 系统分为两个部分,用户端和管 ...

  5. 基于SSH的在线音乐点评网站-java在线音乐点评网站

    基于SSH的在线音乐点评网站-java在线音乐点评网站 开发环境:Eclipse for J2EE,MYSQL5.1,JDK1.7,Tomcat 7 首页主要展示一些最新的音乐专辑. (1)用户注册: ...

  6. java手机音乐_JAVA类(手机充电、放音乐示例)

    练习练习 import java.util.Scanner;//包含包 public class ex1 { public static void main(String args[])//程序入口 ...

  7. java 编辑二进制文件_java写二进制文件,不能直接编辑,该怎么操作?

    java写二进制文件,不能直接编辑,该怎么操作? 关注:138  答案:3  mip版 解决时间 2021-01-14 21:48 提问者醒不来的梦 2021-01-14 07:45 我现在想做写一个 ...

  8. java课程设计-音乐播放器,基于java的音乐播放器设计.doc

    摘要:音乐是生活的必需的,它能够缓解人们焦躁的心情,调节现代化生活的节奏,让人们能够舒缓身心.一个好的音乐播放器,能够实现个性化的功能,它能够根据个人的喜好来推荐歌曲.深流音乐播放器正是实现了此功能, ...

  9. 【附源码】计算机毕业设计java在线音乐网站设计与实现

    项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...

最新文章

  1. OD使用教程16 - 调试篇16
  2. Zigbee音频, 6LowPAN, IEEE 802
  3. axios请求报Uncaught (in promise) Error: Request failed with status code 404
  4. 在兼职的情况下,有什么办法可以在年底之前挣5000到一万块?
  5. 3.修改和编译XposedBridge.jar 和 api.jar
  6. 数据库技术与应用课程设计-学生信息管理系统
  7. 《虚幻4 VR开发指南》视频教程
  8. 用Python对全国火车站数量进行分析,发现东北三省竟然占了2成
  9. UML建模和开发预演
  10. 巧用CSS,愚人节极客式恶搞
  11. Labelme直接生成灰度图
  12. 局域网传文件_iPhone与安卓跨系统「隔空投送」,传大文件超好用
  13. 阴阳是世界的生成之理,亦是其发展之理。道生一,一生二,二生三,三生万物。...
  14. 饥饿游戏3:嘲笑鸟(下)[The Hunger Games: Mockingjay - Part 2]
  15. D. Sequence and Swaps
  16. 10-79 spj-查询供应工程 j1 零件 p1 的供应商
  17. 微信小程序上滑加载下拉刷新(onscrollLower)分批加载数据 下篇
  18. 数字语音信号处理学习笔记——语音信号的数字模型(1)
  19. 杜邦分析法拆解三种商业模式
  20. 滚动截屏苹果_苹果手机上的5个神器,让你的手机更高效,顺手

热门文章

  1. 深入浅出 eBPF: (Linux/Kernel/XDP/BCC/BPFTrace/Cillium)
  2. 4KB/2MB/1GB 4级/5级分页模式下的线性地址翻译以及CR3
  3. 单指令多数据SIMD的SSE/AVX指令集和API
  4. FreeBSD 11.0-发布公告
  5. 【linux指令】dialog实现终端下的GUI-1
  6. c语言绑定,C++实现动态绑定代码分享
  7. flutter和dart的SDK安装
  8. java的Scanner类
  9. ios 网络状态获取_Network Kit X——网络检测工具箱
  10. python映射的主要特点_30 个 Python 语言的特点技巧