如何处理音频文件?

问题描述

什么是最佳选择:

  1. 录制来自麦克风的音频,
  2. 将音频作为文件存储在内存中,
  3. 能够播放那些文件吗?

是否有一个方便录制和播放的软件包?它可以在所有平台上工作(与Web兼容)吗?将它们存储在内存中的最佳策略是什么?

解决方法

这里是一个您可以使用audio_recorder

的软件包
  • 有关记录和存储部件的示例示例(请阅读包装文档)

     // Import package
     import 'package:audio_recorder/audio_recorder.dart';
    
     // Check permissions before starting
     bool hasPermissions = await AudioRecorder.hasPermissions;
    
     // Get the state of the recorder
     bool isRecording = await AudioRecorder.isRecording;
    
     // Start recording
     await AudioRecorder.start(path: _controller.text,audioOutputFormat: AudioOutputFormat.AAC);
    
     // Stop recording
     Recording recording = await AudioRecorder.stop();
     print("Path : ${recording.path},Format : ${recording.audioOutputFormat},Duration : ${recording.duration},Extension : ${recording.extension},");
    
  • 播放音频,您需要另一个包装,我建议audioplayers

    // To pause 
    int result = await audioPlayer.pause();
    
    //To Stop 
    int result = await audioPlayer.stop();
    
    // To Jump through
    int result = await audioPlayer.seek(Duration(milliseconds: 1200));
    
    // To Resume 
    int result = await audioPlayer.resume();