alehouse / cantata

Automatically exported from code.google.com/p/cantata
GNU General Public License v3.0
1 stars 0 forks source link

cantata cannot browse media servers if the database backend is upnp #591

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Which version of Cantata?
1.5.0

Which build? KDE, Qt4, Qt5, Windows, Ubuntu, Mac?
Qt5, arch linux

What steps will reproduce the problem?
set database backend in mpd as upnp and stream music from a upnp/dlna server

What is the expected output? What do you see instead?
it should appear under the "browse folders" as a list of available upnp/dlna 
servers and their broadcasted medias as subfolders, but the list is empty

Original issue reported on code.google.com by andrea.p...@gmail.com on 20 Nov 2014 at 4:35

GoogleCodeExporter commented 9 years ago
Must admit I have never heard of this setup. Is this a new 0.19 or 0.20 
feature? Do the artists appear correctly in the artists tab?

Cantata uses the 'listall' command to populate the folders tab. Can you try 
contacting MPD via telnet? e.g. 

1. In a terminal window, type:
    telnet localhost 6600

   (replace localhost with another hostname if required, and 6600 with the correct port number)

2. If you're MPD is password protected, type:

    password "your password"

3. Then type:

    listall

Are the upnp details listed? For a standard file backend, you should see 
something like:

    directory: Whitesnake
    directory: Whitesnake/1987
    file: Whitesnake/1987/01 Still Of The Night.mp3

Cantata only parses lines starting with "file: " or "directory: "

Original comment by craig.p....@gmail.com on 20 Nov 2014 at 4:51

GoogleCodeExporter commented 9 years ago
the feature was present in git source since ~1 year, but it's been released 
officially in the tarball since 0.19

listall does list only the main paths:
listall
directory: Alarm
directory: Alarm/Browse Folders
directory: Alarm/Music
directory: Alarm/Pictures
directory: Alarm/Video
OK

Alarm would be the media server's name, and those are virtual folders created 
by the upnp db backend that mirror the upnp media tree

artists or albums don't appear at all, but the behaviour is consistent with all 
other clients ( i think it's due to the inherent functionality of the upnp 
plugin not exporting the list )

mpd-side search does work correctly and i can find/queue/play songs that way

Original comment by andrea.p...@gmail.com on 20 Nov 2014 at 5:03

GoogleCodeExporter commented 9 years ago
Sorry - but I dont use MPD from git.

-------

So, I'm assuming the folders are listed in folders view - but just no songs? If 
so, then what else can Cantata do? If MPD does not send the file-list, how is 
it supposed to know they are there??

Does this work in gmpc?

Original comment by craig.p....@gmail.com on 20 Nov 2014 at 5:12

GoogleCodeExporter commented 9 years ago
as i said, the feature has been available in the releases since 0.19, so you 
should have it provided you're using an up-to-date version

again, as i said, the folder list is empty in cantata, no items at all

gmpc and ncmcpp _do_ list the root folders and can expand/navigate into them 
once activated showing the sub-items, folders, etc. not sure trough which 
command ( i am not familliar with mpd's internal protocol )

Original comment by andrea.p...@gmail.com on 20 Nov 2014 at 5:20

GoogleCodeExporter commented 9 years ago
I'm on Ubuntu, with MPD 0.18.

Anyway, I'm assuming gmpc, etc, work because thy use the 'lsinfo <folder>' 
command.

Please try this;

a. Stop cantata
b. Edit ~/.config/cantata/cantata.conf, and add:

    alwaysUseLsInfo=true

to the '[General]' section.

c. Restart cantata

d. Go to the 'Artists' tab

Does the artist info now appear? If not, try a refresh.

Original comment by craig.p....@gmail.com on 20 Nov 2014 at 8:22

GoogleCodeExporter commented 9 years ago
lsinfo makes the local cantata database to be populated, however it has one 
inconvenience:
since the dlna servers export music under the following formats:
servername\Music\All Music\ .....
servername\Music\Album\Albumname\ .....
servername\Music\Artist\Artistname\Albumname\ .....
servername\Music\Artist\Artistname\Albumname\ .....
servername\Music\Folders\[filesystempath]\ ....
servername\Music\Genre\[filesystempath]\ ....
each file gets listed multiple times when scanned by cantata, I guess this 
should turn into a feature request to add a mask to restrict the dir scanning 
to a single path ( eg servername\Music\All Music\ ), so i would get the entries 
only listed once ( and hopefully considerably accelerate the scanning process )
I am unsure whenever those virtual folders names are standardized across dlna 
servers, I do know that virtually everyone of them create them tough so 
switching server would not solve the problem
I believe a simple config entry on the line of 
"RestrictPathScanning=ServerA\Music\All Music,ServerB\Music\My Music", that 
enforces scanning only the specified path(s), ideally it should accept multiple 
paths because multiple dlna servers can coexist in the same network and mpd can 
access virtually all of them

as sidenote: the folder listing is still empty, but i do not consider that 
being a big deal

Original comment by andrea.p...@gmail.com on 21 Nov 2014 at 6:36

GoogleCodeExporter commented 9 years ago
Yeah, adding such a feature sort of makes sense. I'll add this to the 1.6.0 
release (as it'll introduce new strings)

Original comment by craig.p....@gmail.com on 21 Nov 2014 at 5:58

GoogleCodeExporter commented 9 years ago
I've added a new config item 'topLevel' to set the root folder. This is 
per-collection, and no UI just yet. Can you checkout the trunk version of 
Cantata and try? If so, you need to edit the config file to have (e.g.)

[Connection-Default]
topLevel=servername\Music\Artist

You're config file should probably already have a 'Connection-Default' section, 
if not then replace 'Default' with whatever you connection is named.

Does this work? Does it speed up the refresh? I did a quick try (by setting 
topLevel to an artist's name), and it seemed to work for me.

Original comment by craig.p....@gmail.com on 21 Nov 2014 at 6:11

GoogleCodeExporter commented 9 years ago
sorry for the delay, the feature does work and the refresh has greatly sped up, 
i didn't use the artist folder because each artist folder has entries like "All 
Songs" along each album's query which would result in duplicates, I used "All 
Music" which resulted in unique results in the whole tree, everything seems to 
be working properly, thanks a lot

Original comment by andrea.p...@gmail.com on 24 Nov 2014 at 8:58

GoogleCodeExporter commented 9 years ago
Thanks for confirming this. I'll add a setting to the config pages to set this 
path - perhaps with an example for upnp

Original comment by craig.p....@gmail.com on 26 Nov 2014 at 9:50

GoogleCodeExporter commented 9 years ago
Config UI item added to trunk.

Original comment by craig.p....@gmail.com on 26 Nov 2014 at 1:01