#nullable disable #pragma warning disable CS1591 using System.IO; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Controller.Entities; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; namespace MediaBrowser.Controller.MediaEncoding; public interface IAttachmentExtractor { /// /// Gets the path to the attachment file. /// /// The . /// The media source id. /// The attachment index. /// The cancellation token. /// The async task. Task<(MediaAttachment Attachment, Stream Stream)> GetAttachment( BaseItem item, string mediaSourceId, int attachmentStreamIndex, CancellationToken cancellationToken); /// /// Gets the path to the attachment file. /// /// The input file path. /// The source id. /// The cancellation token. /// The async task. Task ExtractAllAttachments( string inputFile, MediaSourceInfo mediaSource, CancellationToken cancellationToken); }