HISE Logo Forum
    • Categories
    • Register
    • Login

    Dynamics Comp Makeup values

    Scheduled Pinned Locked Moved C++ Development
    26 Posts 3 Posters 7.3k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • SteveRiggsS
      SteveRiggs @Dan Korneff
      last edited by SteveRiggs

      This post is deleted!
      1 Reply Last reply Reply Quote 0
      • SteveRiggsS
        SteveRiggs @Dan Korneff
        last edited by SteveRiggs

        @dustbro Ah, I see it. Thanks.

        It looks to be laid out slightly different to the comp one.

        Do these 3 lines need adding into the limiters 'if' section?

        (I'm thinking there might be a duplicate declaration problem if it's done this way?)

        auto attenuation = limiter.getThresh();
        auto ratio = limiter.getRatio();
        auto gainDb = log2((1.0 - ratio) * attenuation * -1.0 + 0.1) + log2(attenuation * -1.0);
        
        1 Reply Last reply Reply Quote 0
        • SteveRiggsS
          SteveRiggs @Dan Korneff
          last edited by SteveRiggs

          @dustbro Hey man. I just got around to trying changing the comp line in the .cpp for the makeup gain but it seems to still make it get really loud when the threshold is pulled down. Is that what it's supposed to do?

          I'm trying to find a way so that the level stays as even as possible when changing the threshold with no huge jumps or drops in volume. Is there a way to do that using the same method?

          Dan KorneffD 1 Reply Last reply Reply Quote 0
          • Dan KorneffD
            Dan Korneff @SteveRiggs
            last edited by

            @SteveRiggs Technically speaking, keeping the level even would just be another compressor. All of the makeup gain math I've seen is a formula of the threshold and ratio settings. If your input signal is really low, you'll have to crank down the threshold to start compressing, but doing so will increase the makup gain level. You can tinker with the formula to find something that works for your situation.

            And just to be sure, once you changed this line, you recompiled HISE and used the new version, right?
            Changing the code alone in Dynamics.cpp will not work.

            Dan Korneff - Producer / Mixer / Audio Nerd

            SteveRiggsS 1 Reply Last reply Reply Quote 0
            • SteveRiggsS
              SteveRiggs @Dan Korneff
              last edited by

              @dustbro said in Dynamics Comp Makeup values:

              And just to be sure, once you changed this line, you recompiled HISE and used the new version, right?

              Ahhh, that I didn't do 🤣 My bad! I will try it. Thanks.

              @dustbro said in Dynamics Comp Makeup values:

              keeping the level even would just be another compressor

              I was thinking if maybe that was an easier option. Hopefully, it wouldn't add any noticeable latency if running a few dynamics modules. I'll experiment with a few things. Thanks man

              1 Reply Last reply Reply Quote 0
              • Dan KorneffD
                Dan Korneff
                last edited by

                Did a little more tinkering

                if (compressorMakeup)
                		{
                			if (compressor.getThresh() >= 0.1f)
                			{
                				auto attenuation = compressor.getThresh();
                				auto ratio = compressor.getRatio();
                				auto gainDb = log2f(-attenuation / ratio);
                				compressorMakeupGain = (float)Decibels::decibelsToGain(gainDb);
                			}
                			else
                			{
                				compressorMakeupGain = 1.0f;
                			}
                		}
                		else
                			compressorMakeupGain = 1.0f;
                

                Dan Korneff - Producer / Mixer / Audio Nerd

                SteveRiggsS 1 Reply Last reply Reply Quote 1
                • SteveRiggsS
                  SteveRiggs @Dan Korneff
                  last edited by

                  @dustbro Cool! Hows it sounding?

                  Dan KorneffD 1 Reply Last reply Reply Quote 0
                  • Dan KorneffD
                    Dan Korneff @SteveRiggs
                    last edited by

                    @SteveRiggs My favorite so far. Nice and even output.

                    Dan Korneff - Producer / Mixer / Audio Nerd

                    SteveRiggsS NatanN 2 Replies Last reply Reply Quote 1
                    • SteveRiggsS
                      SteveRiggs @Dan Korneff
                      last edited by

                      @dustbro Skills mate! I'll recompile and try it this eve.

                      I had a go at doing it for the limiter as well but the code is laid out slightly differently for the limiter section so I'm not sure how it would work for that part. Any ideas?

                      Dan KorneffD 1 Reply Last reply Reply Quote 0
                      • NatanN
                        Natan @Dan Korneff
                        last edited by

                        @dustbro Sir, Could You Please Upload The Dynamics.cpp File! So We Can Swap Them!!!🙏

                        Because I'm All New To This And Don't Want To Mess Up The Codes
                        Thanks

                        SteveRiggsS 1 Reply Last reply Reply Quote 0
                        • SteveRiggsS
                          SteveRiggs @Natan
                          last edited by

                          @Natanr

                          Here you go 👍

                          Dynamics.cpp.zip

                          I haven't compiled it and tested it yet so make a copy of the original Dynamics.cpp file and put it to one side before you change it in the source code, just in case.

                          NatanN 1 Reply Last reply Reply Quote 1
                          • Dan KorneffD
                            Dan Korneff @SteveRiggs
                            last edited by

                            @SteveRiggs I'm gonna look at the limiter code next

                            Dan Korneff - Producer / Mixer / Audio Nerd

                            SteveRiggsS 1 Reply Last reply Reply Quote 2
                            • SteveRiggsS
                              SteveRiggs @Dan Korneff
                              last edited by

                              @dustbro Awesome :)

                              1 Reply Last reply Reply Quote 0
                              • NatanN
                                Natan @SteveRiggs
                                last edited by

                                @SteveRiggs Thanks Steve, I Really Appreciate You Man

                                SteveRiggsS 1 Reply Last reply Reply Quote 1
                                • SteveRiggsS
                                  SteveRiggs @Natan
                                  last edited by

                                  @Natanr No worries mate :clinking_beer_mugs:

                                  1 Reply Last reply Reply Quote 1
                                  • Dan KorneffD
                                    Dan Korneff
                                    last edited by

                                    and my final resting place:

                                    if (compressorMakeup)
                                    		{
                                    			auto attenuation = compressor.getThresh();
                                    			auto ratio = compressor.getRatio();
                                    			auto gainDb = (1.0 - ratio) * (attenuation * -1.0) * 0.7;
                                    
                                    			compressorMakeupGain = (float)Decibels::decibelsToGain(gainDb);
                                    		}
                                    		else
                                    			compressorMakeupGain = 1.0f;
                                    

                                    Dan Korneff - Producer / Mixer / Audio Nerd

                                    SteveRiggsS 1 Reply Last reply Reply Quote 1
                                    • SteveRiggsS
                                      SteveRiggs @Dan Korneff
                                      last edited by

                                      @dustbro Nice! Even smoother now?

                                      Dan KorneffD 1 Reply Last reply Reply Quote 0
                                      • Dan KorneffD
                                        Dan Korneff @SteveRiggs
                                        last edited by

                                        @SteveRiggs for now..... 😂 😂

                                        Dan Korneff - Producer / Mixer / Audio Nerd

                                        SteveRiggsS 1 Reply Last reply Reply Quote 1
                                        • SteveRiggsS
                                          SteveRiggs @Dan Korneff
                                          last edited by

                                          @dustbro 🤣

                                          Dan KorneffD 2 Replies Last reply Reply Quote 0
                                          • Dan KorneffD
                                            Dan Korneff @SteveRiggs
                                            last edited by Dan Korneff

                                            @SteveRiggs

                                            * 0.7;  
                                            

                                            changed to

                                            *0.2;
                                            

                                            Dan Korneff - Producer / Mixer / Audio Nerd

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            67

                                            Online

                                            1.7k

                                            Users

                                            11.8k

                                            Topics

                                            103.0k

                                            Posts