Closed flrnns closed 3 years ago
If the Ampache server has had some actual bug in their API implementation, then it's unlikely that the same bug would be in the API implementation of the Music app. But we might well have some bugs of our own. But the point is, we share no source code with the "real" Ampache server and these two implementations are totally distinct.
Furthermore, the API implementation in the Music app doesn't exactly match any of the API versions 4.x.y, so it's more or less an arbitrary choice which version number we should use: some method may already be on par with Ampache 4.4.0 while some other method is more like 4.0.0. And on the other hand, the Music app has never implemented the whole Ampache API but only a subset. This subset has been selected as an intersection of what can be easily achieved with our current data structures and what is actually used by the existing client apps.
I don't think that moving on to API v5 is on schedule any time soon because this version is not backward compatible with v4.x.y. As of today, I don't know of any client which would be utilizing the new API so moving to it would just break compatibility with everyone. But I guess that maybe the support could be eventually added alongside the v4 API, and we could select the format of the responses based on the optional argument version
on the handshake
action.
Anyway, if you can mention some specific API methods where the support should be modernized or otherwise improved, then please do. I can then check what can be done.
Sorry I cannot mention any specific API methods or more thechnical details as I am just a user...
It is just really frustrating that the "supported" Subsonic Players look awkward, lack usability and cannot handle playlists (except the most awkward app on android). And the same for ampache, there is only one iOS app that looks good, which is currently under development, but there playlists do not work either. According to the developer it should be related to api version 400001.
Hmm, I have been successfully using playlists on all four Android clients listed on https://github.com/owncloud/music/wiki/Subsonic. If the apps are usable or not, is another question, but functionally they should all work. What are the symptoms when the playlists don't work on your system?
The playlist handling should work also in the Ampache API, but I haven't found any Ampache clients which would have anything more than read-only support for the playlists. That is, the playlist creation and editing through the Ampache API has not been tested with any actual client, and these features may well include some bugs.
I have no insight about the iOS apps as I don't have any iOS devices to test with.
Android: I am only able to load the playlists and play their songs with Subsonic Music Streamer. All other apps just display the playlists, but not their contained songs and thus I can't play them. Sometimes there will be a "connection error", sometimes just nothing happens. Adding songs to these playlists will work, but only temporarily on the phone. Songs are not stored within the playlists on the server.
For iOS I found an app that supports both subsonic and ampache, and the subsonic connection works perfectly fine, but with the ampache connection it is the very same symptoms as mentioned above. The app is https://github.com/BLeeEZ/amperfy So for now I am going to stick to iOS and this app, using subsonic
Okay, thanks for the description. There is now probably something in your playlists or the library in general which makes the Music app server behave badly. Although it's a bit weird if one of the Subsonic clients works while others don't. When you experience these issues, can you find anything from the nextcloud.log file on your server? If you post any excerpt from the log here, then note that the log lines related to the Subsonic API calls will contain your password/API-key in plain text or trivially coded format as arguments to the HTTP call, so you probably want to censor those (the password argument may look something like p=1k3d902sklfs
or p=ENC:12ab93bcf730834503b8
).
The Music v1.3.1 updated the Ampache API version to 440000. So the request of the opening post is now fulfilled but this certainly doesn't help on the actual problem described in the later posts. However, the actual problem is impossible to study any further without any logs.
As a possibly related note, the Music v1.4.0 fixed one bug which could cause at least on Ultrasonic that the playlist contents were not shown. Also, it optimized the performance of loading contents of long playlists via Subsonic API. This might help if the root cause of the problem was too slow responses from the server and the client timed out.
Please update the api to version 500001 or at least 430000. There are too many bugs in version 400001 to properly work (https://ampache.org/api/api-changelog)