private async ValueTask ConvertVideoAsync(string input, string output, bool isDelete, string args) { var task = new FFmpegTaskViewModel(args); await _taskList.AddTaskAsync(task, Path.GetPathRoot(output) ?? string.Empty); if (isDelete) { FileUtils.DeleteWithoutException(input); } }
private async ValueTask ConvertVideoAsync(string input, string output, bool isDelete) { try { var args = string.Format(Constants.FFmpegCopyConvert, input, output); var task = new FFmpegTaskViewModel(args); await _taskList.AddTaskAsync(task, Path.GetPathRoot(output) ?? string.Empty); if (isDelete) { File.Delete(input); } } catch (Exception ex) { _logger.LogError(ex, @"转封装任务时发生错误"); } }
private void CreateCutVideoTask() { try { if (string.IsNullOrWhiteSpace(CutInput) || string.IsNullOrWhiteSpace(CutOutput)) { return; } var args = string.Format(Constants.FFmpegSplitTo, CutStartTime, CutEndTime, CutInput, CutOutput); var task = new FFmpegTaskViewModel(args); _taskList.AddTaskAsync(task, Path.GetPathRoot(CutOutput) ?? string.Empty).NoWarning(); NewOutputFile(); } catch (Exception ex) { _logger.LogError(ex, @"创建剪辑任务时发生错误"); } }