NickvisionApps/Tagger

Issue Encountered While Loading Audio Files

ashenafiDL opened this issue · 7 comments

I encountered an issue while loading audio files. After selecting my Music folder, the program loads for a few seconds and crashes. Even if I try to open it again it crashes immediately.

When I try to open it from the command linen I get the following output:

UnhandledException - unhandled exception: SixLabors.ImageSharp.UnknownImageFormatException: Image cannot be loaded. Available decoders:
 - TGA : TgaDecoder
 - PNG : PngDecoder
 - BMP : BmpDecoder
 - JPEG : JpegDecoder
 - PBM : PbmDecoder
 - TIFF : TiffDecoder
 - GIF : GifDecoder
 - Webp : WebpDecoder

   at SixLabors.ImageSharp.Formats.ImageFormatManager.ThrowInvalidDecoder(ImageFormatManager manager)
   at SixLabors.ImageSharp.Image.InternalDetectFormat(Configuration configuration, Stream stream)
   at SixLabors.ImageSharp.Image.DiscoverDecoder(DecoderOptions options, Stream stream)
   at SixLabors.ImageSharp.Image.Decode(DecoderOptions options, Stream stream)
   at SixLabors.ImageSharp.Image.<>c__DisplayClass80_0.<Load>b__0(Stream s)
   at SixLabors.ImageSharp.Image.WithSeekableStream[T](DecoderOptions options, Stream stream, Func`2 action)
   at SixLabors.ImageSharp.Image.Load(DecoderOptions options, Stream stream)
   at SixLabors.ImageSharp.Image.Load(DecoderOptions options, ReadOnlySpan`1 buffer)
   at SixLabors.ImageSharp.Image.Load(ReadOnlySpan`1 buffer)
   at NickvisionTagger.Shared.Models.AlbumArt.set_Image(Byte[] value) in /run/build/org.nickvision.tagger/NickvisionTagger.Shared/Models/AlbumArt.cs:line 92
   at NickvisionTagger.Shared.Models.AlbumArt..ctor(PictureInfo pictureInfo) in /run/build/org.nickvision.tagger/NickvisionTagger.Shared/Models/AlbumArt.cs:line 74
   at NickvisionTagger.Shared.Models.MusicFile..ctor(String path) in /run/build/org.nickvision.tagger/NickvisionTagger.Shared/Models/MusicFile.cs:line 127
   at NickvisionTagger.Shared.Models.MusicLibrary.<ReloadMusicFilesAsync>b__48_1() in /run/build/org.nickvision.tagger/NickvisionTagger.Shared/Models/MusicLibrary.cs:line 221
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
--- End of stack trace from previous location ---
   at NickvisionTagger.Shared.Models.MusicLibrary.ReloadMusicFilesAsync() in /run/build/org.nickvision.tagger/NickvisionTagger.Shared/Models/MusicLibrary.cs:line 204
   at NickvisionTagger.Shared.Controllers.MainWindowController.ReloadLibraryAsync() in /run/build/org.nickvision.tagger/NickvisionTagger.Shared/Controllers/MainWindowController.cs:line 514
   at NickvisionTagger.Shared.Controllers.MainWindowController.OpenLibraryAsync(String path) in /run/build/org.nickvision.tagger/NickvisionTagger.Shared/Controllers/MainWindowController.cs:line 481
   at NickvisionTagger.Shared.Controllers.MainWindowController.StartupAsync() in /run/build/org.nickvision.tagger/NickvisionTagger.Shared/Controllers/MainWindowController.cs:line 396
   at NickvisionTagger.GNOME.Views.MainWindow.StartAsync() in /run/build/org.nickvision.tagger/NickvisionTagger.GNOME/Views/MainWindow.cs:line 575
   at NickvisionTagger.GNOME.Program.OnActivate(Application sender, EventArgs e) in /run/build/org.nickvision.tagger/NickvisionTagger.GNOME/Program.cs:line 116
   at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_0(Object state)
   at GLib.Internal.MainLoopSynchronizationContext.<>c__DisplayClass1_0.<Post>b__0()
   at GLib.Internal.MainLoopSynchronizationContext.<>c__DisplayClass3_0.<ScheduleAction>b__0()

I just installed tagger and the info is

Tagger - Tag your music

          ID: org.nickvision.tagger
         Ref: app/org.nickvision.tagger/x86_64/stable
        Arch: x86_64
      Branch: stable
     Version: 2023.10.0
     License: MIT
      Origin: flathub
  Collection: org.flathub.Stable
Installation: system
   Installed: 88.7 MB
     Runtime: org.gnome.Platform/x86_64/44
         Sdk: org.gnome.Sdk/x86_64/44

      Commit: 9b15d0f87c681db61ca7d553673ac28d5f2a1f703f0d94ed7b98d3426976fbf3
      Parent: 2e2be30a9f85a82bda4ce5ceee8f4cc4585e6c07ba3b1628a49dcc5eb85034f3
     Subject: Update org.nickvision.tagger.json (61495214)
        Date: 2023-10-27 16:23:00 +0000

OS:- Ubuntu 23.04 x86_64
Kernel:- 6.2.0-36-generic
GNOME: GNOME 44.3

It looks like Tagger is unable to read data about one of your file's album art. I will fix it now and release a new version with the fix. Give me around an hour...

Here we go: https://github.com/NickvisionApps/Tagger/releases/tag/2023.11.0

Should be available via flathub update within like 10 minutes...

Now it is a different exception

Unhandled exception. GLib.GException: Unrecognized image file format
   at GLib.Error.ThrowOnError(ErrorHandle error)
   at Gdk.Texture.NewFromBytes(Bytes bytes)
   at NickvisionTagger.GNOME.Controls.MusicFileRow.SetArtFromAlbumArt(AlbumArt art) in /run/build/org.nickvision.tagger/NickvisionTagger.GNOME/Controls/MusicFileRow.cs:line 52
   at NickvisionTagger.GNOME.Controls.MusicFileRow.Update(MusicFile musicFile) in /run/build/org.nickvision.tagger/NickvisionTagger.GNOME/Controls/MusicFileRow.cs:line 84
   at NickvisionTagger.GNOME.Controls.MusicFileRow..ctor(Builder builder, MusicFile musicFile) in /run/build/org.nickvision.tagger/NickvisionTagger.GNOME/Controls/MusicFileRow.cs:line 26
   at NickvisionTagger.GNOME.Controls.MusicFileRow..ctor(MusicFile musicFile) in /run/build/org.nickvision.tagger/NickvisionTagger.GNOME/Controls/MusicFileRow.cs:line 33
   at NickvisionTagger.GNOME.Views.MainWindow.MusicLibraryUpdated() in /run/build/org.nickvision.tagger/NickvisionTagger.GNOME/Views/MainWindow.cs:line 1435
   at GLib.Internal.SourceFuncNotifiedHandler.<.ctor>b__4_0(IntPtr userData)

Ok I will fix that too.

It seems you have a file that has a corrupted album art picture...

https://github.com/NickvisionApps/Tagger/releases/tag/2023.11.1

Will be available through flathub within the hour!

Tagger should also tell you now the exact file that is corrupted and can even attempt to fix it within the app.

@ashenafiDL any update on using the latest release?

Works fine now. Sorry for not replying right away.