问题标签 [sampling]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 将 TTS 输出设置为 16 或 8kHz
当我将 TTS 输出路由到蓝牙耳机时,最好采用 16 或 8kHz 采样。我该如何做到这一点?这真的可能吗?谢谢!
audio - 如何以 8 位 8khz 参数对音频文件进行采样,例如 .wav
我对编程没有那么大,我需要对通过手机录制的音频文件进行采样,我知道移动设备会录制语音,并且有采样率,每个样本都有 8 位或 16 位的样本大小。我需要 8khz 的 8 位样本大小。编程环境是 lua,但这并不重要,基本交易是采样。任何帮助,将不胜感激。
audio - 我如何采样音频文件说 .wav ,专门将其导入数组并将其分成块。(在 Lua 中)
我对编程没有那么大,我需要对通过手机录制的音频文件进行采样,我知道移动设备会录制语音,并且有采样率,每个样本都有 8 位或 16 位的样本大小。我需要 8khz 的 8 位样本大小。编程环境是 lua,但这并不重要,基本交易是采样。任何帮助,将不胜感激。我可以在 8khz 中得到它不是问题,但是我怎样才能把它放在一个数组中,以便我可以划分它,因此简而言之,我如何在数组中对音频 .wav 文件进行采样
performance - 从庞大的列表中进行有效的随机抽样
我有一个包含大量值(53,000,000+)的数据文件,我想提取其中n个值的随机子集(例如,2,000,000)。我实现了一个 Perl 脚本,它将列表拉入内存,使用Fisher-Yates 方法对数组进行混洗,然后打印出混洗列表中的前n 个值。但是,即使在更小的测试集(50,000 个值)上,这种洗牌过程也需要很多时间。
我正在寻找一种更有效、更可扩展的方法来识别大量值的随机子集并将其打印出来。有什么建议么?
更新:根据答案和更多搜索,看起来正确的术语是“随机抽样”。
audio - FFT - 何时开窗?
我在这里看到了各种 FFT 问题,但我对部分实现感到困惑。我不想实时执行 FFT,而是想离线执行。可以说我有原始数据float[] audio
。采样率为 44100,因此audio[0] to audio[44099]
将包含 1 秒的音频。如果我的 FFT 函数处理窗口(例如 Hanning),我是否只需将整个audio
缓冲区一次性放入函数中?或者,我是否必须将音频切成 4096(我的窗口大小)的块,然后将其输入到 FFT 中,然后在顶部执行窗口功能?
java - Java中大型数组的双线性插值
我正在使用 Java 的InterpolationBilinear
类来帮助我重新采样数组。我当前(且相对较小)的测试用例是将 10x10 数组转换为 20x20 数组。我的问题是interpolate(double[][], float x, float y)
这个类中的方法只是重新采样我发送的二维数组的左上角(0x0、0x1、1x0、1x1)。
目前,看起来我必须编写一些代码来向 interpolate 方法发送一堆 2x2 数组而不是整个数组。似乎有更好的方法,有什么建议吗?
我对使用 3rd 方库不感兴趣,只有标准 Java 和我可以自己编写的代码。
谢谢!
algorithm - 寻找一种更智能的方法来随机拆分一维值范围
我需要一种将一维值范围(即连续整数)随机分成 k 部分的方法。从技术上讲,只需使用伪随机生成器来选择分割点就可以完成工作。然而,它允许范围非常小(相反非常大)的可能性。我一直在寻找一种方法来解决这个问题,而无需使用硬编码的范围限制。
我找到了这篇文章。它与二维地形生成有关。但它面临同样的问题并提出了解决方案。您可以查看 Polygons 部分,其中作者提到了 Lloyd 松弛。整个事情的来源是 Voronoi 图,它适用于 2d 范围。此外,如果您查看构建 Lloyd 松弛所需的 Voronoi 图的算法,它的开头是:
令 *(z) 为变换 *(z) = (zx, zy + d(z)),其中 d(z) 是在 z 处最小值的抛物线
自然,我在 1d 中没有抛物线。
我不清楚如何在我的 1d 范围的情况下获得相同的结果。或者也许有一个不同/更好的方法来解决这个问题?
android - 需要有关声音处理的帮助
如何从立体声文件(.mp3)中获取样本数据并将它们推送到缓冲区中?是否有具有该功能的特定库?对不起,如果这个问题真的是菜鸟,我对音频编程很陌生。
提前感谢=)
python - 对 numpy 数组切片进行采样的最快方法是什么?
我有一个 3D (time, X, Y) numpy 数组,其中包含几年的 6 小时时间序列。(比如说5)。我想创建一个采样时间序列,其中包含从可用记录中随机抽取的每个日历日的 1 个实例(每天 5 种可能性),如下所示。
- 2006 年 1 月 1 日
- 2011 年 1 月 2 日
- 2009 年 1 月 3 日
- ...
这意味着我需要从 01/01/2006 中获取 4 个值,从 02/01/2011 中获取 4 个值,等等。我有一个工作版本,其工作方式如下:
- 重塑输入数组以添加“年份”维度(时间、年份、X、Y)
- 创建一个由 0 到 4 之间随机生成的整数组成的 365 值数组
- 使用 np.repeat 和整数数组仅提取相关值:
例子:
这似乎可行,但我想知道这是否是解决我的问题的最佳/最快方法?速度很重要,因为我在循环中执行此操作,adn 将从测试尽可能多的案例中受益。
我这样做对吗?
谢谢
编辑 我忘了提到我过滤了输入数据集以删除闰年的 2 月 29 日。
基本上,该操作的目的是找到一个 365 天的样本,该样本在均值等方面与长期时间序列非常匹配。如果采样的时间序列通过了我的质量测试,我想将其导出并重新开始。
java - CPU time percentage algorithm problems
I'm having issues with a Java algorithm I created to convert nanosecond CPU time usage (obtained via JMX) to a percentage out of 100%. The algorithm appears to be giving numbers greater than 100%, which I assume to be due to multiple available processors, although the code should sort this out. The algorithm can be seen below. cpuTimeDiffNS
is the amount of CPU time used in nanoseconds, while periodMS
is the sampled period.
Here's some samples from the data acquisition:
Edit: as requested, the input gathering functions (you can probably ignore this):
and the inputs (again, you can probably ignore this):
Cheers for any help, I'm sure the answer is obvious ;)
Chris