zsh: illegal hardware instruction trying the first tutorial on OSX Big Sur
Hi !
I am trying to learn gstreamer with the Rust binding. I get a strange error I do&n't explain when I try to build this:
use gstreamer::prelude::*;
use std::ops::Deref;
fn main() {
println!("début");
gstreamer::init().unwrap();
println!("init ok");
let uri =
"https://www.freedesktop.org/software/gstreamer-sdk/data/media/sintel_trailer-480p.webm";
let pipeline = gstreamer::parse_launch(&format!("playbin uri={}", uri)).unwrap();
println!("pipeline {:?}", pipeline);
pipeline.set_state(gstreamer::State::Playing);
println!("state playing");
let bus = pipeline.get_bus().unwrap();
println!("bus {:?}", bus);
println!("{:?}", bus.timed_pop_filtered(
gstreamer::CLOCK_TIME_NONE,
&[gstreamer::MessageType::Error, gstreamer::MessageType::Eos],
));
if let Some(_msg) = bus.timed_pop_filtered(
gstreamer::CLOCK_TIME_NONE,
&[gstreamer::MessageType::Error, gstreamer::MessageType::Eos],
) { println!("OK"); }
pipeline.set_state(gstreamer::State::Null);
println!("Fin");
}
I don't know where the problem come from. But with the output I guess the problem is in timed_pop_filtered
method:
% cargo run
Compiling gstreamer_test v0.1.0 (/Users/mik/Dev/Rust/gstreamer_test)
warning: unused import: `std::ops::Deref`
--> src/main.rs:2:5
|
2 | use std::ops::Deref;
| ^^^^^^^^^^^^^^^
|
= note: `#[warn(unused_imports)]` on by default
warning: unused `Result` that must be used
--> src/main.rs:12:5
|
12 | pipeline.set_state(gstreamer::State::Playing);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: `#[warn(unused_must_use)]` on by default
= note: this `Result` may be an `Err` variant, which should be handled
warning: unused `Result` that must be used
--> src/main.rs:24:5
|
24 | pipeline.set_state(gstreamer::State::Null);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: this `Result` may be an `Err` variant, which should be handled
warning: 3 warnings emitted
Finished dev [unoptimized + debuginfo] target(s) in 0.62s
Running `target/debug/gstreamer_test`
début
init ok
pipeline Element { inner: ObjectRef { inner: 0x7fba6b00ca60, type: GstPlayBin } }
state playing
bus Bus { inner: ObjectRef { inner: 0x7fba68815e80, type: GstBus } }
zsh: illegal hardware instruction cargo run
Regards