颤振音频 Trim

Flutter Audio Trim

我trim一个音频。使用以下代码。
我在 https://pub.dev/packages/audiocutter 包中找到代码。
但是无法生成输出文件。

import 'package:path_provider/path_provider.dart';
import 'package:ffmpeg_kit_flutter/ffmpeg_kit.dart';

static Future<String> cutAudio(String path, double start, double end) async {
    
    final Directory dir = await getTemporaryDirectory();
    final outPath = "${dir.path}/output.mp3";
    var cmd = "-y -i \"$path\" -vn -ss $start -to $end -ar 16k -ac 2 -b:a 96k -acodec libmp3lame $outPath";
    log(cmd);

    FFmpegKit.executeAsync(cmd, (session) async {
      final returnCode = await session.getReturnCode();

      print("returnCode $returnCode");
    });

    return outPath;
}

请帮助我如何trim音频。

我收到这个错误是因为输出文件已经存在。

所以我通过删除现有文件解决了这个问题。
我使用以下代码删除了文件。

try {
  await File(outPath).delete();
} catch (e) {
  print("Delete Error");
}

以下是我的工作代码。

static Future<String> cutAudio(String path, double start, double end) async {
        
        final Directory dir = await getTemporaryDirectory();
        final outPath = "${dir.path}/output.mp3";
    
        try {
          await File(outPath).delete();
        } catch (e) {
          print("Delete Error");
        }
    
        var cmd = "-y -i \"$path\" -vn -ss $start -to $end -ar 16k -ac 2 -b:a 96k -acodec libmp3lame $outPath";
        log(cmd);
    
        FFmpegKit.executeAsync(cmd, (session) async {
          final returnCode = await session.getReturnCode();
    
          print("returnCode $returnCode");
        });
    
        return outPath;
    }