Jump to content

Need explanation about ratings saved in m3u8 playlists


Chrisubuntu

Recommended Posts

Max will be able to tell us more about this new feature, but the way I read it is that Playlist files (.M3U, .M3U8, etc) can contain extra metadata information regarding the tracks that they contain, and Exporting a Playlist from Poweramp now includes the rating info for each listed song in the format:
   #EXT-X-RATING:<n>
where <n> is between 0 and 5

That new Settings option controls whether PA should re-read such metadata from Playlists, and apply it to songs, whenever a Playlist is re-scanned in from your device's storage.

It does not, as far as I've been able to test, do anything with the POPM ratings tags that can be included in normal song files (PA neither reads nor writes them) .

Andre

Link to comment
Share on other sites

Poweramp doesn't sync ratings to tracks, but now allows syncing ratings via m3u8 playlists. For example you have a new device and you want to transfer everything without using backup software:
- on old device in Poweramp go to All Songs, add all songs to some playlist (for example to /Playlists/Ratings.m3u8)
- export Poweramp playlists, export Poweramp Settings
- copy music to the new device including exported playlists (that it, /Playlists)
- on new device in Poweramp import settings, then select/check your music folders in Settings / Library / Music Folders AND /Playlists folder

That will import ratings as well + all your previous playlists. You may remove Ratings.m3u8 playlist now or keep it for the future.
In the next builds, based on the feedback, the exporting/importing procedure probably will be simplified further.

Poweramp will import ratings from the previously exported m3u8 in two cases:
- there is no such playlist in Poweramp yet
- the playlist is explicitly opened via File Manager in Poweramp (that creates new playlist with "Imported..." label)

PS Ratings are not synced in Poweramp due to 3 issues:
- only few formats support them. To sync to/from all supported formats, we need to invent some non-standard tagging schemes
- many files in the wild are broken, have multiple tags at once, and writing tags to them will break them further to the unplayable state
- large files can't be tag edited reliable on mobile device when you app can be killed at any time not having chance to write that 1gb flac fully

Link to comment
Share on other sites

@maxmp you can make the rating saved in mp3 files, their size is ~ 10Mb (or at least read the rating from the tags if there is one)
How else can I synchronize the rating from AIMP (PC) to Poweramp

For example, Player Pro and Neutron player can save raitings in tags

Link to comment
Share on other sites

Max has always been reluctant to go down the route of saving ratings directly into audio files - although I agree that it does seem to work fine for other modern apps, and just reading a rating tag (if one is found) shouldn't be much of a problem during PA's library scanning phase.

I seem to recall that most of the issues were related to writing tags. While the tag is indeed very small (not quite your 10Mb :) ) in some circumstances it could still require the whole file to be re-written, which would cause playback issues if it is done on-the-fly. Also while ID3 has the POPM tag, which is pretty widely supported now, not all audio formats provide this. Personally, I would suggest writing a suitable tag to any file format that does support it, and if the entire file needs re-writing this should be done using a temporary file which only gets renamed and used after the write process has completed successfully.

Andre

Link to comment
Share on other sites

@andrewilley the tag based ratings are definitely in the plans (for this year), but it requires some additional work on Poweramp tag scanner which is optimized for the scanning speed and for the reading tags from as much "broken" files as possible. Unfortunately, there are broken files in the wild and writing tags to them will break files to the point they can't be played and we can't do much about that (except may be detecting that case and not writing tag). I have subset of such test files (sent by our users) which fail badly in Foobar, VLC, old winamp, other players for PC. 

Editing tags require some minimal effort in Poweramp and user is somewhat aware of the process, while just hitting thumb up and breaking the file (or in the best case, detecting the bad file and not changing rating) will be very unexpected, I guess. 

Also, as you seen in other players, the number of rating tag "formats" is large. For example, mp3 file usually has id3v2 tag, but at the same time, APE tag may exist there, or multiple id3v2 tags with the conflicting rating. This is a mess.

The future tag rating code will indeed read ratings tags, but saving will be implemented via Settings export option with the appropriate warning messages (bad files will be skipped, slower but more accurate tag reading/writing code will be used there).

Link to comment
Share on other sites

1 hour ago, maxmp said:

The future tag rating code will indeed read ratings tags, but saving will be implemented via Settings export option with the appropriate warning messages

Perfect, that should keep everyone happy without kill too many music files along the way.

Andre

Link to comment
Share on other sites

On 7/17/2020 at 12:04 PM, andrewilley said:

Personally, I would suggest writing a suitable tag to any file format that does support it, and if the entire file needs re-writing this should be done using a temporary file which only gets renamed and used after the write process has completed successfully.

I completely agree that if the file is broken, then  do not need to overwrite it. We will wait for updates))

Link to comment
Share on other sites

  • 7 months later...
On 7/17/2020 at 2:25 PM, maxmp said:

the tag based ratings are definitely in the plans (for this year), but it requires some additional work on Poweramp tag scanner

Hi,

Are there any news on having ratings in tags?

Also, any news on improved ratings export?

Link to comment
Share on other sites

On 7/13/2020 at 2:53 PM, maxmp said:

Poweramp doesn't sync ratings to tracks, but now allows syncing ratings via m3u8 playlists. For example you have a new device and you want to transfer everything without using backup software:
- on old device in Poweramp go to All Songs, add all songs to some playlist (for example to /Playlists/Ratings.m3u8)
- export Poweramp playlists, export Poweramp Settings
- copy music to the new device including exported playlists (that it, /Playlists)
- on new device in Poweramp import settings, then select/check your music folders in Settings / Library / Music Folders AND /Playlists folder

That will import ratings as well + all your previous playlists. You may remove Ratings.m3u8 playlist now or keep it for the future.
In the next builds, based on the feedback, the exporting/importing procedure probably will be simplified further.

Poweramp will import ratings from the previously exported m3u8 in two cases:
- there is no such playlist in Poweramp yet
- the playlist is explicitly opened via File Manager in Poweramp (that creates new playlist with "Imported..." label)

PS Ratings are not synced in Poweramp due to 3 issues:
- only few formats support them. To sync to/from all supported formats, we need to invent some non-standard tagging schemes
- many files in the wild are broken, have multiple tags at once, and writing tags to them will break them further to the unplayable state
- large files can't be tag edited reliable on mobile device when you app can be killed at any time not having chance to write that 1gb flac fully

I had some issues with that, so my explanation and solution:

I stored my music on SD card. I needed to replace an SD card because of it starting to misbehave. I copied all of my music from one SD card to another using computer. Directory structure did not change on SD card apart the part where android generates SD card mount point:
Old was:

/storage/90AB-45CA/Music

new become :

/storage/54AC-B23A/Music

So naturally Poweramp was not able to resolve ratings.

I did a rescan (not full as I did not want to loose ratings), but that did not help to assign ratings.

A found this thread after that and tried to add all songs to new playlist and export them. All songs with ratings were exported, but importing them failed, because now in my playlist I had all songs duplicated:

#EXT-X-RATING:5
/storage/90AB-45CA/Music/Demo.mp3
#EXT-X-RATING:0
/storage/54AC-B23A/Music/Demo.mp3

Basically ratings were for old path files and new path files with no ratings overwrote them while Poweramp was importing it.

Solution:

1. Edit the exported all songs playlist and remove all songs with new path using regexp:

#EXT-X-RATING.*\n/storage/54AC-B23A/.*\n

->


 

2. Replace old path with new one:

90AB-45CA

->

54AC-B23A

3. Save playlist, upload to android and do a full rescan as suggested in original suggestion by Max.

 

 

 

Link to comment
Share on other sites

PA does not use any root parts of path name (such as "90AB-45CA", "C:\Users\" etc) when matching up the contents of .M3U or .M3U8 playlist files. Instead it looks for a match of the audio filename AND the first containing folder only.

So in your example playlist file,
/storage/90AB-45CA/Music/Demo.mp3
/storage/54AC-B23A/Music/Demo.mp3

Both of the above lines would refer to the first database file it finds that is called Demo.mp3 which is stored in a folder called Music.

Of course if you have two duplicated entries for the same file (as per your example) I would expect the import process to see the first one and assign the Demo.mp3 song a rating value of '5', and then immediately come across the second entry and assign the rating back to zero.

Ideally you would have done all this before reformatting the card - and thus scanning in a whole duplicated set of 'new' songs - but to avoid such duplicates you could build your 'mass-export' playlist using the Folders Hierarchy category. Long-press on the original folder which contains all of your rated songs and then "+ Playlist". Then use 'Export Poweramp Playlists' to export every song to an M3U8 file. Check that all contents have been exported correctly with ratings before doing a Full Rescan.

Andre

Link to comment
Share on other sites

Archived

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

×
×
  • Create New...