private async Task ConvertFiles()
        {
            IsConversionInProgress = true;
            StartConversionCommand.RaiseCanExecuteChanged();
            BrowseTargetFolderCommand.RaiseCanExecuteChanged();

            if (!Directory.Exists(TargetFolderPath))
            {
                Directory.CreateDirectory(TargetFolderPath);
            }

            var converter = new MediaConverter(TargetFolderPath);
            await converter.ConvertFiles(InputItems.Select((item) => item.FilePath).ToArray());

            InputItems.Clear();

            IsConversionInProgress = false;
            StartConversionCommand.RaiseCanExecuteChanged();
            BrowseTargetFolderCommand.RaiseCanExecuteChanged();
        }