I'm trying to develop a loudness scanner in case my other efforts fail to achieve this goal. It would call on two libraries to scan blocks of samples, with a 75% window overlap iirc.
The extension provides basic functions to scan blocks of samples, and an Eel or Lua script processes the resulting data.
My big question is, can it be done, and if so, can anyone point me to some resources to explain how ? Is it realistic to do the sample processing/scanning in an extension and processing the resulting data in a Lua or Eel script ?
Or would it be even simpler to do it all in a C++ extension with my very, very basic knowledge of C++ ?
Visual Studio C++ is installed and I'm expanding my knowledge through documentation atm. I've also grabbed the basic extension example from Cfillion , which I hope will help.
Some details on the libraries.
The two libraries in question are the Dolby Dialogue Intelligence scanner available for use in any product for free here (just fill out the form and you can download right away):
https://www.dolby.com/us/en/technolo...ence-code.aspx
This is an ANSI C library.
The result from this first library would be a string of "1" or "0" across the block that acts as a gate to zero out the samples sent to the second library. That library does the actual loudness scan for the block and delivers a dB value.
This second library is LibebuR128, which I'd have to hack to exclude the relative level gate. The spec I want to hit requires an older version of the way this library measures loudness. It shouldn't be too hard to do though.
The second library is
Libebur128.
So, should I bite the bullet and do the entire thing in C++ or not ?
Here's an illustration of the processing that would go on :