pwnt.be

Lplayer for the Rest of Us

This post aggregates some interesting information for those wanting to use the iriver Lplayer portable media player without the bundled iriverPlus software. It may be of use to those running an operating system other than Windows, or to Windows users who would like to avoid iriverPlus.

While all this is targeted at Lplayer owners, a lot of the information probably also applies to the device’s predecessors, the U10 and the Clix, as well as various other portable media players produced by iriver.

The following assumes that the Lplayer is set to the MSC (UMS) transfer mode, so that it may be used as a USB mass storage device. Thus, any modern operating system should identify it as an external hard drive.

Music

Because the Lplayer supports a myriad of formats, chances are it will play pretty much any audio file placed in its Music folder. Of course, there are also numerous formats that it doesn’t support. To get those to play, generally speaking, the easiest approach is to decode them to a WAV file and then encode that file to a supported format. The method for decoding obviously depends on the format of the source file, but for encoding, the following free cross-platform command line utilities may be useful:

  • LAME is a popular MP3 encoder.

  • The Vorbis tools contain oggenc for encoding to Ogg Vorbis.

  • FLAC encodes to the lossless format of the same name.

A more common issue with music on the Lplayer is playlist creation. Most users’ playlists will probably be in the popular M3U format, which is unsupported at the time of this writing. Instead, the Lplayer uses iriver’s PLA format. The information gathered at this playlist specification for the iriver T50 still seems to apply. A Perl script is available to automatically turn M3U playlists into PLA ones, in the Playlists folder.

Videos

The Lplayer has support for MPEG4 SP, Xvid SP and WMV9 SP. Video files converted using iriverPlus will be in WMV9 SP format. Instead, FFmpeg may be used to convert most video files to Xvid SP files that the Lplayer can handle. The following command line options are recommended:

-f avi
creates an AVI file.
-vcodec mpeg4
creates an ISO MPEG4 video stream.
-vtag XVID
sets the FourCC to Xvid.
-profile 0
enables the Simple Profile (SP) option.
-b 384k
encodes the video stream at 384 kilobits per second.
-s 320x240
resizes the video stream to 320×240, implying a 4:3 aspect ratio.
-r 30
sets the video frame rate to 30 frames per second.
-acodec libmp3lame
creates an MP3 audio stream using LAME.
-ab 128k
encodes the audio stream at 128 kilobits per second.
-ar 44100
sets the audio sampling frequency to 44.1 kilohertz.
-ac 2
creates a 2-channel stereo audio stream.

Note that these options imply that support for all the necessary formats has been compiled into the FFmpeg executable. It may be necessary to compile or obtain an FFmpeg build that is able to decode the input file and/or encode to MPEG4 video and MP3 audio.

Firmware Upgrade

It may seem as though the only way to upgrade the Lplayer’s firmware is through iriverPlus’s menu. However, the fact of the matter is that the actions iriverPlus takes are relatively simple:

  1. It downloads firmware.inf to obtain the latest version number.

  2. If the player’s firmware is outdated, it downloads the U15.HEX firmware image from the URL listed in firmware.inf.

  3. It places the downloaded file in the player’s System folder.

The player will not actually initiate the firmware upgrade unless U15.HEX is moved up one level. Regardless, performing the above steps manually is child’s play. Moreover, this simple Perl script even automates them.

Disclaimer

Most of this information was collected from some Google searches and a lot of fidgeting with my own Lplayer. I cannot be held accountable for any problems or damage caused by the information and software listed.

Update: You might also find my collection of LPlayer scripts useful.

Comments on This Post

  • Says PixelPirate, roughly 1 year and 9 months ago:

    For some reason I get this error for the updator Cannot rename “/tmp/JUK__QncXR” to “/media/LPLAYER/u15.hex”: Invalid cross-device link at /media/LPLAYER/firmware-upgrade.pl line 105.

    Any fix?

  • Says Tim, roughly 1 year and 9 months ago:

    Hmm, there isn’t any linking going on, so I’m not sure what the problem is. At any rate, this shouldn’t be related to the script.

    Maybe /media/LPLAYER itself is a link? In that case, try ls -l /media/LPLAYER to get the actual path.

  • Says jesus2099, roughly 1 year ago:

    Hey Tim, thanks very much for your informative post !
    It’s a pity that I discover it now that we probably won’t have any more firmware updates.
    Upgrading it with the software was a pain, I had to install the software only for that matter…

    My Lplayer has a few glitches like memory failures inducing random bad sectors, can’t get rid of fade-in even if switched off in settings, no m3u playlist support, sometimes random MP3 files get unknown” ID3 fields, no ID3v2.4 support, etc.

    Your perl script gives me hope on playlists as I’ve unsuccesfully tried a great and simple Windows m3u2pla.exe converter  — Unfortunately, it didn’t work with my Lplayer when I tested it.
    So I’m trying yours (looks like it outputs a different header in the PLA file) … but am currently failing at running any perl on my PC… ^o)

    I still like my Lplayer very much anyway (and I put the cover pics in ID3). :D

  • Says Tim, roughly 1 year ago:

    Some of those issues sound familiar. I don’t use my Lplayer anymore, but I assume my scripts still work. Perl on Windows should be mostly painless with ActivePerl or Strawberry Perl. Just change DEVICE at the top of pla-mate.pl to match the drive letter of your player and then run perl pla-mate.pl. That should convert M3U playlists to PLA as well as generate PLA files inside folders that don’t contain playlists yet.

  • Says jesus2099, roughly 1 year ago:

    I was able to generate a probably correct PLA with your portable strawberry advice and m3u2pla from this page (it’s simpler than pla-mate, as I just need to convert a m3u).

    But the very bad idea I got was to download the latest firmware (which I already had on my Lplayer) and into the Lplayer root. Now the device is stuck at boot, probably due to another random memory failure in the file when it was written… *-)
    Why did I do this… now my Lplayer is stuck. Pressing the reset button just resets and hang again at iriver starting logo.
    My battery is 100% full so I’m going to wait very long now… and it probably won’t un-hang even though… :'(

  • Says Tim, roughly 1 year ago:

    Yikes, that sounds bad. I doubt that letting the battery drain will do any good, since the effect will be pretty much the same as resetting. I suppose there’s a small chance it could fix the memory issue, but I wouldn’t count on it. I guess the warranty’s expired by now?

  • Says jesus2099, roughly 1 year ago:

    What a stupid idea I had to install that firmware again ! :| I knew my device had memory corruption problems and a big file like this u15.hex (24.6 Mb) was very likely to stumble across one or two random bad sectors.
    Batteries now ran out but nothing changed, reset pinhole, PC plugging, everything makes it start but hang at “iriver” welcome logo…
    Yes, the warranty is expired. I was too lazy to return it for memory failures but I should really have done it near the end of warranty…
    I didn’t find anything that looked like a manual hard factory reset inside the device either… :^) (if you have better eyes, tell me if you see something worthy).
    I contacted iriver but all my previous e-mails to them along the years have remained unanswered. :'(

  • Says fieryy-AA, roughly 1 month and 1 week ago:

    zeg me wat laptop te kopen ..?

Post a Comment

This contraption supports Gravatar, as well as Markdown with SmartyPants. If none of that made sense to you, feel free to ignore it and start typing.

  • :)
  • :D
  • ;)
  • :-O
  • :P
  • :@
  • :$
  • :S
  • :(
  • :'(
  • :|
  • :-#
  • 8-|
  • ^o)
  • :-*
  • +o(
  • :^)
  • *-)
  • 8-)
  • |-)
Disorientation
Continuity
Tangentiality
Retributions
Koop eens een Nokia Lumia 800
Samuel Debruyn
Bizar Hairdressing & Beyond
Hanne, Hanne, Ruxi, Wim, Tim, Sarina, Lies, Lynn, erwin, Ano, Frederick, Jacqueline, Wazaaa, Tim, Rebecca, Charlie
Lplayer for the Rest of Us
fieryy-AA, jesus2099, Tim, jesus2099, Tim, jesus2099, Tim, PixelPirate
Automating OpenVPN Connection on Windows XP
blanky, sky, Tim, Geb, 12vpn, Tim, neecom
Simple Linear Regression with JFreeChart
Nicolas Machado, Sascha, Tim, Sascha, Tim, Sascha
Colophonics