@page "/ffmpeg" @using ErsatzTV.Application.FFmpegProfiles @using ErsatzTV.Application.FFmpegProfiles.Commands @using ErsatzTV.Application.FFmpegProfiles.Queries @inject IDialogService Dialog @inject IMediator Mediator @inject ILogger Logger @inject ISnackbar Snackbar FFmpeg Profiles Colored settings will be normalized Name Transcode Resolution Video Codec Audio Codec @context.Name @(context.Transcode ? "Yes" : "No") @context.Resolution.Name @context.VideoCodec @context.AudioCodec
Add Profile
@code { private List _ffmpegProfiles; protected override async Task OnParametersSetAsync() => await LoadFFmpegProfilesAsync(); private async Task LoadFFmpegProfilesAsync() => _ffmpegProfiles = await Mediator.Send(new GetAllFFmpegProfiles()); private async Task DeleteProfileAsync(FFmpegProfileViewModel ffmpegProfile) { var parameters = new DialogParameters { { "EntityType", "ffmpeg profile" }, { "EntityName", ffmpegProfile.Name } }; var options = new DialogOptions { CloseButton = true, MaxWidth = MaxWidth.ExtraSmall }; IDialogReference dialog = Dialog.Show("Delete FFmpeg Profile", parameters, options); DialogResult result = await dialog.Result; if (!result.Cancelled) { await Mediator.Send(new DeleteFFmpegProfile(ffmpegProfile.Id)); await LoadFFmpegProfilesAsync(); } } }