Simplify code for Rust 2018 a bit

This commit is contained in:
Sebastian Dröge 2021-02-23 12:37:24 +02:00
parent eee4a65d19
commit 0aef5152a7
6 changed files with 20 additions and 25 deletions

View file

@ -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"

View file

@ -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<Self>;
type Class = subclass::simple::ClassStruct<Self>;
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<Self>;
type Class = subclass::simple::ClassStruct<Self>;
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 {

View file

@ -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,

View file

@ -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<Self>;
type Class = subclass::simple::ClassStruct<Self>;
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);

View file

@ -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<Self>;
type Class = subclass::simple::ClassStruct<Self>;
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);

View file

@ -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::*;