Skip to main content

Topic: mppenc 1.16/libmpcdec 1.2.3 (Read 30444 times) previous topic - next topic

0 Members and 1 Guest are viewing this topic.
  • Seed
  • [*][*][*]
  • Developer
mppenc 1.16/libmpcdec 1.2.3
Musepack encoder version 1.16 and libmpcdec 1.2.3 are released.

libmpcdec 1.2.3 enables a new, fast method for seeking, and additionally, a seek table, the result of which is generally instant seeking. On very long tracks you will sometimes notice a delay when seeking from beginning to the end of the track. However, on consecutive seeks playback resumes instantly.

On files that were encoded with an encoder older than 1.16 fast seeking is not bit-perfect. The reason is that sometimes, due to the way older encoders inject scale factors to the stream, the new seeking method may replace a very high frequency band with silence for a period of a few milliseconds and in rare cases up to a second or so.

In our testing we haven't found any case where that is actually audible. Other than a theoretical very slightly different sounding output for a very short time period after seeking, there is no other artifact that can be caused by the fast seeking, so for all practical purposes it is perfectly fine on older as well as newer files.

The new encoder version differs mainly in the way it injects scale factors to the stream. This enables bit perfect seeking at all times with the new decoding library.

Special thanks goes to snowgoon for the initial seeking patches, R2D, for developing it further and adding features, Lefungus, for doing lots of library work, encoder patching and advising, and xmixahlx for his loads of testing, compiling, patching and support.

1.16 is probably the last SV7 encoder. All efforts are now directed at building SV8. Development can be followed on our Trac and SVN repositories.

Decoder library changelog:
Quote
1.2.3
* Added fast-seeking (bit-perfect only with mppenc 1.16 files and later, optional but safe on pre-mppenc 1.16 files). Patch by Nicolas Botti
* Reduced memory usage and code size. Patch by Peter Pawlowski


Encoder changelog:
Quote
1.16:
   * Add fast seeking flag in reserved header data. Enable bit-perfect fast seeking. Patch by Andrew Cupper & Nicolas Botti
   * Add optional beeping at the end of encoding (--beep)
   * Remove tag guessing from filename on UNIX
   * Add Unicode input support for tags (--unicode) (UNIX only). Patch by Valery Bruniaux
   * Frontend patches from xmixahlx & Shy
   * Code clean-up
   * Port build system to cmake for UNIX & msvc2005 for win32

1.15v
   * Workaround for denormal number issues. Synthetic samples with passages of digital silence are handled correctly regardless of the compiler used
   * Translation of German source code comments to English. Patch by CiTay & Seed

1.15u
   * Changes in the way the encoded signal is padded to MPC frame boundaries. Beginning and end of track encoding is handled differently, resulting in significantly improved gapless coding. Thanks to Xiph's Monty for the initial advice

1.15t
   * Aggressive compiler settings could cause a glitch in rare synthetic samples

1.15s
   * In some rare cases, the output file would have an incorrect duration (4 missing samples) when encoding some very long tracks
   * There was a glitch at the end of the track when encoding from a 24-bit source through pipe
   * --xlevel is used by default. Use --noxlevel to override
   * Removed "Unstable/Experimental" flag writing


mppenc 1.16 for Windows
mppenc 1.16 for Linux / mppenc 1.16 source code
libmpcdec 1.2.3

discussion on the Musepack forum
  • Last Edit: 24 November, 2006, 11:23:02 PM by Seed
And if Warhol's a genius, what am I? A speck of lint on the ***** of an alien

  • xmixahlx
  • [*][*][*][*][*]
mppenc 1.16/libmpcdec 1.2.3
Reply #1
in addition, xmms-musepack has been updated to utilize fast-seeking with the 1.2.1 release.

the feature is a toggle in the decoder plugin options (enable/disable fast seeking).

webpage: http://www.musepack.net/index.php?pg=lin
tarball: http://files.musepack.net/linux/plugins/xm...k-1.2.1.tar.bz2

also, rarewares/debian is updated with: libmpcdec, mppenc (musepack-encoder), and xmms-musepack


later

  • TrNSZ
  • [*][*][*][*][*]
  • Developer
mppenc 1.16/libmpcdec 1.2.3
Reply #2
[deleted]
  • Last Edit: 27 August, 2015, 02:43:08 PM by TrNSZ

mppenc 1.16/libmpcdec 1.2.3
Reply #3
Also worth mentioning that foobar2000 0.9.4.2b and higher supports MusePack fast seeking.


Only for files created by the new encoder.

Any news on a tool to losslessly convert older mpc files to SV 7.2? (was mentioned in the musepack.net forums)

  • ExUser
  • [*][*][*][*][*]
  • Read-only
mppenc 1.16/libmpcdec 1.2.3
Reply #4
Musepack forever!

Thanks for your work guys. Good luck on getting past SV7. I eagerly await your results.

  • Seed
  • [*][*][*]
  • Developer
mppenc 1.16/libmpcdec 1.2.3
Reply #5
The task of writing such a tool was not assigned to any developer. If there's demand for one it'll eventually be created. Any player can enable fast seeking on older files but because of caution and lack of massive testing by enough users this option is still disabled.
And if Warhol's a genius, what am I? A speck of lint on the ***** of an alien

mppenc 1.16/libmpcdec 1.2.3
Reply #6
The task of writing such a tool was not assigned to any developer. If there's demand for one it'll eventually be created. Any player can enable fast seeking on older files but because of caution and lack of massive testing by enough users this option is still disabled.


Okay, thank you!

  • CiTay
  • [*][*][*][*][*]
  • Administrator
mppenc 1.16/libmpcdec 1.2.3
Reply #7
Great work, guys. I just encoded a long single-file album with it, and seeking has no delay whatsoever with the new foobar2000 beta. Pretty nice.

  • MyMaster
  • [*][*]
mppenc 1.16/libmpcdec 1.2.3
Reply #8
is the radio preset broken?  everytime i try to use it the encoder crashes / EAC / CDEX / FOOBAR all the same.

thank you

mppenc 1.16/libmpcdec 1.2.3
Reply #9
I think there is a mistake in mppenc.c in the ms channel mode column: --ms used to be 10 for the -radio preset, --ms 6 is undefined in psy.c

Code: [Select]
/*    Short   MinVal  EarModel  Ltq_                min   Ltq_  Band-  tmpMask  CVD_  varLtq    MS   Comb   NS_        Trans */
/*    Thr    Choice  Flag      offset  TMN  NMT  SMR  max  Width  _used    used        channel Penal used  PNS    Det  */
   { 1.e9f,  1,      300,      30,    3.0, -1.0,    0,  106,  4820,  1,      1,    1.,      3,    24,  6,  1.09f, 200 },  // 0: pre-Telephone
   { 1.e9f,  1,      300,      24,    6.0,  0.5,    0,  100,  7570,  1,      1,    1.,      3,    20,  6,  0.77f, 180 },  // 1: pre-Telephone
   { 1.e9f,  1,      400,      18,    9.0,  2.0,    0,  94,  10300,  1,      1,    1.,      4,    18,  6,  0.55f, 160 },  // 2: Telephone
   { 50.0f,  2,      430,      12,  12.0,  3.5,    0,  88,  13090,  1,      1,    1.,      5,    15,  6,  0.39f, 140 },  // 3: Thumb
   { 15.0f,  2,      440,        6,  15.0,  5.0,    0,  82,  15800,  1,      1,    1.,      6,    10,  6,  0.27f, 120 },  // 4: Radio
   {  5.0f,  2,      550,        0,  18.0,  6.5,    1,  76,  19980,  1,      2,    1.,    11,      9,  6,  0.00f, 100 },  // 5: Standard
   {  4.0f,  2,      560,      -6,  21.0,  8.0,    2,  70,  22000,  1,      2,    1.,    12,      7,  6,  0.00f,  80 },  // 6: Xtreme
   {  3.0f,  2,      570,      -12,  24.0,  9.5,    3,  64,  24000,  1,      2,    2.,    13,      5,  6,  0.00f,  60 },  // 7: Insane
   {  2.8f,  2,      580,      -18,  27.0, 11.0,    4,  58,  26000,  1,      2,    4.,    13,      4,  6,  0.00f,  40 },  // 8: BrainDead
   {  2.6f,  2,      590,      -24,  30.0, 12.5,    5,  52,  28000,  1,      2,    8.,    13,      4,  6,  0.00f,  20 },  // 9: post-BrainDead
   {  2.4f,  2,      599,      -30,  33.0, 14.0,    6,  46,  30000,  1,      2,  16.,    15,      2,  6,  0.00f,  10 },  //10: post-BrainDead

I can stay for hours listening to all the sounds... (Samuel Beckett, Rough for Theatre I)

  • seanyseansean
  • [*][*][*][*]
  • Members (Donating)
mppenc 1.16/libmpcdec 1.2.3
Reply #10
Wow, unexpected but fantastic news. Thanks to the devs.

That said, i've just reencoded 200gb of flac files to 1.15 standard profile and this appears 

mppenc 1.16/libmpcdec 1.2.3
Reply #11
Sorry, I was wrong, it was always 6 in the code, but on the command line it was --ms 10 
I can stay for hours listening to all the sounds... (Samuel Beckett, Rough for Theatre I)

  • CiTay
  • [*][*][*][*][*]
  • Administrator
mppenc 1.16/libmpcdec 1.2.3
Reply #12
That said, i've just reencoded 200gb of flac files to 1.15 standard profile and this appears 


No sweat. Audio quality hasn't changed, and in a future version of foobar2000, fast seeking can/will be enabled for all MPC files. As Seed said in the first post, it won't be bit-perfect (will be for 1.16 encodes), but you won't hear any glitches either, so all is good.


Quote
is the radio preset broken?


They're already working on it. Expect updated files soon.


edit: New foobar2000 released, fast seeking works for all files now!
  • Last Edit: 20 November, 2006, 03:01:46 PM by CiTay

  • seanyseansean
  • [*][*][*][*]
  • Members (Donating)
mppenc 1.16/libmpcdec 1.2.3
Reply #13

That said, i've just reencoded 200gb of flac files to 1.15 standard profile and this appears 


No sweat. Audio quality hasn't changed, and in a future version of foobar2000, fast seeking can/will be enabled for all MPC files. As Seed said in the first post, it won't be bit-perfect (will be for 1.16 encodes), but you won't hear any glitches either, so all is good.


Thank you.

Although it seems yesterdays codec to a lot of people, I did look at other alternatives before my big reencode and this is what I surmised:

1. I didn't want to use mp3 because the flaws inherent in that format were easily audible at any bitrate to *my* ears. I can see which pub jukeboxes use mp3 just from this.

2. Last time I checked ogg it wasn't competitive with MPC. I hear good things about aotuv builds, but I had problems with battery suckage on rockbox.

3. AAC seems too fragmented for my poor tiny mind. Plenty of different encoders/decoders, different profile sets, blah. Also the same battery suckage as rockbox

It'd be nice to see MPC do well again. A nice single encoder, excellent quality at 170~kbps, and fast decode.

If i'm wrong on any of these points, feel free to point it out people.

  • xmixahlx
  • [*][*][*][*][*]
mppenc 1.16/libmpcdec 1.2.3
Reply #14
a bug that was borking mppenc with low qualities (<standard) has been fixed - it is now ready for mass consumption.

apologies for the false start

please redownload the binaries if you downloaded the files before 1600 PST today. they are available at the same URLs as in the first post.

rarewares/debian is updated as well


later
  • Last Edit: 12 November, 2006, 07:15:46 PM by xmixahlx

  • TrNSZ
  • [*][*][*][*][*]
  • Developer
mppenc 1.16/libmpcdec 1.2.3
Reply #15
[deleted]
  • Last Edit: 27 August, 2015, 02:43:02 PM by TrNSZ

  • Lefungus
  • [*][*]
mppenc 1.16/libmpcdec 1.2.3
Reply #16
Sorry about the bug, it was a dumb mistake from me. Rejoice, it's corrected already. And I'll go to sleep before anyone else find another one
It's a 'Jump to Conclusions Mat'. You see, you have this mat, with different CONCLUSIONS written on it that you could JUMP TO.

  • skelly831
  • [*][*][*][*][*]
  • Members (Donating)
mppenc 1.16/libmpcdec 1.2.3
Reply #17
Holy codec resurrection batman!

This is certainly interesting news, thanks to the devs and everyone involved
we was young an' full of beans

  • shadowking
  • [*][*][*][*][*]
mppenc 1.16/libmpcdec 1.2.3
Reply #18
I've tested a few tracks with foobar 09.4.2 and seeking appears to work without a hitch. Nice work !
wavpack -b350hhj0s0.7cc

mppenc 1.16/libmpcdec 1.2.3
Reply #19
2. Last time I checked ogg it wasn't competitive with MPC. I hear good things about aotuv builds, but I had problems with battery suckage on rockbox.

3. AAC seems too fragmented for my poor tiny mind. Plenty of different encoders/decoders, different profile sets, blah. Also the same battery suckage as rockbox


I'm a die-hard MPC fan myself, but I'm just curious that you raised these points...  Did you not see battery suckage with MPC?

  • Firon
  • [*][*][*][*][*]
mppenc 1.16/libmpcdec 1.2.3
Reply #20
Vorbis IS competitive with MPC (the aoTuV builds anyway). And last I recall, guruboolez' last listening test with MPC and Vorbis (aoTuV b4) showed that Vorbis was statistically better at 170-180kbps, nevermind lower bitrates.
http://www.hydrogenaudio.org/forums/index....howtopic=36465#
And this was only with aoTuV b4. Improvements have been made since then (for AAC too, but AAC encoders confuse me ), so the gap might very well be larger now.

As for battery suckage, that's probably just because Rockbox is not very optimized (though Vorbis IS a bit of a CPU whore)
  • Last Edit: 13 November, 2006, 02:20:16 AM by Firon

  • vinnie97
  • [*][*][*][*]
mppenc 1.16/libmpcdec 1.2.3
Reply #21
2. Last time I checked ogg it wasn't competitive with MPC. I hear good things about aotuv builds, but I had problems with battery suckage on rockbox.

This point being raised is also suspect.  When was the last time you checked?  I'd say they are neck and neck at this point (Vorbis excelling at lower bitrates) and no recent listening tests have suggested otherwise.  I second the point about Rockbox.  The implementation of Rockbox itself regardless of the format causes "battery suckage."

  • Alex B
  • [*][*][*][*][*]
mppenc 1.16/libmpcdec 1.2.3
Reply #22

Also worth mentioning that foobar2000 0.9.4.2b and higher supports MusePack fast seeking.

Only for files created by the new encoder.  ...


... Any player can enable fast seeking on older files but because of caution and lack of massive testing by enough users this option is still disabled.


I don't think this option is disabled in foobar2000 v. 0.9.4.2 beta. I just tried seeking some old 80-minute Musepack v. 1.14 files. It was clearly a lot faster than before.

  • seanyseansean
  • [*][*][*][*]
  • Members (Donating)
mppenc 1.16/libmpcdec 1.2.3
Reply #23

2. Last time I checked ogg it wasn't competitive with MPC. I hear good things about aotuv builds, but I had problems with battery suckage on rockbox.

This point being raised is also suspect.  When was the last time you checked?  I'd say they are neck and neck at this point (Vorbis excelling at lower bitrates) and no recent listening tests have suggested otherwise.  I second the point about Rockbox.  The implementation of Rockbox itself regardless of the format causes "battery suckage."


As I said it was a while ago. The other formats however definitely suck more battery on my ipod/rockbox than MPC, and the same is true on tcpmp/smartphone.

Bear in mind I wasn't likely to change codec for my 200gb reencode unless there was a substantial gain over MPC.

mppenc 1.16/libmpcdec 1.2.3
Reply #24
The link for the encoder binary for linux on http://www.musepack.net seems to point to the source.