HarmonyOS 鸿蒙Next 录音音频之后 如何拿到音频文件的内存路径

发布于 1周前 作者 ionicwang 最后一次编辑是 5天前 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 录音音频之后 如何拿到音频文件的内存路径

录音音频之后 如何拿到音频文件的内存路径 不是uri路径
// 开始录制
async beginCollectVoice() {
  try {
    if (this.avRecorder == undefined) {
      // 1.创建录制实例
      this.avRecorder = await media.createAVRecorder();
    }
    this.setAudioRecorderCallback();
    // 2.获取录制文件fd赋予avConfig里的url;参考FilePicker文档
    this.curFile = fileIo.openSync(this.filesDir + '/Audio_' + new Date().getTime() + '.mp3',
      fileIo.OpenMode.READ_WRITE | fileIo.OpenMode.CREATE);
    this.avConfig.url = 'fd://' + this.curFile.fd;
    this.soundData.file = `internal://cache/${this.curFile.name}`
    // 3.配置录制参数完成准备工作
    await this.avRecorder.prepare(this.avConfig);
    // 4.开始录制
    this.textTimerController.start()
    await this.avRecorder.start();
    this.recordFlag = true;
  } catch (err) {
    console.log(TAG, 'startRecordingProcess' + JSON.stringify(err))
  }
}

// 停止录制对应的流程
async stopRecordingProcess() {
  if (this.avRecorder != undefined) {
    // 1. 停止录制
    if (this.avRecorder.state === 'started'
      || this.avRecorder.state === 'paused') { // 仅在started或者paused状态下调用stop为合理状态切换
      await this.avRecorder.stop();
    }
    // 2.重置
    this.recordFlag = false;
    await this.avRecorder.reset();
    this.textTimerController.reset();
    // 3.释放录制实例
    await this.avRecorder.release();
    this.fileNames.push([this.curFile?.name ? this.curFile?.name : '', this.totalTime])
    console.info("录音列表", JSON.stringify(this.fileNames))
    // 4.关闭录制文件fd
    fileIo.closeSync(this.curFile)
    console.info('录音文件地址', JSON.stringify(this.curFile)) // 打印结果 {}
    this.avRecorder = undefined;
  }
}
2 回复
目前无法直接获取文件真实路径地址。
您可以通过应用沙箱路径和真实物理路径的对应关系进行转换,参考文档如下:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/app-sandbox-directory-V5#应用沙箱路径和真实物理路径的对应关系

作为IT专家,对于HarmonyOS 鸿蒙Next录音音频后如何拿到音频文件的内存路径的问题,以下是一些具体的操作方式:

  1. 使用内置录音应用

    • 在鸿蒙系统上的录音应用中,您可以查看和管理通过该应用创建的所有录音文件。
    • 这些文件一般会存储在设备的内部存储空间或特定文件夹中,录音应用内通常会有查看文件路径的选项。
  2. 使用文件管理器

    • 打开手机中的“文件管理”应用。
    • 选择“来源”为“录音机”的文件夹,即可查看所有录音文件及其内存路径。
    • 录音文件可能位于内部存储空间中的“Sounds”、“Recordings”、“Voice Recorder”等目录中。
  3. 通过编程获取

    • 如果您在开发鸿蒙应用,可以通过编程方式获取录音文件的路径。
    • 具体方法涉及访问设备的存储API,并查询录音文件所在的目录。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部