- for arg in args[1..].iter() {
- player.play_file(arg, &cmd_receiver);
- if player.ended {
- break;
- }
+ let mut aiter = args[1..].iter();
+ let mut start_time = NATimePoint::None;
+ while let Some(arg) = aiter.next() {
+ match arg.as_str() {
+ "-start" => {
+ if let Some(arg) = aiter.next() {
+ if let Ok(val) = arg.parse() {
+ start_time = val;
+ } else {
+ println!("invalid time");
+ }
+ } else {
+ println!("argument is required");
+ }
+ },
+ _ => {
+ player.play_file(arg, &cmd_receiver, start_time);
+ if player.ended {
+ break;
+ }
+ start_time = NATimePoint::None;
+ },
+ };