2024-06-13 05:04:52 发布
网友
我在玩高音。我想生成一个1秒15Khz的MP3文件。有没有一种简单的方法可以从C或Python中实现呢?我不想用MATLAB。在
我要把它分成两部分:
-t
有一点需要注意的是,15KHz是非常高的频率,可以被人听到,我猜大多数扬声器不能播放它,因为它超过了他们的截止频率。所以,如果你没有听到结果,不要惊讶。在
您是否尝试过:
#include<dos.h> #include<iostream.h> #include<conio.h> main() { sound(500); // Frequency delay(1000); // Time nosound(); // Stop }
您可以使用Python的^{}模块创建一个wave文件,然后将其压缩为MP3。要创建1秒15khz正弦波:
import math import wave import struct nchannels = 1 sampwidth = 2 framerate = 44100 nframes = 44100 comptype = "NONE" compname = "not compressed" amplitude = 4000 frequency = 15000 wav_file = wave.open('15khz_sine.wav', 'w') wav_file.setparams((nchannels, sampwidth, framerate, nframes, comptype, compname)) for i in xrange(nframes): sample = math.sin(2*math.pi*frequency*(float(i)/framerate))*amplitude/2 wav_file.writeframes(struct.pack('h', sample)) wav_file.close()
我要把它分成两部分:
-t
将wave转换为mp3。在有一点需要注意的是,15KHz是非常高的频率,可以被人听到,我猜大多数扬声器不能播放它,因为它超过了他们的截止频率。所以,如果你没有听到结果,不要惊讶。在
您是否尝试过:
您可以使用Python的^{} 模块创建一个wave文件,然后将其压缩为MP3。要创建1秒15khz正弦波:
相关问题 更多 >
编程相关推荐