Updated SongPictureInfo use to async copy of picture data stream. Update other classes accordingly.
This commit is contained in:
@@ -46,20 +46,20 @@ public class AudioImageExtractor : IAudioImageExtractor
|
||||
];
|
||||
}
|
||||
|
||||
public SongPictureInfo? ExtractImage(string path)
|
||||
public async Task<SongPictureInfo?> ExtractImageAsync(string path, CancellationToken cancellationToken)
|
||||
{
|
||||
SongTagInfo songTagInfo = _tagResolver.GetSongTagInfo(path);
|
||||
|
||||
return ExtractImage(path, songTagInfo);
|
||||
return await ExtractImageAsync(path, songTagInfo, cancellationToken);
|
||||
}
|
||||
|
||||
public SongPictureInfo? ExtractImage(string path, SongTagInfo songTagInfo)
|
||||
public async Task<SongPictureInfo?> ExtractImageAsync(string path, SongTagInfo songTagInfo, CancellationToken cancellationToken)
|
||||
{
|
||||
if (songTagInfo.FrontCover != null)
|
||||
{
|
||||
using MemoryStream memoryStream = new(songTagInfo.FrontCover.Data);
|
||||
|
||||
return SongPictureInfo.FromStream(memoryStream);
|
||||
return await SongPictureInfo.FromStreamAsync(memoryStream, cancellationToken);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -68,7 +68,7 @@ public class AudioImageExtractor : IAudioImageExtractor
|
||||
if (string.IsNullOrWhiteSpace(imagePath))
|
||||
return null;
|
||||
|
||||
return SongPictureInfo.FromFile(path);
|
||||
return await SongPictureInfo.FromFileAsync(path, cancellationToken);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user