pw.getAudio()


说明:

  • 获取音频数据

参数:

  • pw.getAudio(start, duration)
  • pw.getAudio(start, duration, layerid)
  • pw.getAudio(start, duration, layerid, samplerate)
  • start: 开始时间。
  • duration: 持续时间。
  • layerid: 参数层,默认为-1——代表当前层。可填-1~9,0~9指参数层序号。
  • samplerate: 采样率,默认为44100。

返回:

按次序返回如下四个数组

  • 左声道波形 (浮点数组, -1~1)
  • 右声道波形 (浮点数组, -1~1)
  • 左声道频谱 (浮点数组, 0~正无穷)
  • 右声道频谱 (浮点数组, 0~正无穷)

示例

getAudio.lua


pw.in2out()

local wl,wr,fl,fr = pw.getAudio(time-0.1,0.2,-1,44100)
local nm = math.floor(height/8);

for i=1,nm do
    local wid =math.max(math.floor(i/nm*#wl),1)
    local fid = math.max(math.floor(i/nm*#fl/16),1)
    pw.print(string.format("%8.5f",wl[wid]),1,wl[wid]*4,0,-wl[wid]*4)
    pw.print("  < L  R >  ",1,0,0,0)
    pw.print(string.format("%8.5f",wr[wid]),1,wr[wid]*4,0,-wr[wid]*4)
    pw.print("      <   Wave  FFT   >      ",1,0.5,0.5,0.5)
    pw.print(string.format("%8.5f",fl[fid]),1,fl[fid]/math.sqrt(#fl),0,0)
    pw.print("  < L  R >  ",1,0,0,0)
    pw.print(string.format("%8.5f",fr[fid]),1,0,0,fr[fid]/math.sqrt(#fr))
    pw.println("");
end

results matching ""

    No results matching ""