NickvisionApps / Tagger

Tag your music
https://flathub.org/apps/details/org.nickvision.tagger
MIT License
220 stars 14 forks source link

Playlist Improvements #332

Closed nlogozzo closed 1 year ago

nlogozzo commented 1 year ago
fsobolev commented 1 year ago

Add label in dialog "A new playlist will be created in the root of the library folder." Add "Overwrite Existing Playlist" switch to dialog

Or maybe we could use FileDialog for users to select where to save the file? This way we don't need to validate file name and it will be possible to save playlist in different folder.

nlogozzo commented 1 year ago

Or maybe we could use FileDialog for users to select where to save the file? This way we don't need to validate file name and it will be possible to save playlist in different folder.

That would work too!

ghost commented 1 year ago

One thing I would like is the ability to write relative instead of absolute paths for the music files as absolute paths are not working when I use them on my jellyfin media server (The file path is different than on my local desktop as I use a NFS share to access my media files).

nlogozzo commented 1 year ago

One thing I would like is the ability to write relative instead of absolute paths for the music files as absolute paths are not working when I use them on my jellyfin media server (The file path is different than on my local desktop as I use a NFS share to access my media files).

We could add a switch in the playlist dialog to use relative paths instead of full :)

ghost commented 1 year ago

We could add a switch in the playlist dialog to use relative paths instead of full :)

That would be absolutely lovely!

nlogozzo commented 1 year ago

https://github.com/NickvisionApps/Tagger/releases/tag/2023.9.2-beta1

@Sebastian-Hirsch if you could test the release as well :) Just keep in mind #338 ... creating a playlist from an opened folder and using relative paths should work no problem. Just if you open the playlist file in Tagger then and use the Add to Playlist action to add a new music file to the playlist, the full path will still be used. Will be fixed with #338

ghost commented 1 year ago

Thanks for the heads up!

I tried to create a playlist but cannot do it as the path is always empty even though I selected a folder.

grafik

It seems like I need to select a specific file name now and it does not take the folder name as a playlist name by default. This seems to me like a regression as this was not a problem before:

grafik

If I now try to create the playlist, no playlist will be created.

ghost commented 1 year ago

I also get a lot of messages in the terminal:

(NickvisionTagger.GNOME:2): Gtk-CRITICAL **: 08:18:45.260: _gtk_css_corner_value_get_x: assertion 'corner->class == &GTK_CSS_VALUE_CORNER' failed

This seems to happen, when I open the hamburger menu or the library menu.

fsobolev commented 1 year ago

I also get a lot of messages in the terminal:

(NickvisionTagger.GNOME:2): Gtk-CRITICAL **: 08:18:45.260: _gtk_css_corner_value_get_x: assertion 'corner->class == &GTK_CSS_VALUE_CORNER' failed

This seems to happen, when I open the hamburger menu or the library menu.

This is known GTK issue, should be fixed with the next GTK update.

It seems like I need to select a specific file name now and it does not take the folder name as a playlist name by default. This seems to me like a regression as this was not a problem before

The idea is to allow saving playlist in any folder, not only in currently opened one. So yes, it requires a few more actions now, but for a reason.

If I now try to create the playlist, no playlist will be created.

That's weird 🤔 Is there no errors in terminal when creating a playlist?

ghost commented 1 year ago

The idea is to allow saving playlist in any folder, not only in currently opened one. So yes, it requires a few more actions now, but for a reason.

Ah, that makes sense. I did it the following way:

  1. I opened a folder in Tagger.
  2. I clicked on "Library".
  3. I clicked on "Create Playlist".
  4. I clicked on the folder icon inside the path option to open the folder selection.
  5. In the now open file chooser, I entered a name in the "name" text field and clicked "save".
  6. I selected the option "Use Relative Paths".
  7. I clicked on "Create". Now I get a toast telling me that the file got created successfully, but the file did not get created.

I also tried to select an existing playlist in the file chooser, but that did not overwrite the file.

That's weird 🤔 Is there no errors in terminal when creating a playlist?

There is no output in the terminal besides the gtk message sadly.

fsobolev commented 1 year ago

I noticed on screenshots that your library is in a folder that Tagger doesn't have access to (it uses portal), so I have questions:

  1. Does saving tags for files in this folder works?
  2. Is it possible to create a playlist while saving to a folder Tagger has access to? (should be anything in home, if you didn't change permissions)
  3. Is it possible to create a playlist while library folder is somewhere in home too?
  4. Don't you use Debian by chance? 😅
ghost commented 1 year ago

I tried your suggestions without rights to my music folder and by adding the rights with flatseal. I also want to mention that I use an NFS share for my music that I mount with a systemd mount unit.

  1. This works fine with and without explicit rights to write into the folder (without the rights it is very slow).
  2. This seems to work now even though it failed earlier.
  3. Yes this seems to work.
  4. I use Fedora 38.

Point 1 does work with Kid3 when giving permissions to my music folder. Tagger fails even with the permissions.

ghost commented 1 year ago

I found something interesting now. When a playlist already exists and I choose it in the file chooser and hit the update button, it seems to work all of a sudden. But when I want to create a new playlist file, it does not get written.

ghost commented 1 year ago

I could get my usecase to work when setting up full system file access in flatseal.

grafik

But it is weird that kid3 does not need that. Giving it the rights to my music folder (/mnt/Networkshare/Music) was enough.

One thing that I also found to be odd was that when you open a music folder in Tagger and now choose the location of the playlist, it shows not the location that is currently opened, but the location that was opened the last time. This caught me off guard as I wrote the playlist file to a folder, where I did not expect it to be, after I set the file access rights.

By the way: The generated files work fine on my media server, so this part works well :+1: