Jump to content

Parse IDv3 tag data from playlist containing stream files


Dr_Hurr

Recommended Posts

Hello, first post here. I'm a longtime user of Poweramp ever since Android 2.3 and Galaxy S II. I am wondering about Poweramp's ability to extract IDv3 tag (or equivalent) from web hosted mp3s. With the direction that modern phones are taking to remove external SD card slots, I'm looking at hosting my music database on a server so that songs are accessible from links such as https://my.site.com/folder/song%201.mp3

So far I've created an .m3u playlist on my server which contained the links to all the songs in all the artist/album folders hosted on the server; I then take the playlist.m3u and put it on my phone in a folder, then tell Poweramp to scan that folder to pick up the playlist. That works fine in terms of accessing the songs and playing them. The problem is that songs don't show artist, album and title tags when accessed in this way, only the full path to the file that includes html %20 replacements for spaces etc, which renders the search tool useless. A workaround was to parse each file with the exiftool and extract the artist and title, then add it to my playlist for each file as "#EXTINF:-1,$artist - $title" above each file link, but that is only a partial workaround as it still doesn't contain album information or any other information about the track.

So now that I've painted a picture of what I've done and what I'm trying to achieve, my question is this: Can Poweramp extract IDv3 tag data directly from a file hosted on a server? If yes, how and where do I enable that feature? And if not, what would be my options to attempt to emulate complete tag data for mp3s stored on a server? Thanks for reading this far.

Link to comment
Share on other sites

First, using #EXTINF won't do what you want because PA ignores everything in playlist files apart from the link to the audio file. Artist/Album/Title/Genre/etc info is sourced from the pre-populated music database, not from the audio file at playback time. PA does not read any tag data on the fly, only during its Library Scanning process which populates that information into the local music database. Hence such information only applies to local files, not to external streamed files that are linked via playlists (which never form a part of the music database).

Shoutcast or PLS streaming radio stations are able to broadcast song information if they want though, and Poweramp will react to that content if it sees it - and even try to update cover artwork to match.

At some point in the future, PA will directly support scanning of audio files from personal online storage (Google Drive, etc) into the music database. However that is unlikely to read tags at all, other than at playback time, because of the poor access speeds for large numbers of files; it will be more of a folder/file browsing system to select your music, not a Library Category process.

Andre

Link to comment
Share on other sites

5 hours ago, Dr_Hurr said:

 if I can hack the prepopulated music database with the file location as being on https://my.site/file.mp3 instead of /sdcard/path/to/1.mp3 

Not really, there's a lot more to accessing content over the internet than simply changing "/sdcard/..." to a URL like "https://..."

The only way PA's music scanner could read remotely stored files is if you have some sort of app that can map your external location to a symbolic storage location within the local Android file system. And even then, it would be tortuously slow to scan as PA expects to have full and fast access to storage so it can read every file's contents.

Andre

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...