Java 类名:com.alibaba.alink.pipeline.audio.ReadAudioToTensor
Python 类名:ReadAudioToTensor

功能介绍

读取音频文件,并转换为 Alink FloatTensor 格式。

参数说明

名称 中文名称 描述 类型 是否必须? 取值范围 默认值
outputCol 输出结果列列名 输出结果列列名,必选 String ✓
relativeFilePathCol 文件路径列 文件路径列 String ✓
rootFilePath 文件路径 文件路径 String ✓
sampleRate 采样率 采样率 Integer ✓
duration 采样持续时间 采样持续时间 Double
offset 采样开始时刻 采样开始时刻 Double 0.0
reservedCols 算法保留列名 算法保留列 String[] null
numThreads 组件多线程线程个数 组件多线程线程个数 Integer 1

代码示例

Python 代码

以下代码仅用于示意,可能需要修改部分代码或者配置环境后才能正常运行!

  1. dataDir = "https://alink-test-data.oss-cn-hangzhou.aliyuncs.com/audio";
  2. df = pd.DataFrame([
  3. ["246.wav"],
  4. ["247.wav"]
  5. ])
  6. allFiles = BatchOperator.fromDataframe(df, schemaStr='wav_file_path string')
  7. SAMPLE_RATE = 16000
  8. readOp = ReadAudioToTensor().setRootFilePath(dataDir) \
  9. .setSampleRate(SAMPLE_RATE) \
  10. .setRelativeFilePathCol("wav_file_path") \
  11. .setOutputCol("tensor") \
  12. .transform(allFiles)
  13. readOp.print()

Java 代码

  1. package example;
  2. import com.alibaba.alink.operator.batch.BatchOperator;
  3. import com.alibaba.alink.operator.batch.source.MemSourceBatchOp;
  4. import com.alibaba.alink.pipeline.audio.ReadAudioToTensor;
  5. import org.junit.Test;
  6. public class ReadAudioToTensorTest {
  7. @Test
  8. public void testReadAudioToTensor() throws Exception {
  9. String dataDir = "https://alink-test-data.oss-cn-hangzhou.aliyuncs.com/audio";
  10. String[] allFiles = {"246.wav", "247.wav"};
  11. int sampleRate = 16000;
  12. BatchOperator source = new MemSourceBatchOp(allFiles, "wav_file_path");
  13. ReadAudioToTensor pipe = new ReadAudioToTensor()
  14. .setRootFilePath(dataDir)
  15. .setSampleRate(sampleRate)
  16. .setRelativeFilePathCol("wav_file_path")
  17. .setDuration(2)
  18. .setOutputCol("tensor");
  19. pipe.transform(source).print();
  20. }
  21. }

运行结果

| wav_file_path | tensor | | —- | —- |

| 246.wav | FLOAT#32000,1#-7.324219E-4 -0.0010986328 -9.460449E-4 … |

| 247.wav | FLOAT#32000,1#-0.0057678223 -0.0051574707 -0.0036315918 … |