我需要分析写在.wav文件中的声音.为此,我需要将此文件转换为数字集(例如,数组).我想我需要使用wave包.但是,我不知道它是如何工作的.例如,我做了以下事情:
import wave
w = wave.open('/usr/share/sounds/ekiga/voicemail.wav', 'r')
for i in range(w.getnframes()):
frame = w.readframes(i)
print frame
Run Code Online (Sandbox Code Playgroud)
由于这个代码我希望看到声压作为时间的函数.相反,我看到很多奇怪的,神秘的符号(不是十六进制数字).任何人,请求,帮助我吗?
我正在寻找如何根据音乐绘制声波.
我想要像这张图片一样的波浪
这里有一些关于从音乐中显示Waves的讨论
Github示例链接
但是对于这种类型的波浪没有任何了解,是否可以像这张图像一样画出波浪?
我正在尝试捕获audiorecorder(https://github.com/cwilso/AudioRecorder)并通过Ajax发送blob一个php文件,它将接收blob内容并创建文件(在这种情况下为wave文件).
Ajax调用:
audioRecorder.exportWAV(function(blob) {
var url = (window.URL || window.webkitURL).createObjectURL(blob);
console.log(url);
var filename = <?php echo $filename;?>;
$.ajaxFileUpload({
url : "lib/vocal_render.php",
secureuri :false,
dataType : blob.type,
data: blob,
success: function(data, status) {
if(data.status != 'error')
alert("boa!");
}
});
});
Run Code Online (Sandbox Code Playgroud)
和我的php文件(vocal_render.php):
<?php
if(!empty($_POST)){
$data = implode($_POST); //transforms the char array with the blob url to a string
$fname = "11" . ".wav";
$file = fopen("../ext/wav/testes/" .$fname, 'w');
fwrite($file, $data);
fclose($file);
}?>
Run Code Online (Sandbox Code Playgroud)
PS:我是blob和ajax的新手.提前致谢.
我需要将flac文件转换为wav文件而不改变采样率和位深度.据我所知,更改这些属性可能会扭曲音频,那么如何指定它们不被更改?
另外,有没有办法阻止元数据写入输出文件?
我正在尝试使用mac的say命令创建wave文件,但是,我收到以下错误:
$ say"你好"-o hi.wav
打开输出文件失败:fmt?
虽然,
$ say --file-format =?
波浪(.wav)[lpcm,ulaw,alaw]
有什么方法可以说输出波形文件?
我正在尝试将其转换OutputStream
为ByteArrayOutput
流.我无法找到关于如何做到这一点的任何明确的简单答案.这个问题是在StackOverflow问题的标题中提出的,但问题的主体是如何将a更改ByteArrayStream
为OuputStream
.我OutputStream
已经创建了一个,答案中给出的这个例子将无法编译!
我有一个已经构造的OutputStream,其长度为44字节,称为waveHeader.我想将其转换为ByteArrayOutputStream,因为我希望能够使用waveHeader.ToByteArray()将其更改为byte [],以便在以后的过程中使用;
是否有简单的铸造类型或允许这样的东西?
如果没有那么:
有没有办法在原始OutputStream中构造指向数据的指针,如果无法转换它的话?
如何访问OutputStream中包含的数据?
我是JAVA的新手.这对我来说只是一个爱好.在VisualBasic .net中的流更容易!
我知道以下问题: 如何使用numpy数组创建pydub AudioSegment?
我的问题恰恰相反.如果我有一个pydub AudioSegment如何将其转换为numpy数组?
我想使用scipy过滤器等.我不太清楚AudioSegment原始数据的内部结构是什么.
在Java中以任何频率生成正弦波声音的最简单方法是什么?样本大小超过2个字节会有所帮助,但这并不重要.
谢谢
您会推荐哪种C/C++ DSP库?我需要它用于实时嵌入式系统.伴随声音信号处理也很棒,但不是强制性的.如果您对任何DSP库有所了解,请分享.
我有几分钟的.wav文件,我想分成不同的10秒.wav文件.
到目前为止这是我的python代码:
import wave
import math
def main(filename, time):
read = wave.open(filename, 'r')
#get sample rate
frameRate = read.getframerate()
#get number of frames
numFrames = read.getnframes()
#get duration
duration = numFrames/frameRate
#get all frames as a string of bytes
frames = read.readframes(numFrames)
#get 1 frame as a string of bytes
oneFrame = read.readframes(1)
#framerate*time == numframesneeded
numFramesNeeded=frameRate*time
#numFramesNeeded*oneFrame=numBytes
numBytes = numFramesNeeded*oneFrame
#splice frames to get a list strings each representing a 'time' length
#wav file
x=0
wavList=[]
while x+time<=duration:
curFrame= …
Run Code Online (Sandbox Code Playgroud)