From: Jaska Uimonen <jaska.uimonen@xxxxxxxxxxx> This is my 5 cents to the volume ramping ideas/discussion that has been going on in various forums. I just wanted to publish it for comments etc. Maybe someone can even use it... I decided to do add another software volume to sink and sink-input which is independent of the other volumes. I know that's not nice but it was really hard for me to try adding the ramping to the existing volume functionality. It would be nice if the ramping would in the end change the actual volume, but I also see some drawbacks with that. This kind of ramping is good for "transient" type ramps. I mean it is good for ramping up and down your stream or temporarily lowering and raising the volume of your stream. It is not that good for permanently changing your volume. Not because it would take more resources, but because of it is "hidden" sw volume. Jaska Uimonen (4): volume ramp: additions to the low level infra volume ramp: adding volume ramping to sink-input volume ramp: add volume ramping to sink volume ramp: add client api support for volume ramping src/map-file | 3 + src/pulse/def.h | 22 ++++- src/pulse/introspect.c | 83 ++++++++++++++++ src/pulse/introspect.h | 9 ++ src/pulse/stream.c | 5 +- src/pulsecore/native-common.h | 3 + src/pulsecore/pdispatch.c | 2 + src/pulsecore/protocol-native.c | 88 +++++++++++++++++- src/pulsecore/sample-util.c | 201 +++++++++++++++++++++++++++++++++++++++ src/pulsecore/sample-util.h | 17 ++++ src/pulsecore/sink-input.c | 87 +++++++++++++++++ src/pulsecore/sink-input.h | 11 ++- src/pulsecore/sink.c | 109 +++++++++++++++++++-- src/pulsecore/sink.h | 8 ++ 14 files changed, 634 insertions(+), 14 deletions(-) -- 1.7.7.6