在Xamarin.Forms中录制语音后如何保存音频文件

时间:2018-11-09 20:32:10

标签: c# file audio xamarin.forms save

我想知道如何以Xamarin格式保存音频文件。我可以使用Xamarin.Essentials获取保存到AppDataDirectory的位置:

var mainDir = FileSystem.AppDataDirectory;

但是我不确定如何在使用NateRickard AudioRecorder插件录制后立即将其保存在代码中

var recordTask = await recorder.StartRecording();
var audioFile = await recordTastk;  //audioFile is of string datatype

与在C#中保存/创建任何二进制文件相同吗?说和保存图像文件一样吗?另外,我是否需要使用依赖注入来使用平台特定的代码保存它,还是只能通过PCL代码来做到这一点?

1 个答案:

答案 0 :(得分:1)

docs对此进行了明确讨论:

  

访问记录的文件

     

有多种访问录音文件路径的方法:

     
      
  • 基于任务的API将在任务完成时返回文件路径。可以等待任务或使用标准任务   延续API。
  •   
  • 基于事件的API将在AudioInputReceived事件的audioFile参数中返回记录的音频文件的完整路径
      处理程序。
  •   
  • AudioRecorderService类上的GetAudioFilePath()方法将返回记录的音频文件路径。
  •   
     

在未录制任何音频的情况下,这些都将返回null   还是在上一个录制会话中没有录制/检测到音频。

     

一旦您拥有录制的音频文件的路径,就可以使用   标准文件操作(对于本机/.NET Standard)和/或交叉   平台文件系统抽象(例如PCLStorage)以获取流   文件数据。