X-Git-Url: http://review.tizen.org/git/?p=platform%2Fupstream%2Fpulseaudio.git;a=blobdiff_plain;f=src%2Fpulsecore%2Fmix.h;h=b1ec74f53d60b3329e29083f4d2290ca51a145ea;hp=a4cde01e72386cdf635ee726f10a8a2ab67e6fae;hb=df1c4275ed79e0b708c75b92f9d247e0492bc1f0;hpb=dbf60c1d96fae9cc1f146d9e4733021f68f3e65a diff --git a/src/pulsecore/mix.h b/src/pulsecore/mix.h index a4cde01..b1ec74f 100644 --- a/src/pulsecore/mix.h +++ b/src/pulsecore/mix.h @@ -61,4 +61,31 @@ void pa_volume_memchunk( const pa_sample_spec *spec, const pa_cvolume *volume); +typedef struct pa_volume_ramp_int_t { + pa_volume_ramp_type_t type; + long length; + long left; + float start; + float end; + float curr; + pa_volume_t target; +} pa_volume_ramp_int_t; + +typedef struct pa_cvolume_ramp_int { + uint8_t channels; + pa_volume_ramp_int_t ramps[PA_CHANNELS_MAX]; +} pa_cvolume_ramp_int; + +pa_cvolume_ramp_int* pa_cvolume_ramp_convert(const pa_cvolume_ramp *src, pa_cvolume_ramp_int *dst, int sample_rate); +bool pa_cvolume_ramp_active(pa_cvolume_ramp_int *ramp); +bool pa_cvolume_ramp_target_active(pa_cvolume_ramp_int *ramp); +pa_cvolume_ramp_int* pa_cvolume_ramp_start_from(pa_cvolume_ramp_int *src, pa_cvolume_ramp_int *dst); +pa_cvolume_ramp_int* pa_cvolume_ramp_int_init(pa_cvolume_ramp_int *src, pa_volume_t vol, int channels); +pa_cvolume * pa_cvolume_ramp_get_targets(pa_cvolume_ramp_int *ramp, pa_cvolume *volume); + +void pa_volume_ramp_memchunk( + pa_memchunk *c, + const pa_sample_spec *spec, + pa_cvolume_ramp_int *ramp); + #endif