Cockos Incorporated Forums

Cockos Incorporated Forums (
-   ReaScript, JSFX, REAPER Plug-in Extensions, Developer Forum (
-   -   Track Inspector VIP (

heda 03-14-2016 03:42 AM

Track Inspector VIP
HeDa_Track Inspector VIP displays and provides controls to manipulate information about the selected track, and displays RMS and EBUR128 meters for the track. It is designed to be docked vertically to the left or right of the arrange. You can also have one docked to the left for the current selected track, and another one to the right with only the master track.

REAPER 5.24 or newer
SWS Extensions 2.8.3 or newer
TBProAudio dpMeter II v1.1.8 or newer for EBUR128 meter. It can be used without it too and have RMS meter instead.

Download and install it using HeDaScripts Manager

  • Track Markers Notes
  • Freeze management and freeze information display
  • FX Chain, Parameters, Sends, Receives
  • FX Groups. Bypass all plugins from a group. Show all plugins from a group (in current track or in all tracks)
  • Track Delay (offset in ms)
  • Big Volume fader with configurable limits (Up and Down)
  • EBUR128 Loudness meter
  • RMS meter/Peak meter/Waveform display
  • General Dynamics compression/expansion meter display
  • Insert markers when peaks over 0.0 db
  • Automatic add to TCP control FX parameters.
  • Sends presets to configurable set of tracks.
  • Automation panel
  • Pre-FX Fader/Meters
  • Post-FX/Post-Fader Meters
  • Soft Bypass of plugins (without PDC of bypassing normally)
  • Soft A/B compare two plugins (without PDC issues of bypassing normally)
  • Automatic resize selected track
  • Automatic show envelopes of selected track.

This is still in development. You can support the development of this with your donations.

I hope you find it interesting, useful. Any suggestions, ideas? Thanks!

Added stereo direction and correlation meters in v.14

musicbynumbers 03-14-2016 05:00 AM


That's going to be so useful. Wanted this for years now and I'm so happy we now have the tools to do it!

I'll definitely up for "patreonising" this when you have a test version up.

Love the metering too!

You've done it again Heda!

musicbynumbers 03-14-2016 05:06 AM

Love the idea for the track marker notes. Not sure I know what you mean by it though? Do you mean if you put an empty item on the track with text in it then it will show here? Or is it related to your marker/note script? :)

I would love if it showed the track notes from the SWS note window but maybe that's what you mean anyway?

Also, That's fantastic that you managed to get the reduction meter from the general dynamics plugin. Love that plugin already! :)

I'm guessing for the RMS and EBU it will need to have the same plugin on the track that was used for the loudness meters script?

dasombre 03-14-2016 06:59 AM

wow, this looks amazing. Thank you for the effort and looking forward to the release :)

musicbynumbers 03-14-2016 07:02 AM

An obvious feature might be to be able to lock the track (ignore selection).

This could make it possible then to open up a few of them if needed (although that might make it hard to deal with the dpmeter plugin?)

X-Raym 03-14-2016 07:11 AM

That will definitely make a lot of user coming from Cubase (and other) very happy :D

The track markers notes could also be quite useful !

Good work !

raiirock 03-14-2016 07:58 AM

Awesome ! Cant wait to try it out

heda 03-14-2016 08:16 AM

I'm glad you find the track notes nice, because I'm kind of proud about it. It still can be improved, but let me show you a bit. You add the note and it adds a marker with the note at play/cursor position. You can navigate to the note position by clicking on them too. ALT+click to remove the note. The notes are associated to the track. So selecting another track will show only the markers for that track. There will be an option to list all track's notes too. That is still not functioning.

I also love General Dynamics JSFX. I had to modify it slightly to make it compatible with Track Inspector. It will be easy to install and with a suffix in the name to not touch the original one.

Yes. dpMeter is used too for the EBUR128, as in Loudness Graph.
The RMS calculation is a JSFX that will be included with the package.

The way it is designed is to work only with one instance. So you cannot lock to a track and open multiple ones. It could be done but not for now.

@X-Raym: I don't think Cubase users would switch. If they are still in Cubase must be for very important reasons. Not for the inspector ;)

Thank you everybody!

snooks 03-14-2016 08:16 AM

Cool, the icing on the cake would be to show MIDI bus/channel next to the sends (perhaps if they are MIDI only sends). That plus Input FX and Input FX params would complete the picture.

I like the Freeze showing what's been frozen.

(ps it's a bit wide for my liking, I'd much prefer text size to be the same as the TCP).

Great work so far though!

heda 03-14-2016 08:27 AM

@snooks Yes. MIDI sends detection and Input FX must be added too.
I'm glad you like the frozen chain display because it was a bit of pain to code. :)
it can be resized, and panels collapsed and uncollapsed
I could work on a setting for the font size too.

VVV 03-14-2016 09:06 AM


snooks 03-14-2016 09:06 AM

Yay, looking good! :) Excellent news re scaling, MIDI sends and input FX. One minor GUI enhancement would be to highlight collapsed section title text if there are sends/whatever to be seen when expanding them.

Looking forward to testing!

Sexan 03-14-2016 09:12 AM

awesome!!!!! track notes is something I've wanted for a while,wanted to create a script but don't have much knowledge to make it.
no more docked mixer !!!!!!!

musicbynumbers 03-14-2016 09:29 AM

Thanks for the info Heda. That's a great feature to have with track notes!

So much "win" in this script! ;)

musicbynumbers 03-14-2016 10:25 AM

One unexpected benefit is that the pan is going to work with absolute input devices like wacom or touchscreen whereas reaper knobs don't so thanks for that! ;)

mehmethan 03-14-2016 10:52 AM

Another amazing script from Heda...

I'm sure you will add some more feautures and I hope you'll add:

- Premetering, VU meter
- To see more than one track in the inspector like loudness-meter. Some kind of mixer for selected tracks,
- Visualization for Reacomp and ReaEq or some other suitable plugins

Thanks again

Sju 03-14-2016 11:22 AM

Sweet jebus this looks good. Thanks for innovating with ReaScript once again. Seriously, donate to this guy.

I'm not sure if this falls in to the category of feature requests, but I'd find it very useful to have an inspector/meter for the master track as well, for equal loudness monitoring purposes. Right now I've tuned my playback volume to around 70dB SPL @ -23 LUFS, and I'm running the master in RMS mode set so the clipping indicator level averages at around that -23 LUFS point. It'd be ideal to have true LUFS metering in the master though, and using a separate plugin like dpMeter isn't convenient as the interface isn't dockable (it has to be always visible). This is something that could be achieved with ReaScript I believe. Ok I'll shut up now :D

PS. VST3 compressors can report GR amount IIRC? Can ReaScript parse this information by any chance?

heda 03-14-2016 01:23 PM

@mehmethan: Thank you. I wrote you an email too.
  1. Premetering. Yes. I can add premetering option. Also requested by musicbynumbers.
  2. VU meter.. ok annotating it for the future just in case...
  3. See more than one track. It's very interesting yes, like a real MCP replacement for some selected tracks. Like Loudness Graph but with more track details and without the graph. Could be possible after I finish the selected track only version first.
  4. Cannot read the ReaComp values like I can in a JSFX like General Dynamics. But I really like General Dynamics. :)

@Sju: Right now it doesn't work if I select the master track. But it could be interesting to have another copy designed for the master track. So we could have both the selected one and the master track in another window always visible. I'll think about it.

Plugins normally don't report values that can be read by ReaScript. dpMeter does, because TBProAudio is very good. All JSFX can also be read from Reascript. :) Thanks!

Sexan 03-14-2016 01:32 PM

3. See more than one track.

I like the way logic does it when clicking on a track it shows another track next to it (aux).So if you have sends to for example reverb,reverb track is next to main track so you can quickly adjust or modify it vst on it or something else

syntetic 03-14-2016 01:54 PM

Good work, one of the best scripts for me. Heda, Please , add a knob at side or line under effects in chain for control or just for display dry, wet level for effects or background under effects with other brightness just to see d/w levels, it would be cool i think

lachrimae 03-14-2016 01:59 PM

Nice tool Heda.

Maybe beyond the scope, but what about a pre/post fx sync'd waveform display comparison?

Perhaps with a toggle for freq and phase analysis...

mehmethan 03-14-2016 02:41 PM

Floating vertical waveform display like FL Studio would be really cool:)

Please check 1:08 to 1:27 of this video if you don't know about it.

hopi 03-14-2016 04:54 PM

Nice WIP heda... along with the others I'm very interested in this one...

It would be much more of a useful 'inspector' than the mcp one I have docked to the left of the TCP tracks currently. Ton more information in yours... beautiful

Garrick 03-14-2016 05:02 PM

Looks awesome!

musicbynumbers 03-14-2016 05:24 PM

I'm not sure any waveform preview would make sense unless it was able to be done over multiple tracks.

Nuendo/FL do this mainly because then you can have the mixer full screen and still get a sense of the arrange page waveforms.

It's very cool but properly a beast on CPU via a script :)

what WOULD be quite useful maybe though is a "toggleable" small FFT window that you could enable to get a sense of where the tracks "energy" is or key/pitch at that time.

I only mention this since there are scripts that cover FFT analysis already.

Totally wouldn't be that bothered if not though ;) I think there are better areas Heda should spend his time on (my opinion only) ;)

musicbynumbers 03-14-2016 05:46 PM

ooh ooh ooh.. big feature request for me would be if we can change over the plugin order by simply dragging and dropping! :)

I really begrudge having to currently either go to the mixer or fx window to do this.

If the capability for this isn't in yet, let us know and I'll go beg the devs for it! ;)

heda 03-15-2016 03:41 AM

Good morning friends
First of all, let me say I'm glad that it seems there is a very positive response and excitement about this app. (I like to call it app instead of script , because it has a user interface and complex functionalities, but yes.. it's also a script. So.. Being a script, it has its limits. Mainly we depend on the API provided by REAPER, and then I cannot draw pretty graphics using the GPU. So I'll concentrate more in functionality than in pretty graphics. It doesn't mean I cannot try to be more or less pretty.

I'm annotating all your suggestions and requests. I like all your comments.
Also, after seeing the good response from all of you, I had to check if I posted in the general forum by mistake heh, I think I need to accelerate coding and have the first pre-release available sooner.

here is one update: Pre-fx loudness meter option and button to modify fader volume to match post fader IL to prefx IL.

musicbynumbers 03-15-2016 04:17 AM

Fantastic! :)

raiirock 03-15-2016 07:50 AM

This plus tb software ab loudness match plugin integrated in reaper natively would be a killer feature above all daws ! But only in my dreams i think :) anyway thank for your hard work, HeDa ! This is just awesome

mpl 03-15-2016 09:06 AM

As I said before, this is very nice. Much interested how does you code looks like about blitting/real-time drawing speaking about performance. And also do you plan kind of storing view of each track to project external state.

I'm not in many things here but if I can help with something, let me know ;)

heda 03-15-2016 01:26 PM

@mpl: I'm not using any buffers. Just drawing everything to main buffer. Maybe I'll do optimizations later.. but it's fast enough for now. Thanks for your offer to help. I was doing some work today on the parameters. I have added the add last touched parameter to an array of parameters to display in the inspector. Now I need to define how to display them. I like your way to display them in your great mapping panel app. The name of the parameter and the gradient color to set the value in the same place. Maybe I can borrow the idea. But I have planned to do it as the sends and receives are. Or maybe I will do circular knobs, but I think I like more the horizontal bar. One question for you. Should I use the GetParamNormalized? or GetParam? I don't know the difference.

Another question for @all. o display some of the plugins parameters controls, I can group them all in the dedicated panel as it is now.. but maybe another way could be to display them just below their FX in the FX chain panel. So it would be just the FX chain panel for all the FX and their parameters controls. I wonder if that would be better. of course it could be an option too.

gpunk_w 03-15-2016 06:48 PM

Totally brilliant work !!!
Anyway to get it to use the theme to match up ?

musicbynumbers 03-16-2016 01:30 AM


I think the idea of having fx parameters grouped with their associated plugin is a good one.

Two things come to mind that might make it difficult. The first is that if you did this, would it make rearranging plugins via your app difficult? And two, if you did then rearrange, the assigned midi controls (for track parameters) would change order and be confusing.

By this I mean that currently, you know that controller number 3 (for example) always controls the 3rd track parameter (going downwards) but if you rearrange, it will no longer be that way.

This assumes that you can rearrange plugins (which I really hope is possible as it's a big issue that the arrange page can't yet) ;)

A simple solution here though could be that even if you reorder. The track parameters could have a unchanging number next to them to represent which track parameter number is associated with them. That would solve it I think :)

musicbynumbers 03-16-2016 01:42 AM

Also, maybe this is too much but in the pan area you could also have a horizontal phase correlation meter that shows whether a stereo signal would cancel itself in mono (left of meter), is completely mono (middle of meter) or that the left and right signals are completely different and have no correlation (far right of meter).

They are super useful, especially for media that maybe played back on mono devices like phone speakers. :)

Here's an example

syntetic 03-16-2016 01:47 AM

@Heda If you about dry/wet controls would be good to have it in fx chain panel as in sends in mcp,
it handy to use it for fast parallel compression without opening effect eg or for see what effects we dont use when we have dry/wet automation,
a large number of parameters for it can tangle:
i dont use parmeter controls in mixer but perhaps it would be useful for other users.

Sju 03-16-2016 03:25 AM


Originally Posted by heda (Post 1653444)
here is one update: Pre-fx loudness meter option and button to modify fader volume to match post fader IL to prefx IL.

Integrated loudness matching? Sweet! How do you set up the dpMeter for this script? Each channel has to have two instances running?

heda 03-16-2016 06:06 AM

@gpunk_w Sure. some theming options will be available in final version. not yet.

@syntetic I did the wet/dry knob last night. Still need to do the drag up/down to modify them, and maybe right click on them to do a soft bypass.
The appearance of the knobs will probably change but this is how it is for now (now they look like googly eyes haha)

@Sju Yes, there are two dpMeters in two hidden tracks. two sends are created for the selected track to them. one with prefx signal and one with post-fader signal.

@musicbynumbers: Yes I think I will do first the parameters in its own panel, as it is now. Then maybe when it is working, add the other option. as you explain, things can get complex. Let's finish it simple first. For the phase correlation, I add that to the list for future features.

I expect I can put a pre-release today, even knowing it still has many things to be done so you can try the basic functionality. :)

Sexan 03-16-2016 06:38 AM


Originally Posted by heda (Post 1654056)

I expect I can put a pre-release today, even knowing it still has many things to be done so you can try the basic functionality. :)

つ ◕_◕ ༽つ gif script つ ◕_◕ ༽つ

syntetic 03-16-2016 10:30 AM

@heda looks nice

mpl 03-16-2016 12:03 PM


TrackFX_GetParamNormalized return 0...1 values always
TrackFX_GetParam return 0...2 values for db-based parameters:
0 is -infdb
1 is 0db
2 is +6db

All times are GMT -7. The time now is 02:43 PM.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2018, vBulletin Solutions Inc.