LMP-ng
Moderators:krom, SimonB, tepples, poslundc, wintermute, luna_s
Hello,
I got myself a DS last month, and a flashcart last week... Looking through the projects, I liked Licks Media Player (ipod-like player) very much, but unfortunately it was discontinued :-(
So... I just decided to finish it ;-). In the end, it became a complete rewrite. No more C++, only pure C. At ths time, I only have some basic functionality, WAV playback (files must end in .wav) and libmad playback (files must end in .mp3).
I need some feedback, if you can try, just download at http://www.cecm.usp.br/~lucas/lmp-ng/ . Theres two versions, a .nds and a .ds.gba. Both are compiled with libfat DLDI, so you can patch if your flashcart does not work out of the box. The source is also in the same page.
Oh... And this is my first homebrew, so expect many bugs.
You can use START to alternate between console and graphics mode.
I'm mostly interested in feedback regarding sound quality (how does it compre to other mp3 players for ds, e.g. moonshell) and stability issues.
There's 3 different play modes, mode 1, mode 2 and mode 3 ;-) SELECT alternate between these modes, but you have to PAUSE/UNPAUSE so the mode will be applied. If you happen to test, please, send feedback on which one you think sounds the best. (these modes basically do some linear oversampling, just like moonshell).
Also, send your wishlists, I'll implement the most popular features first!
I got myself a DS last month, and a flashcart last week... Looking through the projects, I liked Licks Media Player (ipod-like player) very much, but unfortunately it was discontinued :-(
So... I just decided to finish it ;-). In the end, it became a complete rewrite. No more C++, only pure C. At ths time, I only have some basic functionality, WAV playback (files must end in .wav) and libmad playback (files must end in .mp3).
I need some feedback, if you can try, just download at http://www.cecm.usp.br/~lucas/lmp-ng/ . Theres two versions, a .nds and a .ds.gba. Both are compiled with libfat DLDI, so you can patch if your flashcart does not work out of the box. The source is also in the same page.
Oh... And this is my first homebrew, so expect many bugs.
You can use START to alternate between console and graphics mode.
I'm mostly interested in feedback regarding sound quality (how does it compre to other mp3 players for ds, e.g. moonshell) and stability issues.
There's 3 different play modes, mode 1, mode 2 and mode 3 ;-) SELECT alternate between these modes, but you have to PAUSE/UNPAUSE so the mode will be applied. If you happen to test, please, send feedback on which one you think sounds the best. (these modes basically do some linear oversampling, just like moonshell).
Also, send your wishlists, I'll implement the most popular features first!
-
HyperHacker
- Posts:2404
- Joined:Mon Jan 09, 2006 7:03 am
- Location:-->
- Contact:
Feature requests? OK...
-M3U playlists
-Hold feature that disables all buttons except whichever button turns it off (eg Select) - disabling L and R isn't enough as with the shape of the Phats it's possible to accidentally press other buttons when the lid is closed.
-OGG support
-M3U playlists
-Hold feature that disables all buttons except whichever button turns it off (eg Select) - disabling L and R isn't enough as with the shape of the Phats it's possible to accidentally press other buttons when the lid is closed.
-OGG support
I'm a PSP hacker now, but I still <3 DS.
I didn't really hear a difference between the modes when playing back mp3s, but when listening to some wav drumloops (these here), I noticed some clicking, especially in modes 1 and 2. It wasn't 100% reproducible, so I think it's a buffering problem of some sort.
I'm really happy that someone is continuing this great project, so keep up the good work, lucas!
I'm really happy that someone is continuing this great project, so keep up the good work, lucas!
Just because something works on some files of some types doesn't automatically mean it will work on all files of all types.
I just tried it in firefox, works fine. In IE, it seems like it decides to uncompress the files automatically, but not remove the .gz extension. Try just renaming them. I think I've seen this bug in IE before.
I just tried it in firefox, works fine. In IE, it seems like it decides to uncompress the files automatically, but not remove the .gz extension. Try just renaming them. I think I've seen this bug in IE before.
The server is misconfigured. It's sending Content-Type: text/plain and Content-Encoding: gzip for the gz files. You have to right click -> Save Link As with Firefox, because it opens it as decompressed text otherwise.
IE indeed decompresses the file (because the server is telling it that it is gzipped text), but neglects to remove the .gz from the extension. Removing .gz from the filename and using it as-is will work fine.
The .tar.gz has no such problems, though.
IE indeed decompresses the file (because the server is telling it that it is gzipped text), but neglects to remove the .gz from the extension. Removing .gz from the filename and using it as-is will work fine.
The .tar.gz has no such problems, though.
Ok, time for a new release. Grab at the same place http://www.cecm.usp.br/~lucas/lmp-ng/.
I'm labelling this alpha2 version, it's still very experimental.
New feature: playlist support. Some bugfixes and some rewrite in the graphics code.
For using playlists, you MUST use relative paths, no absolute paths. Also, you CAN'T use ".." in your paths (e.g. /abc/d/../e).
I've moved to more common .zip files for the precompiled binaries, so no more confusion!
@0xtob: there was a small bug in the oversampling code when dealing with 1 channel stream, I think that was the cause of the clicks. Should be fixed now.
@felix123: the menu wasn't supposed to work. Now it is! ;-)
@Lick: I tried many different methods to get the sound click-free, but each one had some prolems. In the end, the best that I could do is to use a triple-buffer in the ARM7, so while ARM9 is busy decoding there's still 2 pieces in memory to play. This reduced greatly the clicks/noises, the two processors don't need to be 100% synchronized, cause even if the sound enters the next buffer, it won't cause clicks. You shold take a look at arm7/source/sound.c, functions pcmplay() and InterruptHandler_TIMER1.
I'm labelling this alpha2 version, it's still very experimental.
New feature: playlist support. Some bugfixes and some rewrite in the graphics code.
For using playlists, you MUST use relative paths, no absolute paths. Also, you CAN'T use ".." in your paths (e.g. /abc/d/../e).
I've moved to more common .zip files for the precompiled binaries, so no more confusion!
@0xtob: there was a small bug in the oversampling code when dealing with 1 channel stream, I think that was the cause of the clicks. Should be fixed now.
@felix123: the menu wasn't supposed to work. Now it is! ;-)
@Lick: I tried many different methods to get the sound click-free, but each one had some prolems. In the end, the best that I could do is to use a triple-buffer in the ARM7, so while ARM9 is busy decoding there's still 2 pieces in memory to play. This reduced greatly the clicks/noises, the two processors don't need to be 100% synchronized, cause even if the sound enters the next buffer, it won't cause clicks. You shold take a look at arm7/source/sound.c, functions pcmplay() and InterruptHandler_TIMER1.
LMP on R4
It is great you are taking over this project. I think LMP is a great idea too. Thanks for compiling with dldi support.
My results on R4:
old version of LMP:
nds loads, I can hear click sounds from menu, but when I select Songs, it freezes.
alpha 2:
loads fine, all mp3s on card are found and avail in songs.
My results on R4:
old version of LMP:
nds loads, I can hear click sounds from menu, but when I select Songs, it freezes.
alpha 2:
loads fine, all mp3s on card are found and avail in songs.
Nice to see more work on this!
Gave it a quick spin.
Loaded fine on a DS-X with firmware 1.1.0
Played a 192kbit mp3 very well, clear and crisp
Some graphical corruption on top screen, flickering lines and repeated gfx
scrollwhell behaviour is not smooth!
If u want I can make you an icon for it!
Just an itunes conversion, tell me the format & i'll send it to u.
Is a 16 color transparent gif ok. or do u preper a bmp?
Gave it a quick spin.
Loaded fine on a DS-X with firmware 1.1.0
Played a 192kbit mp3 very well, clear and crisp
Some graphical corruption on top screen, flickering lines and repeated gfx
scrollwhell behaviour is not smooth!
If u want I can make you an icon for it!
Just an itunes conversion, tell me the format & i'll send it to u.
Is a 16 color transparent gif ok. or do u preper a bmp?