Commit Graph

7 Commits (8caba4decacabb9b34920d0d8a66028a5cd1876f)

Author SHA1 Message Date
fryshorts 1b034569f0 libobs: Add Logarithmic fader type
This adds the conversion function used by the old obs based on a
logarithmic scale.
2014-12-04 21:58:35 +01:00
fryshorts 119d77e176 libobs: Add IEC 60-268-18 compliant fader type
This adds a new fader type that implements a position/dB mapping
as specified in IEC 60-268-18.
2014-12-04 21:58:34 +01:00
fryshorts 46686ec556 libobs: Add volume meter object
This adds a volume meter object to libobs that can be used by the GUI
or plugins to convert the raw audio level data from sources to values
that can easily be used to display the audio data.
The volume meter object will use the same mapping functions as the
fader object to map dB levels to a scale.
2014-12-04 21:58:34 +01:00
jp9000 346bcd7e48 libobs: Fix microsoft compiler issue
In older versions of visual studio 2013 microsoft's WORTHLESS C compiler
has a bug where it will, almost at random, not be able to handle having
variables declared in the middle of a function and give the warning:
"illegal use of this type as an expression".  It was fixed in recent
VS2013 updates, but I'm not about to force everyone to update to it.
2014-11-27 11:05:36 -08:00
jp9000 8922f2503f libobs: Fix double -> float conversion warning 2014-11-27 00:07:49 -08:00
jp9000 e3e79dcdc5 libobs: Fix windows warnings with C library macro
The macro INFINITY apparently will trigger a warning with microsoft's
compiler despite being a C standard library macro.
2014-11-27 00:07:48 -08:00
fryshorts 8dcbd77bf2 libobs: Add audio control functions
This adds a new library of audio control functions mainly for the use in
GUIS. For now it includes an implementation of a software fader that can
be attached to sources in order to easily control the volume.
The fader can translate between fader-position, volume in dB and
multiplier with a configurable mapping function.
Currently only a cubic mapping (mul = fader_pos ^ 3) is included, but
different mappings can easily be added.

Due to libobs saving/restoring the source volume from the multiplier,
the volume levels for existing source will stay the same, and live
changing of the mapping will work without changing the source volume.
2014-11-26 20:07:26 +01:00