Welcome to PMPlib project!

Portable Media Player library (PMPlib) is an open source project for the development of management software/library for various portable media players. PMPlib project currently supports the following hardware:


PMPlib (EasyPMP) version 0.14 released (2007-02-12)

I am pleased to announce that PMPlib 0.14 was released with numerous enhancements and improvements.

PMPlib Forum is reopened (2007-01-05)

I set up PMPlib Forum at my private server since I could not install the forum in the sf.net server due to the tight security. Let us share the information about PMPlib and portable media players in the forum. I apologize those who posted messages at the forum in sourceforge.net. I didn't reply to some messages.

The forum also takes over EasyH10 Forum. You can the same user name and password if you have an account for the EasyH10 Forum.

PMPlib (EasyPMP) version 0.13 released (2007-01-05)

After the short break of the project (mostly because Nyaochi was busy), we are pleased to announce PMPlib 0.13.

The database format of iriver E10 was completely new to us. It is totally different from the 1st (H100/H300), 2nd (H10), and 3rd (H10Jr/U10) generation of media database employed in iriver players. The 4th generation database consists of multiple binary search trees (probably AVL trees) so that the player can implement various navigation paths (e.g., Artist->Album->TrackNumber, Title, Genre->Album->TrackNumber, etc) efficiently. A node in a binary search tree stores: the node value (BYTE, WORD, DWORD, or UCS-2 string); a linear-linked list pointing to records; and links to left and right children.

Although the database reader/writer worked fine on my experiments, there might be some problems as it is not based on a specification but the analysis. Should you have a problem with a database generated by this program, please report the problem in the forum. You can recover from the error with iriver plus 2 or 3 in the following steps.

  1. Delete three database files in your player, "/path-to-e10/System/db.dat", "/path-to-e10/System/db.dic", "/path-to-e10/System/db.idx". You need to enter the folder name (e.g., "E:\System") directly to the address bar of Explorer since the folder is hidden.
  2. Delete local database files of iriver plus 2 or 3, "/path-to-iriverplus/plus2_0.db" and "/path-to-iriverplus/plus2_0.bak", e.g., "C:\Program Files\iriver\iriver plus 3\plus2_0.db" and "C:\Program Files\iriver\iriver plus 3\plus2_0.bak".
  3. Run iriver plus 2 or 3. This will rebuild the database automatically. If not, choose the menu item, "Tools"->"Portable Device"->"Database Update".

Enjoy your music life with E10 and EasyPMP!