LtRt Matrix Decoder

Anything and everything to do with DCP-o-matic.
MPdecode
Posts: 2
Joined: Tue Oct 07, 2025 9:50 am

LtRt Matrix Decoder

Post by MPdecode »

Hello. New member here - big fan of DCP-o-matic!

I’m a long-time reader of the forum, and I recall there’s been discussion in the past on how to deal with 2.0-only sound when making DCPs (e.g. ways to upmix; matrix decoding the LtRt etc).

Recently, I’ve been experimenting with JSFX coding (using various tools), and have developed something that might be useful:

https://github.com/MPdecode/LtRtMatrixDecoder

It’s an audio plug-in for decoding 2.0 LtRt into 4.0 LCRS, which is placed in 5.1 SMPTE channel order. It aims to mimic logic-based steering found in some cinema sound processors. Tests so far (including in a high-end, calibrated cinema) have been very promising.

JSFX is the open-source code for FX plugins as used in REAPER (www.reaper.fm). If you’re not familiar with this particular DAW and prefer to use another, it’s also working (at least on my Mac) in the VST3 wrapper from here: https://github.com/JoepVanlier/ysfx.

I'd love to hear any feedback or suggestions.

Thank you!
barber
Posts: 54
Joined: Fri Apr 15, 2016 4:03 pm

Re: LtRt Matrix Decoder

Post by barber »

Hi !

Thanks for your plug-in, it's very interesting. Do you think it could, for example, create the proper Center and Surround channels from a stereo track sourced from a Dolby SR 35mm print scan? Or is it a very different kind of matrix encoding?

Best,
Dan
MPdecode
Posts: 2
Joined: Tue Oct 07, 2025 9:50 am

Re: LtRt Matrix Decoder

Post by MPdecode »

Hi Dan,

Thanks! Yes, in my tests, it’s been able to accurately extract the Center and Surround channels. One of the tests I ran used a stereo track sourced from a 35mm scan of the Dolby Stereo Cat 251 Listening Test film: all channels were properly placed (L, C, R, S).

Just a quick note: the plug-in doesn’t apply noise reduction (A-type or SR), so you’ll need to handle that separately before running the matrix decoding.
Last edited by MPdecode on Tue Oct 07, 2025 1:55 pm, edited 1 time in total.
barber
Posts: 54
Joined: Fri Apr 15, 2016 4:03 pm

Re: LtRt Matrix Decoder

Post by barber »

That sounds promising! Can't wait to test it on the next project I get to work on.
Carsten
Posts: 3010
Joined: Tue Apr 15, 2014 9:11 pm
Location: Germany

Re: LtRt Matrix Decoder

Post by Carsten »

Would there be a way to use this code in DCP-o-matic as an additional audio processor?
carl
Site Admin
Posts: 2851
Joined: Thu Nov 14, 2013 2:53 pm

Re: LtRt Matrix Decoder

Post by carl »

The easiest way would probably be to port it to C++ and add it that way. Not trivial, but do-able, I think.
Carsten
Posts: 3010
Joined: Tue Apr 15, 2014 9:11 pm
Location: Germany

Re: LtRt Matrix Decoder

Post by Carsten »

Alright, I missed the JSFX part.
MPdecode
Posts: 2
Joined: Tue Oct 07, 2025 9:50 am

Re: LtRt Matrix Decoder

Post by MPdecode »

If users would find it valuable, I'm more than happy for any part of the plug-in's code to be ported to C++ and added to DCP-o-matic as an additional audio processor.