|
@@ -132,33 +132,19 @@ fn setup(args: &[String]) -> Setup {
|
|
|
let mixer_name = matches.opt_str("mixer");
|
|
|
let mixer = mixer::find(mixer_name.as_ref())
|
|
|
.expect("Invalid mixer");
|
|
|
+
|
|
|
let initial_volume;
|
|
|
- // check if initial-volume argument is present
|
|
|
- if matches.opt_present("initial-volume"){
|
|
|
- // check if value is a number
|
|
|
- if matches.opt_str("initial-volume").unwrap().parse::<i32>().is_ok(){
|
|
|
- // check if value is in [0-100] range, otherwise put the bound values
|
|
|
- if matches.opt_str("initial-volume").unwrap().parse::<i32>().unwrap() < 0 {
|
|
|
- initial_volume = 0 as i32;
|
|
|
- }
|
|
|
- else if matches.opt_str("initial-volume").unwrap().parse::<i32>().unwrap() > 100{
|
|
|
- initial_volume = 0xFFFF as i32;
|
|
|
- }
|
|
|
- // checks ok
|
|
|
- else{
|
|
|
- initial_volume = matches.opt_str("initial-volume").unwrap().parse::<i32>().unwrap()* 0xFFFF as i32 / 100 ;
|
|
|
+ if matches.opt_present("initial-volume") && matches.opt_str("initial-volume").unwrap().parse::<i32>().is_ok() {
|
|
|
+ let iv = matches.opt_str("zeroconf-port").unwrap().parse::<u16>().unwrap();
|
|
|
+ if iv => 0 && iv <= 100 {
|
|
|
+ initial_volume = iv * 0xFFFF as i32 / 100 ;
|
|
|
+ } else {
|
|
|
+ debug!("Volume needs to be a value from 0-100; set as 50%");
|
|
|
+ initial_volume = 0x8000 as i32;
|
|
|
}
|
|
|
- }
|
|
|
- // if value is not a number use default value (50%)
|
|
|
- else {
|
|
|
+ } else {
|
|
|
initial_volume = 0x8000 as i32;
|
|
|
}
|
|
|
- }
|
|
|
- // if argument not present use default values (50%)
|
|
|
- else{
|
|
|
- initial_volume = 0x8000 as i32;
|
|
|
- }
|
|
|
- debug!("Volume \"{}\" !", initial_volume);
|
|
|
|
|
|
let name = matches.opt_str("name").unwrap();
|
|
|
let use_audio_cache = !matches.opt_present("disable-audio-cache");
|