js 数据等比例采样
2019-10-10 本文已影响0人
江火渔枫
1.问题描述
压缩音频采样率,如原1s有10000帧,压缩成1s有4800帧
若果按 10000/4800 约每2.08帧采集一次
若按每2s取 则得到5000帧 每3s得3333帧 均未达到4800帧目标
2.解决思路
按每3s一帧 获取3333帧,再等比例获取(4800-3333=1467)1467帧
3.代码
/**
* @param o 旧采样率 10000
* @param n 新采样率 4200
*/
var doo = function (o, n) {
y = o / n
//2.380952380952381
var d = parseInt(y)
//2
var e = Math.ceil(y)
//3
var g = parseInt(o / e)
//3333
var f = n - g
//867
var q = parseInt(o / f)
//11
var out = new Array();
for (var i = 1; i <= g; i++) {
out.push(e * i)
}
//3333
for (var i = 1; i <= f; i++) {
out.push(q * i)
}
return out.sort(function (x, y) {
return x - y
})
}
console.log(doo(10000,4200))