-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[BUG] Traceback - AttributeError: 'ArtistCover' object has no attribute 'getCoverArt' #373
Comments
Hello, can you post the full container log?
should become #optional, will download updated plugin from the specified branch
and so on for the others. |
Also this: - SUBSONIC_PASSWORD=${SUBSONIC_PASSWORD |
Try this compose file:
|
upmpdcli.log The env var was curley brace was my bad copy & paste. I removed all the comments in the compose file just in case but same error occurs. |
Tested the latest branch/version you posted. This seems to fix it for me and it's working fine now! |
Awesome! I need to check and maybe cleanup the documentation. I already fixed the wrong compose that lead to the issue you encountered, but it's worth checking. |
Hello, do you like the plugin? If you find bugs and/or missing features, please create an issue here. Thank you |
I had the same issue, and I believe the proposed change resolved the stated problem. Unfortunately, I can't get symfonium/navidrome, or BubbleUpnP/upmpdcli/navidrome to output to two different Yamaha receivers. Everything seems to work when the output is something like a Google speaker or Chromecast device, but not to a Yamaha receiver. |
Hello, I don't own a Yamaha device unfortunately, so I cannot test. Maybe (but I am guessing) those receivers don't 'like' the url redirection that mpd instead executes properly. You can try disabling by creating a new file named upmpdcli-additional.txt with the following content: subsonicskipintermediateurl = 1 The file must be mounted as /user/config/upmpdcli-additional.txt under "- volumes" in your docker-compose.yml file. |
Can you post the logs from upmpdcli when trying to play to the yamaha device? |
upmpdcli-navidrome | CMDTALK: subsonic-app.py: browse: args: --{'cmdtalk:proc': 'browse', 'count': '1', 'offset': '3', 'flag': 'children', 'objid': '0$subsonic$/eyJuIjogInRhZyIsICJ2IjogImdsYm1zIn0=/eyJuIjogInRhZyIsICJ2IjogInIifQ=='}-- |
It looks like Yamaha devices do not like the Let's Encrypt certificates (which I am using for all my certificates). With the help of symfonium developer I was able to get audio out to Yamaha devices when enabling internal proxy support inside the symfonium app. I did go ahead and add the volume you suggested with the text file to my docker compose file. As you thought, it did not seem to have an effect. Thank You. |
Sorry to hear that. Do you have a spare computer/pi, so we can try and install a stack of upmpdcli+mpd and create a upnp renderer? |
Thank You. I will take a look at your link, and let you know. |
Hello, I just wanted to tell you that I successfully implemented the feature! :-) |
Thank You! |
Ok sorry, this is where I wrote a wrong reply, that message was for another issue. I thought I just never wrote that... but here it is and it's my mistake. |
Hello, maybe something to try!
to your enviroment variables. As I side note, these media server have worked for me in the past. I am not sure that when I tried to play from those servers to the WiiM, the configuration was not the one I am suggesting you now. Can't really remember. |
I've connected upmpdcli with navidrome. The connection between them works fine and I can see the genres pulled etc.
However, the moment I try any renderers in this case, Upplay, I receive an error "Service login or communication failure".
The upmpcli docker container is showing a traceback each time I try to get Upplay to connect:
upmpdcli | CMDTALK: subsonic-app.py: browse: args: --{'cmdtalk:proc': 'browse', 'count': '20', 'offset': '0', 'flag': 'children', 'objid': '0$subsonic$'}--
upmpdcli | CMDTALK: subsonic-app.py: browse: path: ----
upmpdcli | CMDTALK: subsonic-app.py: browse: path_list: --['0$subsonic$']-- last: --0$subsonic$--
upmpdcli | CMDTALK: subsonic-app.py: processmessage: processor raised: ['ArtistCover' object has no attribute 'getCoverArt']
upmpdcli | Traceback (most recent call last):
upmpdcli | File "/usr/share/upmpdcli/cdplugins/pycommon/cmdtalk.py", line 167, in processmessage
upmpdcli | outfields = processor.process(params)
upmpdcli | File "/usr/share/upmpdcli/cdplugins/pycommon/cmdtalkplugin.py", line 64, in process
upmpdcli | return self.dispatcher.run(params[prcnmkey], params)
upmpdcli | File "/usr/share/upmpdcli/cdplugins/pycommon/cmdtalkplugin.py", line 49, in run
upmpdcli | return func(params)
upmpdcli | File "/usr/share/upmpdcli/cdplugins/subsonic/subsonic-app.py", line 1285, in browse
upmpdcli | entries = _show_tags(objid, entries)
upmpdcli | File "/usr/share/upmpdcli/cdplugins/subsonic/subsonic-app.py", line 1263, in _show_tags
upmpdcli | if tag_enabled_in_initial_page(tag): entries.append(tag_to_entry(objid, tag))
upmpdcli | File "/usr/share/upmpdcli/cdplugins/subsonic/subsonic-app.py", line 1254, in tag_to_entry
upmpdcli | art_id = tag_art_retrievertagname
upmpdcli | File "/usr/share/upmpdcli/cdplugins/subsonic/art_retriever.py", line 54, in group_artists_art_retriever
upmpdcli | if not art: art = random_artist_art_retriever()
upmpdcli | File "/usr/share/upmpdcli/cdplugins/subsonic/art_retriever.py", line 124, in random_artist_art_retriever
upmpdcli | return _get_random_artist_cover()
upmpdcli | File "/usr/share/upmpdcli/cdplugins/subsonic/art_retriever.py", line 116, in _get_random_artist_cover
upmpdcli | return __get_random_artist_cover_by_initial(select_initial)
upmpdcli | File "/usr/share/upmpdcli/cdplugins/subsonic/art_retriever.py", line 108, in __get_random_artist_cover_by_initial
upmpdcli | return get_artist_cover(artist_id)
upmpdcli | File "/usr/share/upmpdcli/cdplugins/subsonic/art_retriever.py", line 121, in get_artist_cover
upmpdcli | return artist_cover.getCoverArt()
upmpdcli | AttributeError: 'ArtistCover' object has no attribute 'getCoverArt'
Expected behavior
Browse the artist list
Docker-compose.yaml file
upmpdcli:
image: giof71/upmpdcli:latest
container_name: upmpdcli
network_mode: host
environment:
- PUID=1000 #optional
- PGID=1000 #optional
- PORT_OFFSET=4 #optional
- UPNPAV=0 #not a renderer
- OPENHOME=0 #not a renderer
- FRIENDLY_NAME=NavidromeUpmpdcli
- SUBSONIC_ENABLE=yes
- SUBSONIC_AUTOSTART=yes
- SUBSONIC_BASE_URL=${SUBSONIC_BASE_URL}
- SUBSONIC_PORT=${SUBSONIC_PORT}
- SUBSONIC_USER=${SUBSONIC_USER}
- SUBSONIC_PASSWORD=${SUBSONIC_PASSWORD
- SUBSONIC_DOWNLOAD_PLUGIN=yes #optional, will download updated plugin from the specified branch
- SUBSONIC_PLUGIN_BRANCH=latest #optional, it is the branch to be downloaded if SUBSONIC_DOWNLOAD_PLUGIN is set to yes
restart: unless-stopped
Additional context
Container versions:
deluan/navidrome latest d8156521ce64
giof71/upmpdcli latest 6cbe66f83952
The text was updated successfully, but these errors were encountered: