INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1]   Go Down

Author Topic: NEW FEATURE: Higher quality MP3 decoding  (Read 10013 times)

Matt

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 42387
  • Shoes gone again!
NEW FEATURE: Higher quality MP3 decoding
« on: April 21, 2011, 11:50:14 am »

Media Center 16.0.73 (and newer) includes a higher quality MP3 decoder.

In previous versions of Media Center, MP3 decoding used 32-bit floating point.  The decoded data was then converted to 16-bit integers.  The 16-bit data was then delivered to the JRiver audio engine where it was converted to 64-bit floating point (the JRiver audio engine is purely 64-bit floating point).

The 16-bit output has been reviewed as excellent.

However, starting with 16.0.73, MP3 decoding uses 64-bit floating point.  Then it delivers that 64-bit output directly to the audio engine.

The end result is a better MP3 decoder -- the recreated frequencies will be more accurate and the signal-to-noise ratio will be improved.



This change may require a slight configuration change in Media Center > DSP Studio > Output Format.

Picking "Same as source" for the output bitdepth will attempt to output 64-bit data to the soundcard when playing an MP3.

If your sound card does not support 64-bit input, you should select the highest bitdepth your audio device supports in the "Bitdepth."  This is normally 24-bit.

Media Center will offer to automatically configure DSP Studio > Output Format for you in this case, so you may simply need to click "Change Settings & Continue Playback" when starting MP3 playback for the first time.
Logged
Matt Ashland, JRiver Media Center

Alex B

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 10121
  • The Cosmic Bird
Re: NEW FEATURE: Higher quality MP3 decoding
« Reply #1 on: April 28, 2011, 10:24:47 am »

I think you should output in the 32-bit float format by default (when nothing is set in Output Format). The mixer in Vista and Windows 7 can actually use the 32-float input automatically and correctly (i.e. mix in float) and set the final bit depth according to the sound device. (Also the XP mixer seems to work when the output is set to Direct Sound & 32-bit, but I don't know if it actually inputs float data).

The users don't need to be bothered by the "can't play 64-bit" message. Those who know what they do, can set their preferred output format. Do any sound device drivers actually accept 64-bit float input?
Logged
The Cosmic Bird - a triple merger of galaxies: http://eso.org/public/news/eso0755

madmedia

  • Recent member
  • *
  • Posts: 22
Re: NEW FEATURE: Higher quality MP3 decoding
« Reply #2 on: April 28, 2011, 06:14:06 pm »

Well the option to have jriver change the settings automatically does not work... it just crashes the entire program.

So I went into the 'dsp studio' to change 'bitdepth' to 24-bit, and I still get the same error upon playback complaining about it being 64-bit.

This is occurring on 2 win 7 x64 computers, so what can I do?
Logged

Vocalpoint

  • Citizen of the Universe
  • *****
  • Posts: 2007
Re: NEW FEATURE: Higher quality MP3 decoding
« Reply #3 on: April 28, 2011, 09:43:42 pm »

Guys...this definitely needs a rethink. I read the thread and thought I would give it a whirl and I get the message on every file I try to play. Then after the third "automatically configure output format" message - the program crashed. Not cool...

Why would you not default to a bitrate that Joe Average can work with?

VP
Logged

chrisjj

  • Citizen of the Universe
  • *****
  • Posts: 750
Re: NEW FEATURE: Higher quality MP3 decoding
« Reply #4 on: April 29, 2011, 09:49:14 am »

the recreated frequencies will be more accurate

I see no way that can be true. Has anyone actually tested it?

and the signal-to-noise ratio will be improved.

One has got to wonder who is going to get  this improved ratio, since ratio was previously as good as CD and surely no-one who started with a signal better than CD would choose to degrade it by using MP3.

I think it is good that the programmer has maximised the preserved arithmetic precision through the chain, but that the benefit, if any, is not worth the hassle to users that has been observed.
Logged

Vocalpoint

  • Citizen of the Universe
  • *****
  • Posts: 2007
Re: NEW FEATURE: Higher quality MP3 decoding
« Reply #5 on: April 29, 2011, 10:04:51 am »

I see no way that can be true. Has anyone actually tested it?

Me either. How can an MP3, which is going to sound as crappy as it ever will at actual encoding time - suddenly blossom into something better? Sounds like snake oil to me...

My bigger beef tho - is the incessant messages appearing every time I want to play a file. I am glad that I still have v15 daily when I need to play MP3 - but in the studio where I put v16 into test - this nagging messaging is driving me crazy.

VP

Logged

Alex B

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 10121
  • The Cosmic Bird
Re: NEW FEATURE: Higher quality MP3 decoding
« Reply #6 on: April 29, 2011, 10:45:58 am »

Well the option to have jriver change the settings automatically does not work... it just crashes the entire program.

So I went into the 'dsp studio' to change 'bitdepth' to 24-bit, and I still get the same error upon playback complaining about it being 64-bit.

This is occurring on 2 win 7 x64 computers, so what can I do?

... is the incessant messages appearing every time I want to play a file. ...

On my PC the automatically set value is stored and stays as set. I.e. I see the message only once if I don't reset the setting.

I tested this on XP and with Direct Sound. I will try the other output modes and Windows 7.

However, it seems a bit odd if this affects only MP3 and M4A. Since the internal processing is always 64-bit should the same error occur independently of the source file format? I.e.: any file decoded to any bit depth > the playback engine puts the decoded bits inside the "64-bit float data range" = the signal is now 64-bit float > output is reduced to the supported bit depth (if set to do so).

In general, decoding MP3 to float is more accurate than 16-bit integer. Internally the MP3 code contains floating point audio data. The result will be a more accurate rendition of the encoded signal. Naturally this does not mean that the encoded signal would magically change to better. What has been removed or replaced during the MP3 encoding will stay so. Practically there should be no audible difference.
Logged
The Cosmic Bird - a triple merger of galaxies: http://eso.org/public/news/eso0755

Matt

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 42387
  • Shoes gone again!
Re: NEW FEATURE: Higher quality MP3 decoding
« Reply #7 on: April 29, 2011, 11:11:39 am »

If you are having problems, set the bitdepth in DSP Studio > Output Format to 16-bit (or 24-bit, but only if your computer supports it).

We will tune the auto-configuration system to support more hardware in a future build.  We may also make "Same as source" use 24-bit for MP3 and M4A instead of 64-bit.

And to be clear, this is about making MP3 sound as good as possible.  Nobody is claiming that MP3 is not a lossy format, but higher precision math and removal of unnecessary truncation are both good changes.
Logged
Matt Ashland, JRiver Media Center

Alex B

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 10121
  • The Cosmic Bird
Re: NEW FEATURE: Higher quality MP3 decoding
« Reply #8 on: April 29, 2011, 11:43:11 am »

I tested ASIO (ASIO4ALL driver) and Kernel Streaming. XP Pro, integrated ASUS/VIA HD audio (VT1708S).

ASIO4ALL works without setting anything in DSP studio. Apparently the driver can convert the format.

Kernel Streaming causes always an immediate system crash and reboot. I tried it a few times. Oddly MC's logging didn't register anything. Not even something like "start playback". Here are the complete contents of the previous log:

Code: [Select]
Media Center; Version: 16.0.75; Types: 16383
0000000: 2040: General: Starting logging: Date: 2011-04-29 18:18
0000000: 2040: General: Log Reset: Logging reset
0004688: 2040: General: CMCResourceHelper::GetIsModalPopupShowing: Main window disabled


Kernel streaming works normally when the setting is 16-bit, and 24-bit shows the expected error message:



I have previously tested the audio device and know for sure that the ASUS/VIA device driver supports only 16-bit despite the "HD Audio" label.

I will try Windows 7 next.

EDIT

"Auto-configuration" did not show up in the Kernel Streaming mode.
Logged
The Cosmic Bird - a triple merger of galaxies: http://eso.org/public/news/eso0755

Vocalpoint

  • Citizen of the Universe
  • *****
  • Posts: 2007
Re: NEW FEATURE: Higher quality MP3 decoding
« Reply #9 on: April 29, 2011, 11:48:18 am »

We will tune the auto-configuration system to support more hardware in a future build.  We may also make "Same as source" use 24-bit for MP3 and M4A instead of 64-bit.

Yes!  ;D
Logged

Matt

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 42387
  • Shoes gone again!
Re: NEW FEATURE: Higher quality MP3 decoding
« Reply #10 on: April 29, 2011, 12:01:22 pm »

I tested ASIO (ASIO4ALL driver) and Kernel Streaming. XP Pro, integrated ASUS/VIA HD audio (VT1708S).

ASIO4ALL works without setting anything in DSP studio. Apparently the driver can convert the format.

The JRiver ASIO plugin always receives 64-bit data and converts to the format required by ASIO.

Next build contains these two changes, which I believe should solve most of the problems:
Changed: When using 'Same as source' for the bitdepth for MP3 and M4A, the output will be 24-bit instead of 64-bit (choosing a higher bit depth manually is still supported).
Changed: Added 16-bit output as one of the audio auto-configure formats to try when failing to open a soundcard.
Logged
Matt Ashland, JRiver Media Center

Alex B

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 10121
  • The Cosmic Bird
Re: NEW FEATURE: Higher quality MP3 decoding
« Reply #11 on: April 29, 2011, 03:10:32 pm »

I have now tested Windows 7 with a 24-bit Terratec PCI sound card.

Direct Sound
- The bit depth settings up to 32-bit work. The automatic configuration sets the output to 24-bit.

WASAPI (in the exclusive mode)
- Works up to 24-bit. The automatic configuration sets the output to 24-bit.

WASAPI Event Style (in the exclusive mode)
- Works up to 24-bit. The automatic configuration sets the output to 24-bit.

ASIO (Terratec driver)
- Works up to 64-bit. No automatic configuration is needed.

Kernel Streaming
- Works up to 24-bit. The automatic configuration sets the output to 24-bit.
- Does not cause a crash when nothing is enabled in DSP Studio. (Obviously the fix for other devices that support only 16-bit is needed.)
Logged
The Cosmic Bird - a triple merger of galaxies: http://eso.org/public/news/eso0755

finallygreen

  • Recent member
  • *
  • Posts: 36
Re: NEW FEATURE: Higher quality MP3 decoding
« Reply #12 on: April 30, 2011, 10:06:48 am »

Just upgraded my v16 build this morning. AMs on my day off are meant to be relaxing, so imagine my initial reaction when the upgrade caused this 'error' (as it first appears).

Anyways, glad that when I came here to ask, the issue was already here being discussed. For the record, my system made the setting change and saved it when I let the pop-up adjust the setting for me.
Logged
Pages: [1]   Go Up