Welcome Guest ( Log In | Register )

MPC VBR flaws (low volume & ringing), audible under specific conditions
post Jun 23 2005, 10:22
Post #1

Group: Members (Donating)
Posts: 3474
Joined: 7-November 01
From: Strasbourg (France)
Member No.: 420

Iíve read recently some complaints about musepack and distortions occurring with classical music (examples here and here). There were no ABX tests to confirm them. According to my previous listening tests at ~175 kbps, musepack performs not only very well with various kinds of instrumental and vocal samples, but also better than competitors. But Iíve also noticed in the past one issue with this audio format that my previous test didnít revealed, and itís a very big one. Iíd like to bring out this problem to the community, which wasnít as far as I know warned about this kind of flaw.

Before carrying and before some seeing zealous users bare its teeth, I have to make clear that this issue only occurs in specific conditions. The problem is confined to low-volume musical content, and is mainly audible when this content has to be listened to a higher playback volume. In other words, affected tracks must have low volume parts, and tracks with high dynamic are not really concerned (you canít constantly push the volume on such material: your neighbors wonít appreciate it). The problem becomes really critical with low-volume tracks only. People who have to live with the consequences of the ďloudness warĒ are certainly not used to encounter such tracks, but for classical fans, tracks that are replaygained at +10 dB, +20 dB and sometimes +30 dB are all except a rare thing (tracks with corrected gain beyond +25 dB are nevertheless very rare). The encoded material would exhibit strong artifacts with ReplayGan set with Track Mode (they wonít be audible otherwise, except maybe as a subtle form of distortion Ė it could explain some recent complains about musepack and classical music). With RG enabled, even untrained people will be shocked by the terrible ringing that run across this musical material. MPC, with --standard profile, and to some degree --extreme and also Ėinsane is apparently not sensitive enough to handle low volume situation.

At this stage of my account, some people would be probably tempted to claim that such issue is normal with perceptual encoding, and that all other formats will suffer from the same issue in this specific playback condition. But a quick comparison would immediately deny all validity to this idea. Iíve compared musepack --standard to comparable MP3, AAC and Vorbis presets, and these competitors showed the ability to encode properly (no ringing, flat lowpass at high level) the same material. Even stranger, MP3 at 128 kbps, or Vorbis at 90 kbps (!), or AAC (faac!) at 100 kbps perform *much* better than musepack --standard. In other words, perceptual encoders (at least modern one) could handle this situation transparently at mid/low bitrate, even with VBR; only musepack fails, and badly. It might be interesting to note that the VBR model is apparently flawed: with --standard, the bitrate drops to unusual value (110Ö140 kbps), and quality to an even more abnormal threshold. An illustration (graphical Ė listening tests were performed upstream - click for link) could make things easier to understand:

Iíve also uploaded an additional gallery - the last one looks very weird! and sounds even worse as it looks.

The ringing, and the austere lowpass, are obvious on these screenshots. Quality is objectively worse than MP3@128; subjectively speaking, the audibility is Ėas usual- linked to various conditions: hardware, player settings (RG or not), listenerí sensitivity to ringing. Some users wonít notice it, some others will be frightened. The important point to note here is that other audio formats have no problems; my purpose wasnít to make an infertile comparison between MPC and other. Based on this comparison, Iím tempted to say that MPC could rejoin them with some tuning. Anecdotal point: LAME had recently serious issue (which also concern 3.90.3 ABR at mid/low bitrate) and they were recently solved by developers. I think Gabriel worked on an adaptive ATH threshold, and it might be a lead for MPC developer or for some users which are interested to play with current encoder switches.

Iíve uploaded some samples. The gain for short samples is necessary different from the gain of complete sample; but Iíve tried to cut sample with similar gain. The WavPack samples uploaded have all the native gain and the track_peak of the full track. Iíve also duplicated the track gain to the album gain.


Two appendix in this zip file : a piano sample for which track gain for the sample doesnít really match to the track gain of the full track (+40 dB instead of +25 dB) ; and a very noisy track for which musepack doesnít have any problem, despite of high gain correction.

This report is probably the last one Iíll do for MPC (a developer have claim their lack of interest for improving classical at --standard), but I nevertheless hope it will help to improve the encoder. Playing with command line (in order to change ATH or noise sensitivity) might be enough to solve or reduce this issue; therefore, every MPC user could contribute. In the meantime, users should be aware of this issue.

This post has been edited by guruboolez: Jun 23 2005, 10:26
Go to the top of the page
+Quote Post
Start new topic
post Jul 5 2005, 17:26
Post #2


Group: Admin
Posts: 2958
Joined: 26-August 02
From: Nottingham, UK
Member No.: 1

QUOTE (guruboolez @ Jul 5 2005, 07:51 AM)
I think it's probably worth noting that a single disagreement is not necessarily representative of everyone involved, or everyone capable of being involved.† It's been said before, but maybe it needs to be said again...

Right. But understand that I won't risk to give feedback to a development team which include (one?) aggressive member, and who don't care about ABX (called "flawed" or something like that) methodology. I'm testing for nothing, and I don't request anything else as polite answers.

Well haven't you gotten polite answers in general? You had one argument, but other people are reading and listening, and are interested in hearing more.

I would just forget about it and move on. Yes, easier said than done, but it'd cause less strife. Why not we just let the issue die? There are many people here interested in a civilized discussion, and will read your posts. You don't have to participate anymore if you don't want to, but I wouldn't stop because of a single case. Up to you.

I'm not sure you can really conclude that the MPC VBR model is flawed from this. †If the issue is simply that MPC is cutting things closer to the threshold than most other encoders, given expected listening conditions, then I don't see what the problem is (with the model I mean).

Vorbis was affected by the same issue at low bitrate, and you exactly called it a "flaw" ("No, this doesn't represent an "argument against VBR", it simply emphasizes a flaw in the Vorbis encoder").
Source: http://www.hydrogenaudio.org/forums/index....indpost&p=71576

Hey, I can change my mind, right? smile.gif

But seriously, I don't remember that discussion and am too busy to go reread it all. My opinion on certain things has definitely changed though, and I suppose that post was written quite awhile ago.

I'm not so interested in one solution having to deal with all cases, at least at a given level of abstraction. I think it would be a perfectly fine and desirable solution for this to be handled without any user intervention, but I would probably "fix" it as a two-pass encoding scheme or something else rather than modifying the psymodel.

The problem here is where to make conceptual separation between encoder design to deal with psychoacoustic phenomena and design to deal with user playback schemes. Before I didn't care much about the separation, now I do.

In either case, the fix is usually simple.† Encode with different settings if you plan to listen under conditions which you know the encoder is not tuned for by default.

I don't consider it as a valid solution. Tweaking an encoder to fit to a specific solution is very unconfortable. Last and not least, it's against 4 years of HA's recommendation (use --preset and nothing else).

The radical emphasis on exclusive preset use in LAME originally had to do with the fact that LAME had many exposed experimental switches mixed in with regular switches. There was never a very good conceptual separation between the two, and many were undocumented or poorly documented.

There were also many, many myths about how the encoder performed with certain switch combinations. In my opinion at the time (and probably still now, on that specific point, since the frontend is still a mess) it was best to emphasize a single switch so as to completely do away with the rest of the mess that is the frontend.

If the frontend had been redesigned so that no harmful switches were exposed any longer, along with some sort of way to disallow clearly harmful switch combinations, then a single switch would not necessarily have been needed.

Since that never happened, the best solution was to only use one switch, otherwise people begin to be encouraged to use the preset but modify a little bit here, a little bit there, and pretty soon the whole point is lost...

MPC doesn't have this problem nearly as much, so it's not as big of a deal IMO to have some sort of extra switches used for certain cases.

I don't think Frank was saying Track Gain is not a normal listening condition.† But using Track Gain when listening to certain highly dynamic classical music and using the standard MPC preset tunings is "not a normal listening condition."

On nomad conditions, it is. But again, the problem is also audible with Track Gain Mode with some albums. And only with mpc... Minimizing the problem won't solve it.

So relative to listening to track mode replaygained classical music on nomad, the problem is common. How common is that, absolutely? Enough to force a design change in the psymodel? Maybe, I'm not sure...

Replaygain track mode performance in general is another situation, but again this is like some sort of post-processing. How can the encoder be expected to predict this without given that information beforehand? Sure, you can make a guess about it, but this is sort of a hack (i.e., not an elegant solution from a design perspective), and only for a single case.

Well I'm a bit curious.. I don't follow LAME development much these days, but did the "fixes" in LAME for this end up resulting in higher bitrates across the board?

I've noticed it with ~128 kbps (ABR and CBR). Bitrate is therefore the same. I could upload samples for which 3.90.3 has poorer performance than... Blade after ReplayGaining it. 3.97 is near perfection.

Well that is indeed interesting. Given a fixed bitrate, I wonder how things were reshuffled to deal with the bitrate increase for frames that were given higher quality after making the modification. I wonder if quality decreased elsewhere? With ABR this would seem to have to be the case, because if the bitrate increased in quieter frames, the encoder would decrease bitrate elsewhere to hit the target. This might result in increased quality across the board, but is a compromise in the technical sense if quality is decreased elsewhere even if not noticed in most cases. With CBR it might be slightly different depending on how the bit reservoir used. With pure VBR though, I would definitely expect the bitrate to simply increase.
Go to the top of the page
+Quote Post
post Jul 5 2005, 18:52
Post #3

Group: Members (Donating)
Posts: 3474
Joined: 7-November 01
From: Strasbourg (France)
Member No.: 420

Well haven't you gotten polite answers in general?  You had one argument, but other people are reading and listening, and are interested in hearing more.

In general, yes. Fortunately tongue.gif

You don't have to participate anymore if you don't want to, but I wouldn't stop because of a single case.  Up to you.

I'll think about it, but currently, I confess that I'm not really in mood to follow with MPC.

Hey, I can change my mind, right? smile.gif

re- wink.gif
The radical emphasis on exclusive preset use in LAME originally had to do with the fact that LAME had many exposed experimental switches mixed in with regular switches.  There was never a very good conceptual separation between the two, and many were undocumented or poorly documented.

OK for lame. But MPC is in the same situation. How was called the adaptive behaviour introduced by Klemm in mppenc with 0.90s or so, which lead to lower the name of the profile when some switchs were add to the simple preset?idiot-proof if I remember. The use of personal switch or command line was ~always discouradged, even non-experimental one. Vorbis discouraged the choice of unusual command line by a very long command name. Etc...
Note that I don't think that people shouldn't use personnal command (far from it), but I've just recall that it was and still is not recommended here.

A better solution would be a small and intuitive command, performing like --ms 15 (stereo image) or --itp for vorbis (sharpness), for people interesting to keep details at low volume (they have to assume their choice, and possible bitrate bloat). --ath_gain could be used as it. Why not updating the current recommendation, and communicating about the pertinent use of these command line? --ms 15 for surround; --ath_gain xx for security with classical?

It's not a very convenient solution for the user, but it's a working one. After all, the recommendation are here to guide the user.

I wonder if quality decreased elsewhere?

I've tested LAME on many samples, and the current encoder perform better with most of them. There's just one specific issue with lame 3.97a10 (warbling), but I'm not sure that it's link to the gain in quality that could be noticed on quiet parts. But there are maybe problems I haven't noticed. I'll maybe make a more extensive tests between 3.90.3 and 3.97 once this last one will reach final or beta status.

One way to get an indication though is to look at Vorbis performance in this situation before the changes were made and after the changes were made that "fixed" the problem. Did the bitrate increase? (I don't remember)
Yes, and no. The bitrate increases a lot between 1.00 and 1.01 (the fixed encoder) on the affected material (at -q0, bitrate was ~30kbps and then jumped to a more conventional ~60 kbps), but didn't change with louder material. Same for MPCq5 with and without --ath_gain 14: 110...130 -> 170...180 kbps IIRC. With classical stuff (full tracks), it leads to a +10 kbps inflation (approximation). I can't say for other musical genre.

This post has been edited by guruboolez: Jul 5 2005, 18:58
Go to the top of the page
+Quote Post

Posts in this topic
- guruboolez   MPC VBR flaws (low volume & ringing)   Jun 23 2005, 10:22
- - shadowking   I confirm serious problems under these special lis...   Jun 23 2005, 11:07
- - Acid8000   What I understand from your post guru is that at ...   Jun 23 2005, 11:24
- - rjamorim   I think you should put more creativity into your r...   Jun 23 2005, 15:24
- - Gambit   I haven't seen this mentioned anywhere, so I t...   Jun 23 2005, 15:41
|- - guruboolez   QUOTE (Gambit @ Jun 23 2005, 03:41 PM)QUOTE ...   Jun 27 2005, 10:27
- - Gabriel   The obvious workaround is to check the track gain ...   Jun 23 2005, 20:33
- - Lefungus   QUOTE (guruboolez @ Jun 23 2005, 11:22 AM)Thi...   Jun 23 2005, 20:33
|- - Dibrom   QUOTE (Lefungus @ Jun 23 2005, 11:33 AM)QUOTE...   Jun 23 2005, 22:01
||- - mtm   QUOTE (Dibrom @ Jun 23 2005, 11:01 PM)I would...   Jun 23 2005, 22:23
||- - GeSomeone   QUOTE (guruboolez @ Jun 23 2005, 11:22 AM)Thi...   Jun 27 2005, 12:18
|- - rjamorim   QUOTE (Lefungus @ Jun 23 2005, 04:33 PM)The c...   Jun 23 2005, 22:21
- - mtm   guruboolez, thank you very much for your input. I ...   Jun 23 2005, 21:43
- - CiTay   Thanks again for that summary, guruboolez. I alrea...   Jun 24 2005, 01:20
- - CiTay   Frank replied from work that he will comment as so...   Jun 24 2005, 10:33
- - mtm   My sincerest thanks to everyone involved.   Jun 24 2005, 14:40
- - xmixahlx   dibrom's speed enhancements were focused on PP...   Jun 27 2005, 20:32
|- - Dibrom   QUOTE (xmixahlx @ Jun 27 2005, 11:32 AM)dibro...   Jun 27 2005, 21:04
- - CiTay   As promised, here is the answer that i got from Fr...   Jun 28 2005, 20:09
- - CiTay   I'm a bit surprised nobody has to say anything...   Jul 2 2005, 21:40
|- - rjamorim   QUOTE (CiTay @ Jul 2 2005, 05:40 PM)I'm a...   Jul 2 2005, 21:56
||- - CiTay   QUOTE (rjamorim @ Jul 2 2005, 10:56 PM)Well, ...   Jul 2 2005, 22:37
|- - guruboolez   QUOTE (CiTay @ Jul 2 2005, 09:40 PM)I'm a...   Jul 5 2005, 13:33
|- - markanini   QUOTE (guruboolez @ Jul 5 2005, 01:33 PM)QUOT...   Jul 5 2005, 14:45
||- - guruboolez   QUOTE (markanini @ Jul 5 2005, 02:45 PM)I don...   Jul 5 2005, 16:17
|- - Dibrom   QUOTE (guruboolez @ Jul 5 2005, 04:33 AM)QUOT...   Jul 5 2005, 16:25
|- - guruboolez   QUOTE I think it's probably worth noting that ...   Jul 5 2005, 16:51
|- - Vertigo   QUOTE QUOTE I think it's probably worth noting...   Jul 5 2005, 17:26
- - Vertigo   Hahaha, I love it when robert comes in to save the...   Jul 3 2005, 00:54
|- - rjamorim   QUOTE (Vertigo @ Jul 2 2005, 08:54 PM)Hahaha,...   Jul 3 2005, 01:01
- - Dibrom   Do we need to split this thread again to stay on t...   Jul 3 2005, 01:32
- - Cyaneyes   Just to comment on Frank's thoughts on Track g...   Jul 3 2005, 02:43
|- - Andavari   QUOTE (Cyaneyes @ Jul 2 2005, 07:43 PM)Just t...   Jul 3 2005, 03:47
|- - Lyx   *nevermind - i mixed up trackgain and albumgain*   Jul 3 2005, 04:27
- - xmixahlx   ...if this problem only occurs in music with ridic...   Jul 3 2005, 11:29
- - Lime   I think a workaround is easy. Just do a replaygain...   Jul 5 2005, 15:10
- - Raptus   QUOTE (Gabriel @ Jun 23 2005, 11:33 AM)The fi...   Jul 5 2005, 15:41
|- - Shade[ST]   wouldnt this type of adjustment make the ath usele...   Jul 5 2005, 15:47
- - Gabriel   QUOTE wouldnt this type of adjustment make the ath...   Jul 5 2005, 16:04
|- - Dibrom   QUOTE (Gabriel @ Jul 5 2005, 07:04 AM)If I re...   Jul 5 2005, 16:46
- - Dibrom   QUOTE (guruboolez @ Jul 5 2005, 07:51 AM)QUOT...   Jul 5 2005, 17:26
|- - guruboolez   QUOTE Well haven't you gotten polite answers i...   Jul 5 2005, 18:52
- - Dibrom   QUOTE QUOTE By that, I mean that changing this in ...   Jul 5 2005, 17:26
- - Vertigo   I think we need to send Guruboolez the HA Controve...   Jul 5 2005, 17:32
|- - rjamorim   QUOTE (Vertigo @ Jul 5 2005, 01:32 PM)I think...   Jul 5 2005, 17:51
|- - Vertigo   QUOTE (rjamorim @ Jul 5 2005, 08:51 AM)QUOTE ...   Jul 5 2005, 17:57
- - Jebus   I think there seems to just be an issue with ATH a...   Jul 5 2005, 20:22
- - CiTay   I got a new e-Mail from Frank (he follows this thr...   Jul 8 2005, 22:19
|- - ChristianHJW   QUOTE (CiTay @ Jul 8 2005, 09:19 PM)I got a n...   Jul 10 2005, 09:45
- - Gabriel   Isn't the purpose of track gain to be able to ...   Jul 9 2005, 11:16
|- - Frank Klemm   QUOTE (Gabriel @ Jul 9 2005, 12:16 PM)Isn...   Jul 9 2005, 14:47
|- - Frank Klemm   Example for changing title based replaygains from ...   Jul 9 2005, 14:58
|- - Frank Klemm   Other examples where ReplayGain makes nonsense. Es...   Jul 9 2005, 15:16
||- - Frank Klemm   A lot of albums have nearly no differences between...   Jul 9 2005, 15:22
|- - guruboolez   QUOTE This is not an article about Musepack, but a...   Jul 10 2005, 23:22
||- - Dibrom   QUOTE I won't say that ReplayGain is the cause...   Jul 11 2005, 00:15
||- - Gambit   QUOTE (Dibrom @ Jul 11 2005, 12:15 AM)I think...   Jul 11 2005, 00:22
|||- - Dibrom   QUOTE (Gambit @ Jul 10 2005, 03:22 PM)QUOTE (...   Jul 11 2005, 00:25
|||- - rjamorim   QUOTE (Dibrom @ Jul 10 2005, 08:25 PM)Well ca...   Jul 11 2005, 00:28
|||- - Dibrom   QUOTE (rjamorim @ Jul 10 2005, 03:28 PM)QUOTE...   Jul 11 2005, 00:33
|||- - rjamorim   QUOTE (Dibrom @ Jul 10 2005, 08:33 PM)Umm.. I...   Jul 11 2005, 00:41
|||- - Dibrom   QUOTE (rjamorim @ Jul 10 2005, 03:41 PM)Well,...   Jul 11 2005, 00:59
|||- - rjamorim   Thanks for your clarification. So, from that, one...   Jul 11 2005, 01:02
|||- - Dibrom   QUOTE (rjamorim @ Jul 10 2005, 04:02 PM)Thank...   Jul 11 2005, 01:05
|||- - CiTay   QUOTE (Dibrom @ Jul 11 2005, 02:05 AM)'Co...   Jul 11 2005, 01:26
|||- - guruboolez   QUOTE (CiTay @ Jul 11 2005, 01:26 AM)With tha...   Jul 11 2005, 11:53
|||- - CiTay   QUOTE (guruboolez @ Jul 11 2005, 12:53 PM)Now...   Jul 11 2005, 13:01
|||- - guruboolez   QUOTE (CiTay @ Jul 11 2005, 01:01 PM)QUOTE (g...   Jul 11 2005, 14:14
||- - guruboolez   QUOTE (Dibrom @ Jul 11 2005, 12:15 AM)The inv...   Jul 11 2005, 02:18
|- - rjamorim   QUOTE (Frank Klemm @ Jul 9 2005, 10:47 AM)Rep...   Jul 11 2005, 00:13
|- - Frank Klemm   QUOTE (rjamorim @ Jul 11 2005, 01:13 AM)QUOTE...   Jul 11 2005, 18:23
|- - mtm   QUOTE (Frank Klemm @ Jul 11 2005, 07:23 PM)Th...   Jul 12 2005, 05:07
|- - Frank Klemm   QUOTE (mtm @ Jul 12 2005, 06:07 AM)QUOTE (Fra...   Jul 12 2005, 22:39
- - Gambit   It seems funny to me that you would try to fix Rep...   Jul 9 2005, 11:48
- - mtm   Thank you for your posts, Mr Klemm. They certainly...   Jul 9 2005, 18:51
- - mtm   I just want to say I agree with everything Dibrom ...   Jul 11 2005, 01:35
|- - guruboolez   QUOTE (mtm @ Jul 11 2005, 01:35 AM)I don...   Jul 11 2005, 02:26
- - Dibrom   I think I probably agree with guruboolez. I'm...   Jul 11 2005, 13:11
|- - ancl   QUOTE (Dibrom @ Jul 11 2005, 02:11 PM)I think...   Jul 11 2005, 13:33
||- - Dibrom   QUOTE (ancl @ Jul 11 2005, 04:33 AM)The 2-pas...   Jul 11 2005, 13:53
|- - CiTay   QUOTE (Dibrom @ Jul 11 2005, 02:11 PM)I think...   Jul 11 2005, 13:40
|- - Dibrom   QUOTE (CiTay @ Jul 11 2005, 04:40 AM)Yes, it...   Jul 11 2005, 13:57
|- - guruboolez   QUOTE (CiTay @ Jul 11 2005, 01:40 PM)"Ho...   Jul 11 2005, 14:27
|- - CiTay   QUOTE The current problem of MPC is not to be sure...   Jul 11 2005, 15:07
|- - guruboolez   QUOTE (CiTay @ Jul 11 2005, 03:07 PM)I don...   Jul 11 2005, 15:23
|- - CiTay   QUOTE (guruboolez @ Jul 11 2005, 04:23 PM)May...   Jul 11 2005, 15:33
|- - guruboolez   QUOTE (CiTay @ Jul 11 2005, 03:33 PM)The thre...   Jul 11 2005, 15:50
|- - CiTay   QUOTE (guruboolez @ Jul 11 2005, 04:50 PM)QUO...   Jul 11 2005, 16:03
- - 2Bdecided   I think the concentration on ReplayGain is mislead...   Jul 11 2005, 14:49
|- - guruboolez   QUOTE (2Bdecided @ Jul 11 2005, 02:49 PM)btw,...   Jul 11 2005, 15:01
|- - Dibrom   QUOTE (2Bdecided @ Jul 11 2005, 05:49 AM)The ...   Jul 11 2005, 15:14
||- - guruboolez   QUOTE Yes, but looking back the original quote fro...   Jul 11 2005, 15:35
|- - Frank Klemm   QUOTE (2Bdecided @ Jul 11 2005, 03:49 PM)The ...   Jul 11 2005, 18:14
- - CiTay   Also, guruboolez, i want to apologize to you again...   Jul 11 2005, 15:30
- - krazy   QUOTE (Frank Klemm @ Jul 12 2005, 01:23 AM)I ...   Jul 11 2005, 19:36
|- - Frank Klemm   QUOTE (krazy @ Jul 11 2005, 08:36 PM)QUOTE (F...   Jul 11 2005, 19:51
- - 2Bdecided   If you play nogap tracks out of sequence, you...   Jul 12 2005, 10:53
|- - seanyseansean   QUOTE (2Bdecided @ Jul 12 2005, 10:53 AM)A ne...   Jul 12 2005, 10:57
|- - dev0   QUOTE (2Bdecided @ Jul 12 2005, 10:53 AM)That...   Jul 12 2005, 11:17
- - guruboolez   I made a similar comparison, using short samples d...   Jul 13 2005, 00:41
2 Pages V   1 2 >

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: 30th November 2015 - 16:25