private void MediaAttachmentListAddEmbed(string path) { var fileData = new FFmpeg.MediaInfo(path); foreach (ListViewItem lst in lstFile.SelectedItems) { foreach (var item in fileData.Attachment) { (lst.Tag as MediaQueue).Attachment.Add(MediaQueueParse.Attachment(path, item)); } } }
private void MediaSubtitleListAddEmbed(string path) { var fileData = new FFmpeg.MediaInfo(path); foreach (ListViewItem lst in lstFile.SelectedItems) { foreach (var item in fileData.Subtitle) { (lst.Tag as MediaQueue).Subtitle.Add(MediaQueueParse.Subtitle(path, item)); } } MediaShowReList(); }
private void MediaFileListAdd(string path) { var fileData = new FFmpeg.MediaInfo(path); var fileQueue = new MediaQueue() { Enable = true, FilePath = path, FileSize = fileData.FileSize, Duration = fileData.Duration, InputFormat = fileData.FormatNameFull, OutputFormat = MediaContainer.MKV, Info = fileData }; foreach (var item in fileData.Video) { fileQueue.Video.Add(MediaQueueParse.Video(path, item)); } foreach (var item in fileData.Audio) { fileQueue.Audio.Add(MediaQueueParse.Audio(path, item)); } foreach (var item in fileData.Subtitle) { fileQueue.Subtitle.Add(MediaQueueParse.Subtitle(path, item)); } foreach (var item in fileData.Attachment) { fileQueue.Attachment.Add(MediaQueueParse.Attachment(path, item)); } lstFile.Items.Add(new ListViewItem(new[] { Path.GetFileName(path), Path.GetExtension(path).Substring(1).ToUpperInvariant(), TimeSpan.FromSeconds(fileData.Duration).ToString("hh\\:mm\\:ss"), OS.PrintFileSize(fileData.FileSize), fileQueue.Enable ? "Ready" : "Done", "" }) { Tag = fileQueue, Checked = true, Selected = true }); }
public static string Print(MediaInfo value) { var info = $"General{Environment.NewLine}" + $"Complete name : {value.FilePath}{Environment.NewLine}" + $"Format : {value.FormatName} ({value.FormatNameFull}){Environment.NewLine}" + $"File size : {value.FileSize} bytes{Environment.NewLine}" + $"Duration : {value.Duration} seconds{Environment.NewLine}" + $"Overall bit rate : {value.BitRate} bps{Environment.NewLine}"; var v = 0; var video = string.Empty; foreach (var item in value.Video) { video += $"{Environment.NewLine}Video #{v++}{Environment.NewLine}" + $"ID : {item.Id}{Environment.NewLine}" + $"Format : {item.Codec}{Environment.NewLine}" + $"Width : {item.Width}{Environment.NewLine}" + $"Height : {item.Height}{Environment.NewLine}" + $"Frame rate mode : {(item.FrameRateConstant ? "Constant" : "Variable")}{Environment.NewLine}" + $"Frame rate : {item.FrameRate} FPS ({item.FrameRateAvg} FPS){Environment.NewLine}" + $"Chroma subsampling : {item.Chroma}{Environment.NewLine}" + $"Bit depth : {item.BitDepth} bits{Environment.NewLine}" + $"Language : {item.Language}{Environment.NewLine}"; } var a = 0; var audio = string.Empty; foreach (var item in value.Audio) { audio += $"{Environment.NewLine}Audio #{a++}{Environment.NewLine}" + $"ID : {item.Id}{Environment.NewLine}" + $"Format : {item.Codec}{Environment.NewLine}" + $"Channel(s) : {item.Channel}{Environment.NewLine}" + $"Sampling rate : {item.SampleRate} Hz{Environment.NewLine}" + $"Bit Depth : {item.BitDepth} bits{Environment.NewLine}" + $"Language : {item.Language}{Environment.NewLine}"; } var s = 0; var subtitle = string.Empty; foreach (var item in value.Subtitle) { subtitle += $"{Environment.NewLine}Subtitles #{s++}{Environment.NewLine}" + $"ID : {item.Id}{Environment.NewLine}" + $"Format : {item.Codec}{Environment.NewLine}" + $"Language : {item.Language}{Environment.NewLine}"; } var t = 0; var attach = string.Empty; foreach (var item in value.Attachment) { attach += $"{Environment.NewLine}Attachments #{t++}{Environment.NewLine}" + $"ID : {item.Id}{Environment.NewLine}" + $"Name : {item.FileName}{Environment.NewLine}" + $"MIME : {item.MimeType}{Environment.NewLine}"; } return(info + video + audio + subtitle + attach); }