mirror of
https://github.com/librespot-org/librespot.git
synced 2024-11-08 16:45:43 +00:00
Merge pull request #139 from michaelherger/rustify
Rustify some recent changes according to plietar
This commit is contained in:
commit
2617a9cfe2
3 changed files with 17 additions and 24 deletions
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -2,3 +2,5 @@ target
|
||||||
.cargo
|
.cargo
|
||||||
spotify_appkey.key
|
spotify_appkey.key
|
||||||
.vagrant/
|
.vagrant/
|
||||||
|
.project
|
||||||
|
.history
|
|
@ -215,7 +215,7 @@ pub fn discovery(handle: &Handle, config: ConnectConfig, device_id: String, port
|
||||||
let serve = {
|
let serve = {
|
||||||
let http = Http::new();
|
let http = Http::new();
|
||||||
debug!("Zeroconf server listening on 0.0.0.0:{}", port);
|
debug!("Zeroconf server listening on 0.0.0.0:{}", port);
|
||||||
http.serve_addr_handle(&format!("0.0.0.0:{}", port).parse().unwrap(), &handle, move || Ok(discovery.clone())).unwrap()
|
http.serve_addr_handle(&format!("0.0.0.0:{}", port).parse().unwrap(), &handle, move || Ok(discovery.clone())).expect("Unable to bind Zeroconf to port")
|
||||||
};
|
};
|
||||||
|
|
||||||
let s_port = serve.incoming_ref().local_addr().port();
|
let s_port = serve.incoming_ref().local_addr().port();
|
||||||
|
|
37
src/main.rs
37
src/main.rs
|
@ -101,7 +101,7 @@ fn setup(args: &[String]) -> Setup {
|
||||||
.optopt("", "device", "Audio device to use. Use '?' to list options", "DEVICE")
|
.optopt("", "device", "Audio device to use. Use '?' to list options", "DEVICE")
|
||||||
.optopt("", "mixer", "Mixer to use", "MIXER")
|
.optopt("", "mixer", "Mixer to use", "MIXER")
|
||||||
.optopt("", "initial-volume", "Initial volume in %, once connected (must be from 0 to 100)", "VOLUME")
|
.optopt("", "initial-volume", "Initial volume in %, once connected (must be from 0 to 100)", "VOLUME")
|
||||||
.optopt("z", "zeroconf-port", "The port the internal server advertised over zeroconf uses.", "ZEROCONF_PORT");
|
.optopt("", "zeroconf-port", "The port the internal server advertised over zeroconf uses.", "ZEROCONF_PORT");
|
||||||
|
|
||||||
let matches = match opts.parse(&args[1..]) {
|
let matches = match opts.parse(&args[1..]) {
|
||||||
Ok(m) => m,
|
Ok(m) => m,
|
||||||
|
@ -135,30 +135,21 @@ fn setup(args: &[String]) -> Setup {
|
||||||
let mixer = mixer::find(mixer_name.as_ref())
|
let mixer = mixer::find(mixer_name.as_ref())
|
||||||
.expect("Invalid mixer");
|
.expect("Invalid mixer");
|
||||||
|
|
||||||
let initial_volume: i32;
|
let initial_volume = matches
|
||||||
if matches.opt_present("initial-volume") && matches.opt_str("initial-volume").unwrap().parse::<i32>().is_ok() {
|
.opt_str("initial-volume")
|
||||||
let iv = matches.opt_str("initial-volume").unwrap().parse::<i32>().unwrap();
|
.map(|volume| {
|
||||||
match iv {
|
let volume = volume.parse::<i32>().unwrap();
|
||||||
iv if iv >= 0 && iv <= 100 => { initial_volume = iv * 0xFFFF / 100 }
|
if volume < 0 || volume > 100 {
|
||||||
_ => {
|
panic!("Initial volume must be in the range 0-100");
|
||||||
debug!("Volume needs to be a value from 0-100; set volume level to 50%");
|
|
||||||
initial_volume = 0x8000;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
initial_volume = 0x8000;
|
|
||||||
}
|
}
|
||||||
|
volume * 0xFFFF / 100
|
||||||
|
})
|
||||||
|
.unwrap_or(0x8000);
|
||||||
|
|
||||||
let zeroconf_port: u16;
|
let zeroconf_port =
|
||||||
if matches.opt_present("zeroconf-port") && matches.opt_str("zeroconf-port").unwrap().parse::<u16>().is_ok() {
|
matches.opt_str("zeroconf-port")
|
||||||
let z = matches.opt_str("zeroconf-port").unwrap().parse::<u16>().unwrap();
|
.map(|port| port.parse::<u16>().unwrap())
|
||||||
match z {
|
.unwrap_or(0);
|
||||||
z if z >= 1024 => { zeroconf_port = z }
|
|
||||||
_ => { zeroconf_port = 0 }
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
zeroconf_port = 0
|
|
||||||
}
|
|
||||||
|
|
||||||
let name = matches.opt_str("name").unwrap();
|
let name = matches.opt_str("name").unwrap();
|
||||||
let use_audio_cache = !matches.opt_present("disable-audio-cache");
|
let use_audio_cache = !matches.opt_present("disable-audio-cache");
|
||||||
|
|
Loading…
Reference in a new issue