Jump to content

API for next Release


flyingdutchman

Recommended Posts

It appears that the new release of Poweramp is getting nearer.

As I use the current api extensively in my app, New Playlist Manager, I have some questions regarding the API

- Will a new API be released at the same time?

- If not, will the existing API be compatible

- will there be any database changes

- will there be additional functionality. I am particularly interested in inserting into Poweramp playlists. At the moment you can create, edit, delete playlist and playlist entries but not insert new entries. Max did promise this functionality a long time ago.

I appreciate any details in advance

Link to comment
Share on other sites

After the recent release, the answer to whether there will be any changes is yes. My app is no longer able to list playlists. Lots of other functionality will most likely also not work.

I notice that Ratings have gone and has been replaced by stupid like/unlike. Surely a very unpopular choice as most Poweramp users use the rating functionality.

I suspect lots of Tasker implementations will also no longer work.

In the coming days I will have a look at the underlying database and assess the impact.

 

Link to comment
Share on other sites

Discovered so far:

- folder_playlists is now called playlists

- folder_playlist_entries is now called playlist_entries

- folder_playlists.name renamed to playlists.playlist

Also noted that the Rating field still exists, the new Like simply puts a 1 there.

I am puzzled why the rating widget has been replaced by the imho silly Like. It is very easy to reinstate the original star rating or offer a choice. Poweramp has options for all sorts so why not add this.

Inserting into Poweramp Playlists still not possible.


 
Link to comment
Share on other sites

On 8/10/2018 at 12:10 PM, flyingdutchman said:

After the recent release, the answer to whether there will be any changes is yes. My app is no longer able to list playlists. Lots of other functionality will most likely also not work.

 

I take it this is because Track info now only contains catUri=content://com.maxmpz.audioplayer.data/files, rather than the Playlist detail?

Track info still contains Cat=100 for playlist, and even info on how many items in the list, but as far as I can see nothing to actually identify the playlist itself.

This has screwed up a Tasker project I was working on too. At the moment I can't seem to find a way of identifying the playlist a currently playing track is in...

Link to comment
Share on other sites

9 minutes ago, flyingdutchman said:

The only differences are tablenames as listed above. Uris still return as before. Have a look at my other post where i have listed the query returned

 

Hmmm. Uris definitely not returning the same for me in v793 as compared to previous beta.

This is what I get returned in track info from the track changed intent:

Bundle[{artist=Aerosmith, catUri=content://com.maxmpz.audioplayer.data/files, realId=199, fileType=0, bitRate=320000, id=1193, cat=100, dur=301, path=/storage/6262-3231/Mp3's/Aerosmith/2011-Tough Love Best Of The Ballads/Aerosmith-01-I Dont Want To Miss A Thing.mp3, album=Tough Love: Best Of The Ballads, codec=mp3, flags=64, isCue=false, title=I Don't Want To Miss A Thing, sampleRate=44100, bitsPerSample=16, posInList=0, supportsCatNav=true, listSize=157, channels=2}]

You can see the cat is 100 so it's definitely playing from a playlist, but the caturi refers only to the file itself, and not the playlist as previously.

Am I missing something? Not sure what other post you're referring to - what query are you using?

 

 

Link to comment
Share on other sites

48 minutes ago, flyingdutchman said:

I do not use tasker but will have a look at the database to see where cat is held.

Perhaps you can attach the tasker definition so i can try it out

I kind of think it may be a bug with the latest release, rather than an intentional change.

So you can compare to the track info in the new version to the old version, I've just reverted to v709 and played the same track, and you can see immediately the caturi is different between the two versions:

Bundle[{artist=Aerosmith, catUri=content://com.maxmpz.audioplayer.data/playlists/1/files#13, realId=199, fileType=0, bitRate=320000, id=13, cat=100, dur=301, path=/storage/6262-3231/Mp3's/Aerosmith/2011-Tough Love Best Of The Ballads/Aerosmith-01-I Dont Want To Miss A Thing.mp3, album=Tough Love: Best Of The Ballads, codec=mp3, flags=64, isCue=false, title=I Don't Want To Miss A Thing, sampleRate=44100, bitsPerSample=16, posInList=12, listSize=13, channels=2}]

I've attached the Tasker profile and task if you want to have a go.

Is there any other way to query the current playlist?

 

Get_PowerAmp_Playlist.tsk.xmlGet_PowerAmp_Playlist.tsk.xml

Poweramp_Track_Intent_Received.prf.xml

Link to comment
Share on other sites

 

in the first example you/Poweramp use (s)

catUri=content://com.maxmpz.audioplayer.data/files,

which accesses all songs

whereas in the second

catUri=content://com.maxmpz.audioplayer.data/playlists/1/files#13

which accesses playlists with playlist_id=1 and (playlistentries)_id=13

image.png.efb509c0e9ae0d245fc75eea5b70f301.png

folder_file_id is the key to the track in the folder_files table

I will try the tasker configs in the next few days

Link to comment
Share on other sites

2 minutes ago, flyingdutchman said:

 

in the first example you/Poweramp use (s)

catUri=content://com.maxmpz.audioplayer.data/files,

which accesses all songs

whereas in the second

catUri=content://com.maxmpz.audioplayer.data/playlists/1/files#13

which accesses playlists with playlist_id=1 and (playlistentries)_id=13

image.png.efb509c0e9ae0d245fc75eea5b70f301.png

folder_file_id is the key to the track in the folder_files table

I will try the tasker configs in the next few days

Yeah, I can see what's going on, and it's Poweramp that has changed between v7.09 and v7.93. My Tasker setup was geared to looking for the number beteen playlists/ and /files (1 in the above example), but in the latest beta that no longer works.

I'm quite proficient when it comes to SQL (Oracle SQL at least) but I'm just using Tasker for this - I'm not really sure how/ if I can actually query the above table using Tasker? If I can then as you say I should be able to use realID from track info to get the playlist (although surely that's not necessarily a 1:1 relationship because a file could be in more than one playlist, so I'm not sure it will 100% be a solution to my goal of finding the currently playing playlist).

I'll do some more research...

Link to comment
Share on other sites

  • 3 weeks later...
On 9/6/2018 at 9:57 PM, flyingdutchman said:

Are there any plans to release a x86 version  of 795+ as using the amd emulator with Android Studio is just too slow. Testing becomes a nightmare

No. In fact, v3 works on actual Intel devices just fine (their ARM-x86 compiler is very good).

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...