Adapt to no longer renamed ffi crates

Allows us to set all the crates in the main workspace file, so changing
their versions or branch is much simpler and reduce the amount of noise
in the diff

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1450>
This commit is contained in:
Bilal Elmoussaoui 2024-06-02 10:48:53 +02:00
parent 10aff0d66e
commit 4ebec84f5e
308 changed files with 510 additions and 419 deletions

View file

@ -123,15 +123,32 @@ gobject-sys = { git = "https://github.com/gtk-rs/gtk-rs-core", branch = "master"
cairo-rs = { git = "https://github.com/gtk-rs/gtk-rs-core", branch = "master" } cairo-rs = { git = "https://github.com/gtk-rs/gtk-rs-core", branch = "master" }
pango = { git = "https://github.com/gtk-rs/gtk-rs-core", branch = "master" } pango = { git = "https://github.com/gtk-rs/gtk-rs-core", branch = "master" }
pangocairo = { git = "https://github.com/gtk-rs/gtk-rs-core", branch = "master" } pangocairo = { git = "https://github.com/gtk-rs/gtk-rs-core", branch = "master" }
gstreamer-allocators-sys = { path = "gstreamer-allocators/sys" }
gstreamer-analytics-sys = { path = "gstreamer-analytics/sys" }
gstreamer-app-sys = { path = "gstreamer-app/sys" }
gstreamer-audio-sys = { path = "./gstreamer-audio/sys"} gstreamer-audio-sys = { path = "./gstreamer-audio/sys"}
gstreamer-base-sys = { path = "./gstreamer-base/sys"} gstreamer-base-sys = { path = "./gstreamer-base/sys"}
gstreamer-check-sys = { path = "./gstreamer-check/sys" }
gstreamer-controller-sys = { path = "./gstreamer-controller/sys" }
gstreamer-editing-services-sys = { path = "./gstreamer-editing-services/sys"}
gstreamer-gl-egl-sys = { path = "./gstreamer-gl/egl/sys"}
gstreamer-gl-wayland-sys = { path = "./gstreamer-gl/wayland/sys"}
gstreamer-gl-x11-sys = { path = "./gstreamer-gl/x11/sys"}
gstreamer-gl-sys = { path = "./gstreamer-gl/sys"} gstreamer-gl-sys = { path = "./gstreamer-gl/sys"}
gstreamer-mpegts-sys = { path = "./gstreamer-mpegts/sys"}
gstreamer-net-sys = { path = "./gstreamer-net/sys"} gstreamer-net-sys = { path = "./gstreamer-net/sys"}
gstreamer-pbutils-sys = { path = "./gstreamer-pbutils/sys"} gstreamer-pbutils-sys = { path = "./gstreamer-pbutils/sys"}
gstreamer-play-sys = { path = "./gstreamer-play/sys" }
gstreamer-player-sys = { path = "./gstreamer-player/sys" }
gstreamer-rtp-sys = { path = "./gstreamer-rtp/sys" }
gstreamer-rtsp-sys = { path = "./gstreamer-rtsp/sys"} gstreamer-rtsp-sys = { path = "./gstreamer-rtsp/sys"}
gstreamer-rtsp-server-sys = { path = "./gstreamer-rtsp-server/sys" }
gstreamer-sdp-sys = { path = "./gstreamer-sdp/sys"} gstreamer-sdp-sys = { path = "./gstreamer-sdp/sys"}
gstreamer-tag-sys = { path = "./gstreamer-tag/sys" }
gstreamer-sys = { path = "./gstreamer/sys"} gstreamer-sys = { path = "./gstreamer/sys"}
gstreamer-validate-sys = { path = "./gstreamer-validate/sys" }
gstreamer-video-sys = { path = "./gstreamer-video/sys"} gstreamer-video-sys = { path = "./gstreamer-video/sys"}
gstreamer-webrtc-sys = { path = "./gstreamer-webrtc/sys" }
ges = { package = "gstreamer-editing-services", path = "./gstreamer-editing-services" } ges = { package = "gstreamer-editing-services", path = "./gstreamer-editing-services" }
gst = { package = "gstreamer", path = "./gstreamer" } gst = { package = "gstreamer", path = "./gstreamer" }
gst-allocators = { package = "gstreamer-allocators", path = "./gstreamer-allocators" } gst-allocators = { package = "gstreamer-allocators", path = "./gstreamer-allocators" }

View file

@ -15,7 +15,7 @@ rust-version.workspace = true
[dependencies] [dependencies]
libc = "0.2" libc = "0.2"
ffi = { package = "gstreamer-allocators-sys", path = "sys" } gstreamer-allocators-sys.workspace = true
glib.workspace = true glib.workspace = true
gst.workspace = true gst.workspace = true
once_cell = "1" once_cell = "1"
@ -25,12 +25,12 @@ gir-format-check = "0.1"
[features] [features]
default = [] default = []
v1_16 = ["gst/v1_16", "ffi/v1_16"] v1_16 = ["gst/v1_16", "gstreamer-allocators-sys/v1_16"]
v1_18 = ["gst/v1_18", "ffi/v1_18", "v1_16"] v1_18 = ["gst/v1_18", "gstreamer-allocators-sys/v1_18", "v1_16"]
v1_20 = ["gst/v1_20", "ffi/v1_20", "v1_18"] v1_20 = ["gst/v1_20", "gstreamer-allocators-sys/v1_20", "v1_18"]
v1_22 = ["gst/v1_22", "ffi/v1_22", "v1_20"] v1_22 = ["gst/v1_22", "gstreamer-allocators-sys/v1_22", "v1_20"]
v1_24 = ["gst/v1_24", "ffi/v1_24", "v1_22"] v1_24 = ["gst/v1_24", "gstreamer-allocators-sys/v1_24", "v1_22"]
v1_26 = ["gst/v1_26", "ffi/v1_26", "v1_24"] v1_26 = ["gst/v1_26", "gstreamer-allocators-sys/v1_26", "v1_24"]
[package.metadata.docs.rs] [package.metadata.docs.rs]
all-features = true all-features = true

View file

@ -9,7 +9,7 @@ use gst::{Memory, MemoryRef};
#[cfg(feature = "v1_16")] #[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))] #[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
use crate::FdMemoryFlags; use crate::FdMemoryFlags;
use crate::{DmaBufAllocator, FdMemory, FdMemoryRef}; use crate::{ffi, DmaBufAllocator, FdMemory, FdMemoryRef};
gst::memory_object_wrapper!( gst::memory_object_wrapper!(
DmaBufMemory, DmaBufMemory,

View file

@ -3,7 +3,7 @@ use std::{fmt, mem, os::unix::prelude::IntoRawFd};
use glib::{prelude::*, translate::*}; use glib::{prelude::*, translate::*};
use gst::{Memory, MemoryRef}; use gst::{Memory, MemoryRef};
use crate::{DRMDumbAllocator, DmaBufMemory}; use crate::{ffi, DRMDumbAllocator, DmaBufMemory};
gst::memory_object_wrapper!( gst::memory_object_wrapper!(
DRMDumbMemory, DRMDumbMemory,

View file

@ -3,7 +3,7 @@ use std::{fmt, os::unix::prelude::RawFd};
use glib::{prelude::*, translate::*}; use glib::{prelude::*, translate::*};
use gst::{Memory, MemoryRef}; use gst::{Memory, MemoryRef};
use crate::{FdAllocator, FdMemoryFlags}; use crate::{ffi, FdAllocator, FdMemoryFlags};
gst::memory_object_wrapper!( gst::memory_object_wrapper!(
FdMemory, FdMemory,

View file

@ -4,9 +4,9 @@
#![allow(clippy::missing_safety_doc)] #![allow(clippy::missing_safety_doc)]
#![doc = include_str!("../README.md")] #![doc = include_str!("../README.md")]
pub use ffi;
pub use glib; pub use glib;
pub use gst; pub use gst;
pub use gstreamer_allocators_sys as ffi;
macro_rules! assert_initialized_main_thread { macro_rules! assert_initialized_main_thread {
() => { () => {

View file

@ -1,5 +1,6 @@
use std::fmt; use std::fmt;
use crate::ffi;
use glib::translate::*; use glib::translate::*;
use gst::{Memory, MemoryRef}; use gst::{Memory, MemoryRef};

View file

@ -1,6 +1,6 @@
use glib::translate::*; use glib::translate::*;
use crate::ShmAllocator; use crate::{ffi, ShmAllocator};
impl ShmAllocator { impl ShmAllocator {
#[doc(alias = "gst_shm_allocator_get")] #[doc(alias = "gst_shm_allocator_get")]

View file

@ -15,7 +15,7 @@ rust-version.workspace = true
[dependencies] [dependencies]
libc = "0.2" libc = "0.2"
ffi = { package = "gstreamer-analytics-sys", path = "sys" } gstreamer-analytics-sys.workspace = true
glib.workspace = true glib.workspace = true
gst.workspace = true gst.workspace = true
@ -24,7 +24,7 @@ gir-format-check = "0.1"
[features] [features]
default = [] default = []
v1_26 = ["gst/v1_26", "ffi/v1_26"] v1_26 = ["gst/v1_26", "gstreamer-analytics-sys/v1_26"]
[package.metadata.docs.rs] [package.metadata.docs.rs]
all-features = true all-features = true

View file

@ -2,7 +2,7 @@
use glib::translate::*; use glib::translate::*;
use crate::relation_meta::*; use crate::{ffi, relation_meta::*};
#[derive(Debug)] #[derive(Debug)]
pub enum AnalyticsClassificationMtd {} pub enum AnalyticsClassificationMtd {}

View file

@ -4,9 +4,9 @@
#![allow(clippy::missing_safety_doc)] #![allow(clippy::missing_safety_doc)]
#![doc = include_str!("../README.md")] #![doc = include_str!("../README.md")]
pub use ffi;
pub use glib; pub use glib;
pub use gst; pub use gst;
pub use gstreamer_analytics_sys as ffi;
macro_rules! skip_assert_initialized { macro_rules! skip_assert_initialized {
() => {}; () => {};

View file

@ -2,7 +2,7 @@
use glib::translate::*; use glib::translate::*;
use crate::relation_meta::*; use crate::{ffi, relation_meta::*};
#[derive(Debug)] #[derive(Debug)]
pub enum AnalyticsODMtd {} pub enum AnalyticsODMtd {}

View file

@ -4,7 +4,7 @@ use glib::translate::*;
use gst::prelude::*; use gst::prelude::*;
use std::marker::PhantomData; use std::marker::PhantomData;
use crate::RelTypes; use crate::{ffi, RelTypes};
#[repr(transparent)] #[repr(transparent)]
#[doc(alias = "GstAnalyticsRelationMeta")] #[doc(alias = "GstAnalyticsRelationMeta")]

View file

@ -2,7 +2,7 @@
use glib::translate::*; use glib::translate::*;
use crate::relation_meta::*; use crate::{ffi, relation_meta::*};
#[derive(Debug)] #[derive(Debug)]
pub enum AnalyticsTrackingMtd {} pub enum AnalyticsTrackingMtd {}

View file

@ -17,7 +17,7 @@ rust-version.workspace = true
futures-core = "0.3" futures-core = "0.3"
futures-sink = "0.3" futures-sink = "0.3"
libc = "0.2" libc = "0.2"
ffi = { package = "gstreamer-app-sys", path = "sys" } gstreamer-app-sys.workspace = true
glib.workspace = true glib.workspace = true
gst.workspace = true gst.workspace = true
gst-base.workspace = true gst-base.workspace = true
@ -29,12 +29,12 @@ gir-format-check = "0.1"
[features] [features]
default = [] default = []
v1_16 = ["gst/v1_16", "gst-base/v1_16", "ffi/v1_16"] v1_16 = ["gst/v1_16", "gst-base/v1_16", "gstreamer-app-sys/v1_16"]
v1_18 = ["gst/v1_18", "gst-base/v1_18", "ffi/v1_18", "v1_16"] v1_18 = ["gst/v1_18", "gst-base/v1_18", "gstreamer-app-sys/v1_18", "v1_16"]
v1_20 = ["gst/v1_20", "gst-base/v1_20", "ffi/v1_20", "v1_18"] v1_20 = ["gst/v1_20", "gst-base/v1_20", "gstreamer-app-sys/v1_20", "v1_18"]
v1_22 = ["gst/v1_22", "gst-base/v1_22", "ffi/v1_22", "v1_20"] v1_22 = ["gst/v1_22", "gst-base/v1_22", "gstreamer-app-sys/v1_22", "v1_20"]
v1_24 = ["gst/v1_24", "gst-base/v1_24", "ffi/v1_24", "v1_22"] v1_24 = ["gst/v1_24", "gst-base/v1_24", "gstreamer-app-sys/v1_24", "v1_22"]
v1_26 = ["gst/v1_26", "gst-base/v1_26", "ffi/v1_26", "v1_24"] v1_26 = ["gst/v1_26", "gst-base/v1_26", "gstreamer-app-sys/v1_26", "v1_24"]
[package.metadata.docs.rs] [package.metadata.docs.rs]
all-features = true all-features = true

View file

@ -14,7 +14,7 @@ use std::sync::atomic::{AtomicBool, Ordering};
use futures_core::Stream; use futures_core::Stream;
use glib::{ffi::gpointer, prelude::*, translate::*}; use glib::{ffi::gpointer, prelude::*, translate::*};
use crate::AppSink; use crate::{ffi, AppSink};
#[allow(clippy::type_complexity)] #[allow(clippy::type_complexity)]
pub struct AppSinkCallbacks { pub struct AppSinkCallbacks {

View file

@ -18,7 +18,7 @@ use glib::{
translate::*, translate::*,
}; };
use crate::AppSrc; use crate::{ffi, AppSrc};
#[allow(clippy::type_complexity)] #[allow(clippy::type_complexity)]
pub struct AppSrcCallbacks { pub struct AppSrcCallbacks {

View file

@ -4,10 +4,10 @@
#![allow(clippy::missing_safety_doc)] #![allow(clippy::missing_safety_doc)]
#![doc = include_str!("../README.md")] #![doc = include_str!("../README.md")]
pub use ffi;
pub use glib; pub use glib;
pub use gst; pub use gst;
pub use gst_base; pub use gst_base;
pub use gstreamer_app_sys as ffi;
macro_rules! assert_initialized_main_thread { macro_rules! assert_initialized_main_thread {
() => { () => {

View file

@ -16,7 +16,7 @@ rust-version.workspace = true
[dependencies] [dependencies]
libc = "0.2" libc = "0.2"
cfg-if = "1.0" cfg-if = "1.0"
ffi = { package = "gstreamer-audio-sys", path = "sys" } gstreamer-audio-sys.workspace = true
glib.workspace = true glib.workspace = true
gst.workspace = true gst.workspace = true
gst-base.workspace = true gst-base.workspace = true
@ -31,12 +31,12 @@ gir-format-check = "0.1"
[features] [features]
default = [] default = []
v1_16 = ["gst/v1_16", "gst-base/v1_16", "ffi/v1_16"] v1_16 = ["gst/v1_16", "gst-base/v1_16", "gstreamer-audio-sys/v1_16"]
v1_18 = ["gst/v1_18", "gst-base/v1_18", "ffi/v1_18", "v1_16"] v1_18 = ["gst/v1_18", "gst-base/v1_18", "gstreamer-audio-sys/v1_18", "v1_16"]
v1_20 = ["gst/v1_20", "gst-base/v1_20", "ffi/v1_20", "v1_18"] v1_20 = ["gst/v1_20", "gst-base/v1_20", "gstreamer-audio-sys/v1_20", "v1_18"]
v1_22 = ["gst/v1_22", "gst-base/v1_22", "ffi/v1_22", "v1_20"] v1_22 = ["gst/v1_22", "gst-base/v1_22", "gstreamer-audio-sys/v1_22", "v1_20"]
v1_24 = ["gst/v1_24", "gst-base/v1_24", "ffi/v1_24", "v1_22"] v1_24 = ["gst/v1_24", "gst-base/v1_24", "gstreamer-audio-sys/v1_24", "v1_22"]
v1_26 = ["gst/v1_26", "gst-base/v1_26", "ffi/v1_26", "v1_24"] v1_26 = ["gst/v1_26", "gst-base/v1_26", "gstreamer-audio-sys/v1_26", "v1_24"]
serde = ["dep:serde", "gst/serde"] serde = ["dep:serde", "gst/serde"]
[package.metadata.docs.rs] [package.metadata.docs.rs]

View file

@ -8,7 +8,7 @@ use glib::signal::{connect_raw, SignalHandlerId};
use glib::translate::*; use glib::translate::*;
use gst::prelude::*; use gst::prelude::*;
use crate::auto::{AudioAggregator, AudioAggregatorPad}; use crate::{ffi, AudioAggregator, AudioAggregatorPad};
mod sealed { mod sealed {
pub trait Sealed {} pub trait Sealed {}

View file

@ -6,7 +6,7 @@ use glib::{
translate::*, translate::*,
}; };
use crate::auto::AudioAggregatorConvertPad; use crate::{ffi, AudioAggregatorConvertPad};
mod sealed { mod sealed {
pub trait Sealed {} pub trait Sealed {}

View file

@ -1,7 +1,7 @@
use glib::{object::IsA, translate::*}; use glib::translate::*;
use gst::prelude::*; use gst::prelude::*;
use crate::auto::AudioAggregatorPad; use crate::{ffi, AudioAggregatorPad};
mod sealed { mod sealed {
pub trait Sealed {} pub trait Sealed {}

View file

@ -2,6 +2,7 @@
use std::{fmt, marker::PhantomData, mem, ops, ptr, slice}; use std::{fmt, marker::PhantomData, mem, ops, ptr, slice};
use crate::ffi;
use glib::translate::*; use glib::translate::*;
use smallvec::SmallVec; use smallvec::SmallVec;

View file

@ -2,6 +2,7 @@
use std::{mem, slice}; use std::{mem, slice};
use crate::ffi;
use glib::{prelude::*, translate::*, value::FromValue, Type}; use glib::{prelude::*, translate::*, value::FromValue, Type};
#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)] #[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]

View file

@ -4,7 +4,7 @@ use std::{mem, ptr};
use glib::{prelude::*, translate::*}; use glib::{prelude::*, translate::*};
use crate::{AudioDecoder, AudioInfo}; use crate::{ffi, AudioDecoder, AudioInfo};
extern "C" { extern "C" {
fn _gst_audio_decoder_error( fn _gst_audio_decoder_error(

View file

@ -4,7 +4,7 @@ use std::{mem, ptr};
use glib::{prelude::*, translate::*}; use glib::{prelude::*, translate::*};
use crate::AudioEncoder; use crate::{ffi, AudioEncoder};
mod sealed { mod sealed {
pub trait Sealed {} pub trait Sealed {}

View file

@ -3,7 +3,7 @@
use glib::{prelude::*, translate::*}; use glib::{prelude::*, translate::*};
use gst_base::prelude::*; use gst_base::prelude::*;
use crate::{AudioFilter, AudioInfo}; use crate::{ffi, AudioFilter, AudioInfo};
mod sealed { mod sealed {
pub trait Sealed {} pub trait Sealed {}

View file

@ -2,6 +2,7 @@
use std::str; use std::str;
use crate::ffi;
use glib::translate::{from_glib, IntoGlib}; use glib::translate::{from_glib, IntoGlib};
use once_cell::sync::Lazy; use once_cell::sync::Lazy;

View file

@ -2,6 +2,7 @@
use std::{cmp::Ordering, fmt, marker::PhantomData, str}; use std::{cmp::Ordering, fmt, marker::PhantomData, str};
use crate::ffi;
use glib::{ use glib::{
prelude::*, prelude::*,
translate::{from_glib, from_glib_none, FromGlib, IntoGlib, ToGlibPtr, ToGlibPtrMut}, translate::{from_glib, from_glib_none, FromGlib, IntoGlib, ToGlibPtr, ToGlibPtrMut},

View file

@ -2,6 +2,7 @@
use std::{fmt, marker::PhantomData, mem, ptr, slice}; use std::{fmt, marker::PhantomData, mem, ptr, slice};
use crate::ffi;
use glib::translate::{ use glib::translate::{
from_glib, from_glib_full, from_glib_none, IntoGlib, ToGlibPtr, ToGlibPtrMut, from_glib, from_glib_full, from_glib_none, IntoGlib, ToGlibPtr, ToGlibPtrMut,
}; };

View file

@ -14,6 +14,8 @@ use glib::translate::{from_glib, IntoGlib};
use glib::translate::{from_glib_none, ToGlibPtr}; use glib::translate::{from_glib_none, ToGlibPtr};
use gst::prelude::*; use gst::prelude::*;
use crate::ffi;
#[repr(transparent)] #[repr(transparent)]
#[doc(alias = "GstAudioClippingMeta")] #[doc(alias = "GstAudioClippingMeta")]
pub struct AudioClippingMeta(ffi::GstAudioClippingMeta); pub struct AudioClippingMeta(ffi::GstAudioClippingMeta);
@ -295,11 +297,14 @@ impl fmt::Debug for AudioLevelMeta {
} }
pub mod tags { pub mod tags {
gst::impl_meta_tag!(Audio, GST_META_TAG_AUDIO_STR); gst::impl_meta_tag!(Audio, crate::ffi::GST_META_TAG_AUDIO_STR);
gst::impl_meta_tag!(Channels, GST_META_TAG_AUDIO_CHANNELS_STR); gst::impl_meta_tag!(Channels, crate::ffi::GST_META_TAG_AUDIO_CHANNELS_STR);
gst::impl_meta_tag!(Rate, GST_META_TAG_AUDIO_RATE_STR); gst::impl_meta_tag!(Rate, crate::ffi::GST_META_TAG_AUDIO_RATE_STR);
#[cfg(feature = "v1_24")] #[cfg(feature = "v1_24")]
gst::impl_meta_tag!(DSDPlaneOffsets, GST_META_TAG_DSD_PLANE_OFFSETS_STR); gst::impl_meta_tag!(
DSDPlaneOffsets,
crate::ffi::GST_META_TAG_DSD_PLANE_OFFSETS_STR
);
} }
#[cfg(test)] #[cfg(test)]

View file

@ -5,10 +5,10 @@ use std::fmt;
use glib::translate::*; use glib::translate::*;
use gst::Caps; use gst::Caps;
use crate::{ffi::GstAudioRingBufferSpec, AudioInfo, AudioRingBufferFormatType}; use crate::{ffi, AudioInfo, AudioRingBufferFormatType};
#[repr(transparent)] #[repr(transparent)]
pub struct AudioRingBufferSpec(pub(crate) GstAudioRingBufferSpec); pub struct AudioRingBufferSpec(pub(crate) ffi::GstAudioRingBufferSpec);
impl AudioRingBufferSpec { impl AudioRingBufferSpec {
#[doc(alias = "get_type")] #[doc(alias = "get_type")]

View file

@ -18,7 +18,7 @@ impl AudioStreamAlign {
let mut out_timestamp = mem::MaybeUninit::uninit(); let mut out_timestamp = mem::MaybeUninit::uninit();
let mut out_duration = mem::MaybeUninit::uninit(); let mut out_duration = mem::MaybeUninit::uninit();
let mut out_sample_position = mem::MaybeUninit::uninit(); let mut out_sample_position = mem::MaybeUninit::uninit();
let ret = from_glib(ffi::gst_audio_stream_align_process( let ret = from_glib(crate::ffi::gst_audio_stream_align_process(
self.to_glib_none_mut().0, self.to_glib_none_mut().0,
discont.into_glib(), discont.into_glib(),
timestamp.into_glib(), timestamp.into_glib(),

View file

@ -2,6 +2,7 @@
use std::i32; use std::i32;
use crate::ffi;
use glib::translate::{from_glib_full, IntoGlibPtr, ToGlibPtr}; use glib::translate::{from_glib_full, IntoGlibPtr, ToGlibPtr};
#[doc(alias = "gst_audio_buffer_clip")] #[doc(alias = "gst_audio_buffer_clip")]

View file

@ -4,10 +4,10 @@
#![allow(clippy::missing_safety_doc)] #![allow(clippy::missing_safety_doc)]
#![doc = include_str!("../README.md")] #![doc = include_str!("../README.md")]
pub use ffi;
pub use glib; pub use glib;
pub use gst; pub use gst;
pub use gst_base; pub use gst_base;
pub use gstreamer_audio_sys as ffi;
macro_rules! assert_initialized_main_thread { macro_rules! assert_initialized_main_thread {
() => { () => {

View file

@ -5,7 +5,7 @@ use std::ptr;
use glib::translate::*; use glib::translate::*;
use gst_base::{prelude::*, subclass::prelude::*}; use gst_base::{prelude::*, subclass::prelude::*};
use crate::{AudioAggregator, AudioAggregatorPad}; use crate::{ffi, AudioAggregator, AudioAggregatorPad};
pub trait AudioAggregatorImpl: AudioAggregatorImplExt + AggregatorImpl { pub trait AudioAggregatorImpl: AudioAggregatorImplExt + AggregatorImpl {
fn create_output_buffer(&self, num_frames: u32) -> Option<gst::Buffer> { fn create_output_buffer(&self, num_frames: u32) -> Option<gst::Buffer> {

View file

@ -5,7 +5,7 @@ use std::ptr;
use glib::translate::*; use glib::translate::*;
use gst_base::{prelude::*, subclass::prelude::*}; use gst_base::{prelude::*, subclass::prelude::*};
use crate::AudioAggregatorPad; use crate::{ffi, AudioAggregatorPad};
pub trait AudioAggregatorPadImpl: AudioAggregatorPadImplExt + AggregatorPadImpl { pub trait AudioAggregatorPadImpl: AudioAggregatorPadImplExt + AggregatorPadImpl {
const HANDLE_CONVERSION: bool = false; const HANDLE_CONVERSION: bool = false;

View file

@ -5,7 +5,7 @@ use std::{mem, ptr};
use glib::translate::*; use glib::translate::*;
use gst::subclass::prelude::*; use gst::subclass::prelude::*;
use crate::{prelude::*, AudioDecoder}; use crate::{ffi, prelude::*, AudioDecoder};
pub trait AudioDecoderImpl: AudioDecoderImplExt + ElementImpl { pub trait AudioDecoderImpl: AudioDecoderImplExt + ElementImpl {
fn open(&self) -> Result<(), gst::ErrorMessage> { fn open(&self) -> Result<(), gst::ErrorMessage> {

View file

@ -5,7 +5,7 @@ use std::ptr;
use glib::translate::*; use glib::translate::*;
use gst::subclass::prelude::*; use gst::subclass::prelude::*;
use crate::{prelude::*, AudioEncoder, AudioInfo}; use crate::{ffi, prelude::*, AudioEncoder, AudioInfo};
pub trait AudioEncoderImpl: AudioEncoderImplExt + ElementImpl { pub trait AudioEncoderImpl: AudioEncoderImplExt + ElementImpl {
fn open(&self) -> Result<(), gst::ErrorMessage> { fn open(&self) -> Result<(), gst::ErrorMessage> {

View file

@ -3,7 +3,7 @@
use glib::translate::*; use glib::translate::*;
use gst_base::{prelude::*, subclass::prelude::*}; use gst_base::{prelude::*, subclass::prelude::*};
use crate::{AudioFilter, AudioInfo}; use crate::{ffi, AudioFilter, AudioInfo};
pub trait AudioFilterImpl: AudioFilterImplExt + BaseTransformImpl { pub trait AudioFilterImpl: AudioFilterImplExt + BaseTransformImpl {
fn allowed_caps() -> &'static gst::Caps { fn allowed_caps() -> &'static gst::Caps {

View file

@ -5,7 +5,7 @@ use gst::LoggableError;
use gst_base::subclass::prelude::*; use gst_base::subclass::prelude::*;
use super::prelude::*; use super::prelude::*;
use crate::{AudioRingBufferSpec, AudioSink}; use crate::{ffi, AudioRingBufferSpec, AudioSink};
pub trait AudioSinkImpl: AudioSinkImplExt + AudioBaseSinkImpl { pub trait AudioSinkImpl: AudioSinkImplExt + AudioBaseSinkImpl {
fn close(&self) -> Result<(), LoggableError> { fn close(&self) -> Result<(), LoggableError> {

View file

@ -7,7 +7,7 @@ use gst::LoggableError;
use gst_base::subclass::prelude::*; use gst_base::subclass::prelude::*;
use super::prelude::*; use super::prelude::*;
use crate::{AudioRingBufferSpec, AudioSrc}; use crate::{ffi, AudioRingBufferSpec, AudioSrc};
pub trait AudioSrcImpl: AudioSrcImplExt + AudioBaseSrcImpl { pub trait AudioSrcImpl: AudioSrcImplExt + AudioBaseSrcImpl {
fn close(&self) -> Result<(), LoggableError> { fn close(&self) -> Result<(), LoggableError> {

View file

@ -16,7 +16,7 @@ rust-version.workspace = true
[dependencies] [dependencies]
cfg-if = "1.0" cfg-if = "1.0"
libc = "0.2" libc = "0.2"
ffi = { package = "gstreamer-base-sys", path = "sys" } gstreamer-base-sys.workspace = true
glib.workspace = true glib.workspace = true
gst.workspace = true gst.workspace = true
atomic_refcell = "0.1" atomic_refcell = "0.1"
@ -26,13 +26,13 @@ gir-format-check = "0.1"
[features] [features]
default = [] default = []
v1_14_1 = ["ffi/v1_14_1"] v1_14_1 = ["gstreamer-base-sys/v1_14_1"]
v1_16 = ["gst/v1_16", "ffi/v1_16", "v1_14_1"] v1_16 = ["gst/v1_16", "gstreamer-base-sys/v1_16", "v1_14_1"]
v1_18 = ["gst/v1_18", "ffi/v1_18", "v1_16"] v1_18 = ["gst/v1_18", "gstreamer-base-sys/v1_18", "v1_16"]
v1_20 = ["gst/v1_20", "ffi/v1_20", "v1_18"] v1_20 = ["gst/v1_20", "gstreamer-base-sys/v1_20", "v1_18"]
v1_22 = ["gst/v1_22", "ffi/v1_22", "v1_20"] v1_22 = ["gst/v1_22", "gstreamer-base-sys/v1_22", "v1_20"]
v1_24 = ["gst/v1_24", "ffi/v1_24", "v1_22"] v1_24 = ["gst/v1_24", "gstreamer-base-sys/v1_24", "v1_22"]
v1_26 = ["gst/v1_26", "ffi/v1_26", "v1_24"] v1_26 = ["gst/v1_26", "gstreamer-base-sys/v1_26", "v1_24"]
[package.metadata.docs.rs] [package.metadata.docs.rs]
all-features = true all-features = true

View file

@ -4,7 +4,7 @@ use std::{io, mem, ops};
use glib::translate::*; use glib::translate::*;
use crate::Adapter; use crate::{ffi, Adapter};
impl Adapter { impl Adapter {
#[doc(alias = "gst_adapter_copy")] #[doc(alias = "gst_adapter_copy")]

View file

@ -14,8 +14,7 @@ use glib::signal::{connect_raw, SignalHandlerId};
use glib::{prelude::*, translate::*}; use glib::{prelude::*, translate::*};
use gst::{format::FormattedValue, prelude::*}; use gst::{format::FormattedValue, prelude::*};
use crate::Aggregator; use crate::{ffi, Aggregator, AggregatorPad};
use crate::AggregatorPad;
mod sealed { mod sealed {
pub trait Sealed {} pub trait Sealed {}

View file

@ -3,7 +3,7 @@
use glib::{prelude::*, translate::*}; use glib::{prelude::*, translate::*};
use gst::prelude::*; use gst::prelude::*;
use crate::AggregatorPad; use crate::{ffi, AggregatorPad};
mod sealed { mod sealed {
pub trait Sealed {} pub trait Sealed {}

View file

@ -8,7 +8,7 @@ use gst::{
prelude::*, prelude::*,
}; };
use crate::{BaseParse, BaseParseFrame}; use crate::{ffi, BaseParse, BaseParseFrame};
mod sealed { mod sealed {
pub trait Sealed {} pub trait Sealed {}

View file

@ -4,7 +4,7 @@ use std::{fmt, marker::PhantomData, ptr};
use glib::translate::*; use glib::translate::*;
use crate::{BaseParse, BaseParseFrameFlags}; use crate::{ffi, BaseParse, BaseParseFrameFlags};
pub struct BaseParseFrame<'a>( pub struct BaseParseFrame<'a>(
ptr::NonNull<ffi::GstBaseParseFrame>, ptr::NonNull<ffi::GstBaseParseFrame>,

View file

@ -5,7 +5,7 @@ use std::mem;
use glib::{prelude::*, translate::*}; use glib::{prelude::*, translate::*};
use gst::prelude::*; use gst::prelude::*;
use crate::BaseSink; use crate::{ffi, BaseSink};
mod sealed { mod sealed {
pub trait Sealed {} pub trait Sealed {}

View file

@ -5,7 +5,7 @@ use std::{mem, ptr};
use glib::{prelude::*, translate::*}; use glib::{prelude::*, translate::*};
use gst::prelude::*; use gst::prelude::*;
use crate::BaseSrc; use crate::{ffi, BaseSrc};
mod sealed { mod sealed {
pub trait Sealed {} pub trait Sealed {}

View file

@ -5,7 +5,7 @@ use std::{mem, ptr};
use glib::{prelude::*, translate::*}; use glib::{prelude::*, translate::*};
use gst::prelude::*; use gst::prelude::*;
use crate::BaseTransform; use crate::{ffi, BaseTransform};
mod sealed { mod sealed {
pub trait Sealed {} pub trait Sealed {}

View file

@ -1,5 +1,6 @@
// Take a look at the license at the top of the repository in the LICENSE file. // Take a look at the license at the top of the repository in the LICENSE file.
use crate::ffi;
use glib::{prelude::*, translate::*}; use glib::{prelude::*, translate::*};
glib::wrapper! { glib::wrapper! {

View file

@ -3,6 +3,7 @@
use std::mem; use std::mem;
pub use crate::auto::functions::*; pub use crate::auto::functions::*;
use crate::ffi;
use glib::{prelude::*, translate::*}; use glib::{prelude::*, translate::*};
#[doc(alias = "gst_type_find_helper_for_data")] #[doc(alias = "gst_type_find_helper_for_data")]

View file

@ -4,9 +4,9 @@
#![allow(clippy::missing_safety_doc)] #![allow(clippy::missing_safety_doc)]
#![doc = include_str!("../README.md")] #![doc = include_str!("../README.md")]
pub use ffi;
pub use glib; pub use glib;
pub use gst; pub use gst;
pub use gstreamer_base_sys as ffi;
macro_rules! assert_initialized_main_thread { macro_rules! assert_initialized_main_thread {
() => { () => {
@ -20,6 +20,7 @@ macro_rules! skip_assert_initialized {
() => {}; () => {};
} }
#[allow(unused_imports)]
mod auto; mod auto;
pub use crate::auto::*; pub use crate::auto::*;

View file

@ -5,7 +5,7 @@ use std::ptr;
use glib::{prelude::*, translate::*}; use glib::{prelude::*, translate::*};
use gst::subclass::prelude::*; use gst::subclass::prelude::*;
use crate::{Aggregator, AggregatorPad}; use crate::{ffi, Aggregator, AggregatorPad};
pub trait AggregatorImpl: AggregatorImplExt + ElementImpl { pub trait AggregatorImpl: AggregatorImplExt + ElementImpl {
fn flush(&self) -> Result<gst::FlowSuccess, gst::FlowError> { fn flush(&self) -> Result<gst::FlowSuccess, gst::FlowError> {

View file

@ -3,7 +3,7 @@
use glib::{prelude::*, translate::*}; use glib::{prelude::*, translate::*};
use gst::subclass::prelude::*; use gst::subclass::prelude::*;
use crate::{Aggregator, AggregatorPad}; use crate::{ffi, Aggregator, AggregatorPad};
pub trait AggregatorPadImpl: AggregatorPadImplExt + PadImpl { pub trait AggregatorPadImpl: AggregatorPadImplExt + PadImpl {
fn flush(&self, aggregator: &Aggregator) -> Result<gst::FlowSuccess, gst::FlowError> { fn flush(&self, aggregator: &Aggregator) -> Result<gst::FlowSuccess, gst::FlowError> {

View file

@ -5,7 +5,7 @@ use std::mem;
use glib::translate::*; use glib::translate::*;
use gst::subclass::prelude::*; use gst::subclass::prelude::*;
use crate::{prelude::*, BaseParse, BaseParseFrame}; use crate::{ffi, prelude::*, BaseParse, BaseParseFrame};
pub trait BaseParseImpl: BaseParseImplExt + ElementImpl { pub trait BaseParseImpl: BaseParseImplExt + ElementImpl {
fn start(&self) -> Result<(), gst::ErrorMessage> { fn start(&self) -> Result<(), gst::ErrorMessage> {

View file

@ -5,7 +5,7 @@ use std::ptr;
use glib::{prelude::*, translate::*}; use glib::{prelude::*, translate::*};
use gst::subclass::prelude::*; use gst::subclass::prelude::*;
use crate::BaseSink; use crate::{ffi, BaseSink};
pub trait BaseSinkImpl: BaseSinkImplExt + ElementImpl { pub trait BaseSinkImpl: BaseSinkImplExt + ElementImpl {
fn start(&self) -> Result<(), gst::ErrorMessage> { fn start(&self) -> Result<(), gst::ErrorMessage> {

View file

@ -6,7 +6,7 @@ use atomic_refcell::AtomicRefCell;
use glib::{prelude::*, translate::*}; use glib::{prelude::*, translate::*};
use gst::{prelude::*, subclass::prelude::*}; use gst::{prelude::*, subclass::prelude::*};
use crate::{prelude::BaseSrcExtManual, BaseSrc}; use crate::{ffi, prelude::*, BaseSrc};
#[derive(Default)] #[derive(Default)]
pub(super) struct InstanceData { pub(super) struct InstanceData {

View file

@ -5,7 +5,7 @@ use std::{mem, ptr};
use glib::translate::*; use glib::translate::*;
use gst::subclass::prelude::*; use gst::subclass::prelude::*;
use crate::{prelude::*, BaseTransform}; use crate::{ffi, prelude::*, BaseTransform};
#[derive(Copy, Clone, Debug, PartialEq, Eq)] #[derive(Copy, Clone, Debug, PartialEq, Eq)]
pub enum BaseTransformMode { pub enum BaseTransformMode {

View file

@ -6,7 +6,7 @@ use glib::{prelude::*, subclass::prelude::*, translate::*};
use gst::prelude::*; use gst::prelude::*;
use super::base_src::{BaseSrcImpl, CreateSuccess}; use super::base_src::{BaseSrcImpl, CreateSuccess};
use crate::{prelude::BaseSrcExtManual, PushSrc}; use crate::{ffi, prelude::*, PushSrc};
pub trait PushSrcImpl: PushSrcImplExt + BaseSrcImpl { pub trait PushSrcImpl: PushSrcImplExt + BaseSrcImpl {
fn fill(&self, buffer: &mut gst::BufferRef) -> Result<gst::FlowSuccess, gst::FlowError> { fn fill(&self, buffer: &mut gst::BufferRef) -> Result<gst::FlowSuccess, gst::FlowError> {

View file

@ -14,7 +14,7 @@ edition.workspace = true
rust-version.workspace = true rust-version.workspace = true
[dependencies] [dependencies]
ffi = { package = "gstreamer-check-sys", path = "sys" } gstreamer-check-sys.workspace = true
glib.workspace = true glib.workspace = true
gst.workspace = true gst.workspace = true
@ -23,12 +23,12 @@ gir-format-check = "0.1"
[features] [features]
default = [] default = []
v1_16 = ["gst/v1_16", "ffi/v1_16"] v1_16 = ["gst/v1_16", "gstreamer-check-sys/v1_16"]
v1_18 = ["gst/v1_18", "ffi/v1_18", "v1_16"] v1_18 = ["gst/v1_18", "gstreamer-check-sys/v1_18", "v1_16"]
v1_20 = ["gst/v1_20", "ffi/v1_20", "v1_18"] v1_20 = ["gst/v1_20", "gstreamer-check-sys/v1_20", "v1_18"]
v1_22 = ["gst/v1_22", "ffi/v1_22", "v1_20"] v1_22 = ["gst/v1_22", "gstreamer-check-sys/v1_22", "v1_20"]
v1_24 = ["gst/v1_24", "ffi/v1_24", "v1_22"] v1_24 = ["gst/v1_24", "gstreamer-check-sys/v1_24", "v1_22"]
v1_26 = ["gst/v1_26", "ffi/v1_26", "v1_24"] v1_26 = ["gst/v1_26", "gstreamer-check-sys/v1_26", "v1_24"]
[package.metadata.docs.rs] [package.metadata.docs.rs]
all-features = true all-features = true

View file

@ -5,7 +5,7 @@ use std::{mem, ops, path, ptr};
use glib::translate::*; use glib::translate::*;
use gst::prelude::*; use gst::prelude::*;
use crate::TestClock; use crate::{ffi, TestClock};
#[derive(Debug)] #[derive(Debug)]
#[doc(alias = "GstHarness")] #[doc(alias = "GstHarness")]

View file

@ -4,9 +4,9 @@
#![allow(clippy::missing_safety_doc)] #![allow(clippy::missing_safety_doc)]
#![doc = include_str!("../README.md")] #![doc = include_str!("../README.md")]
pub use ffi;
pub use glib; pub use glib;
pub use gst; pub use gst;
pub use gstreamer_check_sys as ffi;
macro_rules! assert_initialized_main_thread { macro_rules! assert_initialized_main_thread {
() => { () => {

View file

@ -4,7 +4,7 @@ use std::ptr;
use glib::translate::*; use glib::translate::*;
use crate::TestClock; use crate::{ffi, TestClock};
impl TestClock { impl TestClock {
#[doc(alias = "gst_test_clock_has_id")] #[doc(alias = "gst_test_clock_has_id")]

View file

@ -14,7 +14,7 @@ edition.workspace = true
rust-version.workspace = true rust-version.workspace = true
[dependencies] [dependencies]
ffi = { package = "gstreamer-controller-sys", path = "sys" } gstreamer-controller-sys.workspace = true
glib.workspace = true glib.workspace = true
gst.workspace = true gst.workspace = true
@ -23,12 +23,12 @@ gir-format-check = "0.1"
[features] [features]
default = [] default = []
v1_16 = ["gst/v1_16", "ffi/v1_16"] v1_16 = ["gst/v1_16", "gstreamer-controller-sys/v1_16"]
v1_18 = ["gst/v1_18", "ffi/v1_18", "v1_16"] v1_18 = ["gst/v1_18", "gstreamer-controller-sys/v1_18", "v1_16"]
v1_20 = ["gst/v1_20", "ffi/v1_20", "v1_18"] v1_20 = ["gst/v1_20", "gstreamer-controller-sys/v1_20", "v1_18"]
v1_22 = ["gst/v1_22", "ffi/v1_22", "v1_20"] v1_22 = ["gst/v1_22", "gstreamer-controller-sys/v1_22", "v1_20"]
v1_24 = ["gst/v1_24", "ffi/v1_24", "v1_22"] v1_24 = ["gst/v1_24", "gstreamer-controller-sys/v1_24", "v1_22"]
v1_26 = ["gst/v1_26", "ffi/v1_26", "v1_24"] v1_26 = ["gst/v1_26", "gstreamer-controller-sys/v1_26", "v1_24"]
[package.metadata.docs.rs] [package.metadata.docs.rs]
all-features = true all-features = true

View file

@ -2,6 +2,8 @@
use glib::translate::*; use glib::translate::*;
use crate::ffi;
glib::wrapper! { glib::wrapper! {
#[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] #[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[doc(alias = "GstControlPoint")] #[doc(alias = "GstControlPoint")]

View file

@ -4,9 +4,9 @@
#![allow(clippy::missing_safety_doc)] #![allow(clippy::missing_safety_doc)]
#![doc = include_str!("../README.md")] #![doc = include_str!("../README.md")]
pub use ffi;
pub use glib; pub use glib;
pub use gst; pub use gst;
pub use gstreamer_controller_sys as ffi;
macro_rules! assert_initialized_main_thread { macro_rules! assert_initialized_main_thread {
() => { () => {

View file

@ -15,7 +15,7 @@ rust-version.workspace = true
[dependencies] [dependencies]
libc = "0.2" libc = "0.2"
ffi = { package = "gstreamer-editing-services-sys", path = "sys"} gstreamer-editing-services-sys.workspace = true
glib.workspace = true glib.workspace = true
gio.workspace = true gio.workspace = true
gst.workspace = true gst.workspace = true
@ -28,12 +28,12 @@ gir-format-check = "0.1"
serde_json = "1.0" serde_json = "1.0"
[features] [features]
v1_16 = ["gst/v1_16", "gst-base/v1_16", "gst-pbutils/v1_16", "ffi/v1_16"] v1_16 = ["gst/v1_16", "gst-base/v1_16", "gst-pbutils/v1_16", "gstreamer-editing-services-sys/v1_16"]
v1_18 = ["gst/v1_18", "gst-base/v1_18", "gst-pbutils/v1_18", "ffi/v1_18", "v1_16"] v1_18 = ["gst/v1_18", "gst-base/v1_18", "gst-pbutils/v1_18", "gstreamer-editing-services-sys/v1_18", "v1_16"]
v1_20 = ["gst/v1_20", "gst-base/v1_20", "gst-pbutils/v1_20", "ffi/v1_20", "v1_18"] v1_20 = ["gst/v1_20", "gst-base/v1_20", "gst-pbutils/v1_20", "gstreamer-editing-services-sys/v1_20", "v1_18"]
v1_22 = ["gst/v1_22", "gst-base/v1_22", "gst-pbutils/v1_22", "ffi/v1_22", "v1_20"] v1_22 = ["gst/v1_22", "gst-base/v1_22", "gst-pbutils/v1_22", "gstreamer-editing-services-sys/v1_22", "v1_20"]
v1_24 = ["gst/v1_24", "gst-base/v1_24", "gst-pbutils/v1_24", "ffi/v1_24", "v1_22"] v1_24 = ["gst/v1_24", "gst-base/v1_24", "gst-pbutils/v1_24", "gstreamer-editing-services-sys/v1_24", "v1_22"]
v1_26 = ["gst/v1_26", "gst-base/v1_26", "gst-pbutils/v1_26", "ffi/v1_26", "v1_24"] v1_26 = ["gst/v1_26", "gst-base/v1_26", "gst-pbutils/v1_26", "gstreamer-editing-services-sys/v1_26", "v1_24"]
serde = ["dep:serde", "gst/serde", "gst-pbutils/serde"] serde = ["dep:serde", "gst/serde", "gst-pbutils/serde"]
[package.metadata.docs.rs] [package.metadata.docs.rs]

View file

@ -2,6 +2,7 @@
use std::fmt; use std::fmt;
use crate::ffi;
use glib::translate::from_glib; use glib::translate::from_glib;
use gst::prelude::*; use gst::prelude::*;

View file

@ -1,5 +1,5 @@
// Take a look at the license at the top of the repository in the LICENSE file. // Take a look at the license at the top of the repository in the LICENSE file.
use crate::{prelude::*, Formatter}; use crate::{ffi, prelude::*, Formatter};
use gst::glib::translate::*; use gst::glib::translate::*;
mod sealed { mod sealed {

View file

@ -6,13 +6,13 @@
use std::sync::Once; use std::sync::Once;
pub use ffi;
pub use gio; pub use gio;
pub use glib; pub use glib;
use glib::translate::from_glib; use glib::translate::from_glib;
pub use gst; pub use gst;
pub use gst_base; pub use gst_base;
pub use gst_pbutils; pub use gst_pbutils;
pub use gstreamer_editing_services_sys as ffi;
static GES_INIT: Once = Once::new(); static GES_INIT: Once = Once::new();

View file

@ -1,7 +1,6 @@
// Take a look at the license at the top of the repository in the LICENSE file. // Take a look at the license at the top of the repository in the LICENSE file.
use crate::prelude::*; use crate::{ffi, prelude::*, Formatter};
use crate::Formatter;
use glib::{subclass::prelude::*, translate::*}; use glib::{subclass::prelude::*, translate::*};
pub trait FormatterImpl: FormatterImplExt + ObjectImpl + Send + Sync { pub trait FormatterImpl: FormatterImplExt + ObjectImpl + Send + Sync {

View file

@ -18,7 +18,7 @@ rust-version.workspace = true
[dependencies] [dependencies]
libc = "0.2" libc = "0.2"
ffi = { package = "gstreamer-gl-sys", path = "sys" } gstreamer-gl-sys.workspace = true
glib.workspace = true glib.workspace = true
gst.workspace = true gst.workspace = true
gst-base.workspace = true gst-base.workspace = true
@ -32,12 +32,12 @@ serde_json = "1.0"
[features] [features]
default = [] default = []
v1_16 = ["gst/v1_16", "gst-base/v1_16", "gst-video/v1_16", "ffi/v1_16"] v1_16 = ["gst/v1_16", "gst-base/v1_16", "gst-video/v1_16", "gstreamer-gl-sys/v1_16"]
v1_18 = ["gst/v1_18", "gst-base/v1_18", "gst-video/v1_18", "ffi/v1_18", "v1_16"] v1_18 = ["gst/v1_18", "gst-base/v1_18", "gst-video/v1_18", "gstreamer-gl-sys/v1_18", "v1_16"]
v1_20 = ["gst/v1_20", "gst-base/v1_20", "gst-video/v1_20", "ffi/v1_20", "v1_18"] v1_20 = ["gst/v1_20", "gst-base/v1_20", "gst-video/v1_20", "gstreamer-gl-sys/v1_20", "v1_18"]
v1_22 = ["gst/v1_22", "gst-base/v1_22", "gst-video/v1_22", "ffi/v1_22", "v1_20"] v1_22 = ["gst/v1_22", "gst-base/v1_22", "gst-video/v1_22", "gstreamer-gl-sys/v1_22", "v1_20"]
v1_24 = ["gst/v1_24", "gst-base/v1_24", "gst-video/v1_24", "ffi/v1_24", "v1_22"] v1_24 = ["gst/v1_24", "gst-base/v1_24", "gst-video/v1_24", "gstreamer-gl-sys/v1_24", "v1_22"]
v1_26 = ["gst/v1_26", "gst-base/v1_26", "gst-video/v1_26", "ffi/v1_26", "v1_24"] v1_26 = ["gst/v1_26", "gst-base/v1_26", "gst-video/v1_26", "gstreamer-gl-sys/v1_26", "v1_24"]
serde = ["dep:serde", "gst/serde", "gst-video/serde"] serde = ["dep:serde", "gst/serde", "gst-video/serde"]
[package.metadata.docs.rs] [package.metadata.docs.rs]

View file

@ -17,7 +17,7 @@ rust-version.workspace = true
[dependencies] [dependencies]
libc = "0.2" libc = "0.2"
ffi = { package = "gstreamer-gl-egl-sys", path = "sys" } gstreamer-gl-egl-sys.workspace = true
glib.workspace = true glib.workspace = true
gst.workspace = true gst.workspace = true
gst-gl.workspace = true gst-gl.workspace = true
@ -27,12 +27,12 @@ gir-format-check = "0.1"
[features] [features]
default = [] default = []
v1_16 = ["gst/v1_16", "gst-gl/v1_16", "ffi/v1_16"] v1_16 = ["gst/v1_16", "gst-gl/v1_16", "gstreamer-gl-egl-sys/v1_16"]
v1_18 = ["gst/v1_18", "gst-gl/v1_18", "ffi/v1_18", "v1_16"] v1_18 = ["gst/v1_18", "gst-gl/v1_18", "gstreamer-gl-egl-sys/v1_18", "v1_16"]
v1_20 = ["gst/v1_20", "gst-gl/v1_20", "ffi/v1_20", "v1_18"] v1_20 = ["gst/v1_20", "gst-gl/v1_20", "gstreamer-gl-egl-sys/v1_20", "v1_18"]
v1_22 = ["gst/v1_22", "gst-gl/v1_22", "ffi/v1_22", "v1_20"] v1_22 = ["gst/v1_22", "gst-gl/v1_22", "gstreamer-gl-egl-sys/v1_22", "v1_20"]
v1_24 = ["gst/v1_24", "gst-gl/v1_24", "ffi/v1_24", "v1_22"] v1_24 = ["gst/v1_24", "gst-gl/v1_24", "gstreamer-gl-egl-sys/v1_24", "v1_22"]
v1_26 = ["gst/v1_26", "gst-gl/v1_26", "ffi/v1_26", "v1_24"] v1_26 = ["gst/v1_26", "gst-gl/v1_26", "gstreamer-gl-egl-sys/v1_26", "v1_24"]
[package.metadata.docs.rs] [package.metadata.docs.rs]
all-features = true all-features = true

View file

@ -10,7 +10,7 @@ use glib::{ffi::gpointer, translate::*};
use gst_gl::GLDisplayType; use gst_gl::GLDisplayType;
use libc::uintptr_t; use libc::uintptr_t;
use crate::GLDisplayEGL; use crate::{ffi, GLDisplayEGL};
impl GLDisplayEGL { impl GLDisplayEGL {
#[doc(alias = "gst_gl_display_egl_new_with_egl_display")] #[doc(alias = "gst_gl_display_egl_new_with_egl_display")]

View file

@ -9,8 +9,8 @@
#![cfg_attr(docsrs, feature(doc_cfg))] #![cfg_attr(docsrs, feature(doc_cfg))]
#![allow(clippy::missing_safety_doc)] #![allow(clippy::missing_safety_doc)]
pub use ffi;
pub use gst_gl; pub use gst_gl;
pub use gstreamer_gl_egl_sys as ffi;
macro_rules! assert_initialized_main_thread { macro_rules! assert_initialized_main_thread {
() => { () => {

View file

@ -5,7 +5,7 @@ use std::ptr;
use glib::{prelude::*, translate::*}; use glib::{prelude::*, translate::*};
use gst::ContextRef; use gst::ContextRef;
use crate::GLDisplay; use crate::{ffi, GLDisplay};
pub trait ContextGLExt { pub trait ContextGLExt {
#[doc(alias = "get_gl_display")] #[doc(alias = "get_gl_display")]

View file

@ -3,7 +3,7 @@ use std::ptr;
use glib::{object::IsA, translate::*}; use glib::{object::IsA, translate::*};
pub use crate::auto::functions::*; pub use crate::auto::functions::*;
use crate::{GLContext, GLDisplay}; use crate::{ffi, GLContext, GLDisplay};
#[doc(alias = "gst_gl_handle_context_query")] #[doc(alias = "gst_gl_handle_context_query")]
pub fn gl_handle_context_query( pub fn gl_handle_context_query(

View file

@ -2,7 +2,7 @@ use ffi::GstGLBaseMemory;
use glib::{prelude::*, translate::*}; use glib::{prelude::*, translate::*};
use gst::{Memory, MemoryRef}; use gst::{Memory, MemoryRef};
use crate::{GLAllocationParams, GLBaseMemoryAllocator}; use crate::{ffi, GLAllocationParams, GLBaseMemoryAllocator};
gst::memory_object_wrapper!( gst::memory_object_wrapper!(
GLBaseMemory, GLBaseMemory,

View file

@ -3,7 +3,7 @@
use glib::{prelude::*, translate::*}; use glib::{prelude::*, translate::*};
use libc::uintptr_t; use libc::uintptr_t;
use crate::{GLContext, GLDisplay, GLPlatform, GLAPI}; use crate::{ffi, GLContext, GLDisplay, GLPlatform, GLAPI};
impl GLContext { impl GLContext {
pub unsafe fn new_wrapped<T: IsA<GLDisplay>>( pub unsafe fn new_wrapped<T: IsA<GLDisplay>>(

View file

@ -1,4 +1,4 @@
use crate::{GLContext, GLDisplay}; use crate::{ffi, GLContext, GLDisplay};
use glib::prelude::*; use glib::prelude::*;
use glib::translate::*; use glib::translate::*;

View file

@ -1,6 +1,6 @@
use glib::{prelude::*, translate::*}; use glib::{prelude::*, translate::*};
use crate::{GLFramebuffer, GLMemoryRef}; use crate::{ffi, GLFramebuffer, GLMemoryRef};
mod sealed { mod sealed {
pub trait Sealed {} pub trait Sealed {}

View file

@ -2,7 +2,7 @@ use ffi::GstGLMemory;
use glib::translate::*; use glib::translate::*;
use gst::{result_from_gboolean, LoggableError, Memory, MemoryRef, CAT_RUST}; use gst::{result_from_gboolean, LoggableError, Memory, MemoryRef, CAT_RUST};
use crate::{GLBaseMemory, GLBaseMemoryRef, GLFormat, GLTextureTarget}; use crate::{ffi, GLBaseMemory, GLBaseMemoryRef, GLFormat, GLTextureTarget};
gst::memory_object_wrapper!( gst::memory_object_wrapper!(
GLMemory, GLMemory,

View file

@ -2,7 +2,7 @@ use ffi::GstGLMemoryPBO;
use glib::translate::*; use glib::translate::*;
use gst::{Memory, MemoryRef}; use gst::{Memory, MemoryRef};
use crate::{GLBaseMemory, GLBaseMemoryRef, GLMemory, GLMemoryRef}; use crate::{ffi, GLBaseMemory, GLBaseMemoryRef, GLMemory, GLMemoryRef};
gst::memory_object_wrapper!( gst::memory_object_wrapper!(
GLMemoryPBO, GLMemoryPBO,

View file

@ -5,7 +5,7 @@ use std::fmt;
use glib::translate::*; use glib::translate::*;
use gst::prelude::*; use gst::prelude::*;
use crate::GLContext; use crate::{ffi, GLContext};
#[repr(transparent)] #[repr(transparent)]
#[doc(alias = "GstGLSyncMeta")] #[doc(alias = "GstGLSyncMeta")]

View file

@ -2,7 +2,7 @@
use std::{fmt::Debug, marker::PhantomData, mem, ptr}; use std::{fmt::Debug, marker::PhantomData, mem, ptr};
use crate::GLMemoryRef; use crate::{ffi, GLMemoryRef};
use glib::translate::{from_glib, Borrowed, ToGlibPtr}; use glib::translate::{from_glib, Borrowed, ToGlibPtr};
use gst_video::{video_frame::IsVideoFrame, VideoFrameExt}; use gst_video::{video_frame::IsVideoFrame, VideoFrameExt};

View file

@ -4,11 +4,11 @@
#![allow(clippy::missing_safety_doc)] #![allow(clippy::missing_safety_doc)]
#![doc = include_str!("../README.md")] #![doc = include_str!("../README.md")]
pub use ffi;
pub use glib; pub use glib;
pub use gst; pub use gst;
pub use gst_base; pub use gst_base;
pub use gst_video; pub use gst_video;
pub use gstreamer_gl_sys as ffi;
macro_rules! assert_initialized_main_thread { macro_rules! assert_initialized_main_thread {
() => { () => {

View file

@ -3,7 +3,7 @@ use glib::translate::*;
use gst::{ffi::GstCaps, result_from_gboolean, Caps, LoggableError, CAT_RUST}; use gst::{ffi::GstCaps, result_from_gboolean, Caps, LoggableError, CAT_RUST};
use gst_base::subclass::prelude::*; use gst_base::subclass::prelude::*;
use crate::{prelude::*, GLBaseFilter}; use crate::{ffi, prelude::*, GLBaseFilter};
pub trait GLBaseFilterImpl: GLBaseFilterImplExt + BaseTransformImpl { pub trait GLBaseFilterImpl: GLBaseFilterImplExt + BaseTransformImpl {
fn gl_set_caps(&self, incaps: &Caps, outcaps: &Caps) -> Result<(), LoggableError> { fn gl_set_caps(&self, incaps: &Caps, outcaps: &Caps) -> Result<(), LoggableError> {

View file

@ -3,7 +3,7 @@ use glib::translate::*;
use gst::{result_from_gboolean, LoggableError, CAT_RUST}; use gst::{result_from_gboolean, LoggableError, CAT_RUST};
use gst_base::subclass::prelude::*; use gst_base::subclass::prelude::*;
use crate::{prelude::*, GLBaseSrc, GLMemory, GLAPI}; use crate::{ffi, prelude::*, GLBaseSrc, GLMemory, GLAPI};
pub trait GLBaseSrcImpl: GLBaseSrcImplExt + PushSrcImpl { pub trait GLBaseSrcImpl: GLBaseSrcImplExt + PushSrcImpl {
const SUPPORTED_GL_API: GLAPI; const SUPPORTED_GL_API: GLAPI;

View file

@ -5,7 +5,7 @@ use gst::{
}; };
use super::prelude::*; use super::prelude::*;
use crate::{prelude::*, GLFilter, GLMemory}; use crate::{ffi, prelude::*, GLFilter, GLMemory};
#[derive(Copy, Clone, Debug, PartialEq, Eq)] #[derive(Copy, Clone, Debug, PartialEq, Eq)]
pub enum GLFilterMode { pub enum GLFilterMode {

View file

@ -18,7 +18,7 @@ rust-version.workspace = true
[dependencies] [dependencies]
libc = "0.2" libc = "0.2"
ffi = { package = "gstreamer-gl-wayland-sys", path = "sys" } gstreamer-gl-wayland-sys.workspace = true
glib.workspace = true glib.workspace = true
gst.workspace = true gst.workspace = true
gst-gl.workspace = true gst-gl.workspace = true
@ -28,12 +28,12 @@ gir-format-check = "0.1"
[features] [features]
default = [] default = []
v1_16 = ["gst/v1_16", "gst-gl/v1_16", "ffi/v1_16"] v1_16 = ["gst/v1_16", "gst-gl/v1_16", "gstreamer-gl-wayland-sys/v1_16"]
v1_18 = ["gst/v1_18", "gst-gl/v1_18", "ffi/v1_18", "v1_16"] v1_18 = ["gst/v1_18", "gst-gl/v1_18", "gstreamer-gl-wayland-sys/v1_18", "v1_16"]
v1_20 = ["gst/v1_20", "gst-gl/v1_20", "ffi/v1_20", "v1_18"] v1_20 = ["gst/v1_20", "gst-gl/v1_20", "gstreamer-gl-wayland-sys/v1_20", "v1_18"]
v1_22 = ["gst/v1_22", "gst-gl/v1_22", "ffi/v1_22", "v1_20"] v1_22 = ["gst/v1_22", "gst-gl/v1_22", "gstreamer-gl-wayland-sys/v1_22", "v1_20"]
v1_24 = ["gst/v1_24", "gst-gl/v1_24", "ffi/v1_24", "v1_22"] v1_24 = ["gst/v1_24", "gst-gl/v1_24", "gstreamer-gl-wayland-sys/v1_24", "v1_22"]
v1_26 = ["gst/v1_26", "gst-gl/v1_26", "ffi/v1_26", "v1_24"] v1_26 = ["gst/v1_26", "gst-gl/v1_26", "gstreamer-gl-wayland-sys/v1_26", "v1_24"]
[package.metadata.docs.rs] [package.metadata.docs.rs]
all-features = true all-features = true

View file

@ -15,9 +15,9 @@ impl GLDisplayWayland {
pub unsafe fn with_display( pub unsafe fn with_display(
display: uintptr_t, display: uintptr_t,
) -> Result<GLDisplayWayland, glib::error::BoolError> { ) -> Result<GLDisplayWayland, glib::error::BoolError> {
from_glib_full::<_, Option<GLDisplayWayland>>(ffi::gst_gl_display_wayland_new_with_display( from_glib_full::<_, Option<GLDisplayWayland>>(
display as gpointer, crate::ffi::gst_gl_display_wayland_new_with_display(display as gpointer),
)) )
.ok_or_else(|| glib::bool_error!("Failed to create new Wayland GL display")) .ok_or_else(|| glib::bool_error!("Failed to create new Wayland GL display"))
} }
} }

View file

@ -9,8 +9,8 @@
#![cfg_attr(docsrs, feature(doc_cfg))] #![cfg_attr(docsrs, feature(doc_cfg))]
#![allow(clippy::missing_safety_doc)] #![allow(clippy::missing_safety_doc)]
pub use ffi;
pub use gst_gl; pub use gst_gl;
pub use gstreamer_gl_wayland_sys as ffi;
macro_rules! assert_initialized_main_thread { macro_rules! assert_initialized_main_thread {
() => { () => {

View file

@ -18,7 +18,7 @@ rust-version.workspace = true
[dependencies] [dependencies]
libc = "0.2" libc = "0.2"
ffi = { package = "gstreamer-gl-x11-sys", path = "sys" } gstreamer-gl-x11-sys.workspace = true
glib.workspace = true glib.workspace = true
gst.workspace = true gst.workspace = true
gst-gl.workspace = true gst-gl.workspace = true
@ -28,12 +28,12 @@ gir-format-check = "0.1"
[features] [features]
default = [] default = []
v1_16 = ["gst/v1_16", "gst-gl/v1_16", "ffi/v1_16"] v1_16 = ["gst/v1_16", "gst-gl/v1_16", "gstreamer-gl-x11-sys/v1_16"]
v1_18 = ["gst/v1_18", "gst-gl/v1_18", "ffi/v1_18", "v1_16"] v1_18 = ["gst/v1_18", "gst-gl/v1_18", "gstreamer-gl-x11-sys/v1_18", "v1_16"]
v1_20 = ["gst/v1_20", "gst-gl/v1_20", "ffi/v1_20", "v1_18"] v1_20 = ["gst/v1_20", "gst-gl/v1_20", "gstreamer-gl-x11-sys/v1_20", "v1_18"]
v1_22 = ["gst/v1_22", "gst-gl/v1_22", "ffi/v1_22", "v1_20"] v1_22 = ["gst/v1_22", "gst-gl/v1_22", "gstreamer-gl-x11-sys/v1_22", "v1_20"]
v1_24 = ["gst/v1_24", "gst-gl/v1_24", "ffi/v1_24", "v1_22"] v1_24 = ["gst/v1_24", "gst-gl/v1_24", "gstreamer-gl-x11-sys/v1_24", "v1_22"]
v1_26 = ["gst/v1_26", "gst-gl/v1_26", "ffi/v1_26", "v1_24"] v1_26 = ["gst/v1_26", "gst-gl/v1_26", "gstreamer-gl-x11-sys/v1_26", "v1_24"]
[package.metadata.docs.rs] [package.metadata.docs.rs]
all-features = true all-features = true

View file

@ -13,7 +13,7 @@ use crate::GLDisplayX11;
impl GLDisplayX11 { impl GLDisplayX11 {
pub unsafe fn with_display(display: uintptr_t) -> Result<GLDisplayX11, glib::error::BoolError> { pub unsafe fn with_display(display: uintptr_t) -> Result<GLDisplayX11, glib::error::BoolError> {
from_glib_full::<_, Option<GLDisplayX11>>(ffi::gst_gl_display_x11_new_with_display( from_glib_full::<_, Option<GLDisplayX11>>(crate::ffi::gst_gl_display_x11_new_with_display(
display as gpointer, display as gpointer,
)) ))
.ok_or_else(|| glib::bool_error!("Failed to create new X11 GL display")) .ok_or_else(|| glib::bool_error!("Failed to create new X11 GL display"))

View file

@ -9,8 +9,8 @@
#![cfg_attr(docsrs, feature(doc_cfg))] #![cfg_attr(docsrs, feature(doc_cfg))]
#![allow(clippy::missing_safety_doc)] #![allow(clippy::missing_safety_doc)]
pub use ffi;
pub use gst_gl; pub use gst_gl;
pub use gstreamer_gl_x11_sys as ffi;
macro_rules! assert_initialized_main_thread { macro_rules! assert_initialized_main_thread {
() => { () => {

View file

@ -14,7 +14,7 @@ edition.workspace = true
rust-version.workspace = true rust-version.workspace = true
[dependencies] [dependencies]
ffi = { package = "gstreamer-mpegts-sys", path = "sys" } gstreamer-mpegts-sys.workspace = true
glib.workspace = true glib.workspace = true
gst.workspace = true gst.workspace = true
@ -23,12 +23,12 @@ gir-format-check = "0.1"
[features] [features]
default = [] default = []
v1_16 = ["gst/v1_16", "ffi/v1_16"] v1_16 = ["gst/v1_16", "gstreamer-mpegts-sys/v1_16"]
v1_18 = ["gst/v1_18", "ffi/v1_18", "v1_16"] v1_18 = ["gst/v1_18", "gstreamer-mpegts-sys/v1_18", "v1_16"]
v1_20 = ["gst/v1_20", "ffi/v1_20", "v1_18"] v1_20 = ["gst/v1_20", "gstreamer-mpegts-sys/v1_20", "v1_18"]
v1_22 = ["gst/v1_22", "ffi/v1_22", "v1_20"] v1_22 = ["gst/v1_22", "gstreamer-mpegts-sys/v1_22", "v1_20"]
v1_24 = ["gst/v1_24", "ffi/v1_24", "v1_22"] v1_24 = ["gst/v1_24", "gstreamer-mpegts-sys/v1_24", "v1_22"]
v1_26 = ["gst/v1_26", "ffi/v1_26", "v1_24"] v1_26 = ["gst/v1_26", "gstreamer-mpegts-sys/v1_26", "v1_24"]
[package.metadata.docs.rs] [package.metadata.docs.rs]
all-features = true all-features = true

View file

@ -3,9 +3,9 @@
use std::sync::Once; use std::sync::Once;
pub use ffi::*;
pub use glib; pub use glib;
pub use gst; pub use gst;
pub use gstreamer_mpegts_sys as ffi;
static MPEGTS_INIT: Once = Once::new(); static MPEGTS_INIT: Once = Once::new();
@ -14,7 +14,7 @@ macro_rules! assert_initialized_main_thread {
if !gst::INITIALIZED.load(std::sync::atomic::Ordering::SeqCst) { if !gst::INITIALIZED.load(std::sync::atomic::Ordering::SeqCst) {
gst::assert_initialized(); gst::assert_initialized();
} }
crate::MPEGTS_INIT.call_once(|| unsafe { ffi::gst_mpegts_initialize() }); crate::MPEGTS_INIT.call_once(|| unsafe { crate::ffi::gst_mpegts_initialize() });
}; };
} }

View file

@ -14,7 +14,7 @@ edition.workspace = true
rust-version.workspace = true rust-version.workspace = true
[dependencies] [dependencies]
ffi = { package = "gstreamer-net-sys", path = "sys" } gstreamer-net-sys.workspace = true
glib.workspace = true glib.workspace = true
gio.workspace = true gio.workspace = true
gst.workspace = true gst.workspace = true
@ -24,12 +24,12 @@ gir-format-check = "0.1"
[features] [features]
default = [] default = []
v1_16 = ["gst/v1_16", "ffi/v1_16"] v1_16 = ["gst/v1_16", "gstreamer-net-sys/v1_16"]
v1_18 = ["gst/v1_18", "ffi/v1_18", "v1_16"] v1_18 = ["gst/v1_18", "gstreamer-net-sys/v1_18", "v1_16"]
v1_20 = ["gst/v1_20", "ffi/v1_20", "v1_18"] v1_20 = ["gst/v1_20", "gstreamer-net-sys/v1_20", "v1_18"]
v1_22 = ["gst/v1_22", "ffi/v1_22", "v1_20"] v1_22 = ["gst/v1_22", "gstreamer-net-sys/v1_22", "v1_20"]
v1_24 = ["gst/v1_24", "ffi/v1_24", "v1_22"] v1_24 = ["gst/v1_24", "gstreamer-net-sys/v1_24", "v1_22"]
v1_26 = ["gst/v1_26", "ffi/v1_26", "v1_24"] v1_26 = ["gst/v1_26", "gstreamer-net-sys/v1_26", "v1_24"]
[package.metadata.docs.rs] [package.metadata.docs.rs]
all-features = true all-features = true

Some files were not shown because too many files have changed in this diff Show more