#flutter #dart #audio #ffmpeg #trim
#трепетание #дротик #Аудио #ffmpeg #обрезка
Вопрос:
Я обрезаю звук. Используя следующий код.
Я нахожу код в 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;
}
Пожалуйста, помогите мне, как обрезать звук.
Ответ №1:
Я получаю эту ошибку, потому что выходной файл уже существует.
Итак, я решил это с помощью удаления существующего файла.
Я удалил файл, используя следующий код.
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;
}