Regenerate with latest gir

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1292>
This commit is contained in:
Bilal Elmoussaoui 2023-07-05 20:20:29 +02:00 committed by Sebastian Dröge
parent 617652dce0
commit 2740c38cdd
208 changed files with 3274 additions and 8016 deletions

View file

@ -21,6 +21,11 @@ impl PhysMemoryAllocator {
unsafe impl Send for PhysMemoryAllocator {}
unsafe impl Sync for PhysMemoryAllocator {}
pub trait PhysMemoryAllocatorExt: 'static {}
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::PhysMemoryAllocator>> Sealed for T {}
}
pub trait PhysMemoryAllocatorExt: IsA<PhysMemoryAllocator> + sealed::Sealed + 'static {}
impl<O: IsA<PhysMemoryAllocator>> PhysMemoryAllocatorExt for O {}

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -3,7 +3,7 @@
// from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git)
// DO NOT EDIT
#![cfg(target_os = "linux")]
#![cfg(unix)]
use gstreamer_allocators_sys::*;
use std::env;

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -3,7 +3,7 @@
// from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git)
// DO NOT EDIT
#![cfg(target_os = "linux")]
#![cfg(unix)]
use gstreamer_app_sys::*;
use std::env;

View file

@ -26,65 +26,38 @@ impl AudioAggregator {
unsafe impl Send for AudioAggregator {}
unsafe impl Sync for AudioAggregator {}
pub trait AudioAggregatorExt: 'static {
#[doc(alias = "alignment-threshold")]
fn alignment_threshold(&self) -> u64;
#[doc(alias = "alignment-threshold")]
fn set_alignment_threshold(&self, alignment_threshold: u64);
#[doc(alias = "discont-wait")]
fn discont_wait(&self) -> u64;
#[doc(alias = "discont-wait")]
fn set_discont_wait(&self, discont_wait: u64);
#[doc(alias = "output-buffer-duration")]
fn output_buffer_duration(&self) -> u64;
#[doc(alias = "output-buffer-duration")]
fn set_output_buffer_duration(&self, output_buffer_duration: u64);
#[doc(alias = "alignment-threshold")]
fn connect_alignment_threshold_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "discont-wait")]
fn connect_discont_wait_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "output-buffer-duration")]
fn connect_output_buffer_duration_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::AudioAggregator>> Sealed for T {}
}
impl<O: IsA<AudioAggregator>> AudioAggregatorExt for O {
pub trait AudioAggregatorExt: IsA<AudioAggregator> + sealed::Sealed + 'static {
#[doc(alias = "alignment-threshold")]
fn alignment_threshold(&self) -> u64 {
glib::ObjectExt::property(self.as_ref(), "alignment-threshold")
}
#[doc(alias = "alignment-threshold")]
fn set_alignment_threshold(&self, alignment_threshold: u64) {
glib::ObjectExt::set_property(self.as_ref(), "alignment-threshold", alignment_threshold)
}
#[doc(alias = "discont-wait")]
fn discont_wait(&self) -> u64 {
glib::ObjectExt::property(self.as_ref(), "discont-wait")
}
#[doc(alias = "discont-wait")]
fn set_discont_wait(&self, discont_wait: u64) {
glib::ObjectExt::set_property(self.as_ref(), "discont-wait", discont_wait)
}
#[doc(alias = "output-buffer-duration")]
fn output_buffer_duration(&self) -> u64 {
glib::ObjectExt::property(self.as_ref(), "output-buffer-duration")
}
#[doc(alias = "output-buffer-duration")]
fn set_output_buffer_duration(&self, output_buffer_duration: u64) {
glib::ObjectExt::set_property(
self.as_ref(),
@ -93,6 +66,7 @@ impl<O: IsA<AudioAggregator>> AudioAggregatorExt for O {
)
}
#[doc(alias = "alignment-threshold")]
fn connect_alignment_threshold_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -121,6 +95,7 @@ impl<O: IsA<AudioAggregator>> AudioAggregatorExt for O {
}
}
#[doc(alias = "discont-wait")]
fn connect_discont_wait_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -149,6 +124,7 @@ impl<O: IsA<AudioAggregator>> AudioAggregatorExt for O {
}
}
#[doc(alias = "output-buffer-duration")]
fn connect_output_buffer_duration_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -177,3 +153,5 @@ impl<O: IsA<AudioAggregator>> AudioAggregatorExt for O {
}
}
}
impl<O: IsA<AudioAggregator>> AudioAggregatorExt for O {}

View file

@ -27,29 +27,25 @@ impl AudioAggregatorConvertPad {
unsafe impl Send for AudioAggregatorConvertPad {}
unsafe impl Sync for AudioAggregatorConvertPad {}
pub trait AudioAggregatorConvertPadExt: 'static {
//#[doc(alias = "converter-config")]
//fn converter_config(&self) -> /*Ignored*/Option<gst::Structure>;
//#[doc(alias = "converter-config")]
//fn set_converter_config(&self, converter_config: /*Ignored*/Option<&gst::Structure>);
#[doc(alias = "converter-config")]
fn connect_converter_config_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::AudioAggregatorConvertPad>> Sealed for T {}
}
impl<O: IsA<AudioAggregatorConvertPad>> AudioAggregatorConvertPadExt for O {
pub trait AudioAggregatorConvertPadExt:
IsA<AudioAggregatorConvertPad> + sealed::Sealed + 'static
{
//#[doc(alias = "converter-config")]
//fn converter_config(&self) -> /*Ignored*/Option<gst::Structure> {
// glib::ObjectExt::property(self.as_ref(), "converter-config")
//}
//#[doc(alias = "converter-config")]
//fn set_converter_config(&self, converter_config: /*Ignored*/Option<&gst::Structure>) {
// glib::ObjectExt::set_property(self.as_ref(),"converter-config", converter_config)
//}
#[doc(alias = "converter-config")]
fn connect_converter_config_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -78,3 +74,5 @@ impl<O: IsA<AudioAggregatorConvertPad>> AudioAggregatorConvertPadExt for O {
}
}
}
impl<O: IsA<AudioAggregatorConvertPad>> AudioAggregatorConvertPadExt for O {}

View file

@ -30,41 +30,29 @@ impl AudioAggregatorPad {
unsafe impl Send for AudioAggregatorPad {}
unsafe impl Sync for AudioAggregatorPad {}
pub trait AudioAggregatorPadExt: 'static {
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
#[doc(alias = "qos-messages")]
fn is_qos_messages(&self) -> bool;
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
#[doc(alias = "qos-messages")]
fn set_qos_messages(&self, qos_messages: bool);
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
#[doc(alias = "qos-messages")]
fn connect_qos_messages_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::AudioAggregatorPad>> Sealed for T {}
}
impl<O: IsA<AudioAggregatorPad>> AudioAggregatorPadExt for O {
pub trait AudioAggregatorPadExt: IsA<AudioAggregatorPad> + sealed::Sealed + 'static {
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
#[doc(alias = "qos-messages")]
fn is_qos_messages(&self) -> bool {
glib::ObjectExt::property(self.as_ref(), "qos-messages")
}
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
#[doc(alias = "qos-messages")]
fn set_qos_messages(&self, qos_messages: bool) {
glib::ObjectExt::set_property(self.as_ref(), "qos-messages", qos_messages)
}
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
#[doc(alias = "qos-messages")]
fn connect_qos_messages_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -93,3 +81,5 @@ impl<O: IsA<AudioAggregatorPad>> AudioAggregatorPadExt for O {
}
}
}
impl<O: IsA<AudioAggregatorPad>> AudioAggregatorPadExt for O {}

View file

@ -26,123 +26,19 @@ impl AudioBaseSink {
unsafe impl Send for AudioBaseSink {}
unsafe impl Sync for AudioBaseSink {}
pub trait AudioBaseSinkExt: 'static {
//#[doc(alias = "gst_audio_base_sink_create_ringbuffer")]
//fn create_ringbuffer(&self) -> /*Ignored*/Option<AudioRingBuffer>;
#[doc(alias = "gst_audio_base_sink_get_alignment_threshold")]
#[doc(alias = "get_alignment_threshold")]
fn alignment_threshold(&self) -> gst::ClockTime;
#[doc(alias = "gst_audio_base_sink_get_discont_wait")]
#[doc(alias = "get_discont_wait")]
fn discont_wait(&self) -> gst::ClockTime;
#[doc(alias = "gst_audio_base_sink_get_drift_tolerance")]
#[doc(alias = "get_drift_tolerance")]
fn drift_tolerance(&self) -> i64;
#[doc(alias = "gst_audio_base_sink_get_provide_clock")]
#[doc(alias = "get_provide_clock")]
fn is_provide_clock(&self) -> bool;
//#[doc(alias = "gst_audio_base_sink_get_slave_method")]
//#[doc(alias = "get_slave_method")]
//fn slave_method(&self) -> /*Ignored*/AudioBaseSinkSlaveMethod;
#[doc(alias = "gst_audio_base_sink_report_device_failure")]
fn report_device_failure(&self);
#[doc(alias = "gst_audio_base_sink_set_alignment_threshold")]
fn set_alignment_threshold(&self, alignment_threshold: gst::ClockTime);
//#[doc(alias = "gst_audio_base_sink_set_custom_slaving_callback")]
//fn set_custom_slaving_callback(&self, callback: /*Unimplemented*/Fn(&AudioBaseSink, impl Into<Option<gst::ClockTime>>, impl Into<Option<gst::ClockTime>>, gst::ClockTimeDiff, /*Ignored*/AudioBaseSinkDiscontReason), user_data: /*Unimplemented*/Option<Basic: Pointer>);
#[doc(alias = "gst_audio_base_sink_set_discont_wait")]
fn set_discont_wait(&self, discont_wait: gst::ClockTime);
#[doc(alias = "gst_audio_base_sink_set_drift_tolerance")]
fn set_drift_tolerance(&self, drift_tolerance: i64);
#[doc(alias = "gst_audio_base_sink_set_provide_clock")]
fn set_provide_clock(&self, provide: bool);
//#[doc(alias = "gst_audio_base_sink_set_slave_method")]
//fn set_slave_method(&self, method: /*Ignored*/AudioBaseSinkSlaveMethod);
#[doc(alias = "buffer-time")]
fn buffer_time(&self) -> i64;
#[doc(alias = "buffer-time")]
fn set_buffer_time(&self, buffer_time: i64);
#[doc(alias = "can-activate-pull")]
fn can_activate_pull(&self) -> bool;
#[doc(alias = "can-activate-pull")]
fn set_can_activate_pull(&self, can_activate_pull: bool);
#[doc(alias = "latency-time")]
fn latency_time(&self) -> i64;
#[doc(alias = "latency-time")]
fn set_latency_time(&self, latency_time: i64);
#[doc(alias = "alignment-threshold")]
fn connect_alignment_threshold_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "buffer-time")]
fn connect_buffer_time_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "can-activate-pull")]
fn connect_can_activate_pull_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "discont-wait")]
fn connect_discont_wait_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "drift-tolerance")]
fn connect_drift_tolerance_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "latency-time")]
fn connect_latency_time_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "provide-clock")]
fn connect_provide_clock_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "slave-method")]
fn connect_slave_method_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::AudioBaseSink>> Sealed for T {}
}
impl<O: IsA<AudioBaseSink>> AudioBaseSinkExt for O {
pub trait AudioBaseSinkExt: IsA<AudioBaseSink> + sealed::Sealed + 'static {
//#[doc(alias = "gst_audio_base_sink_create_ringbuffer")]
//fn create_ringbuffer(&self) -> /*Ignored*/Option<AudioRingBuffer> {
// unsafe { TODO: call ffi:gst_audio_base_sink_create_ringbuffer() }
//}
#[doc(alias = "gst_audio_base_sink_get_alignment_threshold")]
#[doc(alias = "get_alignment_threshold")]
fn alignment_threshold(&self) -> gst::ClockTime {
unsafe {
try_from_glib(ffi::gst_audio_base_sink_get_alignment_threshold(
@ -152,6 +48,8 @@ impl<O: IsA<AudioBaseSink>> AudioBaseSinkExt for O {
}
}
#[doc(alias = "gst_audio_base_sink_get_discont_wait")]
#[doc(alias = "get_discont_wait")]
fn discont_wait(&self) -> gst::ClockTime {
unsafe {
try_from_glib(ffi::gst_audio_base_sink_get_discont_wait(
@ -161,10 +59,14 @@ impl<O: IsA<AudioBaseSink>> AudioBaseSinkExt for O {
}
}
#[doc(alias = "gst_audio_base_sink_get_drift_tolerance")]
#[doc(alias = "get_drift_tolerance")]
fn drift_tolerance(&self) -> i64 {
unsafe { ffi::gst_audio_base_sink_get_drift_tolerance(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "gst_audio_base_sink_get_provide_clock")]
#[doc(alias = "get_provide_clock")]
fn is_provide_clock(&self) -> bool {
unsafe {
from_glib(ffi::gst_audio_base_sink_get_provide_clock(
@ -173,16 +75,20 @@ impl<O: IsA<AudioBaseSink>> AudioBaseSinkExt for O {
}
}
//#[doc(alias = "gst_audio_base_sink_get_slave_method")]
//#[doc(alias = "get_slave_method")]
//fn slave_method(&self) -> /*Ignored*/AudioBaseSinkSlaveMethod {
// unsafe { TODO: call ffi:gst_audio_base_sink_get_slave_method() }
//}
#[doc(alias = "gst_audio_base_sink_report_device_failure")]
fn report_device_failure(&self) {
unsafe {
ffi::gst_audio_base_sink_report_device_failure(self.as_ref().to_glib_none().0);
}
}
#[doc(alias = "gst_audio_base_sink_set_alignment_threshold")]
fn set_alignment_threshold(&self, alignment_threshold: gst::ClockTime) {
unsafe {
ffi::gst_audio_base_sink_set_alignment_threshold(
@ -192,10 +98,12 @@ impl<O: IsA<AudioBaseSink>> AudioBaseSinkExt for O {
}
}
//#[doc(alias = "gst_audio_base_sink_set_custom_slaving_callback")]
//fn set_custom_slaving_callback(&self, callback: /*Unimplemented*/Fn(&AudioBaseSink, impl Into<Option<gst::ClockTime>>, impl Into<Option<gst::ClockTime>>, gst::ClockTimeDiff, /*Ignored*/AudioBaseSinkDiscontReason), user_data: /*Unimplemented*/Option<Basic: Pointer>) {
// unsafe { TODO: call ffi:gst_audio_base_sink_set_custom_slaving_callback() }
//}
#[doc(alias = "gst_audio_base_sink_set_discont_wait")]
fn set_discont_wait(&self, discont_wait: gst::ClockTime) {
unsafe {
ffi::gst_audio_base_sink_set_discont_wait(
@ -205,6 +113,7 @@ impl<O: IsA<AudioBaseSink>> AudioBaseSinkExt for O {
}
}
#[doc(alias = "gst_audio_base_sink_set_drift_tolerance")]
fn set_drift_tolerance(&self, drift_tolerance: i64) {
unsafe {
ffi::gst_audio_base_sink_set_drift_tolerance(
@ -214,6 +123,7 @@ impl<O: IsA<AudioBaseSink>> AudioBaseSinkExt for O {
}
}
#[doc(alias = "gst_audio_base_sink_set_provide_clock")]
fn set_provide_clock(&self, provide: bool) {
unsafe {
ffi::gst_audio_base_sink_set_provide_clock(
@ -223,34 +133,42 @@ impl<O: IsA<AudioBaseSink>> AudioBaseSinkExt for O {
}
}
//#[doc(alias = "gst_audio_base_sink_set_slave_method")]
//fn set_slave_method(&self, method: /*Ignored*/AudioBaseSinkSlaveMethod) {
// unsafe { TODO: call ffi:gst_audio_base_sink_set_slave_method() }
//}
#[doc(alias = "buffer-time")]
fn buffer_time(&self) -> i64 {
glib::ObjectExt::property(self.as_ref(), "buffer-time")
}
#[doc(alias = "buffer-time")]
fn set_buffer_time(&self, buffer_time: i64) {
glib::ObjectExt::set_property(self.as_ref(), "buffer-time", buffer_time)
}
#[doc(alias = "can-activate-pull")]
fn can_activate_pull(&self) -> bool {
glib::ObjectExt::property(self.as_ref(), "can-activate-pull")
}
#[doc(alias = "can-activate-pull")]
fn set_can_activate_pull(&self, can_activate_pull: bool) {
glib::ObjectExt::set_property(self.as_ref(), "can-activate-pull", can_activate_pull)
}
#[doc(alias = "latency-time")]
fn latency_time(&self) -> i64 {
glib::ObjectExt::property(self.as_ref(), "latency-time")
}
#[doc(alias = "latency-time")]
fn set_latency_time(&self, latency_time: i64) {
glib::ObjectExt::set_property(self.as_ref(), "latency-time", latency_time)
}
#[doc(alias = "alignment-threshold")]
fn connect_alignment_threshold_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -279,6 +197,7 @@ impl<O: IsA<AudioBaseSink>> AudioBaseSinkExt for O {
}
}
#[doc(alias = "buffer-time")]
fn connect_buffer_time_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -307,6 +226,7 @@ impl<O: IsA<AudioBaseSink>> AudioBaseSinkExt for O {
}
}
#[doc(alias = "can-activate-pull")]
fn connect_can_activate_pull_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -335,6 +255,7 @@ impl<O: IsA<AudioBaseSink>> AudioBaseSinkExt for O {
}
}
#[doc(alias = "discont-wait")]
fn connect_discont_wait_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -363,6 +284,7 @@ impl<O: IsA<AudioBaseSink>> AudioBaseSinkExt for O {
}
}
#[doc(alias = "drift-tolerance")]
fn connect_drift_tolerance_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -391,6 +313,7 @@ impl<O: IsA<AudioBaseSink>> AudioBaseSinkExt for O {
}
}
#[doc(alias = "latency-time")]
fn connect_latency_time_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -419,6 +342,7 @@ impl<O: IsA<AudioBaseSink>> AudioBaseSinkExt for O {
}
}
#[doc(alias = "provide-clock")]
fn connect_provide_clock_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -447,6 +371,7 @@ impl<O: IsA<AudioBaseSink>> AudioBaseSinkExt for O {
}
}
#[doc(alias = "slave-method")]
fn connect_slave_method_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -475,3 +400,5 @@ impl<O: IsA<AudioBaseSink>> AudioBaseSinkExt for O {
}
}
}
impl<O: IsA<AudioBaseSink>> AudioBaseSinkExt for O {}

View file

@ -26,84 +26,19 @@ impl AudioBaseSrc {
unsafe impl Send for AudioBaseSrc {}
unsafe impl Sync for AudioBaseSrc {}
pub trait AudioBaseSrcExt: 'static {
//#[doc(alias = "gst_audio_base_src_create_ringbuffer")]
//fn create_ringbuffer(&self) -> /*Ignored*/Option<AudioRingBuffer>;
#[doc(alias = "gst_audio_base_src_get_provide_clock")]
#[doc(alias = "get_provide_clock")]
fn is_provide_clock(&self) -> bool;
//#[doc(alias = "gst_audio_base_src_get_slave_method")]
//#[doc(alias = "get_slave_method")]
//fn slave_method(&self) -> /*Ignored*/AudioBaseSrcSlaveMethod;
#[doc(alias = "gst_audio_base_src_set_provide_clock")]
fn set_provide_clock(&self, provide: bool);
//#[doc(alias = "gst_audio_base_src_set_slave_method")]
//fn set_slave_method(&self, method: /*Ignored*/AudioBaseSrcSlaveMethod);
#[doc(alias = "actual-buffer-time")]
fn actual_buffer_time(&self) -> i64;
#[doc(alias = "actual-latency-time")]
fn actual_latency_time(&self) -> i64;
#[doc(alias = "buffer-time")]
fn buffer_time(&self) -> i64;
#[doc(alias = "buffer-time")]
fn set_buffer_time(&self, buffer_time: i64);
#[doc(alias = "latency-time")]
fn latency_time(&self) -> i64;
#[doc(alias = "latency-time")]
fn set_latency_time(&self, latency_time: i64);
#[doc(alias = "actual-buffer-time")]
fn connect_actual_buffer_time_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "actual-latency-time")]
fn connect_actual_latency_time_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "buffer-time")]
fn connect_buffer_time_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "latency-time")]
fn connect_latency_time_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "provide-clock")]
fn connect_provide_clock_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "slave-method")]
fn connect_slave_method_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::AudioBaseSrc>> Sealed for T {}
}
impl<O: IsA<AudioBaseSrc>> AudioBaseSrcExt for O {
pub trait AudioBaseSrcExt: IsA<AudioBaseSrc> + sealed::Sealed + 'static {
//#[doc(alias = "gst_audio_base_src_create_ringbuffer")]
//fn create_ringbuffer(&self) -> /*Ignored*/Option<AudioRingBuffer> {
// unsafe { TODO: call ffi:gst_audio_base_src_create_ringbuffer() }
//}
#[doc(alias = "gst_audio_base_src_get_provide_clock")]
#[doc(alias = "get_provide_clock")]
fn is_provide_clock(&self) -> bool {
unsafe {
from_glib(ffi::gst_audio_base_src_get_provide_clock(
@ -112,10 +47,13 @@ impl<O: IsA<AudioBaseSrc>> AudioBaseSrcExt for O {
}
}
//#[doc(alias = "gst_audio_base_src_get_slave_method")]
//#[doc(alias = "get_slave_method")]
//fn slave_method(&self) -> /*Ignored*/AudioBaseSrcSlaveMethod {
// unsafe { TODO: call ffi:gst_audio_base_src_get_slave_method() }
//}
#[doc(alias = "gst_audio_base_src_set_provide_clock")]
fn set_provide_clock(&self, provide: bool) {
unsafe {
ffi::gst_audio_base_src_set_provide_clock(
@ -125,34 +63,42 @@ impl<O: IsA<AudioBaseSrc>> AudioBaseSrcExt for O {
}
}
//#[doc(alias = "gst_audio_base_src_set_slave_method")]
//fn set_slave_method(&self, method: /*Ignored*/AudioBaseSrcSlaveMethod) {
// unsafe { TODO: call ffi:gst_audio_base_src_set_slave_method() }
//}
#[doc(alias = "actual-buffer-time")]
fn actual_buffer_time(&self) -> i64 {
glib::ObjectExt::property(self.as_ref(), "actual-buffer-time")
}
#[doc(alias = "actual-latency-time")]
fn actual_latency_time(&self) -> i64 {
glib::ObjectExt::property(self.as_ref(), "actual-latency-time")
}
#[doc(alias = "buffer-time")]
fn buffer_time(&self) -> i64 {
glib::ObjectExt::property(self.as_ref(), "buffer-time")
}
#[doc(alias = "buffer-time")]
fn set_buffer_time(&self, buffer_time: i64) {
glib::ObjectExt::set_property(self.as_ref(), "buffer-time", buffer_time)
}
#[doc(alias = "latency-time")]
fn latency_time(&self) -> i64 {
glib::ObjectExt::property(self.as_ref(), "latency-time")
}
#[doc(alias = "latency-time")]
fn set_latency_time(&self, latency_time: i64) {
glib::ObjectExt::set_property(self.as_ref(), "latency-time", latency_time)
}
#[doc(alias = "actual-buffer-time")]
fn connect_actual_buffer_time_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -181,6 +127,7 @@ impl<O: IsA<AudioBaseSrc>> AudioBaseSrcExt for O {
}
}
#[doc(alias = "actual-latency-time")]
fn connect_actual_latency_time_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -209,6 +156,7 @@ impl<O: IsA<AudioBaseSrc>> AudioBaseSrcExt for O {
}
}
#[doc(alias = "buffer-time")]
fn connect_buffer_time_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -237,6 +185,7 @@ impl<O: IsA<AudioBaseSrc>> AudioBaseSrcExt for O {
}
}
#[doc(alias = "latency-time")]
fn connect_latency_time_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -265,6 +214,7 @@ impl<O: IsA<AudioBaseSrc>> AudioBaseSrcExt for O {
}
}
#[doc(alias = "provide-clock")]
fn connect_provide_clock_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -293,6 +243,7 @@ impl<O: IsA<AudioBaseSrc>> AudioBaseSrcExt for O {
}
}
#[doc(alias = "slave-method")]
fn connect_slave_method_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -321,3 +272,5 @@ impl<O: IsA<AudioBaseSrc>> AudioBaseSrcExt for O {
}
}
}
impl<O: IsA<AudioBaseSrc>> AudioBaseSrcExt for O {}

View file

@ -27,135 +27,13 @@ impl AudioDecoder {
unsafe impl Send for AudioDecoder {}
unsafe impl Sync for AudioDecoder {}
pub trait AudioDecoderExt: 'static {
#[doc(alias = "gst_audio_decoder_allocate_output_buffer")]
fn allocate_output_buffer(&self, size: usize) -> gst::Buffer;
#[doc(alias = "gst_audio_decoder_finish_frame")]
fn finish_frame(
&self,
buf: Option<gst::Buffer>,
frames: i32,
) -> Result<gst::FlowSuccess, gst::FlowError>;
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "gst_audio_decoder_finish_subframe")]
fn finish_subframe(&self, buf: Option<gst::Buffer>)
-> Result<gst::FlowSuccess, gst::FlowError>;
#[doc(alias = "gst_audio_decoder_get_audio_info")]
#[doc(alias = "get_audio_info")]
fn audio_info(&self) -> AudioInfo;
#[doc(alias = "gst_audio_decoder_get_delay")]
#[doc(alias = "get_delay")]
fn delay(&self) -> i32;
#[doc(alias = "gst_audio_decoder_get_drainable")]
#[doc(alias = "get_drainable")]
fn is_drainable(&self) -> bool;
#[doc(alias = "gst_audio_decoder_get_estimate_rate")]
#[doc(alias = "get_estimate_rate")]
fn estimate_rate(&self) -> i32;
#[doc(alias = "gst_audio_decoder_get_latency")]
#[doc(alias = "get_latency")]
fn latency(&self) -> (gst::ClockTime, Option<gst::ClockTime>);
#[doc(alias = "gst_audio_decoder_get_max_errors")]
#[doc(alias = "get_max_errors")]
fn max_errors(&self) -> i32;
#[doc(alias = "gst_audio_decoder_get_min_latency")]
#[doc(alias = "get_min_latency")]
fn min_latency(&self) -> gst::ClockTime;
#[doc(alias = "gst_audio_decoder_get_needs_format")]
#[doc(alias = "get_needs_format")]
fn needs_format(&self) -> bool;
#[doc(alias = "gst_audio_decoder_get_parse_state")]
#[doc(alias = "get_parse_state")]
fn parse_state(&self) -> (bool, bool);
#[doc(alias = "gst_audio_decoder_get_plc")]
#[doc(alias = "get_plc")]
fn is_plc(&self) -> bool;
#[doc(alias = "gst_audio_decoder_get_plc_aware")]
#[doc(alias = "get_plc_aware")]
fn plc_aware(&self) -> i32;
#[doc(alias = "gst_audio_decoder_get_tolerance")]
#[doc(alias = "get_tolerance")]
fn tolerance(&self) -> gst::ClockTime;
#[doc(alias = "gst_audio_decoder_merge_tags")]
fn merge_tags(&self, tags: Option<&gst::TagList>, mode: gst::TagMergeMode);
#[doc(alias = "gst_audio_decoder_proxy_getcaps")]
fn proxy_getcaps(&self, caps: Option<&gst::Caps>, filter: Option<&gst::Caps>) -> gst::Caps;
#[doc(alias = "gst_audio_decoder_set_allocation_caps")]
fn set_allocation_caps(&self, allocation_caps: Option<&gst::Caps>);
#[doc(alias = "gst_audio_decoder_set_drainable")]
fn set_drainable(&self, enabled: bool);
#[doc(alias = "gst_audio_decoder_set_estimate_rate")]
fn set_estimate_rate(&self, enabled: bool);
#[doc(alias = "gst_audio_decoder_set_latency")]
fn set_latency(&self, min: gst::ClockTime, max: impl Into<Option<gst::ClockTime>>);
#[doc(alias = "gst_audio_decoder_set_max_errors")]
fn set_max_errors(&self, num: i32);
#[doc(alias = "gst_audio_decoder_set_min_latency")]
fn set_min_latency(&self, num: gst::ClockTime);
#[doc(alias = "gst_audio_decoder_set_needs_format")]
fn set_needs_format(&self, enabled: bool);
#[doc(alias = "gst_audio_decoder_set_plc")]
fn set_plc(&self, enabled: bool);
#[doc(alias = "gst_audio_decoder_set_plc_aware")]
fn set_plc_aware(&self, plc: bool);
#[doc(alias = "gst_audio_decoder_set_tolerance")]
fn set_tolerance(&self, tolerance: gst::ClockTime);
#[doc(alias = "gst_audio_decoder_set_use_default_pad_acceptcaps")]
fn set_use_default_pad_acceptcaps(&self, use_: bool);
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "max-errors")]
fn connect_max_errors_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "min-latency")]
fn connect_min_latency_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "plc")]
fn connect_plc_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "tolerance")]
fn connect_tolerance_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::AudioDecoder>> Sealed for T {}
}
impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
pub trait AudioDecoderExt: IsA<AudioDecoder> + sealed::Sealed + 'static {
#[doc(alias = "gst_audio_decoder_allocate_output_buffer")]
fn allocate_output_buffer(&self, size: usize) -> gst::Buffer {
unsafe {
from_glib_full(ffi::gst_audio_decoder_allocate_output_buffer(
@ -165,6 +43,7 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
}
}
#[doc(alias = "gst_audio_decoder_finish_frame")]
fn finish_frame(
&self,
buf: Option<gst::Buffer>,
@ -181,6 +60,7 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "gst_audio_decoder_finish_subframe")]
fn finish_subframe(
&self,
buf: Option<gst::Buffer>,
@ -193,6 +73,8 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
}
}
#[doc(alias = "gst_audio_decoder_get_audio_info")]
#[doc(alias = "get_audio_info")]
fn audio_info(&self) -> AudioInfo {
unsafe {
from_glib_none(ffi::gst_audio_decoder_get_audio_info(
@ -201,10 +83,14 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
}
}
#[doc(alias = "gst_audio_decoder_get_delay")]
#[doc(alias = "get_delay")]
fn delay(&self) -> i32 {
unsafe { ffi::gst_audio_decoder_get_delay(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "gst_audio_decoder_get_drainable")]
#[doc(alias = "get_drainable")]
fn is_drainable(&self) -> bool {
unsafe {
from_glib(ffi::gst_audio_decoder_get_drainable(
@ -213,10 +99,14 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
}
}
#[doc(alias = "gst_audio_decoder_get_estimate_rate")]
#[doc(alias = "get_estimate_rate")]
fn estimate_rate(&self) -> i32 {
unsafe { ffi::gst_audio_decoder_get_estimate_rate(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "gst_audio_decoder_get_latency")]
#[doc(alias = "get_latency")]
fn latency(&self) -> (gst::ClockTime, Option<gst::ClockTime>) {
unsafe {
let mut min = mem::MaybeUninit::uninit();
@ -233,10 +123,14 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
}
}
#[doc(alias = "gst_audio_decoder_get_max_errors")]
#[doc(alias = "get_max_errors")]
fn max_errors(&self) -> i32 {
unsafe { ffi::gst_audio_decoder_get_max_errors(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "gst_audio_decoder_get_min_latency")]
#[doc(alias = "get_min_latency")]
fn min_latency(&self) -> gst::ClockTime {
unsafe {
try_from_glib(ffi::gst_audio_decoder_get_min_latency(
@ -246,6 +140,8 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
}
}
#[doc(alias = "gst_audio_decoder_get_needs_format")]
#[doc(alias = "get_needs_format")]
fn needs_format(&self) -> bool {
unsafe {
from_glib(ffi::gst_audio_decoder_get_needs_format(
@ -254,6 +150,8 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
}
}
#[doc(alias = "gst_audio_decoder_get_parse_state")]
#[doc(alias = "get_parse_state")]
fn parse_state(&self) -> (bool, bool) {
unsafe {
let mut sync = mem::MaybeUninit::uninit();
@ -267,6 +165,8 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
}
}
#[doc(alias = "gst_audio_decoder_get_plc")]
#[doc(alias = "get_plc")]
fn is_plc(&self) -> bool {
unsafe {
from_glib(ffi::gst_audio_decoder_get_plc(
@ -275,10 +175,14 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
}
}
#[doc(alias = "gst_audio_decoder_get_plc_aware")]
#[doc(alias = "get_plc_aware")]
fn plc_aware(&self) -> i32 {
unsafe { ffi::gst_audio_decoder_get_plc_aware(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "gst_audio_decoder_get_tolerance")]
#[doc(alias = "get_tolerance")]
fn tolerance(&self) -> gst::ClockTime {
unsafe {
try_from_glib(ffi::gst_audio_decoder_get_tolerance(
@ -288,6 +192,7 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
}
}
#[doc(alias = "gst_audio_decoder_merge_tags")]
fn merge_tags(&self, tags: Option<&gst::TagList>, mode: gst::TagMergeMode) {
unsafe {
ffi::gst_audio_decoder_merge_tags(
@ -298,6 +203,7 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
}
}
#[doc(alias = "gst_audio_decoder_proxy_getcaps")]
fn proxy_getcaps(&self, caps: Option<&gst::Caps>, filter: Option<&gst::Caps>) -> gst::Caps {
unsafe {
from_glib_full(ffi::gst_audio_decoder_proxy_getcaps(
@ -308,6 +214,7 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
}
}
#[doc(alias = "gst_audio_decoder_set_allocation_caps")]
fn set_allocation_caps(&self, allocation_caps: Option<&gst::Caps>) {
unsafe {
ffi::gst_audio_decoder_set_allocation_caps(
@ -317,6 +224,7 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
}
}
#[doc(alias = "gst_audio_decoder_set_drainable")]
fn set_drainable(&self, enabled: bool) {
unsafe {
ffi::gst_audio_decoder_set_drainable(
@ -326,6 +234,7 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
}
}
#[doc(alias = "gst_audio_decoder_set_estimate_rate")]
fn set_estimate_rate(&self, enabled: bool) {
unsafe {
ffi::gst_audio_decoder_set_estimate_rate(
@ -335,6 +244,7 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
}
}
#[doc(alias = "gst_audio_decoder_set_latency")]
fn set_latency(&self, min: gst::ClockTime, max: impl Into<Option<gst::ClockTime>>) {
unsafe {
ffi::gst_audio_decoder_set_latency(
@ -345,18 +255,21 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
}
}
#[doc(alias = "gst_audio_decoder_set_max_errors")]
fn set_max_errors(&self, num: i32) {
unsafe {
ffi::gst_audio_decoder_set_max_errors(self.as_ref().to_glib_none().0, num);
}
}
#[doc(alias = "gst_audio_decoder_set_min_latency")]
fn set_min_latency(&self, num: gst::ClockTime) {
unsafe {
ffi::gst_audio_decoder_set_min_latency(self.as_ref().to_glib_none().0, num.into_glib());
}
}
#[doc(alias = "gst_audio_decoder_set_needs_format")]
fn set_needs_format(&self, enabled: bool) {
unsafe {
ffi::gst_audio_decoder_set_needs_format(
@ -366,18 +279,21 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
}
}
#[doc(alias = "gst_audio_decoder_set_plc")]
fn set_plc(&self, enabled: bool) {
unsafe {
ffi::gst_audio_decoder_set_plc(self.as_ref().to_glib_none().0, enabled.into_glib());
}
}
#[doc(alias = "gst_audio_decoder_set_plc_aware")]
fn set_plc_aware(&self, plc: bool) {
unsafe {
ffi::gst_audio_decoder_set_plc_aware(self.as_ref().to_glib_none().0, plc.into_glib());
}
}
#[doc(alias = "gst_audio_decoder_set_tolerance")]
fn set_tolerance(&self, tolerance: gst::ClockTime) {
unsafe {
ffi::gst_audio_decoder_set_tolerance(
@ -387,6 +303,7 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
}
}
#[doc(alias = "gst_audio_decoder_set_use_default_pad_acceptcaps")]
fn set_use_default_pad_acceptcaps(&self, use_: bool) {
unsafe {
ffi::gst_audio_decoder_set_use_default_pad_acceptcaps(
@ -398,6 +315,7 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "max-errors")]
fn connect_max_errors_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -426,6 +344,7 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
}
}
#[doc(alias = "min-latency")]
fn connect_min_latency_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -454,6 +373,7 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
}
}
#[doc(alias = "plc")]
fn connect_plc_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_plc_trampoline<
P: IsA<AudioDecoder>,
@ -479,6 +399,7 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
}
}
#[doc(alias = "tolerance")]
fn connect_tolerance_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -507,3 +428,5 @@ impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {
}
}
}
impl<O: IsA<AudioDecoder>> AudioDecoderExt for O {}

View file

@ -27,133 +27,13 @@ impl AudioEncoder {
unsafe impl Send for AudioEncoder {}
unsafe impl Sync for AudioEncoder {}
pub trait AudioEncoderExt: 'static {
#[doc(alias = "gst_audio_encoder_allocate_output_buffer")]
fn allocate_output_buffer(&self, size: usize) -> gst::Buffer;
#[doc(alias = "gst_audio_encoder_finish_frame")]
fn finish_frame(
&self,
buffer: Option<gst::Buffer>,
samples: i32,
) -> Result<gst::FlowSuccess, gst::FlowError>;
#[doc(alias = "gst_audio_encoder_get_audio_info")]
#[doc(alias = "get_audio_info")]
fn audio_info(&self) -> AudioInfo;
#[doc(alias = "gst_audio_encoder_get_drainable")]
#[doc(alias = "get_drainable")]
fn is_drainable(&self) -> bool;
#[doc(alias = "gst_audio_encoder_get_frame_max")]
#[doc(alias = "get_frame_max")]
fn frame_max(&self) -> i32;
#[doc(alias = "gst_audio_encoder_get_frame_samples_max")]
#[doc(alias = "get_frame_samples_max")]
fn frame_samples_max(&self) -> i32;
#[doc(alias = "gst_audio_encoder_get_frame_samples_min")]
#[doc(alias = "get_frame_samples_min")]
fn frame_samples_min(&self) -> i32;
#[doc(alias = "gst_audio_encoder_get_hard_min")]
#[doc(alias = "get_hard_min")]
fn is_hard_min(&self) -> bool;
#[doc(alias = "gst_audio_encoder_get_hard_resync")]
#[doc(alias = "get_hard_resync")]
fn is_hard_resync(&self) -> bool;
#[doc(alias = "gst_audio_encoder_get_latency")]
#[doc(alias = "get_latency")]
fn latency(&self) -> (gst::ClockTime, Option<gst::ClockTime>);
#[doc(alias = "gst_audio_encoder_get_lookahead")]
#[doc(alias = "get_lookahead")]
fn lookahead(&self) -> i32;
#[doc(alias = "gst_audio_encoder_get_mark_granule")]
#[doc(alias = "get_mark_granule")]
fn is_mark_granule(&self) -> bool;
#[doc(alias = "gst_audio_encoder_get_perfect_timestamp")]
#[doc(alias = "get_perfect_timestamp")]
fn is_perfect_timestamp(&self) -> bool;
#[doc(alias = "gst_audio_encoder_get_tolerance")]
#[doc(alias = "get_tolerance")]
fn tolerance(&self) -> gst::ClockTime;
#[doc(alias = "gst_audio_encoder_merge_tags")]
fn merge_tags(&self, tags: Option<&gst::TagList>, mode: gst::TagMergeMode);
#[doc(alias = "gst_audio_encoder_proxy_getcaps")]
fn proxy_getcaps(&self, caps: Option<&gst::Caps>, filter: Option<&gst::Caps>) -> gst::Caps;
#[doc(alias = "gst_audio_encoder_set_allocation_caps")]
fn set_allocation_caps(&self, allocation_caps: Option<&gst::Caps>);
#[doc(alias = "gst_audio_encoder_set_drainable")]
fn set_drainable(&self, enabled: bool);
#[doc(alias = "gst_audio_encoder_set_frame_max")]
fn set_frame_max(&self, num: i32);
#[doc(alias = "gst_audio_encoder_set_frame_samples_max")]
fn set_frame_samples_max(&self, num: i32);
#[doc(alias = "gst_audio_encoder_set_frame_samples_min")]
fn set_frame_samples_min(&self, num: i32);
#[doc(alias = "gst_audio_encoder_set_hard_min")]
fn set_hard_min(&self, enabled: bool);
#[doc(alias = "gst_audio_encoder_set_hard_resync")]
fn set_hard_resync(&self, enabled: bool);
#[doc(alias = "gst_audio_encoder_set_latency")]
fn set_latency(&self, min: gst::ClockTime, max: impl Into<Option<gst::ClockTime>>);
#[doc(alias = "gst_audio_encoder_set_lookahead")]
fn set_lookahead(&self, num: i32);
#[doc(alias = "gst_audio_encoder_set_mark_granule")]
fn set_mark_granule(&self, enabled: bool);
#[doc(alias = "gst_audio_encoder_set_perfect_timestamp")]
fn set_perfect_timestamp(&self, enabled: bool);
#[doc(alias = "gst_audio_encoder_set_tolerance")]
fn set_tolerance(&self, tolerance: gst::ClockTime);
#[doc(alias = "hard-resync")]
fn connect_hard_resync_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "mark-granule")]
fn connect_mark_granule_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "perfect-timestamp")]
fn connect_perfect_timestamp_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "tolerance")]
fn connect_tolerance_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::AudioEncoder>> Sealed for T {}
}
impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
pub trait AudioEncoderExt: IsA<AudioEncoder> + sealed::Sealed + 'static {
#[doc(alias = "gst_audio_encoder_allocate_output_buffer")]
fn allocate_output_buffer(&self, size: usize) -> gst::Buffer {
unsafe {
from_glib_full(ffi::gst_audio_encoder_allocate_output_buffer(
@ -163,6 +43,7 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
#[doc(alias = "gst_audio_encoder_finish_frame")]
fn finish_frame(
&self,
buffer: Option<gst::Buffer>,
@ -177,6 +58,8 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
#[doc(alias = "gst_audio_encoder_get_audio_info")]
#[doc(alias = "get_audio_info")]
fn audio_info(&self) -> AudioInfo {
unsafe {
from_glib_none(ffi::gst_audio_encoder_get_audio_info(
@ -185,6 +68,8 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
#[doc(alias = "gst_audio_encoder_get_drainable")]
#[doc(alias = "get_drainable")]
fn is_drainable(&self) -> bool {
unsafe {
from_glib(ffi::gst_audio_encoder_get_drainable(
@ -193,18 +78,26 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
#[doc(alias = "gst_audio_encoder_get_frame_max")]
#[doc(alias = "get_frame_max")]
fn frame_max(&self) -> i32 {
unsafe { ffi::gst_audio_encoder_get_frame_max(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "gst_audio_encoder_get_frame_samples_max")]
#[doc(alias = "get_frame_samples_max")]
fn frame_samples_max(&self) -> i32 {
unsafe { ffi::gst_audio_encoder_get_frame_samples_max(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "gst_audio_encoder_get_frame_samples_min")]
#[doc(alias = "get_frame_samples_min")]
fn frame_samples_min(&self) -> i32 {
unsafe { ffi::gst_audio_encoder_get_frame_samples_min(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "gst_audio_encoder_get_hard_min")]
#[doc(alias = "get_hard_min")]
fn is_hard_min(&self) -> bool {
unsafe {
from_glib(ffi::gst_audio_encoder_get_hard_min(
@ -213,6 +106,8 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
#[doc(alias = "gst_audio_encoder_get_hard_resync")]
#[doc(alias = "get_hard_resync")]
fn is_hard_resync(&self) -> bool {
unsafe {
from_glib(ffi::gst_audio_encoder_get_hard_resync(
@ -221,6 +116,8 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
#[doc(alias = "gst_audio_encoder_get_latency")]
#[doc(alias = "get_latency")]
fn latency(&self) -> (gst::ClockTime, Option<gst::ClockTime>) {
unsafe {
let mut min = mem::MaybeUninit::uninit();
@ -237,10 +134,14 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
#[doc(alias = "gst_audio_encoder_get_lookahead")]
#[doc(alias = "get_lookahead")]
fn lookahead(&self) -> i32 {
unsafe { ffi::gst_audio_encoder_get_lookahead(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "gst_audio_encoder_get_mark_granule")]
#[doc(alias = "get_mark_granule")]
fn is_mark_granule(&self) -> bool {
unsafe {
from_glib(ffi::gst_audio_encoder_get_mark_granule(
@ -249,6 +150,8 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
#[doc(alias = "gst_audio_encoder_get_perfect_timestamp")]
#[doc(alias = "get_perfect_timestamp")]
fn is_perfect_timestamp(&self) -> bool {
unsafe {
from_glib(ffi::gst_audio_encoder_get_perfect_timestamp(
@ -257,6 +160,8 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
#[doc(alias = "gst_audio_encoder_get_tolerance")]
#[doc(alias = "get_tolerance")]
fn tolerance(&self) -> gst::ClockTime {
unsafe {
try_from_glib(ffi::gst_audio_encoder_get_tolerance(
@ -266,6 +171,7 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
#[doc(alias = "gst_audio_encoder_merge_tags")]
fn merge_tags(&self, tags: Option<&gst::TagList>, mode: gst::TagMergeMode) {
unsafe {
ffi::gst_audio_encoder_merge_tags(
@ -276,6 +182,7 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
#[doc(alias = "gst_audio_encoder_proxy_getcaps")]
fn proxy_getcaps(&self, caps: Option<&gst::Caps>, filter: Option<&gst::Caps>) -> gst::Caps {
unsafe {
from_glib_full(ffi::gst_audio_encoder_proxy_getcaps(
@ -286,6 +193,7 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
#[doc(alias = "gst_audio_encoder_set_allocation_caps")]
fn set_allocation_caps(&self, allocation_caps: Option<&gst::Caps>) {
unsafe {
ffi::gst_audio_encoder_set_allocation_caps(
@ -295,6 +203,7 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
#[doc(alias = "gst_audio_encoder_set_drainable")]
fn set_drainable(&self, enabled: bool) {
unsafe {
ffi::gst_audio_encoder_set_drainable(
@ -304,24 +213,28 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
#[doc(alias = "gst_audio_encoder_set_frame_max")]
fn set_frame_max(&self, num: i32) {
unsafe {
ffi::gst_audio_encoder_set_frame_max(self.as_ref().to_glib_none().0, num);
}
}
#[doc(alias = "gst_audio_encoder_set_frame_samples_max")]
fn set_frame_samples_max(&self, num: i32) {
unsafe {
ffi::gst_audio_encoder_set_frame_samples_max(self.as_ref().to_glib_none().0, num);
}
}
#[doc(alias = "gst_audio_encoder_set_frame_samples_min")]
fn set_frame_samples_min(&self, num: i32) {
unsafe {
ffi::gst_audio_encoder_set_frame_samples_min(self.as_ref().to_glib_none().0, num);
}
}
#[doc(alias = "gst_audio_encoder_set_hard_min")]
fn set_hard_min(&self, enabled: bool) {
unsafe {
ffi::gst_audio_encoder_set_hard_min(
@ -331,6 +244,7 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
#[doc(alias = "gst_audio_encoder_set_hard_resync")]
fn set_hard_resync(&self, enabled: bool) {
unsafe {
ffi::gst_audio_encoder_set_hard_resync(
@ -340,6 +254,7 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
#[doc(alias = "gst_audio_encoder_set_latency")]
fn set_latency(&self, min: gst::ClockTime, max: impl Into<Option<gst::ClockTime>>) {
unsafe {
ffi::gst_audio_encoder_set_latency(
@ -350,12 +265,14 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
#[doc(alias = "gst_audio_encoder_set_lookahead")]
fn set_lookahead(&self, num: i32) {
unsafe {
ffi::gst_audio_encoder_set_lookahead(self.as_ref().to_glib_none().0, num);
}
}
#[doc(alias = "gst_audio_encoder_set_mark_granule")]
fn set_mark_granule(&self, enabled: bool) {
unsafe {
ffi::gst_audio_encoder_set_mark_granule(
@ -365,6 +282,7 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
#[doc(alias = "gst_audio_encoder_set_perfect_timestamp")]
fn set_perfect_timestamp(&self, enabled: bool) {
unsafe {
ffi::gst_audio_encoder_set_perfect_timestamp(
@ -374,6 +292,7 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
#[doc(alias = "gst_audio_encoder_set_tolerance")]
fn set_tolerance(&self, tolerance: gst::ClockTime) {
unsafe {
ffi::gst_audio_encoder_set_tolerance(
@ -383,6 +302,7 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
#[doc(alias = "hard-resync")]
fn connect_hard_resync_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -411,6 +331,7 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
#[doc(alias = "mark-granule")]
fn connect_mark_granule_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -439,6 +360,7 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
#[doc(alias = "perfect-timestamp")]
fn connect_perfect_timestamp_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -467,6 +389,7 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
#[doc(alias = "tolerance")]
fn connect_tolerance_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -495,3 +418,5 @@ impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {
}
}
}
impl<O: IsA<AudioEncoder>> AudioEncoderExt for O {}

View file

@ -33,29 +33,14 @@ impl StreamVolume {
unsafe impl Send for StreamVolume {}
unsafe impl Sync for StreamVolume {}
pub trait StreamVolumeExt: 'static {
#[doc(alias = "gst_stream_volume_get_mute")]
#[doc(alias = "get_mute")]
fn is_muted(&self) -> bool;
#[doc(alias = "gst_stream_volume_get_volume")]
#[doc(alias = "get_volume")]
fn volume(&self, format: StreamVolumeFormat) -> f64;
#[doc(alias = "gst_stream_volume_set_mute")]
fn set_mute(&self, mute: bool);
#[doc(alias = "gst_stream_volume_set_volume")]
fn set_volume(&self, format: StreamVolumeFormat, val: f64);
#[doc(alias = "mute")]
fn connect_mute_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "volume")]
fn connect_volume_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::StreamVolume>> Sealed for T {}
}
impl<O: IsA<StreamVolume>> StreamVolumeExt for O {
pub trait StreamVolumeExt: IsA<StreamVolume> + sealed::Sealed + 'static {
#[doc(alias = "gst_stream_volume_get_mute")]
#[doc(alias = "get_mute")]
fn is_muted(&self) -> bool {
unsafe {
from_glib(ffi::gst_stream_volume_get_mute(
@ -64,18 +49,22 @@ impl<O: IsA<StreamVolume>> StreamVolumeExt for O {
}
}
#[doc(alias = "gst_stream_volume_get_volume")]
#[doc(alias = "get_volume")]
fn volume(&self, format: StreamVolumeFormat) -> f64 {
unsafe {
ffi::gst_stream_volume_get_volume(self.as_ref().to_glib_none().0, format.into_glib())
}
}
#[doc(alias = "gst_stream_volume_set_mute")]
fn set_mute(&self, mute: bool) {
unsafe {
ffi::gst_stream_volume_set_mute(self.as_ref().to_glib_none().0, mute.into_glib());
}
}
#[doc(alias = "gst_stream_volume_set_volume")]
fn set_volume(&self, format: StreamVolumeFormat, val: f64) {
unsafe {
ffi::gst_stream_volume_set_volume(
@ -86,6 +75,7 @@ impl<O: IsA<StreamVolume>> StreamVolumeExt for O {
}
}
#[doc(alias = "mute")]
fn connect_mute_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_mute_trampoline<
P: IsA<StreamVolume>,
@ -111,6 +101,7 @@ impl<O: IsA<StreamVolume>> StreamVolumeExt for O {
}
}
#[doc(alias = "volume")]
fn connect_volume_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_volume_trampoline<
P: IsA<StreamVolume>,
@ -136,3 +127,5 @@ impl<O: IsA<StreamVolume>> StreamVolumeExt for O {
}
}
}
impl<O: IsA<StreamVolume>> StreamVolumeExt for O {}

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -3,7 +3,7 @@
// from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git)
// DO NOT EDIT
#![cfg(target_os = "linux")]
#![cfg(unix)]
use gstreamer_audio_sys::*;
use std::env;

View file

@ -29,127 +29,13 @@ impl Aggregator {
unsafe impl Send for Aggregator {}
unsafe impl Sync for Aggregator {}
pub trait AggregatorExt: 'static {
#[doc(alias = "gst_aggregator_finish_buffer")]
fn finish_buffer(&self, buffer: gst::Buffer) -> Result<gst::FlowSuccess, gst::FlowError>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_aggregator_finish_buffer_list")]
fn finish_buffer_list(
&self,
bufferlist: gst::BufferList,
) -> Result<gst::FlowSuccess, gst::FlowError>;
#[doc(alias = "gst_aggregator_get_buffer_pool")]
#[doc(alias = "get_buffer_pool")]
fn buffer_pool(&self) -> Option<gst::BufferPool>;
#[cfg(feature = "v1_22")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_22")))]
#[doc(alias = "gst_aggregator_get_force_live")]
#[doc(alias = "get_force_live")]
fn is_force_live(&self) -> bool;
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
#[doc(alias = "gst_aggregator_get_ignore_inactive_pads")]
#[doc(alias = "get_ignore_inactive_pads")]
fn ignores_inactive_pads(&self) -> bool;
#[doc(alias = "gst_aggregator_get_latency")]
#[doc(alias = "get_latency")]
fn latency(&self) -> Option<gst::ClockTime>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_aggregator_negotiate")]
fn negotiate(&self) -> bool;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_aggregator_peek_next_sample")]
fn peek_next_sample(&self, pad: &impl IsA<AggregatorPad>) -> Option<gst::Sample>;
#[cfg(feature = "v1_22")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_22")))]
#[doc(alias = "gst_aggregator_set_force_live")]
fn set_force_live(&self, force_live: bool);
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
#[doc(alias = "gst_aggregator_set_ignore_inactive_pads")]
fn set_ignore_inactive_pads(&self, ignore: bool);
#[doc(alias = "gst_aggregator_set_latency")]
fn set_latency(
&self,
min_latency: gst::ClockTime,
max_latency: impl Into<Option<gst::ClockTime>>,
);
#[doc(alias = "gst_aggregator_set_src_caps")]
fn set_src_caps(&self, caps: &gst::Caps);
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "gst_aggregator_simple_get_next_time")]
fn simple_get_next_time(&self) -> Option<gst::ClockTime>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "emit-signals")]
fn emits_signals(&self) -> bool;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "emit-signals")]
fn set_emit_signals(&self, emit_signals: bool);
#[doc(alias = "start-time")]
fn start_time(&self) -> u64;
#[doc(alias = "start-time")]
fn set_start_time(&self, start_time: u64);
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "start-time-selection")]
fn start_time_selection(&self) -> AggregatorStartTimeSelection;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "start-time-selection")]
fn set_start_time_selection(&self, start_time_selection: AggregatorStartTimeSelection);
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "emit-signals")]
fn connect_emit_signals_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "latency")]
fn connect_latency_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F)
-> SignalHandlerId;
#[doc(alias = "start-time")]
fn connect_start_time_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "start-time-selection")]
fn connect_start_time_selection_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::Aggregator>> Sealed for T {}
}
impl<O: IsA<Aggregator>> AggregatorExt for O {
pub trait AggregatorExt: IsA<Aggregator> + sealed::Sealed + 'static {
#[doc(alias = "gst_aggregator_finish_buffer")]
fn finish_buffer(&self, buffer: gst::Buffer) -> Result<gst::FlowSuccess, gst::FlowError> {
unsafe {
try_from_glib(ffi::gst_aggregator_finish_buffer(
@ -161,6 +47,7 @@ impl<O: IsA<Aggregator>> AggregatorExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_aggregator_finish_buffer_list")]
fn finish_buffer_list(
&self,
bufferlist: gst::BufferList,
@ -173,6 +60,8 @@ impl<O: IsA<Aggregator>> AggregatorExt for O {
}
}
#[doc(alias = "gst_aggregator_get_buffer_pool")]
#[doc(alias = "get_buffer_pool")]
fn buffer_pool(&self) -> Option<gst::BufferPool> {
unsafe {
from_glib_full(ffi::gst_aggregator_get_buffer_pool(
@ -183,6 +72,8 @@ impl<O: IsA<Aggregator>> AggregatorExt for O {
#[cfg(feature = "v1_22")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_22")))]
#[doc(alias = "gst_aggregator_get_force_live")]
#[doc(alias = "get_force_live")]
fn is_force_live(&self) -> bool {
unsafe {
from_glib(ffi::gst_aggregator_get_force_live(
@ -193,6 +84,8 @@ impl<O: IsA<Aggregator>> AggregatorExt for O {
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
#[doc(alias = "gst_aggregator_get_ignore_inactive_pads")]
#[doc(alias = "get_ignore_inactive_pads")]
fn ignores_inactive_pads(&self) -> bool {
unsafe {
from_glib(ffi::gst_aggregator_get_ignore_inactive_pads(
@ -201,6 +94,8 @@ impl<O: IsA<Aggregator>> AggregatorExt for O {
}
}
#[doc(alias = "gst_aggregator_get_latency")]
#[doc(alias = "get_latency")]
fn latency(&self) -> Option<gst::ClockTime> {
unsafe {
from_glib(ffi::gst_aggregator_get_latency(
@ -211,6 +106,7 @@ impl<O: IsA<Aggregator>> AggregatorExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_aggregator_negotiate")]
fn negotiate(&self) -> bool {
unsafe {
from_glib(ffi::gst_aggregator_negotiate(
@ -221,6 +117,7 @@ impl<O: IsA<Aggregator>> AggregatorExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_aggregator_peek_next_sample")]
fn peek_next_sample(&self, pad: &impl IsA<AggregatorPad>) -> Option<gst::Sample> {
unsafe {
from_glib_full(ffi::gst_aggregator_peek_next_sample(
@ -232,6 +129,7 @@ impl<O: IsA<Aggregator>> AggregatorExt for O {
#[cfg(feature = "v1_22")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_22")))]
#[doc(alias = "gst_aggregator_set_force_live")]
fn set_force_live(&self, force_live: bool) {
unsafe {
ffi::gst_aggregator_set_force_live(
@ -243,6 +141,7 @@ impl<O: IsA<Aggregator>> AggregatorExt for O {
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
#[doc(alias = "gst_aggregator_set_ignore_inactive_pads")]
fn set_ignore_inactive_pads(&self, ignore: bool) {
unsafe {
ffi::gst_aggregator_set_ignore_inactive_pads(
@ -252,6 +151,7 @@ impl<O: IsA<Aggregator>> AggregatorExt for O {
}
}
#[doc(alias = "gst_aggregator_set_latency")]
fn set_latency(
&self,
min_latency: gst::ClockTime,
@ -266,6 +166,7 @@ impl<O: IsA<Aggregator>> AggregatorExt for O {
}
}
#[doc(alias = "gst_aggregator_set_src_caps")]
fn set_src_caps(&self, caps: &gst::Caps) {
unsafe {
ffi::gst_aggregator_set_src_caps(self.as_ref().to_glib_none().0, caps.to_glib_none().0);
@ -274,6 +175,7 @@ impl<O: IsA<Aggregator>> AggregatorExt for O {
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "gst_aggregator_simple_get_next_time")]
fn simple_get_next_time(&self) -> Option<gst::ClockTime> {
unsafe {
from_glib(ffi::gst_aggregator_simple_get_next_time(
@ -284,38 +186,45 @@ impl<O: IsA<Aggregator>> AggregatorExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "emit-signals")]
fn emits_signals(&self) -> bool {
glib::ObjectExt::property(self.as_ref(), "emit-signals")
}
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "emit-signals")]
fn set_emit_signals(&self, emit_signals: bool) {
glib::ObjectExt::set_property(self.as_ref(), "emit-signals", emit_signals)
}
#[doc(alias = "start-time")]
fn start_time(&self) -> u64 {
glib::ObjectExt::property(self.as_ref(), "start-time")
}
#[doc(alias = "start-time")]
fn set_start_time(&self, start_time: u64) {
glib::ObjectExt::set_property(self.as_ref(), "start-time", start_time)
}
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "start-time-selection")]
fn start_time_selection(&self) -> AggregatorStartTimeSelection {
glib::ObjectExt::property(self.as_ref(), "start-time-selection")
}
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "start-time-selection")]
fn set_start_time_selection(&self, start_time_selection: AggregatorStartTimeSelection) {
glib::ObjectExt::set_property(self.as_ref(), "start-time-selection", start_time_selection)
}
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "emit-signals")]
fn connect_emit_signals_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -344,6 +253,7 @@ impl<O: IsA<Aggregator>> AggregatorExt for O {
}
}
#[doc(alias = "latency")]
fn connect_latency_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -372,6 +282,7 @@ impl<O: IsA<Aggregator>> AggregatorExt for O {
}
}
#[doc(alias = "start-time")]
fn connect_start_time_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -402,6 +313,7 @@ impl<O: IsA<Aggregator>> AggregatorExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "start-time-selection")]
fn connect_start_time_selection_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -430,3 +342,5 @@ impl<O: IsA<Aggregator>> AggregatorExt for O {
}
}
}
impl<O: IsA<Aggregator>> AggregatorExt for O {}

View file

@ -26,55 +26,13 @@ impl AggregatorPad {
unsafe impl Send for AggregatorPad {}
unsafe impl Sync for AggregatorPad {}
pub trait AggregatorPadExt: 'static {
#[doc(alias = "gst_aggregator_pad_drop_buffer")]
fn drop_buffer(&self) -> bool;
#[cfg(feature = "v1_14_1")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_14_1")))]
#[doc(alias = "gst_aggregator_pad_has_buffer")]
fn has_buffer(&self) -> bool;
#[doc(alias = "gst_aggregator_pad_is_eos")]
fn is_eos(&self) -> bool;
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
#[doc(alias = "gst_aggregator_pad_is_inactive")]
fn is_inactive(&self) -> bool;
#[doc(alias = "gst_aggregator_pad_peek_buffer")]
fn peek_buffer(&self) -> Option<gst::Buffer>;
#[doc(alias = "gst_aggregator_pad_pop_buffer")]
fn pop_buffer(&self) -> Option<gst::Buffer>;
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "emit-signals")]
fn emits_signals(&self) -> bool;
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "emit-signals")]
fn set_emit_signals(&self, emit_signals: bool);
#[doc(alias = "buffer-consumed")]
fn connect_buffer_consumed<F: Fn(&Self, &gst::Buffer) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "emit-signals")]
fn connect_emit_signals_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::AggregatorPad>> Sealed for T {}
}
impl<O: IsA<AggregatorPad>> AggregatorPadExt for O {
pub trait AggregatorPadExt: IsA<AggregatorPad> + sealed::Sealed + 'static {
#[doc(alias = "gst_aggregator_pad_drop_buffer")]
fn drop_buffer(&self) -> bool {
unsafe {
from_glib(ffi::gst_aggregator_pad_drop_buffer(
@ -85,6 +43,7 @@ impl<O: IsA<AggregatorPad>> AggregatorPadExt for O {
#[cfg(feature = "v1_14_1")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_14_1")))]
#[doc(alias = "gst_aggregator_pad_has_buffer")]
fn has_buffer(&self) -> bool {
unsafe {
from_glib(ffi::gst_aggregator_pad_has_buffer(
@ -93,6 +52,7 @@ impl<O: IsA<AggregatorPad>> AggregatorPadExt for O {
}
}
#[doc(alias = "gst_aggregator_pad_is_eos")]
fn is_eos(&self) -> bool {
unsafe {
from_glib(ffi::gst_aggregator_pad_is_eos(
@ -103,6 +63,7 @@ impl<O: IsA<AggregatorPad>> AggregatorPadExt for O {
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
#[doc(alias = "gst_aggregator_pad_is_inactive")]
fn is_inactive(&self) -> bool {
unsafe {
from_glib(ffi::gst_aggregator_pad_is_inactive(
@ -111,6 +72,7 @@ impl<O: IsA<AggregatorPad>> AggregatorPadExt for O {
}
}
#[doc(alias = "gst_aggregator_pad_peek_buffer")]
fn peek_buffer(&self) -> Option<gst::Buffer> {
unsafe {
from_glib_full(ffi::gst_aggregator_pad_peek_buffer(
@ -119,6 +81,7 @@ impl<O: IsA<AggregatorPad>> AggregatorPadExt for O {
}
}
#[doc(alias = "gst_aggregator_pad_pop_buffer")]
fn pop_buffer(&self) -> Option<gst::Buffer> {
unsafe {
from_glib_full(ffi::gst_aggregator_pad_pop_buffer(
@ -129,16 +92,19 @@ impl<O: IsA<AggregatorPad>> AggregatorPadExt for O {
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "emit-signals")]
fn emits_signals(&self) -> bool {
glib::ObjectExt::property(self.as_ref(), "emit-signals")
}
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "emit-signals")]
fn set_emit_signals(&self, emit_signals: bool) {
glib::ObjectExt::set_property(self.as_ref(), "emit-signals", emit_signals)
}
#[doc(alias = "buffer-consumed")]
fn connect_buffer_consumed<F: Fn(&Self, &gst::Buffer) + Send + Sync + 'static>(
&self,
f: F,
@ -172,6 +138,7 @@ impl<O: IsA<AggregatorPad>> AggregatorPadExt for O {
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "emit-signals")]
fn connect_emit_signals_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -200,3 +167,5 @@ impl<O: IsA<AggregatorPad>> AggregatorPadExt for O {
}
}
}
impl<O: IsA<AggregatorPad>> AggregatorPadExt for O {}

View file

@ -26,61 +26,13 @@ impl BaseParse {
unsafe impl Send for BaseParse {}
unsafe impl Sync for BaseParse {}
pub trait BaseParseExt: 'static {
#[doc(alias = "gst_base_parse_add_index_entry")]
fn add_index_entry(&self, offset: u64, ts: gst::ClockTime, key: bool, force: bool) -> bool;
#[doc(alias = "gst_base_parse_drain")]
fn drain(&self);
#[doc(alias = "gst_base_parse_merge_tags")]
fn merge_tags(&self, tags: Option<&gst::TagList>, mode: gst::TagMergeMode);
#[doc(alias = "gst_base_parse_set_average_bitrate")]
fn set_average_bitrate(&self, bitrate: u32);
#[doc(alias = "gst_base_parse_set_has_timing_info")]
fn set_has_timing_info(&self, has_timing: bool);
#[doc(alias = "gst_base_parse_set_infer_ts")]
fn set_infer_ts(&self, infer_ts: bool);
#[doc(alias = "gst_base_parse_set_latency")]
fn set_latency(
&self,
min_latency: gst::ClockTime,
max_latency: impl Into<Option<gst::ClockTime>>,
);
#[doc(alias = "gst_base_parse_set_min_frame_size")]
fn set_min_frame_size(&self, min_size: u32);
#[doc(alias = "gst_base_parse_set_passthrough")]
fn set_passthrough(&self, passthrough: bool);
#[doc(alias = "gst_base_parse_set_pts_interpolation")]
fn set_pts_interpolation(&self, pts_interpolate: bool);
#[doc(alias = "gst_base_parse_set_syncable")]
fn set_syncable(&self, syncable: bool);
#[doc(alias = "gst_base_parse_set_ts_at_offset")]
fn set_ts_at_offset(&self, offset: usize);
#[doc(alias = "disable-passthrough")]
fn is_disable_passthrough(&self) -> bool;
#[doc(alias = "disable-passthrough")]
fn set_disable_passthrough(&self, disable_passthrough: bool);
#[doc(alias = "disable-passthrough")]
fn connect_disable_passthrough_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::BaseParse>> Sealed for T {}
}
impl<O: IsA<BaseParse>> BaseParseExt for O {
pub trait BaseParseExt: IsA<BaseParse> + sealed::Sealed + 'static {
#[doc(alias = "gst_base_parse_add_index_entry")]
fn add_index_entry(&self, offset: u64, ts: gst::ClockTime, key: bool, force: bool) -> bool {
unsafe {
from_glib(ffi::gst_base_parse_add_index_entry(
@ -93,12 +45,14 @@ impl<O: IsA<BaseParse>> BaseParseExt for O {
}
}
#[doc(alias = "gst_base_parse_drain")]
fn drain(&self) {
unsafe {
ffi::gst_base_parse_drain(self.as_ref().to_glib_none().0);
}
}
#[doc(alias = "gst_base_parse_merge_tags")]
fn merge_tags(&self, tags: Option<&gst::TagList>, mode: gst::TagMergeMode) {
unsafe {
ffi::gst_base_parse_merge_tags(
@ -109,12 +63,14 @@ impl<O: IsA<BaseParse>> BaseParseExt for O {
}
}
#[doc(alias = "gst_base_parse_set_average_bitrate")]
fn set_average_bitrate(&self, bitrate: u32) {
unsafe {
ffi::gst_base_parse_set_average_bitrate(self.as_ref().to_glib_none().0, bitrate);
}
}
#[doc(alias = "gst_base_parse_set_has_timing_info")]
fn set_has_timing_info(&self, has_timing: bool) {
unsafe {
ffi::gst_base_parse_set_has_timing_info(
@ -124,12 +80,14 @@ impl<O: IsA<BaseParse>> BaseParseExt for O {
}
}
#[doc(alias = "gst_base_parse_set_infer_ts")]
fn set_infer_ts(&self, infer_ts: bool) {
unsafe {
ffi::gst_base_parse_set_infer_ts(self.as_ref().to_glib_none().0, infer_ts.into_glib());
}
}
#[doc(alias = "gst_base_parse_set_latency")]
fn set_latency(
&self,
min_latency: gst::ClockTime,
@ -144,12 +102,14 @@ impl<O: IsA<BaseParse>> BaseParseExt for O {
}
}
#[doc(alias = "gst_base_parse_set_min_frame_size")]
fn set_min_frame_size(&self, min_size: u32) {
unsafe {
ffi::gst_base_parse_set_min_frame_size(self.as_ref().to_glib_none().0, min_size);
}
}
#[doc(alias = "gst_base_parse_set_passthrough")]
fn set_passthrough(&self, passthrough: bool) {
unsafe {
ffi::gst_base_parse_set_passthrough(
@ -159,6 +119,7 @@ impl<O: IsA<BaseParse>> BaseParseExt for O {
}
}
#[doc(alias = "gst_base_parse_set_pts_interpolation")]
fn set_pts_interpolation(&self, pts_interpolate: bool) {
unsafe {
ffi::gst_base_parse_set_pts_interpolation(
@ -168,26 +129,31 @@ impl<O: IsA<BaseParse>> BaseParseExt for O {
}
}
#[doc(alias = "gst_base_parse_set_syncable")]
fn set_syncable(&self, syncable: bool) {
unsafe {
ffi::gst_base_parse_set_syncable(self.as_ref().to_glib_none().0, syncable.into_glib());
}
}
#[doc(alias = "gst_base_parse_set_ts_at_offset")]
fn set_ts_at_offset(&self, offset: usize) {
unsafe {
ffi::gst_base_parse_set_ts_at_offset(self.as_ref().to_glib_none().0, offset);
}
}
#[doc(alias = "disable-passthrough")]
fn is_disable_passthrough(&self) -> bool {
glib::ObjectExt::property(self.as_ref(), "disable-passthrough")
}
#[doc(alias = "disable-passthrough")]
fn set_disable_passthrough(&self, disable_passthrough: bool) {
glib::ObjectExt::set_property(self.as_ref(), "disable-passthrough", disable_passthrough)
}
#[doc(alias = "disable-passthrough")]
fn connect_disable_passthrough_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -216,3 +182,5 @@ impl<O: IsA<BaseParse>> BaseParseExt for O {
}
}
}
impl<O: IsA<BaseParse>> BaseParseExt for O {}

View file

@ -26,205 +26,25 @@ impl BaseSink {
unsafe impl Send for BaseSink {}
unsafe impl Sync for BaseSink {}
pub trait BaseSinkExt: 'static {
//#[doc(alias = "gst_base_sink_do_preroll")]
//fn do_preroll(&self, obj: /*Ignored*/&gst::MiniObject) -> Result<gst::FlowSuccess, gst::FlowError>;
#[doc(alias = "gst_base_sink_get_blocksize")]
#[doc(alias = "get_blocksize")]
fn blocksize(&self) -> u32;
#[doc(alias = "gst_base_sink_get_drop_out_of_segment")]
#[doc(alias = "get_drop_out_of_segment")]
fn drops_out_of_segment(&self) -> bool;
#[doc(alias = "gst_base_sink_get_last_sample")]
#[doc(alias = "get_last_sample")]
fn last_sample(&self) -> Option<gst::Sample>;
#[doc(alias = "gst_base_sink_get_latency")]
#[doc(alias = "get_latency")]
fn latency(&self) -> gst::ClockTime;
#[doc(alias = "gst_base_sink_get_max_bitrate")]
#[doc(alias = "get_max_bitrate")]
fn max_bitrate(&self) -> u64;
#[doc(alias = "gst_base_sink_get_max_lateness")]
#[doc(alias = "get_max_lateness")]
fn max_lateness(&self) -> i64;
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "gst_base_sink_get_processing_deadline")]
#[doc(alias = "get_processing_deadline")]
fn processing_deadline(&self) -> gst::ClockTime;
#[doc(alias = "gst_base_sink_get_render_delay")]
#[doc(alias = "get_render_delay")]
fn render_delay(&self) -> gst::ClockTime;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_base_sink_get_stats")]
#[doc(alias = "get_stats")]
fn stats(&self) -> gst::Structure;
#[doc(alias = "gst_base_sink_get_sync")]
#[doc(alias = "get_sync")]
fn is_sync(&self) -> bool;
#[doc(alias = "gst_base_sink_get_throttle_time")]
#[doc(alias = "get_throttle_time")]
fn throttle_time(&self) -> u64;
#[doc(alias = "gst_base_sink_get_ts_offset")]
#[doc(alias = "get_ts_offset")]
fn ts_offset(&self) -> gst::ClockTimeDiff;
#[doc(alias = "gst_base_sink_set_blocksize")]
fn set_blocksize(&self, blocksize: u32);
#[doc(alias = "gst_base_sink_set_drop_out_of_segment")]
fn set_drop_out_of_segment(&self, drop_out_of_segment: bool);
#[doc(alias = "gst_base_sink_set_max_bitrate")]
fn set_max_bitrate(&self, max_bitrate: u64);
#[doc(alias = "gst_base_sink_set_max_lateness")]
fn set_max_lateness(&self, max_lateness: i64);
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "gst_base_sink_set_processing_deadline")]
fn set_processing_deadline(&self, processing_deadline: gst::ClockTime);
#[doc(alias = "gst_base_sink_set_render_delay")]
fn set_render_delay(&self, delay: gst::ClockTime);
#[doc(alias = "gst_base_sink_set_sync")]
fn set_sync(&self, sync: bool);
#[doc(alias = "gst_base_sink_set_throttle_time")]
fn set_throttle_time(&self, throttle: u64);
#[doc(alias = "gst_base_sink_set_ts_offset")]
fn set_ts_offset(&self, offset: gst::ClockTimeDiff);
#[doc(alias = "gst_base_sink_wait")]
fn wait(
&self,
time: impl Into<Option<gst::ClockTime>>,
) -> (Result<gst::FlowSuccess, gst::FlowError>, gst::ClockTimeDiff);
#[doc(alias = "gst_base_sink_wait_clock")]
fn wait_clock(
&self,
time: gst::ClockTime,
) -> (
Result<gst::ClockSuccess, gst::ClockError>,
gst::ClockTimeDiff,
);
#[doc(alias = "gst_base_sink_wait_preroll")]
fn wait_preroll(&self) -> Result<gst::FlowSuccess, gst::FlowError>;
#[doc(alias = "async")]
fn is_async(&self) -> bool;
#[doc(alias = "async")]
fn set_async(&self, async_: bool);
#[doc(alias = "enable-last-sample")]
fn enables_last_sample(&self) -> bool;
#[doc(alias = "enable-last-sample")]
fn set_enable_last_sample(&self, enable_last_sample: bool);
fn is_qos(&self) -> bool;
fn set_qos(&self, qos: bool);
#[doc(alias = "async")]
fn connect_async_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "blocksize")]
fn connect_blocksize_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "enable-last-sample")]
fn connect_enable_last_sample_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "last-sample")]
fn connect_last_sample_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "max-bitrate")]
fn connect_max_bitrate_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "max-lateness")]
fn connect_max_lateness_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "processing-deadline")]
fn connect_processing_deadline_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "qos")]
fn connect_qos_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "render-delay")]
fn connect_render_delay_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "stats")]
fn connect_stats_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "sync")]
fn connect_sync_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "throttle-time")]
fn connect_throttle_time_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "ts-offset")]
fn connect_ts_offset_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::BaseSink>> Sealed for T {}
}
impl<O: IsA<BaseSink>> BaseSinkExt for O {
pub trait BaseSinkExt: IsA<BaseSink> + sealed::Sealed + 'static {
//#[doc(alias = "gst_base_sink_do_preroll")]
//fn do_preroll(&self, obj: /*Ignored*/&gst::MiniObject) -> Result<gst::FlowSuccess, gst::FlowError> {
// unsafe { TODO: call ffi:gst_base_sink_do_preroll() }
//}
#[doc(alias = "gst_base_sink_get_blocksize")]
#[doc(alias = "get_blocksize")]
fn blocksize(&self) -> u32 {
unsafe { ffi::gst_base_sink_get_blocksize(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "gst_base_sink_get_drop_out_of_segment")]
#[doc(alias = "get_drop_out_of_segment")]
fn drops_out_of_segment(&self) -> bool {
unsafe {
from_glib(ffi::gst_base_sink_get_drop_out_of_segment(
@ -233,6 +53,8 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
}
}
#[doc(alias = "gst_base_sink_get_last_sample")]
#[doc(alias = "get_last_sample")]
fn last_sample(&self) -> Option<gst::Sample> {
unsafe {
from_glib_full(ffi::gst_base_sink_get_last_sample(
@ -241,6 +63,8 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
}
}
#[doc(alias = "gst_base_sink_get_latency")]
#[doc(alias = "get_latency")]
fn latency(&self) -> gst::ClockTime {
unsafe {
try_from_glib(ffi::gst_base_sink_get_latency(
@ -250,16 +74,22 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
}
}
#[doc(alias = "gst_base_sink_get_max_bitrate")]
#[doc(alias = "get_max_bitrate")]
fn max_bitrate(&self) -> u64 {
unsafe { ffi::gst_base_sink_get_max_bitrate(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "gst_base_sink_get_max_lateness")]
#[doc(alias = "get_max_lateness")]
fn max_lateness(&self) -> i64 {
unsafe { ffi::gst_base_sink_get_max_lateness(self.as_ref().to_glib_none().0) }
}
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "gst_base_sink_get_processing_deadline")]
#[doc(alias = "get_processing_deadline")]
fn processing_deadline(&self) -> gst::ClockTime {
unsafe {
try_from_glib(ffi::gst_base_sink_get_processing_deadline(
@ -269,6 +99,8 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
}
}
#[doc(alias = "gst_base_sink_get_render_delay")]
#[doc(alias = "get_render_delay")]
fn render_delay(&self) -> gst::ClockTime {
unsafe {
try_from_glib(ffi::gst_base_sink_get_render_delay(
@ -280,28 +112,38 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_base_sink_get_stats")]
#[doc(alias = "get_stats")]
fn stats(&self) -> gst::Structure {
unsafe { from_glib_full(ffi::gst_base_sink_get_stats(self.as_ref().to_glib_none().0)) }
}
#[doc(alias = "gst_base_sink_get_sync")]
#[doc(alias = "get_sync")]
fn is_sync(&self) -> bool {
unsafe { from_glib(ffi::gst_base_sink_get_sync(self.as_ref().to_glib_none().0)) }
}
#[doc(alias = "gst_base_sink_get_throttle_time")]
#[doc(alias = "get_throttle_time")]
fn throttle_time(&self) -> u64 {
unsafe { ffi::gst_base_sink_get_throttle_time(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "gst_base_sink_get_ts_offset")]
#[doc(alias = "get_ts_offset")]
fn ts_offset(&self) -> gst::ClockTimeDiff {
unsafe { ffi::gst_base_sink_get_ts_offset(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "gst_base_sink_set_blocksize")]
fn set_blocksize(&self, blocksize: u32) {
unsafe {
ffi::gst_base_sink_set_blocksize(self.as_ref().to_glib_none().0, blocksize);
}
}
#[doc(alias = "gst_base_sink_set_drop_out_of_segment")]
fn set_drop_out_of_segment(&self, drop_out_of_segment: bool) {
unsafe {
ffi::gst_base_sink_set_drop_out_of_segment(
@ -311,12 +153,14 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
}
}
#[doc(alias = "gst_base_sink_set_max_bitrate")]
fn set_max_bitrate(&self, max_bitrate: u64) {
unsafe {
ffi::gst_base_sink_set_max_bitrate(self.as_ref().to_glib_none().0, max_bitrate);
}
}
#[doc(alias = "gst_base_sink_set_max_lateness")]
fn set_max_lateness(&self, max_lateness: i64) {
unsafe {
ffi::gst_base_sink_set_max_lateness(self.as_ref().to_glib_none().0, max_lateness);
@ -325,6 +169,7 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "gst_base_sink_set_processing_deadline")]
fn set_processing_deadline(&self, processing_deadline: gst::ClockTime) {
unsafe {
ffi::gst_base_sink_set_processing_deadline(
@ -334,30 +179,35 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
}
}
#[doc(alias = "gst_base_sink_set_render_delay")]
fn set_render_delay(&self, delay: gst::ClockTime) {
unsafe {
ffi::gst_base_sink_set_render_delay(self.as_ref().to_glib_none().0, delay.into_glib());
}
}
#[doc(alias = "gst_base_sink_set_sync")]
fn set_sync(&self, sync: bool) {
unsafe {
ffi::gst_base_sink_set_sync(self.as_ref().to_glib_none().0, sync.into_glib());
}
}
#[doc(alias = "gst_base_sink_set_throttle_time")]
fn set_throttle_time(&self, throttle: u64) {
unsafe {
ffi::gst_base_sink_set_throttle_time(self.as_ref().to_glib_none().0, throttle);
}
}
#[doc(alias = "gst_base_sink_set_ts_offset")]
fn set_ts_offset(&self, offset: gst::ClockTimeDiff) {
unsafe {
ffi::gst_base_sink_set_ts_offset(self.as_ref().to_glib_none().0, offset);
}
}
#[doc(alias = "gst_base_sink_wait")]
fn wait(
&self,
time: impl Into<Option<gst::ClockTime>>,
@ -373,6 +223,7 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
}
}
#[doc(alias = "gst_base_sink_wait_clock")]
fn wait_clock(
&self,
time: gst::ClockTime,
@ -391,6 +242,7 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
}
}
#[doc(alias = "gst_base_sink_wait_preroll")]
fn wait_preroll(&self) -> Result<gst::FlowSuccess, gst::FlowError> {
unsafe {
try_from_glib(ffi::gst_base_sink_wait_preroll(
@ -399,18 +251,22 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
}
}
#[doc(alias = "async")]
fn is_async(&self) -> bool {
glib::ObjectExt::property(self.as_ref(), "async")
}
#[doc(alias = "async")]
fn set_async(&self, async_: bool) {
glib::ObjectExt::set_property(self.as_ref(), "async", async_)
}
#[doc(alias = "enable-last-sample")]
fn enables_last_sample(&self) -> bool {
glib::ObjectExt::property(self.as_ref(), "enable-last-sample")
}
#[doc(alias = "enable-last-sample")]
fn set_enable_last_sample(&self, enable_last_sample: bool) {
glib::ObjectExt::set_property(self.as_ref(), "enable-last-sample", enable_last_sample)
}
@ -423,6 +279,7 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
glib::ObjectExt::set_property(self.as_ref(), "qos", qos)
}
#[doc(alias = "async")]
fn connect_async_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_async_trampoline<
P: IsA<BaseSink>,
@ -448,6 +305,7 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
}
}
#[doc(alias = "blocksize")]
fn connect_blocksize_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -476,6 +334,7 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
}
}
#[doc(alias = "enable-last-sample")]
fn connect_enable_last_sample_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -504,6 +363,7 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
}
}
#[doc(alias = "last-sample")]
fn connect_last_sample_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -532,6 +392,7 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
}
}
#[doc(alias = "max-bitrate")]
fn connect_max_bitrate_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -560,6 +421,7 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
}
}
#[doc(alias = "max-lateness")]
fn connect_max_lateness_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -590,6 +452,7 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "processing-deadline")]
fn connect_processing_deadline_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -618,6 +481,7 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
}
}
#[doc(alias = "qos")]
fn connect_qos_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_qos_trampoline<
P: IsA<BaseSink>,
@ -643,6 +507,7 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
}
}
#[doc(alias = "render-delay")]
fn connect_render_delay_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -673,6 +538,7 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "stats")]
fn connect_stats_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_stats_trampoline<
P: IsA<BaseSink>,
@ -698,6 +564,7 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
}
}
#[doc(alias = "sync")]
fn connect_sync_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_sync_trampoline<
P: IsA<BaseSink>,
@ -723,6 +590,7 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
}
}
#[doc(alias = "throttle-time")]
fn connect_throttle_time_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -751,6 +619,7 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
}
}
#[doc(alias = "ts-offset")]
fn connect_ts_offset_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -779,3 +648,5 @@ impl<O: IsA<BaseSink>> BaseSinkExt for O {
}
}
}
impl<O: IsA<BaseSink>> BaseSinkExt for O {}

View file

@ -27,118 +27,20 @@ impl BaseSrc {
unsafe impl Send for BaseSrc {}
unsafe impl Sync for BaseSrc {}
pub trait BaseSrcExt: 'static {
#[doc(alias = "gst_base_src_get_blocksize")]
#[doc(alias = "get_blocksize")]
fn blocksize(&self) -> u32;
#[doc(alias = "gst_base_src_get_buffer_pool")]
#[doc(alias = "get_buffer_pool")]
fn buffer_pool(&self) -> Option<gst::BufferPool>;
#[doc(alias = "gst_base_src_get_do_timestamp")]
#[doc(alias = "get_do_timestamp")]
fn does_timestamp(&self) -> bool;
#[doc(alias = "gst_base_src_is_async")]
fn is_async(&self) -> bool;
#[doc(alias = "gst_base_src_is_live")]
fn is_live(&self) -> bool;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_base_src_negotiate")]
fn negotiate(&self) -> bool;
#[cfg_attr(feature = "v1_18", deprecated = "Since 1.18")]
#[allow(deprecated)]
#[doc(alias = "gst_base_src_new_seamless_segment")]
fn new_seamless_segment(&self, start: i64, stop: i64, time: i64) -> bool;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_base_src_new_segment")]
fn new_segment(&self, segment: &gst::Segment) -> Result<(), glib::error::BoolError>;
#[cfg(feature = "v1_24")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_24")))]
#[doc(alias = "gst_base_src_push_segment")]
fn push_segment(&self, segment: &gst::Segment) -> bool;
#[doc(alias = "gst_base_src_set_async")]
fn set_async(&self, async_: bool);
#[doc(alias = "gst_base_src_set_automatic_eos")]
fn set_automatic_eos(&self, automatic_eos: bool);
#[doc(alias = "gst_base_src_set_blocksize")]
fn set_blocksize(&self, blocksize: u32);
#[doc(alias = "gst_base_src_set_caps")]
fn set_caps(&self, caps: &gst::Caps) -> Result<(), glib::error::BoolError>;
#[doc(alias = "gst_base_src_set_do_timestamp")]
fn set_do_timestamp(&self, timestamp: bool);
#[doc(alias = "gst_base_src_set_dynamic_size")]
fn set_dynamic_size(&self, dynamic: bool);
#[doc(alias = "gst_base_src_set_format")]
fn set_format(&self, format: gst::Format);
#[doc(alias = "gst_base_src_set_live")]
fn set_live(&self, live: bool);
#[doc(alias = "gst_base_src_start_complete")]
fn start_complete(&self, ret: impl Into<gst::FlowReturn>);
#[doc(alias = "gst_base_src_start_wait")]
fn start_wait(&self) -> Result<gst::FlowSuccess, gst::FlowError>;
#[doc(alias = "gst_base_src_wait_playing")]
fn wait_playing(&self) -> Result<gst::FlowSuccess, gst::FlowError>;
#[doc(alias = "num-buffers")]
fn num_buffers(&self) -> i32;
#[doc(alias = "num-buffers")]
fn set_num_buffers(&self, num_buffers: i32);
fn is_typefind(&self) -> bool;
fn set_typefind(&self, typefind: bool);
#[doc(alias = "blocksize")]
fn connect_blocksize_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "do-timestamp")]
fn connect_do_timestamp_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "num-buffers")]
fn connect_num_buffers_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "typefind")]
fn connect_typefind_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::BaseSrc>> Sealed for T {}
}
impl<O: IsA<BaseSrc>> BaseSrcExt for O {
pub trait BaseSrcExt: IsA<BaseSrc> + sealed::Sealed + 'static {
#[doc(alias = "gst_base_src_get_blocksize")]
#[doc(alias = "get_blocksize")]
fn blocksize(&self) -> u32 {
unsafe { ffi::gst_base_src_get_blocksize(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "gst_base_src_get_buffer_pool")]
#[doc(alias = "get_buffer_pool")]
fn buffer_pool(&self) -> Option<gst::BufferPool> {
unsafe {
from_glib_full(ffi::gst_base_src_get_buffer_pool(
@ -147,6 +49,8 @@ impl<O: IsA<BaseSrc>> BaseSrcExt for O {
}
}
#[doc(alias = "gst_base_src_get_do_timestamp")]
#[doc(alias = "get_do_timestamp")]
fn does_timestamp(&self) -> bool {
unsafe {
from_glib(ffi::gst_base_src_get_do_timestamp(
@ -155,21 +59,26 @@ impl<O: IsA<BaseSrc>> BaseSrcExt for O {
}
}
#[doc(alias = "gst_base_src_is_async")]
fn is_async(&self) -> bool {
unsafe { from_glib(ffi::gst_base_src_is_async(self.as_ref().to_glib_none().0)) }
}
#[doc(alias = "gst_base_src_is_live")]
fn is_live(&self) -> bool {
unsafe { from_glib(ffi::gst_base_src_is_live(self.as_ref().to_glib_none().0)) }
}
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_base_src_negotiate")]
fn negotiate(&self) -> bool {
unsafe { from_glib(ffi::gst_base_src_negotiate(self.as_ref().to_glib_none().0)) }
}
#[cfg_attr(feature = "v1_18", deprecated = "Since 1.18")]
#[allow(deprecated)]
#[doc(alias = "gst_base_src_new_seamless_segment")]
fn new_seamless_segment(&self, start: i64, stop: i64, time: i64) -> bool {
unsafe {
from_glib(ffi::gst_base_src_new_seamless_segment(
@ -183,6 +92,7 @@ impl<O: IsA<BaseSrc>> BaseSrcExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_base_src_new_segment")]
fn new_segment(&self, segment: &gst::Segment) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -197,6 +107,7 @@ impl<O: IsA<BaseSrc>> BaseSrcExt for O {
#[cfg(feature = "v1_24")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_24")))]
#[doc(alias = "gst_base_src_push_segment")]
fn push_segment(&self, segment: &gst::Segment) -> bool {
unsafe {
from_glib(ffi::gst_base_src_push_segment(
@ -206,12 +117,14 @@ impl<O: IsA<BaseSrc>> BaseSrcExt for O {
}
}
#[doc(alias = "gst_base_src_set_async")]
fn set_async(&self, async_: bool) {
unsafe {
ffi::gst_base_src_set_async(self.as_ref().to_glib_none().0, async_.into_glib());
}
}
#[doc(alias = "gst_base_src_set_automatic_eos")]
fn set_automatic_eos(&self, automatic_eos: bool) {
unsafe {
ffi::gst_base_src_set_automatic_eos(
@ -221,12 +134,14 @@ impl<O: IsA<BaseSrc>> BaseSrcExt for O {
}
}
#[doc(alias = "gst_base_src_set_blocksize")]
fn set_blocksize(&self, blocksize: u32) {
unsafe {
ffi::gst_base_src_set_blocksize(self.as_ref().to_glib_none().0, blocksize);
}
}
#[doc(alias = "gst_base_src_set_caps")]
fn set_caps(&self, caps: &gst::Caps) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -236,6 +151,7 @@ impl<O: IsA<BaseSrc>> BaseSrcExt for O {
}
}
#[doc(alias = "gst_base_src_set_do_timestamp")]
fn set_do_timestamp(&self, timestamp: bool) {
unsafe {
ffi::gst_base_src_set_do_timestamp(
@ -245,24 +161,28 @@ impl<O: IsA<BaseSrc>> BaseSrcExt for O {
}
}
#[doc(alias = "gst_base_src_set_dynamic_size")]
fn set_dynamic_size(&self, dynamic: bool) {
unsafe {
ffi::gst_base_src_set_dynamic_size(self.as_ref().to_glib_none().0, dynamic.into_glib());
}
}
#[doc(alias = "gst_base_src_set_format")]
fn set_format(&self, format: gst::Format) {
unsafe {
ffi::gst_base_src_set_format(self.as_ref().to_glib_none().0, format.into_glib());
}
}
#[doc(alias = "gst_base_src_set_live")]
fn set_live(&self, live: bool) {
unsafe {
ffi::gst_base_src_set_live(self.as_ref().to_glib_none().0, live.into_glib());
}
}
#[doc(alias = "gst_base_src_start_complete")]
fn start_complete(&self, ret: impl Into<gst::FlowReturn>) {
unsafe {
ffi::gst_base_src_start_complete(
@ -272,10 +192,12 @@ impl<O: IsA<BaseSrc>> BaseSrcExt for O {
}
}
#[doc(alias = "gst_base_src_start_wait")]
fn start_wait(&self) -> Result<gst::FlowSuccess, gst::FlowError> {
unsafe { try_from_glib(ffi::gst_base_src_start_wait(self.as_ref().to_glib_none().0)) }
}
#[doc(alias = "gst_base_src_wait_playing")]
fn wait_playing(&self) -> Result<gst::FlowSuccess, gst::FlowError> {
unsafe {
try_from_glib(ffi::gst_base_src_wait_playing(
@ -284,10 +206,12 @@ impl<O: IsA<BaseSrc>> BaseSrcExt for O {
}
}
#[doc(alias = "num-buffers")]
fn num_buffers(&self) -> i32 {
glib::ObjectExt::property(self.as_ref(), "num-buffers")
}
#[doc(alias = "num-buffers")]
fn set_num_buffers(&self, num_buffers: i32) {
glib::ObjectExt::set_property(self.as_ref(), "num-buffers", num_buffers)
}
@ -300,6 +224,7 @@ impl<O: IsA<BaseSrc>> BaseSrcExt for O {
glib::ObjectExt::set_property(self.as_ref(), "typefind", typefind)
}
#[doc(alias = "blocksize")]
fn connect_blocksize_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -328,6 +253,7 @@ impl<O: IsA<BaseSrc>> BaseSrcExt for O {
}
}
#[doc(alias = "do-timestamp")]
fn connect_do_timestamp_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -356,6 +282,7 @@ impl<O: IsA<BaseSrc>> BaseSrcExt for O {
}
}
#[doc(alias = "num-buffers")]
fn connect_num_buffers_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -384,6 +311,7 @@ impl<O: IsA<BaseSrc>> BaseSrcExt for O {
}
}
#[doc(alias = "typefind")]
fn connect_typefind_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -412,3 +340,5 @@ impl<O: IsA<BaseSrc>> BaseSrcExt for O {
}
}
}
impl<O: IsA<BaseSrc>> BaseSrcExt for O {}

View file

@ -26,55 +26,14 @@ impl BaseTransform {
unsafe impl Send for BaseTransform {}
unsafe impl Sync for BaseTransform {}
pub trait BaseTransformExt: 'static {
#[doc(alias = "gst_base_transform_get_buffer_pool")]
#[doc(alias = "get_buffer_pool")]
fn buffer_pool(&self) -> Option<gst::BufferPool>;
#[doc(alias = "gst_base_transform_is_in_place")]
fn is_in_place(&self) -> bool;
#[doc(alias = "gst_base_transform_is_passthrough")]
fn is_passthrough(&self) -> bool;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_base_transform_reconfigure")]
fn reconfigure(&self) -> bool;
#[doc(alias = "gst_base_transform_reconfigure_sink")]
fn reconfigure_sink(&self);
#[doc(alias = "gst_base_transform_reconfigure_src")]
fn reconfigure_src(&self);
#[doc(alias = "gst_base_transform_set_gap_aware")]
fn set_gap_aware(&self, gap_aware: bool);
#[doc(alias = "gst_base_transform_set_in_place")]
fn set_in_place(&self, in_place: bool);
#[doc(alias = "gst_base_transform_set_passthrough")]
fn set_passthrough(&self, passthrough: bool);
#[doc(alias = "gst_base_transform_set_prefer_passthrough")]
fn set_prefer_passthrough(&self, prefer_passthrough: bool);
#[doc(alias = "gst_base_transform_update_qos")]
fn update_qos(&self, proportion: f64, diff: gst::ClockTimeDiff, timestamp: gst::ClockTime);
#[doc(alias = "gst_base_transform_update_src_caps")]
fn update_src_caps(&self, updated_caps: &gst::Caps) -> Result<(), glib::error::BoolError>;
fn is_qos(&self) -> bool;
fn set_qos(&self, qos: bool);
#[doc(alias = "qos")]
fn connect_qos_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::BaseTransform>> Sealed for T {}
}
impl<O: IsA<BaseTransform>> BaseTransformExt for O {
pub trait BaseTransformExt: IsA<BaseTransform> + sealed::Sealed + 'static {
#[doc(alias = "gst_base_transform_get_buffer_pool")]
#[doc(alias = "get_buffer_pool")]
fn buffer_pool(&self) -> Option<gst::BufferPool> {
unsafe {
from_glib_full(ffi::gst_base_transform_get_buffer_pool(
@ -83,6 +42,7 @@ impl<O: IsA<BaseTransform>> BaseTransformExt for O {
}
}
#[doc(alias = "gst_base_transform_is_in_place")]
fn is_in_place(&self) -> bool {
unsafe {
from_glib(ffi::gst_base_transform_is_in_place(
@ -91,6 +51,7 @@ impl<O: IsA<BaseTransform>> BaseTransformExt for O {
}
}
#[doc(alias = "gst_base_transform_is_passthrough")]
fn is_passthrough(&self) -> bool {
unsafe {
from_glib(ffi::gst_base_transform_is_passthrough(
@ -101,6 +62,7 @@ impl<O: IsA<BaseTransform>> BaseTransformExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_base_transform_reconfigure")]
fn reconfigure(&self) -> bool {
unsafe {
from_glib(ffi::gst_base_transform_reconfigure(
@ -109,18 +71,21 @@ impl<O: IsA<BaseTransform>> BaseTransformExt for O {
}
}
#[doc(alias = "gst_base_transform_reconfigure_sink")]
fn reconfigure_sink(&self) {
unsafe {
ffi::gst_base_transform_reconfigure_sink(self.as_ref().to_glib_none().0);
}
}
#[doc(alias = "gst_base_transform_reconfigure_src")]
fn reconfigure_src(&self) {
unsafe {
ffi::gst_base_transform_reconfigure_src(self.as_ref().to_glib_none().0);
}
}
#[doc(alias = "gst_base_transform_set_gap_aware")]
fn set_gap_aware(&self, gap_aware: bool) {
unsafe {
ffi::gst_base_transform_set_gap_aware(
@ -130,6 +95,7 @@ impl<O: IsA<BaseTransform>> BaseTransformExt for O {
}
}
#[doc(alias = "gst_base_transform_set_in_place")]
fn set_in_place(&self, in_place: bool) {
unsafe {
ffi::gst_base_transform_set_in_place(
@ -139,6 +105,7 @@ impl<O: IsA<BaseTransform>> BaseTransformExt for O {
}
}
#[doc(alias = "gst_base_transform_set_passthrough")]
fn set_passthrough(&self, passthrough: bool) {
unsafe {
ffi::gst_base_transform_set_passthrough(
@ -148,6 +115,7 @@ impl<O: IsA<BaseTransform>> BaseTransformExt for O {
}
}
#[doc(alias = "gst_base_transform_set_prefer_passthrough")]
fn set_prefer_passthrough(&self, prefer_passthrough: bool) {
unsafe {
ffi::gst_base_transform_set_prefer_passthrough(
@ -157,6 +125,7 @@ impl<O: IsA<BaseTransform>> BaseTransformExt for O {
}
}
#[doc(alias = "gst_base_transform_update_qos")]
fn update_qos(&self, proportion: f64, diff: gst::ClockTimeDiff, timestamp: gst::ClockTime) {
unsafe {
ffi::gst_base_transform_update_qos(
@ -168,6 +137,7 @@ impl<O: IsA<BaseTransform>> BaseTransformExt for O {
}
}
#[doc(alias = "gst_base_transform_update_src_caps")]
fn update_src_caps(&self, updated_caps: &gst::Caps) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -188,6 +158,7 @@ impl<O: IsA<BaseTransform>> BaseTransformExt for O {
glib::ObjectExt::set_property(self.as_ref(), "qos", qos)
}
#[doc(alias = "qos")]
fn connect_qos_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_qos_trampoline<
P: IsA<BaseTransform>,
@ -213,3 +184,5 @@ impl<O: IsA<BaseTransform>> BaseTransformExt for O {
}
}
}
impl<O: IsA<BaseTransform>> BaseTransformExt for O {}

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -3,7 +3,7 @@
// from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git)
// DO NOT EDIT
#![cfg(target_os = "linux")]
#![cfg(unix)]
use gstreamer_base_sys::*;
use std::env;

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -3,7 +3,7 @@
// from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git)
// DO NOT EDIT
#![cfg(target_os = "linux")]
#![cfg(unix)]
use gstreamer_check_sys::*;
use std::env;

View file

@ -49,89 +49,53 @@ impl ARGBControlBinding {
unsafe impl Send for ARGBControlBinding {}
unsafe impl Sync for ARGBControlBinding {}
pub trait ARGBControlBindingExt: 'static {
#[doc(alias = "control-source-a")]
fn control_source_a(&self) -> Option<gst::ControlSource>;
#[doc(alias = "control-source-a")]
fn set_control_source_a<P: IsA<gst::ControlSource>>(&self, control_source_a: Option<&P>);
#[doc(alias = "control-source-b")]
fn control_source_b(&self) -> Option<gst::ControlSource>;
#[doc(alias = "control-source-b")]
fn set_control_source_b<P: IsA<gst::ControlSource>>(&self, control_source_b: Option<&P>);
#[doc(alias = "control-source-g")]
fn control_source_g(&self) -> Option<gst::ControlSource>;
#[doc(alias = "control-source-g")]
fn set_control_source_g<P: IsA<gst::ControlSource>>(&self, control_source_g: Option<&P>);
#[doc(alias = "control-source-r")]
fn control_source_r(&self) -> Option<gst::ControlSource>;
#[doc(alias = "control-source-r")]
fn set_control_source_r<P: IsA<gst::ControlSource>>(&self, control_source_r: Option<&P>);
#[doc(alias = "control-source-a")]
fn connect_control_source_a_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "control-source-b")]
fn connect_control_source_b_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "control-source-g")]
fn connect_control_source_g_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "control-source-r")]
fn connect_control_source_r_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::ARGBControlBinding>> Sealed for T {}
}
impl<O: IsA<ARGBControlBinding>> ARGBControlBindingExt for O {
pub trait ARGBControlBindingExt: IsA<ARGBControlBinding> + sealed::Sealed + 'static {
#[doc(alias = "control-source-a")]
fn control_source_a(&self) -> Option<gst::ControlSource> {
glib::ObjectExt::property(self.as_ref(), "control-source-a")
}
#[doc(alias = "control-source-a")]
fn set_control_source_a<P: IsA<gst::ControlSource>>(&self, control_source_a: Option<&P>) {
glib::ObjectExt::set_property(self.as_ref(), "control-source-a", control_source_a)
}
#[doc(alias = "control-source-b")]
fn control_source_b(&self) -> Option<gst::ControlSource> {
glib::ObjectExt::property(self.as_ref(), "control-source-b")
}
#[doc(alias = "control-source-b")]
fn set_control_source_b<P: IsA<gst::ControlSource>>(&self, control_source_b: Option<&P>) {
glib::ObjectExt::set_property(self.as_ref(), "control-source-b", control_source_b)
}
#[doc(alias = "control-source-g")]
fn control_source_g(&self) -> Option<gst::ControlSource> {
glib::ObjectExt::property(self.as_ref(), "control-source-g")
}
#[doc(alias = "control-source-g")]
fn set_control_source_g<P: IsA<gst::ControlSource>>(&self, control_source_g: Option<&P>) {
glib::ObjectExt::set_property(self.as_ref(), "control-source-g", control_source_g)
}
#[doc(alias = "control-source-r")]
fn control_source_r(&self) -> Option<gst::ControlSource> {
glib::ObjectExt::property(self.as_ref(), "control-source-r")
}
#[doc(alias = "control-source-r")]
fn set_control_source_r<P: IsA<gst::ControlSource>>(&self, control_source_r: Option<&P>) {
glib::ObjectExt::set_property(self.as_ref(), "control-source-r", control_source_r)
}
#[doc(alias = "control-source-a")]
fn connect_control_source_a_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -160,6 +124,7 @@ impl<O: IsA<ARGBControlBinding>> ARGBControlBindingExt for O {
}
}
#[doc(alias = "control-source-b")]
fn connect_control_source_b_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -188,6 +153,7 @@ impl<O: IsA<ARGBControlBinding>> ARGBControlBindingExt for O {
}
}
#[doc(alias = "control-source-g")]
fn connect_control_source_g_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -216,6 +182,7 @@ impl<O: IsA<ARGBControlBinding>> ARGBControlBindingExt for O {
}
}
#[doc(alias = "control-source-r")]
fn connect_control_source_r_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -244,3 +211,5 @@ impl<O: IsA<ARGBControlBinding>> ARGBControlBindingExt for O {
}
}
}
impl<O: IsA<ARGBControlBinding>> ARGBControlBindingExt for O {}

View file

@ -60,35 +60,27 @@ impl DirectControlBinding {
unsafe impl Send for DirectControlBinding {}
unsafe impl Sync for DirectControlBinding {}
pub trait DirectControlBindingExt: 'static {
fn is_absolute(&self) -> bool;
#[doc(alias = "control-source")]
fn control_source(&self) -> Option<gst::ControlSource>;
#[doc(alias = "control-source")]
fn set_control_source<P: IsA<gst::ControlSource>>(&self, control_source: Option<&P>);
#[doc(alias = "control-source")]
fn connect_control_source_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::DirectControlBinding>> Sealed for T {}
}
impl<O: IsA<DirectControlBinding>> DirectControlBindingExt for O {
pub trait DirectControlBindingExt: IsA<DirectControlBinding> + sealed::Sealed + 'static {
fn is_absolute(&self) -> bool {
glib::ObjectExt::property(self.as_ref(), "absolute")
}
#[doc(alias = "control-source")]
fn control_source(&self) -> Option<gst::ControlSource> {
glib::ObjectExt::property(self.as_ref(), "control-source")
}
#[doc(alias = "control-source")]
fn set_control_source<P: IsA<gst::ControlSource>>(&self, control_source: Option<&P>) {
glib::ObjectExt::set_property(self.as_ref(), "control-source", control_source)
}
#[doc(alias = "control-source")]
fn connect_control_source_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -117,3 +109,5 @@ impl<O: IsA<DirectControlBinding>> DirectControlBindingExt for O {
}
}
}
impl<O: IsA<DirectControlBinding>> DirectControlBindingExt for O {}

View file

@ -42,16 +42,14 @@ impl Default for InterpolationControlSource {
unsafe impl Send for InterpolationControlSource {}
unsafe impl Sync for InterpolationControlSource {}
pub trait InterpolationControlSourceExt: 'static {
fn mode(&self) -> InterpolationMode;
fn set_mode(&self, mode: InterpolationMode);
#[doc(alias = "mode")]
fn connect_mode_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::InterpolationControlSource>> Sealed for T {}
}
impl<O: IsA<InterpolationControlSource>> InterpolationControlSourceExt for O {
pub trait InterpolationControlSourceExt:
IsA<InterpolationControlSource> + sealed::Sealed + 'static
{
fn mode(&self) -> InterpolationMode {
glib::ObjectExt::property(self.as_ref(), "mode")
}
@ -60,6 +58,7 @@ impl<O: IsA<InterpolationControlSource>> InterpolationControlSourceExt for O {
glib::ObjectExt::set_property(self.as_ref(), "mode", mode)
}
#[doc(alias = "mode")]
fn connect_mode_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_mode_trampoline<
P: IsA<InterpolationControlSource>,
@ -85,3 +84,5 @@ impl<O: IsA<InterpolationControlSource>> InterpolationControlSourceExt for O {
}
}
}
impl<O: IsA<InterpolationControlSource>> InterpolationControlSourceExt for O {}

View file

@ -41,56 +41,12 @@ impl Default for LFOControlSource {
unsafe impl Send for LFOControlSource {}
unsafe impl Sync for LFOControlSource {}
pub trait LFOControlSourceExt: 'static {
fn amplitude(&self) -> f64;
fn set_amplitude(&self, amplitude: f64);
fn frequency(&self) -> f64;
fn set_frequency(&self, frequency: f64);
fn offset(&self) -> f64;
fn set_offset(&self, offset: f64);
fn timeshift(&self) -> u64;
fn set_timeshift(&self, timeshift: u64);
fn waveform(&self) -> LFOWaveform;
fn set_waveform(&self, waveform: LFOWaveform);
#[doc(alias = "amplitude")]
fn connect_amplitude_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "frequency")]
fn connect_frequency_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "offset")]
fn connect_offset_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "timeshift")]
fn connect_timeshift_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "waveform")]
fn connect_waveform_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::LFOControlSource>> Sealed for T {}
}
impl<O: IsA<LFOControlSource>> LFOControlSourceExt for O {
pub trait LFOControlSourceExt: IsA<LFOControlSource> + sealed::Sealed + 'static {
fn amplitude(&self) -> f64 {
glib::ObjectExt::property(self.as_ref(), "amplitude")
}
@ -131,6 +87,7 @@ impl<O: IsA<LFOControlSource>> LFOControlSourceExt for O {
glib::ObjectExt::set_property(self.as_ref(), "waveform", waveform)
}
#[doc(alias = "amplitude")]
fn connect_amplitude_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -159,6 +116,7 @@ impl<O: IsA<LFOControlSource>> LFOControlSourceExt for O {
}
}
#[doc(alias = "frequency")]
fn connect_frequency_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -187,6 +145,7 @@ impl<O: IsA<LFOControlSource>> LFOControlSourceExt for O {
}
}
#[doc(alias = "offset")]
fn connect_offset_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_offset_trampoline<
P: IsA<LFOControlSource>,
@ -212,6 +171,7 @@ impl<O: IsA<LFOControlSource>> LFOControlSourceExt for O {
}
}
#[doc(alias = "timeshift")]
fn connect_timeshift_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -240,6 +200,7 @@ impl<O: IsA<LFOControlSource>> LFOControlSourceExt for O {
}
}
#[doc(alias = "waveform")]
fn connect_waveform_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -268,3 +229,5 @@ impl<O: IsA<LFOControlSource>> LFOControlSourceExt for O {
}
}
}
impl<O: IsA<LFOControlSource>> LFOControlSourceExt for O {}

View file

@ -27,62 +27,32 @@ impl TimedValueControlSource {
unsafe impl Send for TimedValueControlSource {}
unsafe impl Sync for TimedValueControlSource {}
pub trait TimedValueControlSourceExt: 'static {
//#[doc(alias = "gst_timed_value_control_source_find_control_point_iter")]
//fn find_control_point_iter(&self, timestamp: impl Into<Option<gst::ClockTime>>) -> /*Ignored*/Option<glib::SequenceIter>;
//#[doc(alias = "gst_timed_value_control_source_get_all")]
//#[doc(alias = "get_all")]
//fn all(&self) -> /*Ignored*/Vec<gst::TimedValue>;
#[doc(alias = "gst_timed_value_control_source_get_count")]
#[doc(alias = "get_count")]
fn count(&self) -> i32;
#[doc(alias = "gst_timed_value_control_source_set")]
fn set(&self, timestamp: gst::ClockTime, value: f64) -> bool;
//#[doc(alias = "gst_timed_value_control_source_set_from_list")]
//fn set_from_list(&self, timedvalues: /*Ignored*/&[gst::TimedValue]) -> bool;
#[doc(alias = "gst_timed_value_control_source_unset")]
fn unset(&self, timestamp: gst::ClockTime) -> bool;
#[doc(alias = "gst_timed_value_control_source_unset_all")]
fn unset_all(&self);
#[doc(alias = "value-added")]
fn connect_value_added<F: Fn(&Self, &ControlPoint) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "value-changed")]
fn connect_value_changed<F: Fn(&Self, &ControlPoint) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "value-removed")]
fn connect_value_removed<F: Fn(&Self, &ControlPoint) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::TimedValueControlSource>> Sealed for T {}
}
impl<O: IsA<TimedValueControlSource>> TimedValueControlSourceExt for O {
pub trait TimedValueControlSourceExt:
IsA<TimedValueControlSource> + sealed::Sealed + 'static
{
//#[doc(alias = "gst_timed_value_control_source_find_control_point_iter")]
//fn find_control_point_iter(&self, timestamp: impl Into<Option<gst::ClockTime>>) -> /*Ignored*/Option<glib::SequenceIter> {
// unsafe { TODO: call ffi:gst_timed_value_control_source_find_control_point_iter() }
//}
//#[doc(alias = "gst_timed_value_control_source_get_all")]
//#[doc(alias = "get_all")]
//fn all(&self) -> /*Ignored*/Vec<gst::TimedValue> {
// unsafe { TODO: call ffi:gst_timed_value_control_source_get_all() }
//}
#[doc(alias = "gst_timed_value_control_source_get_count")]
#[doc(alias = "get_count")]
fn count(&self) -> i32 {
unsafe { ffi::gst_timed_value_control_source_get_count(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "gst_timed_value_control_source_set")]
fn set(&self, timestamp: gst::ClockTime, value: f64) -> bool {
unsafe {
from_glib(ffi::gst_timed_value_control_source_set(
@ -93,10 +63,12 @@ impl<O: IsA<TimedValueControlSource>> TimedValueControlSourceExt for O {
}
}
//#[doc(alias = "gst_timed_value_control_source_set_from_list")]
//fn set_from_list(&self, timedvalues: /*Ignored*/&[gst::TimedValue]) -> bool {
// unsafe { TODO: call ffi:gst_timed_value_control_source_set_from_list() }
//}
#[doc(alias = "gst_timed_value_control_source_unset")]
fn unset(&self, timestamp: gst::ClockTime) -> bool {
unsafe {
from_glib(ffi::gst_timed_value_control_source_unset(
@ -106,12 +78,14 @@ impl<O: IsA<TimedValueControlSource>> TimedValueControlSourceExt for O {
}
}
#[doc(alias = "gst_timed_value_control_source_unset_all")]
fn unset_all(&self) {
unsafe {
ffi::gst_timed_value_control_source_unset_all(self.as_ref().to_glib_none().0);
}
}
#[doc(alias = "value-added")]
fn connect_value_added<F: Fn(&Self, &ControlPoint) + Send + Sync + 'static>(
&self,
f: F,
@ -143,6 +117,7 @@ impl<O: IsA<TimedValueControlSource>> TimedValueControlSourceExt for O {
}
}
#[doc(alias = "value-changed")]
fn connect_value_changed<F: Fn(&Self, &ControlPoint) + Send + Sync + 'static>(
&self,
f: F,
@ -174,6 +149,7 @@ impl<O: IsA<TimedValueControlSource>> TimedValueControlSourceExt for O {
}
}
#[doc(alias = "value-removed")]
fn connect_value_removed<F: Fn(&Self, &ControlPoint) + Send + Sync + 'static>(
&self,
f: F,
@ -205,3 +181,5 @@ impl<O: IsA<TimedValueControlSource>> TimedValueControlSourceExt for O {
}
}
}
impl<O: IsA<TimedValueControlSource>> TimedValueControlSourceExt for O {}

View file

@ -41,19 +41,12 @@ impl Default for TriggerControlSource {
unsafe impl Send for TriggerControlSource {}
unsafe impl Sync for TriggerControlSource {}
pub trait TriggerControlSourceExt: 'static {
fn tolerance(&self) -> i64;
fn set_tolerance(&self, tolerance: i64);
#[doc(alias = "tolerance")]
fn connect_tolerance_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::TriggerControlSource>> Sealed for T {}
}
impl<O: IsA<TriggerControlSource>> TriggerControlSourceExt for O {
pub trait TriggerControlSourceExt: IsA<TriggerControlSource> + sealed::Sealed + 'static {
fn tolerance(&self) -> i64 {
glib::ObjectExt::property(self.as_ref(), "tolerance")
}
@ -62,6 +55,7 @@ impl<O: IsA<TriggerControlSource>> TriggerControlSourceExt for O {
glib::ObjectExt::set_property(self.as_ref(), "tolerance", tolerance)
}
#[doc(alias = "tolerance")]
fn connect_tolerance_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -90,3 +84,5 @@ impl<O: IsA<TriggerControlSource>> TriggerControlSourceExt for O {
}
}
}
impl<O: IsA<TriggerControlSource>> TriggerControlSourceExt for O {}

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -3,7 +3,7 @@
// from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git)
// DO NOT EDIT
#![cfg(target_os = "linux")]
#![cfg(unix)]
use gstreamer_controller_sys::*;
use std::env;

View file

@ -129,52 +129,13 @@ impl Asset {
unsafe impl Send for Asset {}
unsafe impl Sync for Asset {}
pub trait AssetExt: 'static {
#[doc(alias = "ges_asset_extract")]
fn extract(&self) -> Result<Extractable, glib::Error>;
#[doc(alias = "ges_asset_get_error")]
#[doc(alias = "get_error")]
fn error(&self) -> Option<glib::Error>;
#[doc(alias = "ges_asset_get_extractable_type")]
#[doc(alias = "get_extractable_type")]
fn extractable_type(&self) -> glib::types::Type;
#[doc(alias = "ges_asset_get_id")]
#[doc(alias = "get_id")]
fn id(&self) -> glib::GString;
#[doc(alias = "ges_asset_get_proxy")]
#[doc(alias = "get_proxy")]
#[must_use]
fn proxy(&self) -> Option<Asset>;
#[doc(alias = "ges_asset_get_proxy_target")]
#[doc(alias = "get_proxy_target")]
#[must_use]
fn proxy_target(&self) -> Option<Asset>;
#[doc(alias = "ges_asset_list_proxies")]
fn list_proxies(&self) -> Vec<Asset>;
#[doc(alias = "ges_asset_set_proxy")]
fn set_proxy(&self, proxy: Option<&impl IsA<Asset>>) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_asset_unproxy")]
fn unproxy(&self, proxy: &impl IsA<Asset>) -> Result<(), glib::error::BoolError>;
#[doc(alias = "proxy")]
fn connect_proxy_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "proxy-target")]
fn connect_proxy_target_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::Asset>> Sealed for T {}
}
impl<O: IsA<Asset>> AssetExt for O {
pub trait AssetExt: IsA<Asset> + sealed::Sealed + 'static {
#[doc(alias = "ges_asset_extract")]
fn extract(&self) -> Result<Extractable, glib::Error> {
unsafe {
let mut error = ptr::null_mut();
@ -187,10 +148,14 @@ impl<O: IsA<Asset>> AssetExt for O {
}
}
#[doc(alias = "ges_asset_get_error")]
#[doc(alias = "get_error")]
fn error(&self) -> Option<glib::Error> {
unsafe { from_glib_none(ffi::ges_asset_get_error(self.as_ref().to_glib_none().0)) }
}
#[doc(alias = "ges_asset_get_extractable_type")]
#[doc(alias = "get_extractable_type")]
fn extractable_type(&self) -> glib::types::Type {
unsafe {
from_glib(ffi::ges_asset_get_extractable_type(
@ -199,14 +164,22 @@ impl<O: IsA<Asset>> AssetExt for O {
}
}
#[doc(alias = "ges_asset_get_id")]
#[doc(alias = "get_id")]
fn id(&self) -> glib::GString {
unsafe { from_glib_none(ffi::ges_asset_get_id(self.as_ref().to_glib_none().0)) }
}
#[doc(alias = "ges_asset_get_proxy")]
#[doc(alias = "get_proxy")]
#[must_use]
fn proxy(&self) -> Option<Asset> {
unsafe { from_glib_none(ffi::ges_asset_get_proxy(self.as_ref().to_glib_none().0)) }
}
#[doc(alias = "ges_asset_get_proxy_target")]
#[doc(alias = "get_proxy_target")]
#[must_use]
fn proxy_target(&self) -> Option<Asset> {
unsafe {
from_glib_none(ffi::ges_asset_get_proxy_target(
@ -215,6 +188,7 @@ impl<O: IsA<Asset>> AssetExt for O {
}
}
#[doc(alias = "ges_asset_list_proxies")]
fn list_proxies(&self) -> Vec<Asset> {
unsafe {
FromGlibPtrContainer::from_glib_none(ffi::ges_asset_list_proxies(
@ -223,6 +197,7 @@ impl<O: IsA<Asset>> AssetExt for O {
}
}
#[doc(alias = "ges_asset_set_proxy")]
fn set_proxy(&self, proxy: Option<&impl IsA<Asset>>) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -235,6 +210,7 @@ impl<O: IsA<Asset>> AssetExt for O {
}
}
#[doc(alias = "ges_asset_unproxy")]
fn unproxy(&self, proxy: &impl IsA<Asset>) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -247,6 +223,7 @@ impl<O: IsA<Asset>> AssetExt for O {
}
}
#[doc(alias = "proxy")]
fn connect_proxy_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_proxy_trampoline<
P: IsA<Asset>,
@ -272,6 +249,7 @@ impl<O: IsA<Asset>> AssetExt for O {
}
}
#[doc(alias = "proxy-target")]
fn connect_proxy_target_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -300,3 +278,5 @@ impl<O: IsA<Asset>> AssetExt for O {
}
}
}
impl<O: IsA<Asset>> AssetExt for O {}

View file

@ -19,40 +19,37 @@ impl AudioTestSource {
pub const NONE: Option<&'static AudioTestSource> = None;
}
pub trait AudioTestSourceExt: 'static {
#[doc(alias = "ges_audio_test_source_get_freq")]
#[doc(alias = "get_freq")]
fn freq(&self) -> f64;
#[doc(alias = "ges_audio_test_source_get_volume")]
#[doc(alias = "get_volume")]
fn volume(&self) -> f64;
#[doc(alias = "ges_audio_test_source_set_freq")]
fn set_freq(&self, freq: f64);
#[doc(alias = "ges_audio_test_source_set_volume")]
fn set_volume(&self, volume: f64);
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::AudioTestSource>> Sealed for T {}
}
impl<O: IsA<AudioTestSource>> AudioTestSourceExt for O {
pub trait AudioTestSourceExt: IsA<AudioTestSource> + sealed::Sealed + 'static {
#[doc(alias = "ges_audio_test_source_get_freq")]
#[doc(alias = "get_freq")]
fn freq(&self) -> f64 {
unsafe { ffi::ges_audio_test_source_get_freq(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "ges_audio_test_source_get_volume")]
#[doc(alias = "get_volume")]
fn volume(&self) -> f64 {
unsafe { ffi::ges_audio_test_source_get_volume(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "ges_audio_test_source_set_freq")]
fn set_freq(&self, freq: f64) {
unsafe {
ffi::ges_audio_test_source_set_freq(self.as_ref().to_glib_none().0, freq);
}
}
#[doc(alias = "ges_audio_test_source_set_volume")]
fn set_volume(&self, volume: f64) {
unsafe {
ffi::ges_audio_test_source_set_volume(self.as_ref().to_glib_none().0, volume);
}
}
}
impl<O: IsA<AudioTestSource>> AudioTestSourceExt for O {}

View file

@ -19,12 +19,15 @@ impl AudioUriSource {
pub const NONE: Option<&'static AudioUriSource> = None;
}
pub trait AudioUriSourceExt: 'static {
fn uri(&self) -> Option<glib::GString>;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::AudioUriSource>> Sealed for T {}
}
impl<O: IsA<AudioUriSource>> AudioUriSourceExt for O {
pub trait AudioUriSourceExt: IsA<AudioUriSource> + sealed::Sealed + 'static {
fn uri(&self) -> Option<glib::GString> {
glib::ObjectExt::property(self.as_ref(), "uri")
}
}
impl<O: IsA<AudioUriSource>> AudioUriSourceExt for O {}

View file

@ -22,21 +22,15 @@ impl BaseEffect {
pub const NONE: Option<&'static BaseEffect> = None;
}
pub trait BaseEffectExt: 'static {
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::BaseEffect>> Sealed for T {}
}
pub trait BaseEffectExt: IsA<BaseEffect> + sealed::Sealed + 'static {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_base_effect_is_time_effect")]
fn is_time_effect(&self) -> bool;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_base_effect_register_time_property")]
fn register_time_property(&self, child_property_name: &str) -> bool;
}
impl<O: IsA<BaseEffect>> BaseEffectExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
fn is_time_effect(&self) -> bool {
unsafe {
from_glib(ffi::ges_base_effect_is_time_effect(
@ -47,6 +41,7 @@ impl<O: IsA<BaseEffect>> BaseEffectExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_base_effect_register_time_property")]
fn register_time_property(&self, child_property_name: &str) -> bool {
unsafe {
from_glib(ffi::ges_base_effect_register_time_property(
@ -56,3 +51,5 @@ impl<O: IsA<BaseEffect>> BaseEffectExt for O {
}
}
}
impl<O: IsA<BaseEffect>> BaseEffectExt for O {}

View file

@ -33,154 +33,13 @@ impl Clip {
pub const NONE: Option<&'static Clip> = None;
}
pub trait ClipExt: 'static {
#[doc(alias = "ges_clip_add_asset")]
fn add_asset(&self, asset: &impl IsA<Asset>) -> Result<TrackElement, glib::BoolError>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_add_child_to_track")]
fn add_child_to_track(
&self,
child: &impl IsA<TrackElement>,
track: &impl IsA<Track>,
) -> Result<TrackElement, glib::Error>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_add_top_effect")]
fn add_top_effect(&self, effect: &impl IsA<BaseEffect>, index: i32) -> Result<(), glib::Error>;
#[doc(alias = "ges_clip_find_track_element")]
fn find_track_element(
&self,
track: Option<&impl IsA<Track>>,
type_: glib::types::Type,
) -> Option<TrackElement>;
#[doc(alias = "ges_clip_find_track_elements")]
fn find_track_elements(
&self,
track: Option<&impl IsA<Track>>,
track_type: TrackType,
type_: glib::types::Type,
) -> Vec<TrackElement>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_get_duration_limit")]
#[doc(alias = "get_duration_limit")]
fn duration_limit(&self) -> gst::ClockTime;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_get_internal_time_from_timeline_time")]
#[doc(alias = "get_internal_time_from_timeline_time")]
fn internal_time_from_timeline_time(
&self,
child: &impl IsA<TrackElement>,
timeline_time: impl Into<Option<gst::ClockTime>>,
) -> Result<Option<gst::ClockTime>, glib::Error>;
#[doc(alias = "ges_clip_get_layer")]
#[doc(alias = "get_layer")]
fn layer(&self) -> Option<Layer>;
#[doc(alias = "ges_clip_get_supported_formats")]
#[doc(alias = "get_supported_formats")]
fn supported_formats(&self) -> TrackType;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_get_timeline_time_from_internal_time")]
#[doc(alias = "get_timeline_time_from_internal_time")]
fn timeline_time_from_internal_time(
&self,
child: &impl IsA<TrackElement>,
internal_time: impl Into<Option<gst::ClockTime>>,
) -> Result<Option<gst::ClockTime>, glib::Error>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_get_timeline_time_from_source_frame")]
#[doc(alias = "get_timeline_time_from_source_frame")]
fn timeline_time_from_source_frame(
&self,
frame_number: FrameNumber,
) -> Result<Option<gst::ClockTime>, glib::Error>;
#[doc(alias = "ges_clip_get_top_effect_index")]
#[doc(alias = "get_top_effect_index")]
fn top_effect_index(&self, effect: &impl IsA<BaseEffect>) -> i32;
#[doc(alias = "ges_clip_get_top_effect_position")]
#[doc(alias = "get_top_effect_position")]
fn top_effect_position(&self, effect: &impl IsA<BaseEffect>) -> i32;
#[doc(alias = "ges_clip_get_top_effects")]
#[doc(alias = "get_top_effects")]
fn top_effects(&self) -> Vec<TrackElement>;
#[doc(alias = "ges_clip_move_to_layer")]
fn move_to_layer(&self, layer: &impl IsA<Layer>) -> Result<(), glib::error::BoolError>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_move_to_layer_full")]
fn move_to_layer_full(&self, layer: &impl IsA<Layer>) -> Result<(), glib::Error>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_remove_top_effect")]
fn remove_top_effect(&self, effect: &impl IsA<BaseEffect>) -> Result<(), glib::Error>;
#[doc(alias = "ges_clip_set_supported_formats")]
fn set_supported_formats(&self, supportedformats: TrackType);
#[doc(alias = "ges_clip_set_top_effect_index")]
fn set_top_effect_index(
&self,
effect: &impl IsA<BaseEffect>,
newindex: u32,
) -> Result<(), glib::error::BoolError>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_set_top_effect_index_full")]
fn set_top_effect_index_full(
&self,
effect: &impl IsA<BaseEffect>,
newindex: u32,
) -> Result<(), glib::Error>;
#[doc(alias = "ges_clip_set_top_effect_priority")]
fn set_top_effect_priority(
&self,
effect: &impl IsA<BaseEffect>,
newpriority: u32,
) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_clip_split")]
fn split(&self, position: u64) -> Result<Clip, glib::BoolError>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_split_full")]
fn split_full(&self, position: u64) -> Result<Option<Clip>, glib::Error>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "duration-limit")]
fn connect_duration_limit_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "layer")]
fn connect_layer_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "supported-formats")]
fn connect_supported_formats_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::Clip>> Sealed for T {}
}
impl<O: IsA<Clip>> ClipExt for O {
pub trait ClipExt: IsA<Clip> + sealed::Sealed + 'static {
#[doc(alias = "ges_clip_add_asset")]
fn add_asset(&self, asset: &impl IsA<Asset>) -> Result<TrackElement, glib::BoolError> {
unsafe {
Option::<_>::from_glib_none(ffi::ges_clip_add_asset(
@ -193,6 +52,7 @@ impl<O: IsA<Clip>> ClipExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_add_child_to_track")]
fn add_child_to_track(
&self,
child: &impl IsA<TrackElement>,
@ -216,6 +76,7 @@ impl<O: IsA<Clip>> ClipExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_add_top_effect")]
fn add_top_effect(&self, effect: &impl IsA<BaseEffect>, index: i32) -> Result<(), glib::Error> {
unsafe {
let mut error = ptr::null_mut();
@ -234,6 +95,7 @@ impl<O: IsA<Clip>> ClipExt for O {
}
}
#[doc(alias = "ges_clip_find_track_element")]
fn find_track_element(
&self,
track: Option<&impl IsA<Track>>,
@ -248,6 +110,7 @@ impl<O: IsA<Clip>> ClipExt for O {
}
}
#[doc(alias = "ges_clip_find_track_elements")]
fn find_track_elements(
&self,
track: Option<&impl IsA<Track>>,
@ -266,6 +129,8 @@ impl<O: IsA<Clip>> ClipExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_get_duration_limit")]
#[doc(alias = "get_duration_limit")]
fn duration_limit(&self) -> gst::ClockTime {
unsafe {
try_from_glib(ffi::ges_clip_get_duration_limit(
@ -277,6 +142,8 @@ impl<O: IsA<Clip>> ClipExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_get_internal_time_from_timeline_time")]
#[doc(alias = "get_internal_time_from_timeline_time")]
fn internal_time_from_timeline_time(
&self,
child: &impl IsA<TrackElement>,
@ -298,10 +165,14 @@ impl<O: IsA<Clip>> ClipExt for O {
}
}
#[doc(alias = "ges_clip_get_layer")]
#[doc(alias = "get_layer")]
fn layer(&self) -> Option<Layer> {
unsafe { from_glib_full(ffi::ges_clip_get_layer(self.as_ref().to_glib_none().0)) }
}
#[doc(alias = "ges_clip_get_supported_formats")]
#[doc(alias = "get_supported_formats")]
fn supported_formats(&self) -> TrackType {
unsafe {
from_glib(ffi::ges_clip_get_supported_formats(
@ -312,6 +183,8 @@ impl<O: IsA<Clip>> ClipExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_get_timeline_time_from_internal_time")]
#[doc(alias = "get_timeline_time_from_internal_time")]
fn timeline_time_from_internal_time(
&self,
child: &impl IsA<TrackElement>,
@ -335,6 +208,8 @@ impl<O: IsA<Clip>> ClipExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_get_timeline_time_from_source_frame")]
#[doc(alias = "get_timeline_time_from_source_frame")]
fn timeline_time_from_source_frame(
&self,
frame_number: FrameNumber,
@ -354,6 +229,8 @@ impl<O: IsA<Clip>> ClipExt for O {
}
}
#[doc(alias = "ges_clip_get_top_effect_index")]
#[doc(alias = "get_top_effect_index")]
fn top_effect_index(&self, effect: &impl IsA<BaseEffect>) -> i32 {
unsafe {
ffi::ges_clip_get_top_effect_index(
@ -363,6 +240,8 @@ impl<O: IsA<Clip>> ClipExt for O {
}
}
#[doc(alias = "ges_clip_get_top_effect_position")]
#[doc(alias = "get_top_effect_position")]
fn top_effect_position(&self, effect: &impl IsA<BaseEffect>) -> i32 {
unsafe {
ffi::ges_clip_get_top_effect_position(
@ -372,6 +251,8 @@ impl<O: IsA<Clip>> ClipExt for O {
}
}
#[doc(alias = "ges_clip_get_top_effects")]
#[doc(alias = "get_top_effects")]
fn top_effects(&self) -> Vec<TrackElement> {
unsafe {
FromGlibPtrContainer::from_glib_full(ffi::ges_clip_get_top_effects(
@ -380,6 +261,7 @@ impl<O: IsA<Clip>> ClipExt for O {
}
}
#[doc(alias = "ges_clip_move_to_layer")]
fn move_to_layer(&self, layer: &impl IsA<Layer>) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -394,6 +276,7 @@ impl<O: IsA<Clip>> ClipExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_move_to_layer_full")]
fn move_to_layer_full(&self, layer: &impl IsA<Layer>) -> Result<(), glib::Error> {
unsafe {
let mut error = ptr::null_mut();
@ -413,6 +296,7 @@ impl<O: IsA<Clip>> ClipExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_remove_top_effect")]
fn remove_top_effect(&self, effect: &impl IsA<BaseEffect>) -> Result<(), glib::Error> {
unsafe {
let mut error = ptr::null_mut();
@ -430,6 +314,7 @@ impl<O: IsA<Clip>> ClipExt for O {
}
}
#[doc(alias = "ges_clip_set_supported_formats")]
fn set_supported_formats(&self, supportedformats: TrackType) {
unsafe {
ffi::ges_clip_set_supported_formats(
@ -439,6 +324,7 @@ impl<O: IsA<Clip>> ClipExt for O {
}
}
#[doc(alias = "ges_clip_set_top_effect_index")]
fn set_top_effect_index(
&self,
effect: &impl IsA<BaseEffect>,
@ -458,6 +344,7 @@ impl<O: IsA<Clip>> ClipExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_set_top_effect_index_full")]
fn set_top_effect_index_full(
&self,
effect: &impl IsA<BaseEffect>,
@ -480,6 +367,7 @@ impl<O: IsA<Clip>> ClipExt for O {
}
}
#[doc(alias = "ges_clip_set_top_effect_priority")]
fn set_top_effect_priority(
&self,
effect: &impl IsA<BaseEffect>,
@ -497,6 +385,7 @@ impl<O: IsA<Clip>> ClipExt for O {
}
}
#[doc(alias = "ges_clip_split")]
fn split(&self, position: u64) -> Result<Clip, glib::BoolError> {
unsafe {
Option::<_>::from_glib_none(ffi::ges_clip_split(
@ -509,6 +398,7 @@ impl<O: IsA<Clip>> ClipExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_split_full")]
fn split_full(&self, position: u64) -> Result<Option<Clip>, glib::Error> {
unsafe {
let mut error = ptr::null_mut();
@ -524,6 +414,7 @@ impl<O: IsA<Clip>> ClipExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "duration-limit")]
fn connect_duration_limit_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_duration_limit_trampoline<P: IsA<Clip>, F: Fn(&P) + 'static>(
this: *mut ffi::GESClip,
@ -546,6 +437,7 @@ impl<O: IsA<Clip>> ClipExt for O {
}
}
#[doc(alias = "layer")]
fn connect_layer_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_layer_trampoline<P: IsA<Clip>, F: Fn(&P) + 'static>(
this: *mut ffi::GESClip,
@ -568,6 +460,7 @@ impl<O: IsA<Clip>> ClipExt for O {
}
}
#[doc(alias = "supported-formats")]
fn connect_supported_formats_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_supported_formats_trampoline<
P: IsA<Clip>,
@ -593,3 +486,5 @@ impl<O: IsA<Clip>> ClipExt for O {
}
}
}
impl<O: IsA<Clip>> ClipExt for O {}

View file

@ -33,36 +33,16 @@ impl ClipAsset {
unsafe impl Send for ClipAsset {}
unsafe impl Sync for ClipAsset {}
pub trait ClipAssetExt: 'static {
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::ClipAsset>> Sealed for T {}
}
pub trait ClipAssetExt: IsA<ClipAsset> + sealed::Sealed + 'static {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_asset_get_frame_time")]
#[doc(alias = "get_frame_time")]
fn frame_time(&self, frame_number: FrameNumber) -> Option<gst::ClockTime>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_asset_get_natural_framerate")]
#[doc(alias = "get_natural_framerate")]
fn natural_framerate(&self) -> Option<(i32, i32)>;
#[doc(alias = "ges_clip_asset_get_supported_formats")]
#[doc(alias = "get_supported_formats")]
fn supported_formats(&self) -> TrackType;
#[doc(alias = "ges_clip_asset_set_supported_formats")]
fn set_supported_formats(&self, supportedformats: TrackType);
#[doc(alias = "supported-formats")]
fn connect_supported_formats_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
}
impl<O: IsA<ClipAsset>> ClipAssetExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
fn frame_time(&self, frame_number: FrameNumber) -> Option<gst::ClockTime> {
unsafe {
from_glib(ffi::ges_clip_asset_get_frame_time(
@ -74,6 +54,8 @@ impl<O: IsA<ClipAsset>> ClipAssetExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_asset_get_natural_framerate")]
#[doc(alias = "get_natural_framerate")]
fn natural_framerate(&self) -> Option<(i32, i32)> {
unsafe {
let mut framerate_n = mem::MaybeUninit::uninit();
@ -91,6 +73,8 @@ impl<O: IsA<ClipAsset>> ClipAssetExt for O {
}
}
#[doc(alias = "ges_clip_asset_get_supported_formats")]
#[doc(alias = "get_supported_formats")]
fn supported_formats(&self) -> TrackType {
unsafe {
from_glib(ffi::ges_clip_asset_get_supported_formats(
@ -99,6 +83,7 @@ impl<O: IsA<ClipAsset>> ClipAssetExt for O {
}
}
#[doc(alias = "ges_clip_asset_set_supported_formats")]
fn set_supported_formats(&self, supportedformats: TrackType) {
unsafe {
ffi::ges_clip_asset_set_supported_formats(
@ -108,6 +93,7 @@ impl<O: IsA<ClipAsset>> ClipAssetExt for O {
}
}
#[doc(alias = "supported-formats")]
fn connect_supported_formats_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -136,3 +122,5 @@ impl<O: IsA<ClipAsset>> ClipAssetExt for O {
}
}
}
impl<O: IsA<ClipAsset>> ClipAssetExt for O {}

View file

@ -31,51 +31,13 @@ impl Container {
}
}
pub trait GESContainerExt: 'static {
#[doc(alias = "ges_container_add")]
fn add(&self, child: &impl IsA<TimelineElement>) -> Result<(), glib::error::BoolError>;
#[cfg_attr(feature = "v1_18", deprecated = "Since 1.18")]
#[allow(deprecated)]
#[doc(alias = "ges_container_edit")]
fn edit(
&self,
layers: &[Layer],
new_layer_priority: i32,
mode: EditMode,
edge: Edge,
position: u64,
) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_container_get_children")]
#[doc(alias = "get_children")]
fn children(&self, recursive: bool) -> Vec<TimelineElement>;
#[doc(alias = "ges_container_remove")]
fn remove(&self, child: &impl IsA<TimelineElement>) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_container_ungroup")]
fn ungroup(self, recursive: bool) -> Vec<Container>;
fn height(&self) -> u32;
#[doc(alias = "child-added")]
fn connect_child_added<F: Fn(&Self, &TimelineElement) + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "child-removed")]
fn connect_child_removed<F: Fn(&Self, &TimelineElement) + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "height")]
fn connect_height_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::Container>> Sealed for T {}
}
impl<O: IsA<Container>> GESContainerExt for O {
pub trait GESContainerExt: IsA<Container> + sealed::Sealed + 'static {
#[doc(alias = "ges_container_add")]
fn add(&self, child: &impl IsA<TimelineElement>) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -88,7 +50,9 @@ impl<O: IsA<Container>> GESContainerExt for O {
}
}
#[cfg_attr(feature = "v1_18", deprecated = "Since 1.18")]
#[allow(deprecated)]
#[doc(alias = "ges_container_edit")]
fn edit(
&self,
layers: &[Layer],
@ -112,6 +76,8 @@ impl<O: IsA<Container>> GESContainerExt for O {
}
}
#[doc(alias = "ges_container_get_children")]
#[doc(alias = "get_children")]
fn children(&self, recursive: bool) -> Vec<TimelineElement> {
unsafe {
FromGlibPtrContainer::from_glib_full(ffi::ges_container_get_children(
@ -121,6 +87,7 @@ impl<O: IsA<Container>> GESContainerExt for O {
}
}
#[doc(alias = "ges_container_remove")]
fn remove(&self, child: &impl IsA<TimelineElement>) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -133,6 +100,7 @@ impl<O: IsA<Container>> GESContainerExt for O {
}
}
#[doc(alias = "ges_container_ungroup")]
fn ungroup(self, recursive: bool) -> Vec<Container> {
unsafe {
FromGlibPtrContainer::from_glib_full(ffi::ges_container_ungroup(
@ -146,6 +114,7 @@ impl<O: IsA<Container>> GESContainerExt for O {
glib::ObjectExt::property(self.as_ref(), "height")
}
#[doc(alias = "child-added")]
fn connect_child_added<F: Fn(&Self, &TimelineElement) + 'static>(
&self,
f: F,
@ -177,6 +146,7 @@ impl<O: IsA<Container>> GESContainerExt for O {
}
}
#[doc(alias = "child-removed")]
fn connect_child_removed<F: Fn(&Self, &TimelineElement) + 'static>(
&self,
f: F,
@ -208,6 +178,7 @@ impl<O: IsA<Container>> GESContainerExt for O {
}
}
#[doc(alias = "height")]
fn connect_height_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_height_trampoline<P: IsA<Container>, F: Fn(&P) + 'static>(
this: *mut ffi::GESContainer,
@ -230,3 +201,5 @@ impl<O: IsA<Container>> GESContainerExt for O {
}
}
}
impl<O: IsA<Container>> GESContainerExt for O {}

View file

@ -28,13 +28,16 @@ impl Effect {
}
}
pub trait EffectExt: 'static {
#[doc(alias = "bin-description")]
fn bin_description(&self) -> Option<glib::GString>;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::Effect>> Sealed for T {}
}
impl<O: IsA<Effect>> EffectExt for O {
pub trait EffectExt: IsA<Effect> + sealed::Sealed + 'static {
#[doc(alias = "bin-description")]
fn bin_description(&self) -> Option<glib::GString> {
glib::ObjectExt::property(self.as_ref(), "bin-description")
}
}
impl<O: IsA<Effect>> EffectExt for O {}

View file

@ -35,20 +35,21 @@ impl EffectClip {
}
}
pub trait EffectClipExt: 'static {
#[doc(alias = "audio-bin-description")]
fn audio_bin_description(&self) -> Option<glib::GString>;
#[doc(alias = "video-bin-description")]
fn video_bin_description(&self) -> Option<glib::GString>;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::EffectClip>> Sealed for T {}
}
impl<O: IsA<EffectClip>> EffectClipExt for O {
pub trait EffectClipExt: IsA<EffectClip> + sealed::Sealed + 'static {
#[doc(alias = "audio-bin-description")]
fn audio_bin_description(&self) -> Option<glib::GString> {
glib::ObjectExt::property(self.as_ref(), "audio-bin-description")
}
#[doc(alias = "video-bin-description")]
fn video_bin_description(&self) -> Option<glib::GString> {
glib::ObjectExt::property(self.as_ref(), "video-bin-description")
}
}
impl<O: IsA<EffectClip>> EffectClipExt for O {}

View file

@ -19,20 +19,14 @@ impl Extractable {
pub const NONE: Option<&'static Extractable> = None;
}
pub trait ExtractableExt: 'static {
#[doc(alias = "ges_extractable_get_asset")]
#[doc(alias = "get_asset")]
fn asset(&self) -> Option<Asset>;
#[doc(alias = "ges_extractable_get_id")]
#[doc(alias = "get_id")]
fn id(&self) -> glib::GString;
#[doc(alias = "ges_extractable_set_asset")]
fn set_asset(&self, asset: &impl IsA<Asset>) -> Result<(), glib::error::BoolError>;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::Extractable>> Sealed for T {}
}
impl<O: IsA<Extractable>> ExtractableExt for O {
pub trait ExtractableExt: IsA<Extractable> + sealed::Sealed + 'static {
#[doc(alias = "ges_extractable_get_asset")]
#[doc(alias = "get_asset")]
fn asset(&self) -> Option<Asset> {
unsafe {
from_glib_none(ffi::ges_extractable_get_asset(
@ -41,10 +35,13 @@ impl<O: IsA<Extractable>> ExtractableExt for O {
}
}
#[doc(alias = "ges_extractable_get_id")]
#[doc(alias = "get_id")]
fn id(&self) -> glib::GString {
unsafe { from_glib_full(ffi::ges_extractable_get_id(self.as_ref().to_glib_none().0)) }
}
#[doc(alias = "ges_extractable_set_asset")]
fn set_asset(&self, asset: &impl IsA<Asset>) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -57,3 +54,5 @@ impl<O: IsA<Extractable>> ExtractableExt for O {
}
}
}
impl<O: IsA<Extractable>> ExtractableExt for O {}

View file

@ -59,25 +59,15 @@ impl Formatter {
}
}
pub trait FormatterExt: 'static {
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::Formatter>> Sealed for T {}
}
pub trait FormatterExt: IsA<Formatter> + sealed::Sealed + 'static {
#[cfg_attr(feature = "v1_18", deprecated = "Since 1.18")]
#[allow(deprecated)]
#[doc(alias = "ges_formatter_load_from_uri")]
fn load_from_uri(&self, timeline: &impl IsA<Timeline>, uri: &str) -> Result<(), glib::Error>;
#[cfg_attr(feature = "v1_18", deprecated = "Since 1.18")]
#[allow(deprecated)]
#[doc(alias = "ges_formatter_save_to_uri")]
fn save_to_uri(
&self,
timeline: &impl IsA<Timeline>,
uri: &str,
overwrite: bool,
) -> Result<(), glib::Error>;
}
impl<O: IsA<Formatter>> FormatterExt for O {
#[allow(deprecated)]
fn load_from_uri(&self, timeline: &impl IsA<Timeline>, uri: &str) -> Result<(), glib::Error> {
unsafe {
let mut error = ptr::null_mut();
@ -96,7 +86,9 @@ impl<O: IsA<Formatter>> FormatterExt for O {
}
}
#[cfg_attr(feature = "v1_18", deprecated = "Since 1.18")]
#[allow(deprecated)]
#[doc(alias = "ges_formatter_save_to_uri")]
fn save_to_uri(
&self,
timeline: &impl IsA<Timeline>,
@ -121,3 +113,5 @@ impl<O: IsA<Formatter>> FormatterExt for O {
}
}
}
impl<O: IsA<Formatter>> FormatterExt for O {}

View file

@ -19,12 +19,15 @@ impl ImageSource {
pub const NONE: Option<&'static ImageSource> = None;
}
pub trait ImageSourceExt: 'static {
fn uri(&self) -> Option<glib::GString>;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::ImageSource>> Sealed for T {}
}
impl<O: IsA<ImageSource>> ImageSourceExt for O {
pub trait ImageSourceExt: IsA<ImageSource> + sealed::Sealed + 'static {
fn uri(&self) -> Option<glib::GString> {
glib::ObjectExt::property(self.as_ref(), "uri")
}
}
impl<O: IsA<ImageSource>> ImageSourceExt for O {}

View file

@ -43,113 +43,13 @@ impl Default for Layer {
}
}
pub trait LayerExt: 'static {
#[doc(alias = "ges_layer_add_asset")]
fn add_asset(
&self,
asset: &impl IsA<Asset>,
start: impl Into<Option<gst::ClockTime>>,
inpoint: impl Into<Option<gst::ClockTime>>,
duration: impl Into<Option<gst::ClockTime>>,
track_types: TrackType,
) -> Result<Clip, glib::BoolError>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_layer_add_asset_full")]
fn add_asset_full(
&self,
asset: &impl IsA<Asset>,
start: impl Into<Option<gst::ClockTime>>,
inpoint: impl Into<Option<gst::ClockTime>>,
duration: impl Into<Option<gst::ClockTime>>,
track_types: TrackType,
) -> Result<Clip, glib::Error>;
#[doc(alias = "ges_layer_add_clip")]
fn add_clip(&self, clip: &impl IsA<Clip>) -> Result<(), glib::error::BoolError>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_layer_add_clip_full")]
fn add_clip_full(&self, clip: &impl IsA<Clip>) -> Result<(), glib::Error>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_layer_get_active_for_track")]
#[doc(alias = "get_active_for_track")]
fn is_active_for_track(&self, track: &impl IsA<Track>) -> bool;
#[doc(alias = "ges_layer_get_auto_transition")]
#[doc(alias = "get_auto_transition")]
fn is_auto_transition(&self) -> bool;
#[doc(alias = "ges_layer_get_clips")]
#[doc(alias = "get_clips")]
fn clips(&self) -> Vec<Clip>;
#[doc(alias = "ges_layer_get_clips_in_interval")]
#[doc(alias = "get_clips_in_interval")]
fn clips_in_interval(
&self,
start: impl Into<Option<gst::ClockTime>>,
end: impl Into<Option<gst::ClockTime>>,
) -> Vec<Clip>;
#[doc(alias = "ges_layer_get_duration")]
#[doc(alias = "get_duration")]
fn duration(&self) -> gst::ClockTime;
#[doc(alias = "ges_layer_get_priority")]
#[doc(alias = "get_priority")]
fn priority(&self) -> u32;
#[doc(alias = "ges_layer_get_timeline")]
#[doc(alias = "get_timeline")]
fn timeline(&self) -> Option<Timeline>;
#[doc(alias = "ges_layer_is_empty")]
fn is_empty(&self) -> bool;
#[doc(alias = "ges_layer_remove_clip")]
fn remove_clip(&self, clip: &impl IsA<Clip>) -> Result<(), glib::error::BoolError>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_layer_set_active_for_tracks")]
fn set_active_for_tracks(&self, active: bool, tracks: &[Track]) -> bool;
#[doc(alias = "ges_layer_set_auto_transition")]
fn set_auto_transition(&self, auto_transition: bool);
#[cfg_attr(feature = "v1_16", deprecated = "Since 1.16")]
#[allow(deprecated)]
#[doc(alias = "ges_layer_set_priority")]
fn set_priority(&self, priority: u32);
#[doc(alias = "ges_layer_set_timeline")]
fn set_timeline(&self, timeline: &impl IsA<Timeline>);
//#[cfg(feature = "v1_18")]
//#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
//#[doc(alias = "active-changed")]
//fn connect_active_changed<Unsupported or ignored types>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "clip-added")]
fn connect_clip_added<F: Fn(&Self, &Clip) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "clip-removed")]
fn connect_clip_removed<F: Fn(&Self, &Clip) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "auto-transition")]
fn connect_auto_transition_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[cfg_attr(feature = "v1_16", deprecated = "Since 1.16")]
#[doc(alias = "priority")]
fn connect_priority_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::Layer>> Sealed for T {}
}
impl<O: IsA<Layer>> LayerExt for O {
pub trait LayerExt: IsA<Layer> + sealed::Sealed + 'static {
#[doc(alias = "ges_layer_add_asset")]
fn add_asset(
&self,
asset: &impl IsA<Asset>,
@ -173,6 +73,7 @@ impl<O: IsA<Layer>> LayerExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_layer_add_asset_full")]
fn add_asset_full(
&self,
asset: &impl IsA<Asset>,
@ -200,6 +101,7 @@ impl<O: IsA<Layer>> LayerExt for O {
}
}
#[doc(alias = "ges_layer_add_clip")]
fn add_clip(&self, clip: &impl IsA<Clip>) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -214,6 +116,7 @@ impl<O: IsA<Layer>> LayerExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_layer_add_clip_full")]
fn add_clip_full(&self, clip: &impl IsA<Clip>) -> Result<(), glib::Error> {
unsafe {
let mut error = ptr::null_mut();
@ -233,6 +136,8 @@ impl<O: IsA<Layer>> LayerExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_layer_get_active_for_track")]
#[doc(alias = "get_active_for_track")]
fn is_active_for_track(&self, track: &impl IsA<Track>) -> bool {
unsafe {
from_glib(ffi::ges_layer_get_active_for_track(
@ -242,6 +147,8 @@ impl<O: IsA<Layer>> LayerExt for O {
}
}
#[doc(alias = "ges_layer_get_auto_transition")]
#[doc(alias = "get_auto_transition")]
fn is_auto_transition(&self) -> bool {
unsafe {
from_glib(ffi::ges_layer_get_auto_transition(
@ -250,6 +157,8 @@ impl<O: IsA<Layer>> LayerExt for O {
}
}
#[doc(alias = "ges_layer_get_clips")]
#[doc(alias = "get_clips")]
fn clips(&self) -> Vec<Clip> {
unsafe {
FromGlibPtrContainer::from_glib_full(ffi::ges_layer_get_clips(
@ -258,6 +167,8 @@ impl<O: IsA<Layer>> LayerExt for O {
}
}
#[doc(alias = "ges_layer_get_clips_in_interval")]
#[doc(alias = "get_clips_in_interval")]
fn clips_in_interval(
&self,
start: impl Into<Option<gst::ClockTime>>,
@ -272,6 +183,8 @@ impl<O: IsA<Layer>> LayerExt for O {
}
}
#[doc(alias = "ges_layer_get_duration")]
#[doc(alias = "get_duration")]
fn duration(&self) -> gst::ClockTime {
unsafe {
try_from_glib(ffi::ges_layer_get_duration(self.as_ref().to_glib_none().0))
@ -279,18 +192,24 @@ impl<O: IsA<Layer>> LayerExt for O {
}
}
#[doc(alias = "ges_layer_get_priority")]
#[doc(alias = "get_priority")]
fn priority(&self) -> u32 {
unsafe { ffi::ges_layer_get_priority(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "ges_layer_get_timeline")]
#[doc(alias = "get_timeline")]
fn timeline(&self) -> Option<Timeline> {
unsafe { from_glib_none(ffi::ges_layer_get_timeline(self.as_ref().to_glib_none().0)) }
}
#[doc(alias = "ges_layer_is_empty")]
fn is_empty(&self) -> bool {
unsafe { from_glib(ffi::ges_layer_is_empty(self.as_ref().to_glib_none().0)) }
}
#[doc(alias = "ges_layer_remove_clip")]
fn remove_clip(&self, clip: &impl IsA<Clip>) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -305,6 +224,7 @@ impl<O: IsA<Layer>> LayerExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_layer_set_active_for_tracks")]
fn set_active_for_tracks(&self, active: bool, tracks: &[Track]) -> bool {
unsafe {
from_glib(ffi::ges_layer_set_active_for_tracks(
@ -315,6 +235,7 @@ impl<O: IsA<Layer>> LayerExt for O {
}
}
#[doc(alias = "ges_layer_set_auto_transition")]
fn set_auto_transition(&self, auto_transition: bool) {
unsafe {
ffi::ges_layer_set_auto_transition(
@ -324,13 +245,16 @@ impl<O: IsA<Layer>> LayerExt for O {
}
}
#[cfg_attr(feature = "v1_16", deprecated = "Since 1.16")]
#[allow(deprecated)]
#[doc(alias = "ges_layer_set_priority")]
fn set_priority(&self, priority: u32) {
unsafe {
ffi::ges_layer_set_priority(self.as_ref().to_glib_none().0, priority);
}
}
#[doc(alias = "ges_layer_set_timeline")]
fn set_timeline(&self, timeline: &impl IsA<Timeline>) {
unsafe {
ffi::ges_layer_set_timeline(
@ -342,10 +266,12 @@ impl<O: IsA<Layer>> LayerExt for O {
//#[cfg(feature = "v1_18")]
//#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
//#[doc(alias = "active-changed")]
//fn connect_active_changed<Unsupported or ignored types>(&self, f: F) -> SignalHandlerId {
// Empty ctype tracks: *.PtrArray TypeId { ns_id: 1, id: 17 }
//}
#[doc(alias = "clip-added")]
fn connect_clip_added<F: Fn(&Self, &Clip) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn clip_added_trampoline<P: IsA<Layer>, F: Fn(&P, &Clip) + 'static>(
this: *mut ffi::GESLayer,
@ -371,6 +297,7 @@ impl<O: IsA<Layer>> LayerExt for O {
}
}
#[doc(alias = "clip-removed")]
fn connect_clip_removed<F: Fn(&Self, &Clip) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn clip_removed_trampoline<P: IsA<Layer>, F: Fn(&P, &Clip) + 'static>(
this: *mut ffi::GESLayer,
@ -396,6 +323,7 @@ impl<O: IsA<Layer>> LayerExt for O {
}
}
#[doc(alias = "auto-transition")]
fn connect_auto_transition_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_auto_transition_trampoline<
P: IsA<Layer>,
@ -421,6 +349,8 @@ impl<O: IsA<Layer>> LayerExt for O {
}
}
#[cfg_attr(feature = "v1_16", deprecated = "Since 1.16")]
#[doc(alias = "priority")]
fn connect_priority_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_priority_trampoline<P: IsA<Layer>, F: Fn(&P) + 'static>(
this: *mut ffi::GESLayer,
@ -443,3 +373,5 @@ impl<O: IsA<Layer>> LayerExt for O {
}
}
}
impl<O: IsA<Layer>> LayerExt for O {}

View file

@ -27,164 +27,13 @@ impl MetaContainer {
pub const NONE: Option<&'static MetaContainer> = None;
}
pub trait MetaContainerExt: 'static {
#[doc(alias = "ges_meta_container_add_metas_from_string")]
fn add_metas_from_string(&self, str: &str) -> bool;
#[doc(alias = "ges_meta_container_check_meta_registered")]
fn check_meta_registered(&self, meta_item: &str) -> Option<(MetaFlag, glib::types::Type)>;
#[doc(alias = "ges_meta_container_foreach")]
fn foreach<P: FnMut(&MetaContainer, &str, &glib::Value)>(&self, func: P);
#[doc(alias = "ges_meta_container_get_boolean")]
#[doc(alias = "get_boolean")]
fn boolean(&self, meta_item: &str) -> Option<bool>;
#[doc(alias = "ges_meta_container_get_date")]
#[doc(alias = "get_date")]
fn date(&self, meta_item: &str) -> Option<glib::Date>;
#[doc(alias = "ges_meta_container_get_date_time")]
#[doc(alias = "get_date_time")]
fn date_time(&self, meta_item: &str) -> Option<gst::DateTime>;
#[doc(alias = "ges_meta_container_get_double")]
#[doc(alias = "get_double")]
fn double(&self, meta_item: &str) -> Option<f64>;
#[doc(alias = "ges_meta_container_get_float")]
#[doc(alias = "get_float")]
fn float(&self, meta_item: &str) -> Option<f32>;
#[doc(alias = "ges_meta_container_get_int")]
#[doc(alias = "get_int")]
fn int(&self, meta_item: &str) -> Option<i32>;
#[doc(alias = "ges_meta_container_get_int64")]
#[doc(alias = "get_int64")]
fn int64(&self, meta_item: &str) -> Option<i64>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_meta_container_get_marker_list")]
#[doc(alias = "get_marker_list")]
fn marker_list(&self, key: &str) -> Option<MarkerList>;
#[doc(alias = "ges_meta_container_get_meta")]
#[doc(alias = "get_meta")]
fn meta(&self, key: &str) -> Option<glib::Value>;
#[doc(alias = "ges_meta_container_get_string")]
#[doc(alias = "get_string")]
fn string(&self, meta_item: &str) -> Option<glib::GString>;
#[doc(alias = "ges_meta_container_get_uint")]
#[doc(alias = "get_uint")]
fn uint(&self, meta_item: &str) -> Option<u32>;
#[doc(alias = "ges_meta_container_get_uint64")]
#[doc(alias = "get_uint64")]
fn uint64(&self, meta_item: &str) -> Option<u64>;
#[doc(alias = "ges_meta_container_metas_to_string")]
fn metas_to_string(&self) -> glib::GString;
#[doc(alias = "ges_meta_container_register_meta")]
fn register_meta(&self, flags: MetaFlag, meta_item: &str, value: &glib::Value) -> bool;
#[doc(alias = "ges_meta_container_register_meta_boolean")]
fn register_meta_boolean(&self, flags: MetaFlag, meta_item: &str, value: bool) -> bool;
#[doc(alias = "ges_meta_container_register_meta_date")]
fn register_meta_date(&self, flags: MetaFlag, meta_item: &str, value: &glib::Date) -> bool;
#[doc(alias = "ges_meta_container_register_meta_date_time")]
fn register_meta_date_time(
&self,
flags: MetaFlag,
meta_item: &str,
value: &gst::DateTime,
) -> bool;
#[doc(alias = "ges_meta_container_register_meta_double")]
fn register_meta_double(&self, flags: MetaFlag, meta_item: &str, value: f64) -> bool;
#[doc(alias = "ges_meta_container_register_meta_float")]
fn register_meta_float(&self, flags: MetaFlag, meta_item: &str, value: f32) -> bool;
#[doc(alias = "ges_meta_container_register_meta_int")]
fn register_meta_int(&self, flags: MetaFlag, meta_item: &str, value: i32) -> bool;
#[doc(alias = "ges_meta_container_register_meta_int64")]
fn register_meta_int64(&self, flags: MetaFlag, meta_item: &str, value: i64) -> bool;
#[doc(alias = "ges_meta_container_register_meta_string")]
fn register_meta_string(&self, flags: MetaFlag, meta_item: &str, value: &str) -> bool;
#[doc(alias = "ges_meta_container_register_meta_uint")]
fn register_meta_uint(&self, flags: MetaFlag, meta_item: &str, value: u32) -> bool;
#[doc(alias = "ges_meta_container_register_meta_uint64")]
fn register_meta_uint64(&self, flags: MetaFlag, meta_item: &str, value: u64) -> bool;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_meta_container_register_static_meta")]
fn register_static_meta(
&self,
flags: MetaFlag,
meta_item: &str,
type_: glib::types::Type,
) -> bool;
#[doc(alias = "ges_meta_container_set_boolean")]
fn set_boolean(&self, meta_item: &str, value: bool) -> bool;
#[doc(alias = "ges_meta_container_set_date")]
fn set_date(&self, meta_item: &str, value: &glib::Date) -> bool;
#[doc(alias = "ges_meta_container_set_date_time")]
fn set_date_time(&self, meta_item: &str, value: &gst::DateTime) -> bool;
#[doc(alias = "ges_meta_container_set_double")]
fn set_double(&self, meta_item: &str, value: f64) -> bool;
#[doc(alias = "ges_meta_container_set_float")]
fn set_float(&self, meta_item: &str, value: f32) -> bool;
#[doc(alias = "ges_meta_container_set_int")]
fn set_int(&self, meta_item: &str, value: i32) -> bool;
#[doc(alias = "ges_meta_container_set_int64")]
fn set_int64(&self, meta_item: &str, value: i64) -> bool;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_meta_container_set_marker_list")]
fn set_marker_list(&self, meta_item: &str, list: &MarkerList) -> bool;
#[doc(alias = "ges_meta_container_set_meta")]
fn set_meta(&self, meta_item: &str, value: Option<&glib::Value>) -> bool;
#[doc(alias = "ges_meta_container_set_string")]
fn set_string(&self, meta_item: &str, value: &str) -> bool;
#[doc(alias = "ges_meta_container_set_uint")]
fn set_uint(&self, meta_item: &str, value: u32) -> bool;
#[doc(alias = "ges_meta_container_set_uint64")]
fn set_uint64(&self, meta_item: &str, value: u64) -> bool;
#[doc(alias = "notify-meta")]
fn connect_notify_meta<F: Fn(&Self, &str, Option<&glib::Value>) + 'static>(
&self,
detail: Option<&str>,
f: F,
) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::MetaContainer>> Sealed for T {}
}
impl<O: IsA<MetaContainer>> MetaContainerExt for O {
pub trait MetaContainerExt: IsA<MetaContainer> + sealed::Sealed + 'static {
#[doc(alias = "ges_meta_container_add_metas_from_string")]
fn add_metas_from_string(&self, str: &str) -> bool {
unsafe {
from_glib(ffi::ges_meta_container_add_metas_from_string(
@ -194,6 +43,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_check_meta_registered")]
fn check_meta_registered(&self, meta_item: &str) -> Option<(MetaFlag, glib::types::Type)> {
unsafe {
let mut flags = mem::MaybeUninit::uninit();
@ -215,6 +65,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_foreach")]
fn foreach<P: FnMut(&MetaContainer, &str, &glib::Value)>(&self, func: P) {
let func_data: P = func;
unsafe extern "C" fn func_func<P: FnMut(&MetaContainer, &str, &glib::Value)>(
@ -240,6 +91,8 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_get_boolean")]
#[doc(alias = "get_boolean")]
fn boolean(&self, meta_item: &str) -> Option<bool> {
unsafe {
let mut dest = mem::MaybeUninit::uninit();
@ -256,6 +109,8 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_get_date")]
#[doc(alias = "get_date")]
fn date(&self, meta_item: &str) -> Option<glib::Date> {
unsafe {
let mut dest = ptr::null_mut();
@ -272,6 +127,8 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_get_date_time")]
#[doc(alias = "get_date_time")]
fn date_time(&self, meta_item: &str) -> Option<gst::DateTime> {
unsafe {
let mut dest = ptr::null_mut();
@ -288,6 +145,8 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_get_double")]
#[doc(alias = "get_double")]
fn double(&self, meta_item: &str) -> Option<f64> {
unsafe {
let mut dest = mem::MaybeUninit::uninit();
@ -304,6 +163,8 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_get_float")]
#[doc(alias = "get_float")]
fn float(&self, meta_item: &str) -> Option<f32> {
unsafe {
let mut dest = mem::MaybeUninit::uninit();
@ -320,6 +181,8 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_get_int")]
#[doc(alias = "get_int")]
fn int(&self, meta_item: &str) -> Option<i32> {
unsafe {
let mut dest = mem::MaybeUninit::uninit();
@ -336,6 +199,8 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_get_int64")]
#[doc(alias = "get_int64")]
fn int64(&self, meta_item: &str) -> Option<i64> {
unsafe {
let mut dest = mem::MaybeUninit::uninit();
@ -354,6 +219,8 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_meta_container_get_marker_list")]
#[doc(alias = "get_marker_list")]
fn marker_list(&self, key: &str) -> Option<MarkerList> {
unsafe {
from_glib_full(ffi::ges_meta_container_get_marker_list(
@ -363,6 +230,8 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_get_meta")]
#[doc(alias = "get_meta")]
fn meta(&self, key: &str) -> Option<glib::Value> {
unsafe {
from_glib_none(ffi::ges_meta_container_get_meta(
@ -372,6 +241,8 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_get_string")]
#[doc(alias = "get_string")]
fn string(&self, meta_item: &str) -> Option<glib::GString> {
unsafe {
from_glib_none(ffi::ges_meta_container_get_string(
@ -381,6 +252,8 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_get_uint")]
#[doc(alias = "get_uint")]
fn uint(&self, meta_item: &str) -> Option<u32> {
unsafe {
let mut dest = mem::MaybeUninit::uninit();
@ -397,6 +270,8 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_get_uint64")]
#[doc(alias = "get_uint64")]
fn uint64(&self, meta_item: &str) -> Option<u64> {
unsafe {
let mut dest = mem::MaybeUninit::uninit();
@ -413,6 +288,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_metas_to_string")]
fn metas_to_string(&self) -> glib::GString {
unsafe {
from_glib_full(ffi::ges_meta_container_metas_to_string(
@ -421,6 +297,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_register_meta")]
fn register_meta(&self, flags: MetaFlag, meta_item: &str, value: &glib::Value) -> bool {
unsafe {
from_glib(ffi::ges_meta_container_register_meta(
@ -432,6 +309,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_register_meta_boolean")]
fn register_meta_boolean(&self, flags: MetaFlag, meta_item: &str, value: bool) -> bool {
unsafe {
from_glib(ffi::ges_meta_container_register_meta_boolean(
@ -443,6 +321,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_register_meta_date")]
fn register_meta_date(&self, flags: MetaFlag, meta_item: &str, value: &glib::Date) -> bool {
unsafe {
from_glib(ffi::ges_meta_container_register_meta_date(
@ -454,6 +333,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_register_meta_date_time")]
fn register_meta_date_time(
&self,
flags: MetaFlag,
@ -470,6 +350,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_register_meta_double")]
fn register_meta_double(&self, flags: MetaFlag, meta_item: &str, value: f64) -> bool {
unsafe {
from_glib(ffi::ges_meta_container_register_meta_double(
@ -481,6 +362,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_register_meta_float")]
fn register_meta_float(&self, flags: MetaFlag, meta_item: &str, value: f32) -> bool {
unsafe {
from_glib(ffi::ges_meta_container_register_meta_float(
@ -492,6 +374,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_register_meta_int")]
fn register_meta_int(&self, flags: MetaFlag, meta_item: &str, value: i32) -> bool {
unsafe {
from_glib(ffi::ges_meta_container_register_meta_int(
@ -503,6 +386,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_register_meta_int64")]
fn register_meta_int64(&self, flags: MetaFlag, meta_item: &str, value: i64) -> bool {
unsafe {
from_glib(ffi::ges_meta_container_register_meta_int64(
@ -514,6 +398,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_register_meta_string")]
fn register_meta_string(&self, flags: MetaFlag, meta_item: &str, value: &str) -> bool {
unsafe {
from_glib(ffi::ges_meta_container_register_meta_string(
@ -525,6 +410,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_register_meta_uint")]
fn register_meta_uint(&self, flags: MetaFlag, meta_item: &str, value: u32) -> bool {
unsafe {
from_glib(ffi::ges_meta_container_register_meta_uint(
@ -536,6 +422,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_register_meta_uint64")]
fn register_meta_uint64(&self, flags: MetaFlag, meta_item: &str, value: u64) -> bool {
unsafe {
from_glib(ffi::ges_meta_container_register_meta_uint64(
@ -549,6 +436,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_meta_container_register_static_meta")]
fn register_static_meta(
&self,
flags: MetaFlag,
@ -565,6 +453,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_set_boolean")]
fn set_boolean(&self, meta_item: &str, value: bool) -> bool {
unsafe {
from_glib(ffi::ges_meta_container_set_boolean(
@ -575,6 +464,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_set_date")]
fn set_date(&self, meta_item: &str, value: &glib::Date) -> bool {
unsafe {
from_glib(ffi::ges_meta_container_set_date(
@ -585,6 +475,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_set_date_time")]
fn set_date_time(&self, meta_item: &str, value: &gst::DateTime) -> bool {
unsafe {
from_glib(ffi::ges_meta_container_set_date_time(
@ -595,6 +486,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_set_double")]
fn set_double(&self, meta_item: &str, value: f64) -> bool {
unsafe {
from_glib(ffi::ges_meta_container_set_double(
@ -605,6 +497,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_set_float")]
fn set_float(&self, meta_item: &str, value: f32) -> bool {
unsafe {
from_glib(ffi::ges_meta_container_set_float(
@ -615,6 +508,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_set_int")]
fn set_int(&self, meta_item: &str, value: i32) -> bool {
unsafe {
from_glib(ffi::ges_meta_container_set_int(
@ -625,6 +519,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_set_int64")]
fn set_int64(&self, meta_item: &str, value: i64) -> bool {
unsafe {
from_glib(ffi::ges_meta_container_set_int64(
@ -637,6 +532,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_meta_container_set_marker_list")]
fn set_marker_list(&self, meta_item: &str, list: &MarkerList) -> bool {
unsafe {
from_glib(ffi::ges_meta_container_set_marker_list(
@ -647,6 +543,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_set_meta")]
fn set_meta(&self, meta_item: &str, value: Option<&glib::Value>) -> bool {
unsafe {
from_glib(ffi::ges_meta_container_set_meta(
@ -657,6 +554,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_set_string")]
fn set_string(&self, meta_item: &str, value: &str) -> bool {
unsafe {
from_glib(ffi::ges_meta_container_set_string(
@ -667,6 +565,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_set_uint")]
fn set_uint(&self, meta_item: &str, value: u32) -> bool {
unsafe {
from_glib(ffi::ges_meta_container_set_uint(
@ -677,6 +576,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "ges_meta_container_set_uint64")]
fn set_uint64(&self, meta_item: &str, value: u64) -> bool {
unsafe {
from_glib(ffi::ges_meta_container_set_uint64(
@ -687,6 +587,7 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
#[doc(alias = "notify-meta")]
fn connect_notify_meta<F: Fn(&Self, &str, Option<&glib::Value>) + 'static>(
&self,
detail: Option<&str>,
@ -727,3 +628,5 @@ impl<O: IsA<MetaContainer>> MetaContainerExt for O {
}
}
}
impl<O: IsA<MetaContainer>> MetaContainerExt for O {}

View file

@ -25,12 +25,15 @@ impl MultiFileSource {
}
}
pub trait MultiFileSourceExt: 'static {
fn uri(&self) -> Option<glib::GString>;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::MultiFileSource>> Sealed for T {}
}
impl<O: IsA<MultiFileSource>> MultiFileSourceExt for O {
pub trait MultiFileSourceExt: IsA<MultiFileSource> + sealed::Sealed + 'static {
fn uri(&self) -> Option<glib::GString> {
glib::ObjectExt::property(self.as_ref(), "uri")
}
}
impl<O: IsA<MultiFileSource>> MultiFileSourceExt for O {}

View file

@ -36,103 +36,20 @@ impl Default for Pipeline {
}
}
pub trait GESPipelineExt: 'static {
#[doc(alias = "ges_pipeline_get_mode")]
#[doc(alias = "get_mode")]
fn mode(&self) -> PipelineFlags;
#[doc(alias = "ges_pipeline_get_thumbnail")]
#[doc(alias = "get_thumbnail")]
fn thumbnail(&self, caps: &gst::Caps) -> Option<gst::Sample>;
#[doc(alias = "ges_pipeline_get_thumbnail_rgb24")]
#[doc(alias = "get_thumbnail_rgb24")]
fn thumbnail_rgb24(&self, width: i32, height: i32) -> Option<gst::Sample>;
#[doc(alias = "ges_pipeline_preview_get_audio_sink")]
fn preview_get_audio_sink(&self) -> Option<gst::Element>;
#[doc(alias = "ges_pipeline_preview_get_video_sink")]
fn preview_get_video_sink(&self) -> Option<gst::Element>;
#[doc(alias = "ges_pipeline_preview_set_audio_sink")]
fn preview_set_audio_sink(&self, sink: Option<&impl IsA<gst::Element>>);
#[doc(alias = "ges_pipeline_preview_set_video_sink")]
fn preview_set_video_sink(&self, sink: Option<&impl IsA<gst::Element>>);
#[doc(alias = "ges_pipeline_save_thumbnail")]
fn save_thumbnail(
&self,
width: i32,
height: i32,
format: &str,
location: &str,
) -> Result<(), glib::Error>;
#[doc(alias = "ges_pipeline_set_mode")]
fn set_mode(&self, mode: PipelineFlags) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_pipeline_set_render_settings")]
fn set_render_settings(
&self,
output_uri: &str,
profile: &impl IsA<gst_pbutils::EncodingProfile>,
) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_pipeline_set_timeline")]
fn set_timeline(&self, timeline: &impl IsA<Timeline>) -> Result<(), glib::error::BoolError>;
#[doc(alias = "audio-filter")]
fn audio_filter(&self) -> Option<gst::Element>;
#[doc(alias = "audio-filter")]
fn set_audio_filter<P: IsA<gst::Element>>(&self, audio_filter: Option<&P>);
#[doc(alias = "audio-sink")]
fn audio_sink(&self) -> Option<gst::Element>;
#[doc(alias = "audio-sink")]
fn set_audio_sink<P: IsA<gst::Element>>(&self, audio_sink: Option<&P>);
fn timeline(&self) -> Option<Timeline>;
#[doc(alias = "video-filter")]
fn video_filter(&self) -> Option<gst::Element>;
#[doc(alias = "video-filter")]
fn set_video_filter<P: IsA<gst::Element>>(&self, video_filter: Option<&P>);
#[doc(alias = "video-sink")]
fn video_sink(&self) -> Option<gst::Element>;
#[doc(alias = "video-sink")]
fn set_video_sink<P: IsA<gst::Element>>(&self, video_sink: Option<&P>);
#[doc(alias = "audio-filter")]
fn connect_audio_filter_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "audio-sink")]
fn connect_audio_sink_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "mode")]
fn connect_mode_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "timeline")]
fn connect_timeline_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "video-filter")]
fn connect_video_filter_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "video-sink")]
fn connect_video_sink_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::Pipeline>> Sealed for T {}
}
impl<O: IsA<Pipeline>> GESPipelineExt for O {
pub trait GESPipelineExt: IsA<Pipeline> + sealed::Sealed + 'static {
#[doc(alias = "ges_pipeline_get_mode")]
#[doc(alias = "get_mode")]
fn mode(&self) -> PipelineFlags {
unsafe { from_glib(ffi::ges_pipeline_get_mode(self.as_ref().to_glib_none().0)) }
}
#[doc(alias = "ges_pipeline_get_thumbnail")]
#[doc(alias = "get_thumbnail")]
fn thumbnail(&self, caps: &gst::Caps) -> Option<gst::Sample> {
unsafe {
from_glib_full(ffi::ges_pipeline_get_thumbnail(
@ -142,6 +59,8 @@ impl<O: IsA<Pipeline>> GESPipelineExt for O {
}
}
#[doc(alias = "ges_pipeline_get_thumbnail_rgb24")]
#[doc(alias = "get_thumbnail_rgb24")]
fn thumbnail_rgb24(&self, width: i32, height: i32) -> Option<gst::Sample> {
unsafe {
from_glib_full(ffi::ges_pipeline_get_thumbnail_rgb24(
@ -152,6 +71,7 @@ impl<O: IsA<Pipeline>> GESPipelineExt for O {
}
}
#[doc(alias = "ges_pipeline_preview_get_audio_sink")]
fn preview_get_audio_sink(&self) -> Option<gst::Element> {
unsafe {
from_glib_full(ffi::ges_pipeline_preview_get_audio_sink(
@ -160,6 +80,7 @@ impl<O: IsA<Pipeline>> GESPipelineExt for O {
}
}
#[doc(alias = "ges_pipeline_preview_get_video_sink")]
fn preview_get_video_sink(&self) -> Option<gst::Element> {
unsafe {
from_glib_full(ffi::ges_pipeline_preview_get_video_sink(
@ -168,6 +89,7 @@ impl<O: IsA<Pipeline>> GESPipelineExt for O {
}
}
#[doc(alias = "ges_pipeline_preview_set_audio_sink")]
fn preview_set_audio_sink(&self, sink: Option<&impl IsA<gst::Element>>) {
unsafe {
ffi::ges_pipeline_preview_set_audio_sink(
@ -177,6 +99,7 @@ impl<O: IsA<Pipeline>> GESPipelineExt for O {
}
}
#[doc(alias = "ges_pipeline_preview_set_video_sink")]
fn preview_set_video_sink(&self, sink: Option<&impl IsA<gst::Element>>) {
unsafe {
ffi::ges_pipeline_preview_set_video_sink(
@ -186,6 +109,7 @@ impl<O: IsA<Pipeline>> GESPipelineExt for O {
}
}
#[doc(alias = "ges_pipeline_save_thumbnail")]
fn save_thumbnail(
&self,
width: i32,
@ -212,6 +136,7 @@ impl<O: IsA<Pipeline>> GESPipelineExt for O {
}
}
#[doc(alias = "ges_pipeline_set_mode")]
fn set_mode(&self, mode: PipelineFlags) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -221,6 +146,7 @@ impl<O: IsA<Pipeline>> GESPipelineExt for O {
}
}
#[doc(alias = "ges_pipeline_set_render_settings")]
fn set_render_settings(
&self,
output_uri: &str,
@ -238,6 +164,7 @@ impl<O: IsA<Pipeline>> GESPipelineExt for O {
}
}
#[doc(alias = "ges_pipeline_set_timeline")]
fn set_timeline(&self, timeline: &impl IsA<Timeline>) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -250,18 +177,22 @@ impl<O: IsA<Pipeline>> GESPipelineExt for O {
}
}
#[doc(alias = "audio-filter")]
fn audio_filter(&self) -> Option<gst::Element> {
glib::ObjectExt::property(self.as_ref(), "audio-filter")
}
#[doc(alias = "audio-filter")]
fn set_audio_filter<P: IsA<gst::Element>>(&self, audio_filter: Option<&P>) {
glib::ObjectExt::set_property(self.as_ref(), "audio-filter", audio_filter)
}
#[doc(alias = "audio-sink")]
fn audio_sink(&self) -> Option<gst::Element> {
glib::ObjectExt::property(self.as_ref(), "audio-sink")
}
#[doc(alias = "audio-sink")]
fn set_audio_sink<P: IsA<gst::Element>>(&self, audio_sink: Option<&P>) {
glib::ObjectExt::set_property(self.as_ref(), "audio-sink", audio_sink)
}
@ -270,22 +201,27 @@ impl<O: IsA<Pipeline>> GESPipelineExt for O {
glib::ObjectExt::property(self.as_ref(), "timeline")
}
#[doc(alias = "video-filter")]
fn video_filter(&self) -> Option<gst::Element> {
glib::ObjectExt::property(self.as_ref(), "video-filter")
}
#[doc(alias = "video-filter")]
fn set_video_filter<P: IsA<gst::Element>>(&self, video_filter: Option<&P>) {
glib::ObjectExt::set_property(self.as_ref(), "video-filter", video_filter)
}
#[doc(alias = "video-sink")]
fn video_sink(&self) -> Option<gst::Element> {
glib::ObjectExt::property(self.as_ref(), "video-sink")
}
#[doc(alias = "video-sink")]
fn set_video_sink<P: IsA<gst::Element>>(&self, video_sink: Option<&P>) {
glib::ObjectExt::set_property(self.as_ref(), "video-sink", video_sink)
}
#[doc(alias = "audio-filter")]
fn connect_audio_filter_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_audio_filter_trampoline<
P: IsA<Pipeline>,
@ -311,6 +247,7 @@ impl<O: IsA<Pipeline>> GESPipelineExt for O {
}
}
#[doc(alias = "audio-sink")]
fn connect_audio_sink_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_audio_sink_trampoline<P: IsA<Pipeline>, F: Fn(&P) + 'static>(
this: *mut ffi::GESPipeline,
@ -333,6 +270,7 @@ impl<O: IsA<Pipeline>> GESPipelineExt for O {
}
}
#[doc(alias = "mode")]
fn connect_mode_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_mode_trampoline<P: IsA<Pipeline>, F: Fn(&P) + 'static>(
this: *mut ffi::GESPipeline,
@ -355,6 +293,7 @@ impl<O: IsA<Pipeline>> GESPipelineExt for O {
}
}
#[doc(alias = "timeline")]
fn connect_timeline_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_timeline_trampoline<P: IsA<Pipeline>, F: Fn(&P) + 'static>(
this: *mut ffi::GESPipeline,
@ -377,6 +316,7 @@ impl<O: IsA<Pipeline>> GESPipelineExt for O {
}
}
#[doc(alias = "video-filter")]
fn connect_video_filter_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_video_filter_trampoline<
P: IsA<Pipeline>,
@ -402,6 +342,7 @@ impl<O: IsA<Pipeline>> GESPipelineExt for O {
}
}
#[doc(alias = "video-sink")]
fn connect_video_sink_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_video_sink_trampoline<P: IsA<Pipeline>, F: Fn(&P) + 'static>(
this: *mut ffi::GESPipeline,
@ -424,3 +365,5 @@ impl<O: IsA<Pipeline>> GESPipelineExt for O {
}
}
}
impl<O: IsA<Pipeline>> GESPipelineExt for O {}

View file

@ -33,103 +33,13 @@ impl Project {
}
}
pub trait ProjectExt: 'static {
#[doc(alias = "ges_project_add_asset")]
fn add_asset(&self, asset: &impl IsA<Asset>) -> bool;
#[doc(alias = "ges_project_add_encoding_profile")]
fn add_encoding_profile(
&self,
profile: &impl IsA<gst_pbutils::EncodingProfile>,
) -> Result<(), glib::error::BoolError>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_project_add_formatter")]
fn add_formatter(&self, formatter: &impl IsA<Formatter>);
#[doc(alias = "ges_project_create_asset")]
fn create_asset(&self, id: Option<&str>, extractable_type: glib::types::Type) -> bool;
#[doc(alias = "ges_project_create_asset_sync")]
fn create_asset_sync(
&self,
id: Option<&str>,
extractable_type: glib::types::Type,
) -> Result<Option<Asset>, glib::Error>;
#[doc(alias = "ges_project_get_asset")]
#[doc(alias = "get_asset")]
fn asset(&self, id: &str, extractable_type: glib::types::Type) -> Option<Asset>;
#[doc(alias = "ges_project_get_loading_assets")]
#[doc(alias = "get_loading_assets")]
fn loading_assets(&self) -> Vec<Asset>;
#[doc(alias = "ges_project_get_uri")]
#[doc(alias = "get_uri")]
fn uri(&self) -> Option<glib::GString>;
#[doc(alias = "ges_project_list_assets")]
fn list_assets(&self, filter: glib::types::Type) -> Vec<Asset>;
#[doc(alias = "ges_project_list_encoding_profiles")]
fn list_encoding_profiles(&self) -> Vec<gst_pbutils::EncodingProfile>;
#[doc(alias = "ges_project_load")]
fn load(&self, timeline: &impl IsA<Timeline>) -> Result<(), glib::Error>;
#[doc(alias = "ges_project_remove_asset")]
fn remove_asset(&self, asset: &impl IsA<Asset>) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_project_save")]
fn save(
&self,
timeline: &impl IsA<Timeline>,
uri: &str,
formatter_asset: Option<impl IsA<Asset>>,
overwrite: bool,
) -> Result<(), glib::Error>;
#[doc(alias = "asset-added")]
fn connect_asset_added<F: Fn(&Self, &Asset) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "asset-loading")]
fn connect_asset_loading<F: Fn(&Self, &Asset) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "asset-removed")]
fn connect_asset_removed<F: Fn(&Self, &Asset) + 'static>(&self, f: F) -> SignalHandlerId;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "error-loading")]
fn connect_error_loading<F: Fn(&Self, &Timeline, &glib::Error) + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "error-loading-asset")]
fn connect_error_loading_asset<F: Fn(&Self, &glib::Error, &str, glib::types::Type) + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "loaded")]
fn connect_loaded<F: Fn(&Self, &Timeline) + 'static>(&self, f: F) -> SignalHandlerId;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "loading")]
fn connect_loading<F: Fn(&Self, &Timeline) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "missing-uri")]
fn connect_missing_uri<F: Fn(&Self, &glib::Error, &Asset) -> Option<glib::GString> + 'static>(
&self,
f: F,
) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::Project>> Sealed for T {}
}
impl<O: IsA<Project>> ProjectExt for O {
pub trait ProjectExt: IsA<Project> + sealed::Sealed + 'static {
#[doc(alias = "ges_project_add_asset")]
fn add_asset(&self, asset: &impl IsA<Asset>) -> bool {
unsafe {
from_glib(ffi::ges_project_add_asset(
@ -139,6 +49,7 @@ impl<O: IsA<Project>> ProjectExt for O {
}
}
#[doc(alias = "ges_project_add_encoding_profile")]
fn add_encoding_profile(
&self,
profile: &impl IsA<gst_pbutils::EncodingProfile>,
@ -156,6 +67,7 @@ impl<O: IsA<Project>> ProjectExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_project_add_formatter")]
fn add_formatter(&self, formatter: &impl IsA<Formatter>) {
unsafe {
ffi::ges_project_add_formatter(
@ -165,6 +77,7 @@ impl<O: IsA<Project>> ProjectExt for O {
}
}
#[doc(alias = "ges_project_create_asset")]
fn create_asset(&self, id: Option<&str>, extractable_type: glib::types::Type) -> bool {
unsafe {
from_glib(ffi::ges_project_create_asset(
@ -175,6 +88,7 @@ impl<O: IsA<Project>> ProjectExt for O {
}
}
#[doc(alias = "ges_project_create_asset_sync")]
fn create_asset_sync(
&self,
id: Option<&str>,
@ -196,6 +110,8 @@ impl<O: IsA<Project>> ProjectExt for O {
}
}
#[doc(alias = "ges_project_get_asset")]
#[doc(alias = "get_asset")]
fn asset(&self, id: &str, extractable_type: glib::types::Type) -> Option<Asset> {
unsafe {
from_glib_full(ffi::ges_project_get_asset(
@ -206,6 +122,8 @@ impl<O: IsA<Project>> ProjectExt for O {
}
}
#[doc(alias = "ges_project_get_loading_assets")]
#[doc(alias = "get_loading_assets")]
fn loading_assets(&self) -> Vec<Asset> {
unsafe {
FromGlibPtrContainer::from_glib_full(ffi::ges_project_get_loading_assets(
@ -214,10 +132,13 @@ impl<O: IsA<Project>> ProjectExt for O {
}
}
#[doc(alias = "ges_project_get_uri")]
#[doc(alias = "get_uri")]
fn uri(&self) -> Option<glib::GString> {
unsafe { from_glib_full(ffi::ges_project_get_uri(self.as_ref().to_glib_none().0)) }
}
#[doc(alias = "ges_project_list_assets")]
fn list_assets(&self, filter: glib::types::Type) -> Vec<Asset> {
unsafe {
FromGlibPtrContainer::from_glib_full(ffi::ges_project_list_assets(
@ -227,6 +148,7 @@ impl<O: IsA<Project>> ProjectExt for O {
}
}
#[doc(alias = "ges_project_list_encoding_profiles")]
fn list_encoding_profiles(&self) -> Vec<gst_pbutils::EncodingProfile> {
unsafe {
FromGlibPtrContainer::from_glib_none(ffi::ges_project_list_encoding_profiles(
@ -235,6 +157,7 @@ impl<O: IsA<Project>> ProjectExt for O {
}
}
#[doc(alias = "ges_project_load")]
fn load(&self, timeline: &impl IsA<Timeline>) -> Result<(), glib::Error> {
unsafe {
let mut error = ptr::null_mut();
@ -252,6 +175,7 @@ impl<O: IsA<Project>> ProjectExt for O {
}
}
#[doc(alias = "ges_project_remove_asset")]
fn remove_asset(&self, asset: &impl IsA<Asset>) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -264,6 +188,7 @@ impl<O: IsA<Project>> ProjectExt for O {
}
}
#[doc(alias = "ges_project_save")]
fn save(
&self,
timeline: &impl IsA<Timeline>,
@ -290,6 +215,7 @@ impl<O: IsA<Project>> ProjectExt for O {
}
}
#[doc(alias = "asset-added")]
fn connect_asset_added<F: Fn(&Self, &Asset) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn asset_added_trampoline<
P: IsA<Project>,
@ -318,6 +244,7 @@ impl<O: IsA<Project>> ProjectExt for O {
}
}
#[doc(alias = "asset-loading")]
fn connect_asset_loading<F: Fn(&Self, &Asset) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn asset_loading_trampoline<
P: IsA<Project>,
@ -346,6 +273,7 @@ impl<O: IsA<Project>> ProjectExt for O {
}
}
#[doc(alias = "asset-removed")]
fn connect_asset_removed<F: Fn(&Self, &Asset) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn asset_removed_trampoline<
P: IsA<Project>,
@ -376,6 +304,7 @@ impl<O: IsA<Project>> ProjectExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "error-loading")]
fn connect_error_loading<F: Fn(&Self, &Timeline, &glib::Error) + 'static>(
&self,
f: F,
@ -409,6 +338,7 @@ impl<O: IsA<Project>> ProjectExt for O {
}
}
#[doc(alias = "error-loading-asset")]
fn connect_error_loading_asset<
F: Fn(&Self, &glib::Error, &str, glib::types::Type) + 'static,
>(
@ -446,6 +376,7 @@ impl<O: IsA<Project>> ProjectExt for O {
}
}
#[doc(alias = "loaded")]
fn connect_loaded<F: Fn(&Self, &Timeline) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn loaded_trampoline<P: IsA<Project>, F: Fn(&P, &Timeline) + 'static>(
this: *mut ffi::GESProject,
@ -473,6 +404,7 @@ impl<O: IsA<Project>> ProjectExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "loading")]
fn connect_loading<F: Fn(&Self, &Timeline) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn loading_trampoline<P: IsA<Project>, F: Fn(&P, &Timeline) + 'static>(
this: *mut ffi::GESProject,
@ -498,6 +430,7 @@ impl<O: IsA<Project>> ProjectExt for O {
}
}
#[doc(alias = "missing-uri")]
fn connect_missing_uri<
F: Fn(&Self, &glib::Error, &Asset) -> Option<glib::GString> + 'static,
>(
@ -534,3 +467,5 @@ impl<O: IsA<Project>> ProjectExt for O {
}
}
}
impl<O: IsA<Project>> ProjectExt for O {}

View file

@ -39,60 +39,26 @@ impl TestClip {
}
}
pub trait TestClipExt: 'static {
#[doc(alias = "ges_test_clip_get_frequency")]
#[doc(alias = "get_frequency")]
fn frequency(&self) -> f64;
#[doc(alias = "ges_test_clip_get_volume")]
#[doc(alias = "get_volume")]
fn volume(&self) -> f64;
#[doc(alias = "ges_test_clip_get_vpattern")]
#[doc(alias = "get_vpattern")]
fn vpattern(&self) -> VideoTestPattern;
#[doc(alias = "ges_test_clip_is_muted")]
fn is_muted(&self) -> bool;
#[doc(alias = "ges_test_clip_set_frequency")]
fn set_frequency(&self, freq: f64);
#[doc(alias = "ges_test_clip_set_mute")]
fn set_mute(&self, mute: bool);
#[doc(alias = "ges_test_clip_set_volume")]
fn set_volume(&self, volume: f64);
#[doc(alias = "ges_test_clip_set_vpattern")]
fn set_vpattern(&self, vpattern: VideoTestPattern);
fn freq(&self) -> f64;
fn set_freq(&self, freq: f64);
#[doc(alias = "freq")]
fn connect_freq_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "mute")]
fn connect_mute_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "volume")]
fn connect_volume_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "vpattern")]
fn connect_vpattern_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::TestClip>> Sealed for T {}
}
impl<O: IsA<TestClip>> TestClipExt for O {
pub trait TestClipExt: IsA<TestClip> + sealed::Sealed + 'static {
#[doc(alias = "ges_test_clip_get_frequency")]
#[doc(alias = "get_frequency")]
fn frequency(&self) -> f64 {
unsafe { ffi::ges_test_clip_get_frequency(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "ges_test_clip_get_volume")]
#[doc(alias = "get_volume")]
fn volume(&self) -> f64 {
unsafe { ffi::ges_test_clip_get_volume(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "ges_test_clip_get_vpattern")]
#[doc(alias = "get_vpattern")]
fn vpattern(&self) -> VideoTestPattern {
unsafe {
from_glib(ffi::ges_test_clip_get_vpattern(
@ -101,28 +67,33 @@ impl<O: IsA<TestClip>> TestClipExt for O {
}
}
#[doc(alias = "ges_test_clip_is_muted")]
fn is_muted(&self) -> bool {
unsafe { from_glib(ffi::ges_test_clip_is_muted(self.as_ref().to_glib_none().0)) }
}
#[doc(alias = "ges_test_clip_set_frequency")]
fn set_frequency(&self, freq: f64) {
unsafe {
ffi::ges_test_clip_set_frequency(self.as_ref().to_glib_none().0, freq);
}
}
#[doc(alias = "ges_test_clip_set_mute")]
fn set_mute(&self, mute: bool) {
unsafe {
ffi::ges_test_clip_set_mute(self.as_ref().to_glib_none().0, mute.into_glib());
}
}
#[doc(alias = "ges_test_clip_set_volume")]
fn set_volume(&self, volume: f64) {
unsafe {
ffi::ges_test_clip_set_volume(self.as_ref().to_glib_none().0, volume);
}
}
#[doc(alias = "ges_test_clip_set_vpattern")]
fn set_vpattern(&self, vpattern: VideoTestPattern) {
unsafe {
ffi::ges_test_clip_set_vpattern(self.as_ref().to_glib_none().0, vpattern.into_glib());
@ -137,6 +108,7 @@ impl<O: IsA<TestClip>> TestClipExt for O {
glib::ObjectExt::set_property(self.as_ref(), "freq", freq)
}
#[doc(alias = "freq")]
fn connect_freq_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_freq_trampoline<P: IsA<TestClip>, F: Fn(&P) + 'static>(
this: *mut ffi::GESTestClip,
@ -159,6 +131,7 @@ impl<O: IsA<TestClip>> TestClipExt for O {
}
}
#[doc(alias = "mute")]
fn connect_mute_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_mute_trampoline<P: IsA<TestClip>, F: Fn(&P) + 'static>(
this: *mut ffi::GESTestClip,
@ -181,6 +154,7 @@ impl<O: IsA<TestClip>> TestClipExt for O {
}
}
#[doc(alias = "volume")]
fn connect_volume_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_volume_trampoline<P: IsA<TestClip>, F: Fn(&P) + 'static>(
this: *mut ffi::GESTestClip,
@ -203,6 +177,7 @@ impl<O: IsA<TestClip>> TestClipExt for O {
}
}
#[doc(alias = "vpattern")]
fn connect_vpattern_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_vpattern_trampoline<P: IsA<TestClip>, F: Fn(&P) + 'static>(
this: *mut ffi::GESTestClip,
@ -225,3 +200,5 @@ impl<O: IsA<TestClip>> TestClipExt for O {
}
}
}
impl<O: IsA<TestClip>> TestClipExt for O {}

View file

@ -30,62 +30,20 @@ impl TextOverlay {
}
}
pub trait TextOverlayExt: 'static {
#[doc(alias = "ges_text_overlay_get_color")]
#[doc(alias = "get_color")]
fn color(&self) -> u32;
#[doc(alias = "ges_text_overlay_get_font_desc")]
#[doc(alias = "get_font_desc")]
fn font_desc(&self) -> Option<glib::GString>;
#[doc(alias = "ges_text_overlay_get_halignment")]
#[doc(alias = "get_halignment")]
fn halignment(&self) -> TextHAlign;
#[doc(alias = "ges_text_overlay_get_text")]
#[doc(alias = "get_text")]
fn text(&self) -> Option<glib::GString>;
#[doc(alias = "ges_text_overlay_get_valignment")]
#[doc(alias = "get_valignment")]
fn valignment(&self) -> TextVAlign;
#[doc(alias = "ges_text_overlay_get_xpos")]
#[doc(alias = "get_xpos")]
fn xpos(&self) -> f64;
#[doc(alias = "ges_text_overlay_get_ypos")]
#[doc(alias = "get_ypos")]
fn ypos(&self) -> f64;
#[doc(alias = "ges_text_overlay_set_color")]
fn set_color(&self, color: u32);
#[doc(alias = "ges_text_overlay_set_font_desc")]
fn set_font_desc(&self, font_desc: Option<&str>);
#[doc(alias = "ges_text_overlay_set_halignment")]
fn set_halignment(&self, halign: TextHAlign);
#[doc(alias = "ges_text_overlay_set_text")]
fn set_text(&self, text: Option<&str>);
#[doc(alias = "ges_text_overlay_set_valignment")]
fn set_valignment(&self, valign: TextVAlign);
#[doc(alias = "ges_text_overlay_set_xpos")]
fn set_xpos(&self, position: f64);
#[doc(alias = "ges_text_overlay_set_ypos")]
fn set_ypos(&self, position: f64);
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::TextOverlay>> Sealed for T {}
}
impl<O: IsA<TextOverlay>> TextOverlayExt for O {
pub trait TextOverlayExt: IsA<TextOverlay> + sealed::Sealed + 'static {
#[doc(alias = "ges_text_overlay_get_color")]
#[doc(alias = "get_color")]
fn color(&self) -> u32 {
unsafe { ffi::ges_text_overlay_get_color(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "ges_text_overlay_get_font_desc")]
#[doc(alias = "get_font_desc")]
fn font_desc(&self) -> Option<glib::GString> {
unsafe {
from_glib_none(ffi::ges_text_overlay_get_font_desc(
@ -94,6 +52,8 @@ impl<O: IsA<TextOverlay>> TextOverlayExt for O {
}
}
#[doc(alias = "ges_text_overlay_get_halignment")]
#[doc(alias = "get_halignment")]
fn halignment(&self) -> TextHAlign {
unsafe {
from_glib(ffi::ges_text_overlay_get_halignment(
@ -102,6 +62,8 @@ impl<O: IsA<TextOverlay>> TextOverlayExt for O {
}
}
#[doc(alias = "ges_text_overlay_get_text")]
#[doc(alias = "get_text")]
fn text(&self) -> Option<glib::GString> {
unsafe {
from_glib_none(ffi::ges_text_overlay_get_text(
@ -110,6 +72,8 @@ impl<O: IsA<TextOverlay>> TextOverlayExt for O {
}
}
#[doc(alias = "ges_text_overlay_get_valignment")]
#[doc(alias = "get_valignment")]
fn valignment(&self) -> TextVAlign {
unsafe {
from_glib(ffi::ges_text_overlay_get_valignment(
@ -118,20 +82,26 @@ impl<O: IsA<TextOverlay>> TextOverlayExt for O {
}
}
#[doc(alias = "ges_text_overlay_get_xpos")]
#[doc(alias = "get_xpos")]
fn xpos(&self) -> f64 {
unsafe { ffi::ges_text_overlay_get_xpos(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "ges_text_overlay_get_ypos")]
#[doc(alias = "get_ypos")]
fn ypos(&self) -> f64 {
unsafe { ffi::ges_text_overlay_get_ypos(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "ges_text_overlay_set_color")]
fn set_color(&self, color: u32) {
unsafe {
ffi::ges_text_overlay_set_color(self.as_ref().to_glib_none().0, color);
}
}
#[doc(alias = "ges_text_overlay_set_font_desc")]
fn set_font_desc(&self, font_desc: Option<&str>) {
unsafe {
ffi::ges_text_overlay_set_font_desc(
@ -141,6 +111,7 @@ impl<O: IsA<TextOverlay>> TextOverlayExt for O {
}
}
#[doc(alias = "ges_text_overlay_set_halignment")]
fn set_halignment(&self, halign: TextHAlign) {
unsafe {
ffi::ges_text_overlay_set_halignment(
@ -150,12 +121,14 @@ impl<O: IsA<TextOverlay>> TextOverlayExt for O {
}
}
#[doc(alias = "ges_text_overlay_set_text")]
fn set_text(&self, text: Option<&str>) {
unsafe {
ffi::ges_text_overlay_set_text(self.as_ref().to_glib_none().0, text.to_glib_none().0);
}
}
#[doc(alias = "ges_text_overlay_set_valignment")]
fn set_valignment(&self, valign: TextVAlign) {
unsafe {
ffi::ges_text_overlay_set_valignment(
@ -165,15 +138,19 @@ impl<O: IsA<TextOverlay>> TextOverlayExt for O {
}
}
#[doc(alias = "ges_text_overlay_set_xpos")]
fn set_xpos(&self, position: f64) {
unsafe {
ffi::ges_text_overlay_set_xpos(self.as_ref().to_glib_none().0, position);
}
}
#[doc(alias = "ges_text_overlay_set_ypos")]
fn set_ypos(&self, position: f64) {
unsafe {
ffi::ges_text_overlay_set_ypos(self.as_ref().to_glib_none().0, position);
}
}
}
impl<O: IsA<TextOverlay>> TextOverlayExt for O {}

View file

@ -33,87 +33,20 @@ impl TextOverlayClip {
}
}
pub trait TextOverlayClipExt: 'static {
#[doc(alias = "ges_text_overlay_clip_get_color")]
#[doc(alias = "get_color")]
fn color(&self) -> u32;
#[doc(alias = "ges_text_overlay_clip_get_font_desc")]
#[doc(alias = "get_font_desc")]
fn font_desc(&self) -> Option<glib::GString>;
#[doc(alias = "ges_text_overlay_clip_get_halignment")]
#[doc(alias = "get_halignment")]
fn halignment(&self) -> TextHAlign;
#[doc(alias = "ges_text_overlay_clip_get_text")]
#[doc(alias = "get_text")]
fn text(&self) -> Option<glib::GString>;
#[doc(alias = "ges_text_overlay_clip_get_valignment")]
#[doc(alias = "get_valignment")]
fn valignment(&self) -> TextVAlign;
#[doc(alias = "ges_text_overlay_clip_get_xpos")]
#[doc(alias = "get_xpos")]
fn xpos(&self) -> f64;
#[doc(alias = "ges_text_overlay_clip_get_ypos")]
#[doc(alias = "get_ypos")]
fn ypos(&self) -> f64;
#[doc(alias = "ges_text_overlay_clip_set_color")]
fn set_color(&self, color: u32);
#[doc(alias = "ges_text_overlay_clip_set_font_desc")]
fn set_font_desc(&self, font_desc: Option<&str>);
#[doc(alias = "ges_text_overlay_clip_set_halign")]
fn set_halign(&self, halign: TextHAlign);
#[doc(alias = "ges_text_overlay_clip_set_text")]
fn set_text(&self, text: Option<&str>);
#[doc(alias = "ges_text_overlay_clip_set_valign")]
fn set_valign(&self, valign: TextVAlign);
#[doc(alias = "ges_text_overlay_clip_set_xpos")]
fn set_xpos(&self, position: f64);
#[doc(alias = "ges_text_overlay_clip_set_ypos")]
fn set_ypos(&self, position: f64);
fn set_halignment(&self, halignment: TextHAlign);
fn set_valignment(&self, valignment: TextVAlign);
#[doc(alias = "color")]
fn connect_color_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "font-desc")]
fn connect_font_desc_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "halignment")]
fn connect_halignment_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "text")]
fn connect_text_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "valignment")]
fn connect_valignment_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "xpos")]
fn connect_xpos_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "ypos")]
fn connect_ypos_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::TextOverlayClip>> Sealed for T {}
}
impl<O: IsA<TextOverlayClip>> TextOverlayClipExt for O {
pub trait TextOverlayClipExt: IsA<TextOverlayClip> + sealed::Sealed + 'static {
#[doc(alias = "ges_text_overlay_clip_get_color")]
#[doc(alias = "get_color")]
fn color(&self) -> u32 {
unsafe { ffi::ges_text_overlay_clip_get_color(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "ges_text_overlay_clip_get_font_desc")]
#[doc(alias = "get_font_desc")]
fn font_desc(&self) -> Option<glib::GString> {
unsafe {
from_glib_none(ffi::ges_text_overlay_clip_get_font_desc(
@ -122,6 +55,8 @@ impl<O: IsA<TextOverlayClip>> TextOverlayClipExt for O {
}
}
#[doc(alias = "ges_text_overlay_clip_get_halignment")]
#[doc(alias = "get_halignment")]
fn halignment(&self) -> TextHAlign {
unsafe {
from_glib(ffi::ges_text_overlay_clip_get_halignment(
@ -130,6 +65,8 @@ impl<O: IsA<TextOverlayClip>> TextOverlayClipExt for O {
}
}
#[doc(alias = "ges_text_overlay_clip_get_text")]
#[doc(alias = "get_text")]
fn text(&self) -> Option<glib::GString> {
unsafe {
from_glib_none(ffi::ges_text_overlay_clip_get_text(
@ -138,6 +75,8 @@ impl<O: IsA<TextOverlayClip>> TextOverlayClipExt for O {
}
}
#[doc(alias = "ges_text_overlay_clip_get_valignment")]
#[doc(alias = "get_valignment")]
fn valignment(&self) -> TextVAlign {
unsafe {
from_glib(ffi::ges_text_overlay_clip_get_valignment(
@ -146,20 +85,26 @@ impl<O: IsA<TextOverlayClip>> TextOverlayClipExt for O {
}
}
#[doc(alias = "ges_text_overlay_clip_get_xpos")]
#[doc(alias = "get_xpos")]
fn xpos(&self) -> f64 {
unsafe { ffi::ges_text_overlay_clip_get_xpos(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "ges_text_overlay_clip_get_ypos")]
#[doc(alias = "get_ypos")]
fn ypos(&self) -> f64 {
unsafe { ffi::ges_text_overlay_clip_get_ypos(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "ges_text_overlay_clip_set_color")]
fn set_color(&self, color: u32) {
unsafe {
ffi::ges_text_overlay_clip_set_color(self.as_ref().to_glib_none().0, color);
}
}
#[doc(alias = "ges_text_overlay_clip_set_font_desc")]
fn set_font_desc(&self, font_desc: Option<&str>) {
unsafe {
ffi::ges_text_overlay_clip_set_font_desc(
@ -169,6 +114,7 @@ impl<O: IsA<TextOverlayClip>> TextOverlayClipExt for O {
}
}
#[doc(alias = "ges_text_overlay_clip_set_halign")]
fn set_halign(&self, halign: TextHAlign) {
unsafe {
ffi::ges_text_overlay_clip_set_halign(
@ -178,6 +124,7 @@ impl<O: IsA<TextOverlayClip>> TextOverlayClipExt for O {
}
}
#[doc(alias = "ges_text_overlay_clip_set_text")]
fn set_text(&self, text: Option<&str>) {
unsafe {
ffi::ges_text_overlay_clip_set_text(
@ -187,6 +134,7 @@ impl<O: IsA<TextOverlayClip>> TextOverlayClipExt for O {
}
}
#[doc(alias = "ges_text_overlay_clip_set_valign")]
fn set_valign(&self, valign: TextVAlign) {
unsafe {
ffi::ges_text_overlay_clip_set_valign(
@ -196,12 +144,14 @@ impl<O: IsA<TextOverlayClip>> TextOverlayClipExt for O {
}
}
#[doc(alias = "ges_text_overlay_clip_set_xpos")]
fn set_xpos(&self, position: f64) {
unsafe {
ffi::ges_text_overlay_clip_set_xpos(self.as_ref().to_glib_none().0, position);
}
}
#[doc(alias = "ges_text_overlay_clip_set_ypos")]
fn set_ypos(&self, position: f64) {
unsafe {
ffi::ges_text_overlay_clip_set_ypos(self.as_ref().to_glib_none().0, position);
@ -216,6 +166,7 @@ impl<O: IsA<TextOverlayClip>> TextOverlayClipExt for O {
glib::ObjectExt::set_property(self.as_ref(), "valignment", valignment)
}
#[doc(alias = "color")]
fn connect_color_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_color_trampoline<
P: IsA<TextOverlayClip>,
@ -241,6 +192,7 @@ impl<O: IsA<TextOverlayClip>> TextOverlayClipExt for O {
}
}
#[doc(alias = "font-desc")]
fn connect_font_desc_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_font_desc_trampoline<
P: IsA<TextOverlayClip>,
@ -266,6 +218,7 @@ impl<O: IsA<TextOverlayClip>> TextOverlayClipExt for O {
}
}
#[doc(alias = "halignment")]
fn connect_halignment_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_halignment_trampoline<
P: IsA<TextOverlayClip>,
@ -291,6 +244,7 @@ impl<O: IsA<TextOverlayClip>> TextOverlayClipExt for O {
}
}
#[doc(alias = "text")]
fn connect_text_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_text_trampoline<
P: IsA<TextOverlayClip>,
@ -316,6 +270,7 @@ impl<O: IsA<TextOverlayClip>> TextOverlayClipExt for O {
}
}
#[doc(alias = "valignment")]
fn connect_valignment_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_valignment_trampoline<
P: IsA<TextOverlayClip>,
@ -341,6 +296,7 @@ impl<O: IsA<TextOverlayClip>> TextOverlayClipExt for O {
}
}
#[doc(alias = "xpos")]
fn connect_xpos_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_xpos_trampoline<
P: IsA<TextOverlayClip>,
@ -366,6 +322,7 @@ impl<O: IsA<TextOverlayClip>> TextOverlayClipExt for O {
}
}
#[doc(alias = "ypos")]
fn connect_ypos_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_ypos_trampoline<
P: IsA<TextOverlayClip>,
@ -391,3 +348,5 @@ impl<O: IsA<TextOverlayClip>> TextOverlayClipExt for O {
}
}
}
impl<O: IsA<TextOverlayClip>> TextOverlayClipExt for O {}

View file

@ -63,196 +63,15 @@ impl Default for Timeline {
}
}
pub trait TimelineExt: 'static {
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::Timeline>> Sealed for T {}
}
pub trait TimelineExt: IsA<Timeline> + sealed::Sealed + 'static {
#[cfg_attr(feature = "v1_18", deprecated = "Since 1.18")]
#[allow(deprecated)]
#[doc(alias = "ges_timeline_add_layer")]
fn add_layer(&self, layer: &impl IsA<Layer>) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_timeline_add_track")]
fn add_track(&self, track: &impl IsA<Track>) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_timeline_append_layer")]
fn append_layer(&self) -> Layer;
#[doc(alias = "ges_timeline_commit")]
fn commit(&self) -> bool;
#[doc(alias = "ges_timeline_commit_sync")]
fn commit_sync(&self) -> bool;
#[cfg(feature = "v1_22")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_22")))]
#[doc(alias = "ges_timeline_disable_edit_apis")]
fn disable_edit_apis(&self, disable_edit_apis: bool);
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
#[doc(alias = "ges_timeline_freeze_commit")]
fn freeze_commit(&self);
#[doc(alias = "ges_timeline_get_auto_transition")]
#[doc(alias = "get_auto_transition")]
fn is_auto_transition(&self) -> bool;
#[doc(alias = "ges_timeline_get_duration")]
#[doc(alias = "get_duration")]
fn duration(&self) -> gst::ClockTime;
#[cfg(feature = "v1_22")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_22")))]
#[doc(alias = "ges_timeline_get_edit_apis_disabled")]
#[doc(alias = "get_edit_apis_disabled")]
fn is_edit_apis_disabled(&self) -> bool;
#[doc(alias = "ges_timeline_get_element")]
#[doc(alias = "get_element")]
fn element(&self, name: &str) -> Option<TimelineElement>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_timeline_get_frame_at")]
#[doc(alias = "get_frame_at")]
fn frame_at(&self, timestamp: gst::ClockTime) -> FrameNumber;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_timeline_get_frame_time")]
#[doc(alias = "get_frame_time")]
fn frame_time(&self, frame_number: FrameNumber) -> Option<gst::ClockTime>;
#[doc(alias = "ges_timeline_get_groups")]
#[doc(alias = "get_groups")]
fn groups(&self) -> Vec<Group>;
#[doc(alias = "ges_timeline_get_layer")]
#[doc(alias = "get_layer")]
fn layer(&self, priority: u32) -> Option<Layer>;
#[doc(alias = "ges_timeline_get_layers")]
#[doc(alias = "get_layers")]
fn layers(&self) -> Vec<Layer>;
#[doc(alias = "ges_timeline_get_pad_for_track")]
#[doc(alias = "get_pad_for_track")]
fn pad_for_track(&self, track: &impl IsA<Track>) -> Option<gst::Pad>;
#[doc(alias = "ges_timeline_get_snapping_distance")]
#[doc(alias = "get_snapping_distance")]
fn snapping_distance(&self) -> Option<gst::ClockTime>;
#[doc(alias = "ges_timeline_get_track_for_pad")]
#[doc(alias = "get_track_for_pad")]
fn track_for_pad(&self, pad: &impl IsA<gst::Pad>) -> Option<Track>;
#[doc(alias = "ges_timeline_get_tracks")]
#[doc(alias = "get_tracks")]
fn tracks(&self) -> Vec<Track>;
#[doc(alias = "ges_timeline_is_empty")]
fn is_empty(&self) -> bool;
#[doc(alias = "ges_timeline_load_from_uri")]
fn load_from_uri(&self, uri: &str) -> Result<(), glib::Error>;
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "ges_timeline_move_layer")]
fn move_layer(
&self,
layer: &impl IsA<Layer>,
new_layer_priority: u32,
) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_timeline_paste_element")]
fn paste_element(
&self,
element: &impl IsA<TimelineElement>,
position: gst::ClockTime,
layer_priority: i32,
) -> Option<TimelineElement>;
#[doc(alias = "ges_timeline_remove_layer")]
fn remove_layer(&self, layer: &impl IsA<Layer>) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_timeline_remove_track")]
fn remove_track(&self, track: &impl IsA<Track>) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_timeline_save_to_uri")]
fn save_to_uri(
&self,
uri: &str,
formatter_asset: Option<&impl IsA<Asset>>,
overwrite: bool,
) -> Result<(), glib::Error>;
#[doc(alias = "ges_timeline_set_auto_transition")]
fn set_auto_transition(&self, auto_transition: bool);
#[doc(alias = "ges_timeline_set_snapping_distance")]
fn set_snapping_distance(&self, snapping_distance: gst::ClockTime);
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
#[doc(alias = "ges_timeline_thaw_commit")]
fn thaw_commit(&self);
#[doc(alias = "commited")]
fn connect_commited<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "group-added")]
fn connect_group_added<F: Fn(&Self, &Group) + 'static>(&self, f: F) -> SignalHandlerId;
//#[doc(alias = "group-removed")]
//fn connect_group_removed<Unsupported or ignored types>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "layer-added")]
fn connect_layer_added<F: Fn(&Self, &Layer) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "layer-removed")]
fn connect_layer_removed<F: Fn(&Self, &Layer) + 'static>(&self, f: F) -> SignalHandlerId;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "select-element-track")]
fn connect_select_element_track<F: Fn(&Self, &Clip, &TrackElement) -> Option<Track> + 'static>(
&self,
f: F,
) -> SignalHandlerId;
//#[doc(alias = "select-tracks-for-object")]
//fn connect_select_tracks_for_object<Unsupported or ignored types>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "snapping-ended")]
fn connect_snapping_ended<F: Fn(&Self, &TrackElement, &TrackElement, u64) + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "snapping-started")]
fn connect_snapping_started<F: Fn(&Self, &TrackElement, &TrackElement, u64) + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "track-added")]
fn connect_track_added<F: Fn(&Self, &Track) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "track-removed")]
fn connect_track_removed<F: Fn(&Self, &Track) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "auto-transition")]
fn connect_auto_transition_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "duration")]
fn connect_duration_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "snapping-distance")]
fn connect_snapping_distance_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
}
impl<O: IsA<Timeline>> TimelineExt for O {
#[allow(deprecated)]
fn add_layer(&self, layer: &impl IsA<Layer>) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -265,6 +84,7 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "ges_timeline_add_track")]
fn add_track(&self, track: &impl IsA<Track>) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -277,6 +97,7 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "ges_timeline_append_layer")]
fn append_layer(&self) -> Layer {
unsafe {
from_glib_none(ffi::ges_timeline_append_layer(
@ -285,10 +106,12 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "ges_timeline_commit")]
fn commit(&self) -> bool {
unsafe { from_glib(ffi::ges_timeline_commit(self.as_ref().to_glib_none().0)) }
}
#[doc(alias = "ges_timeline_commit_sync")]
fn commit_sync(&self) -> bool {
unsafe {
from_glib(ffi::ges_timeline_commit_sync(
@ -299,6 +122,7 @@ impl<O: IsA<Timeline>> TimelineExt for O {
#[cfg(feature = "v1_22")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_22")))]
#[doc(alias = "ges_timeline_disable_edit_apis")]
fn disable_edit_apis(&self, disable_edit_apis: bool) {
unsafe {
ffi::ges_timeline_disable_edit_apis(
@ -310,12 +134,15 @@ impl<O: IsA<Timeline>> TimelineExt for O {
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
#[doc(alias = "ges_timeline_freeze_commit")]
fn freeze_commit(&self) {
unsafe {
ffi::ges_timeline_freeze_commit(self.as_ref().to_glib_none().0);
}
}
#[doc(alias = "ges_timeline_get_auto_transition")]
#[doc(alias = "get_auto_transition")]
fn is_auto_transition(&self) -> bool {
unsafe {
from_glib(ffi::ges_timeline_get_auto_transition(
@ -324,6 +151,8 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "ges_timeline_get_duration")]
#[doc(alias = "get_duration")]
fn duration(&self) -> gst::ClockTime {
unsafe {
try_from_glib(ffi::ges_timeline_get_duration(
@ -335,6 +164,8 @@ impl<O: IsA<Timeline>> TimelineExt for O {
#[cfg(feature = "v1_22")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_22")))]
#[doc(alias = "ges_timeline_get_edit_apis_disabled")]
#[doc(alias = "get_edit_apis_disabled")]
fn is_edit_apis_disabled(&self) -> bool {
unsafe {
from_glib(ffi::ges_timeline_get_edit_apis_disabled(
@ -343,6 +174,8 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "ges_timeline_get_element")]
#[doc(alias = "get_element")]
fn element(&self, name: &str) -> Option<TimelineElement> {
unsafe {
from_glib_full(ffi::ges_timeline_get_element(
@ -354,6 +187,8 @@ impl<O: IsA<Timeline>> TimelineExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_timeline_get_frame_at")]
#[doc(alias = "get_frame_at")]
fn frame_at(&self, timestamp: gst::ClockTime) -> FrameNumber {
unsafe {
ffi::ges_timeline_get_frame_at(self.as_ref().to_glib_none().0, timestamp.into_glib())
@ -362,6 +197,8 @@ impl<O: IsA<Timeline>> TimelineExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_timeline_get_frame_time")]
#[doc(alias = "get_frame_time")]
fn frame_time(&self, frame_number: FrameNumber) -> Option<gst::ClockTime> {
unsafe {
from_glib(ffi::ges_timeline_get_frame_time(
@ -371,6 +208,8 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "ges_timeline_get_groups")]
#[doc(alias = "get_groups")]
fn groups(&self) -> Vec<Group> {
unsafe {
FromGlibPtrContainer::from_glib_none(ffi::ges_timeline_get_groups(
@ -379,6 +218,8 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "ges_timeline_get_layer")]
#[doc(alias = "get_layer")]
fn layer(&self, priority: u32) -> Option<Layer> {
unsafe {
from_glib_full(ffi::ges_timeline_get_layer(
@ -388,6 +229,8 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "ges_timeline_get_layers")]
#[doc(alias = "get_layers")]
fn layers(&self) -> Vec<Layer> {
unsafe {
FromGlibPtrContainer::from_glib_full(ffi::ges_timeline_get_layers(
@ -396,6 +239,8 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "ges_timeline_get_pad_for_track")]
#[doc(alias = "get_pad_for_track")]
fn pad_for_track(&self, track: &impl IsA<Track>) -> Option<gst::Pad> {
unsafe {
from_glib_none(ffi::ges_timeline_get_pad_for_track(
@ -405,6 +250,8 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "ges_timeline_get_snapping_distance")]
#[doc(alias = "get_snapping_distance")]
fn snapping_distance(&self) -> Option<gst::ClockTime> {
unsafe {
from_glib(ffi::ges_timeline_get_snapping_distance(
@ -413,6 +260,8 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "ges_timeline_get_track_for_pad")]
#[doc(alias = "get_track_for_pad")]
fn track_for_pad(&self, pad: &impl IsA<gst::Pad>) -> Option<Track> {
unsafe {
from_glib_none(ffi::ges_timeline_get_track_for_pad(
@ -422,6 +271,8 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "ges_timeline_get_tracks")]
#[doc(alias = "get_tracks")]
fn tracks(&self) -> Vec<Track> {
unsafe {
FromGlibPtrContainer::from_glib_full(ffi::ges_timeline_get_tracks(
@ -430,10 +281,12 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "ges_timeline_is_empty")]
fn is_empty(&self) -> bool {
unsafe { from_glib(ffi::ges_timeline_is_empty(self.as_ref().to_glib_none().0)) }
}
#[doc(alias = "ges_timeline_load_from_uri")]
fn load_from_uri(&self, uri: &str) -> Result<(), glib::Error> {
unsafe {
let mut error = ptr::null_mut();
@ -453,6 +306,7 @@ impl<O: IsA<Timeline>> TimelineExt for O {
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "ges_timeline_move_layer")]
fn move_layer(
&self,
layer: &impl IsA<Layer>,
@ -470,6 +324,7 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "ges_timeline_paste_element")]
fn paste_element(
&self,
element: &impl IsA<TimelineElement>,
@ -486,6 +341,7 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "ges_timeline_remove_layer")]
fn remove_layer(&self, layer: &impl IsA<Layer>) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -498,6 +354,7 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "ges_timeline_remove_track")]
fn remove_track(&self, track: &impl IsA<Track>) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -510,6 +367,7 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "ges_timeline_save_to_uri")]
fn save_to_uri(
&self,
uri: &str,
@ -534,6 +392,7 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "ges_timeline_set_auto_transition")]
fn set_auto_transition(&self, auto_transition: bool) {
unsafe {
ffi::ges_timeline_set_auto_transition(
@ -543,6 +402,7 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "ges_timeline_set_snapping_distance")]
fn set_snapping_distance(&self, snapping_distance: gst::ClockTime) {
unsafe {
ffi::ges_timeline_set_snapping_distance(
@ -554,12 +414,14 @@ impl<O: IsA<Timeline>> TimelineExt for O {
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
#[doc(alias = "ges_timeline_thaw_commit")]
fn thaw_commit(&self) {
unsafe {
ffi::ges_timeline_thaw_commit(self.as_ref().to_glib_none().0);
}
}
#[doc(alias = "commited")]
fn connect_commited<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn commited_trampoline<P: IsA<Timeline>, F: Fn(&P) + 'static>(
this: *mut ffi::GESTimeline,
@ -581,6 +443,7 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "group-added")]
fn connect_group_added<F: Fn(&Self, &Group) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn group_added_trampoline<
P: IsA<Timeline>,
@ -609,10 +472,12 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
//#[doc(alias = "group-removed")]
//fn connect_group_removed<Unsupported or ignored types>(&self, f: F) -> SignalHandlerId {
// Empty ctype children: *.PtrArray TypeId { ns_id: 1, id: 54 }
//}
#[doc(alias = "layer-added")]
fn connect_layer_added<F: Fn(&Self, &Layer) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn layer_added_trampoline<
P: IsA<Timeline>,
@ -641,6 +506,7 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "layer-removed")]
fn connect_layer_removed<F: Fn(&Self, &Layer) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn layer_removed_trampoline<
P: IsA<Timeline>,
@ -671,6 +537,7 @@ impl<O: IsA<Timeline>> TimelineExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "select-element-track")]
fn connect_select_element_track<
F: Fn(&Self, &Clip, &TrackElement) -> Option<Track> + 'static,
>(
@ -707,10 +574,12 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
//#[doc(alias = "select-tracks-for-object")]
//fn connect_select_tracks_for_object<Unsupported or ignored types>(&self, f: F) -> SignalHandlerId {
// Empty ctype return value *.PtrArray TypeId { ns_id: 1, id: 17 }
//}
#[doc(alias = "snapping-ended")]
fn connect_snapping_ended<F: Fn(&Self, &TrackElement, &TrackElement, u64) + 'static>(
&self,
f: F,
@ -746,6 +615,7 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "snapping-started")]
fn connect_snapping_started<F: Fn(&Self, &TrackElement, &TrackElement, u64) + 'static>(
&self,
f: F,
@ -781,6 +651,7 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "track-added")]
fn connect_track_added<F: Fn(&Self, &Track) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn track_added_trampoline<
P: IsA<Timeline>,
@ -809,6 +680,7 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "track-removed")]
fn connect_track_removed<F: Fn(&Self, &Track) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn track_removed_trampoline<
P: IsA<Timeline>,
@ -837,6 +709,7 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "auto-transition")]
fn connect_auto_transition_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_auto_transition_trampoline<
P: IsA<Timeline>,
@ -862,6 +735,7 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "duration")]
fn connect_duration_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_duration_trampoline<P: IsA<Timeline>, F: Fn(&P) + 'static>(
this: *mut ffi::GESTimeline,
@ -884,6 +758,7 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
#[doc(alias = "snapping-distance")]
fn connect_snapping_distance_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_snapping_distance_trampoline<
P: IsA<Timeline>,
@ -909,3 +784,5 @@ impl<O: IsA<Timeline>> TimelineExt for O {
}
}
}
impl<O: IsA<Timeline>> TimelineExt for O {}

View file

@ -28,255 +28,13 @@ impl TimelineElement {
pub const NONE: Option<&'static TimelineElement> = None;
}
pub trait TimelineElementExt: 'static {
#[doc(alias = "ges_timeline_element_add_child_property")]
fn add_child_property(
&self,
pspec: impl AsRef<glib::ParamSpec>,
child: &impl IsA<glib::Object>,
) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_timeline_element_copy")]
#[must_use]
fn copy(&self, deep: bool) -> TimelineElement;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_timeline_element_edit")]
fn edit(
&self,
layers: &[Layer],
new_layer_priority: i64,
mode: EditMode,
edge: Edge,
position: u64,
) -> bool;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_timeline_element_edit_full")]
fn edit_full(
&self,
new_layer_priority: i64,
mode: EditMode,
edge: Edge,
position: u64,
) -> Result<(), glib::Error>;
//#[doc(alias = "ges_timeline_element_get_child_properties")]
//#[doc(alias = "get_child_properties")]
//fn child_properties(&self, first_property_name: &str, : /*Unknown conversion*//*Unimplemented*/Basic: VarArgs);
#[doc(alias = "ges_timeline_element_get_child_property")]
#[doc(alias = "get_child_property")]
fn child_property(&self, property_name: &str) -> Option<glib::Value>;
#[doc(alias = "ges_timeline_element_get_child_property_by_pspec")]
#[doc(alias = "get_child_property_by_pspec")]
fn child_property_by_pspec(&self, pspec: impl AsRef<glib::ParamSpec>) -> glib::Value;
//#[doc(alias = "ges_timeline_element_get_child_property_valist")]
//#[doc(alias = "get_child_property_valist")]
//fn child_property_valist(&self, first_property_name: &str, var_args: /*Unknown conversion*//*Unimplemented*/Unsupported);
#[doc(alias = "ges_timeline_element_get_duration")]
#[doc(alias = "get_duration")]
fn duration(&self) -> gst::ClockTime;
#[doc(alias = "ges_timeline_element_get_inpoint")]
#[doc(alias = "get_inpoint")]
fn inpoint(&self) -> gst::ClockTime;
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "ges_timeline_element_get_layer_priority")]
#[doc(alias = "get_layer_priority")]
fn layer_priority(&self) -> u32;
#[doc(alias = "ges_timeline_element_get_max_duration")]
#[doc(alias = "get_max_duration")]
fn max_duration(&self) -> Option<gst::ClockTime>;
#[doc(alias = "ges_timeline_element_get_name")]
#[doc(alias = "get_name")]
fn name(&self) -> Option<glib::GString>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_timeline_element_get_natural_framerate")]
#[doc(alias = "get_natural_framerate")]
fn natural_framerate(&self) -> Option<(i32, i32)>;
#[doc(alias = "ges_timeline_element_get_parent")]
#[doc(alias = "get_parent")]
#[must_use]
fn parent(&self) -> Option<TimelineElement>;
#[doc(alias = "ges_timeline_element_get_priority")]
#[doc(alias = "get_priority")]
fn priority(&self) -> u32;
#[doc(alias = "ges_timeline_element_get_start")]
#[doc(alias = "get_start")]
fn start(&self) -> gst::ClockTime;
#[doc(alias = "ges_timeline_element_get_timeline")]
#[doc(alias = "get_timeline")]
fn timeline(&self) -> Option<Timeline>;
#[doc(alias = "ges_timeline_element_get_toplevel_parent")]
#[doc(alias = "get_toplevel_parent")]
#[must_use]
fn toplevel_parent(&self) -> TimelineElement;
#[doc(alias = "ges_timeline_element_get_track_types")]
#[doc(alias = "get_track_types")]
fn track_types(&self) -> TrackType;
#[doc(alias = "ges_timeline_element_list_children_properties")]
fn list_children_properties(&self) -> Vec<glib::ParamSpec>;
#[doc(alias = "ges_timeline_element_lookup_child")]
fn lookup_child(&self, prop_name: &str) -> Option<(glib::Object, glib::ParamSpec)>;
#[doc(alias = "ges_timeline_element_paste")]
fn paste(&self, paste_position: gst::ClockTime) -> Result<TimelineElement, glib::BoolError>;
#[doc(alias = "ges_timeline_element_remove_child_property")]
fn remove_child_property(
&self,
pspec: impl AsRef<glib::ParamSpec>,
) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_timeline_element_ripple")]
fn ripple(&self, start: gst::ClockTime) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_timeline_element_ripple_end")]
fn ripple_end(&self, end: gst::ClockTime) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_timeline_element_roll_end")]
fn roll_end(&self, end: gst::ClockTime) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_timeline_element_roll_start")]
fn roll_start(&self, start: gst::ClockTime) -> Result<(), glib::error::BoolError>;
//#[doc(alias = "ges_timeline_element_set_child_properties")]
//fn set_child_properties(&self, first_property_name: &str, : /*Unknown conversion*//*Unimplemented*/Basic: VarArgs);
#[doc(alias = "ges_timeline_element_set_child_property")]
fn set_child_property(
&self,
property_name: &str,
value: &glib::Value,
) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_timeline_element_set_child_property_by_pspec")]
fn set_child_property_by_pspec(&self, pspec: impl AsRef<glib::ParamSpec>, value: &glib::Value);
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_timeline_element_set_child_property_full")]
fn set_child_property_full(
&self,
property_name: &str,
value: &glib::Value,
) -> Result<(), glib::Error>;
//#[doc(alias = "ges_timeline_element_set_child_property_valist")]
//fn set_child_property_valist(&self, first_property_name: &str, var_args: /*Unknown conversion*//*Unimplemented*/Unsupported);
#[doc(alias = "ges_timeline_element_set_duration")]
fn set_duration(&self, duration: impl Into<Option<gst::ClockTime>>) -> bool;
#[doc(alias = "ges_timeline_element_set_inpoint")]
fn set_inpoint(&self, inpoint: gst::ClockTime) -> bool;
#[doc(alias = "ges_timeline_element_set_max_duration")]
fn set_max_duration(&self, maxduration: impl Into<Option<gst::ClockTime>>) -> bool;
#[doc(alias = "ges_timeline_element_set_name")]
fn set_name(&self, name: Option<&str>) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_timeline_element_set_parent")]
fn set_parent(&self, parent: &impl IsA<TimelineElement>) -> Result<(), glib::error::BoolError>;
#[deprecated = "Since 1.10"]
#[allow(deprecated)]
#[doc(alias = "ges_timeline_element_set_priority")]
fn set_priority(&self, priority: u32) -> bool;
#[doc(alias = "ges_timeline_element_set_start")]
fn set_start(&self, start: gst::ClockTime) -> bool;
#[doc(alias = "ges_timeline_element_set_timeline")]
fn set_timeline(&self, timeline: &impl IsA<Timeline>) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_timeline_element_trim")]
fn trim(&self, start: gst::ClockTime) -> Result<(), glib::error::BoolError>;
#[doc(alias = "in-point")]
fn in_point(&self) -> u64;
#[doc(alias = "in-point")]
fn set_in_point(&self, in_point: u64);
fn is_serialize(&self) -> bool;
fn set_serialize(&self, serialize: bool);
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "child-property-added")]
fn connect_child_property_added<F: Fn(&Self, &glib::Object, &glib::ParamSpec) + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "child-property-removed")]
fn connect_child_property_removed<F: Fn(&Self, &glib::Object, &glib::ParamSpec) + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "deep-notify")]
fn connect_deep_notify<F: Fn(&Self, &glib::Object, &glib::ParamSpec) + 'static>(
&self,
detail: Option<&str>,
f: F,
) -> SignalHandlerId;
#[doc(alias = "duration")]
fn connect_duration_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "in-point")]
fn connect_in_point_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "max-duration")]
fn connect_max_duration_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "name")]
fn connect_name_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "parent")]
fn connect_parent_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[deprecated = "Since 1.10"]
#[doc(alias = "priority")]
fn connect_priority_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "serialize")]
fn connect_serialize_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "start")]
fn connect_start_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "timeline")]
fn connect_timeline_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::TimelineElement>> Sealed for T {}
}
impl<O: IsA<TimelineElement>> TimelineElementExt for O {
pub trait TimelineElementExt: IsA<TimelineElement> + sealed::Sealed + 'static {
#[doc(alias = "ges_timeline_element_add_child_property")]
fn add_child_property(
&self,
pspec: impl AsRef<glib::ParamSpec>,
@ -294,6 +52,8 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_copy")]
#[must_use]
fn copy(&self, deep: bool) -> TimelineElement {
unsafe {
from_glib_none(ffi::ges_timeline_element_copy(
@ -305,6 +65,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_timeline_element_edit")]
fn edit(
&self,
layers: &[Layer],
@ -327,6 +88,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_timeline_element_edit_full")]
fn edit_full(
&self,
new_layer_priority: i64,
@ -353,10 +115,14 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
//#[doc(alias = "ges_timeline_element_get_child_properties")]
//#[doc(alias = "get_child_properties")]
//fn child_properties(&self, first_property_name: &str, : /*Unknown conversion*//*Unimplemented*/Basic: VarArgs) {
// unsafe { TODO: call ffi:ges_timeline_element_get_child_properties() }
//}
#[doc(alias = "ges_timeline_element_get_child_property")]
#[doc(alias = "get_child_property")]
fn child_property(&self, property_name: &str) -> Option<glib::Value> {
unsafe {
let mut value = glib::Value::uninitialized();
@ -373,6 +139,8 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_get_child_property_by_pspec")]
#[doc(alias = "get_child_property_by_pspec")]
fn child_property_by_pspec(&self, pspec: impl AsRef<glib::ParamSpec>) -> glib::Value {
unsafe {
let mut value = glib::Value::uninitialized();
@ -385,10 +153,14 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
//#[doc(alias = "ges_timeline_element_get_child_property_valist")]
//#[doc(alias = "get_child_property_valist")]
//fn child_property_valist(&self, first_property_name: &str, var_args: /*Unknown conversion*//*Unimplemented*/Unsupported) {
// unsafe { TODO: call ffi:ges_timeline_element_get_child_property_valist() }
//}
#[doc(alias = "ges_timeline_element_get_duration")]
#[doc(alias = "get_duration")]
fn duration(&self) -> gst::ClockTime {
unsafe {
try_from_glib(ffi::ges_timeline_element_get_duration(
@ -398,6 +170,8 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_get_inpoint")]
#[doc(alias = "get_inpoint")]
fn inpoint(&self) -> gst::ClockTime {
unsafe {
try_from_glib(ffi::ges_timeline_element_get_inpoint(
@ -409,10 +183,14 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "ges_timeline_element_get_layer_priority")]
#[doc(alias = "get_layer_priority")]
fn layer_priority(&self) -> u32 {
unsafe { ffi::ges_timeline_element_get_layer_priority(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "ges_timeline_element_get_max_duration")]
#[doc(alias = "get_max_duration")]
fn max_duration(&self) -> Option<gst::ClockTime> {
unsafe {
from_glib(ffi::ges_timeline_element_get_max_duration(
@ -421,6 +199,8 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_get_name")]
#[doc(alias = "get_name")]
fn name(&self) -> Option<glib::GString> {
unsafe {
from_glib_full(ffi::ges_timeline_element_get_name(
@ -431,6 +211,8 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_timeline_element_get_natural_framerate")]
#[doc(alias = "get_natural_framerate")]
fn natural_framerate(&self) -> Option<(i32, i32)> {
unsafe {
let mut framerate_n = mem::MaybeUninit::uninit();
@ -448,6 +230,9 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_get_parent")]
#[doc(alias = "get_parent")]
#[must_use]
fn parent(&self) -> Option<TimelineElement> {
unsafe {
from_glib_full(ffi::ges_timeline_element_get_parent(
@ -456,10 +241,14 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_get_priority")]
#[doc(alias = "get_priority")]
fn priority(&self) -> u32 {
unsafe { ffi::ges_timeline_element_get_priority(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "ges_timeline_element_get_start")]
#[doc(alias = "get_start")]
fn start(&self) -> gst::ClockTime {
unsafe {
try_from_glib(ffi::ges_timeline_element_get_start(
@ -469,6 +258,8 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_get_timeline")]
#[doc(alias = "get_timeline")]
fn timeline(&self) -> Option<Timeline> {
unsafe {
from_glib_full(ffi::ges_timeline_element_get_timeline(
@ -477,6 +268,9 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_get_toplevel_parent")]
#[doc(alias = "get_toplevel_parent")]
#[must_use]
fn toplevel_parent(&self) -> TimelineElement {
unsafe {
from_glib_full(ffi::ges_timeline_element_get_toplevel_parent(
@ -485,6 +279,8 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_get_track_types")]
#[doc(alias = "get_track_types")]
fn track_types(&self) -> TrackType {
unsafe {
from_glib(ffi::ges_timeline_element_get_track_types(
@ -493,6 +289,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_list_children_properties")]
fn list_children_properties(&self) -> Vec<glib::ParamSpec> {
unsafe {
let mut n_properties = mem::MaybeUninit::uninit();
@ -507,6 +304,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_lookup_child")]
fn lookup_child(&self, prop_name: &str) -> Option<(glib::Object, glib::ParamSpec)> {
unsafe {
let mut child = ptr::null_mut();
@ -525,6 +323,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_paste")]
fn paste(&self, paste_position: gst::ClockTime) -> Result<TimelineElement, glib::BoolError> {
unsafe {
Option::<_>::from_glib_full(ffi::ges_timeline_element_paste(
@ -535,6 +334,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_remove_child_property")]
fn remove_child_property(
&self,
pspec: impl AsRef<glib::ParamSpec>,
@ -550,6 +350,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_ripple")]
fn ripple(&self, start: gst::ClockTime) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -559,6 +360,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_ripple_end")]
fn ripple_end(&self, end: gst::ClockTime) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -571,6 +373,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_roll_end")]
fn roll_end(&self, end: gst::ClockTime) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -580,6 +383,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_roll_start")]
fn roll_start(&self, start: gst::ClockTime) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -592,10 +396,12 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
//#[doc(alias = "ges_timeline_element_set_child_properties")]
//fn set_child_properties(&self, first_property_name: &str, : /*Unknown conversion*//*Unimplemented*/Basic: VarArgs) {
// unsafe { TODO: call ffi:ges_timeline_element_set_child_properties() }
//}
#[doc(alias = "ges_timeline_element_set_child_property")]
fn set_child_property(
&self,
property_name: &str,
@ -613,6 +419,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_set_child_property_by_pspec")]
fn set_child_property_by_pspec(&self, pspec: impl AsRef<glib::ParamSpec>, value: &glib::Value) {
unsafe {
ffi::ges_timeline_element_set_child_property_by_pspec(
@ -625,6 +432,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_timeline_element_set_child_property_full")]
fn set_child_property_full(
&self,
property_name: &str,
@ -647,10 +455,12 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
//#[doc(alias = "ges_timeline_element_set_child_property_valist")]
//fn set_child_property_valist(&self, first_property_name: &str, var_args: /*Unknown conversion*//*Unimplemented*/Unsupported) {
// unsafe { TODO: call ffi:ges_timeline_element_set_child_property_valist() }
//}
#[doc(alias = "ges_timeline_element_set_duration")]
fn set_duration(&self, duration: impl Into<Option<gst::ClockTime>>) -> bool {
unsafe {
from_glib(ffi::ges_timeline_element_set_duration(
@ -660,6 +470,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_set_inpoint")]
fn set_inpoint(&self, inpoint: gst::ClockTime) -> bool {
unsafe {
from_glib(ffi::ges_timeline_element_set_inpoint(
@ -669,6 +480,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_set_max_duration")]
fn set_max_duration(&self, maxduration: impl Into<Option<gst::ClockTime>>) -> bool {
unsafe {
from_glib(ffi::ges_timeline_element_set_max_duration(
@ -678,6 +490,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_set_name")]
fn set_name(&self, name: Option<&str>) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -690,6 +503,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_set_parent")]
fn set_parent(&self, parent: &impl IsA<TimelineElement>) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -702,7 +516,9 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[deprecated = "Since 1.10"]
#[allow(deprecated)]
#[doc(alias = "ges_timeline_element_set_priority")]
fn set_priority(&self, priority: u32) -> bool {
unsafe {
from_glib(ffi::ges_timeline_element_set_priority(
@ -712,6 +528,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_set_start")]
fn set_start(&self, start: gst::ClockTime) -> bool {
unsafe {
from_glib(ffi::ges_timeline_element_set_start(
@ -721,6 +538,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_set_timeline")]
fn set_timeline(&self, timeline: &impl IsA<Timeline>) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -733,6 +551,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "ges_timeline_element_trim")]
fn trim(&self, start: gst::ClockTime) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -742,10 +561,12 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "in-point")]
fn in_point(&self) -> u64 {
glib::ObjectExt::property(self.as_ref(), "in-point")
}
#[doc(alias = "in-point")]
fn set_in_point(&self, in_point: u64) {
glib::ObjectExt::set_property(self.as_ref(), "in-point", in_point)
}
@ -760,6 +581,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "child-property-added")]
fn connect_child_property_added<F: Fn(&Self, &glib::Object, &glib::ParamSpec) + 'static>(
&self,
f: F,
@ -795,6 +617,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "child-property-removed")]
fn connect_child_property_removed<F: Fn(&Self, &glib::Object, &glib::ParamSpec) + 'static>(
&self,
f: F,
@ -828,6 +651,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "deep-notify")]
fn connect_deep_notify<F: Fn(&Self, &glib::Object, &glib::ParamSpec) + 'static>(
&self,
detail: Option<&str>,
@ -866,6 +690,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "duration")]
fn connect_duration_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_duration_trampoline<
P: IsA<TimelineElement>,
@ -891,6 +716,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "in-point")]
fn connect_in_point_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_in_point_trampoline<
P: IsA<TimelineElement>,
@ -916,6 +742,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "max-duration")]
fn connect_max_duration_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_max_duration_trampoline<
P: IsA<TimelineElement>,
@ -941,6 +768,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "name")]
fn connect_name_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_name_trampoline<
P: IsA<TimelineElement>,
@ -966,6 +794,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "parent")]
fn connect_parent_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_parent_trampoline<
P: IsA<TimelineElement>,
@ -991,6 +820,8 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[deprecated = "Since 1.10"]
#[doc(alias = "priority")]
fn connect_priority_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_priority_trampoline<
P: IsA<TimelineElement>,
@ -1016,6 +847,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "serialize")]
fn connect_serialize_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_serialize_trampoline<
P: IsA<TimelineElement>,
@ -1041,6 +873,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "start")]
fn connect_start_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_start_trampoline<
P: IsA<TimelineElement>,
@ -1066,6 +899,7 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
#[doc(alias = "timeline")]
fn connect_timeline_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_timeline_trampoline<
P: IsA<TimelineElement>,
@ -1091,3 +925,5 @@ impl<O: IsA<TimelineElement>> TimelineElementExt for O {
}
}
}
impl<O: IsA<TimelineElement>> TimelineElementExt for O {}

View file

@ -34,141 +34,24 @@ impl TitleClip {
}
}
pub trait TitleClipExt: 'static {
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::TitleClip>> Sealed for T {}
}
pub trait TitleClipExt: IsA<TitleClip> + sealed::Sealed + 'static {
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_get_background_color")]
#[doc(alias = "get_background_color")]
fn background_color(&self) -> u32;
fn background_color(&self) -> u32 {
unsafe { ffi::ges_title_clip_get_background_color(self.as_ref().to_glib_none().0) }
}
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_get_font_desc")]
#[doc(alias = "get_font_desc")]
fn font_desc(&self) -> Option<glib::GString>;
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_get_halignment")]
#[doc(alias = "get_halignment")]
fn halignment(&self) -> TextHAlign;
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_get_text")]
#[doc(alias = "get_text")]
fn text(&self) -> Option<glib::GString>;
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_get_text_color")]
#[doc(alias = "get_text_color")]
fn text_color(&self) -> u32;
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_get_valignment")]
#[doc(alias = "get_valignment")]
fn valignment(&self) -> TextVAlign;
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_get_xpos")]
#[doc(alias = "get_xpos")]
fn xpos(&self) -> f64;
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_get_ypos")]
#[doc(alias = "get_ypos")]
fn ypos(&self) -> f64;
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_set_background")]
fn set_background(&self, background: u32);
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_set_color")]
fn set_color(&self, color: u32);
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_set_font_desc")]
fn set_font_desc(&self, font_desc: Option<&str>);
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_set_halignment")]
fn set_halignment(&self, halign: TextHAlign);
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_set_text")]
fn set_text(&self, text: Option<&str>);
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_set_valignment")]
fn set_valignment(&self, valign: TextVAlign);
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_set_xpos")]
fn set_xpos(&self, position: f64);
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_set_ypos")]
fn set_ypos(&self, position: f64);
#[cfg_attr(feature = "v1_6", deprecated = "Since 1.6")]
fn background(&self) -> u32;
#[cfg_attr(feature = "v1_6", deprecated = "Since 1.6")]
fn color(&self) -> u32;
#[deprecated = "Since 1.6"]
#[doc(alias = "background")]
fn connect_background_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[deprecated = "Since 1.6"]
#[doc(alias = "color")]
fn connect_color_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[deprecated = "Since 1.6"]
#[doc(alias = "font-desc")]
fn connect_font_desc_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[deprecated = "Since 1.6"]
#[doc(alias = "halignment")]
fn connect_halignment_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[deprecated = "Since 1.6"]
#[doc(alias = "text")]
fn connect_text_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[deprecated = "Since 1.6"]
#[doc(alias = "valignment")]
fn connect_valignment_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[deprecated = "Since 1.6"]
#[doc(alias = "xpos")]
fn connect_xpos_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[deprecated = "Since 1.6"]
#[doc(alias = "ypos")]
fn connect_ypos_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
}
impl<O: IsA<TitleClip>> TitleClipExt for O {
#[allow(deprecated)]
fn background_color(&self) -> u32 {
unsafe { ffi::ges_title_clip_get_background_color(self.as_ref().to_glib_none().0) }
}
#[allow(deprecated)]
fn font_desc(&self) -> Option<glib::GString> {
unsafe {
from_glib_full(ffi::ges_title_clip_get_font_desc(
@ -177,7 +60,10 @@ impl<O: IsA<TitleClip>> TitleClipExt for O {
}
}
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_get_halignment")]
#[doc(alias = "get_halignment")]
fn halignment(&self) -> TextHAlign {
unsafe {
from_glib(ffi::ges_title_clip_get_halignment(
@ -186,17 +72,26 @@ impl<O: IsA<TitleClip>> TitleClipExt for O {
}
}
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_get_text")]
#[doc(alias = "get_text")]
fn text(&self) -> Option<glib::GString> {
unsafe { from_glib_full(ffi::ges_title_clip_get_text(self.as_ref().to_glib_none().0)) }
}
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_get_text_color")]
#[doc(alias = "get_text_color")]
fn text_color(&self) -> u32 {
unsafe { ffi::ges_title_clip_get_text_color(self.as_ref().to_glib_none().0) }
}
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_get_valignment")]
#[doc(alias = "get_valignment")]
fn valignment(&self) -> TextVAlign {
unsafe {
from_glib(ffi::ges_title_clip_get_valignment(
@ -205,31 +100,43 @@ impl<O: IsA<TitleClip>> TitleClipExt for O {
}
}
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_get_xpos")]
#[doc(alias = "get_xpos")]
fn xpos(&self) -> f64 {
unsafe { ffi::ges_title_clip_get_xpos(self.as_ref().to_glib_none().0) }
}
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_get_ypos")]
#[doc(alias = "get_ypos")]
fn ypos(&self) -> f64 {
unsafe { ffi::ges_title_clip_get_ypos(self.as_ref().to_glib_none().0) }
}
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_set_background")]
fn set_background(&self, background: u32) {
unsafe {
ffi::ges_title_clip_set_background(self.as_ref().to_glib_none().0, background);
}
}
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_set_color")]
fn set_color(&self, color: u32) {
unsafe {
ffi::ges_title_clip_set_color(self.as_ref().to_glib_none().0, color);
}
}
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_set_font_desc")]
fn set_font_desc(&self, font_desc: Option<&str>) {
unsafe {
ffi::ges_title_clip_set_font_desc(
@ -239,49 +146,63 @@ impl<O: IsA<TitleClip>> TitleClipExt for O {
}
}
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_set_halignment")]
fn set_halignment(&self, halign: TextHAlign) {
unsafe {
ffi::ges_title_clip_set_halignment(self.as_ref().to_glib_none().0, halign.into_glib());
}
}
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_set_text")]
fn set_text(&self, text: Option<&str>) {
unsafe {
ffi::ges_title_clip_set_text(self.as_ref().to_glib_none().0, text.to_glib_none().0);
}
}
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_set_valignment")]
fn set_valignment(&self, valign: TextVAlign) {
unsafe {
ffi::ges_title_clip_set_valignment(self.as_ref().to_glib_none().0, valign.into_glib());
}
}
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_set_xpos")]
fn set_xpos(&self, position: f64) {
unsafe {
ffi::ges_title_clip_set_xpos(self.as_ref().to_glib_none().0, position);
}
}
#[deprecated = "Since 1.6"]
#[allow(deprecated)]
#[doc(alias = "ges_title_clip_set_ypos")]
fn set_ypos(&self, position: f64) {
unsafe {
ffi::ges_title_clip_set_ypos(self.as_ref().to_glib_none().0, position);
}
}
#[cfg_attr(feature = "v1_6", deprecated = "Since 1.6")]
fn background(&self) -> u32 {
glib::ObjectExt::property(self.as_ref(), "background")
}
#[cfg_attr(feature = "v1_6", deprecated = "Since 1.6")]
fn color(&self) -> u32 {
glib::ObjectExt::property(self.as_ref(), "color")
}
#[deprecated = "Since 1.6"]
#[doc(alias = "background")]
fn connect_background_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_background_trampoline<
P: IsA<TitleClip>,
@ -307,6 +228,8 @@ impl<O: IsA<TitleClip>> TitleClipExt for O {
}
}
#[deprecated = "Since 1.6"]
#[doc(alias = "color")]
fn connect_color_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_color_trampoline<P: IsA<TitleClip>, F: Fn(&P) + 'static>(
this: *mut ffi::GESTitleClip,
@ -329,6 +252,8 @@ impl<O: IsA<TitleClip>> TitleClipExt for O {
}
}
#[deprecated = "Since 1.6"]
#[doc(alias = "font-desc")]
fn connect_font_desc_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_font_desc_trampoline<P: IsA<TitleClip>, F: Fn(&P) + 'static>(
this: *mut ffi::GESTitleClip,
@ -351,6 +276,8 @@ impl<O: IsA<TitleClip>> TitleClipExt for O {
}
}
#[deprecated = "Since 1.6"]
#[doc(alias = "halignment")]
fn connect_halignment_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_halignment_trampoline<
P: IsA<TitleClip>,
@ -376,6 +303,8 @@ impl<O: IsA<TitleClip>> TitleClipExt for O {
}
}
#[deprecated = "Since 1.6"]
#[doc(alias = "text")]
fn connect_text_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_text_trampoline<P: IsA<TitleClip>, F: Fn(&P) + 'static>(
this: *mut ffi::GESTitleClip,
@ -398,6 +327,8 @@ impl<O: IsA<TitleClip>> TitleClipExt for O {
}
}
#[deprecated = "Since 1.6"]
#[doc(alias = "valignment")]
fn connect_valignment_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_valignment_trampoline<
P: IsA<TitleClip>,
@ -423,6 +354,8 @@ impl<O: IsA<TitleClip>> TitleClipExt for O {
}
}
#[deprecated = "Since 1.6"]
#[doc(alias = "xpos")]
fn connect_xpos_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_xpos_trampoline<P: IsA<TitleClip>, F: Fn(&P) + 'static>(
this: *mut ffi::GESTitleClip,
@ -445,6 +378,8 @@ impl<O: IsA<TitleClip>> TitleClipExt for O {
}
}
#[deprecated = "Since 1.6"]
#[doc(alias = "ypos")]
fn connect_ypos_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_ypos_trampoline<P: IsA<TitleClip>, F: Fn(&P) + 'static>(
this: *mut ffi::GESTitleClip,
@ -467,3 +402,5 @@ impl<O: IsA<TitleClip>> TitleClipExt for O {
}
}
}
impl<O: IsA<TitleClip>> TitleClipExt for O {}

View file

@ -23,74 +23,22 @@ impl TitleSource {
pub const NONE: Option<&'static TitleSource> = None;
}
pub trait TitleSourceExt: 'static {
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::TitleSource>> Sealed for T {}
}
pub trait TitleSourceExt: IsA<TitleSource> + sealed::Sealed + 'static {
#[doc(alias = "ges_title_source_get_background_color")]
#[doc(alias = "get_background_color")]
fn background_color(&self) -> u32;
fn background_color(&self) -> u32 {
unsafe { ffi::ges_title_source_get_background_color(self.as_ref().to_glib_none().0) }
}
#[cfg_attr(feature = "v1_16", deprecated = "Since 1.16")]
#[allow(deprecated)]
#[doc(alias = "ges_title_source_get_font_desc")]
#[doc(alias = "get_font_desc")]
fn font_desc(&self) -> Option<glib::GString>;
#[doc(alias = "ges_title_source_get_halignment")]
#[doc(alias = "get_halignment")]
fn halignment(&self) -> TextHAlign;
#[cfg_attr(feature = "v1_16", deprecated = "Since 1.16")]
#[allow(deprecated)]
#[doc(alias = "ges_title_source_get_text")]
#[doc(alias = "get_text")]
fn text(&self) -> Option<glib::GString>;
#[doc(alias = "ges_title_source_get_text_color")]
#[doc(alias = "get_text_color")]
fn text_color(&self) -> u32;
#[doc(alias = "ges_title_source_get_valignment")]
#[doc(alias = "get_valignment")]
fn valignment(&self) -> TextVAlign;
#[doc(alias = "ges_title_source_get_xpos")]
#[doc(alias = "get_xpos")]
fn xpos(&self) -> f64;
#[doc(alias = "ges_title_source_get_ypos")]
#[doc(alias = "get_ypos")]
fn ypos(&self) -> f64;
#[doc(alias = "ges_title_source_set_background_color")]
fn set_background_color(&self, color: u32);
#[doc(alias = "ges_title_source_set_font_desc")]
fn set_font_desc(&self, font_desc: Option<&str>);
#[doc(alias = "ges_title_source_set_halignment")]
fn set_halignment(&self, halign: TextHAlign);
#[doc(alias = "ges_title_source_set_text")]
fn set_text(&self, text: Option<&str>);
#[doc(alias = "ges_title_source_set_text_color")]
fn set_text_color(&self, color: u32);
#[doc(alias = "ges_title_source_set_valignment")]
fn set_valignment(&self, valign: TextVAlign);
#[doc(alias = "ges_title_source_set_xpos")]
fn set_xpos(&self, position: f64);
#[doc(alias = "ges_title_source_set_ypos")]
fn set_ypos(&self, position: f64);
}
impl<O: IsA<TitleSource>> TitleSourceExt for O {
fn background_color(&self) -> u32 {
unsafe { ffi::ges_title_source_get_background_color(self.as_ref().to_glib_none().0) }
}
#[allow(deprecated)]
fn font_desc(&self) -> Option<glib::GString> {
unsafe {
from_glib_full(ffi::ges_title_source_get_font_desc(
@ -99,6 +47,8 @@ impl<O: IsA<TitleSource>> TitleSourceExt for O {
}
}
#[doc(alias = "ges_title_source_get_halignment")]
#[doc(alias = "get_halignment")]
fn halignment(&self) -> TextHAlign {
unsafe {
from_glib(ffi::ges_title_source_get_halignment(
@ -107,7 +57,10 @@ impl<O: IsA<TitleSource>> TitleSourceExt for O {
}
}
#[cfg_attr(feature = "v1_16", deprecated = "Since 1.16")]
#[allow(deprecated)]
#[doc(alias = "ges_title_source_get_text")]
#[doc(alias = "get_text")]
fn text(&self) -> Option<glib::GString> {
unsafe {
from_glib_full(ffi::ges_title_source_get_text(
@ -116,10 +69,14 @@ impl<O: IsA<TitleSource>> TitleSourceExt for O {
}
}
#[doc(alias = "ges_title_source_get_text_color")]
#[doc(alias = "get_text_color")]
fn text_color(&self) -> u32 {
unsafe { ffi::ges_title_source_get_text_color(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "ges_title_source_get_valignment")]
#[doc(alias = "get_valignment")]
fn valignment(&self) -> TextVAlign {
unsafe {
from_glib(ffi::ges_title_source_get_valignment(
@ -128,20 +85,26 @@ impl<O: IsA<TitleSource>> TitleSourceExt for O {
}
}
#[doc(alias = "ges_title_source_get_xpos")]
#[doc(alias = "get_xpos")]
fn xpos(&self) -> f64 {
unsafe { ffi::ges_title_source_get_xpos(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "ges_title_source_get_ypos")]
#[doc(alias = "get_ypos")]
fn ypos(&self) -> f64 {
unsafe { ffi::ges_title_source_get_ypos(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "ges_title_source_set_background_color")]
fn set_background_color(&self, color: u32) {
unsafe {
ffi::ges_title_source_set_background_color(self.as_ref().to_glib_none().0, color);
}
}
#[doc(alias = "ges_title_source_set_font_desc")]
fn set_font_desc(&self, font_desc: Option<&str>) {
unsafe {
ffi::ges_title_source_set_font_desc(
@ -151,6 +114,7 @@ impl<O: IsA<TitleSource>> TitleSourceExt for O {
}
}
#[doc(alias = "ges_title_source_set_halignment")]
fn set_halignment(&self, halign: TextHAlign) {
unsafe {
ffi::ges_title_source_set_halignment(
@ -160,18 +124,21 @@ impl<O: IsA<TitleSource>> TitleSourceExt for O {
}
}
#[doc(alias = "ges_title_source_set_text")]
fn set_text(&self, text: Option<&str>) {
unsafe {
ffi::ges_title_source_set_text(self.as_ref().to_glib_none().0, text.to_glib_none().0);
}
}
#[doc(alias = "ges_title_source_set_text_color")]
fn set_text_color(&self, color: u32) {
unsafe {
ffi::ges_title_source_set_text_color(self.as_ref().to_glib_none().0, color);
}
}
#[doc(alias = "ges_title_source_set_valignment")]
fn set_valignment(&self, valign: TextVAlign) {
unsafe {
ffi::ges_title_source_set_valignment(
@ -181,15 +148,19 @@ impl<O: IsA<TitleSource>> TitleSourceExt for O {
}
}
#[doc(alias = "ges_title_source_set_xpos")]
fn set_xpos(&self, position: f64) {
unsafe {
ffi::ges_title_source_set_xpos(self.as_ref().to_glib_none().0, position);
}
}
#[doc(alias = "ges_title_source_set_ypos")]
fn set_ypos(&self, position: f64) {
unsafe {
ffi::ges_title_source_set_ypos(self.as_ref().to_glib_none().0, position);
}
}
}
impl<O: IsA<TitleSource>> TitleSourceExt for O {}

View file

@ -33,111 +33,13 @@ impl Track {
}
}
pub trait GESTrackExt: 'static {
#[doc(alias = "ges_track_add_element")]
fn add_element(&self, object: &impl IsA<TrackElement>) -> Result<(), glib::error::BoolError>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_add_element_full")]
fn add_element_full(&self, object: &impl IsA<TrackElement>) -> Result<(), glib::Error>;
#[doc(alias = "ges_track_commit")]
fn commit(&self) -> bool;
#[doc(alias = "ges_track_get_caps")]
#[doc(alias = "get_caps")]
fn caps(&self) -> Option<gst::Caps>;
#[doc(alias = "ges_track_get_elements")]
#[doc(alias = "get_elements")]
fn elements(&self) -> Vec<TrackElement>;
#[doc(alias = "ges_track_get_mixing")]
#[doc(alias = "get_mixing")]
fn is_mixing(&self) -> bool;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_get_restriction_caps")]
#[doc(alias = "get_restriction_caps")]
fn restriction_caps(&self) -> Option<gst::Caps>;
#[doc(alias = "ges_track_get_timeline")]
#[doc(alias = "get_timeline")]
fn timeline(&self) -> Option<Timeline>;
#[doc(alias = "ges_track_remove_element")]
fn remove_element(&self, object: &impl IsA<TrackElement>)
-> Result<(), glib::error::BoolError>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_remove_element_full")]
fn remove_element_full(&self, object: &impl IsA<TrackElement>) -> Result<(), glib::Error>;
//#[doc(alias = "ges_track_set_create_element_for_gap_func")]
//fn set_create_element_for_gap_func<P: Fn() -> gst::Element + 'static>(&self, func: P);
#[doc(alias = "ges_track_set_mixing")]
fn set_mixing(&self, mixing: bool);
#[doc(alias = "ges_track_set_restriction_caps")]
fn set_restriction_caps(&self, caps: &gst::Caps);
#[doc(alias = "ges_track_set_timeline")]
fn set_timeline(&self, timeline: &impl IsA<Timeline>);
#[doc(alias = "ges_track_update_restriction_caps")]
fn update_restriction_caps(&self, caps: &gst::Caps);
fn duration(&self) -> u64;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
fn id(&self) -> Option<glib::GString>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
fn set_id(&self, id: Option<&str>);
#[doc(alias = "restriction-caps")]
fn get_property_restriction_caps(&self) -> Option<gst::Caps>;
#[doc(alias = "track-type")]
fn track_type(&self) -> TrackType;
#[doc(alias = "commited")]
fn connect_commited<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "track-element-added")]
fn connect_track_element_added<F: Fn(&Self, &TrackElement) + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "track-element-removed")]
fn connect_track_element_removed<F: Fn(&Self, &TrackElement) + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "duration")]
fn connect_duration_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "id")]
fn connect_id_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "mixing")]
fn connect_mixing_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "restriction-caps")]
fn connect_restriction_caps_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::Track>> Sealed for T {}
}
impl<O: IsA<Track>> GESTrackExt for O {
pub trait GESTrackExt: IsA<Track> + sealed::Sealed + 'static {
#[doc(alias = "ges_track_add_element")]
fn add_element(&self, object: &impl IsA<TrackElement>) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -152,6 +54,7 @@ impl<O: IsA<Track>> GESTrackExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_add_element_full")]
fn add_element_full(&self, object: &impl IsA<TrackElement>) -> Result<(), glib::Error> {
unsafe {
let mut error = ptr::null_mut();
@ -169,14 +72,19 @@ impl<O: IsA<Track>> GESTrackExt for O {
}
}
#[doc(alias = "ges_track_commit")]
fn commit(&self) -> bool {
unsafe { from_glib(ffi::ges_track_commit(self.as_ref().to_glib_none().0)) }
}
#[doc(alias = "ges_track_get_caps")]
#[doc(alias = "get_caps")]
fn caps(&self) -> Option<gst::Caps> {
unsafe { from_glib_none(ffi::ges_track_get_caps(self.as_ref().to_glib_none().0)) }
}
#[doc(alias = "ges_track_get_elements")]
#[doc(alias = "get_elements")]
fn elements(&self) -> Vec<TrackElement> {
unsafe {
FromGlibPtrContainer::from_glib_full(ffi::ges_track_get_elements(
@ -185,12 +93,16 @@ impl<O: IsA<Track>> GESTrackExt for O {
}
}
#[doc(alias = "ges_track_get_mixing")]
#[doc(alias = "get_mixing")]
fn is_mixing(&self) -> bool {
unsafe { from_glib(ffi::ges_track_get_mixing(self.as_ref().to_glib_none().0)) }
}
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_get_restriction_caps")]
#[doc(alias = "get_restriction_caps")]
fn restriction_caps(&self) -> Option<gst::Caps> {
unsafe {
from_glib_full(ffi::ges_track_get_restriction_caps(
@ -199,10 +111,13 @@ impl<O: IsA<Track>> GESTrackExt for O {
}
}
#[doc(alias = "ges_track_get_timeline")]
#[doc(alias = "get_timeline")]
fn timeline(&self) -> Option<Timeline> {
unsafe { from_glib_none(ffi::ges_track_get_timeline(self.as_ref().to_glib_none().0)) }
}
#[doc(alias = "ges_track_remove_element")]
fn remove_element(
&self,
object: &impl IsA<TrackElement>,
@ -220,6 +135,7 @@ impl<O: IsA<Track>> GESTrackExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_remove_element_full")]
fn remove_element_full(&self, object: &impl IsA<TrackElement>) -> Result<(), glib::Error> {
unsafe {
let mut error = ptr::null_mut();
@ -237,16 +153,19 @@ impl<O: IsA<Track>> GESTrackExt for O {
}
}
//#[doc(alias = "ges_track_set_create_element_for_gap_func")]
//fn set_create_element_for_gap_func<P: Fn() -> gst::Element + 'static>(&self, func: P) {
// unsafe { TODO: call ffi:ges_track_set_create_element_for_gap_func() }
//}
#[doc(alias = "ges_track_set_mixing")]
fn set_mixing(&self, mixing: bool) {
unsafe {
ffi::ges_track_set_mixing(self.as_ref().to_glib_none().0, mixing.into_glib());
}
}
#[doc(alias = "ges_track_set_restriction_caps")]
fn set_restriction_caps(&self, caps: &gst::Caps) {
unsafe {
ffi::ges_track_set_restriction_caps(
@ -256,6 +175,7 @@ impl<O: IsA<Track>> GESTrackExt for O {
}
}
#[doc(alias = "ges_track_set_timeline")]
fn set_timeline(&self, timeline: &impl IsA<Timeline>) {
unsafe {
ffi::ges_track_set_timeline(
@ -265,6 +185,7 @@ impl<O: IsA<Track>> GESTrackExt for O {
}
}
#[doc(alias = "ges_track_update_restriction_caps")]
fn update_restriction_caps(&self, caps: &gst::Caps) {
unsafe {
ffi::ges_track_update_restriction_caps(
@ -290,14 +211,17 @@ impl<O: IsA<Track>> GESTrackExt for O {
glib::ObjectExt::set_property(self.as_ref(), "id", id)
}
#[doc(alias = "restriction-caps")]
fn get_property_restriction_caps(&self) -> Option<gst::Caps> {
glib::ObjectExt::property(self.as_ref(), "restriction-caps")
}
#[doc(alias = "track-type")]
fn track_type(&self) -> TrackType {
glib::ObjectExt::property(self.as_ref(), "track-type")
}
#[doc(alias = "commited")]
fn connect_commited<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn commited_trampoline<P: IsA<Track>, F: Fn(&P) + 'static>(
this: *mut ffi::GESTrack,
@ -319,6 +243,7 @@ impl<O: IsA<Track>> GESTrackExt for O {
}
}
#[doc(alias = "track-element-added")]
fn connect_track_element_added<F: Fn(&Self, &TrackElement) + 'static>(
&self,
f: F,
@ -350,6 +275,7 @@ impl<O: IsA<Track>> GESTrackExt for O {
}
}
#[doc(alias = "track-element-removed")]
fn connect_track_element_removed<F: Fn(&Self, &TrackElement) + 'static>(
&self,
f: F,
@ -381,6 +307,7 @@ impl<O: IsA<Track>> GESTrackExt for O {
}
}
#[doc(alias = "duration")]
fn connect_duration_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_duration_trampoline<P: IsA<Track>, F: Fn(&P) + 'static>(
this: *mut ffi::GESTrack,
@ -405,6 +332,7 @@ impl<O: IsA<Track>> GESTrackExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "id")]
fn connect_id_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_id_trampoline<P: IsA<Track>, F: Fn(&P) + 'static>(
this: *mut ffi::GESTrack,
@ -427,6 +355,7 @@ impl<O: IsA<Track>> GESTrackExt for O {
}
}
#[doc(alias = "mixing")]
fn connect_mixing_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_mixing_trampoline<P: IsA<Track>, F: Fn(&P) + 'static>(
this: *mut ffi::GESTrack,
@ -449,6 +378,7 @@ impl<O: IsA<Track>> GESTrackExt for O {
}
}
#[doc(alias = "restriction-caps")]
fn connect_restriction_caps_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_restriction_caps_trampoline<
P: IsA<Track>,
@ -474,3 +404,5 @@ impl<O: IsA<Track>> GESTrackExt for O {
}
}
}
impl<O: IsA<Track>> GESTrackExt for O {}

View file

@ -25,180 +25,13 @@ impl TrackElement {
pub const NONE: Option<&'static TrackElement> = None;
}
pub trait TrackElementExt: 'static {
#[doc(alias = "ges_track_element_add_children_props")]
fn add_children_props(
&self,
element: &impl IsA<gst::Element>,
wanted_categories: &[&str],
blacklist: &[&str],
whitelist: &[&str],
);
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_element_clamp_control_source")]
fn clamp_control_source(&self, property_name: &str);
#[cfg_attr(feature = "v1_18", deprecated = "Since 1.18")]
#[allow(deprecated)]
#[doc(alias = "ges_track_element_edit")]
fn edit(
&self,
layers: &[Layer],
mode: EditMode,
edge: Edge,
position: u64,
) -> Result<(), glib::error::BoolError>;
//#[doc(alias = "ges_track_element_get_all_control_bindings")]
//#[doc(alias = "get_all_control_bindings")]
//fn all_control_bindings(&self) -> /*Unknown conversion*//*Unimplemented*/HashTable TypeId { ns_id: 0, id: 28 }/TypeId { ns_id: 6, id: 87 };
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_element_get_auto_clamp_control_sources")]
#[doc(alias = "get_auto_clamp_control_sources")]
fn is_auto_clamp_control_sources(&self) -> bool;
//#[doc(alias = "ges_track_element_get_child_properties")]
//#[doc(alias = "get_child_properties")]
//fn child_properties(&self, first_property_name: &str, : /*Unknown conversion*//*Unimplemented*/Basic: VarArgs);
#[doc(alias = "ges_track_element_get_child_property")]
#[doc(alias = "get_child_property")]
fn child_property(&self, property_name: &str) -> Option<glib::Value>;
#[doc(alias = "ges_track_element_get_child_property_by_pspec")]
#[doc(alias = "get_child_property_by_pspec")]
fn child_property_by_pspec(&self, pspec: impl AsRef<glib::ParamSpec>) -> glib::Value;
//#[doc(alias = "ges_track_element_get_child_property_valist")]
//#[doc(alias = "get_child_property_valist")]
//fn child_property_valist(&self, first_property_name: &str, var_args: /*Unknown conversion*//*Unimplemented*/Unsupported);
#[doc(alias = "ges_track_element_get_control_binding")]
#[doc(alias = "get_control_binding")]
fn control_binding(&self, property_name: &str) -> Option<gst::ControlBinding>;
#[doc(alias = "ges_track_element_get_element")]
#[doc(alias = "get_element")]
fn element(&self) -> Option<gst::Element>;
#[doc(alias = "ges_track_element_get_gnlobject")]
#[doc(alias = "get_gnlobject")]
fn gnlobject(&self) -> gst::Element;
#[doc(alias = "ges_track_element_get_nleobject")]
#[doc(alias = "get_nleobject")]
fn nleobject(&self) -> gst::Element;
#[doc(alias = "ges_track_element_get_track")]
#[doc(alias = "get_track")]
fn track(&self) -> Option<Track>;
#[doc(alias = "ges_track_element_get_track_type")]
#[doc(alias = "get_track_type")]
fn track_type(&self) -> TrackType;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_element_has_internal_source")]
fn has_internal_source(&self) -> bool;
#[doc(alias = "ges_track_element_is_active")]
fn is_active(&self) -> bool;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_element_is_core")]
fn is_core(&self) -> bool;
#[doc(alias = "ges_track_element_list_children_properties")]
fn list_children_properties(&self) -> Vec<glib::ParamSpec>;
#[doc(alias = "ges_track_element_lookup_child")]
fn lookup_child(&self, prop_name: &str) -> Option<(gst::Element, glib::ParamSpec)>;
#[doc(alias = "ges_track_element_remove_control_binding")]
fn remove_control_binding(&self, property_name: &str) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_track_element_set_active")]
fn set_active(&self, active: bool) -> bool;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_element_set_auto_clamp_control_sources")]
fn set_auto_clamp_control_sources(&self, auto_clamp: bool);
//#[doc(alias = "ges_track_element_set_child_properties")]
//fn set_child_properties(&self, first_property_name: &str, : /*Unknown conversion*//*Unimplemented*/Basic: VarArgs);
#[doc(alias = "ges_track_element_set_child_property")]
fn set_child_property(
&self,
property_name: &str,
value: &glib::Value,
) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_track_element_set_child_property_by_pspec")]
fn set_child_property_by_pspec(&self, pspec: impl AsRef<glib::ParamSpec>, value: &glib::Value);
//#[doc(alias = "ges_track_element_set_child_property_valist")]
//fn set_child_property_valist(&self, first_property_name: &str, var_args: /*Unknown conversion*//*Unimplemented*/Unsupported);
#[doc(alias = "ges_track_element_set_control_source")]
fn set_control_source(
&self,
source: &impl IsA<gst::ControlSource>,
property_name: &str,
binding_type: &str,
) -> bool;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_element_set_has_internal_source")]
fn set_has_internal_source(&self, has_internal_source: bool) -> bool;
#[doc(alias = "ges_track_element_set_track_type")]
fn set_track_type(&self, type_: TrackType);
#[doc(alias = "control-binding-added")]
fn connect_control_binding_added<F: Fn(&Self, &gst::ControlBinding) + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "control-binding-removed")]
fn connect_control_binding_removed<F: Fn(&Self, &gst::ControlBinding) + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "active")]
fn connect_active_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "auto-clamp-control-sources")]
fn connect_auto_clamp_control_sources_notify<F: Fn(&Self) + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "has-internal-source")]
fn connect_has_internal_source_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "track")]
fn connect_track_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "track-type")]
fn connect_track_type_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::TrackElement>> Sealed for T {}
}
impl<O: IsA<TrackElement>> TrackElementExt for O {
pub trait TrackElementExt: IsA<TrackElement> + sealed::Sealed + 'static {
#[doc(alias = "ges_track_element_add_children_props")]
fn add_children_props(
&self,
element: &impl IsA<gst::Element>,
@ -219,6 +52,7 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_element_clamp_control_source")]
fn clamp_control_source(&self, property_name: &str) {
unsafe {
ffi::ges_track_element_clamp_control_source(
@ -228,7 +62,9 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
#[cfg_attr(feature = "v1_18", deprecated = "Since 1.18")]
#[allow(deprecated)]
#[doc(alias = "ges_track_element_edit")]
fn edit(
&self,
layers: &[Layer],
@ -250,12 +86,16 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
//#[doc(alias = "ges_track_element_get_all_control_bindings")]
//#[doc(alias = "get_all_control_bindings")]
//fn all_control_bindings(&self) -> /*Unknown conversion*//*Unimplemented*/HashTable TypeId { ns_id: 0, id: 28 }/TypeId { ns_id: 6, id: 87 } {
// unsafe { TODO: call ffi:ges_track_element_get_all_control_bindings() }
//}
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_element_get_auto_clamp_control_sources")]
#[doc(alias = "get_auto_clamp_control_sources")]
fn is_auto_clamp_control_sources(&self) -> bool {
unsafe {
from_glib(ffi::ges_track_element_get_auto_clamp_control_sources(
@ -264,10 +104,14 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
//#[doc(alias = "ges_track_element_get_child_properties")]
//#[doc(alias = "get_child_properties")]
//fn child_properties(&self, first_property_name: &str, : /*Unknown conversion*//*Unimplemented*/Basic: VarArgs) {
// unsafe { TODO: call ffi:ges_track_element_get_child_properties() }
//}
#[doc(alias = "ges_track_element_get_child_property")]
#[doc(alias = "get_child_property")]
fn child_property(&self, property_name: &str) -> Option<glib::Value> {
unsafe {
let mut value = glib::Value::uninitialized();
@ -284,6 +128,8 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
#[doc(alias = "ges_track_element_get_child_property_by_pspec")]
#[doc(alias = "get_child_property_by_pspec")]
fn child_property_by_pspec(&self, pspec: impl AsRef<glib::ParamSpec>) -> glib::Value {
unsafe {
let mut value = glib::Value::uninitialized();
@ -296,10 +142,14 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
//#[doc(alias = "ges_track_element_get_child_property_valist")]
//#[doc(alias = "get_child_property_valist")]
//fn child_property_valist(&self, first_property_name: &str, var_args: /*Unknown conversion*//*Unimplemented*/Unsupported) {
// unsafe { TODO: call ffi:ges_track_element_get_child_property_valist() }
//}
#[doc(alias = "ges_track_element_get_control_binding")]
#[doc(alias = "get_control_binding")]
fn control_binding(&self, property_name: &str) -> Option<gst::ControlBinding> {
unsafe {
from_glib_none(ffi::ges_track_element_get_control_binding(
@ -309,6 +159,8 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
#[doc(alias = "ges_track_element_get_element")]
#[doc(alias = "get_element")]
fn element(&self) -> Option<gst::Element> {
unsafe {
from_glib_none(ffi::ges_track_element_get_element(
@ -317,6 +169,8 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
#[doc(alias = "ges_track_element_get_gnlobject")]
#[doc(alias = "get_gnlobject")]
fn gnlobject(&self) -> gst::Element {
unsafe {
from_glib_none(ffi::ges_track_element_get_gnlobject(
@ -325,6 +179,8 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
#[doc(alias = "ges_track_element_get_nleobject")]
#[doc(alias = "get_nleobject")]
fn nleobject(&self) -> gst::Element {
unsafe {
from_glib_none(ffi::ges_track_element_get_nleobject(
@ -333,6 +189,8 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
#[doc(alias = "ges_track_element_get_track")]
#[doc(alias = "get_track")]
fn track(&self) -> Option<Track> {
unsafe {
from_glib_none(ffi::ges_track_element_get_track(
@ -341,6 +199,8 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
#[doc(alias = "ges_track_element_get_track_type")]
#[doc(alias = "get_track_type")]
fn track_type(&self) -> TrackType {
unsafe {
from_glib(ffi::ges_track_element_get_track_type(
@ -351,6 +211,7 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_element_has_internal_source")]
fn has_internal_source(&self) -> bool {
unsafe {
from_glib(ffi::ges_track_element_has_internal_source(
@ -359,6 +220,7 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
#[doc(alias = "ges_track_element_is_active")]
fn is_active(&self) -> bool {
unsafe {
from_glib(ffi::ges_track_element_is_active(
@ -369,6 +231,7 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_element_is_core")]
fn is_core(&self) -> bool {
unsafe {
from_glib(ffi::ges_track_element_is_core(
@ -377,6 +240,7 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
#[doc(alias = "ges_track_element_list_children_properties")]
fn list_children_properties(&self) -> Vec<glib::ParamSpec> {
unsafe {
let mut n_properties = mem::MaybeUninit::uninit();
@ -391,6 +255,7 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
#[doc(alias = "ges_track_element_lookup_child")]
fn lookup_child(&self, prop_name: &str) -> Option<(gst::Element, glib::ParamSpec)> {
unsafe {
let mut element = ptr::null_mut();
@ -409,6 +274,7 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
#[doc(alias = "ges_track_element_remove_control_binding")]
fn remove_control_binding(&self, property_name: &str) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -421,6 +287,7 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
#[doc(alias = "ges_track_element_set_active")]
fn set_active(&self, active: bool) -> bool {
unsafe {
from_glib(ffi::ges_track_element_set_active(
@ -432,6 +299,7 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_element_set_auto_clamp_control_sources")]
fn set_auto_clamp_control_sources(&self, auto_clamp: bool) {
unsafe {
ffi::ges_track_element_set_auto_clamp_control_sources(
@ -441,10 +309,12 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
//#[doc(alias = "ges_track_element_set_child_properties")]
//fn set_child_properties(&self, first_property_name: &str, : /*Unknown conversion*//*Unimplemented*/Basic: VarArgs) {
// unsafe { TODO: call ffi:ges_track_element_set_child_properties() }
//}
#[doc(alias = "ges_track_element_set_child_property")]
fn set_child_property(
&self,
property_name: &str,
@ -462,6 +332,7 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
#[doc(alias = "ges_track_element_set_child_property_by_pspec")]
fn set_child_property_by_pspec(&self, pspec: impl AsRef<glib::ParamSpec>, value: &glib::Value) {
unsafe {
ffi::ges_track_element_set_child_property_by_pspec(
@ -472,10 +343,12 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
//#[doc(alias = "ges_track_element_set_child_property_valist")]
//fn set_child_property_valist(&self, first_property_name: &str, var_args: /*Unknown conversion*//*Unimplemented*/Unsupported) {
// unsafe { TODO: call ffi:ges_track_element_set_child_property_valist() }
//}
#[doc(alias = "ges_track_element_set_control_source")]
fn set_control_source(
&self,
source: &impl IsA<gst::ControlSource>,
@ -494,6 +367,7 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_element_set_has_internal_source")]
fn set_has_internal_source(&self, has_internal_source: bool) -> bool {
unsafe {
from_glib(ffi::ges_track_element_set_has_internal_source(
@ -503,6 +377,7 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
#[doc(alias = "ges_track_element_set_track_type")]
fn set_track_type(&self, type_: TrackType) {
unsafe {
ffi::ges_track_element_set_track_type(
@ -512,6 +387,7 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
#[doc(alias = "control-binding-added")]
fn connect_control_binding_added<F: Fn(&Self, &gst::ControlBinding) + 'static>(
&self,
f: F,
@ -543,6 +419,7 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
#[doc(alias = "control-binding-removed")]
fn connect_control_binding_removed<F: Fn(&Self, &gst::ControlBinding) + 'static>(
&self,
f: F,
@ -574,6 +451,7 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
#[doc(alias = "active")]
fn connect_active_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_active_trampoline<P: IsA<TrackElement>, F: Fn(&P) + 'static>(
this: *mut ffi::GESTrackElement,
@ -598,6 +476,7 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "auto-clamp-control-sources")]
fn connect_auto_clamp_control_sources_notify<F: Fn(&Self) + 'static>(
&self,
f: F,
@ -628,6 +507,7 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "has-internal-source")]
fn connect_has_internal_source_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_has_internal_source_trampoline<
P: IsA<TrackElement>,
@ -653,6 +533,7 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
#[doc(alias = "track")]
fn connect_track_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_track_trampoline<P: IsA<TrackElement>, F: Fn(&P) + 'static>(
this: *mut ffi::GESTrackElement,
@ -675,6 +556,7 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
#[doc(alias = "track-type")]
fn connect_track_type_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_track_type_trampoline<
P: IsA<TrackElement>,
@ -700,3 +582,5 @@ impl<O: IsA<TrackElement>> TrackElementExt for O {
}
}
}
impl<O: IsA<TrackElement>> TrackElementExt for O {}

View file

@ -30,30 +30,16 @@ impl TrackElementAsset {
unsafe impl Send for TrackElementAsset {}
unsafe impl Sync for TrackElementAsset {}
pub trait TrackElementAssetExt: 'static {
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::TrackElementAsset>> Sealed for T {}
}
pub trait TrackElementAssetExt: IsA<TrackElementAsset> + sealed::Sealed + 'static {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_element_asset_get_natural_framerate")]
#[doc(alias = "get_natural_framerate")]
fn natural_framerate(&self) -> Option<(i32, i32)>;
#[doc(alias = "ges_track_element_asset_get_track_type")]
#[doc(alias = "get_track_type")]
fn track_type(&self) -> TrackType;
#[doc(alias = "ges_track_element_asset_set_track_type")]
fn set_track_type(&self, type_: TrackType);
#[doc(alias = "track-type")]
fn connect_track_type_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
}
impl<O: IsA<TrackElementAsset>> TrackElementAssetExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
fn natural_framerate(&self) -> Option<(i32, i32)> {
unsafe {
let mut framerate_n = mem::MaybeUninit::uninit();
@ -71,6 +57,8 @@ impl<O: IsA<TrackElementAsset>> TrackElementAssetExt for O {
}
}
#[doc(alias = "ges_track_element_asset_get_track_type")]
#[doc(alias = "get_track_type")]
fn track_type(&self) -> TrackType {
unsafe {
from_glib(ffi::ges_track_element_asset_get_track_type(
@ -79,6 +67,7 @@ impl<O: IsA<TrackElementAsset>> TrackElementAssetExt for O {
}
}
#[doc(alias = "ges_track_element_asset_set_track_type")]
fn set_track_type(&self, type_: TrackType) {
unsafe {
ffi::ges_track_element_asset_set_track_type(
@ -88,6 +77,7 @@ impl<O: IsA<TrackElementAsset>> TrackElementAssetExt for O {
}
}
#[doc(alias = "track-type")]
fn connect_track_type_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -116,3 +106,5 @@ impl<O: IsA<TrackElementAsset>> TrackElementAssetExt for O {
}
}
}
impl<O: IsA<TrackElementAsset>> TrackElementAssetExt for O {}

View file

@ -40,16 +40,12 @@ impl TransitionClip {
}
}
pub trait TransitionClipExt: 'static {
fn vtype(&self) -> VideoStandardTransitionType;
fn set_vtype(&self, vtype: VideoStandardTransitionType);
#[doc(alias = "vtype")]
fn connect_vtype_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::TransitionClip>> Sealed for T {}
}
impl<O: IsA<TransitionClip>> TransitionClipExt for O {
pub trait TransitionClipExt: IsA<TransitionClip> + sealed::Sealed + 'static {
fn vtype(&self) -> VideoStandardTransitionType {
glib::ObjectExt::property(self.as_ref(), "vtype")
}
@ -58,6 +54,7 @@ impl<O: IsA<TransitionClip>> TransitionClipExt for O {
glib::ObjectExt::set_property(self.as_ref(), "vtype", vtype)
}
#[doc(alias = "vtype")]
fn connect_vtype_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_vtype_trampoline<
P: IsA<TransitionClip>,
@ -83,3 +80,5 @@ impl<O: IsA<TransitionClip>> TransitionClipExt for O {
}
}
}
impl<O: IsA<TransitionClip>> TransitionClipExt for O {}

View file

@ -33,55 +33,43 @@ impl UriClip {
}
}
pub trait UriClipExt: 'static {
#[doc(alias = "ges_uri_clip_get_uri")]
#[doc(alias = "get_uri")]
fn uri(&self) -> glib::GString;
#[doc(alias = "ges_uri_clip_is_image")]
fn is_image(&self) -> bool;
#[doc(alias = "ges_uri_clip_is_muted")]
fn is_muted(&self) -> bool;
#[doc(alias = "ges_uri_clip_set_is_image")]
fn set_is_image(&self, is_image: bool);
#[doc(alias = "ges_uri_clip_set_mute")]
fn set_mute(&self, mute: bool);
#[doc(alias = "is-image")]
fn connect_is_image_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "mute")]
fn connect_mute_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::UriClip>> Sealed for T {}
}
impl<O: IsA<UriClip>> UriClipExt for O {
pub trait UriClipExt: IsA<UriClip> + sealed::Sealed + 'static {
#[doc(alias = "ges_uri_clip_get_uri")]
#[doc(alias = "get_uri")]
fn uri(&self) -> glib::GString {
unsafe { from_glib_none(ffi::ges_uri_clip_get_uri(self.as_ref().to_glib_none().0)) }
}
#[doc(alias = "ges_uri_clip_is_image")]
fn is_image(&self) -> bool {
unsafe { from_glib(ffi::ges_uri_clip_is_image(self.as_ref().to_glib_none().0)) }
}
#[doc(alias = "ges_uri_clip_is_muted")]
fn is_muted(&self) -> bool {
unsafe { from_glib(ffi::ges_uri_clip_is_muted(self.as_ref().to_glib_none().0)) }
}
#[doc(alias = "ges_uri_clip_set_is_image")]
fn set_is_image(&self, is_image: bool) {
unsafe {
ffi::ges_uri_clip_set_is_image(self.as_ref().to_glib_none().0, is_image.into_glib());
}
}
#[doc(alias = "ges_uri_clip_set_mute")]
fn set_mute(&self, mute: bool) {
unsafe {
ffi::ges_uri_clip_set_mute(self.as_ref().to_glib_none().0, mute.into_glib());
}
}
#[doc(alias = "is-image")]
fn connect_is_image_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_is_image_trampoline<P: IsA<UriClip>, F: Fn(&P) + 'static>(
this: *mut ffi::GESUriClip,
@ -104,6 +92,7 @@ impl<O: IsA<UriClip>> UriClipExt for O {
}
}
#[doc(alias = "mute")]
fn connect_mute_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_mute_trampoline<P: IsA<UriClip>, F: Fn(&P) + 'static>(
this: *mut ffi::GESUriClip,
@ -126,3 +115,5 @@ impl<O: IsA<UriClip>> UriClipExt for O {
}
}
}
impl<O: IsA<UriClip>> UriClipExt for O {}

View file

@ -68,53 +68,14 @@ impl UriClipAsset {
unsafe impl Send for UriClipAsset {}
unsafe impl Sync for UriClipAsset {}
pub trait UriClipAssetExt: 'static {
#[doc(alias = "ges_uri_clip_asset_get_duration")]
#[doc(alias = "get_duration")]
fn duration(&self) -> Option<gst::ClockTime>;
#[doc(alias = "ges_uri_clip_asset_get_info")]
#[doc(alias = "get_info")]
fn info(&self) -> gst_pbutils::DiscovererInfo;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_uri_clip_asset_get_max_duration")]
#[doc(alias = "get_max_duration")]
fn max_duration(&self) -> Option<gst::ClockTime>;
#[doc(alias = "ges_uri_clip_asset_get_stream_assets")]
#[doc(alias = "get_stream_assets")]
fn stream_assets(&self) -> Vec<UriSourceAsset>;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_uri_clip_asset_is_image")]
fn is_image(&self) -> bool;
fn set_duration(&self, duration: u64);
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "is-nested-timeline")]
fn is_nested_timeline(&self) -> bool;
#[doc(alias = "duration")]
fn connect_duration_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "is-nested-timeline")]
fn connect_is_nested_timeline_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::UriClipAsset>> Sealed for T {}
}
impl<O: IsA<UriClipAsset>> UriClipAssetExt for O {
pub trait UriClipAssetExt: IsA<UriClipAsset> + sealed::Sealed + 'static {
#[doc(alias = "ges_uri_clip_asset_get_duration")]
#[doc(alias = "get_duration")]
fn duration(&self) -> Option<gst::ClockTime> {
unsafe {
from_glib(ffi::ges_uri_clip_asset_get_duration(
@ -123,6 +84,8 @@ impl<O: IsA<UriClipAsset>> UriClipAssetExt for O {
}
}
#[doc(alias = "ges_uri_clip_asset_get_info")]
#[doc(alias = "get_info")]
fn info(&self) -> gst_pbutils::DiscovererInfo {
unsafe {
from_glib_none(ffi::ges_uri_clip_asset_get_info(const_override(
@ -133,6 +96,8 @@ impl<O: IsA<UriClipAsset>> UriClipAssetExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_uri_clip_asset_get_max_duration")]
#[doc(alias = "get_max_duration")]
fn max_duration(&self) -> Option<gst::ClockTime> {
unsafe {
from_glib(ffi::ges_uri_clip_asset_get_max_duration(
@ -141,6 +106,8 @@ impl<O: IsA<UriClipAsset>> UriClipAssetExt for O {
}
}
#[doc(alias = "ges_uri_clip_asset_get_stream_assets")]
#[doc(alias = "get_stream_assets")]
fn stream_assets(&self) -> Vec<UriSourceAsset> {
unsafe {
FromGlibPtrContainer::from_glib_none(ffi::ges_uri_clip_asset_get_stream_assets(
@ -151,6 +118,7 @@ impl<O: IsA<UriClipAsset>> UriClipAssetExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_uri_clip_asset_is_image")]
fn is_image(&self) -> bool {
unsafe {
from_glib(ffi::ges_uri_clip_asset_is_image(
@ -165,10 +133,12 @@ impl<O: IsA<UriClipAsset>> UriClipAssetExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "is-nested-timeline")]
fn is_nested_timeline(&self) -> bool {
glib::ObjectExt::property(self.as_ref(), "is-nested-timeline")
}
#[doc(alias = "duration")]
fn connect_duration_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -199,6 +169,7 @@ impl<O: IsA<UriClipAsset>> UriClipAssetExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "is-nested-timeline")]
fn connect_is_nested_timeline_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -227,3 +198,5 @@ impl<O: IsA<UriClipAsset>> UriClipAssetExt for O {
}
}
}
impl<O: IsA<UriClipAsset>> UriClipAssetExt for O {}

View file

@ -22,26 +22,14 @@ impl UriSourceAsset {
unsafe impl Send for UriSourceAsset {}
unsafe impl Sync for UriSourceAsset {}
pub trait UriSourceAssetExt: 'static {
#[doc(alias = "ges_uri_source_asset_get_filesource_asset")]
#[doc(alias = "get_filesource_asset")]
fn filesource_asset(&self) -> UriClipAsset;
#[doc(alias = "ges_uri_source_asset_get_stream_info")]
#[doc(alias = "get_stream_info")]
fn stream_info(&self) -> gst_pbutils::DiscovererStreamInfo;
#[doc(alias = "ges_uri_source_asset_get_stream_uri")]
#[doc(alias = "get_stream_uri")]
fn stream_uri(&self) -> glib::GString;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_uri_source_asset_is_image")]
fn is_image(&self) -> bool;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::UriSourceAsset>> Sealed for T {}
}
impl<O: IsA<UriSourceAsset>> UriSourceAssetExt for O {
pub trait UriSourceAssetExt: IsA<UriSourceAsset> + sealed::Sealed + 'static {
#[doc(alias = "ges_uri_source_asset_get_filesource_asset")]
#[doc(alias = "get_filesource_asset")]
fn filesource_asset(&self) -> UriClipAsset {
unsafe {
from_glib_none(ffi::ges_uri_source_asset_get_filesource_asset(
@ -50,6 +38,8 @@ impl<O: IsA<UriSourceAsset>> UriSourceAssetExt for O {
}
}
#[doc(alias = "ges_uri_source_asset_get_stream_info")]
#[doc(alias = "get_stream_info")]
fn stream_info(&self) -> gst_pbutils::DiscovererStreamInfo {
unsafe {
from_glib_none(ffi::ges_uri_source_asset_get_stream_info(
@ -58,6 +48,8 @@ impl<O: IsA<UriSourceAsset>> UriSourceAssetExt for O {
}
}
#[doc(alias = "ges_uri_source_asset_get_stream_uri")]
#[doc(alias = "get_stream_uri")]
fn stream_uri(&self) -> glib::GString {
unsafe {
from_glib_none(ffi::ges_uri_source_asset_get_stream_uri(
@ -68,6 +60,7 @@ impl<O: IsA<UriSourceAsset>> UriSourceAssetExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_uri_source_asset_is_image")]
fn is_image(&self) -> bool {
unsafe {
from_glib(ffi::ges_uri_source_asset_is_image(
@ -76,3 +69,5 @@ impl<O: IsA<UriSourceAsset>> UriSourceAssetExt for O {
}
}
}
impl<O: IsA<UriSourceAsset>> UriSourceAssetExt for O {}

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -25,17 +25,16 @@ impl VideoSource {
pub const NONE: Option<&'static VideoSource> = None;
}
pub trait VideoSourceExt: 'static {
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::VideoSource>> Sealed for T {}
}
pub trait VideoSourceExt: IsA<VideoSource> + sealed::Sealed + 'static {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_video_source_get_natural_size")]
#[doc(alias = "get_natural_size")]
fn natural_size(&self) -> Option<(i32, i32)>;
}
impl<O: IsA<VideoSource>> VideoSourceExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
fn natural_size(&self) -> Option<(i32, i32)> {
unsafe {
let mut width = mem::MaybeUninit::uninit();
@ -53,3 +52,5 @@ impl<O: IsA<VideoSource>> VideoSourceExt for O {
}
}
}
impl<O: IsA<VideoSource>> VideoSourceExt for O {}

View file

@ -22,16 +22,14 @@ impl VideoTestSource {
pub const NONE: Option<&'static VideoTestSource> = None;
}
pub trait VideoTestSourceExt: 'static {
#[doc(alias = "ges_video_test_source_get_pattern")]
#[doc(alias = "get_pattern")]
fn pattern(&self) -> VideoTestPattern;
#[doc(alias = "ges_video_test_source_set_pattern")]
fn set_pattern(&self, pattern: VideoTestPattern);
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::VideoTestSource>> Sealed for T {}
}
impl<O: IsA<VideoTestSource>> VideoTestSourceExt for O {
pub trait VideoTestSourceExt: IsA<VideoTestSource> + sealed::Sealed + 'static {
#[doc(alias = "ges_video_test_source_get_pattern")]
#[doc(alias = "get_pattern")]
fn pattern(&self) -> VideoTestPattern {
unsafe {
from_glib(ffi::ges_video_test_source_get_pattern(
@ -40,6 +38,7 @@ impl<O: IsA<VideoTestSource>> VideoTestSourceExt for O {
}
}
#[doc(alias = "ges_video_test_source_set_pattern")]
fn set_pattern(&self, pattern: VideoTestPattern) {
unsafe {
ffi::ges_video_test_source_set_pattern(
@ -49,3 +48,5 @@ impl<O: IsA<VideoTestSource>> VideoTestSourceExt for O {
}
}
}
impl<O: IsA<VideoTestSource>> VideoTestSourceExt for O {}

View file

@ -40,58 +40,22 @@ impl Default for VideoTransition {
}
}
pub trait VideoTransitionExt: 'static {
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::VideoTransition>> Sealed for T {}
}
pub trait VideoTransitionExt: IsA<VideoTransition> + sealed::Sealed + 'static {
#[cfg_attr(feature = "v1_20", deprecated = "Since 1.20")]
#[allow(deprecated)]
#[doc(alias = "ges_video_transition_get_border")]
#[doc(alias = "get_border")]
fn border(&self) -> i32;
#[doc(alias = "ges_video_transition_get_transition_type")]
#[doc(alias = "get_transition_type")]
fn transition_type(&self) -> VideoStandardTransitionType;
#[cfg_attr(feature = "v1_20", deprecated = "Since 1.20")]
#[allow(deprecated)]
#[doc(alias = "ges_video_transition_is_inverted")]
fn is_inverted(&self) -> bool;
#[cfg_attr(feature = "v1_20", deprecated = "Since 1.20")]
#[allow(deprecated)]
#[doc(alias = "ges_video_transition_set_border")]
fn set_border(&self, value: u32);
#[cfg_attr(feature = "v1_20", deprecated = "Since 1.20")]
#[allow(deprecated)]
#[doc(alias = "ges_video_transition_set_inverted")]
fn set_inverted(&self, inverted: bool);
#[doc(alias = "ges_video_transition_set_transition_type")]
fn set_transition_type(&self, type_: VideoStandardTransitionType) -> bool;
#[cfg_attr(feature = "v1_20", deprecated = "Since 1.20")]
fn inverts(&self) -> bool;
#[cfg_attr(feature = "v1_20", deprecated = "Since 1.20")]
fn set_invert(&self, invert: bool);
#[doc(alias = "border")]
fn connect_border_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[cfg_attr(feature = "v1_20", deprecated = "Since 1.20")]
#[doc(alias = "invert")]
fn connect_invert_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
#[doc(alias = "transition-type")]
fn connect_transition_type_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;
}
impl<O: IsA<VideoTransition>> VideoTransitionExt for O {
#[allow(deprecated)]
fn border(&self) -> i32 {
unsafe { ffi::ges_video_transition_get_border(self.as_ref().to_glib_none().0) }
}
#[doc(alias = "ges_video_transition_get_transition_type")]
#[doc(alias = "get_transition_type")]
fn transition_type(&self) -> VideoStandardTransitionType {
unsafe {
from_glib(ffi::ges_video_transition_get_transition_type(
@ -100,7 +64,9 @@ impl<O: IsA<VideoTransition>> VideoTransitionExt for O {
}
}
#[cfg_attr(feature = "v1_20", deprecated = "Since 1.20")]
#[allow(deprecated)]
#[doc(alias = "ges_video_transition_is_inverted")]
fn is_inverted(&self) -> bool {
unsafe {
from_glib(ffi::ges_video_transition_is_inverted(
@ -109,14 +75,18 @@ impl<O: IsA<VideoTransition>> VideoTransitionExt for O {
}
}
#[cfg_attr(feature = "v1_20", deprecated = "Since 1.20")]
#[allow(deprecated)]
#[doc(alias = "ges_video_transition_set_border")]
fn set_border(&self, value: u32) {
unsafe {
ffi::ges_video_transition_set_border(self.as_ref().to_glib_none().0, value);
}
}
#[cfg_attr(feature = "v1_20", deprecated = "Since 1.20")]
#[allow(deprecated)]
#[doc(alias = "ges_video_transition_set_inverted")]
fn set_inverted(&self, inverted: bool) {
unsafe {
ffi::ges_video_transition_set_inverted(
@ -126,6 +96,7 @@ impl<O: IsA<VideoTransition>> VideoTransitionExt for O {
}
}
#[doc(alias = "ges_video_transition_set_transition_type")]
fn set_transition_type(&self, type_: VideoStandardTransitionType) -> bool {
unsafe {
from_glib(ffi::ges_video_transition_set_transition_type(
@ -135,14 +106,17 @@ impl<O: IsA<VideoTransition>> VideoTransitionExt for O {
}
}
#[cfg_attr(feature = "v1_20", deprecated = "Since 1.20")]
fn inverts(&self) -> bool {
glib::ObjectExt::property(self.as_ref(), "invert")
}
#[cfg_attr(feature = "v1_20", deprecated = "Since 1.20")]
fn set_invert(&self, invert: bool) {
glib::ObjectExt::set_property(self.as_ref(), "invert", invert)
}
#[doc(alias = "border")]
fn connect_border_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_border_trampoline<
P: IsA<VideoTransition>,
@ -168,6 +142,8 @@ impl<O: IsA<VideoTransition>> VideoTransitionExt for O {
}
}
#[cfg_attr(feature = "v1_20", deprecated = "Since 1.20")]
#[doc(alias = "invert")]
fn connect_invert_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_invert_trampoline<
P: IsA<VideoTransition>,
@ -193,6 +169,7 @@ impl<O: IsA<VideoTransition>> VideoTransitionExt for O {
}
}
#[doc(alias = "transition-type")]
fn connect_transition_type_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
unsafe extern "C" fn notify_transition_type_trampoline<
P: IsA<VideoTransition>,
@ -218,3 +195,5 @@ impl<O: IsA<VideoTransition>> VideoTransitionExt for O {
}
}
}
impl<O: IsA<VideoTransition>> VideoTransitionExt for O {}

View file

@ -19,12 +19,15 @@ impl VideoUriSource {
pub const NONE: Option<&'static VideoUriSource> = None;
}
pub trait VideoUriSourceExt: 'static {
fn uri(&self) -> Option<glib::GString>;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::VideoUriSource>> Sealed for T {}
}
impl<O: IsA<VideoUriSource>> VideoUriSourceExt for O {
pub trait VideoUriSourceExt: IsA<VideoUriSource> + sealed::Sealed + 'static {
fn uri(&self) -> Option<glib::GString> {
glib::ObjectExt::property(self.as_ref(), "uri")
}
}
impl<O: IsA<VideoUriSource>> VideoUriSourceExt for O {}

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -3,7 +3,7 @@
// from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git)
// DO NOT EDIT
#![cfg(target_os = "linux")]
#![cfg(unix)]
use gstreamer_editing_services_sys::*;
use std::env;

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -3,7 +3,7 @@
// from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git)
// DO NOT EDIT
#![cfg(target_os = "linux")]
#![cfg(unix)]
use gstreamer_gl_egl_sys::*;
use std::env;

View file

@ -27,28 +27,15 @@ impl GLBaseFilter {
unsafe impl Send for GLBaseFilter {}
unsafe impl Sync for GLBaseFilter {}
pub trait GLBaseFilterExt: 'static {
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::GLBaseFilter>> Sealed for T {}
}
pub trait GLBaseFilterExt: IsA<GLBaseFilter> + sealed::Sealed + 'static {
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "gst_gl_base_filter_find_gl_context")]
fn find_gl_context(&self) -> bool;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_gl_base_filter_get_gl_context")]
#[doc(alias = "get_gl_context")]
fn gl_context(&self) -> Option<GLContext>;
fn context(&self) -> Option<GLContext>;
#[doc(alias = "context")]
fn connect_context_notify<F: Fn(&Self) + Send + Sync + 'static>(&self, f: F)
-> SignalHandlerId;
}
impl<O: IsA<GLBaseFilter>> GLBaseFilterExt for O {
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
fn find_gl_context(&self) -> bool {
unsafe {
from_glib(ffi::gst_gl_base_filter_find_gl_context(
@ -59,6 +46,8 @@ impl<O: IsA<GLBaseFilter>> GLBaseFilterExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_gl_base_filter_get_gl_context")]
#[doc(alias = "get_gl_context")]
fn gl_context(&self) -> Option<GLContext> {
unsafe {
from_glib_full(ffi::gst_gl_base_filter_get_gl_context(
@ -71,6 +60,7 @@ impl<O: IsA<GLBaseFilter>> GLBaseFilterExt for O {
glib::ObjectExt::property(self.as_ref(), "context")
}
#[doc(alias = "context")]
fn connect_context_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -99,3 +89,5 @@ impl<O: IsA<GLBaseFilter>> GLBaseFilterExt for O {
}
}
}
impl<O: IsA<GLBaseFilter>> GLBaseFilterExt for O {}

View file

@ -26,29 +26,23 @@ impl GLBaseSrc {
unsafe impl Send for GLBaseSrc {}
unsafe impl Sync for GLBaseSrc {}
pub trait GLBaseSrcExt: 'static {
#[doc(alias = "timestamp-offset")]
fn timestamp_offset(&self) -> i64;
#[doc(alias = "timestamp-offset")]
fn set_timestamp_offset(&self, timestamp_offset: i64);
#[doc(alias = "timestamp-offset")]
fn connect_timestamp_offset_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::GLBaseSrc>> Sealed for T {}
}
impl<O: IsA<GLBaseSrc>> GLBaseSrcExt for O {
pub trait GLBaseSrcExt: IsA<GLBaseSrc> + sealed::Sealed + 'static {
#[doc(alias = "timestamp-offset")]
fn timestamp_offset(&self) -> i64 {
glib::ObjectExt::property(self.as_ref(), "timestamp-offset")
}
#[doc(alias = "timestamp-offset")]
fn set_timestamp_offset(&self, timestamp_offset: i64) {
glib::ObjectExt::set_property(self.as_ref(), "timestamp-offset", timestamp_offset)
}
#[doc(alias = "timestamp-offset")]
fn connect_timestamp_offset_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -77,3 +71,5 @@ impl<O: IsA<GLBaseSrc>> GLBaseSrcExt for O {
}
}
}
impl<O: IsA<GLBaseSrc>> GLBaseSrcExt for O {}

View file

@ -36,17 +36,16 @@ impl GLBufferPool {
unsafe impl Send for GLBufferPool {}
unsafe impl Sync for GLBufferPool {}
pub trait GLBufferPoolExt: 'static {
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::GLBufferPool>> Sealed for T {}
}
pub trait GLBufferPoolExt: IsA<GLBufferPool> + sealed::Sealed + 'static {
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
#[doc(alias = "gst_gl_buffer_pool_get_gl_allocation_params")]
#[doc(alias = "get_gl_allocation_params")]
fn gl_allocation_params(&self) -> Option<GLAllocationParams>;
}
impl<O: IsA<GLBufferPool>> GLBufferPoolExt for O {
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
fn gl_allocation_params(&self) -> Option<GLAllocationParams> {
unsafe {
from_glib_full(ffi::gst_gl_buffer_pool_get_gl_allocation_params(
@ -55,3 +54,5 @@ impl<O: IsA<GLBufferPool>> GLBufferPoolExt for O {
}
}
}
impl<O: IsA<GLBufferPool>> GLBufferPoolExt for O {}

View file

@ -52,99 +52,13 @@ impl GLContext {
unsafe impl Send for GLContext {}
unsafe impl Sync for GLContext {}
pub trait GLContextExt: 'static {
#[doc(alias = "gst_gl_context_activate")]
fn activate(&self, activate: bool) -> Result<(), glib::error::BoolError>;
#[doc(alias = "gst_gl_context_can_share")]
fn can_share(&self, other_context: &impl IsA<GLContext>) -> bool;
#[doc(alias = "gst_gl_context_check_feature")]
fn check_feature(&self, feature: &str) -> bool;
#[doc(alias = "gst_gl_context_check_framebuffer_status")]
fn check_framebuffer_status(&self, fbo_target: u32) -> bool;
#[doc(alias = "gst_gl_context_check_gl_version")]
fn check_gl_version(&self, api: GLAPI, maj: i32, min: i32) -> bool;
#[doc(alias = "gst_gl_context_clear_framebuffer")]
fn clear_framebuffer(&self);
#[doc(alias = "gst_gl_context_clear_shader")]
fn clear_shader(&self);
#[doc(alias = "gst_gl_context_create")]
fn create(&self, other_context: Option<&impl IsA<GLContext>>) -> Result<(), glib::Error>;
#[doc(alias = "gst_gl_context_destroy")]
fn destroy(&self);
#[doc(alias = "gst_gl_context_fill_info")]
fn fill_info(&self) -> Result<(), glib::Error>;
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
#[doc(alias = "gst_gl_context_get_config")]
#[doc(alias = "get_config")]
fn config(&self) -> Option<gst::Structure>;
#[doc(alias = "gst_gl_context_get_display")]
#[doc(alias = "get_display")]
fn display(&self) -> GLDisplay;
#[doc(alias = "gst_gl_context_get_gl_api")]
#[doc(alias = "get_gl_api")]
fn gl_api(&self) -> GLAPI;
#[doc(alias = "gst_gl_context_get_gl_platform")]
#[doc(alias = "get_gl_platform")]
fn gl_platform(&self) -> GLPlatform;
#[doc(alias = "gst_gl_context_get_gl_platform_version")]
#[doc(alias = "get_gl_platform_version")]
fn gl_platform_version(&self) -> (i32, i32);
#[doc(alias = "gst_gl_context_get_gl_version")]
#[doc(alias = "get_gl_version")]
fn gl_version(&self) -> (i32, i32);
#[doc(alias = "gst_gl_context_get_window")]
#[doc(alias = "get_window")]
fn window(&self) -> Option<GLWindow>;
#[doc(alias = "gst_gl_context_is_shared")]
fn is_shared(&self) -> bool;
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
#[doc(alias = "gst_gl_context_request_config")]
fn request_config(&self, gl_config: Option<gst::Structure>) -> bool;
#[doc(alias = "gst_gl_context_set_shared_with")]
fn set_shared_with(&self, share: &impl IsA<GLContext>);
#[doc(alias = "gst_gl_context_set_window")]
fn set_window(&self, window: impl IsA<GLWindow>) -> Result<(), glib::error::BoolError>;
#[doc(alias = "gst_gl_context_supports_glsl_profile_version")]
fn supports_glsl_profile_version(&self, version: GLSLVersion, profile: GLSLProfile) -> bool;
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "gst_gl_context_supports_precision")]
fn supports_precision(&self, version: GLSLVersion, profile: GLSLProfile) -> bool;
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "gst_gl_context_supports_precision_highp")]
fn supports_precision_highp(&self, version: GLSLVersion, profile: GLSLProfile) -> bool;
#[doc(alias = "gst_gl_context_swap_buffers")]
fn swap_buffers(&self);
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::GLContext>> Sealed for T {}
}
impl<O: IsA<GLContext>> GLContextExt for O {
pub trait GLContextExt: IsA<GLContext> + sealed::Sealed + 'static {
#[doc(alias = "gst_gl_context_activate")]
fn activate(&self, activate: bool) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -154,6 +68,7 @@ impl<O: IsA<GLContext>> GLContextExt for O {
}
}
#[doc(alias = "gst_gl_context_can_share")]
fn can_share(&self, other_context: &impl IsA<GLContext>) -> bool {
unsafe {
from_glib(ffi::gst_gl_context_can_share(
@ -163,6 +78,7 @@ impl<O: IsA<GLContext>> GLContextExt for O {
}
}
#[doc(alias = "gst_gl_context_check_feature")]
fn check_feature(&self, feature: &str) -> bool {
unsafe {
from_glib(ffi::gst_gl_context_check_feature(
@ -172,6 +88,7 @@ impl<O: IsA<GLContext>> GLContextExt for O {
}
}
#[doc(alias = "gst_gl_context_check_framebuffer_status")]
fn check_framebuffer_status(&self, fbo_target: u32) -> bool {
unsafe {
from_glib(ffi::gst_gl_context_check_framebuffer_status(
@ -181,6 +98,7 @@ impl<O: IsA<GLContext>> GLContextExt for O {
}
}
#[doc(alias = "gst_gl_context_check_gl_version")]
fn check_gl_version(&self, api: GLAPI, maj: i32, min: i32) -> bool {
unsafe {
from_glib(ffi::gst_gl_context_check_gl_version(
@ -192,18 +110,21 @@ impl<O: IsA<GLContext>> GLContextExt for O {
}
}
#[doc(alias = "gst_gl_context_clear_framebuffer")]
fn clear_framebuffer(&self) {
unsafe {
ffi::gst_gl_context_clear_framebuffer(self.as_ref().to_glib_none().0);
}
}
#[doc(alias = "gst_gl_context_clear_shader")]
fn clear_shader(&self) {
unsafe {
ffi::gst_gl_context_clear_shader(self.as_ref().to_glib_none().0);
}
}
#[doc(alias = "gst_gl_context_create")]
fn create(&self, other_context: Option<&impl IsA<GLContext>>) -> Result<(), glib::Error> {
unsafe {
let mut error = ptr::null_mut();
@ -221,12 +142,14 @@ impl<O: IsA<GLContext>> GLContextExt for O {
}
}
#[doc(alias = "gst_gl_context_destroy")]
fn destroy(&self) {
unsafe {
ffi::gst_gl_context_destroy(self.as_ref().to_glib_none().0);
}
}
#[doc(alias = "gst_gl_context_fill_info")]
fn fill_info(&self) -> Result<(), glib::Error> {
unsafe {
let mut error = ptr::null_mut();
@ -242,6 +165,8 @@ impl<O: IsA<GLContext>> GLContextExt for O {
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
#[doc(alias = "gst_gl_context_get_config")]
#[doc(alias = "get_config")]
fn config(&self) -> Option<gst::Structure> {
unsafe {
from_glib_full(ffi::gst_gl_context_get_config(
@ -250,6 +175,8 @@ impl<O: IsA<GLContext>> GLContextExt for O {
}
}
#[doc(alias = "gst_gl_context_get_display")]
#[doc(alias = "get_display")]
fn display(&self) -> GLDisplay {
unsafe {
from_glib_full(ffi::gst_gl_context_get_display(
@ -258,6 +185,8 @@ impl<O: IsA<GLContext>> GLContextExt for O {
}
}
#[doc(alias = "gst_gl_context_get_gl_api")]
#[doc(alias = "get_gl_api")]
fn gl_api(&self) -> GLAPI {
unsafe {
from_glib(ffi::gst_gl_context_get_gl_api(
@ -266,6 +195,8 @@ impl<O: IsA<GLContext>> GLContextExt for O {
}
}
#[doc(alias = "gst_gl_context_get_gl_platform")]
#[doc(alias = "get_gl_platform")]
fn gl_platform(&self) -> GLPlatform {
unsafe {
from_glib(ffi::gst_gl_context_get_gl_platform(
@ -274,6 +205,8 @@ impl<O: IsA<GLContext>> GLContextExt for O {
}
}
#[doc(alias = "gst_gl_context_get_gl_platform_version")]
#[doc(alias = "get_gl_platform_version")]
fn gl_platform_version(&self) -> (i32, i32) {
unsafe {
let mut major = mem::MaybeUninit::uninit();
@ -287,6 +220,8 @@ impl<O: IsA<GLContext>> GLContextExt for O {
}
}
#[doc(alias = "gst_gl_context_get_gl_version")]
#[doc(alias = "get_gl_version")]
fn gl_version(&self) -> (i32, i32) {
unsafe {
let mut maj = mem::MaybeUninit::uninit();
@ -300,6 +235,8 @@ impl<O: IsA<GLContext>> GLContextExt for O {
}
}
#[doc(alias = "gst_gl_context_get_window")]
#[doc(alias = "get_window")]
fn window(&self) -> Option<GLWindow> {
unsafe {
from_glib_full(ffi::gst_gl_context_get_window(
@ -308,6 +245,7 @@ impl<O: IsA<GLContext>> GLContextExt for O {
}
}
#[doc(alias = "gst_gl_context_is_shared")]
fn is_shared(&self) -> bool {
unsafe {
from_glib(ffi::gst_gl_context_is_shared(
@ -318,6 +256,7 @@ impl<O: IsA<GLContext>> GLContextExt for O {
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
#[doc(alias = "gst_gl_context_request_config")]
fn request_config(&self, gl_config: Option<gst::Structure>) -> bool {
unsafe {
from_glib(ffi::gst_gl_context_request_config(
@ -327,6 +266,7 @@ impl<O: IsA<GLContext>> GLContextExt for O {
}
}
#[doc(alias = "gst_gl_context_set_shared_with")]
fn set_shared_with(&self, share: &impl IsA<GLContext>) {
unsafe {
ffi::gst_gl_context_set_shared_with(
@ -336,6 +276,7 @@ impl<O: IsA<GLContext>> GLContextExt for O {
}
}
#[doc(alias = "gst_gl_context_set_window")]
fn set_window(&self, window: impl IsA<GLWindow>) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -348,6 +289,7 @@ impl<O: IsA<GLContext>> GLContextExt for O {
}
}
#[doc(alias = "gst_gl_context_supports_glsl_profile_version")]
fn supports_glsl_profile_version(&self, version: GLSLVersion, profile: GLSLProfile) -> bool {
unsafe {
from_glib(ffi::gst_gl_context_supports_glsl_profile_version(
@ -360,6 +302,7 @@ impl<O: IsA<GLContext>> GLContextExt for O {
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "gst_gl_context_supports_precision")]
fn supports_precision(&self, version: GLSLVersion, profile: GLSLProfile) -> bool {
unsafe {
from_glib(ffi::gst_gl_context_supports_precision(
@ -372,6 +315,7 @@ impl<O: IsA<GLContext>> GLContextExt for O {
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "gst_gl_context_supports_precision_highp")]
fn supports_precision_highp(&self, version: GLSLVersion, profile: GLSLProfile) -> bool {
unsafe {
from_glib(ffi::gst_gl_context_supports_precision_highp(
@ -382,9 +326,12 @@ impl<O: IsA<GLContext>> GLContextExt for O {
}
}
#[doc(alias = "gst_gl_context_swap_buffers")]
fn swap_buffers(&self) {
unsafe {
ffi::gst_gl_context_swap_buffers(self.as_ref().to_glib_none().0);
}
}
}
impl<O: IsA<GLContext>> GLContextExt for O {}

View file

@ -48,43 +48,13 @@ impl Default for GLDisplay {
unsafe impl Send for GLDisplay {}
unsafe impl Sync for GLDisplay {}
pub trait GLDisplayExt: 'static {
#[doc(alias = "gst_gl_display_create_window")]
fn create_window(&self) -> Result<GLWindow, glib::BoolError>;
#[doc(alias = "gst_gl_display_filter_gl_api")]
fn filter_gl_api(&self, gl_api: GLAPI);
#[doc(alias = "gst_gl_display_get_gl_api")]
#[doc(alias = "get_gl_api")]
fn gl_api(&self) -> GLAPI;
#[doc(alias = "gst_gl_display_get_gl_api_unlocked")]
#[doc(alias = "get_gl_api_unlocked")]
fn gl_api_unlocked(&self) -> GLAPI;
#[doc(alias = "gst_gl_display_get_handle_type")]
#[doc(alias = "get_handle_type")]
fn handle_type(&self) -> GLDisplayType;
#[doc(alias = "gst_gl_display_remove_window")]
fn remove_window(&self, window: &impl IsA<GLWindow>) -> Result<(), glib::error::BoolError>;
//#[cfg(feature = "v1_18")]
//#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
//#[doc(alias = "gst_gl_display_retrieve_window")]
//fn retrieve_window(&self, data: /*Unimplemented*/Option<Basic: Pointer>, compare_func: /*Unimplemented*/FnMut(/*Unimplemented*/Option<Basic: Pointer>) -> i32) -> Option<GLWindow>;
#[doc(alias = "create-context")]
fn connect_create_context<
F: Fn(&Self, &GLContext) -> Option<GLContext> + Send + Sync + 'static,
>(
&self,
f: F,
) -> SignalHandlerId;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::GLDisplay>> Sealed for T {}
}
impl<O: IsA<GLDisplay>> GLDisplayExt for O {
pub trait GLDisplayExt: IsA<GLDisplay> + sealed::Sealed + 'static {
#[doc(alias = "gst_gl_display_create_window")]
fn create_window(&self) -> Result<GLWindow, glib::BoolError> {
unsafe {
Option::<_>::from_glib_full(ffi::gst_gl_display_create_window(
@ -94,12 +64,15 @@ impl<O: IsA<GLDisplay>> GLDisplayExt for O {
}
}
#[doc(alias = "gst_gl_display_filter_gl_api")]
fn filter_gl_api(&self, gl_api: GLAPI) {
unsafe {
ffi::gst_gl_display_filter_gl_api(self.as_ref().to_glib_none().0, gl_api.into_glib());
}
}
#[doc(alias = "gst_gl_display_get_gl_api")]
#[doc(alias = "get_gl_api")]
fn gl_api(&self) -> GLAPI {
unsafe {
from_glib(ffi::gst_gl_display_get_gl_api(
@ -108,6 +81,8 @@ impl<O: IsA<GLDisplay>> GLDisplayExt for O {
}
}
#[doc(alias = "gst_gl_display_get_gl_api_unlocked")]
#[doc(alias = "get_gl_api_unlocked")]
fn gl_api_unlocked(&self) -> GLAPI {
unsafe {
from_glib(ffi::gst_gl_display_get_gl_api_unlocked(
@ -116,6 +91,8 @@ impl<O: IsA<GLDisplay>> GLDisplayExt for O {
}
}
#[doc(alias = "gst_gl_display_get_handle_type")]
#[doc(alias = "get_handle_type")]
fn handle_type(&self) -> GLDisplayType {
unsafe {
from_glib(ffi::gst_gl_display_get_handle_type(
@ -124,6 +101,7 @@ impl<O: IsA<GLDisplay>> GLDisplayExt for O {
}
}
#[doc(alias = "gst_gl_display_remove_window")]
fn remove_window(&self, window: &impl IsA<GLWindow>) -> Result<(), glib::error::BoolError> {
unsafe {
glib::result_from_gboolean!(
@ -138,10 +116,12 @@ impl<O: IsA<GLDisplay>> GLDisplayExt for O {
//#[cfg(feature = "v1_18")]
//#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
//#[doc(alias = "gst_gl_display_retrieve_window")]
//fn retrieve_window(&self, data: /*Unimplemented*/Option<Basic: Pointer>, compare_func: /*Unimplemented*/FnMut(/*Unimplemented*/Option<Basic: Pointer>) -> i32) -> Option<GLWindow> {
// unsafe { TODO: call ffi:gst_gl_display_retrieve_window() }
//}
#[doc(alias = "create-context")]
fn connect_create_context<
F: Fn(&Self, &GLContext) -> Option<GLContext> + Send + Sync + 'static,
>(
@ -176,3 +156,5 @@ impl<O: IsA<GLDisplay>> GLDisplayExt for O {
}
}
}
impl<O: IsA<GLDisplay>> GLDisplayExt for O {}

View file

@ -22,36 +22,20 @@ impl GLFilter {
unsafe impl Send for GLFilter {}
unsafe impl Sync for GLFilter {}
pub trait GLFilterExt: 'static {
#[doc(alias = "gst_gl_filter_draw_fullscreen_quad")]
fn draw_fullscreen_quad(&self);
#[doc(alias = "gst_gl_filter_filter_texture")]
fn filter_texture(
&self,
input: &gst::Buffer,
output: &gst::Buffer,
) -> Result<(), glib::error::BoolError>;
#[doc(alias = "gst_gl_filter_render_to_target")]
fn render_to_target<P: FnMut(&GLFilter, &GLMemory) -> bool>(
&self,
input: &GLMemory,
output: &GLMemory,
func: P,
) -> Result<(), glib::error::BoolError>;
#[doc(alias = "gst_gl_filter_render_to_target_with_shader")]
fn render_to_target_with_shader(&self, input: &GLMemory, output: &GLMemory, shader: &GLShader);
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::GLFilter>> Sealed for T {}
}
impl<O: IsA<GLFilter>> GLFilterExt for O {
pub trait GLFilterExt: IsA<GLFilter> + sealed::Sealed + 'static {
#[doc(alias = "gst_gl_filter_draw_fullscreen_quad")]
fn draw_fullscreen_quad(&self) {
unsafe {
ffi::gst_gl_filter_draw_fullscreen_quad(self.as_ref().to_glib_none().0);
}
}
#[doc(alias = "gst_gl_filter_filter_texture")]
fn filter_texture(
&self,
input: &gst::Buffer,
@ -69,6 +53,7 @@ impl<O: IsA<GLFilter>> GLFilterExt for O {
}
}
#[doc(alias = "gst_gl_filter_render_to_target")]
fn render_to_target<P: FnMut(&GLFilter, &GLMemory) -> bool>(
&self,
input: &GLMemory,
@ -102,6 +87,7 @@ impl<O: IsA<GLFilter>> GLFilterExt for O {
}
}
#[doc(alias = "gst_gl_filter_render_to_target_with_shader")]
fn render_to_target_with_shader(&self, input: &GLMemory, output: &GLMemory, shader: &GLShader) {
unsafe {
ffi::gst_gl_filter_render_to_target_with_shader(
@ -113,3 +99,5 @@ impl<O: IsA<GLFilter>> GLFilterExt for O {
}
}
}
impl<O: IsA<GLFilter>> GLFilterExt for O {}

View file

@ -50,23 +50,13 @@ impl GLFramebuffer {
unsafe impl Send for GLFramebuffer {}
unsafe impl Sync for GLFramebuffer {}
pub trait GLFramebufferExt: 'static {
#[doc(alias = "gst_gl_framebuffer_attach")]
unsafe fn attach(&self, attachment_point: u32, mem: &mut GLBaseMemory);
#[doc(alias = "gst_gl_framebuffer_bind")]
fn bind(&self);
#[doc(alias = "gst_gl_framebuffer_get_effective_dimensions")]
#[doc(alias = "get_effective_dimensions")]
fn effective_dimensions(&self) -> (u32, u32);
#[doc(alias = "gst_gl_framebuffer_get_id")]
#[doc(alias = "get_id")]
fn id(&self) -> u32;
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::GLFramebuffer>> Sealed for T {}
}
impl<O: IsA<GLFramebuffer>> GLFramebufferExt for O {
pub trait GLFramebufferExt: IsA<GLFramebuffer> + sealed::Sealed + 'static {
#[doc(alias = "gst_gl_framebuffer_attach")]
unsafe fn attach(&self, attachment_point: u32, mem: &mut GLBaseMemory) {
ffi::gst_gl_framebuffer_attach(
self.as_ref().to_glib_none().0,
@ -75,12 +65,15 @@ impl<O: IsA<GLFramebuffer>> GLFramebufferExt for O {
);
}
#[doc(alias = "gst_gl_framebuffer_bind")]
fn bind(&self) {
unsafe {
ffi::gst_gl_framebuffer_bind(self.as_ref().to_glib_none().0);
}
}
#[doc(alias = "gst_gl_framebuffer_get_effective_dimensions")]
#[doc(alias = "get_effective_dimensions")]
fn effective_dimensions(&self) -> (u32, u32) {
unsafe {
let mut width = mem::MaybeUninit::uninit();
@ -94,7 +87,11 @@ impl<O: IsA<GLFramebuffer>> GLFramebufferExt for O {
}
}
#[doc(alias = "gst_gl_framebuffer_get_id")]
#[doc(alias = "get_id")]
fn id(&self) -> u32 {
unsafe { ffi::gst_gl_framebuffer_get_id(self.as_ref().to_glib_none().0) }
}
}
impl<O: IsA<GLFramebuffer>> GLFramebufferExt for O {}

View file

@ -33,101 +33,15 @@ impl GLWindow {
unsafe impl Send for GLWindow {}
unsafe impl Sync for GLWindow {}
pub trait GLWindowExt: 'static {
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::GLWindow>> Sealed for T {}
}
pub trait GLWindowExt: IsA<GLWindow> + sealed::Sealed + 'static {
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
#[doc(alias = "gst_gl_window_controls_viewport")]
fn controls_viewport(&self) -> bool;
#[doc(alias = "gst_gl_window_draw")]
fn draw(&self);
#[doc(alias = "gst_gl_window_get_context")]
#[doc(alias = "get_context")]
fn context(&self) -> GLContext;
#[doc(alias = "gst_gl_window_get_surface_dimensions")]
#[doc(alias = "get_surface_dimensions")]
fn surface_dimensions(&self) -> (u32, u32);
#[doc(alias = "gst_gl_window_handle_events")]
fn handle_events(&self, handle_events: bool);
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_gl_window_has_output_surface")]
fn has_output_surface(&self) -> bool;
#[doc(alias = "gst_gl_window_queue_resize")]
fn queue_resize(&self);
#[doc(alias = "gst_gl_window_quit")]
fn quit(&self);
#[doc(alias = "gst_gl_window_resize")]
fn resize(&self, width: u32, height: u32);
#[doc(alias = "gst_gl_window_run")]
fn run(&self);
#[doc(alias = "gst_gl_window_send_key_event")]
fn send_key_event(&self, event_type: &str, key_str: &str);
#[doc(alias = "gst_gl_window_send_mouse_event")]
fn send_mouse_event(&self, event_type: &str, button: i32, posx: f64, posy: f64);
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_gl_window_send_scroll_event")]
fn send_scroll_event(&self, posx: f64, posy: f64, delta_x: f64, delta_y: f64);
#[doc(alias = "gst_gl_window_set_preferred_size")]
fn set_preferred_size(&self, width: i32, height: i32);
#[doc(alias = "gst_gl_window_set_render_rectangle")]
fn set_render_rectangle(
&self,
x: i32,
y: i32,
width: i32,
height: i32,
) -> Result<(), glib::error::BoolError>;
#[doc(alias = "gst_gl_window_show")]
fn show(&self);
#[doc(alias = "key-event")]
fn connect_key_event<F: Fn(&Self, &str, &str) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[doc(alias = "mouse-event")]
fn connect_mouse_event<F: Fn(&Self, &str, i32, f64, f64) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "scroll-event")]
fn connect_scroll_event<F: Fn(&Self, f64, f64, f64, f64) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
#[doc(alias = "window-handle-changed")]
fn connect_window_handle_changed<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
) -> SignalHandlerId;
}
impl<O: IsA<GLWindow>> GLWindowExt for O {
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
fn controls_viewport(&self) -> bool {
unsafe {
from_glib(ffi::gst_gl_window_controls_viewport(
@ -136,12 +50,15 @@ impl<O: IsA<GLWindow>> GLWindowExt for O {
}
}
#[doc(alias = "gst_gl_window_draw")]
fn draw(&self) {
unsafe {
ffi::gst_gl_window_draw(self.as_ref().to_glib_none().0);
}
}
#[doc(alias = "gst_gl_window_get_context")]
#[doc(alias = "get_context")]
fn context(&self) -> GLContext {
unsafe {
from_glib_full(ffi::gst_gl_window_get_context(
@ -150,6 +67,8 @@ impl<O: IsA<GLWindow>> GLWindowExt for O {
}
}
#[doc(alias = "gst_gl_window_get_surface_dimensions")]
#[doc(alias = "get_surface_dimensions")]
fn surface_dimensions(&self) -> (u32, u32) {
unsafe {
let mut width = mem::MaybeUninit::uninit();
@ -163,6 +82,7 @@ impl<O: IsA<GLWindow>> GLWindowExt for O {
}
}
#[doc(alias = "gst_gl_window_handle_events")]
fn handle_events(&self, handle_events: bool) {
unsafe {
ffi::gst_gl_window_handle_events(
@ -174,6 +94,7 @@ impl<O: IsA<GLWindow>> GLWindowExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_gl_window_has_output_surface")]
fn has_output_surface(&self) -> bool {
unsafe {
from_glib(ffi::gst_gl_window_has_output_surface(
@ -182,30 +103,35 @@ impl<O: IsA<GLWindow>> GLWindowExt for O {
}
}
#[doc(alias = "gst_gl_window_queue_resize")]
fn queue_resize(&self) {
unsafe {
ffi::gst_gl_window_queue_resize(self.as_ref().to_glib_none().0);
}
}
#[doc(alias = "gst_gl_window_quit")]
fn quit(&self) {
unsafe {
ffi::gst_gl_window_quit(self.as_ref().to_glib_none().0);
}
}
#[doc(alias = "gst_gl_window_resize")]
fn resize(&self, width: u32, height: u32) {
unsafe {
ffi::gst_gl_window_resize(self.as_ref().to_glib_none().0, width, height);
}
}
#[doc(alias = "gst_gl_window_run")]
fn run(&self) {
unsafe {
ffi::gst_gl_window_run(self.as_ref().to_glib_none().0);
}
}
#[doc(alias = "gst_gl_window_send_key_event")]
fn send_key_event(&self, event_type: &str, key_str: &str) {
unsafe {
ffi::gst_gl_window_send_key_event(
@ -216,6 +142,7 @@ impl<O: IsA<GLWindow>> GLWindowExt for O {
}
}
#[doc(alias = "gst_gl_window_send_mouse_event")]
fn send_mouse_event(&self, event_type: &str, button: i32, posx: f64, posy: f64) {
unsafe {
ffi::gst_gl_window_send_mouse_event(
@ -230,6 +157,7 @@ impl<O: IsA<GLWindow>> GLWindowExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_gl_window_send_scroll_event")]
fn send_scroll_event(&self, posx: f64, posy: f64, delta_x: f64, delta_y: f64) {
unsafe {
ffi::gst_gl_window_send_scroll_event(
@ -242,12 +170,14 @@ impl<O: IsA<GLWindow>> GLWindowExt for O {
}
}
#[doc(alias = "gst_gl_window_set_preferred_size")]
fn set_preferred_size(&self, width: i32, height: i32) {
unsafe {
ffi::gst_gl_window_set_preferred_size(self.as_ref().to_glib_none().0, width, height);
}
}
#[doc(alias = "gst_gl_window_set_render_rectangle")]
fn set_render_rectangle(
&self,
x: i32,
@ -269,12 +199,14 @@ impl<O: IsA<GLWindow>> GLWindowExt for O {
}
}
#[doc(alias = "gst_gl_window_show")]
fn show(&self) {
unsafe {
ffi::gst_gl_window_show(self.as_ref().to_glib_none().0);
}
}
#[doc(alias = "key-event")]
fn connect_key_event<F: Fn(&Self, &str, &str) + Send + Sync + 'static>(
&self,
f: F,
@ -308,6 +240,7 @@ impl<O: IsA<GLWindow>> GLWindowExt for O {
}
}
#[doc(alias = "mouse-event")]
fn connect_mouse_event<F: Fn(&Self, &str, i32, f64, f64) + Send + Sync + 'static>(
&self,
f: F,
@ -347,6 +280,7 @@ impl<O: IsA<GLWindow>> GLWindowExt for O {
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
#[doc(alias = "scroll-event")]
fn connect_scroll_event<F: Fn(&Self, f64, f64, f64, f64) + Send + Sync + 'static>(
&self,
f: F,
@ -386,6 +320,7 @@ impl<O: IsA<GLWindow>> GLWindowExt for O {
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
#[doc(alias = "window-handle-changed")]
fn connect_window_handle_changed<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F,
@ -413,3 +348,5 @@ impl<O: IsA<GLWindow>> GLWindowExt for O {
}
}
}
impl<O: IsA<GLWindow>> GLWindowExt for O {}

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -3,7 +3,7 @@
// from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git)
// DO NOT EDIT
#![cfg(target_os = "linux")]
#![cfg(unix)]
use gstreamer_gl_sys::*;
use std::env;

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -3,7 +3,7 @@
// from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git)
// DO NOT EDIT
#![cfg(target_os = "linux")]
#![cfg(unix)]
use gstreamer_gl_wayland_sys::*;
use std::env;

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -3,7 +3,7 @@
// from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git)
// DO NOT EDIT
#![cfg(target_os = "linux")]
#![cfg(unix)]
use gstreamer_gl_x11_sys::*;
use std::env;

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -1,3 +1,3 @@
Generated by gir (https://github.com/gtk-rs/gir @ 213af37c22d5)
Generated by gir (https://github.com/gtk-rs/gir @ 47312a7cf33a)
from gir-files (https://github.com/gtk-rs/gir-files @ 1254daed0202)
from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 438cdf944979)

View file

@ -3,7 +3,7 @@
// from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git)
// DO NOT EDIT
#![cfg(target_os = "linux")]
#![cfg(unix)]
use gstreamer_mpegts_sys::*;
use std::env;

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