diff --git a/Cargo.toml b/Cargo.toml index 16732313..5d4d99c1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -10,10 +10,10 @@ edition = "2018" [dependencies] glib = "0.10" gobject-sys = "0.10" -gstreamer = { version = "0.16", features = ["v1_12"] } -gstreamer-base = "0.16" -gstreamer-audio = "0.16" -gstreamer-video = { version = "0.16", features = ["v1_12"] } +gst = { package = "gstreamer", version = "0.16", features = ["v1_12"] } +gst-base = { package = "gstreamer-base", version = "0.16" } +gst-audio = { package = "gstreamer-audio", version = "0.16" } +gst-video = { package = "gstreamer-video", version = "0.16", features = ["v1_12"] } byte-slice-cast = "1" once_cell = "1.0" @@ -22,8 +22,8 @@ gst-plugin-version-helper = "0.2" [features] default = ["interlaced-fields", "reference-timestamps"] -interlaced-fields = ["gstreamer/v1_16", "gstreamer-video/v1_16"] -reference-timestamps = ["gstreamer/v1_14"] +interlaced-fields = ["gst/v1_16", "gst-video/v1_16"] +reference-timestamps = ["gst/v1_14"] [lib] name = "gstndi" diff --git a/src/device_provider.rs b/src/device_provider.rs index 3059e10d..29a3dbd9 100644 --- a/src/device_provider.rs +++ b/src/device_provider.rs @@ -3,6 +3,7 @@ use glib::subclass; use gst; use gst::prelude::*; use gst::subclass::prelude::*; +use gst::{gst_error, gst_log, gst_trace}; use once_cell::sync::OnceCell; @@ -27,7 +28,7 @@ impl ObjectSubclass for DeviceProvider { type Instance = subclass::simple::InstanceStruct; type Class = subclass::simple::ClassStruct; - glib_object_subclass!(); + glib::glib_object_subclass!(); fn new() -> Self { Self { @@ -54,7 +55,7 @@ impl ObjectSubclass for DeviceProvider { } impl ObjectImpl for DeviceProvider { - glib_object_impl!(); + glib::glib_object_impl!(); } impl DeviceProviderImpl for DeviceProvider { @@ -213,7 +214,7 @@ impl ObjectSubclass for Device { type Instance = subclass::simple::InstanceStruct; type Class = subclass::simple::ClassStruct; - glib_object_subclass!(); + glib::glib_object_subclass!(); fn new() -> Self { Self { @@ -228,7 +229,7 @@ impl ObjectSubclass for Device { } impl ObjectImpl for Device { - glib_object_impl!(); + glib::glib_object_impl!(); } impl DeviceImpl for Device { diff --git a/src/lib.rs b/src/lib.rs index c00b699a..6bbaeb3a 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,13 +1,4 @@ -#[macro_use] -extern crate glib; use glib::prelude::*; -#[macro_use] -extern crate gstreamer as gst; -extern crate gstreamer_audio as gst_audio; -extern crate gstreamer_base as gst_base; -extern crate gstreamer_video as gst_video; - -extern crate byte_slice_cast; mod device_provider; pub mod ndi; @@ -35,7 +26,7 @@ pub enum TimestampMode { fn plugin_init(plugin: &gst::Plugin) -> Result<(), glib::BoolError> { if !ndi::initialize() { - return Err(glib_bool_error!("Cannot initialize NDI")); + return Err(glib::glib_bool_error!("Cannot initialize NDI")); } ndivideosrc::register(plugin)?; @@ -151,7 +142,7 @@ fn timestamp_mode_get_type() -> glib::Type { } } -gst_plugin_define!( +gst::gst_plugin_define!( ndi, env!("CARGO_PKG_DESCRIPTION"), plugin_init, diff --git a/src/ndiaudiosrc.rs b/src/ndiaudiosrc.rs index 343eb547..5de8af3b 100644 --- a/src/ndiaudiosrc.rs +++ b/src/ndiaudiosrc.rs @@ -3,6 +3,7 @@ use glib::subclass; use gst; use gst::prelude::*; use gst::subclass::prelude::*; +use gst::{gst_debug, gst_element_error, gst_error, gst_error_msg}; use gst_audio; use gst_base; use gst_base::prelude::*; @@ -149,7 +150,7 @@ impl ObjectSubclass for NdiAudioSrc { type Instance = gst::subclass::ElementInstanceStruct; type Class = subclass::simple::ClassStruct; - glib_object_subclass!(); + glib::glib_object_subclass!(); fn new() -> Self { Self { @@ -199,7 +200,7 @@ impl ObjectSubclass for NdiAudioSrc { } impl ObjectImpl for NdiAudioSrc { - glib_object_impl!(); + glib::glib_object_impl!(); fn constructed(&self, obj: &glib::Object) { self.parent_constructed(obj); diff --git a/src/ndivideosrc.rs b/src/ndivideosrc.rs index 98ecf10d..559e18db 100644 --- a/src/ndivideosrc.rs +++ b/src/ndivideosrc.rs @@ -3,6 +3,7 @@ use glib::subclass; use gst; use gst::prelude::*; use gst::subclass::prelude::*; +use gst::{gst_debug, gst_element_error, gst_error, gst_error_msg}; use gst_base; use gst_base::prelude::*; use gst_base::subclass::base_src::CreateSuccess; @@ -150,7 +151,7 @@ impl ObjectSubclass for NdiVideoSrc { type Instance = gst::subclass::ElementInstanceStruct; type Class = subclass::simple::ClassStruct; - glib_object_subclass!(); + glib::glib_object_subclass!(); fn new() -> Self { Self { @@ -234,7 +235,7 @@ impl ObjectSubclass for NdiVideoSrc { } impl ObjectImpl for NdiVideoSrc { - glib_object_impl!(); + glib::glib_object_impl!(); fn constructed(&self, obj: &glib::Object) { self.parent_constructed(obj); diff --git a/src/receiver.rs b/src/receiver.rs index c7f86154..8b5b4bc1 100644 --- a/src/receiver.rs +++ b/src/receiver.rs @@ -2,6 +2,7 @@ use glib; use glib::prelude::*; use gst; use gst::prelude::*; +use gst::{gst_debug, gst_element_error, gst_error, gst_log, gst_warning}; use gst_video; use gst_video::prelude::*;