IPB

Welcome Guest ( Log In | Register )

New portable Musepack decoder library, including fixed-point mode
Peter
post May 19 2004, 16:40
Post #1





Group: Admin
Posts: 3269
Joined: 30-September 01
Member No.: 84



UPDATE: source posted here is outdated now, newer version is hosted on musepack.net.

Full C++ source in post attachement.

License: LGPL.

Features:
- Switchable fixed-point and floating-point modes - enable/disable "#define MPC_FIXED_POINT" in mpc_math.h
- Endian-safe, verified running correctly on big-endian machines
- Multiinstance and multithread safe
- File access callbacks
- No assembly code used, for full portability

Verified correctly compiling/running under:
- win32 / x86 / MSVC6 + SP5 + processor pack - very fast floating-point mode (goes above 200x on ~2GHz machines), fixed-point mode is significantly slower (~60x)
- win32 / x86 / MSVC7.1 - slightly faster than MSVC6, fixed-point mode still relatively slow
- win32 / x86 / DMCPP - fixed-point mode faster than MSVC, floating-point mode slower than expected with strange slowdowns when compiled with speed optimizations enabled
- wince / ARM (32bit) / eVC4 + SP3 - fixed-point decoding speed on 400MHz XScale CPU is about 10x realtime
- Darwin 7.3.0, MacOS X 10.3.3 / PowerPC970/G5 / GCC 3.3 - about 80x-100x decoding speed in both modes on 2GHz G5, thanks to TrNSZ for testing/feedback

I'm planning to put this in official MPC CVS, unfortunately I can't do that right now because corecodec server has been down for serveral days.
Attached File(s)
Attached File  mpcdec.zip ( 45.56K ) Number of downloads: 1863
 


--------------------
This job would be great if it wasn't for the users.
Go to the top of the page
+Quote Post
 
Start new topic
Replies
picard
post Dec 14 2004, 18:49
Post #2





Group: Members
Posts: 8
Joined: 30-June 04
From: Budapest
Member No.: 14987



Yes, I'am using the C++ version and the SeekTable was in the old version (before it was renamed to libmusepack I think).

Any more info in which case does it cause artifacts? More states should be saved not just frame length to be able to properly seek? Because for a mediaplayer the current non SeekTable solution is not really acceptable.
Go to the top of the page
+Quote Post
Lefungus
post Dec 14 2004, 18:56
Post #3





Group: Members
Posts: 86
Joined: 10-November 02
Member No.: 3745



Some files have huge frame dependencies. There's no way to know how much, so the fast seeking can break on any file randomly. So although it can be made to seek correctly on most of the files, it's not error-proof.


--------------------
It's a 'Jump to Conclusions Mat'. You see, you have this mat, with different CONCLUSIONS written on it that you could JUMP TO.
Go to the top of the page
+Quote Post

Posts in this topic
- Peter   New portable Musepack decoder library   May 19 2004, 16:40
- - jarsonic   sweet, Peter! Should make it easier for (pote...   May 19 2004, 17:08
- - caligae   Not very portable at the moment though. No Makefi...   May 19 2004, 18:11
- - Peter   Package updated with stdafx.cpp/.h names changed t...   May 19 2004, 18:24
- - Gecko   Ah! Thx, Peter! Someone should show this ...   May 19 2004, 18:29
- - dev0   Already happened apparently: http://ipodlinux.sou...   May 19 2004, 18:33
- - xmixahlx   QUOTE (caligae @ May 19 2004, 09:11 AM)Not ve...   May 19 2004, 19:44
- - ak   Well, dsw2mak can be utilized for converting .dsw/...   May 19 2004, 20:53
- - soellman   i can verify that it works on mac osx 10.3.3.. now...   May 19 2004, 22:45
- - Tec9SD   Wow, Peter! I'm thoroughly impressed! ...   May 19 2004, 23:07
- - atici   That's great news indeed. We've had enough...   May 19 2004, 23:45
- - rjamorim   Is the integer part based on c.b.2000's intege...   May 20 2004, 00:11
- - Peter   Fixed-point mode has been added from scratch and i...   May 20 2004, 00:23
- - TrNSZ   I have now tested this code on PPC970, SPARC64, MI...   May 20 2004, 00:39
- - BetaBoy   zZzZzZz.... On CoreCodec.org.... we were in the mi...   May 20 2004, 01:39
- - caligae   QUOTE (TrNSZ @ May 20 2004, 01:39 AM)To whome...   May 20 2004, 08:56
- - Althalus   Thank you zZzZzZz.   May 20 2004, 09:31
- - Slo Mo Snail   QUOTE (TrNSZ @ May 20 2004, 01:39 AM)The code...   May 20 2004, 09:58
- - caligae   Doesn't work on Alpha. CODEProgram received s...   May 20 2004, 10:30
- - picard   thank zZzZzZz! i added this library to BetaPl...   Jun 30 2004, 10:08
- - Atlantis   QUOTE (picard @ Jun 30 2004, 11:08 AM)thank z...   Jun 30 2004, 10:16
- - harad   Using VC++ 3.0 [LOG]: --------------------Configu...   Aug 23 2004, 18:06
- - Axon   Excellent work! But I have a licensing nitpick...   Aug 23 2004, 18:23
- - Peter   I personally don't care whatever you do with t...   Aug 23 2004, 18:48
- - harad   i think that someone should merge the mpc decoder ...   Aug 24 2004, 16:41
- - Sebastian Andersson   Hello! Is there any way to get the bits per s...   Aug 28 2004, 21:46
|- - Sebastian Andersson   QUOTE (Sebastian Andersson @ Aug 28 2004, 10:...   Aug 29 2004, 13:06
|- - Sebastian Andersson   OK   Aug 29 2004, 13:11
- - dev0   Why would you want to know the BPS of the source f...   Aug 28 2004, 22:06
- - dev0   QUOTE (Garf)Why would the decoder care at all what...   Aug 29 2004, 13:09
- - Sebastian Mares   So, is it possible or not?   Sep 17 2004, 21:45
- - Tang   Great news, thanks Mr Peter! I wonder there i...   Oct 20 2004, 20:58
- - Tang   EDIT: i've just understood how the Rockbox WiK...   Nov 3 2004, 01:42
- - kuniklo   I've just finished a first rough port of this ...   Dec 12 2004, 17:34
|- - Tang   QUOTE (kuniklo @ Dec 12 2004, 08:34 AM)I...   Dec 14 2004, 18:55
- - picard   I updated the old library in BetaPlayer's MPC ...   Dec 14 2004, 18:37
|- - kuniklo   QUOTE (picard @ Dec 14 2004, 05:37 PM)I updat...   Dec 14 2004, 18:40
|- - Lefungus   QUOTE (picard @ Dec 14 2004, 07:37 PM)I updat...   Dec 14 2004, 18:45
- - picard   Yes, I'am using the C++ version and the SeekTa...   Dec 14 2004, 18:49
|- - Lefungus   Some files have huge frame dependencies. There...   Dec 14 2004, 18:56
- - Tang   The codec section of the Rockbox iRiverport wiki i...   Feb 12 2005, 17:54
- - xmixahlx   someone on teh MDT should submit info for the ...   Feb 14 2005, 20:47
|- - Tang   QUOTE (xmixahlx @ Feb 14 2005, 11:47 AM)someo...   Feb 14 2005, 20:50
|- - Florian   QUOTE (Tang @ Feb 14 2005, 08:50 PM)QUOTE (xm...   Feb 14 2005, 20:52
- - Tang   Thanks Ganymed...   Feb 15 2005, 18:43


Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 18th April 2014 - 16:56