[SCM] calf/master: + LADSPA: improve non-LRDF hints

js at users.alioth.debian.org js at users.alioth.debian.org
Tue May 7 15:38:45 UTC 2013


The following commit has been merged in the master branch:
commit 56b6a6666cd337768552856d2437730ef6b9fced
Author: Krzysztof Foltman <wdev at foltman.com>
Date:   Fri Dec 26 22:23:40 2008 +0000

    + LADSPA: improve non-LRDF hints

diff --git a/src/calf/ladspa_wrap.h b/src/calf/ladspa_wrap.h
index 337e813..3c34d91 100644
--- a/src/calf/ladspa_wrap.h
+++ b/src/calf/ladspa_wrap.h
@@ -189,11 +189,36 @@ struct ladspa_wrapper
             switch(pp.flags & PF_TYPEMASK) {
                 case PF_BOOL: 
                     prh.HintDescriptor |= LADSPA_HINT_TOGGLED;
+                    prh.HintDescriptor &= ~(LADSPA_HINT_BOUNDED_ABOVE | LADSPA_HINT_BOUNDED_BELOW);
                     break;
                 case PF_INT: 
                 case PF_ENUM: 
                     prh.HintDescriptor |= LADSPA_HINT_INTEGER;
                     break;
+                default: {
+                    int defpt = (int)(100 * (pp.def_value - pp.min) / (pp.max - pp.min));
+                    if (defpt < 12)
+                        prh.HintDescriptor |= LADSPA_HINT_DEFAULT_MINIMUM;
+                    else if (defpt < 37)
+                        prh.HintDescriptor |= LADSPA_HINT_DEFAULT_LOW;
+                    else if (defpt < 63)
+                        prh.HintDescriptor |= LADSPA_HINT_DEFAULT_MIDDLE;
+                    else if (defpt < 88)
+                        prh.HintDescriptor |= LADSPA_HINT_DEFAULT_HIGH;
+                    else
+                        prh.HintDescriptor |= LADSPA_HINT_DEFAULT_MAXIMUM;
+                }
+            }
+            if (pp.def_value == 0 || pp.def_value == 1 || pp.def_value == 100 || pp.def_value == 440 ) {
+                prh.HintDescriptor &= ~LADSPA_HINT_DEFAULT_MASK;
+                if (pp.def_value == 1)
+                    prh.HintDescriptor |= LADSPA_HINT_DEFAULT_1;
+                else if (pp.def_value == 100)
+                    prh.HintDescriptor |= LADSPA_HINT_DEFAULT_100;
+                else if (pp.def_value == 440)
+                    prh.HintDescriptor |= LADSPA_HINT_DEFAULT_440;
+                else
+                    prh.HintDescriptor |= LADSPA_HINT_DEFAULT_0;
             }
             switch(pp.flags & PF_SCALEMASK) {
                 case PF_SCALE_LOG:

-- 
calf audio plugins packaging



More information about the pkg-multimedia-commits mailing list