diff options
Diffstat (limited to 'gnomemusic/embeddedart.py')
-rw-r--r-- | gnomemusic/embeddedart.py | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/gnomemusic/embeddedart.py b/gnomemusic/embeddedart.py index 2648c5ea..ec3e7932 100644 --- a/gnomemusic/embeddedart.py +++ b/gnomemusic/embeddedart.py @@ -134,7 +134,9 @@ class EmbeddedArt(GObject.GObject): "image-type", GstTag.TagImageType) if not success: continue - if image_type != GstTag.TagImageType.FRONT_COVER: + if image_type not in [ + GstTag.TagImageType.UNDEFINED, + GstTag.TagImageType.FRONT_COVER]: continue buf = sample.get_buffer() @@ -161,10 +163,11 @@ class EmbeddedArt(GObject.GObject): self._lookup_cover_in_directory() else: self._file.create_async( - Gio.FileCreateFlags.NONE, GLib.PRIORITY_LOW, None, + Gio.FileCreateFlags.NONE, GLib.PRIORITY_DEFAULT_IDLE, None, self._output_stream_created, pixbuf) finally: - stream.close_async(GLib.PRIORITY_LOW, None, self._stream_closed) + stream.close_async( + GLib.PRIORITY_DEFAULT_IDLE, None, self._stream_closed) def _output_stream_created( self, stream: Gio.FileOutputStream, result: Gio.AsyncResult, @@ -174,6 +177,7 @@ class EmbeddedArt(GObject.GObject): except GLib.Error as error: # File already exists. self._log.info(f"Error: {error.domain}, {error.message}") + self.emit("art-found", True) else: pixbuf.save_to_streamv_async( output_stream, "jpeg", None, None, None, @@ -191,7 +195,7 @@ class EmbeddedArt(GObject.GObject): self.emit("art-found", True) finally: output_stream.close_async( - GLib.PRIORITY_LOW, None, self._stream_closed) + GLib.PRIORITY_DEFAULT_IDLE, None, self._stream_closed) def _stream_closed( self, stream: Gio.OutputStream, result: Gio.AsyncResult) -> None: @@ -205,7 +209,7 @@ class EmbeddedArt(GObject.GObject): self._media_art.uri_async( MediaArt.Type.ALBUM, MediaArt.ProcessFlags.NONE, self._coreobject.props.url, self._artist, self._album, - GLib.PRIORITY_LOW, None, self._uri_async_cb, None) + GLib.PRIORITY_DEFAULT_IDLE, None, self._uri_async_cb, None) def _uri_async_cb(self, src, result, data): try: |