forked from mirrors/gecko-dev
This is as close to usptream as currently possibly. Only a few changes were done to the dependencies: the wasm target was removed and the coremidi dependency was updated to pick up a more recent version so that we don't need to vendor separate versions of the core-foundation and core-foundation-sys crates. This vendors the following crates: * alsa-sys * alsa * coremidi * coremidi-sys * memalloc * midir Overall this adds ~30K lines of code, over half of which is in the alsa bindings alone. Differential Revision: https://phabricator.services.mozilla.com/D124640
24 lines
657 B
Rust
24 lines
657 B
Rust
extern crate coremidi;
|
|
|
|
fn main() {
|
|
println!("System destinations:");
|
|
|
|
for (i, destination) in coremidi::Destinations.into_iter().enumerate() {
|
|
let display_name = get_display_name(&destination);
|
|
println!("[{}] {}", i, display_name);
|
|
}
|
|
|
|
println!();
|
|
println!("System sources:");
|
|
|
|
for (i, source) in coremidi::Sources.into_iter().enumerate() {
|
|
let display_name = get_display_name(&source);
|
|
println!("[{}] {}", i, display_name);
|
|
}
|
|
}
|
|
|
|
fn get_display_name(endpoint: &coremidi::Endpoint) -> String {
|
|
endpoint
|
|
.display_name()
|
|
.unwrap_or_else(|| "[Unknown Display Name]".to_string())
|
|
}
|