Jump to content
soxr

Upsampling MQA files to original resolution with sox will sound like the original resolution

Rate this topic

Recommended Posts

What I’ve read several people who have looked at MQA say in this forum in various threads is that the MQA filtering doesn’t cut sufficiently to get rid of the post-ringing.  You say that it does get rid of the post-ringing to such an extent it sounds “thin.”  Can you show or describe the cut in the filter that gets rid of the post-ringing (for example, how many dB down at what frequency/ies)?

Share this post


Link to post
Share on other sites
1 hour ago, soxr said:

sox -S input.mqa.flac output.flac -vsM 352800

As I am not too familiar with SoX, what do exactly "-S" and "-vsM" do?

Share this post


Link to post
Share on other sites

Example output

#sox -S 2L-050_01_stereo_DXD_WAV.mqa.flac 2L-050_01_stereo_DXD_WAV.mqa_UPSAMPLED.flac rate -vsM 352800

Input File     : '2L-050_01_stereo_DXD_WAV.mqa.flac'
Channels       : 2
Sample Rate    : 44100
Precision      : 24-bit
Duration       : 00:03:01.75 = 8015028 samples = 13631 CDDA sectors
File Size      : 49.6M
Bit Rate       : 2.18M
Sample Encoding: 24-bit FLAC
Comments       :
ALBUM=DIVERTIMENTI
ARTIST=TrondheimSolistene
CATALOG=2L-050
COMPOSER=Benjamin Britten
DATE=2008-06-03
DESCRIPTION=Following on from the award winning recording of MOZART's violin concertos with Marianne Thorsen, TrondheimSolistene team up once again with the recording company 2L for their new production. This album features a selection of some of the finest and most technically challenging repertoire for string orchestra, and includes repertoire by Benjamin Britten, the Polish composer Grazyna Bacewicz, the Norwegian composer Terje Bjørklund as well as Bela Bartok's seminal work for string orchestra the Divertimento. DIVERTIMENTI is the first music-only recording to be made available commercially in the ground breaking format of Blu-ray. A true world premiere!<br><br>The divertimento as a musical genre dates back to the nineteenth century. Divertimenti were composed for various social occasions and were intended to be light, uncomplicated and cheerful. Such pieces were often scored for small string ensemble. Over the years this effortless, elegant form has appeared in many different musical styles and, to a large extent, set the standard for the virtuosic chamber music we know today. A number of the most prominent composers of our age have engaged with this most fascinating musical style and have contributed to its further refinement as a chamber-symphonic showpiece. <br><br><strong>5.1 SURROUND + STEREO</strong> produced in DXD (Digital eXtreme Definition 352kHz/24bit) by Lindberg Lyd, Norway
DISCNUMBER=1
DISCTOTAL=1
ENCODER=MQAEncode v1.1, 2.1.0+0 (01450a4), DF77A107-A71F-4e57-A322-872C6D0E99C8, Apr 20 2016 17:08:42
GENRE=Art Music > Classical > Classical
GRID=A10314Q0000034188A
ICPN=7041888512820
ISRC=NOMPP0802010
LABEL=2L
ORIGINALSAMPLERATE=352800
PERFORMER=Trondheimsolistene
PERFORMER=Øyvind Gimse
PERFORMER=Geir Inge Lotsberg
TITLE=BRITTEN Simple Symphony, Op 4: I. Boisterous Bourree
TOTALTRACKS=11
TRACKNUMBER=1
TRACKTOTAL=11

In:6.85% 00:00:12.45 [00:02:49.30] Out:4.34M [     =|==    ] Hd:0.2 Clip:0

 

Share this post


Link to post
Share on other sites

Soxr,

If I have read your description correctly, you are taking the distributed MQA file (24/44.1, with noise in the lowest 8 bits) and upsampling it to the original resolution with a minimum phase filter. I can appreciate that this would sound very similar to the original, similar to downsampling to 16/44.1 and back up again. 

What do you think the results would be of first passing the MQA file through the MQA Core decoder to retrieve the content encoded in the lowest 8 bits, before upsampling?

Share this post


Link to post
Share on other sites
1 hour ago, The Computer Audiophile said:

Anyone know if JRiver still has SOX integration? I'm not at home, otherwise I'd look. 

Yes it is

Share this post


Link to post
Share on other sites
4 minutes ago, Don Hills said:

Soxr,

What do you think the results would be of first passing the MQA file through the MQA Core decoder to retrieve the content encoded in the lowest 8 bits, before upsampling?

 

One would need to capture the output of a core decoder, run that through sox rate -vsM $ORIGINALRESOLUTION, and compare that with the original master file. sox upsampling will be superior to the low quality upsampler with small amounts of taps that needs to run in the dragonfly on a limited power budget supplied via 5V USB.

But does it matter? Please do the experiment. Download any MQA file from 2L.no which has a DXD counterpart, upsample with sox with the exact settings in this topic and compare to DXD. If you cannot hear the difference, then the method is good enough. DXD is the real studiomaster, this is what the engineer worked on. 2L.no has one of the highest quality standards.

I challenge others to do the sox test. It's not so hard.

I cannot put these files on some site because of copyright law, otherwise all the upsampled MQA files and their DXD counterparts would already be on the internet so you don't have to figure out how to get sox running on your system.

I made an internal mirror of the MQA and DXD files as I may suspect that 2L.no could potentially remove one of the two, making the comparison impossible for peer review.

Share this post


Link to post
Share on other sites
3 hours ago, mansr said:

-vsM is shorthand for "-v -s -M" options of the "rate" filter.

 

-v: very high quality

-s: steep filter

-M: minimum phase

 

How different is this to, say, the HQPlayer poly-sinc-xtr-mp filter? The description sounds similar to the above.

Share this post


Link to post
Share on other sites
6 hours ago, pkane2001 said:

 

How different is this to, say, the HQPlayer poly-sinc-xtr-mp filter? The description sounds similar to the above.


HQplayer has minimum phase options, so it can work.

You just need to find which recipe sounds the most similar like DXD up to a point where you no longer can hear the difference. As a link to the source and header files is included in my article, it should be very easy for other devs to find the exact settings that mimick sox -vsM

They could link soxr in their player, which is allowed as soxr is LGPLv2.
 

Share this post


Link to post
Share on other sites

Thank you @soxr for your experiments. I think, it is useful information for better understanding of MQA issue.

 

All what I wrote in this post is hypothesys only. Probably in the further discussion we will find new reference points, based on new information.

 

If I uderstand correctly, that was said in the first post:

 

1. MQA file upsampling with certain resampling give sound, that similar (in several listners opinion) to allegedly original DXD file, on certain equipment.

 

2. Minimum phase filter give better for certain resampler (in @soxr opinion) sounding then linear phase filter of ht resampler.

 

3. Unfolding does not performed in this experiment.

 

 

In 1. and 2.:

 

1) many "certain" term. I suppose, that it is implementation issues.

 

2) I wrote "opinion" because there is not reference to exact experiment.

 

 

 

About 3.

 

If unfolding undone, so ultrasound isn't restored. As I remember, at MQA's highest frequency range placed folded information, that like to noise without unfolding, and after unfolding the spectrum like to original one.

 

That it is mean?

a) By currently proved information we can't hear above 16 ... 22 kHz.

b) Thus the folded information and ultrasound may be unlistenable.

Therefore upsampling to 384 kHz keep most important ( in my opinion according a) and b) ) audible information.

 

It is may be one of reasons why listeners don't hear difference between allegedly original DXD file and upsampled MQA file.

 

However, for more reliable objective knowledge (independent on number of experiments, participants) need serious professional double blind test with exact protocol: big number participants and tests, equipment and listening room(s) specification, methodics, etc.

 

However, such researches learn implementations rather (certain hardware, software) then [Upsampling vs. MQA].

 

Also I don't met before correct researches of minimum phase filter. Probably somebody can share protocols of such researches.

 

Share this post


Link to post
Share on other sites
9 hours ago, pkane2001 said:

How different is this to, say, the HQPlayer poly-sinc-xtr-mp filter? The description sounds similar to the above.

I have no idea, but you could probably tease the impulse response out of HQPlayer if you tried.

2 hours ago, soxr said:

You just need to find which recipe sounds the most similar like DXD up to a point where you no longer can hear the difference. As a link to the source and header files is included in my article, it should be very easy for other devs to find the exact settings that mimick sox -vsM

It's easy enough to dump the exact coefficients used by sox and use them with any other software that supports custom filters.

Share this post


Link to post
Share on other sites

Squeezelite as shipped with a lot of linux audio distributions and raspberry pi distributions, can do it too:


http://manpages.ubuntu.com/manpages/trusty/man1/squeezelite.1.html

 

this one is a little obscure and prone to typo's, based on the manpage

<recipe>:<flags>:<attenuation>:<precision>:<passband_end>:<stopband_start>:<phase_response>

squeezelite -r upample_rate -u ::::::0

or to have the exact settings with squeezelite as with the sox command shown earlier
squeezelite -r upample_rate -u vsM

Share this post


Link to post
Share on other sites
1 minute ago, Bob Stern said:

@soxr:  Are you Rob S, the developer of sox?

Not if his comments on Archimago's blog were under his real name.

Share this post


Link to post
Share on other sites
On 6/28/2017 at 6:45 PM, The Computer Audiophile said:

Anyone know if JRiver still has SOX integration? I'm not at home, otherwise I'd look. 

 

JRiver 22 has SOX. 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×