Quadrophonic Matrix Encoder & Decoder - Verified Software Implementation

QuadraphonicQuad

Help Support QuadraphonicQuad:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.

shotto

Member
Joined
Dec 28, 2010
Messages
15
Location
Germany
Dear Quadraphonic Community,

I hope it's OK if I continue the updates around the software development, which where original posted in the "All Things Quad" thread, within this thread where it probably better matches the thread topic.

Additional to the already available Quadrophonic Matrix Decoder & Player (http://www.hotto.de/software/quadrophonicmatrixdecoder.html) I like to do some advertising for the Quadrophonic Matrix Encoder:

http://www.hotto.de/software/quadrophonicmatrixencoder.html

All matrices are now verified, so that the software left the experimental state.
It would be great if you could take some time for testing.

Thanks in advance

Stephan
 
hey Stephen. i did tried out decoder. it's neat done with nice GUI and pretty good
graphical visualization of oscilloscope and phases analizer for both front and rear pair.
very nice to see implementation of more than only SQ and QS formats.

now about cons.
the real time decoding of the feeds stream under "Audio Input Device" didn't happen.
i mean nothing at all. i can hear sound of played source LP but decoder didn't showed
any sign of life.
in the mode "Wave Audio Player" decoder does work but won't play anything other
than 44.1KHz which is quite outdated as for today.
another question i wondered - is there any way to save decoded stream to HD as a
separate front/rear stereo pairs?
 
Hi Otto,
Have you selected the active mixer/sound device as input? Furthermore, within the operating system setup you need to specify that device as input device. The same is true for the output devices.

Unfortunately, it is a limitation of JAVA that the sample resolution is limited to 16 Bit. I've just provided a sampling rate of 44.1kHz because that's still the standard for CD. Well, even during recordings in the studio it is still common to use 24Bit/44.1kHz to avoid re-sampling for the CD-format which would always create artifacts.

I hope, that beside of those disadvantages, the software is still usable.
 
I am not sure if this is an issue but I have a denoise program that uses Java an it handles any resolution fro 44.1 to 96khz and 24bit with no problem. I don't see why your program wouldn't do the same.
 
I am not sure if this is an issue but I have a denoise program that uses Java an it handles any resolution fro 44.1 to 96khz and 24bit with no problem. I don't see why your program wouldn't do the same.


The JAVA-Sound API to read/write sampled data from/to a sound device is definitely limited to 16Bit. As already mentioned, there is no limitation in the sample rate.
If your de-noise program reads and writes wav files then it works directly on the data and has no need to handle sampled audio in conjunction with a sound device. Therefore, it is able to handle any data rate and resolution.
 
Hi Otto,

very nice and impressive program!

But, how do or should people use this program with more than two speakers? The Java limitation of 2 channels per audio device limits the usage - at least on my computer.

I did not figure out how to use "Jack Audio" as virtual sound output devices as given in your small hint.

Therefore, saving instead of playing the decoded audio file - playable with another player, using all (four) channels - would be a great benefit.

Yours
KM
 
Stephan, thanks for your reply.
i thought this kind of appz would be great for checking out mix on the questionable sources
such like LPs and CDs which didn't marked as quad. but still have no luck to get it work in
real time. could be due to win 2k3 which i use. probably should give a try on laptop with
win XP. just need to find a time to do this.
you didn't answer, how to save decoded stream onto hard drive so my guess is there is no
way to do so.
 
Stephan, thanks for your reply.
i thought this kind of appz would be great for checking out mix on the questionable sources
such like LPs and CDs which didn't marked as quad. but still have no luck to get it work in
real time. could be due to win 2k3 which i use. probably should give a try on laptop with
win XP. just need to find a time to do this.
you didn't answer, how to save decoded stream onto hard drive so my guess is there is no
way to do so.


@Otto,
Just for the reason that there is already an offline SQ decoder available (http://www-user.rhrk.uni-kl.de/~junglas/SQdecode/SQdecode.html) I thought there wouldn't be any need to implement a function to write 4 separate decoded wav files.
I haven't tested SQdecode, but it seems to cover the functions you're looking for.

@Mandelatz,
You really need two sound devices in your computer or a software that can create virtual sound devices.
 
@Otto,
Just for the reason that there is already an offline SQ decoder available

yeah, i know. but your has advantage as can work with 4 different formats of matrices encoded sound.
i'm really very much liked your concept and execution and would be great to have ability to save decoded
stream in such nice lightweight appz.
 
Hi Shotto

Just in case it didn't get to you, i sent an email regaring some issues i found when i tested the encoder. if you need me to send it as a PM, let me know

OD
 
Hi Shotto

Just in case it didn't get to you, i sent an email regaring some issues i found when i tested the encoder. if you need me to send it as a PM, let me know

OD

Thanks for testing the software. I've just replied to your email and hope that this explains your questions.
 
@Mandelatz,
You really need two sound devices in your computer or a software that can create virtual sound devices.[/QUOTE]

Yes, I know. But how do I (and everybody else) create such a virtual sound device? "Jacks Audio" seems not such easy.

Yours
KM
 
Which of the SQ encoding code's does this software implement? Is it the 'square' 4:2 code or the N:2 'Position code' or the mono compatible 'Forward Oriented' code? I ask due to the major problems the SQ 'square' code has with encoding 'side' images like Center Left/Center Right and any 'interior' positions.
 
You really need two sound devices in your computer or a software that can create virtual sound devices.

Yes, I know. But how do I (and everybody else) create such a virtual sound device? "Jacks Audio" seems not such easy.

Yours
KM
[/QUOTE]

There are a couple of solutions at the market e.g. Virtual Audio Cable: http://software.muzychenko.net/eng/vac.htm
I can't give any guarantee, just for the reason that there are so many hardware and software configurations out there.
 
Which of the SQ encoding code's does this software implement? Is it the 'square' 4:2 code or the N:2 'Position code' or the mono compatible 'Forward Oriented' code? I ask due to the major problems the SQ 'square' code has with encoding 'side' images like Center Left/Center Right and any 'interior' positions.

The encoder & decoder implements Basic CBS SQ as described here: http://midimagic.sgc-hosting.com/quadrafon.htm
 
And there lies the problem with these programs


Well, the different methods to use a second mixing matrix to enhance front/back separation by reducing the left/right channel separation aren't really a good solution.
To achieve an acceptable channel separation the decoder needs to apply algorithms like "Shadow Vector", "VarioMatrix" or "Tate DES". In today's implementations successors of those variable gain matrices are part of Dolby Pro Logic which works quite good.
 
Hi shotto,
I´m using old PPC Macs with Mac OS 10.4 and 10.5, which have only an Java-Enviroment by Apple compatible to Suns Version 5. Is it possible to compile your programs in this version. I think, I´m not alone with this problem and would appreciate to test them.
Greetings!
 
Well, the different methods to use a second mixing matrix to enhance front/back separation by reducing the left/right channel separation aren't really a good solution.
To achieve an acceptable channel separation the decoder needs to apply algorithms like "Shadow Vector", "VarioMatrix" or "Tate DES". In today's implementations successors of those variable gain matrices are part of Dolby Pro Logic which works quite good.

I was up all night - absolutely no sleep, with stomach flu, so if this post makes no sense, I apologize.

Sadly, the reduced Left/Right separation in both non-decoded stereo AND decoded (non-logic) Sansui QS playback is why the action of the Vario-Matrix is so audible to many listeners (and why Dolby dropped it from the experimental prototype theatrical Dolby Stereo units) unless expensive split-band techniques or vastly reduced levels of inter-channel separation are acceptable. Humans are 20 times more sensitive to left/right amplitude (level) variations than to front/back variations or to phase changes: SQ reduced separation, and thus placed all logic action, only along the front/back axis. For the left/right axis, in both the front and back channels, and even with a non-logic decoder (and no 10/40 or 10/20 blend), full separation is achieved at all times - and with 10% blend, it's reduced from 'infinity' (effectively the LP stylus or digital/tape source inherent levels) to 'only' 20db of separation, which is plenty for full stereo/quad localization, even when located directly next to the adjacent 'crosstalk bearing' speaker/channel. Thus, for any 'amount' of Logic action, SQ - by its virtue of its logic action being kept along the front/back axis - will always be less audible than any 'regular' matrix, due to its encoding/decoding specifications.

Shure Bros came across this in the initial design of their Stereosurround encoding process and the, to-this-day-unequaled, Acra-Vector Logic decoding for Dolby Stereo/Surround films and music; the side-to-side logic action required to create a highly separated Center Front (from L/R Front) is always much more audible than even very heavy amounts of Logic required to keep L/R front fully separated from the mono surround since it's on the front to back axis. It's another reason some gain-riding of the surround channel (separate from Constant Power operation) is permissible, in addition to the selective cancellation via matrix multiplier circuits; a more 'discrete' effect can be achieved for hard-panned, surround only signals, by allowing a modest amount of gain riding power transfer. That can't really be allowed for side-to-side logic because it would be so very audible. It's also the major reason that Sansui never created a gain-riding logic decoder for QS (like CBS and everyone else did for SQ) before jumping directly to a decoder that adaptively changes its output decoding structure as a condition of the input signal. Vario-Matrix is probably the best named technology ever created! It's just too bad that Sansui never took it to the next step and added front-to-back Vario-Matrix enhancement for the corner signals of the SQ matrix - they only ever kept it to Front-Back Vario-Matrix for SQ - since the basic SQ matrix provided full side-to-side separation, the Vario-Matrix for SQ, as Sansui did it, was even simpler - and with less accurate decoding - than their Type-B VM circuit for QS. Of course, no one bothered to create Shadow Vector, Scheiber 360, Tate DES, or Paramatrix, with any advanced decoding mode for QS.

As a side-note, does anyone know if anyone other than Sansui ever implemented QS Vario-Matrix decoding using Sansui's VM IC's? In one AES paper from Sansui, they claim Marantz had engineered their own fully Type-A multi-band Vario-Matrix circuit into a receiver using the Sansui's Hitachi-manufactured QS Vario-Matrix IC's - and that its (the Marantz VM) attack/decay times are substantially different from Sansui's own designs (which was easily done since it was all done off-chip). Except for the SQ "adapters" for the "Quadradial" receivers, I don't know of any other advanced decoding in Marantz gear. Anyone know anything about it?
 
Back
Top