获取wavesurfer音频波形图可见区域起始点

75 阅读1分钟
this.$nextTick(() => {
  //  获取音频波形容器宽度
  const waveformScrollWidth = this.$refs.waveform.scrollWidth
  //  获取音频总时长
  let duration = this.wavesurfer.getDuration();
  //  获取缩放比例
  const {minPxPerSec} = this.wavesurfer.params;
  //  获取波形图总宽度 & 波形图左边距
  const {scrollWidth, scrollLeft} = this.wavesurfer.drawer.wrapper;
  //  计算当前可见区域的音频起始点,单位是秒
  let start = scrollLeft / minPxPerSec;
  //  计算当前可见区域的音频结束点,单位是秒
  let end = Math.min(start + waveformScrollWidth / minPxPerSec, duration);
  ...
})