-
1 votesanswersviews
两个相同频率正弦波之间的相位差
我有两个矢量代表两个不同的信号,每个信号都是一个频率相同的正弦波 . 我尝试过互相关,傅立叶变换,希尔伯特变换等,但没有任何东西在特定频率下返回正确的理论值(以弧度表示)(应为负数) . Matlab中是否有任何方法可以计算出频率相同的两个正弦波的相位差? 注意:我可以访问两个信号的频率和幅度,如果需要,我可以发布一些代码 . -
0 votesanswersviews
对于具有正弦函数的数据,Scipy curve_fit失败
我试图通过一些数据拟合曲线 . 我想要适合的功能如下: def f(x,a,b,c): return a +b*x**c 当使用scipy.optimize.curve_fit时,我没有得到任何结果:它返回(默认)初始参数: (array([ 1., 1., 1.]), array([[ inf, inf, inf], [ inf, inf, inf], ... -
2 votesanswersviews
如何有效地确定用于循环的预渲染正弦波音频缓冲区的最小必要大小?
我编写了一个程序,以用户指定的频率生成正弦波,并在96kHz音频通道上播放 . 为了节省几个CPU周期,我采用了将一小段音频预渲染到缓冲区中的旧技巧,然后在循环中回放缓冲区,这样我就可以避免每秒调用sin()函数96000次程序的持续时间,而只是简单的内存复制 . 我的问题是有效地确定这个预渲染缓冲区的最小可用大小 . 对于某些频率来说很容易 - 例如,8kHz正弦波可以通过生成12个样本缓冲区并... -
0 votesanswersviews
C数学函数生成
在项目工作中,我遇到了准确生成各种波浪的需求 . 我认为一个简单的正弦波是最容易开始的,但似乎我错了 . 我做了一个简单的程序,生成一个 vector 的样本,然后播放这些样本,以便用户听到波形,作为测试 . 这是相关的代码: vector<short> genSineWaveSample(int nsamples, float freq, float amp) { vector&...