],[TIZEN_VOLUME_RAMP=no])
AM_CONDITIONAL(TIZEN_VOLUME_RAMP, test "x$TIZEN_VOLUME_RAMP" = "xyes")
+#### INDIVIDUAL VOLUME RATIO ####
+
+AC_ARG_ENABLE(individual-volume-ratio, AC_HELP_STRING([--enable-individual-volume-ratio], [Enable individual volume ratio]),
+[
+ case "${enableval}" in
+ yes) TIZEN_INDIVIDUAL_VOLUME_RATIO=yes ;;
+ no) TIZEN_INDIVIDUAL_VOLUME_RATIO=no ;;
+ *) AC_MSG_ERROR(bad value ${enableval} for --enable-individual-volume-ratio) ;;
+ esac
+],[TIZEN_INDIVIDUAL_VOLUME_RATIO=no])
+AM_CONDITIONAL(TIZEN_INDIVIDUAL_VOLUME_RATIO, test "x$TIZEN_INDIVIDUAL_VOLUME_RATIO" = "xyes")
+
###################################
# Output #
###################################
pa simple extension: ${TIZEN_PA_SIMPLE_EXT}
empty pop protection: ${TIZEN_EMPTY_POP}
volume ramp: ${TIZEN_VOLUME_RAMP}
+ individual volume ratio: ${TIZEN_INDIVIDUAL_VOLUME_RATIO}
prelink: ${TIZEN_TV_PROD_PRELINK}
lwipc: ${TIZEN_TV_PROD_LWIPC}
"
Name: pulseaudio
Summary: Improved Linux sound server
Version: 11.1
-Release: 65
+Release: 66
Group: Multimedia/Audio
License: LGPL-2.1
URL: http://pulseaudio.org
%{?asan: --disable-neon-opt } \
--enable-filter-group \
--enable-volume-ramp \
+ --enable-individual-volume-ratio \
%if "%{tizen_profile_name}" == "tv"
--enable-prelink \
--enable-lwipc \
if TIZEN_VOLUME_RAMP
AM_CFLAGS += -DTIZEN_VOLUME_RAMP
endif
+if TIZEN_INDIVIDUAL_VOLUME_RATIO
+AM_CFLAGS += -DTIZEN_INDIVIDUAL_VOLUME_RATIO
+endif
###################################
# Extra files #
(pa_free_cb_t) volume_factor_entry_free);
data->volume_factor_sink_items = pa_hashmap_new_full(pa_idxset_string_hash_func, pa_idxset_string_compare_func, NULL,
(pa_free_cb_t) volume_factor_entry_free);
+#ifdef TIZEN_INDIVIDUAL_VOLUME_RATIO
+ data->individual_volume_ratio = 1.0;
+#endif
return data;
}
i->real_ratio = i->reference_ratio = data->volume;
pa_cvolume_reset(&i->soft_volume, i->sample_spec.channels);
pa_cvolume_reset(&i->real_ratio, i->sample_spec.channels);
+#ifdef TIZEN_INDIVIDUAL_VOLUME_RATIO
+ i->individual_volume_ratio = data->individual_volume_ratio;
+#endif
i->volume_writable = data->volume_writable;
i->save_volume = data->save_volume;
i->save_sink = data->save_sink;
pa_cvolume volume_factor_sink; /* A second volume factor in format of the sink this stream is connected to. */
pa_hashmap *volume_factor_sink_items;
#ifdef __TIZEN__
+ double individual_volume_ratio; /* The ratio of the stream's volume to the value of its volume group. */
pa_cvolume_ramp ramp_factor;
pa_hashmap *ramp_factor_items;
#endif
pa_format_info *format;
pa_idxset *req_formats;
pa_idxset *nego_formats;
-
+#ifdef __TIZEN__
+ double individual_volume_ratio;
+#endif
pa_cvolume volume;
+
bool muted:1;
pa_hashmap *volume_factor_items, *volume_factor_sink_items;
data->resample_method = PA_RESAMPLER_INVALID;
data->proplist = pa_proplist_new();
data->volume_writable = true;
+#ifdef TIZEN_INDIVIDUAL_VOLUME_RATIO
+ data->individual_volume_ratio = 1.0;
+#endif
return data;
}
o->real_ratio = o->reference_ratio = data->volume;
pa_cvolume_reset(&o->soft_volume, o->sample_spec.channels);
pa_cvolume_reset(&o->real_ratio, o->sample_spec.channels);
+#ifdef TIZEN_INDIVIDUAL_VOLUME_RATIO
+ o->individual_volume_ratio = data->individual_volume_ratio;
+#endif
o->volume_writable = data->volume_writable;
o->save_volume = data->save_volume;
o->save_source = data->save_source;
pa_cvolume volume_factor_source; /* A second volume factor in format of the source this stream is connected to */
+#ifdef __TIZEN__
+ double individual_volume_ratio; /* The ratio of the stream's volume to the value of its volume group. */
+#endif
bool volume_writable:1;
bool muted:1;
pa_idxset *nego_formats;
pa_cvolume volume, volume_factor, volume_factor_source;
+#ifdef __TIZEN__
+ double individual_volume_ratio;
+#endif
bool muted:1;
bool sample_spec_is_set:1;