Oldplay 1.15


Micket

Member
Joined
Jul 16, 2006
Messages
196
Age
41
Location
Sweden, Gothenburg
Website
www.micket.com
Another update (i'll post a new thread, since i can't edit the old title)
http://www.micket.com/oldplay.zip

Rather short changelog this time though
VERSION 1.15
* FLAC support with seeking.
* FLAC metadata parsing (vorbis comments, length, etc.)

bluescreenshot.png

Didn't bother to change the version number for the screenshot
[cut]
I haven't bothered trying to make support for FLAC in ogg containers becuase of the filename conflict (but that shouldn't be a problem if Tremor or libFLAC gives up trying to parse the wrong files)
But i haven't found any in ogg containers. Perhaps this is rare?
I also didn't parse any ID3 tag, just the vorbis comment files.
If i really should add support for these two things tell me, i never really listen to FLAC audio to i have no experience in whats common.
I also stopped at 100 MHz since ogg and mp3 are at those as well, and it won't back and forth between clockfrequencies (it tends to randomly crash when i do that to much)

And the TODO is pretty much the same. I guess i've covered the most popular lossless format now?
Formats:
* Update/Redo UADE
* GSF
* PSF
* xmp (if better then modplug?)
* Midi
* Other Lossless formats?

Other:
* More themes
* Database for adplug
* Zipped dualfiles (like smpl.*)
* Help menu[/cut]
 
It would probably be a good idea to parse the ID3 info at some point but not urgent :) I like info in the info box but I like new format support better! The main reason I like Oldplay is the range of formats it supports. :)
 
Per the 1.10 release, major kudos!! Thanks for the default directory selector. This one program has made my gp2x worth its weight in gold.

- Daniel
 
Is the source for this version going to be available? Quite tempted to have a go getting it running on my phone, since it doesn't play oggs... Course that doesn't mean I'll actually do it:)

Thanks,

Mark
 
Thanks Micket! I've got a ton of FLACs on my external hard drive. I'll be using this for sure. :)
QUOTE
* Other Lossless formats?

There are two other lossless codecs that I can think of that might be worth adding to Oldplay. SHN is a format that was popular before FLAC took off, and (as Yod4d mentioned) Monkey's Audio (APE) is a lossless codec with impressive compression ratios.
 
foft said:
Is the source for this version going to be available? Quite tempted to have a go getting it running on my phone, since it doesn't play oggs... Course that doesn't mean I'll actually do it:)

Thanks,

Mark
The source have always been available through SVN ( i stopped updating the zip long ago )
But to get it running on anything but a GP2X.. well. it's going to take *LOTS* of work.
You'll also have to port tremor for your phone in order to use anything close to what i'm doing (which i basicly just asking tremor to fill a buffer, and output it with SDL)

Anyway the adress is
svn://mira.areta.org/micket/svn/oldplay
it should allow anonymous access
 
Last edited by a moderator:
How'd you get APE running on Linux? Afaik, there is not Linux compatibility, only a shoddy transcoding utility that someone wrote.

Hey, wait, I just noticed on the front page of monkeyaudio.com:

BIG NEWS -- Source Code Available

Though I'm not sure to what extent the source is actually available.
 
If I recall correctly; wejp recently added support for APE in GMU, so it shouldn't be impossible (but from what i can see in the source it uses a bit of assembly so I won't bother with that for a while)
 
Supporting new formats should be illegal. Its only supporting something thats been done years before.. like realtime and quicktime, especially when the format gives us worse quality per MB.. I HATE realplayer!
 
Thanks for this great player! :)

There are only two bugs that are still alive since the first versions.
1) Almost every song, no matter what forrmat it is, gives a second or so long pause now and then. Maybe something to do with the cache of the SD, I remember some applications used to suffer the same problem.
2) When playing SAPs, the player always sets the song length to 2:30 and stops playing it even when the song is longer.
Apart from that, the player is perfect to me.

Regards
 
WhiteFalcon said:
Thanks for this great player! :)

There are only two bugs that are still alive since the first versions.
1) Almost every song, no matter what forrmat it is, gives a second or so long pause now and then. Maybe something to do with the cache of the SD, I remember some applications used to suffer the same problem.
2) When playing SAPs, the player always sets the song length to 2:30 and stops playing it even when the song is longer.
Apart from that, the player is perfect to me.

Regards
1) No matter what format? Well.. that really shouldn't happen. With all modules and game music everything is loaded into memory before the songs starts playing. Are you positive that this happens with modules and game music as well?
2) I just put in 2:30 as default length. If that shows up it means GME doesn't know how long the song is. It's either that or infinite.
I rarely listen to SAP, do they tend to be infinitely long like, say NSF's? Becuase if they stop (and become quiet) i can use silence detection, and if not, then well, you'll have to specify the song length manually when you add them to the playlist. Select the song in the browser or playlist and use R+volume to change the length +- 5 seconds.

Slight update: Next version will probably have TTA and MPC support. Maybe APE.. now sure what to do about the assembly part in the APE-library though.
Now if only i can figure out why SDL_OpenAudio randomly decides to mute everything when i change from stereo to mono.
 
Last edited by a moderator:
Yod4z said:
AAC audio play back using FAAC lib is possible?



Probably.
If you anyone want to speed up support for their favourite format just give me two things;
A makefile so that puts together a library for the gp2x of the decoder.
Example for Game_Music_Emu
CODE

CC = gp2x-gcc
AR = gp2x-ar
CFLAGS = -c \
-msoft-float \
-O2 \
-fomit-frame-pointer \
-mcpu=arm920t \
-I/usr/local/gp2xdev/include

all:
$(CC) $(CFLAGS) *.cpp
$(AR) r libgme.a *.o


or something close enough, so i can easily compile it.

The next part is knowing how to use it. I pretty much need two things
How to load and initialize a file (given a filename, or pointer to file data)
How to decode the file. Preferably with a function close to fill_buffer(dest, src, samples)
 
Last edited by a moderator:
Micket said:
2) I just put in 2:30 as default length. If that shows up it means GME doesn't know how long the song is. It's either that or infinite.
I rarely listen to SAP, do they tend to be infinitely long like, say NSF's? Becuase if they stop (and become quiet) i can use silence detection, and if not, then well, you'll have to specify the song length manually when you add them to the playlist. Select the song in the browser or playlist and use R+volume to change the length +- 5 seconds.

Hm, isn't it possible to find out when they loop and then fade them out?
I mean, they HAVE to go back into a pattern from an earlier part of the song at the end to loop.
 
Last edited:
EvilDragon said:
Hm, isn't it possible to find out when they loop and then fade them out?
I mean, they HAVE to go back into a pattern from an earlier part of the song at the end to loop.
It's not sampled data, it's generated from emulation. (Well, this is at least true for, say, NSF, i'm ot 100 % on SAP, AY, HES, KSS)
This means that the synthesizer might not create the exact same sample next time, so one would have to look for almost the same samples again.
I remember reading a whole bit about this on the nesdev forums but i dont think anyone got a really practical idea.
Since blargg is a genius when it comes to these kind of things, im sure he would have implemented it if it was possible.

And even if you were to compare samples (given that they would match), how do you know where it will start looping into without knowing the loop and intro length?

I think the real sullotion of this is to have good m3u files for these songs (or maybe sap have som embedded information that GME doesn't know about, then i can extract it manually)
 
Last edited by a moderator:
Back
Top