When tagging, I initially decided not to append every artist and genre of a single track with a separators. So I added multiple fields with the same name (ARTIST, or GENRE). The server (gonic) seems to support that, as I could see in the logs.
In Symfonium I can only see one artist for every track. The same for the genres. Are multiple fields with the same name just not supported, and I have to use a separator, or what am I doing wrong?
debug.log (351,3 KB)
Here should be the relevant excerpt of a track with multiple artist- and genre-tags:
2023-10-07 20:13:16.060 Verbose/ExoPlayer: tracks [eventTime=559.18, mediaPos=0.00, window=0, period=0
2023-10-07 20:13:16.060 Verbose/ExoPlayer: group [
2023-10-07 20:13:16.061 Verbose/ExoPlayer: [X] Track:0, id=null, mimeType=audio/flac, channels=2, sample_rate=96000, supported=YES
2023-10-07 20:13:16.061 Verbose/ExoPlayer: ]
2023-10-07 20:13:16.061 Verbose/ExoPlayer: Metadata [
2023-10-07 20:13:16.061 Verbose/ExoPlayer: VC: ALBUM=Random Access Memories (10th Anniversary Edition)
2023-10-07 20:13:16.061 Verbose/ExoPlayer: VC: 1T_TAGGEDDATE=2023-10-07 14:20:29_AT
2023-10-07 20:13:16.061 Verbose/ExoPlayer: VC: DISCNUMBER=1
2023-10-07 20:13:16.062 Verbose/ExoPlayer: VC: DATE=2013-05-20
2023-10-07 20:13:16.062 Verbose/ExoPlayer: VC: INITIALKEY=Gbm
2023-10-07 20:13:16.062 Verbose/ExoPlayer: VC: TITLE=Touch (feat. Paul Williams)
2023-10-07 20:13:16.062 Verbose/ExoPlayer: VC: ALBUMARTIST=Daft Punk
2023-10-07 20:13:16.062 Verbose/ExoPlayer: VC: TRACKNUMBER=7
2023-10-07 20:13:16.063 Verbose/ExoPlayer: VC: GENRE=electro
2023-10-07 20:13:16.063 Verbose/ExoPlayer: VC: GENRE=filter house
2023-10-07 20:13:16.063 Verbose/ExoPlayer: VC: GENRE=rock
2023-10-07 20:13:16.063 Verbose/ExoPlayer: VC: ARTIST=Daft Punk
2023-10-07 20:13:16.063 Verbose/ExoPlayer: VC: ARTIST=Paul Williams
2023-10-07 20:13:16.063 Verbose/ExoPlayer: VC: TRACKTOTAL=22
2023-10-07 20:13:16.063 Verbose/ExoPlayer: Picture: mimeType=image/jpeg, description=
2023-10-07 20:13:16.064 Verbose/ExoPlayer: ]
2023-10-07 20:13:16.064 Verbose/ExoPlayer: ]
Sorry if this is a duplicate of that topic, but I’m not sure if both scenarios are the same.
Gonic does not yet support multiple artists / genres and many things on it’s API as it’s not supported on Subsonic. (It’s documented ;))
But the good news is that after months of efforts the OpenSubsonic initiative I started is moving.
Expose many new fields to clients by Tolriq · Pull Request #51 · opensubsonic/open-subsonic-api · GitHub will be merged tomorrow and will be official. And Gonic is already on the rails to support most of it with 0.16.
You can thanks @sentriz for being efficient on the implementation
Support in Symfonium will follow up when Gonic 0.16 is officially out.
Oh, thanks for the immediate answer. I wasn’t sure because of the snippet of the logs and misinterpreted it. Thanks for clarification.
These are great news! That will be a much cleaner solution as using the separators.
(Thanks @sentriz )
thats right it will be there for v0.16 however if you want to try it out already (and help me test too before the release) you can try the gonic :nightly tag
There’s no support yet for him to test in Symfonium.
I hope you’ll update the server I have access to for my tests and implementation @sentriz
ah I see the server you have access to is running all the latest stuff
Ok I need to finish some stuff first but I’ll do that hopefully soon. This should be fast as it’s just a few mapping to make.
I’d also volunteer to test stuff if that’s useful for you. I have literally tens of thousands of multi value tags (a mix of either separated by "; " or as multiple tag fields like OP.
The fact that jellyfin supports these is pretty much the only reason why I use it for Symfonium currently.
The GUI performance is atrocious with my library size.
If gonic has issues with large libraries I’d probably find out.
Does this mean a mixed usage (multiple fields and a delimiter like in my case) isn’t supported?
Also is there a reason why you limit multi value tags to albumartist and genre? I also use it for composer and artist.
Gonic currently have a major limitation (at least for me) as it does not support track artists and only album artists.
But I’m sure @sentriz will handle this at some point. (And no support for Composers / contributors yet too).
The first one to have all those will be LMS @itm GitHub - epoupon/lms at develop
This can be followed at Server implementation follow up · opensubsonic/open-subsonic-api · Discussion #55 · GitHub
Very interesting. I’ll definitely keen LMS on my radar then. Thanks for the info.
@655321 might want to test LMS 3.42.0 works well with last Beta , have all fields and relatively nice sync speed with large libraries.
I tried but the docker container doesn’t seem to like me.
I’ve turned the code from the docker documentation:
docker create \
--user <user_id:group_id> \
-p <port>:5082 \
-v <path_to_music>:/music:ro \
-v <path_to_persistent_data>:/var/lms \
--restart unless-stopped \
into docker compose and adjusted the values for my mounts etc.:
I’m using the exact same mounts (except for /opt/navidrome instead of /opt/lms) and the same user and group ids for my navidrome server which works as expected.
However lms initially refused to start with loads of permission denied errors until I chowned the /opt/lms folder to the 1000:1000 user. I’ve never had to do that with other containers.
And now that it’s up and running it does not scan my music. As per instructions I’ve typed in /music here
and then hit scan. It finishes instantly with:
And the log of the container shows:
[2023-Oct-23 20:21:58.302] 1 - [error] - 140639162977080 [DB UPDATER] Cannot process entry '': No such file or directory
Edit: I also just noticed that the TZ of the log is off by 2 hours. So adding
(at least fo my case) also seems prudent.
Am I doing something fundamentally wrong?
This is questions for @itm
True. I just thought you might notice an obvious error in my compose as you seem to have lms deployed successfully.
I usually use portainer or Synology container manager not a docker expert.
But he will answer.
Indeed you need to specify a user id (and its group id) that has read perms on the music folder and write perms on the data folder.
That’s the weird part. The user I specified (1000:1000) does have read permissions on the music folder.
Since it’s a samba mount within the ubuntu server VM that is already mounted as read-only, ANY user within the ubuntu VM has read permissions on that folder to be precise.
Or do I have to match the uid of the user on the TrueNAS server which I used to mount the samba share?
I just tested that I 100% have read permissions on that music mount.
What if you run the container in interactive mode (-it) with the entrypoint /bin/sh (–entrypoint /bin/sh) and check the /music folder?
docker run -it \
--user 1000:1000 \
--entrypoint /bin/sh \
-p 5082:5082 \
-v /mnt/music:/music:ro \
-v /opt/lms:/var/lms \
--restart unless-stopped \
I ran it like this and I cleary have read permissions on the music mount within the container.
Which still begs the question why this does not work.
Does it work when you run lms via the docker run command?