首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取.SPH音频文件的整数表示

获取.SPH音频文件的整数表示
EN

Stack Overflow用户
提问于 2013-07-24 06:20:31
回答 1查看 770关注 0票数 2

我试图训练一个神经网络使用音频文件,最初是在.SPH格式。我需要得到表示神经网络声波振幅的整数,所以我使用sox将文件转换为.wav格式,调用sox infile.SPH outfile.wav remix 1-2 (将两个通道混合为1),然后在matlab中尝试使用[y, Fs, nbits, opts] = wavread('outfile.wav')获得整数表示。

然而,matlab抛出了Data compression format (CCITT mu-law) is not supported.,所以我使用了sox infile.SPH -b 16 -e signed-integer -c 1 outfile.wav,我认为它将波形文件设置为线性格式,而不是matlab。但是现在matlab抛出了另一个错误:Invalid Wave File. Reason: Cannot open file.

我的音频文件是在8000赫兹u律单或双通道,和所有的8位,我认为(8位的单一肯定)。

  1. 有没有办法用matlab或其他程序从音频文件中获取整数表示?U定律或线性法则都可以,除非神经网络训练更好。最好是8位,因为源文件在8位.
  2. 我真的不明白.SPH。对于未压缩的文件(忽略头),这些文件是否存储振幅(猜测它必须以某种方式)?我能直接从这些文件中提取数字而不受海浪的干扰吗?信号是按顺序存储的,这样分裂音频文件才有意义吗?

我是新的音频处理在一般情况下,所以任何指针将不胜感激!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-24 09:58:37

你需要清楚地确定主要任务:用向量或矩阵给神经网络喂食。因此,第一步是处理音频文件(没有matlab!)以便有wav文件。第二步是利用matlab进行神经网络的设置/训练。

我会尝试解压缩'sph‘文件,然后将它们转换为'wav’(例如,请参阅这里这里指令)。

最后,在命令/终端窗口中使用sox比在matlab控制台中使用sox更好。

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

https://stackoverflow.com/questions/17826581

复制
相关文章

相似问题

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