Ticket #654: 0001-volume-add-pa_cvolume_inc_lim-function.patch

File 0001-volume-add-pa_cvolume_inc_lim-function.patch, 2.6 KB (added by matrix47, 3 years ago)
  • src/map-file

    From 9bedeaa8fc86cb37a85cc7182a45ad01b2852599 Mon Sep 17 00:00:00 2001
    From: Vladimir Kokarev <matrix47@gmail.com>
    Date: Sat, 19 Sep 2009 19:43:24 +0400
    Subject: [PATCH 1/2] volume: add pa_cvolume_inc_lim function
    
    added function to increase volume not exceeding specified limit
    simply changed PA_VOLUME_MAX to 'limit' in pa_cvolume_inc
    pa_cvolume_inc now calls pa_cvolume_inc_lim with PA_VOLUME_MAX limit
    
    Signed-off-by: Vladimir Kokarev <matrix47@gmail.com>
    ---
     src/map-file       |    1 +
     src/pulse/volume.c |   10 +++++++---
     src/pulse/volume.h |    4 ++++
     3 files changed, 12 insertions(+), 3 deletions(-)
    
    diff --git a/src/map-file b/src/map-file
    index 95b2803..646a77c 100644
    a b  
    129129pa_cvolume_get_fade; 
    130130pa_cvolume_get_position; 
    131131pa_cvolume_inc; 
     132pa_cvolume_inc_lim; 
    132133pa_cvolume_init; 
    133134pa_cvolume_max; 
    134135pa_cvolume_max_mask; 
  • src/pulse/volume.c

    diff --git a/src/pulse/volume.c b/src/pulse/volume.c
    index 2d2bba2..7997960 100644
    a b  
    885885    return dest; 
    886886} 
    887887 
    888 pa_cvolume* pa_cvolume_inc(pa_cvolume *v, pa_volume_t inc) { 
     888pa_cvolume* pa_cvolume_inc_lim(pa_cvolume *v, pa_volume_t inc, pa_volume_t limit) { 
    889889    pa_volume_t m; 
    890890 
    891891    pa_assert(v); 
     
    895895 
    896896    m = pa_cvolume_max(v); 
    897897 
    898     if (m >= PA_VOLUME_MAX - inc) 
    899         m = PA_VOLUME_MAX; 
     898    if (m >= limit - inc) 
     899        m = limit; 
    900900    else 
    901901        m += inc; 
    902902 
    903903    return pa_cvolume_scale(v, m); 
    904904} 
    905905 
     906pa_cvolume* pa_cvolume_inc(pa_cvolume *v, pa_volume_t inc){ 
     907    return pa_cvolume_inc_lim(v, inc, PA_VOLUME_MAX); 
     908} 
     909 
    906910pa_cvolume* pa_cvolume_dec(pa_cvolume *v, pa_volume_t dec) { 
    907911    pa_volume_t m; 
    908912 
  • src/pulse/volume.h

    diff --git a/src/pulse/volume.h b/src/pulse/volume.h
    index c964020..5680444 100644
    a b  
    348348 * and dest may point to the same structure. \since 0.9.16 */ 
    349349pa_cvolume* pa_cvolume_merge(pa_cvolume *dest, const pa_cvolume *a, const pa_cvolume *b); 
    350350 
     351/** Increase the volume passed in by 'inc', but not exceeding 'limit'. 
     352 * The proportions between the channels are kept. \since 0.9.19 */ 
     353pa_cvolume* pa_cvolume_inc_lim(pa_cvolume *v, pa_volume_t inc, pa_volume_t limit); 
     354 
    351355/** Increase the volume passed in by 'inc'. The proportions between 
    352356 * the channels are kept. \since 0.9.16 */ 
    353357pa_cvolume* pa_cvolume_inc(pa_cvolume *v, pa_volume_t inc);