by tam.smith » Mon Dec 19, 2011 10:55 pm
After digging around in the system files on my Player, I answered some of my questions:
Playlist data used by the stock media player (maybe others as well) are kept in a database file located in the folder /dbdata/databases/com.android.providers.media. (note, your player needs to be rooted and you need a file manager that can see the root to see this location) There were two databases in this folder: internal.db and external-3f30ac9d.db. My music is all on my external SD card, so I looked in the external db file. There were 4 tables in this database that had to do with playlists: audio_playlists, audio_playlists_map, music_audio_playlists, and music_audio_playlists_map. The playlists that I had synced to the device using the usb mass storage mode had records in audio_playlists and audio_playlists_map, while the playlists I had synced in usb media player mode had records in music_audio_playlists and music_audio_playlists_map. The audio_playlists and music_audio_playlists tables had records with corresponding to each of the playlists, while the audio_playlists_map and music_audio_playlists_map tables had records pointing to the location of each song on the playlists.
I noticed that for the playlists I synced while in media player mode, the record in music_audio_playlist table pointed to the *.pla file located on the external SD card. The playlists synced in mass media mode didn't have pointers to any type of playlist file, so maybe MediaMonkey isn't creating a playlist file in mass media mode but writing the playlist information directly to the database files during the syncing process.
I also noticed that when I deleted the playlist that was synced in mass media mode, the corresponding records had not been deleted in the database files. This would explain why when importing playlists into poweramp, it was importing the old playlist from the audio_playlist table. (either poweramp doesn't look in the music_audio_playlist table in the import process, can't read *.pla files, or both) I deleted the old records from the audio_playlist table (which also cleared the records in the audio_playlist_map table). You need root access and a database editor to do this.
Anyway, I thought I'd post this info in case others where interested as I found lots of posts in google searches where people were asking where the stock player stored the playlist info, but not any answers.
After digging around in the system files on my Player, I answered some of my questions:
Playlist data used by the stock media player (maybe others as well) are kept in a database file located in the folder /dbdata/databases/com.android.providers.media. (note, your player needs to be rooted and you need a file manager that can see the root to see this location) There were two databases in this folder: internal.db and external-3f30ac9d.db. My music is all on my external SD card, so I looked in the external db file. There were 4 tables in this database that had to do with playlists: audio_playlists, audio_playlists_map, music_audio_playlists, and music_audio_playlists_map. The playlists that I had synced to the device using the usb mass storage mode had records in audio_playlists and audio_playlists_map, while the playlists I had synced in usb media player mode had records in music_audio_playlists and music_audio_playlists_map. The audio_playlists and music_audio_playlists tables had records with corresponding to each of the playlists, while the audio_playlists_map and music_audio_playlists_map tables had records pointing to the location of each song on the playlists.
I noticed that for the playlists I synced while in media player mode, the record in music_audio_playlist table pointed to the *.pla file located on the external SD card. The playlists synced in mass media mode didn't have pointers to any type of playlist file, so maybe MediaMonkey isn't creating a playlist file in mass media mode but writing the playlist information directly to the database files during the syncing process.
I also noticed that when I deleted the playlist that was synced in mass media mode, the corresponding records had not been deleted in the database files. This would explain why when importing playlists into poweramp, it was importing the old playlist from the audio_playlist table. (either poweramp doesn't look in the music_audio_playlist table in the import process, can't read *.pla files, or both) I deleted the old records from the audio_playlist table (which also cleared the records in the audio_playlist_map table). You need root access and a database editor to do this.
Anyway, I thought I'd post this info in case others where interested as I found lots of posts in google searches where people were asking where the stock player stored the playlist info, but not any answers.