Update for changed GLib signals API

This commit is contained in:
Sebastian Dröge 2021-02-22 17:17:46 +02:00
parent 7c61fd9e7a
commit 0616c18703
11 changed files with 68 additions and 56 deletions

View file

@ -584,8 +584,8 @@ impl ObjectImpl for AppSrc {
vec![
glib::subclass::Signal::builder(
"push-buffer",
&[gst::Buffer::static_type()],
bool::static_type(),
&[gst::Buffer::static_type().into()],
bool::static_type().into(),
)
.action()
.class_handler(|_, args| {
@ -602,7 +602,7 @@ impl ObjectImpl for AppSrc {
Some(appsrc.push_buffer(&element, buffer).to_value())
})
.build(),
glib::subclass::Signal::builder("end-of-stream", &[], bool::static_type())
glib::subclass::Signal::builder("end-of-stream", &[], bool::static_type().into())
.action()
.class_handler(|_, args| {
let element = args[0]

View file

@ -374,7 +374,7 @@ impl SinkHandler {
if state.clock_rate.is_none() {
drop(state);
let caps = element
.emit("request-pt-map", &[&(pt as u32)])
.emit_by_name("request-pt-map", &[&(pt as u32)])
.map_err(|_| gst::FlowError::Error)?
.ok_or(gst::FlowError::Error)?
.get::<gst::Caps>()
@ -1436,20 +1436,22 @@ impl ObjectImpl for JitterBuffer {
fn signals() -> &'static [glib::subclass::Signal] {
static SIGNALS: Lazy<Vec<glib::subclass::Signal>> = Lazy::new(|| {
vec![
glib::subclass::Signal::builder("clear-pt-map", &[], glib::types::Type::Unit)
.action()
.class_handler(|_, args| {
let element = args[0]
.get::<super::JitterBuffer>()
.expect("signal arg")
.expect("missing signal arg");
let jb = JitterBuffer::from_instance(&element);
jb.clear_pt_map(&element);
None
})
.build(),
]
vec![glib::subclass::Signal::builder(
"clear-pt-map",
&[],
glib::types::Type::Unit.into(),
)
.action()
.class_handler(|_, args| {
let element = args[0]
.get::<super::JitterBuffer>()
.expect("signal arg")
.expect("missing signal arg");
let jb = JitterBuffer::from_instance(&element);
jb.clear_pt_map(&element);
None
})
.build()]
});
SIGNALS.as_ref()

View file

@ -1116,8 +1116,8 @@ impl ObjectImpl for UdpSink {
vec![
glib::subclass::Signal::builder(
"add",
&[String::static_type(), i32::static_type()],
glib::types::Type::Unit,
&[String::static_type().into(), i32::static_type().into()],
glib::types::Type::Unit.into(),
)
.action()
.class_handler(|_, args| {
@ -1144,8 +1144,8 @@ impl ObjectImpl for UdpSink {
.build(),
glib::subclass::Signal::builder(
"remove",
&[String::static_type(), i32::static_type()],
glib::types::Type::Unit,
&[String::static_type().into(), i32::static_type().into()],
glib::types::Type::Unit.into(),
)
.action()
.class_handler(|_, args| {
@ -1170,7 +1170,7 @@ impl ObjectImpl for UdpSink {
None
})
.build(),
glib::subclass::Signal::builder("clear", &[], glib::types::Type::Unit)
glib::subclass::Signal::builder("clear", &[], glib::types::Type::Unit.into())
.action()
.class_handler(|_, args| {
let element = args[0]

View file

@ -48,7 +48,7 @@ fn push() {
let appsrc = h.get_element().unwrap();
for _ in 0..3 {
assert!(appsrc
.emit("push-buffer", &[&gst::Buffer::new()])
.emit_by_name("push-buffer", &[&gst::Buffer::new()])
.unwrap()
.unwrap()
.get_some::<bool>()
@ -56,7 +56,7 @@ fn push() {
}
assert!(appsrc
.emit("end-of-stream", &[])
.emit_by_name("end-of-stream", &[])
.unwrap()
.unwrap()
.get_some::<bool>()
@ -114,7 +114,7 @@ fn pause_regular() {
// Initial buffer
assert!(appsrc
.emit("push-buffer", &[&gst::Buffer::from_slice(vec![1, 2, 3, 4])])
.emit_by_name("push-buffer", &[&gst::Buffer::from_slice(vec![1, 2, 3, 4])])
.unwrap()
.unwrap()
.get_some::<bool>()
@ -124,7 +124,7 @@ fn pause_regular() {
// Pre-pause buffer
assert!(appsrc
.emit("push-buffer", &[&gst::Buffer::from_slice(vec![5, 6, 7])])
.emit_by_name("push-buffer", &[&gst::Buffer::from_slice(vec![5, 6, 7])])
.unwrap()
.unwrap()
.get_some::<bool>()
@ -136,7 +136,7 @@ fn pause_regular() {
// Buffer is queued during Paused
assert!(appsrc
.emit("push-buffer", &[&gst::Buffer::from_slice(vec![8, 9])])
.emit_by_name("push-buffer", &[&gst::Buffer::from_slice(vec![8, 9])])
.unwrap()
.unwrap()
.get_some::<bool>()
@ -154,7 +154,7 @@ fn pause_regular() {
// Can push again
assert!(appsrc
.emit("push-buffer", &[&gst::Buffer::new()])
.emit_by_name("push-buffer", &[&gst::Buffer::new()])
.unwrap()
.unwrap()
.get_some::<bool>()
@ -184,7 +184,7 @@ fn flush_regular() {
// Initial buffer
assert!(appsrc
.emit("push-buffer", &[&gst::Buffer::from_slice(vec![1, 2, 3, 4])])
.emit_by_name("push-buffer", &[&gst::Buffer::from_slice(vec![1, 2, 3, 4])])
.unwrap()
.unwrap()
.get_some::<bool>()
@ -197,7 +197,7 @@ fn flush_regular() {
// Can't push buffer while flushing
assert!(!appsrc
.emit("push-buffer", &[&gst::Buffer::new()])
.emit_by_name("push-buffer", &[&gst::Buffer::new()])
.unwrap()
.unwrap()
.get_some::<bool>()
@ -213,7 +213,7 @@ fn flush_regular() {
// Can push again
assert!(appsrc
.emit("push-buffer", &[&gst::Buffer::new()])
.emit_by_name("push-buffer", &[&gst::Buffer::new()])
.unwrap()
.unwrap()
.get_some::<bool>()
@ -245,7 +245,7 @@ fn pause_flush() {
// Initial buffer
assert!(appsrc
.emit("push-buffer", &[&gst::Buffer::from_slice(vec![1, 2, 3, 4])])
.emit_by_name("push-buffer", &[&gst::Buffer::from_slice(vec![1, 2, 3, 4])])
.unwrap()
.unwrap()
.get_some::<bool>()
@ -262,7 +262,7 @@ fn pause_flush() {
// Can't push buffers while flushing
assert!(!appsrc
.emit("push-buffer", &[&gst::Buffer::new()])
.emit_by_name("push-buffer", &[&gst::Buffer::new()])
.unwrap()
.unwrap()
.get_some::<bool>()
@ -282,7 +282,7 @@ fn pause_flush() {
// Can push again
assert!(appsrc
.emit("push-buffer", &[&gst::Buffer::new()])
.emit_by_name("push-buffer", &[&gst::Buffer::new()])
.unwrap()
.unwrap()
.get_some::<bool>()

View file

@ -79,7 +79,7 @@ fn jb_pipeline() {
let (sender, receiver) = mpsc::channel();
appsink.connect_new_sample(move |appsink| {
let _sample = appsink
.emit("pull-sample", &[])
.emit_by_name("pull-sample", &[])
.unwrap()
.unwrap()
.get::<gst::Sample>()
@ -146,7 +146,7 @@ fn jb_ts_pipeline() {
let (sender, receiver) = mpsc::channel();
appsink.connect_new_sample(move |appsink| {
let _sample = appsink
.emit("pull-sample", &[])
.emit_by_name("pull-sample", &[])
.unwrap()
.unwrap()
.get::<gst::Sample>()

View file

@ -88,7 +88,7 @@ fn multiple_contexts_queue() {
let sender_clone = sender.clone();
appsink.connect_new_sample(move |appsink| {
let _sample = appsink
.emit("pull-sample", &[])
.emit_by_name("pull-sample", &[])
.unwrap()
.unwrap()
.get::<gst::Sample>()
@ -247,7 +247,7 @@ fn multiple_contexts_proxy() {
let sender_clone = sender.clone();
appsink.connect_new_sample(move |appsink| {
let _sample = appsink
.emit("pull-sample", &[])
.emit_by_name("pull-sample", &[])
.unwrap()
.unwrap()
.get::<gst::Sample>()
@ -366,7 +366,7 @@ fn eos() {
appsink.connect_new_sample(move |appsink| {
gst_debug!(CAT, obj: appsink, "eos: pulling sample");
let _ = appsink
.emit("pull-sample", &[])
.emit_by_name("pull-sample", &[])
.unwrap()
.unwrap()
.get::<gst::Sample>()
@ -382,7 +382,7 @@ fn eos() {
fn push_buffer(src: &gst::Element) -> bool {
gst_debug!(CAT, obj: src, "eos: pushing buffer");
src.emit("push-buffer", &[&gst::Buffer::from_slice(vec![0; 1024])])
src.emit_by_name("push-buffer", &[&gst::Buffer::from_slice(vec![0; 1024])])
.unwrap()
.unwrap()
.get_some::<bool>()
@ -398,7 +398,7 @@ fn eos() {
sample_notif_rcv.recv().unwrap();
assert!(src
.emit("end-of-stream", &[])
.emit_by_name("end-of-stream", &[])
.unwrap()
.unwrap()
.get_some::<bool>()
@ -510,7 +510,7 @@ fn premature_shutdown() {
appsink.connect_new_sample(move |appsink| {
gst_debug!(CAT, obj: appsink, "premature_shutdown: pulling sample");
let _sample = appsink
.emit("pull-sample", &[])
.emit_by_name("pull-sample", &[])
.unwrap()
.unwrap()
.get::<gst::Sample>()
@ -529,7 +529,7 @@ fn premature_shutdown() {
"premature_shutdown: pushing buffer {}",
intent
);
src.emit("push-buffer", &[&gst::Buffer::from_slice(vec![0; 1024])])
src.emit_by_name("push-buffer", &[&gst::Buffer::from_slice(vec![0; 1024])])
.unwrap()
.unwrap()
.get_some::<bool>()

View file

@ -58,7 +58,7 @@ fn test_push() {
let samples_clone = samples.clone();
appsink.connect_new_sample(move |appsink| {
let sample = appsink
.emit("pull-sample", &[])
.emit_by_name("pull-sample", &[])
.unwrap()
.unwrap()
.get::<gst::Sample>()

View file

@ -53,7 +53,7 @@ fn test_push() {
let samples_clone = samples.clone();
appsink.connect_new_sample(move |appsink| {
let sample = appsink
.emit("pull-sample", &[])
.emit_by_name("pull-sample", &[])
.unwrap()
.unwrap()
.get::<gst::Sample>()

View file

@ -75,7 +75,7 @@ fn test_push() {
let samples_clone = samples.clone();
appsink.connect_new_sample(move |appsink| {
let sample = appsink
.emit("pull-sample", &[])
.emit_by_name("pull-sample", &[])
.unwrap()
.unwrap()
.get::<gst::Sample>()

View file

@ -45,7 +45,9 @@ fn test_client_management() {
assert_eq!(clients, "127.0.0.1:5004");
udpsink.emit("add", &[&"192.168.1.1", &57i32]).unwrap();
udpsink
.emit_by_name("add", &[&"192.168.1.1", &57i32])
.unwrap();
let clients = udpsink
.get_property("clients")
.unwrap()
@ -55,7 +57,9 @@ fn test_client_management() {
assert_eq!(clients, "127.0.0.1:5004,192.168.1.1:57");
/* Adding a client twice is not supported */
udpsink.emit("add", &[&"192.168.1.1", &57i32]).unwrap();
udpsink
.emit_by_name("add", &[&"192.168.1.1", &57i32])
.unwrap();
let clients = udpsink
.get_property("clients")
.unwrap()
@ -64,7 +68,9 @@ fn test_client_management() {
.unwrap();
assert_eq!(clients, "127.0.0.1:5004,192.168.1.1:57");
udpsink.emit("remove", &[&"192.168.1.1", &57i32]).unwrap();
udpsink
.emit_by_name("remove", &[&"192.168.1.1", &57i32])
.unwrap();
let clients = udpsink
.get_property("clients")
.unwrap()
@ -74,7 +80,9 @@ fn test_client_management() {
assert_eq!(clients, "127.0.0.1:5004");
/* Removing a non-existing client should not be a problem */
udpsink.emit("remove", &[&"192.168.1.1", &57i32]).unwrap();
udpsink
.emit_by_name("remove", &[&"192.168.1.1", &57i32])
.unwrap();
let clients = udpsink
.get_property("clients")
.unwrap()
@ -84,7 +92,9 @@ fn test_client_management() {
assert_eq!(clients, "127.0.0.1:5004");
/* Removing the default client is possible */
udpsink.emit("remove", &[&"127.0.0.1", &5004i32]).unwrap();
udpsink
.emit_by_name("remove", &[&"127.0.0.1", &5004i32])
.unwrap();
let clients = udpsink
.get_property("clients")
.unwrap()
@ -105,7 +115,7 @@ fn test_client_management() {
.unwrap();
assert_eq!(clients, "127.0.0.1:5004,192.168.1.1:57");
udpsink.emit("clear", &[]).unwrap();
udpsink.emit_by_name("clear", &[]).unwrap();
let clients = udpsink
.get_property("clients")
.unwrap()

View file

@ -557,8 +557,8 @@ impl ObjectImpl for FallbackSrc {
static SIGNALS: Lazy<Vec<glib::subclass::Signal>> = Lazy::new(|| {
vec![glib::subclass::Signal::builder(
"update-uri",
&[String::static_type()],
String::static_type(),
&[String::static_type().into()],
String::static_type().into(),
)
.action()
.class_handler(|_token, args| {
@ -696,7 +696,7 @@ impl FallbackSrc {
.expect("No uridecodebin3 found");
let uri = element
.emit("update-uri", &[uri])
.emit_by_name("update-uri", &[uri])
.expect("Failed to emit update-uri signal")
.expect("No value returned");
let uri = uri