This commit is contained in:
Guillaume Gomez 2020-12-08 14:00:17 +01:00
parent 9424eabd9a
commit 959568f124
286 changed files with 2078 additions and 438 deletions

View file

@ -21,6 +21,7 @@ glib::glib_wrapper! {
impl AppSink { impl AppSink {
#[cfg(any(feature = "v1_12", feature = "dox"))] #[cfg(any(feature = "v1_12", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
#[doc(alias = "gst_app_sink_get_buffer_list_support")]
pub fn get_buffer_list_support(&self) -> bool { pub fn get_buffer_list_support(&self) -> bool {
unsafe { unsafe {
from_glib(ffi::gst_app_sink_get_buffer_list_support( from_glib(ffi::gst_app_sink_get_buffer_list_support(
@ -29,30 +30,37 @@ impl AppSink {
} }
} }
#[doc(alias = "gst_app_sink_get_caps")]
pub fn get_caps(&self) -> Option<gst::Caps> { pub fn get_caps(&self) -> Option<gst::Caps> {
unsafe { from_glib_full(ffi::gst_app_sink_get_caps(self.to_glib_none().0)) } unsafe { from_glib_full(ffi::gst_app_sink_get_caps(self.to_glib_none().0)) }
} }
#[doc(alias = "gst_app_sink_get_drop")]
pub fn get_drop(&self) -> bool { pub fn get_drop(&self) -> bool {
unsafe { from_glib(ffi::gst_app_sink_get_drop(self.to_glib_none().0)) } unsafe { from_glib(ffi::gst_app_sink_get_drop(self.to_glib_none().0)) }
} }
#[doc(alias = "gst_app_sink_get_emit_signals")]
pub fn get_emit_signals(&self) -> bool { pub fn get_emit_signals(&self) -> bool {
unsafe { from_glib(ffi::gst_app_sink_get_emit_signals(self.to_glib_none().0)) } unsafe { from_glib(ffi::gst_app_sink_get_emit_signals(self.to_glib_none().0)) }
} }
#[doc(alias = "gst_app_sink_get_max_buffers")]
pub fn get_max_buffers(&self) -> u32 { pub fn get_max_buffers(&self) -> u32 {
unsafe { ffi::gst_app_sink_get_max_buffers(self.to_glib_none().0) } unsafe { ffi::gst_app_sink_get_max_buffers(self.to_glib_none().0) }
} }
#[doc(alias = "gst_app_sink_get_wait_on_eos")]
pub fn get_wait_on_eos(&self) -> bool { pub fn get_wait_on_eos(&self) -> bool {
unsafe { from_glib(ffi::gst_app_sink_get_wait_on_eos(self.to_glib_none().0)) } unsafe { from_glib(ffi::gst_app_sink_get_wait_on_eos(self.to_glib_none().0)) }
} }
#[doc(alias = "gst_app_sink_is_eos")]
pub fn is_eos(&self) -> bool { pub fn is_eos(&self) -> bool {
unsafe { from_glib(ffi::gst_app_sink_is_eos(self.to_glib_none().0)) } unsafe { from_glib(ffi::gst_app_sink_is_eos(self.to_glib_none().0)) }
} }
#[doc(alias = "gst_app_sink_pull_preroll")]
pub fn pull_preroll(&self) -> Result<gst::Sample, glib::BoolError> { pub fn pull_preroll(&self) -> Result<gst::Sample, glib::BoolError> {
unsafe { unsafe {
Option::<_>::from_glib_full(ffi::gst_app_sink_pull_preroll(self.to_glib_none().0)) Option::<_>::from_glib_full(ffi::gst_app_sink_pull_preroll(self.to_glib_none().0))
@ -60,6 +68,7 @@ impl AppSink {
} }
} }
#[doc(alias = "gst_app_sink_pull_sample")]
pub fn pull_sample(&self) -> Result<gst::Sample, glib::BoolError> { pub fn pull_sample(&self) -> Result<gst::Sample, glib::BoolError> {
unsafe { unsafe {
Option::<_>::from_glib_full(ffi::gst_app_sink_pull_sample(self.to_glib_none().0)) Option::<_>::from_glib_full(ffi::gst_app_sink_pull_sample(self.to_glib_none().0))
@ -69,6 +78,7 @@ impl AppSink {
#[cfg(any(feature = "v1_12", feature = "dox"))] #[cfg(any(feature = "v1_12", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
#[doc(alias = "gst_app_sink_set_buffer_list_support")]
pub fn set_buffer_list_support(&self, enable_lists: bool) { pub fn set_buffer_list_support(&self, enable_lists: bool) {
unsafe { unsafe {
ffi::gst_app_sink_set_buffer_list_support( ffi::gst_app_sink_set_buffer_list_support(
@ -78,34 +88,40 @@ impl AppSink {
} }
} }
//#[doc(alias = "gst_app_sink_set_callbacks")]
//pub fn set_callbacks(&self, callbacks: /*Ignored*/&mut AppSinkCallbacks, user_data: /*Unimplemented*/Option<Fundamental: Pointer>) { //pub fn set_callbacks(&self, callbacks: /*Ignored*/&mut AppSinkCallbacks, user_data: /*Unimplemented*/Option<Fundamental: Pointer>) {
// unsafe { TODO: call ffi:gst_app_sink_set_callbacks() } // unsafe { TODO: call ffi:gst_app_sink_set_callbacks() }
//} //}
#[doc(alias = "gst_app_sink_set_caps")]
pub fn set_caps(&self, caps: Option<&gst::Caps>) { pub fn set_caps(&self, caps: Option<&gst::Caps>) {
unsafe { unsafe {
ffi::gst_app_sink_set_caps(self.to_glib_none().0, caps.to_glib_none().0); ffi::gst_app_sink_set_caps(self.to_glib_none().0, caps.to_glib_none().0);
} }
} }
#[doc(alias = "gst_app_sink_set_drop")]
pub fn set_drop(&self, drop: bool) { pub fn set_drop(&self, drop: bool) {
unsafe { unsafe {
ffi::gst_app_sink_set_drop(self.to_glib_none().0, drop.to_glib()); ffi::gst_app_sink_set_drop(self.to_glib_none().0, drop.to_glib());
} }
} }
#[doc(alias = "gst_app_sink_set_emit_signals")]
pub fn set_emit_signals(&self, emit: bool) { pub fn set_emit_signals(&self, emit: bool) {
unsafe { unsafe {
ffi::gst_app_sink_set_emit_signals(self.to_glib_none().0, emit.to_glib()); ffi::gst_app_sink_set_emit_signals(self.to_glib_none().0, emit.to_glib());
} }
} }
#[doc(alias = "gst_app_sink_set_max_buffers")]
pub fn set_max_buffers(&self, max: u32) { pub fn set_max_buffers(&self, max: u32) {
unsafe { unsafe {
ffi::gst_app_sink_set_max_buffers(self.to_glib_none().0, max); ffi::gst_app_sink_set_max_buffers(self.to_glib_none().0, max);
} }
} }
#[doc(alias = "gst_app_sink_set_wait_on_eos")]
pub fn set_wait_on_eos(&self, wait: bool) { pub fn set_wait_on_eos(&self, wait: bool) {
unsafe { unsafe {
ffi::gst_app_sink_set_wait_on_eos(self.to_glib_none().0, wait.to_glib()); ffi::gst_app_sink_set_wait_on_eos(self.to_glib_none().0, wait.to_glib());
@ -114,6 +130,7 @@ impl AppSink {
#[cfg(any(feature = "v1_10", feature = "dox"))] #[cfg(any(feature = "v1_10", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))]
#[doc(alias = "gst_app_sink_try_pull_preroll")]
pub fn try_pull_preroll(&self, timeout: gst::ClockTime) -> Option<gst::Sample> { pub fn try_pull_preroll(&self, timeout: gst::ClockTime) -> Option<gst::Sample> {
unsafe { unsafe {
from_glib_full(ffi::gst_app_sink_try_pull_preroll( from_glib_full(ffi::gst_app_sink_try_pull_preroll(
@ -125,6 +142,7 @@ impl AppSink {
#[cfg(any(feature = "v1_10", feature = "dox"))] #[cfg(any(feature = "v1_10", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))]
#[doc(alias = "gst_app_sink_try_pull_sample")]
pub fn try_pull_sample(&self, timeout: gst::ClockTime) -> Option<gst::Sample> { pub fn try_pull_sample(&self, timeout: gst::ClockTime) -> Option<gst::Sample> {
unsafe { unsafe {
from_glib_full(ffi::gst_app_sink_try_pull_sample( from_glib_full(ffi::gst_app_sink_try_pull_sample(

View file

@ -20,40 +20,49 @@ glib::glib_wrapper! {
} }
impl AppSrc { impl AppSrc {
#[doc(alias = "gst_app_src_get_caps")]
pub fn get_caps(&self) -> Option<gst::Caps> { pub fn get_caps(&self) -> Option<gst::Caps> {
unsafe { from_glib_full(ffi::gst_app_src_get_caps(self.to_glib_none().0)) } unsafe { from_glib_full(ffi::gst_app_src_get_caps(self.to_glib_none().0)) }
} }
#[doc(alias = "gst_app_src_get_current_level_bytes")]
pub fn get_current_level_bytes(&self) -> u64 { pub fn get_current_level_bytes(&self) -> u64 {
unsafe { ffi::gst_app_src_get_current_level_bytes(self.to_glib_none().0) } unsafe { ffi::gst_app_src_get_current_level_bytes(self.to_glib_none().0) }
} }
#[cfg(any(feature = "v1_10", feature = "dox"))] #[cfg(any(feature = "v1_10", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))]
#[doc(alias = "gst_app_src_get_duration")]
pub fn get_duration(&self) -> gst::ClockTime { pub fn get_duration(&self) -> gst::ClockTime {
unsafe { from_glib(ffi::gst_app_src_get_duration(self.to_glib_none().0)) } unsafe { from_glib(ffi::gst_app_src_get_duration(self.to_glib_none().0)) }
} }
#[doc(alias = "gst_app_src_get_emit_signals")]
pub fn get_emit_signals(&self) -> bool { pub fn get_emit_signals(&self) -> bool {
unsafe { from_glib(ffi::gst_app_src_get_emit_signals(self.to_glib_none().0)) } unsafe { from_glib(ffi::gst_app_src_get_emit_signals(self.to_glib_none().0)) }
} }
#[doc(alias = "gst_app_src_get_max_bytes")]
pub fn get_max_bytes(&self) -> u64 { pub fn get_max_bytes(&self) -> u64 {
unsafe { ffi::gst_app_src_get_max_bytes(self.to_glib_none().0) } unsafe { ffi::gst_app_src_get_max_bytes(self.to_glib_none().0) }
} }
#[doc(alias = "gst_app_src_get_size")]
pub fn get_size(&self) -> i64 { pub fn get_size(&self) -> i64 {
unsafe { ffi::gst_app_src_get_size(self.to_glib_none().0) } unsafe { ffi::gst_app_src_get_size(self.to_glib_none().0) }
} }
#[doc(alias = "gst_app_src_get_stream_type")]
pub fn get_stream_type(&self) -> AppStreamType { pub fn get_stream_type(&self) -> AppStreamType {
unsafe { from_glib(ffi::gst_app_src_get_stream_type(self.to_glib_none().0)) } unsafe { from_glib(ffi::gst_app_src_get_stream_type(self.to_glib_none().0)) }
} }
//#[doc(alias = "gst_app_src_set_callbacks")]
//pub fn set_callbacks(&self, callbacks: /*Ignored*/&mut AppSrcCallbacks, user_data: /*Unimplemented*/Option<Fundamental: Pointer>) { //pub fn set_callbacks(&self, callbacks: /*Ignored*/&mut AppSrcCallbacks, user_data: /*Unimplemented*/Option<Fundamental: Pointer>) {
// unsafe { TODO: call ffi:gst_app_src_set_callbacks() } // unsafe { TODO: call ffi:gst_app_src_set_callbacks() }
//} //}
#[doc(alias = "gst_app_src_set_caps")]
pub fn set_caps(&self, caps: Option<&gst::Caps>) { pub fn set_caps(&self, caps: Option<&gst::Caps>) {
unsafe { unsafe {
ffi::gst_app_src_set_caps(self.to_glib_none().0, caps.to_glib_none().0); ffi::gst_app_src_set_caps(self.to_glib_none().0, caps.to_glib_none().0);
@ -62,30 +71,35 @@ impl AppSrc {
#[cfg(any(feature = "v1_10", feature = "dox"))] #[cfg(any(feature = "v1_10", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))]
#[doc(alias = "gst_app_src_set_duration")]
pub fn set_duration(&self, duration: gst::ClockTime) { pub fn set_duration(&self, duration: gst::ClockTime) {
unsafe { unsafe {
ffi::gst_app_src_set_duration(self.to_glib_none().0, duration.to_glib()); ffi::gst_app_src_set_duration(self.to_glib_none().0, duration.to_glib());
} }
} }
#[doc(alias = "gst_app_src_set_emit_signals")]
pub fn set_emit_signals(&self, emit: bool) { pub fn set_emit_signals(&self, emit: bool) {
unsafe { unsafe {
ffi::gst_app_src_set_emit_signals(self.to_glib_none().0, emit.to_glib()); ffi::gst_app_src_set_emit_signals(self.to_glib_none().0, emit.to_glib());
} }
} }
#[doc(alias = "gst_app_src_set_max_bytes")]
pub fn set_max_bytes(&self, max: u64) { pub fn set_max_bytes(&self, max: u64) {
unsafe { unsafe {
ffi::gst_app_src_set_max_bytes(self.to_glib_none().0, max); ffi::gst_app_src_set_max_bytes(self.to_glib_none().0, max);
} }
} }
#[doc(alias = "gst_app_src_set_size")]
pub fn set_size(&self, size: i64) { pub fn set_size(&self, size: i64) {
unsafe { unsafe {
ffi::gst_app_src_set_size(self.to_glib_none().0, size); ffi::gst_app_src_set_size(self.to_glib_none().0, size);
} }
} }
#[doc(alias = "gst_app_src_set_stream_type")]
pub fn set_stream_type(&self, type_: AppStreamType) { pub fn set_stream_type(&self, type_: AppStreamType) {
unsafe { unsafe {
ffi::gst_app_src_set_stream_type(self.to_glib_none().0, type_.to_glib()); ffi::gst_app_src_set_stream_type(self.to_glib_none().0, type_.to_glib());

View file

@ -35,7 +35,7 @@ impl ToGlib for AppStreamType {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstAppStreamType> for AppStreamType { impl FromGlib<ffi::GstAppStreamType> for AppStreamType {
fn from_glib(value: ffi::GstAppStreamType) -> Self { unsafe fn from_glib(value: ffi::GstAppStreamType) -> Self {
skip_assert_initialized!(); skip_assert_initialized!();
match value { match value {
0 => AppStreamType::Stream, 0 => AppStreamType::Stream,

View file

@ -1,2 +1,2 @@
Generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) Generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#[cfg(not(feature = "dox"))] #[cfg(not(feature = "dox"))]

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)] #![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
use gstreamer_app_sys::*; use gstreamer_app_sys::*;

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#include "manual.h" #include "manual.h"

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#include "manual.h" #include "manual.h"

View file

@ -25,30 +25,43 @@ unsafe impl Sync for AudioBaseSink {}
pub const NONE_AUDIO_BASE_SINK: Option<&AudioBaseSink> = None; pub const NONE_AUDIO_BASE_SINK: Option<&AudioBaseSink> = None;
pub trait AudioBaseSinkExt: 'static { pub trait AudioBaseSinkExt: 'static {
//#[doc(alias = "gst_audio_base_sink_create_ringbuffer")]
//fn create_ringbuffer(&self) -> /*Ignored*/Option<AudioRingBuffer>; //fn create_ringbuffer(&self) -> /*Ignored*/Option<AudioRingBuffer>;
#[doc(alias = "gst_audio_base_sink_get_alignment_threshold")]
fn get_alignment_threshold(&self) -> gst::ClockTime; fn get_alignment_threshold(&self) -> gst::ClockTime;
#[doc(alias = "gst_audio_base_sink_get_discont_wait")]
fn get_discont_wait(&self) -> gst::ClockTime; fn get_discont_wait(&self) -> gst::ClockTime;
#[doc(alias = "gst_audio_base_sink_get_drift_tolerance")]
fn get_drift_tolerance(&self) -> i64; fn get_drift_tolerance(&self) -> i64;
#[doc(alias = "gst_audio_base_sink_get_provide_clock")]
fn get_provide_clock(&self) -> bool; fn get_provide_clock(&self) -> bool;
//#[doc(alias = "gst_audio_base_sink_get_slave_method")]
//fn get_slave_method(&self) -> /*Ignored*/AudioBaseSinkSlaveMethod; //fn get_slave_method(&self) -> /*Ignored*/AudioBaseSinkSlaveMethod;
#[doc(alias = "gst_audio_base_sink_report_device_failure")]
fn report_device_failure(&self); fn report_device_failure(&self);
#[doc(alias = "gst_audio_base_sink_set_alignment_threshold")]
fn set_alignment_threshold(&self, alignment_threshold: gst::ClockTime); 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, gst::ClockTime, gst::ClockTime, /*Ignored*/gst::ClockTimeDiff, /*Ignored*/AudioBaseSinkDiscontReason), user_data: /*Unimplemented*/Option<Fundamental: Pointer>); //fn set_custom_slaving_callback(&self, callback: /*Unimplemented*/Fn(&AudioBaseSink, gst::ClockTime, gst::ClockTime, /*Ignored*/gst::ClockTimeDiff, /*Ignored*/AudioBaseSinkDiscontReason), user_data: /*Unimplemented*/Option<Fundamental: Pointer>);
#[doc(alias = "gst_audio_base_sink_set_discont_wait")]
fn set_discont_wait(&self, discont_wait: gst::ClockTime); 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); fn set_drift_tolerance(&self, drift_tolerance: i64);
#[doc(alias = "gst_audio_base_sink_set_provide_clock")]
fn set_provide_clock(&self, provide: bool); fn set_provide_clock(&self, provide: bool);
//#[doc(alias = "gst_audio_base_sink_set_slave_method")]
//fn set_slave_method(&self, method: /*Ignored*/AudioBaseSinkSlaveMethod); //fn set_slave_method(&self, method: /*Ignored*/AudioBaseSinkSlaveMethod);
fn get_property_buffer_time(&self) -> i64; fn get_property_buffer_time(&self) -> i64;

View file

@ -25,14 +25,19 @@ unsafe impl Sync for AudioBaseSrc {}
pub const NONE_AUDIO_BASE_SRC: Option<&AudioBaseSrc> = None; pub const NONE_AUDIO_BASE_SRC: Option<&AudioBaseSrc> = None;
pub trait AudioBaseSrcExt: 'static { pub trait AudioBaseSrcExt: 'static {
//#[doc(alias = "gst_audio_base_src_create_ringbuffer")]
//fn create_ringbuffer(&self) -> /*Ignored*/Option<AudioRingBuffer>; //fn create_ringbuffer(&self) -> /*Ignored*/Option<AudioRingBuffer>;
#[doc(alias = "gst_audio_base_src_get_provide_clock")]
fn get_provide_clock(&self) -> bool; fn get_provide_clock(&self) -> bool;
//#[doc(alias = "gst_audio_base_src_get_slave_method")]
//fn get_slave_method(&self) -> /*Ignored*/AudioBaseSrcSlaveMethod; //fn get_slave_method(&self) -> /*Ignored*/AudioBaseSrcSlaveMethod;
#[doc(alias = "gst_audio_base_src_set_provide_clock")]
fn set_provide_clock(&self, provide: bool); fn set_provide_clock(&self, provide: bool);
//#[doc(alias = "gst_audio_base_src_set_slave_method")]
//fn set_slave_method(&self, method: /*Ignored*/AudioBaseSrcSlaveMethod); //fn set_slave_method(&self, method: /*Ignored*/AudioBaseSrcSlaveMethod);
fn get_property_actual_buffer_time(&self) -> i64; fn get_property_actual_buffer_time(&self) -> i64;

View file

@ -26,58 +26,84 @@ unsafe impl Sync for AudioDecoder {}
pub const NONE_AUDIO_DECODER: Option<&AudioDecoder> = None; pub const NONE_AUDIO_DECODER: Option<&AudioDecoder> = None;
pub trait AudioDecoderExt: 'static { pub trait AudioDecoderExt: 'static {
#[doc(alias = "gst_audio_decoder_allocate_output_buffer")]
fn allocate_output_buffer(&self, size: usize) -> Result<gst::Buffer, glib::BoolError>; fn allocate_output_buffer(&self, size: usize) -> Result<gst::Buffer, glib::BoolError>;
#[doc(alias = "gst_audio_decoder_get_audio_info")]
fn get_audio_info(&self) -> Option<AudioInfo>; fn get_audio_info(&self) -> Option<AudioInfo>;
#[doc(alias = "gst_audio_decoder_get_delay")]
fn get_delay(&self) -> i32; fn get_delay(&self) -> i32;
#[doc(alias = "gst_audio_decoder_get_drainable")]
fn get_drainable(&self) -> bool; fn get_drainable(&self) -> bool;
#[doc(alias = "gst_audio_decoder_get_estimate_rate")]
fn get_estimate_rate(&self) -> i32; fn get_estimate_rate(&self) -> i32;
#[doc(alias = "gst_audio_decoder_get_latency")]
fn get_latency(&self) -> (gst::ClockTime, gst::ClockTime); fn get_latency(&self) -> (gst::ClockTime, gst::ClockTime);
#[doc(alias = "gst_audio_decoder_get_max_errors")]
fn get_max_errors(&self) -> i32; fn get_max_errors(&self) -> i32;
#[doc(alias = "gst_audio_decoder_get_min_latency")]
fn get_min_latency(&self) -> gst::ClockTime; fn get_min_latency(&self) -> gst::ClockTime;
#[doc(alias = "gst_audio_decoder_get_needs_format")]
fn get_needs_format(&self) -> bool; fn get_needs_format(&self) -> bool;
#[doc(alias = "gst_audio_decoder_get_parse_state")]
fn get_parse_state(&self) -> (bool, bool); fn get_parse_state(&self) -> (bool, bool);
#[doc(alias = "gst_audio_decoder_get_plc")]
fn get_plc(&self) -> bool; fn get_plc(&self) -> bool;
#[doc(alias = "gst_audio_decoder_get_plc_aware")]
fn get_plc_aware(&self) -> i32; fn get_plc_aware(&self) -> i32;
#[doc(alias = "gst_audio_decoder_get_tolerance")]
fn get_tolerance(&self) -> gst::ClockTime; fn get_tolerance(&self) -> gst::ClockTime;
#[doc(alias = "gst_audio_decoder_merge_tags")]
fn merge_tags(&self, tags: Option<&gst::TagList>, mode: gst::TagMergeMode); 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; fn proxy_getcaps(&self, caps: Option<&gst::Caps>, filter: Option<&gst::Caps>) -> gst::Caps;
#[cfg(any(feature = "v1_10", feature = "dox"))] #[cfg(any(feature = "v1_10", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))]
#[doc(alias = "gst_audio_decoder_set_allocation_caps")]
fn set_allocation_caps(&self, allocation_caps: Option<&gst::Caps>); fn set_allocation_caps(&self, allocation_caps: Option<&gst::Caps>);
#[doc(alias = "gst_audio_decoder_set_drainable")]
fn set_drainable(&self, enabled: bool); fn set_drainable(&self, enabled: bool);
#[doc(alias = "gst_audio_decoder_set_estimate_rate")]
fn set_estimate_rate(&self, enabled: bool); fn set_estimate_rate(&self, enabled: bool);
#[doc(alias = "gst_audio_decoder_set_latency")]
fn set_latency(&self, min: gst::ClockTime, max: gst::ClockTime); fn set_latency(&self, min: gst::ClockTime, max: gst::ClockTime);
#[doc(alias = "gst_audio_decoder_set_max_errors")]
fn set_max_errors(&self, num: i32); fn set_max_errors(&self, num: i32);
#[doc(alias = "gst_audio_decoder_set_min_latency")]
fn set_min_latency(&self, num: gst::ClockTime); fn set_min_latency(&self, num: gst::ClockTime);
#[doc(alias = "gst_audio_decoder_set_needs_format")]
fn set_needs_format(&self, enabled: bool); fn set_needs_format(&self, enabled: bool);
#[doc(alias = "gst_audio_decoder_set_plc")]
fn set_plc(&self, enabled: bool); fn set_plc(&self, enabled: bool);
#[doc(alias = "gst_audio_decoder_set_plc_aware")]
fn set_plc_aware(&self, plc: bool); fn set_plc_aware(&self, plc: bool);
#[doc(alias = "gst_audio_decoder_set_tolerance")]
fn set_tolerance(&self, tolerance: gst::ClockTime); 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); fn set_use_default_pad_acceptcaps(&self, use_: bool);
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]

View file

@ -25,60 +25,87 @@ unsafe impl Sync for AudioEncoder {}
pub const NONE_AUDIO_ENCODER: Option<&AudioEncoder> = None; pub const NONE_AUDIO_ENCODER: Option<&AudioEncoder> = None;
pub trait AudioEncoderExt: 'static { pub trait AudioEncoderExt: 'static {
#[doc(alias = "gst_audio_encoder_allocate_output_buffer")]
fn allocate_output_buffer(&self, size: usize) -> Result<gst::Buffer, glib::BoolError>; fn allocate_output_buffer(&self, size: usize) -> Result<gst::Buffer, glib::BoolError>;
#[doc(alias = "gst_audio_encoder_get_audio_info")]
fn get_audio_info(&self) -> Option<AudioInfo>; fn get_audio_info(&self) -> Option<AudioInfo>;
#[doc(alias = "gst_audio_encoder_get_drainable")]
fn get_drainable(&self) -> bool; fn get_drainable(&self) -> bool;
#[doc(alias = "gst_audio_encoder_get_frame_max")]
fn get_frame_max(&self) -> i32; fn get_frame_max(&self) -> i32;
#[doc(alias = "gst_audio_encoder_get_frame_samples_max")]
fn get_frame_samples_max(&self) -> i32; fn get_frame_samples_max(&self) -> i32;
#[doc(alias = "gst_audio_encoder_get_frame_samples_min")]
fn get_frame_samples_min(&self) -> i32; fn get_frame_samples_min(&self) -> i32;
#[doc(alias = "gst_audio_encoder_get_hard_min")]
fn get_hard_min(&self) -> bool; fn get_hard_min(&self) -> bool;
#[doc(alias = "gst_audio_encoder_get_hard_resync")]
fn get_hard_resync(&self) -> bool; fn get_hard_resync(&self) -> bool;
#[doc(alias = "gst_audio_encoder_get_lookahead")]
fn get_lookahead(&self) -> i32; fn get_lookahead(&self) -> i32;
#[doc(alias = "gst_audio_encoder_get_mark_granule")]
fn get_mark_granule(&self) -> bool; fn get_mark_granule(&self) -> bool;
#[doc(alias = "gst_audio_encoder_get_perfect_timestamp")]
fn get_perfect_timestamp(&self) -> bool; fn get_perfect_timestamp(&self) -> bool;
#[doc(alias = "gst_audio_encoder_get_tolerance")]
fn get_tolerance(&self) -> gst::ClockTime; fn get_tolerance(&self) -> gst::ClockTime;
#[doc(alias = "gst_audio_encoder_merge_tags")]
fn merge_tags(&self, tags: Option<&gst::TagList>, mode: gst::TagMergeMode); 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; fn proxy_getcaps(&self, caps: Option<&gst::Caps>, filter: Option<&gst::Caps>) -> gst::Caps;
#[cfg(any(feature = "v1_10", feature = "dox"))] #[cfg(any(feature = "v1_10", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))]
#[doc(alias = "gst_audio_encoder_set_allocation_caps")]
fn set_allocation_caps(&self, allocation_caps: Option<&gst::Caps>); fn set_allocation_caps(&self, allocation_caps: Option<&gst::Caps>);
#[doc(alias = "gst_audio_encoder_set_drainable")]
fn set_drainable(&self, enabled: bool); fn set_drainable(&self, enabled: bool);
#[doc(alias = "gst_audio_encoder_set_frame_max")]
fn set_frame_max(&self, num: i32); fn set_frame_max(&self, num: i32);
#[doc(alias = "gst_audio_encoder_set_frame_samples_max")]
fn set_frame_samples_max(&self, num: i32); 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); fn set_frame_samples_min(&self, num: i32);
#[doc(alias = "gst_audio_encoder_set_hard_min")]
fn set_hard_min(&self, enabled: bool); fn set_hard_min(&self, enabled: bool);
#[doc(alias = "gst_audio_encoder_set_hard_resync")]
fn set_hard_resync(&self, enabled: bool); fn set_hard_resync(&self, enabled: bool);
#[doc(alias = "gst_audio_encoder_set_headers")]
fn set_headers(&self, headers: &[&gst::Buffer]); fn set_headers(&self, headers: &[&gst::Buffer]);
#[doc(alias = "gst_audio_encoder_set_latency")]
fn set_latency(&self, min: gst::ClockTime, max: gst::ClockTime); fn set_latency(&self, min: gst::ClockTime, max: gst::ClockTime);
#[doc(alias = "gst_audio_encoder_set_lookahead")]
fn set_lookahead(&self, num: i32); fn set_lookahead(&self, num: i32);
#[doc(alias = "gst_audio_encoder_set_mark_granule")]
fn set_mark_granule(&self, enabled: bool); fn set_mark_granule(&self, enabled: bool);
#[doc(alias = "gst_audio_encoder_set_perfect_timestamp")]
fn set_perfect_timestamp(&self, enabled: bool); fn set_perfect_timestamp(&self, enabled: bool);
#[doc(alias = "gst_audio_encoder_set_tolerance")]
fn set_tolerance(&self, tolerance: gst::ClockTime); fn set_tolerance(&self, tolerance: gst::ClockTime);
fn connect_property_hard_resync_notify<F: Fn(&Self) + Send + Sync + 'static>( fn connect_property_hard_resync_notify<F: Fn(&Self) + Send + Sync + 'static>(

View file

@ -20,6 +20,7 @@ glib::glib_wrapper! {
impl AudioStreamAlign { impl AudioStreamAlign {
#[cfg(any(feature = "v1_14", feature = "dox"))] #[cfg(any(feature = "v1_14", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))]
#[doc(alias = "gst_audio_stream_align_new")]
pub fn new( pub fn new(
rate: i32, rate: i32,
alignment_threshold: gst::ClockTime, alignment_threshold: gst::ClockTime,
@ -37,6 +38,7 @@ impl AudioStreamAlign {
#[cfg(any(feature = "v1_14", feature = "dox"))] #[cfg(any(feature = "v1_14", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))]
#[doc(alias = "gst_audio_stream_align_get_alignment_threshold")]
pub fn get_alignment_threshold(&self) -> gst::ClockTime { pub fn get_alignment_threshold(&self) -> gst::ClockTime {
unsafe { unsafe {
from_glib(ffi::gst_audio_stream_align_get_alignment_threshold( from_glib(ffi::gst_audio_stream_align_get_alignment_threshold(
@ -47,6 +49,7 @@ impl AudioStreamAlign {
#[cfg(any(feature = "v1_14", feature = "dox"))] #[cfg(any(feature = "v1_14", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))]
#[doc(alias = "gst_audio_stream_align_get_discont_wait")]
pub fn get_discont_wait(&self) -> gst::ClockTime { pub fn get_discont_wait(&self) -> gst::ClockTime {
unsafe { unsafe {
from_glib(ffi::gst_audio_stream_align_get_discont_wait(mut_override( from_glib(ffi::gst_audio_stream_align_get_discont_wait(mut_override(
@ -57,12 +60,14 @@ impl AudioStreamAlign {
#[cfg(any(feature = "v1_14", feature = "dox"))] #[cfg(any(feature = "v1_14", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))]
#[doc(alias = "gst_audio_stream_align_get_rate")]
pub fn get_rate(&self) -> i32 { pub fn get_rate(&self) -> i32 {
unsafe { ffi::gst_audio_stream_align_get_rate(mut_override(self.to_glib_none().0)) } unsafe { ffi::gst_audio_stream_align_get_rate(mut_override(self.to_glib_none().0)) }
} }
#[cfg(any(feature = "v1_14", feature = "dox"))] #[cfg(any(feature = "v1_14", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))]
#[doc(alias = "gst_audio_stream_align_get_samples_since_discont")]
pub fn get_samples_since_discont(&self) -> u64 { pub fn get_samples_since_discont(&self) -> u64 {
unsafe { unsafe {
ffi::gst_audio_stream_align_get_samples_since_discont(mut_override( ffi::gst_audio_stream_align_get_samples_since_discont(mut_override(
@ -73,6 +78,7 @@ impl AudioStreamAlign {
#[cfg(any(feature = "v1_14", feature = "dox"))] #[cfg(any(feature = "v1_14", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))]
#[doc(alias = "gst_audio_stream_align_get_timestamp_at_discont")]
pub fn get_timestamp_at_discont(&self) -> gst::ClockTime { pub fn get_timestamp_at_discont(&self) -> gst::ClockTime {
unsafe { unsafe {
from_glib(ffi::gst_audio_stream_align_get_timestamp_at_discont( from_glib(ffi::gst_audio_stream_align_get_timestamp_at_discont(
@ -83,6 +89,7 @@ impl AudioStreamAlign {
#[cfg(any(feature = "v1_14", feature = "dox"))] #[cfg(any(feature = "v1_14", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))]
#[doc(alias = "gst_audio_stream_align_mark_discont")]
pub fn mark_discont(&mut self) { pub fn mark_discont(&mut self) {
unsafe { unsafe {
ffi::gst_audio_stream_align_mark_discont(self.to_glib_none_mut().0); ffi::gst_audio_stream_align_mark_discont(self.to_glib_none_mut().0);
@ -91,6 +98,7 @@ impl AudioStreamAlign {
#[cfg(any(feature = "v1_14", feature = "dox"))] #[cfg(any(feature = "v1_14", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))]
#[doc(alias = "gst_audio_stream_align_set_alignment_threshold")]
pub fn set_alignment_threshold(&mut self, alignment_threshold: gst::ClockTime) { pub fn set_alignment_threshold(&mut self, alignment_threshold: gst::ClockTime) {
unsafe { unsafe {
ffi::gst_audio_stream_align_set_alignment_threshold( ffi::gst_audio_stream_align_set_alignment_threshold(
@ -102,6 +110,7 @@ impl AudioStreamAlign {
#[cfg(any(feature = "v1_14", feature = "dox"))] #[cfg(any(feature = "v1_14", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))]
#[doc(alias = "gst_audio_stream_align_set_discont_wait")]
pub fn set_discont_wait(&mut self, discont_wait: gst::ClockTime) { pub fn set_discont_wait(&mut self, discont_wait: gst::ClockTime) {
unsafe { unsafe {
ffi::gst_audio_stream_align_set_discont_wait( ffi::gst_audio_stream_align_set_discont_wait(
@ -113,6 +122,7 @@ impl AudioStreamAlign {
#[cfg(any(feature = "v1_14", feature = "dox"))] #[cfg(any(feature = "v1_14", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))]
#[doc(alias = "gst_audio_stream_align_set_rate")]
pub fn set_rate(&mut self, rate: i32) { pub fn set_rate(&mut self, rate: i32) {
unsafe { unsafe {
ffi::gst_audio_stream_align_set_rate(self.to_glib_none_mut().0, rate); ffi::gst_audio_stream_align_set_rate(self.to_glib_none_mut().0, rate);

View file

@ -104,7 +104,7 @@ impl ToGlib for AudioChannelPosition {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstAudioChannelPosition> for AudioChannelPosition { impl FromGlib<ffi::GstAudioChannelPosition> for AudioChannelPosition {
fn from_glib(value: ffi::GstAudioChannelPosition) -> Self { unsafe fn from_glib(value: ffi::GstAudioChannelPosition) -> Self {
skip_assert_initialized!(); skip_assert_initialized!();
match value { match value {
-3 => AudioChannelPosition::None, -3 => AudioChannelPosition::None,
@ -207,6 +207,7 @@ pub enum AudioFormat {
} }
impl AudioFormat { impl AudioFormat {
#[doc(alias = "gst_audio_format_from_string")]
pub fn from_string(format: &str) -> AudioFormat { pub fn from_string(format: &str) -> AudioFormat {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { from_glib(ffi::gst_audio_format_from_string(format.to_glib_none().0)) } unsafe { from_glib(ffi::gst_audio_format_from_string(format.to_glib_none().0)) }
@ -265,7 +266,7 @@ impl ToGlib for AudioFormat {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstAudioFormat> for AudioFormat { impl FromGlib<ffi::GstAudioFormat> for AudioFormat {
fn from_glib(value: ffi::GstAudioFormat) -> Self { unsafe fn from_glib(value: ffi::GstAudioFormat) -> Self {
skip_assert_initialized!(); skip_assert_initialized!();
match value { match value {
0 => AudioFormat::Unknown, 0 => AudioFormat::Unknown,
@ -353,7 +354,7 @@ impl ToGlib for AudioLayout {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstAudioLayout> for AudioLayout { impl FromGlib<ffi::GstAudioLayout> for AudioLayout {
fn from_glib(value: ffi::GstAudioLayout) -> Self { unsafe fn from_glib(value: ffi::GstAudioLayout) -> Self {
skip_assert_initialized!(); skip_assert_initialized!();
match value { match value {
0 => AudioLayout::Interleaved, 0 => AudioLayout::Interleaved,
@ -450,7 +451,7 @@ impl ToGlib for AudioRingBufferFormatType {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstAudioRingBufferFormatType> for AudioRingBufferFormatType { impl FromGlib<ffi::GstAudioRingBufferFormatType> for AudioRingBufferFormatType {
fn from_glib(value: ffi::GstAudioRingBufferFormatType) -> Self { unsafe fn from_glib(value: ffi::GstAudioRingBufferFormatType) -> Self {
skip_assert_initialized!(); skip_assert_initialized!();
match value { match value {
0 => AudioRingBufferFormatType::Raw, 0 => AudioRingBufferFormatType::Raw,
@ -526,7 +527,7 @@ impl ToGlib for StreamVolumeFormat {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstStreamVolumeFormat> for StreamVolumeFormat { impl FromGlib<ffi::GstStreamVolumeFormat> for StreamVolumeFormat {
fn from_glib(value: ffi::GstStreamVolumeFormat) -> Self { unsafe fn from_glib(value: ffi::GstStreamVolumeFormat) -> Self {
skip_assert_initialized!(); skip_assert_initialized!();
match value { match value {
0 => StreamVolumeFormat::Linear, 0 => StreamVolumeFormat::Linear,

View file

@ -27,7 +27,7 @@ impl ToGlib for AudioFlags {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstAudioFlags> for AudioFlags { impl FromGlib<ffi::GstAudioFlags> for AudioFlags {
fn from_glib(value: ffi::GstAudioFlags) -> AudioFlags { unsafe fn from_glib(value: ffi::GstAudioFlags) -> AudioFlags {
skip_assert_initialized!(); skip_assert_initialized!();
AudioFlags::from_bits_truncate(value) AudioFlags::from_bits_truncate(value)
} }
@ -78,7 +78,7 @@ impl ToGlib for AudioFormatFlags {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstAudioFormatFlags> for AudioFormatFlags { impl FromGlib<ffi::GstAudioFormatFlags> for AudioFormatFlags {
fn from_glib(value: ffi::GstAudioFormatFlags) -> AudioFormatFlags { unsafe fn from_glib(value: ffi::GstAudioFormatFlags) -> AudioFormatFlags {
skip_assert_initialized!(); skip_assert_initialized!();
AudioFormatFlags::from_bits_truncate(value) AudioFormatFlags::from_bits_truncate(value)
} }
@ -125,7 +125,7 @@ impl ToGlib for AudioPackFlags {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstAudioPackFlags> for AudioPackFlags { impl FromGlib<ffi::GstAudioPackFlags> for AudioPackFlags {
fn from_glib(value: ffi::GstAudioPackFlags) -> AudioPackFlags { unsafe fn from_glib(value: ffi::GstAudioPackFlags) -> AudioPackFlags {
skip_assert_initialized!(); skip_assert_initialized!();
AudioPackFlags::from_bits_truncate(value) AudioPackFlags::from_bits_truncate(value)
} }

View file

@ -20,6 +20,7 @@ glib::glib_wrapper! {
} }
impl StreamVolume { impl StreamVolume {
#[doc(alias = "gst_stream_volume_convert_volume")]
pub fn convert_volume(from: StreamVolumeFormat, to: StreamVolumeFormat, val: f64) -> f64 { pub fn convert_volume(from: StreamVolumeFormat, to: StreamVolumeFormat, val: f64) -> f64 {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { ffi::gst_stream_volume_convert_volume(from.to_glib(), to.to_glib(), val) } unsafe { ffi::gst_stream_volume_convert_volume(from.to_glib(), to.to_glib(), val) }
@ -32,12 +33,16 @@ unsafe impl Sync for StreamVolume {}
pub const NONE_STREAM_VOLUME: Option<&StreamVolume> = None; pub const NONE_STREAM_VOLUME: Option<&StreamVolume> = None;
pub trait StreamVolumeExt: 'static { pub trait StreamVolumeExt: 'static {
#[doc(alias = "gst_stream_volume_get_mute")]
fn get_mute(&self) -> bool; fn get_mute(&self) -> bool;
#[doc(alias = "gst_stream_volume_get_volume")]
fn get_volume(&self, format: StreamVolumeFormat) -> f64; fn get_volume(&self, format: StreamVolumeFormat) -> f64;
#[doc(alias = "gst_stream_volume_set_mute")]
fn set_mute(&self, mute: bool); fn set_mute(&self, mute: bool);
#[doc(alias = "gst_stream_volume_set_volume")]
fn set_volume(&self, format: StreamVolumeFormat, val: f64); fn set_volume(&self, format: StreamVolumeFormat, val: f64);
fn connect_property_mute_notify<F: Fn(&Self) + Send + Sync + 'static>( fn connect_property_mute_notify<F: Fn(&Self) + Send + Sync + 'static>(

View file

@ -1,2 +1,2 @@
Generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) Generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#[cfg(not(feature = "dox"))] #[cfg(not(feature = "dox"))]

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)] #![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
use gstreamer_audio_sys::*; use gstreamer_audio_sys::*;

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#include "manual.h" #include "manual.h"

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#include "manual.h" #include "manual.h"

View file

@ -15,19 +15,23 @@ glib::glib_wrapper! {
} }
impl Adapter { impl Adapter {
#[doc(alias = "gst_adapter_new")]
pub fn new() -> Adapter { pub fn new() -> Adapter {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { from_glib_full(ffi::gst_adapter_new()) } unsafe { from_glib_full(ffi::gst_adapter_new()) }
} }
#[doc(alias = "gst_adapter_available")]
pub fn available(&self) -> usize { pub fn available(&self) -> usize {
unsafe { ffi::gst_adapter_available(self.to_glib_none().0) } unsafe { ffi::gst_adapter_available(self.to_glib_none().0) }
} }
#[doc(alias = "gst_adapter_available_fast")]
pub fn available_fast(&self) -> usize { pub fn available_fast(&self) -> usize {
unsafe { ffi::gst_adapter_available_fast(self.to_glib_none().0) } unsafe { ffi::gst_adapter_available_fast(self.to_glib_none().0) }
} }
#[doc(alias = "gst_adapter_clear")]
pub fn clear(&self) { pub fn clear(&self) {
unsafe { unsafe {
ffi::gst_adapter_clear(self.to_glib_none().0); ffi::gst_adapter_clear(self.to_glib_none().0);
@ -36,22 +40,26 @@ impl Adapter {
#[cfg(any(feature = "v1_10", feature = "dox"))] #[cfg(any(feature = "v1_10", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))]
#[doc(alias = "gst_adapter_distance_from_discont")]
pub fn distance_from_discont(&self) -> u64 { pub fn distance_from_discont(&self) -> u64 {
unsafe { ffi::gst_adapter_distance_from_discont(self.to_glib_none().0) } unsafe { ffi::gst_adapter_distance_from_discont(self.to_glib_none().0) }
} }
#[cfg(any(feature = "v1_10", feature = "dox"))] #[cfg(any(feature = "v1_10", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))]
#[doc(alias = "gst_adapter_dts_at_discont")]
pub fn dts_at_discont(&self) -> gst::ClockTime { pub fn dts_at_discont(&self) -> gst::ClockTime {
unsafe { from_glib(ffi::gst_adapter_dts_at_discont(self.to_glib_none().0)) } unsafe { from_glib(ffi::gst_adapter_dts_at_discont(self.to_glib_none().0)) }
} }
#[cfg(any(feature = "v1_10", feature = "dox"))] #[cfg(any(feature = "v1_10", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))]
#[doc(alias = "gst_adapter_offset_at_discont")]
pub fn offset_at_discont(&self) -> u64 { pub fn offset_at_discont(&self) -> u64 {
unsafe { ffi::gst_adapter_offset_at_discont(self.to_glib_none().0) } unsafe { ffi::gst_adapter_offset_at_discont(self.to_glib_none().0) }
} }
#[doc(alias = "gst_adapter_prev_dts")]
pub fn prev_dts(&self) -> (gst::ClockTime, u64) { pub fn prev_dts(&self) -> (gst::ClockTime, u64) {
unsafe { unsafe {
let mut distance = mem::MaybeUninit::uninit(); let mut distance = mem::MaybeUninit::uninit();
@ -64,6 +72,7 @@ impl Adapter {
} }
} }
#[doc(alias = "gst_adapter_prev_dts_at_offset")]
pub fn prev_dts_at_offset(&self, offset: usize) -> (gst::ClockTime, u64) { pub fn prev_dts_at_offset(&self, offset: usize) -> (gst::ClockTime, u64) {
unsafe { unsafe {
let mut distance = mem::MaybeUninit::uninit(); let mut distance = mem::MaybeUninit::uninit();
@ -79,6 +88,7 @@ impl Adapter {
#[cfg(any(feature = "v1_10", feature = "dox"))] #[cfg(any(feature = "v1_10", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))]
#[doc(alias = "gst_adapter_prev_offset")]
pub fn prev_offset(&self) -> (u64, u64) { pub fn prev_offset(&self) -> (u64, u64) {
unsafe { unsafe {
let mut distance = mem::MaybeUninit::uninit(); let mut distance = mem::MaybeUninit::uninit();
@ -88,6 +98,7 @@ impl Adapter {
} }
} }
#[doc(alias = "gst_adapter_prev_pts")]
pub fn prev_pts(&self) -> (gst::ClockTime, u64) { pub fn prev_pts(&self) -> (gst::ClockTime, u64) {
unsafe { unsafe {
let mut distance = mem::MaybeUninit::uninit(); let mut distance = mem::MaybeUninit::uninit();
@ -100,6 +111,7 @@ impl Adapter {
} }
} }
#[doc(alias = "gst_adapter_prev_pts_at_offset")]
pub fn prev_pts_at_offset(&self, offset: usize) -> (gst::ClockTime, u64) { pub fn prev_pts_at_offset(&self, offset: usize) -> (gst::ClockTime, u64) {
unsafe { unsafe {
let mut distance = mem::MaybeUninit::uninit(); let mut distance = mem::MaybeUninit::uninit();
@ -115,6 +127,7 @@ impl Adapter {
#[cfg(any(feature = "v1_10", feature = "dox"))] #[cfg(any(feature = "v1_10", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))]
#[doc(alias = "gst_adapter_pts_at_discont")]
pub fn pts_at_discont(&self) -> gst::ClockTime { pub fn pts_at_discont(&self) -> gst::ClockTime {
unsafe { from_glib(ffi::gst_adapter_pts_at_discont(self.to_glib_none().0)) } unsafe { from_glib(ffi::gst_adapter_pts_at_discont(self.to_glib_none().0)) }
} }

View file

@ -33,38 +33,47 @@ pub const NONE_AGGREGATOR: Option<&Aggregator> = None;
pub trait AggregatorExt: 'static { pub trait AggregatorExt: 'static {
//#[cfg(any(feature = "v1_14", feature = "dox"))] //#[cfg(any(feature = "v1_14", feature = "dox"))]
//#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))] //#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))]
//#[doc(alias = "gst_aggregator_get_allocator")]
//fn get_allocator(&self, allocator: /*Ignored*/Option<gst::Allocator>, params: /*Ignored*/gst::AllocationParams); //fn get_allocator(&self, allocator: /*Ignored*/Option<gst::Allocator>, params: /*Ignored*/gst::AllocationParams);
#[cfg(any(feature = "v1_14", feature = "dox"))] #[cfg(any(feature = "v1_14", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))]
#[doc(alias = "gst_aggregator_get_buffer_pool")]
fn get_buffer_pool(&self) -> Option<gst::BufferPool>; fn get_buffer_pool(&self) -> Option<gst::BufferPool>;
#[cfg(any(feature = "v1_14", feature = "dox"))] #[cfg(any(feature = "v1_14", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))]
#[doc(alias = "gst_aggregator_get_latency")]
fn get_latency(&self) -> gst::ClockTime; fn get_latency(&self) -> gst::ClockTime;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_aggregator_negotiate")]
fn negotiate(&self) -> bool; fn negotiate(&self) -> bool;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_aggregator_peek_next_sample")]
fn peek_next_sample<P: IsA<AggregatorPad>>(&self, pad: &P) -> Option<gst::Sample>; fn peek_next_sample<P: IsA<AggregatorPad>>(&self, pad: &P) -> Option<gst::Sample>;
#[cfg(any(feature = "v1_14", feature = "dox"))] #[cfg(any(feature = "v1_14", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))]
#[doc(alias = "gst_aggregator_set_latency")]
fn set_latency(&self, min_latency: gst::ClockTime, max_latency: gst::ClockTime); fn set_latency(&self, min_latency: gst::ClockTime, max_latency: gst::ClockTime);
#[cfg(any(feature = "v1_14", feature = "dox"))] #[cfg(any(feature = "v1_14", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))]
#[doc(alias = "gst_aggregator_set_src_caps")]
fn set_src_caps(&self, caps: &gst::Caps); fn set_src_caps(&self, caps: &gst::Caps);
#[cfg(any(feature = "v1_16", feature = "dox"))] #[cfg(any(feature = "v1_16", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
#[doc(alias = "gst_aggregator_simple_get_next_time")]
fn simple_get_next_time(&self) -> gst::ClockTime; fn simple_get_next_time(&self) -> gst::ClockTime;
//#[cfg(any(feature = "v1_18", feature = "dox"))] //#[cfg(any(feature = "v1_18", feature = "dox"))]
//#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] //#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
//#[doc(alias = "gst_aggregator_update_segment")]
//fn update_segment(&self, segment: /*Ignored*/&gst::Segment); //fn update_segment(&self, segment: /*Ignored*/&gst::Segment);
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]

View file

@ -29,22 +29,27 @@ pub const NONE_AGGREGATOR_PAD: Option<&AggregatorPad> = None;
pub trait AggregatorPadExt: 'static { pub trait AggregatorPadExt: 'static {
#[cfg(any(feature = "v1_14", feature = "dox"))] #[cfg(any(feature = "v1_14", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))]
#[doc(alias = "gst_aggregator_pad_drop_buffer")]
fn drop_buffer(&self) -> bool; fn drop_buffer(&self) -> bool;
#[cfg(any(feature = "v1_14_1", feature = "dox"))] #[cfg(any(feature = "v1_14_1", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14_1")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14_1")))]
#[doc(alias = "gst_aggregator_pad_has_buffer")]
fn has_buffer(&self) -> bool; fn has_buffer(&self) -> bool;
#[cfg(any(feature = "v1_14", feature = "dox"))] #[cfg(any(feature = "v1_14", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))]
#[doc(alias = "gst_aggregator_pad_is_eos")]
fn is_eos(&self) -> bool; fn is_eos(&self) -> bool;
#[cfg(any(feature = "v1_14", feature = "dox"))] #[cfg(any(feature = "v1_14", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))]
#[doc(alias = "gst_aggregator_pad_peek_buffer")]
fn peek_buffer(&self) -> Option<gst::Buffer>; fn peek_buffer(&self) -> Option<gst::Buffer>;
#[cfg(any(feature = "v1_14", feature = "dox"))] #[cfg(any(feature = "v1_14", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))]
#[doc(alias = "gst_aggregator_pad_pop_buffer")]
fn pop_buffer(&self) -> Option<gst::Buffer>; fn pop_buffer(&self) -> Option<gst::Buffer>;
#[cfg(any(feature = "v1_16", feature = "dox"))] #[cfg(any(feature = "v1_16", feature = "dox"))]

View file

@ -25,30 +25,42 @@ unsafe impl Sync for BaseParse {}
pub const NONE_BASE_PARSE: Option<&BaseParse> = None; pub const NONE_BASE_PARSE: Option<&BaseParse> = None;
pub trait BaseParseExt: 'static { 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; fn add_index_entry(&self, offset: u64, ts: gst::ClockTime, key: bool, force: bool) -> bool;
#[cfg(any(feature = "v1_12", feature = "dox"))] #[cfg(any(feature = "v1_12", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
#[doc(alias = "gst_base_parse_drain")]
fn drain(&self); fn drain(&self);
#[doc(alias = "gst_base_parse_merge_tags")]
fn merge_tags(&self, tags: Option<&gst::TagList>, mode: gst::TagMergeMode); 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); 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); 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); 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: gst::ClockTime); fn set_latency(&self, min_latency: gst::ClockTime, max_latency: gst::ClockTime);
#[doc(alias = "gst_base_parse_set_min_frame_size")]
fn set_min_frame_size(&self, min_size: u32); fn set_min_frame_size(&self, min_size: u32);
#[doc(alias = "gst_base_parse_set_passthrough")]
fn set_passthrough(&self, passthrough: bool); fn set_passthrough(&self, passthrough: bool);
#[doc(alias = "gst_base_parse_set_pts_interpolation")]
fn set_pts_interpolation(&self, pts_interpolate: bool); fn set_pts_interpolation(&self, pts_interpolate: bool);
#[doc(alias = "gst_base_parse_set_syncable")]
fn set_syncable(&self, syncable: bool); fn set_syncable(&self, syncable: bool);
#[doc(alias = "gst_base_parse_set_ts_at_offset")]
fn set_ts_at_offset(&self, offset: usize); fn set_ts_at_offset(&self, offset: usize);
fn get_property_disable_passthrough(&self) -> bool; fn get_property_disable_passthrough(&self) -> bool;

View file

@ -25,70 +25,98 @@ unsafe impl Sync for BaseSink {}
pub const NONE_BASE_SINK: Option<&BaseSink> = None; pub const NONE_BASE_SINK: Option<&BaseSink> = None;
pub trait BaseSinkExt: 'static { pub trait BaseSinkExt: 'static {
//#[doc(alias = "gst_base_sink_do_preroll")]
//fn do_preroll(&self, obj: /*Ignored*/&gst::MiniObject) -> gst::FlowReturn; //fn do_preroll(&self, obj: /*Ignored*/&gst::MiniObject) -> gst::FlowReturn;
#[doc(alias = "gst_base_sink_get_blocksize")]
fn get_blocksize(&self) -> u32; fn get_blocksize(&self) -> u32;
#[cfg(any(feature = "v1_12", feature = "dox"))] #[cfg(any(feature = "v1_12", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
#[doc(alias = "gst_base_sink_get_drop_out_of_segment")]
fn get_drop_out_of_segment(&self) -> bool; fn get_drop_out_of_segment(&self) -> bool;
#[doc(alias = "gst_base_sink_get_last_sample")]
fn get_last_sample(&self) -> Option<gst::Sample>; fn get_last_sample(&self) -> Option<gst::Sample>;
#[doc(alias = "gst_base_sink_get_latency")]
fn get_latency(&self) -> gst::ClockTime; fn get_latency(&self) -> gst::ClockTime;
#[doc(alias = "gst_base_sink_get_max_bitrate")]
fn get_max_bitrate(&self) -> u64; fn get_max_bitrate(&self) -> u64;
#[doc(alias = "gst_base_sink_get_max_lateness")]
fn get_max_lateness(&self) -> i64; fn get_max_lateness(&self) -> i64;
#[cfg(any(feature = "v1_16", feature = "dox"))] #[cfg(any(feature = "v1_16", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
#[doc(alias = "gst_base_sink_get_processing_deadline")]
fn get_processing_deadline(&self) -> gst::ClockTime; fn get_processing_deadline(&self) -> gst::ClockTime;
#[doc(alias = "gst_base_sink_get_render_delay")]
fn get_render_delay(&self) -> gst::ClockTime; fn get_render_delay(&self) -> gst::ClockTime;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_base_sink_get_stats")]
fn get_stats(&self) -> gst::Structure; fn get_stats(&self) -> gst::Structure;
#[doc(alias = "gst_base_sink_get_sync")]
fn get_sync(&self) -> bool; fn get_sync(&self) -> bool;
#[doc(alias = "gst_base_sink_get_throttle_time")]
fn get_throttle_time(&self) -> u64; fn get_throttle_time(&self) -> u64;
#[doc(alias = "gst_base_sink_get_ts_offset")]
fn get_ts_offset(&self) -> gst::ClockTimeDiff; fn get_ts_offset(&self) -> gst::ClockTimeDiff;
#[doc(alias = "gst_base_sink_is_async_enabled")]
fn is_async_enabled(&self) -> bool; fn is_async_enabled(&self) -> bool;
#[doc(alias = "gst_base_sink_is_last_sample_enabled")]
fn is_last_sample_enabled(&self) -> bool; fn is_last_sample_enabled(&self) -> bool;
#[doc(alias = "gst_base_sink_is_qos_enabled")]
fn is_qos_enabled(&self) -> bool; fn is_qos_enabled(&self) -> bool;
#[doc(alias = "gst_base_sink_set_async_enabled")]
fn set_async_enabled(&self, enabled: bool); fn set_async_enabled(&self, enabled: bool);
#[doc(alias = "gst_base_sink_set_blocksize")]
fn set_blocksize(&self, blocksize: u32); fn set_blocksize(&self, blocksize: u32);
#[cfg(any(feature = "v1_12", feature = "dox"))] #[cfg(any(feature = "v1_12", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
#[doc(alias = "gst_base_sink_set_drop_out_of_segment")]
fn set_drop_out_of_segment(&self, drop_out_of_segment: bool); fn set_drop_out_of_segment(&self, drop_out_of_segment: bool);
#[doc(alias = "gst_base_sink_set_last_sample_enabled")]
fn set_last_sample_enabled(&self, enabled: bool); fn set_last_sample_enabled(&self, enabled: bool);
#[doc(alias = "gst_base_sink_set_max_bitrate")]
fn set_max_bitrate(&self, max_bitrate: u64); fn set_max_bitrate(&self, max_bitrate: u64);
#[doc(alias = "gst_base_sink_set_max_lateness")]
fn set_max_lateness(&self, max_lateness: i64); fn set_max_lateness(&self, max_lateness: i64);
#[cfg(any(feature = "v1_16", feature = "dox"))] #[cfg(any(feature = "v1_16", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
#[doc(alias = "gst_base_sink_set_processing_deadline")]
fn set_processing_deadline(&self, processing_deadline: gst::ClockTime); fn set_processing_deadline(&self, processing_deadline: gst::ClockTime);
#[doc(alias = "gst_base_sink_set_qos_enabled")]
fn set_qos_enabled(&self, enabled: bool); fn set_qos_enabled(&self, enabled: bool);
#[doc(alias = "gst_base_sink_set_render_delay")]
fn set_render_delay(&self, delay: gst::ClockTime); fn set_render_delay(&self, delay: gst::ClockTime);
#[doc(alias = "gst_base_sink_set_sync")]
fn set_sync(&self, sync: bool); fn set_sync(&self, sync: bool);
#[doc(alias = "gst_base_sink_set_throttle_time")]
fn set_throttle_time(&self, throttle: u64); fn set_throttle_time(&self, throttle: u64);
#[doc(alias = "gst_base_sink_set_ts_offset")]
fn set_ts_offset(&self, offset: gst::ClockTimeDiff); fn set_ts_offset(&self, offset: gst::ClockTimeDiff);
fn get_property_async(&self) -> bool; fn get_property_async(&self) -> bool;

View file

@ -25,39 +25,55 @@ unsafe impl Sync for BaseSrc {}
pub const NONE_BASE_SRC: Option<&BaseSrc> = None; pub const NONE_BASE_SRC: Option<&BaseSrc> = None;
pub trait BaseSrcExt: 'static { pub trait BaseSrcExt: 'static {
//#[doc(alias = "gst_base_src_get_allocator")]
//fn get_allocator(&self, allocator: /*Ignored*/Option<gst::Allocator>, params: /*Ignored*/gst::AllocationParams); //fn get_allocator(&self, allocator: /*Ignored*/Option<gst::Allocator>, params: /*Ignored*/gst::AllocationParams);
#[doc(alias = "gst_base_src_get_blocksize")]
fn get_blocksize(&self) -> u32; fn get_blocksize(&self) -> u32;
#[doc(alias = "gst_base_src_get_buffer_pool")]
fn get_buffer_pool(&self) -> Option<gst::BufferPool>; fn get_buffer_pool(&self) -> Option<gst::BufferPool>;
#[doc(alias = "gst_base_src_get_do_timestamp")]
fn get_do_timestamp(&self) -> bool; fn get_do_timestamp(&self) -> bool;
#[doc(alias = "gst_base_src_is_async")]
fn is_async(&self) -> bool; fn is_async(&self) -> bool;
#[doc(alias = "gst_base_src_is_live")]
fn is_live(&self) -> bool; fn is_live(&self) -> bool;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_base_src_negotiate")]
fn negotiate(&self) -> bool; fn negotiate(&self) -> bool;
#[cfg_attr(feature = "v1_18", deprecated)] #[cfg_attr(feature = "v1_18", deprecated)]
#[doc(alias = "gst_base_src_new_seamless_segment")]
fn new_seamless_segment(&self, start: i64, stop: i64, time: i64) -> bool; fn new_seamless_segment(&self, start: i64, stop: i64, time: i64) -> bool;
#[doc(alias = "gst_base_src_set_async")]
fn set_async(&self, async_: bool); fn set_async(&self, async_: bool);
#[doc(alias = "gst_base_src_set_automatic_eos")]
fn set_automatic_eos(&self, automatic_eos: bool); fn set_automatic_eos(&self, automatic_eos: bool);
#[doc(alias = "gst_base_src_set_blocksize")]
fn set_blocksize(&self, blocksize: u32); fn set_blocksize(&self, blocksize: u32);
#[doc(alias = "gst_base_src_set_caps")]
fn set_caps(&self, caps: &gst::Caps) -> Result<(), glib::error::BoolError>; 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); fn set_do_timestamp(&self, timestamp: bool);
#[doc(alias = "gst_base_src_set_dynamic_size")]
fn set_dynamic_size(&self, dynamic: bool); fn set_dynamic_size(&self, dynamic: bool);
#[doc(alias = "gst_base_src_set_format")]
fn set_format(&self, format: gst::Format); fn set_format(&self, format: gst::Format);
#[doc(alias = "gst_base_src_set_live")]
fn set_live(&self, live: bool); fn set_live(&self, live: bool);
fn get_property_num_buffers(&self) -> i32; fn get_property_num_buffers(&self) -> i32;

View file

@ -25,36 +25,51 @@ unsafe impl Sync for BaseTransform {}
pub const NONE_BASE_TRANSFORM: Option<&BaseTransform> = None; pub const NONE_BASE_TRANSFORM: Option<&BaseTransform> = None;
pub trait BaseTransformExt: 'static { pub trait BaseTransformExt: 'static {
//#[doc(alias = "gst_base_transform_get_allocator")]
//fn get_allocator(&self, allocator: /*Ignored*/Option<gst::Allocator>, params: /*Ignored*/gst::AllocationParams); //fn get_allocator(&self, allocator: /*Ignored*/Option<gst::Allocator>, params: /*Ignored*/gst::AllocationParams);
#[doc(alias = "gst_base_transform_get_buffer_pool")]
fn get_buffer_pool(&self) -> Option<gst::BufferPool>; fn get_buffer_pool(&self) -> Option<gst::BufferPool>;
#[doc(alias = "gst_base_transform_is_in_place")]
fn is_in_place(&self) -> bool; fn is_in_place(&self) -> bool;
#[doc(alias = "gst_base_transform_is_passthrough")]
fn is_passthrough(&self) -> bool; fn is_passthrough(&self) -> bool;
#[doc(alias = "gst_base_transform_is_qos_enabled")]
fn is_qos_enabled(&self) -> bool; fn is_qos_enabled(&self) -> bool;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_base_transform_reconfigure")]
fn reconfigure(&self) -> bool; fn reconfigure(&self) -> bool;
#[doc(alias = "gst_base_transform_reconfigure_sink")]
fn reconfigure_sink(&self); fn reconfigure_sink(&self);
#[doc(alias = "gst_base_transform_reconfigure_src")]
fn reconfigure_src(&self); fn reconfigure_src(&self);
#[doc(alias = "gst_base_transform_set_gap_aware")]
fn set_gap_aware(&self, gap_aware: bool); fn set_gap_aware(&self, gap_aware: bool);
#[doc(alias = "gst_base_transform_set_in_place")]
fn set_in_place(&self, in_place: bool); fn set_in_place(&self, in_place: bool);
#[doc(alias = "gst_base_transform_set_passthrough")]
fn set_passthrough(&self, passthrough: bool); fn set_passthrough(&self, passthrough: bool);
#[doc(alias = "gst_base_transform_set_prefer_passthrough")]
fn set_prefer_passthrough(&self, prefer_passthrough: bool); fn set_prefer_passthrough(&self, prefer_passthrough: bool);
#[doc(alias = "gst_base_transform_set_qos_enabled")]
fn set_qos_enabled(&self, enabled: bool); fn set_qos_enabled(&self, enabled: bool);
#[doc(alias = "gst_base_transform_update_qos")]
fn update_qos(&self, proportion: f64, diff: gst::ClockTimeDiff, timestamp: gst::ClockTime); 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 update_src_caps(&self, updated_caps: &gst::Caps) -> Result<(), glib::error::BoolError>;
fn get_property_qos(&self) -> bool; fn get_property_qos(&self) -> bool;

View file

@ -41,7 +41,7 @@ impl ToGlib for AggregatorStartTimeSelection {
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstAggregatorStartTimeSelection> for AggregatorStartTimeSelection { impl FromGlib<ffi::GstAggregatorStartTimeSelection> for AggregatorStartTimeSelection {
fn from_glib(value: ffi::GstAggregatorStartTimeSelection) -> Self { unsafe fn from_glib(value: ffi::GstAggregatorStartTimeSelection) -> Self {
skip_assert_initialized!(); skip_assert_initialized!();
match value { match value {
0 => AggregatorStartTimeSelection::Zero, 0 => AggregatorStartTimeSelection::Zero,

View file

@ -26,7 +26,7 @@ impl ToGlib for BaseParseFrameFlags {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstBaseParseFrameFlags> for BaseParseFrameFlags { impl FromGlib<ffi::GstBaseParseFrameFlags> for BaseParseFrameFlags {
fn from_glib(value: ffi::GstBaseParseFrameFlags) -> BaseParseFrameFlags { unsafe fn from_glib(value: ffi::GstBaseParseFrameFlags) -> BaseParseFrameFlags {
skip_assert_initialized!(); skip_assert_initialized!();
BaseParseFrameFlags::from_bits_truncate(value) BaseParseFrameFlags::from_bits_truncate(value)
} }

View file

@ -5,6 +5,7 @@
use glib::object::IsA; use glib::object::IsA;
use glib::translate::*; use glib::translate::*;
#[doc(alias = "gst_type_find_helper")]
pub fn type_find_helper<P: IsA<gst::Pad>>( pub fn type_find_helper<P: IsA<gst::Pad>>(
src: &P, src: &P,
size: u64, size: u64,
@ -19,6 +20,7 @@ pub fn type_find_helper<P: IsA<gst::Pad>>(
} }
} }
#[doc(alias = "gst_type_find_helper_for_extension")]
pub fn type_find_helper_for_extension<P: IsA<gst::Object>>( pub fn type_find_helper_for_extension<P: IsA<gst::Object>>(
obj: Option<&P>, obj: Option<&P>,
extension: &str, extension: &str,
@ -33,12 +35,14 @@ pub fn type_find_helper_for_extension<P: IsA<gst::Object>>(
} }
} }
//#[doc(alias = "gst_type_find_helper_get_range")]
//pub fn type_find_helper_get_range<P: IsA<gst::Object>, Q: IsA<gst::Object>, R: FnMut(&gst::Object, Option<&gst::Object>, u64, u32, &gst::Buffer) -> gst::FlowReturn>(obj: &P, parent: Option<&Q>, func: R, size: u64, extension: Option<&str>) -> (Option<gst::Caps>, gst::TypeFindProbability) { //pub fn type_find_helper_get_range<P: IsA<gst::Object>, Q: IsA<gst::Object>, R: FnMut(&gst::Object, Option<&gst::Object>, u64, u32, &gst::Buffer) -> gst::FlowReturn>(obj: &P, parent: Option<&Q>, func: R, size: u64, extension: Option<&str>) -> (Option<gst::Caps>, gst::TypeFindProbability) {
// unsafe { TODO: call ffi:gst_type_find_helper_get_range() } // unsafe { TODO: call ffi:gst_type_find_helper_get_range() }
//} //}
//#[cfg(any(feature = "v1_14_3", feature = "dox"))] //#[cfg(any(feature = "v1_14_3", feature = "dox"))]
//#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14_3")))] //#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14_3")))]
//#[doc(alias = "gst_type_find_helper_get_range_full")]
//pub fn type_find_helper_get_range_full<P: IsA<gst::Object>, Q: IsA<gst::Object>, R: FnMut(&gst::Object, Option<&gst::Object>, u64, u32, &gst::Buffer) -> gst::FlowReturn>(obj: &P, parent: Option<&Q>, func: R, size: u64, extension: Option<&str>) -> (gst::FlowReturn, gst::Caps, gst::TypeFindProbability) { //pub fn type_find_helper_get_range_full<P: IsA<gst::Object>, Q: IsA<gst::Object>, R: FnMut(&gst::Object, Option<&gst::Object>, u64, u32, &gst::Buffer) -> gst::FlowReturn>(obj: &P, parent: Option<&Q>, func: R, size: u64, extension: Option<&str>) -> (gst::FlowReturn, gst::Caps, gst::TypeFindProbability) {
// unsafe { TODO: call ffi:gst_type_find_helper_get_range_full() } // unsafe { TODO: call ffi:gst_type_find_helper_get_range_full() }
//} //}

View file

@ -1,2 +1,2 @@
Generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) Generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#[cfg(not(feature = "dox"))] #[cfg(not(feature = "dox"))]

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)] #![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
use gstreamer_base_sys::*; use gstreamer_base_sys::*;

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#include "manual.h" #include "manual.h"

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#include "manual.h" #include "manual.h"

View file

@ -20,11 +20,13 @@ glib::glib_wrapper! {
} }
impl TestClock { impl TestClock {
#[doc(alias = "gst_test_clock_new")]
pub fn new() -> TestClock { pub fn new() -> TestClock {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { gst::Clock::from_glib_full(ffi::gst_test_clock_new()).unsafe_cast() } unsafe { gst::Clock::from_glib_full(ffi::gst_test_clock_new()).unsafe_cast() }
} }
#[doc(alias = "gst_test_clock_new_with_start_time")]
pub fn with_start_time(start_time: gst::ClockTime) -> TestClock { pub fn with_start_time(start_time: gst::ClockTime) -> TestClock {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { unsafe {
@ -35,16 +37,19 @@ impl TestClock {
} }
} }
#[doc(alias = "gst_test_clock_advance_time")]
pub fn advance_time(&self, delta: gst::ClockTimeDiff) { pub fn advance_time(&self, delta: gst::ClockTimeDiff) {
unsafe { unsafe {
ffi::gst_test_clock_advance_time(self.to_glib_none().0, delta); ffi::gst_test_clock_advance_time(self.to_glib_none().0, delta);
} }
} }
#[doc(alias = "gst_test_clock_crank")]
pub fn crank(&self) -> bool { pub fn crank(&self) -> bool {
unsafe { from_glib(ffi::gst_test_clock_crank(self.to_glib_none().0)) } unsafe { from_glib(ffi::gst_test_clock_crank(self.to_glib_none().0)) }
} }
#[doc(alias = "gst_test_clock_get_next_entry_time")]
pub fn get_next_entry_time(&self) -> gst::ClockTime { pub fn get_next_entry_time(&self) -> gst::ClockTime {
unsafe { unsafe {
from_glib(ffi::gst_test_clock_get_next_entry_time( from_glib(ffi::gst_test_clock_get_next_entry_time(
@ -53,32 +58,39 @@ impl TestClock {
} }
} }
//#[doc(alias = "gst_test_clock_has_id")]
//pub fn has_id(&self, id: /*Ignored*/gst::ClockID) -> bool { //pub fn has_id(&self, id: /*Ignored*/gst::ClockID) -> bool {
// unsafe { TODO: call ffi:gst_test_clock_has_id() } // unsafe { TODO: call ffi:gst_test_clock_has_id() }
//} //}
#[doc(alias = "gst_test_clock_peek_id_count")]
pub fn peek_id_count(&self) -> u32 { pub fn peek_id_count(&self) -> u32 {
unsafe { ffi::gst_test_clock_peek_id_count(self.to_glib_none().0) } unsafe { ffi::gst_test_clock_peek_id_count(self.to_glib_none().0) }
} }
//#[doc(alias = "gst_test_clock_peek_next_pending_id")]
//pub fn peek_next_pending_id(&self, pending_id: /*Ignored*/&mut gst::ClockID) -> bool { //pub fn peek_next_pending_id(&self, pending_id: /*Ignored*/&mut gst::ClockID) -> bool {
// unsafe { TODO: call ffi:gst_test_clock_peek_next_pending_id() } // unsafe { TODO: call ffi:gst_test_clock_peek_next_pending_id() }
//} //}
//#[cfg(any(feature = "v1_18", feature = "dox"))] //#[cfg(any(feature = "v1_18", feature = "dox"))]
//#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] //#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
//#[doc(alias = "gst_test_clock_process_id")]
//pub fn process_id(&self, pending_id: /*Ignored*/gst::ClockID) -> bool { //pub fn process_id(&self, pending_id: /*Ignored*/gst::ClockID) -> bool {
// unsafe { TODO: call ffi:gst_test_clock_process_id() } // unsafe { TODO: call ffi:gst_test_clock_process_id() }
//} //}
//#[doc(alias = "gst_test_clock_process_id_list")]
//pub fn process_id_list(&self, pending_list: /*Ignored*/&[&gst::ClockID]) -> u32 { //pub fn process_id_list(&self, pending_list: /*Ignored*/&[&gst::ClockID]) -> u32 {
// unsafe { TODO: call ffi:gst_test_clock_process_id_list() } // unsafe { TODO: call ffi:gst_test_clock_process_id_list() }
//} //}
//#[doc(alias = "gst_test_clock_process_next_clock_id")]
//pub fn process_next_clock_id(&self) -> /*Ignored*/Option<gst::ClockID> { //pub fn process_next_clock_id(&self) -> /*Ignored*/Option<gst::ClockID> {
// unsafe { TODO: call ffi:gst_test_clock_process_next_clock_id() } // unsafe { TODO: call ffi:gst_test_clock_process_next_clock_id() }
//} //}
#[doc(alias = "gst_test_clock_set_time")]
pub fn set_time(&self, new_time: gst::ClockTime) { pub fn set_time(&self, new_time: gst::ClockTime) {
unsafe { unsafe {
ffi::gst_test_clock_set_time(self.to_glib_none().0, new_time.to_glib()); ffi::gst_test_clock_set_time(self.to_glib_none().0, new_time.to_glib());
@ -87,18 +99,22 @@ impl TestClock {
//#[cfg(any(feature = "v1_16", feature = "dox"))] //#[cfg(any(feature = "v1_16", feature = "dox"))]
//#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))] //#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
//#[doc(alias = "gst_test_clock_timed_wait_for_multiple_pending_ids")]
//pub fn timed_wait_for_multiple_pending_ids(&self, count: u32, timeout_ms: u32, pending_list: /*Unimplemented*/Vec<gst::ClockID>) -> bool { //pub fn timed_wait_for_multiple_pending_ids(&self, count: u32, timeout_ms: u32, pending_list: /*Unimplemented*/Vec<gst::ClockID>) -> bool {
// unsafe { TODO: call ffi:gst_test_clock_timed_wait_for_multiple_pending_ids() } // unsafe { TODO: call ffi:gst_test_clock_timed_wait_for_multiple_pending_ids() }
//} //}
//#[doc(alias = "gst_test_clock_wait_for_multiple_pending_ids")]
//pub fn wait_for_multiple_pending_ids(&self, count: u32, pending_list: /*Unimplemented*/Vec<gst::ClockID>) { //pub fn wait_for_multiple_pending_ids(&self, count: u32, pending_list: /*Unimplemented*/Vec<gst::ClockID>) {
// unsafe { TODO: call ffi:gst_test_clock_wait_for_multiple_pending_ids() } // unsafe { TODO: call ffi:gst_test_clock_wait_for_multiple_pending_ids() }
//} //}
//#[doc(alias = "gst_test_clock_wait_for_next_pending_id")]
//pub fn wait_for_next_pending_id(&self, pending_id: /*Ignored*/&mut gst::ClockID) { //pub fn wait_for_next_pending_id(&self, pending_id: /*Ignored*/&mut gst::ClockID) {
// unsafe { TODO: call ffi:gst_test_clock_wait_for_next_pending_id() } // unsafe { TODO: call ffi:gst_test_clock_wait_for_next_pending_id() }
//} //}
#[doc(alias = "gst_test_clock_wait_for_pending_id_count")]
pub fn wait_for_pending_id_count(&self, count: u32) { pub fn wait_for_pending_id_count(&self, count: u32) {
unsafe { unsafe {
ffi::gst_test_clock_wait_for_pending_id_count(self.to_glib_none().0, count); ffi::gst_test_clock_wait_for_pending_id_count(self.to_glib_none().0, count);
@ -145,6 +161,7 @@ impl TestClock {
} }
} }
//#[doc(alias = "gst_test_clock_id_list_get_latest_time")]
//pub fn id_list_get_latest_time(pending_list: /*Ignored*/&[&gst::ClockID]) -> gst::ClockTime { //pub fn id_list_get_latest_time(pending_list: /*Ignored*/&[&gst::ClockID]) -> gst::ClockTime {
// unsafe { TODO: call ffi:gst_test_clock_id_list_get_latest_time() } // unsafe { TODO: call ffi:gst_test_clock_id_list_get_latest_time() }
//} //}

View file

@ -1,2 +1,2 @@
Generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) Generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#[cfg(not(feature = "dox"))] #[cfg(not(feature = "dox"))]

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)] #![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
use gstreamer_check_sys::*; use gstreamer_check_sys::*;

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#include "manual.h" #include "manual.h"

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#include "manual.h" #include "manual.h"

View file

@ -20,6 +20,7 @@ glib::glib_wrapper! {
} }
impl ARGBControlBinding { impl ARGBControlBinding {
#[doc(alias = "gst_argb_control_binding_new")]
pub fn new< pub fn new<
P: IsA<gst::Object>, P: IsA<gst::Object>,
Q: IsA<gst::ControlSource>, Q: IsA<gst::ControlSource>,

View file

@ -20,6 +20,7 @@ glib::glib_wrapper! {
} }
impl DirectControlBinding { impl DirectControlBinding {
#[doc(alias = "gst_direct_control_binding_new")]
pub fn new<P: IsA<gst::Object>, Q: IsA<gst::ControlSource>>( pub fn new<P: IsA<gst::Object>, Q: IsA<gst::ControlSource>>(
object: &P, object: &P,
property_name: &str, property_name: &str,
@ -36,6 +37,7 @@ impl DirectControlBinding {
} }
} }
#[doc(alias = "gst_direct_control_binding_new_absolute")]
pub fn new_absolute<P: IsA<gst::Object>, Q: IsA<gst::ControlSource>>( pub fn new_absolute<P: IsA<gst::Object>, Q: IsA<gst::ControlSource>>(
object: &P, object: &P,
property_name: &str, property_name: &str,

View file

@ -37,7 +37,7 @@ impl ToGlib for InterpolationMode {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstInterpolationMode> for InterpolationMode { impl FromGlib<ffi::GstInterpolationMode> for InterpolationMode {
fn from_glib(value: ffi::GstInterpolationMode) -> Self { unsafe fn from_glib(value: ffi::GstInterpolationMode) -> Self {
skip_assert_initialized!(); skip_assert_initialized!();
match value { match value {
0 => InterpolationMode::None, 0 => InterpolationMode::None,
@ -103,7 +103,7 @@ impl ToGlib for LFOWaveform {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstLFOWaveform> for LFOWaveform { impl FromGlib<ffi::GstLFOWaveform> for LFOWaveform {
fn from_glib(value: ffi::GstLFOWaveform) -> Self { unsafe fn from_glib(value: ffi::GstLFOWaveform) -> Self {
skip_assert_initialized!(); skip_assert_initialized!();
match value { match value {
0 => LFOWaveform::Sine, 0 => LFOWaveform::Sine,

View file

@ -22,6 +22,7 @@ glib::glib_wrapper! {
} }
impl InterpolationControlSource { impl InterpolationControlSource {
#[doc(alias = "gst_interpolation_control_source_new")]
pub fn new() -> InterpolationControlSource { pub fn new() -> InterpolationControlSource {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { unsafe {

View file

@ -21,6 +21,7 @@ glib::glib_wrapper! {
} }
impl LFOControlSource { impl LFOControlSource {
#[doc(alias = "gst_lfo_control_source_new")]
pub fn new() -> LFOControlSource { pub fn new() -> LFOControlSource {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { unsafe {

View file

@ -21,6 +21,7 @@ glib::glib_wrapper! {
impl ProxyControlBinding { impl ProxyControlBinding {
#[cfg(any(feature = "v1_12", feature = "dox"))] #[cfg(any(feature = "v1_12", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
#[doc(alias = "gst_proxy_control_binding_new")]
pub fn new<P: IsA<gst::Object>, Q: IsA<gst::Object>>( pub fn new<P: IsA<gst::Object>, Q: IsA<gst::Object>>(
object: &P, object: &P,
property_name: &str, property_name: &str,

View file

@ -25,18 +25,25 @@ unsafe impl Sync for TimedValueControlSource {}
pub const NONE_TIMED_VALUE_CONTROL_SOURCE: Option<&TimedValueControlSource> = None; pub const NONE_TIMED_VALUE_CONTROL_SOURCE: Option<&TimedValueControlSource> = None;
pub trait TimedValueControlSourceExt: 'static { pub trait TimedValueControlSourceExt: 'static {
//#[doc(alias = "gst_timed_value_control_source_find_control_point_iter")]
//fn find_control_point_iter(&self, timestamp: gst::ClockTime) -> /*Ignored*/Option<glib::SequenceIter>; //fn find_control_point_iter(&self, timestamp: gst::ClockTime) -> /*Ignored*/Option<glib::SequenceIter>;
//#[doc(alias = "gst_timed_value_control_source_get_all")]
//fn get_all(&self) -> /*Ignored*/Vec<gst::TimedValue>; //fn get_all(&self) -> /*Ignored*/Vec<gst::TimedValue>;
#[doc(alias = "gst_timed_value_control_source_get_count")]
fn get_count(&self) -> i32; fn get_count(&self) -> i32;
#[doc(alias = "gst_timed_value_control_source_set")]
fn set(&self, timestamp: gst::ClockTime, value: f64) -> bool; 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; //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; fn unset(&self, timestamp: gst::ClockTime) -> bool;
#[doc(alias = "gst_timed_value_control_source_unset_all")]
fn unset_all(&self); fn unset_all(&self);
fn connect_value_added<F: Fn(&Self, &ControlPoint) + Send + Sync + 'static>( fn connect_value_added<F: Fn(&Self, &ControlPoint) + Send + Sync + 'static>(

View file

@ -21,6 +21,7 @@ glib::glib_wrapper! {
} }
impl TriggerControlSource { impl TriggerControlSource {
#[doc(alias = "gst_trigger_control_source_new")]
pub fn new() -> TriggerControlSource { pub fn new() -> TriggerControlSource {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { unsafe {

View file

@ -1,2 +1,2 @@
Generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) Generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#[cfg(not(feature = "dox"))] #[cfg(not(feature = "dox"))]

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)] #![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
use gstreamer_controller_sys::*; use gstreamer_controller_sys::*;

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#include "manual.h" #include "manual.h"

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#include "manual.h" #include "manual.h"

View file

@ -22,6 +22,7 @@ glib::glib_wrapper! {
} }
impl Asset { impl Asset {
#[doc(alias = "ges_asset_needs_reload")]
pub fn needs_reload(extractable_type: glib::types::Type, id: Option<&str>) -> bool { pub fn needs_reload(extractable_type: glib::types::Type, id: Option<&str>) -> bool {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { unsafe {
@ -32,6 +33,7 @@ impl Asset {
} }
} }
#[doc(alias = "ges_asset_request")]
pub fn request( pub fn request(
extractable_type: glib::types::Type, extractable_type: glib::types::Type,
id: Option<&str>, id: Option<&str>,
@ -49,6 +51,7 @@ impl Asset {
} }
} }
#[doc(alias = "ges_asset_request_async")]
pub fn request_async< pub fn request_async<
P: IsA<gio::Cancellable>, P: IsA<gio::Cancellable>,
Q: FnOnce(Result<Asset, glib::Error>) + Send + 'static, Q: FnOnce(Result<Asset, glib::Error>) + Send + 'static,
@ -114,22 +117,31 @@ impl Asset {
pub const NONE_ASSET: Option<&Asset> = None; pub const NONE_ASSET: Option<&Asset> = None;
pub trait AssetExt: 'static { pub trait AssetExt: 'static {
#[doc(alias = "ges_asset_extract")]
fn extract(&self) -> Result<Extractable, glib::Error>; fn extract(&self) -> Result<Extractable, glib::Error>;
#[doc(alias = "ges_asset_get_error")]
fn get_error(&self) -> Option<glib::Error>; fn get_error(&self) -> Option<glib::Error>;
#[doc(alias = "ges_asset_get_extractable_type")]
fn get_extractable_type(&self) -> glib::types::Type; fn get_extractable_type(&self) -> glib::types::Type;
#[doc(alias = "ges_asset_get_id")]
fn get_id(&self) -> Option<glib::GString>; fn get_id(&self) -> Option<glib::GString>;
#[doc(alias = "ges_asset_get_proxy")]
fn get_proxy(&self) -> Option<Asset>; fn get_proxy(&self) -> Option<Asset>;
#[doc(alias = "ges_asset_get_proxy_target")]
fn get_proxy_target(&self) -> Option<Asset>; fn get_proxy_target(&self) -> Option<Asset>;
#[doc(alias = "ges_asset_list_proxies")]
fn list_proxies(&self) -> Vec<Asset>; fn list_proxies(&self) -> Vec<Asset>;
#[doc(alias = "ges_asset_set_proxy")]
fn set_proxy<P: IsA<Asset>>(&self, proxy: Option<&P>) -> Result<(), glib::error::BoolError>; fn set_proxy<P: IsA<Asset>>(&self, proxy: Option<&P>) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_asset_unproxy")]
fn unproxy<P: IsA<Asset>>(&self, proxy: &P) -> Result<(), glib::error::BoolError>; fn unproxy<P: IsA<Asset>>(&self, proxy: &P) -> Result<(), glib::error::BoolError>;
fn connect_property_proxy_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId; fn connect_property_proxy_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;

View file

@ -21,14 +21,17 @@ pub const NONE_BASE_EFFECT: Option<&BaseEffect> = None;
pub trait BaseEffectExt: 'static { pub trait BaseEffectExt: 'static {
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_base_effect_is_time_effect")]
fn is_time_effect(&self) -> bool; fn is_time_effect(&self) -> bool;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_base_effect_register_time_property")]
fn register_time_property(&self, child_property_name: &str) -> bool; fn register_time_property(&self, child_property_name: &str) -> bool;
//#[cfg(any(feature = "v1_18", feature = "dox"))] //#[cfg(any(feature = "v1_18", feature = "dox"))]
//#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] //#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
//#[doc(alias = "ges_base_effect_set_time_translation_funcs")]
//fn set_time_translation_funcs(&self, source_to_sink_func: /*Unimplemented*/Fn(&BaseEffect, gst::ClockTime, /*Unimplemented*/HashTable TypeId { ns_id: 0, id: 28 }/TypeId { ns_id: 3, id: 11 }) -> gst::ClockTime, sink_to_source_func: /*Unimplemented*/Fn(&BaseEffect, gst::ClockTime, /*Unimplemented*/HashTable TypeId { ns_id: 0, id: 28 }/TypeId { ns_id: 3, id: 11 }) -> gst::ClockTime, user_data: /*Unimplemented*/Option<Fundamental: Pointer>) -> bool; //fn set_time_translation_funcs(&self, source_to_sink_func: /*Unimplemented*/Fn(&BaseEffect, gst::ClockTime, /*Unimplemented*/HashTable TypeId { ns_id: 0, id: 28 }/TypeId { ns_id: 3, id: 11 }) -> gst::ClockTime, sink_to_source_func: /*Unimplemented*/Fn(&BaseEffect, gst::ClockTime, /*Unimplemented*/HashTable TypeId { ns_id: 0, id: 28 }/TypeId { ns_id: 3, id: 11 }) -> gst::ClockTime, user_data: /*Unimplemented*/Option<Fundamental: Pointer>) -> bool;
} }

View file

@ -36,10 +36,12 @@ glib::glib_wrapper! {
pub const NONE_CLIP: Option<&Clip> = None; pub const NONE_CLIP: Option<&Clip> = None;
pub trait ClipExt: 'static { pub trait ClipExt: 'static {
#[doc(alias = "ges_clip_add_asset")]
fn add_asset<P: IsA<Asset>>(&self, asset: &P) -> Result<TrackElement, glib::BoolError>; fn add_asset<P: IsA<Asset>>(&self, asset: &P) -> Result<TrackElement, glib::BoolError>;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_add_child_to_track")]
fn add_child_to_track<P: IsA<TrackElement>, Q: IsA<Track>>( fn add_child_to_track<P: IsA<TrackElement>, Q: IsA<Track>>(
&self, &self,
child: &P, child: &P,
@ -48,15 +50,18 @@ pub trait ClipExt: 'static {
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_add_top_effect")]
fn add_top_effect<P: IsA<BaseEffect>>(&self, effect: &P, index: i32) fn add_top_effect<P: IsA<BaseEffect>>(&self, effect: &P, index: i32)
-> Result<(), glib::Error>; -> Result<(), glib::Error>;
#[doc(alias = "ges_clip_find_track_element")]
fn find_track_element<P: IsA<Track>>( fn find_track_element<P: IsA<Track>>(
&self, &self,
track: Option<&P>, track: Option<&P>,
type_: glib::types::Type, type_: glib::types::Type,
) -> Option<TrackElement>; ) -> Option<TrackElement>;
#[doc(alias = "ges_clip_find_track_elements")]
fn find_track_elements<P: IsA<Track>>( fn find_track_elements<P: IsA<Track>>(
&self, &self,
track: Option<&P>, track: Option<&P>,
@ -66,22 +71,27 @@ pub trait ClipExt: 'static {
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_get_duration_limit")]
fn get_duration_limit(&self) -> gst::ClockTime; fn get_duration_limit(&self) -> gst::ClockTime;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_get_internal_time_from_timeline_time")]
fn get_internal_time_from_timeline_time<P: IsA<TrackElement>>( fn get_internal_time_from_timeline_time<P: IsA<TrackElement>>(
&self, &self,
child: &P, child: &P,
timeline_time: gst::ClockTime, timeline_time: gst::ClockTime,
) -> Result<gst::ClockTime, glib::Error>; ) -> Result<gst::ClockTime, glib::Error>;
#[doc(alias = "ges_clip_get_layer")]
fn get_layer(&self) -> Option<Layer>; fn get_layer(&self) -> Option<Layer>;
#[doc(alias = "ges_clip_get_supported_formats")]
fn get_supported_formats(&self) -> TrackType; fn get_supported_formats(&self) -> TrackType;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_get_timeline_time_from_internal_time")]
fn get_timeline_time_from_internal_time<P: IsA<TrackElement>>( fn get_timeline_time_from_internal_time<P: IsA<TrackElement>>(
&self, &self,
child: &P, child: &P,
@ -90,29 +100,38 @@ pub trait ClipExt: 'static {
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_get_timeline_time_from_source_frame")]
fn get_timeline_time_from_source_frame( fn get_timeline_time_from_source_frame(
&self, &self,
frame_number: FrameNumber, frame_number: FrameNumber,
) -> Result<gst::ClockTime, glib::Error>; ) -> Result<gst::ClockTime, glib::Error>;
#[doc(alias = "ges_clip_get_top_effect_index")]
fn get_top_effect_index<P: IsA<BaseEffect>>(&self, effect: &P) -> i32; fn get_top_effect_index<P: IsA<BaseEffect>>(&self, effect: &P) -> i32;
#[doc(alias = "ges_clip_get_top_effect_position")]
fn get_top_effect_position<P: IsA<BaseEffect>>(&self, effect: &P) -> i32; fn get_top_effect_position<P: IsA<BaseEffect>>(&self, effect: &P) -> i32;
#[doc(alias = "ges_clip_get_top_effects")]
fn get_top_effects(&self) -> Vec<TrackElement>; fn get_top_effects(&self) -> Vec<TrackElement>;
#[doc(alias = "ges_clip_move_to_layer")]
fn move_to_layer<P: IsA<Layer>>(&self, layer: &P) -> Result<(), glib::error::BoolError>; fn move_to_layer<P: IsA<Layer>>(&self, layer: &P) -> Result<(), glib::error::BoolError>;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_move_to_layer_full")]
fn move_to_layer_full<P: IsA<Layer>>(&self, layer: &P) -> Result<(), glib::Error>; fn move_to_layer_full<P: IsA<Layer>>(&self, layer: &P) -> Result<(), glib::Error>;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_remove_top_effect")]
fn remove_top_effect<P: IsA<BaseEffect>>(&self, effect: &P) -> Result<(), glib::Error>; fn remove_top_effect<P: IsA<BaseEffect>>(&self, effect: &P) -> Result<(), glib::Error>;
#[doc(alias = "ges_clip_set_supported_formats")]
fn set_supported_formats(&self, supportedformats: TrackType); fn set_supported_formats(&self, supportedformats: TrackType);
#[doc(alias = "ges_clip_set_top_effect_index")]
fn set_top_effect_index<P: IsA<BaseEffect>>( fn set_top_effect_index<P: IsA<BaseEffect>>(
&self, &self,
effect: &P, effect: &P,
@ -121,22 +140,26 @@ pub trait ClipExt: 'static {
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_set_top_effect_index_full")]
fn set_top_effect_index_full<P: IsA<BaseEffect>>( fn set_top_effect_index_full<P: IsA<BaseEffect>>(
&self, &self,
effect: &P, effect: &P,
newindex: u32, newindex: u32,
) -> Result<(), glib::Error>; ) -> Result<(), glib::Error>;
#[doc(alias = "ges_clip_set_top_effect_priority")]
fn set_top_effect_priority<P: IsA<BaseEffect>>( fn set_top_effect_priority<P: IsA<BaseEffect>>(
&self, &self,
effect: &P, effect: &P,
newpriority: u32, newpriority: u32,
) -> Result<(), glib::error::BoolError>; ) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_clip_split")]
fn split(&self, position: u64) -> Result<Clip, glib::BoolError>; fn split(&self, position: u64) -> Result<Clip, glib::BoolError>;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_clip_split_full")]
fn split_full(&self, position: u64) -> Result<Option<Clip>, glib::Error>; fn split_full(&self, position: u64) -> Result<Option<Clip>, glib::Error>;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]

View file

@ -25,6 +25,7 @@ glib::glib_wrapper! {
} }
impl Container { impl Container {
#[doc(alias = "ges_container_group")]
pub fn group(containers: &[Container]) -> Option<Container> { pub fn group(containers: &[Container]) -> Option<Container> {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { from_glib_none(ffi::ges_container_group(containers.to_glib_none().0)) } unsafe { from_glib_none(ffi::ges_container_group(containers.to_glib_none().0)) }
@ -34,9 +35,11 @@ impl Container {
pub const NONE_CONTAINER: Option<&Container> = None; pub const NONE_CONTAINER: Option<&Container> = None;
pub trait GESContainerExt: 'static { pub trait GESContainerExt: 'static {
#[doc(alias = "ges_container_add")]
fn add<P: IsA<TimelineElement>>(&self, child: &P) -> Result<(), glib::error::BoolError>; fn add<P: IsA<TimelineElement>>(&self, child: &P) -> Result<(), glib::error::BoolError>;
#[cfg_attr(feature = "v1_18", deprecated)] #[cfg_attr(feature = "v1_18", deprecated)]
#[doc(alias = "ges_container_edit")]
fn edit( fn edit(
&self, &self,
layers: &[Layer], layers: &[Layer],
@ -46,10 +49,13 @@ pub trait GESContainerExt: 'static {
position: u64, position: u64,
) -> Result<(), glib::error::BoolError>; ) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_container_get_children")]
fn get_children(&self, recursive: bool) -> Vec<TimelineElement>; fn get_children(&self, recursive: bool) -> Vec<TimelineElement>;
#[doc(alias = "ges_container_remove")]
fn remove<P: IsA<TimelineElement>>(&self, child: &P) -> Result<(), glib::error::BoolError>; fn remove<P: IsA<TimelineElement>>(&self, child: &P) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_container_ungroup")]
fn ungroup(&self, recursive: bool) -> Vec<Container>; fn ungroup(&self, recursive: bool) -> Vec<Container>;
fn get_property_height(&self) -> u32; fn get_property_height(&self) -> u32;

View file

@ -19,6 +19,7 @@ glib::glib_wrapper! {
} }
impl Effect { impl Effect {
#[doc(alias = "ges_effect_new")]
pub fn new(bin_description: &str) -> Result<Effect, glib::BoolError> { pub fn new(bin_description: &str) -> Result<Effect, glib::BoolError> {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { unsafe {

View file

@ -66,7 +66,7 @@ impl ToGlib for Edge {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GESEdge> for Edge { impl FromGlib<ffi::GESEdge> for Edge {
fn from_glib(value: ffi::GESEdge) -> Self { unsafe fn from_glib(value: ffi::GESEdge) -> Self {
skip_assert_initialized!(); skip_assert_initialized!();
match value { match value {
0 => Edge::Start, 0 => Edge::Start,
@ -156,7 +156,7 @@ impl ToGlib for EditMode {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GESEditMode> for EditMode { impl FromGlib<ffi::GESEditMode> for EditMode {
fn from_glib(value: ffi::GESEditMode) -> Self { unsafe fn from_glib(value: ffi::GESEditMode) -> Self {
skip_assert_initialized!(); skip_assert_initialized!();
match value { match value {
0 => EditMode::Normal, 0 => EditMode::Normal,

View file

@ -17,10 +17,13 @@ glib::glib_wrapper! {
pub const NONE_EXTRACTABLE: Option<&Extractable> = None; pub const NONE_EXTRACTABLE: Option<&Extractable> = None;
pub trait ExtractableExt: 'static { pub trait ExtractableExt: 'static {
#[doc(alias = "ges_extractable_get_asset")]
fn get_asset(&self) -> Option<Asset>; fn get_asset(&self) -> Option<Asset>;
#[doc(alias = "ges_extractable_get_id")]
fn get_id(&self) -> Option<glib::GString>; fn get_id(&self) -> Option<glib::GString>;
#[doc(alias = "ges_extractable_set_asset")]
fn set_asset<P: IsA<Asset>>(&self, asset: &P) -> Result<(), glib::error::BoolError>; fn set_asset<P: IsA<Asset>>(&self, asset: &P) -> Result<(), glib::error::BoolError>;
} }

View file

@ -33,7 +33,7 @@ impl ToGlib for PipelineFlags {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GESPipelineFlags> for PipelineFlags { impl FromGlib<ffi::GESPipelineFlags> for PipelineFlags {
fn from_glib(value: ffi::GESPipelineFlags) -> PipelineFlags { unsafe fn from_glib(value: ffi::GESPipelineFlags) -> PipelineFlags {
skip_assert_initialized!(); skip_assert_initialized!();
PipelineFlags::from_bits_truncate(value) PipelineFlags::from_bits_truncate(value)
} }
@ -105,7 +105,7 @@ impl ToGlib for TrackType {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GESTrackType> for TrackType { impl FromGlib<ffi::GESTrackType> for TrackType {
fn from_glib(value: ffi::GESTrackType) -> TrackType { unsafe fn from_glib(value: ffi::GESTrackType) -> TrackType {
skip_assert_initialized!(); skip_assert_initialized!();
TrackType::from_bits_truncate(value) TrackType::from_bits_truncate(value)
} }

View file

@ -23,6 +23,7 @@ glib::glib_wrapper! {
} }
impl Group { impl Group {
#[doc(alias = "ges_group_new")]
pub fn new() -> Group { pub fn new() -> Group {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { from_glib_none(ffi::ges_group_new()) } unsafe { from_glib_none(ffi::ges_group_new()) }

View file

@ -30,6 +30,7 @@ glib::glib_wrapper! {
} }
impl Layer { impl Layer {
#[doc(alias = "ges_layer_new")]
pub fn new() -> Layer { pub fn new() -> Layer {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { from_glib_none(ffi::ges_layer_new()) } unsafe { from_glib_none(ffi::ges_layer_new()) }
@ -45,6 +46,7 @@ impl Default for Layer {
pub const NONE_LAYER: Option<&Layer> = None; pub const NONE_LAYER: Option<&Layer> = None;
pub trait LayerExt: 'static { pub trait LayerExt: 'static {
#[doc(alias = "ges_layer_add_asset")]
fn add_asset<P: IsA<Asset>>( fn add_asset<P: IsA<Asset>>(
&self, &self,
asset: &P, asset: &P,
@ -56,6 +58,7 @@ pub trait LayerExt: 'static {
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_layer_add_asset_full")]
fn add_asset_full<P: IsA<Asset>>( fn add_asset_full<P: IsA<Asset>>(
&self, &self,
asset: &P, asset: &P,
@ -65,41 +68,56 @@ pub trait LayerExt: 'static {
track_types: TrackType, track_types: TrackType,
) -> Result<Clip, glib::Error>; ) -> Result<Clip, glib::Error>;
#[doc(alias = "ges_layer_add_clip")]
fn add_clip<P: IsA<Clip>>(&self, clip: &P) -> Result<(), glib::error::BoolError>; fn add_clip<P: IsA<Clip>>(&self, clip: &P) -> Result<(), glib::error::BoolError>;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_layer_add_clip_full")]
fn add_clip_full<P: IsA<Clip>>(&self, clip: &P) -> Result<(), glib::Error>; fn add_clip_full<P: IsA<Clip>>(&self, clip: &P) -> Result<(), glib::Error>;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_layer_get_active_for_track")]
fn get_active_for_track<P: IsA<Track>>(&self, track: &P) -> bool; fn get_active_for_track<P: IsA<Track>>(&self, track: &P) -> bool;
#[doc(alias = "ges_layer_get_auto_transition")]
fn get_auto_transition(&self) -> bool; fn get_auto_transition(&self) -> bool;
#[doc(alias = "ges_layer_get_clips")]
fn get_clips(&self) -> Vec<Clip>; fn get_clips(&self) -> Vec<Clip>;
#[doc(alias = "ges_layer_get_clips_in_interval")]
fn get_clips_in_interval(&self, start: gst::ClockTime, end: gst::ClockTime) -> Vec<Clip>; fn get_clips_in_interval(&self, start: gst::ClockTime, end: gst::ClockTime) -> Vec<Clip>;
#[doc(alias = "ges_layer_get_duration")]
fn get_duration(&self) -> gst::ClockTime; fn get_duration(&self) -> gst::ClockTime;
#[doc(alias = "ges_layer_get_priority")]
fn get_priority(&self) -> u32; fn get_priority(&self) -> u32;
#[doc(alias = "ges_layer_get_timeline")]
fn get_timeline(&self) -> Option<Timeline>; fn get_timeline(&self) -> Option<Timeline>;
#[doc(alias = "ges_layer_is_empty")]
fn is_empty(&self) -> bool; fn is_empty(&self) -> bool;
#[doc(alias = "ges_layer_remove_clip")]
fn remove_clip<P: IsA<Clip>>(&self, clip: &P) -> Result<(), glib::error::BoolError>; fn remove_clip<P: IsA<Clip>>(&self, clip: &P) -> Result<(), glib::error::BoolError>;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_layer_set_active_for_tracks")]
fn set_active_for_tracks(&self, active: bool, tracks: &[Track]) -> bool; 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); fn set_auto_transition(&self, auto_transition: bool);
#[cfg_attr(feature = "v1_16", deprecated)] #[cfg_attr(feature = "v1_16", deprecated)]
#[doc(alias = "ges_layer_set_priority")]
fn set_priority(&self, priority: u32); fn set_priority(&self, priority: u32);
#[doc(alias = "ges_layer_set_timeline")]
fn set_timeline<P: IsA<Timeline>>(&self, timeline: &P); fn set_timeline<P: IsA<Timeline>>(&self, timeline: &P);
//#[cfg(any(feature = "v1_18", feature = "dox"))] //#[cfg(any(feature = "v1_18", feature = "dox"))]

View file

@ -23,6 +23,7 @@ glib::glib_wrapper! {
} }
impl Pipeline { impl Pipeline {
#[doc(alias = "ges_pipeline_new")]
pub fn new() -> Pipeline { pub fn new() -> Pipeline {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { from_glib_none(ffi::ges_pipeline_new()) } unsafe { from_glib_none(ffi::ges_pipeline_new()) }
@ -38,20 +39,28 @@ impl Default for Pipeline {
pub const NONE_PIPELINE: Option<&Pipeline> = None; pub const NONE_PIPELINE: Option<&Pipeline> = None;
pub trait GESPipelineExt: 'static { pub trait GESPipelineExt: 'static {
#[doc(alias = "ges_pipeline_get_mode")]
fn get_mode(&self) -> PipelineFlags; fn get_mode(&self) -> PipelineFlags;
#[doc(alias = "ges_pipeline_get_thumbnail")]
fn get_thumbnail(&self, caps: &gst::Caps) -> Option<gst::Sample>; fn get_thumbnail(&self, caps: &gst::Caps) -> Option<gst::Sample>;
#[doc(alias = "ges_pipeline_get_thumbnail_rgb24")]
fn get_thumbnail_rgb24(&self, width: i32, height: i32) -> Option<gst::Sample>; fn get_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>; 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>; fn preview_get_video_sink(&self) -> Option<gst::Element>;
#[doc(alias = "ges_pipeline_preview_set_audio_sink")]
fn preview_set_audio_sink<P: IsA<gst::Element>>(&self, sink: &P); fn preview_set_audio_sink<P: IsA<gst::Element>>(&self, sink: &P);
#[doc(alias = "ges_pipeline_preview_set_video_sink")]
fn preview_set_video_sink<P: IsA<gst::Element>>(&self, sink: &P); fn preview_set_video_sink<P: IsA<gst::Element>>(&self, sink: &P);
#[doc(alias = "ges_pipeline_save_thumbnail")]
fn save_thumbnail( fn save_thumbnail(
&self, &self,
width: i32, width: i32,
@ -60,14 +69,17 @@ pub trait GESPipelineExt: 'static {
location: &str, location: &str,
) -> Result<(), glib::Error>; ) -> Result<(), glib::Error>;
#[doc(alias = "ges_pipeline_set_mode")]
fn set_mode(&self, mode: PipelineFlags) -> Result<(), glib::error::BoolError>; fn set_mode(&self, mode: PipelineFlags) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_pipeline_set_render_settings")]
fn set_render_settings<P: IsA<gst_pbutils::EncodingProfile>>( fn set_render_settings<P: IsA<gst_pbutils::EncodingProfile>>(
&self, &self,
output_uri: &str, output_uri: &str,
profile: &P, profile: &P,
) -> Result<(), glib::error::BoolError>; ) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_pipeline_set_timeline")]
fn set_timeline<P: IsA<Timeline>>(&self, timeline: &P) -> Result<(), glib::error::BoolError>; fn set_timeline<P: IsA<Timeline>>(&self, timeline: &P) -> Result<(), glib::error::BoolError>;
fn get_property_audio_filter(&self) -> Option<gst::Element>; fn get_property_audio_filter(&self) -> Option<gst::Element>;

View file

@ -22,6 +22,7 @@ glib::glib_wrapper! {
} }
impl Project { impl Project {
#[doc(alias = "ges_project_new")]
pub fn new(uri: Option<&str>) -> Project { pub fn new(uri: Option<&str>) -> Project {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { from_glib_full(ffi::ges_project_new(uri.to_glib_none().0)) } unsafe { from_glib_full(ffi::ges_project_new(uri.to_glib_none().0)) }
@ -31,8 +32,10 @@ impl Project {
pub const NONE_PROJECT: Option<&Project> = None; pub const NONE_PROJECT: Option<&Project> = None;
pub trait ProjectExt: 'static { pub trait ProjectExt: 'static {
#[doc(alias = "ges_project_add_asset")]
fn add_asset<P: IsA<Asset>>(&self, asset: &P) -> bool; fn add_asset<P: IsA<Asset>>(&self, asset: &P) -> bool;
#[doc(alias = "ges_project_add_encoding_profile")]
fn add_encoding_profile<P: IsA<gst_pbutils::EncodingProfile>>( fn add_encoding_profile<P: IsA<gst_pbutils::EncodingProfile>>(
&self, &self,
profile: &P, profile: &P,
@ -40,30 +43,41 @@ pub trait ProjectExt: 'static {
//#[cfg(any(feature = "v1_18", feature = "dox"))] //#[cfg(any(feature = "v1_18", feature = "dox"))]
//#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] //#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
//#[doc(alias = "ges_project_add_formatter")]
//fn add_formatter(&self, formatter: /*Ignored*/&Formatter); //fn add_formatter(&self, formatter: /*Ignored*/&Formatter);
#[doc(alias = "ges_project_create_asset")]
fn create_asset(&self, id: Option<&str>, extractable_type: glib::types::Type) -> bool; fn create_asset(&self, id: Option<&str>, extractable_type: glib::types::Type) -> bool;
#[doc(alias = "ges_project_create_asset_sync")]
fn create_asset_sync( fn create_asset_sync(
&self, &self,
id: Option<&str>, id: Option<&str>,
extractable_type: glib::types::Type, extractable_type: glib::types::Type,
) -> Result<Option<Asset>, glib::Error>; ) -> Result<Option<Asset>, glib::Error>;
#[doc(alias = "ges_project_get_asset")]
fn get_asset(&self, id: &str, extractable_type: glib::types::Type) -> Option<Asset>; fn get_asset(&self, id: &str, extractable_type: glib::types::Type) -> Option<Asset>;
#[doc(alias = "ges_project_get_loading_assets")]
fn get_loading_assets(&self) -> Vec<Asset>; fn get_loading_assets(&self) -> Vec<Asset>;
#[doc(alias = "ges_project_get_uri")]
fn get_uri(&self) -> Option<glib::GString>; fn get_uri(&self) -> Option<glib::GString>;
#[doc(alias = "ges_project_list_assets")]
fn list_assets(&self, filter: glib::types::Type) -> Vec<Asset>; 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>; fn list_encoding_profiles(&self) -> Vec<gst_pbutils::EncodingProfile>;
#[doc(alias = "ges_project_load")]
fn load<P: IsA<Timeline>>(&self, timeline: &P) -> Result<(), glib::Error>; fn load<P: IsA<Timeline>>(&self, timeline: &P) -> Result<(), glib::Error>;
#[doc(alias = "ges_project_remove_asset")]
fn remove_asset<P: IsA<Asset>>(&self, asset: &P) -> Result<(), glib::error::BoolError>; fn remove_asset<P: IsA<Asset>>(&self, asset: &P) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_project_save")]
fn save<P: IsA<Timeline>, Q: IsA<Asset>>( fn save<P: IsA<Timeline>, Q: IsA<Asset>>(
&self, &self,
timeline: &P, timeline: &P,

View file

@ -33,16 +33,19 @@ glib::glib_wrapper! {
} }
impl Timeline { impl Timeline {
#[doc(alias = "ges_timeline_new")]
pub fn new() -> Timeline { pub fn new() -> Timeline {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { from_glib_none(ffi::ges_timeline_new()) } unsafe { from_glib_none(ffi::ges_timeline_new()) }
} }
#[doc(alias = "ges_timeline_new_audio_video")]
pub fn new_audio_video() -> Timeline { pub fn new_audio_video() -> Timeline {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { from_glib_none(ffi::ges_timeline_new_audio_video()) } unsafe { from_glib_none(ffi::ges_timeline_new_audio_video()) }
} }
#[doc(alias = "ges_timeline_new_from_uri")]
pub fn from_uri(uri: &str) -> Result<Option<Timeline>, glib::Error> { pub fn from_uri(uri: &str) -> Result<Option<Timeline>, glib::Error> {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { unsafe {
@ -67,56 +70,77 @@ pub const NONE_TIMELINE: Option<&Timeline> = None;
pub trait TimelineExt: 'static { pub trait TimelineExt: 'static {
#[cfg_attr(feature = "v1_18", deprecated)] #[cfg_attr(feature = "v1_18", deprecated)]
#[doc(alias = "ges_timeline_add_layer")]
fn add_layer<P: IsA<Layer>>(&self, layer: &P) -> Result<(), glib::error::BoolError>; fn add_layer<P: IsA<Layer>>(&self, layer: &P) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_timeline_add_track")]
fn add_track<P: IsA<Track>>(&self, track: &P) -> Result<(), glib::error::BoolError>; fn add_track<P: IsA<Track>>(&self, track: &P) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_timeline_append_layer")]
fn append_layer(&self) -> Layer; fn append_layer(&self) -> Layer;
#[doc(alias = "ges_timeline_commit")]
fn commit(&self) -> bool; fn commit(&self) -> bool;
#[doc(alias = "ges_timeline_commit_sync")]
fn commit_sync(&self) -> bool; fn commit_sync(&self) -> bool;
#[doc(alias = "ges_timeline_get_auto_transition")]
fn get_auto_transition(&self) -> bool; fn get_auto_transition(&self) -> bool;
#[doc(alias = "ges_timeline_get_duration")]
fn get_duration(&self) -> gst::ClockTime; fn get_duration(&self) -> gst::ClockTime;
#[doc(alias = "ges_timeline_get_element")]
fn get_element(&self, name: &str) -> Option<TimelineElement>; fn get_element(&self, name: &str) -> Option<TimelineElement>;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_timeline_get_frame_at")]
fn get_frame_at(&self, timestamp: gst::ClockTime) -> FrameNumber; fn get_frame_at(&self, timestamp: gst::ClockTime) -> FrameNumber;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_timeline_get_frame_time")]
fn get_frame_time(&self, frame_number: FrameNumber) -> gst::ClockTime; fn get_frame_time(&self, frame_number: FrameNumber) -> gst::ClockTime;
#[doc(alias = "ges_timeline_get_groups")]
fn get_groups(&self) -> Vec<Group>; fn get_groups(&self) -> Vec<Group>;
#[doc(alias = "ges_timeline_get_layer")]
fn get_layer(&self, priority: u32) -> Option<Layer>; fn get_layer(&self, priority: u32) -> Option<Layer>;
#[doc(alias = "ges_timeline_get_layers")]
fn get_layers(&self) -> Vec<Layer>; fn get_layers(&self) -> Vec<Layer>;
#[doc(alias = "ges_timeline_get_pad_for_track")]
fn get_pad_for_track<P: IsA<Track>>(&self, track: &P) -> Option<gst::Pad>; fn get_pad_for_track<P: IsA<Track>>(&self, track: &P) -> Option<gst::Pad>;
#[doc(alias = "ges_timeline_get_snapping_distance")]
fn get_snapping_distance(&self) -> gst::ClockTime; fn get_snapping_distance(&self) -> gst::ClockTime;
#[doc(alias = "ges_timeline_get_track_for_pad")]
fn get_track_for_pad<P: IsA<gst::Pad>>(&self, pad: &P) -> Option<Track>; fn get_track_for_pad<P: IsA<gst::Pad>>(&self, pad: &P) -> Option<Track>;
#[doc(alias = "ges_timeline_get_tracks")]
fn get_tracks(&self) -> Vec<Track>; fn get_tracks(&self) -> Vec<Track>;
#[doc(alias = "ges_timeline_is_empty")]
fn is_empty(&self) -> bool; fn is_empty(&self) -> bool;
#[doc(alias = "ges_timeline_load_from_uri")]
fn load_from_uri(&self, uri: &str) -> Result<(), glib::Error>; fn load_from_uri(&self, uri: &str) -> Result<(), glib::Error>;
#[cfg(any(feature = "v1_16", feature = "dox"))] #[cfg(any(feature = "v1_16", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
#[doc(alias = "ges_timeline_move_layer")]
fn move_layer<P: IsA<Layer>>( fn move_layer<P: IsA<Layer>>(
&self, &self,
layer: &P, layer: &P,
new_layer_priority: u32, new_layer_priority: u32,
) -> Result<(), glib::error::BoolError>; ) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_timeline_paste_element")]
fn paste_element<P: IsA<TimelineElement>>( fn paste_element<P: IsA<TimelineElement>>(
&self, &self,
element: &P, element: &P,
@ -124,10 +148,13 @@ pub trait TimelineExt: 'static {
layer_priority: i32, layer_priority: i32,
) -> Option<TimelineElement>; ) -> Option<TimelineElement>;
#[doc(alias = "ges_timeline_remove_layer")]
fn remove_layer<P: IsA<Layer>>(&self, layer: &P) -> Result<(), glib::error::BoolError>; fn remove_layer<P: IsA<Layer>>(&self, layer: &P) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_timeline_remove_track")]
fn remove_track<P: IsA<Track>>(&self, track: &P) -> Result<(), glib::error::BoolError>; fn remove_track<P: IsA<Track>>(&self, track: &P) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_timeline_save_to_uri")]
fn save_to_uri<P: IsA<Asset>>( fn save_to_uri<P: IsA<Asset>>(
&self, &self,
uri: &str, uri: &str,
@ -135,8 +162,10 @@ pub trait TimelineExt: 'static {
overwrite: bool, overwrite: bool,
) -> Result<(), glib::Error>; ) -> Result<(), glib::Error>;
#[doc(alias = "ges_timeline_set_auto_transition")]
fn set_auto_transition(&self, auto_transition: bool); fn set_auto_transition(&self, auto_transition: bool);
#[doc(alias = "ges_timeline_set_snapping_distance")]
fn set_snapping_distance(&self, snapping_distance: gst::ClockTime); fn set_snapping_distance(&self, snapping_distance: gst::ClockTime);
fn connect_commited<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId; fn connect_commited<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId;

View file

@ -40,12 +40,15 @@ glib::glib_wrapper! {
pub const NONE_TIMELINE_ELEMENT: Option<&TimelineElement> = None; pub const NONE_TIMELINE_ELEMENT: Option<&TimelineElement> = None;
pub trait TimelineElementExt: 'static { pub trait TimelineElementExt: 'static {
//#[doc(alias = "ges_timeline_element_add_child_property")]
//fn add_child_property<P: IsA<glib::Object>>(&self, pspec: /*Ignored*/&glib::ParamSpec, child: &P) -> bool; //fn add_child_property<P: IsA<glib::Object>>(&self, pspec: /*Ignored*/&glib::ParamSpec, child: &P) -> bool;
#[doc(alias = "ges_timeline_element_copy")]
fn copy(&self, deep: bool) -> Result<TimelineElement, glib::BoolError>; fn copy(&self, deep: bool) -> Result<TimelineElement, glib::BoolError>;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_timeline_element_edit")]
fn edit( fn edit(
&self, &self,
layers: &[Layer], layers: &[Layer],
@ -57,6 +60,7 @@ pub trait TimelineElementExt: 'static {
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_timeline_element_edit_full")]
fn edit_full( fn edit_full(
&self, &self,
new_layer_priority: i64, new_layer_priority: i64,
@ -65,88 +69,126 @@ pub trait TimelineElementExt: 'static {
position: u64, position: u64,
) -> Result<(), glib::Error>; ) -> Result<(), glib::Error>;
//#[doc(alias = "ges_timeline_element_get_child_properties")]
//fn get_child_properties(&self, first_property_name: &str, : /*Unknown conversion*//*Unimplemented*/Fundamental: VarArgs); //fn get_child_properties(&self, first_property_name: &str, : /*Unknown conversion*//*Unimplemented*/Fundamental: VarArgs);
//#[doc(alias = "ges_timeline_element_get_child_property")]
//fn get_child_property(&self, property_name: &str, value: /*Ignored*/glib::Value) -> bool; //fn get_child_property(&self, property_name: &str, value: /*Ignored*/glib::Value) -> bool;
//#[doc(alias = "ges_timeline_element_get_child_property_by_pspec")]
//fn get_child_property_by_pspec(&self, pspec: /*Ignored*/&glib::ParamSpec, value: /*Ignored*/glib::Value); //fn get_child_property_by_pspec(&self, pspec: /*Ignored*/&glib::ParamSpec, value: /*Ignored*/glib::Value);
//#[doc(alias = "ges_timeline_element_get_child_property_valist")]
//fn get_child_property_valist(&self, first_property_name: &str, var_args: /*Unknown conversion*//*Unimplemented*/Unsupported); //fn get_child_property_valist(&self, first_property_name: &str, var_args: /*Unknown conversion*//*Unimplemented*/Unsupported);
#[doc(alias = "ges_timeline_element_get_duration")]
fn get_duration(&self) -> gst::ClockTime; fn get_duration(&self) -> gst::ClockTime;
#[doc(alias = "ges_timeline_element_get_inpoint")]
fn get_inpoint(&self) -> gst::ClockTime; fn get_inpoint(&self) -> gst::ClockTime;
#[cfg(any(feature = "v1_16", feature = "dox"))] #[cfg(any(feature = "v1_16", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
#[doc(alias = "ges_timeline_element_get_layer_priority")]
fn get_layer_priority(&self) -> u32; fn get_layer_priority(&self) -> u32;
#[doc(alias = "ges_timeline_element_get_max_duration")]
fn get_max_duration(&self) -> gst::ClockTime; fn get_max_duration(&self) -> gst::ClockTime;
#[doc(alias = "ges_timeline_element_get_name")]
fn get_name(&self) -> Option<glib::GString>; fn get_name(&self) -> Option<glib::GString>;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_timeline_element_get_natural_framerate")]
fn get_natural_framerate(&self) -> Option<(i32, i32)>; fn get_natural_framerate(&self) -> Option<(i32, i32)>;
#[doc(alias = "ges_timeline_element_get_parent")]
fn get_parent(&self) -> Option<TimelineElement>; fn get_parent(&self) -> Option<TimelineElement>;
#[doc(alias = "ges_timeline_element_get_priority")]
fn get_priority(&self) -> u32; fn get_priority(&self) -> u32;
#[doc(alias = "ges_timeline_element_get_start")]
fn get_start(&self) -> gst::ClockTime; fn get_start(&self) -> gst::ClockTime;
#[doc(alias = "ges_timeline_element_get_timeline")]
fn get_timeline(&self) -> Option<Timeline>; fn get_timeline(&self) -> Option<Timeline>;
#[doc(alias = "ges_timeline_element_get_toplevel_parent")]
fn get_toplevel_parent(&self) -> Option<TimelineElement>; fn get_toplevel_parent(&self) -> Option<TimelineElement>;
#[doc(alias = "ges_timeline_element_get_track_types")]
fn get_track_types(&self) -> TrackType; fn get_track_types(&self) -> TrackType;
//#[doc(alias = "ges_timeline_element_list_children_properties")]
//fn list_children_properties(&self) -> /*Ignored*/Vec<glib::ParamSpec>; //fn list_children_properties(&self) -> /*Ignored*/Vec<glib::ParamSpec>;
//#[doc(alias = "ges_timeline_element_lookup_child")]
//fn lookup_child(&self, prop_name: &str, pspec: /*Ignored*/glib::ParamSpec) -> Option<glib::Object>; //fn lookup_child(&self, prop_name: &str, pspec: /*Ignored*/glib::ParamSpec) -> Option<glib::Object>;
#[doc(alias = "ges_timeline_element_paste")]
fn paste(&self, paste_position: gst::ClockTime) -> Result<TimelineElement, glib::BoolError>; 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: /*Ignored*/&glib::ParamSpec) -> bool; //fn remove_child_property(&self, pspec: /*Ignored*/&glib::ParamSpec) -> bool;
#[doc(alias = "ges_timeline_element_ripple")]
fn ripple(&self, start: gst::ClockTime) -> Result<(), glib::error::BoolError>; 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>; 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>; 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>; 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*/Fundamental: VarArgs); //fn set_child_properties(&self, first_property_name: &str, : /*Unknown conversion*//*Unimplemented*/Fundamental: VarArgs);
//#[doc(alias = "ges_timeline_element_set_child_property")]
//fn set_child_property(&self, property_name: &str, value: /*Ignored*/&glib::Value) -> bool; //fn set_child_property(&self, property_name: &str, value: /*Ignored*/&glib::Value) -> bool;
//#[doc(alias = "ges_timeline_element_set_child_property_by_pspec")]
//fn set_child_property_by_pspec(&self, pspec: /*Ignored*/&glib::ParamSpec, value: /*Ignored*/&glib::Value); //fn set_child_property_by_pspec(&self, pspec: /*Ignored*/&glib::ParamSpec, value: /*Ignored*/&glib::Value);
//#[cfg(any(feature = "v1_18", feature = "dox"))] //#[cfg(any(feature = "v1_18", feature = "dox"))]
//#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] //#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
//#[doc(alias = "ges_timeline_element_set_child_property_full")]
//fn set_child_property_full(&self, property_name: &str, value: /*Ignored*/&glib::Value) -> Result<(), glib::Error>; //fn set_child_property_full(&self, property_name: &str, value: /*Ignored*/&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); //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: gst::ClockTime) -> bool; fn set_duration(&self, duration: gst::ClockTime) -> bool;
#[doc(alias = "ges_timeline_element_set_inpoint")]
fn set_inpoint(&self, inpoint: gst::ClockTime) -> bool; fn set_inpoint(&self, inpoint: gst::ClockTime) -> bool;
#[doc(alias = "ges_timeline_element_set_max_duration")]
fn set_max_duration(&self, maxduration: gst::ClockTime) -> bool; fn set_max_duration(&self, maxduration: gst::ClockTime) -> bool;
#[doc(alias = "ges_timeline_element_set_name")]
fn set_name(&self, name: Option<&str>) -> Result<(), glib::error::BoolError>; fn set_name(&self, name: Option<&str>) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_timeline_element_set_parent")]
fn set_parent<P: IsA<TimelineElement>>(&self, parent: &P) fn set_parent<P: IsA<TimelineElement>>(&self, parent: &P)
-> Result<(), glib::error::BoolError>; -> Result<(), glib::error::BoolError>;
#[cfg_attr(feature = "v1_10", deprecated)] #[cfg_attr(feature = "v1_10", deprecated)]
#[doc(alias = "ges_timeline_element_set_priority")]
fn set_priority(&self, priority: u32) -> bool; fn set_priority(&self, priority: u32) -> bool;
#[doc(alias = "ges_timeline_element_set_start")]
fn set_start(&self, start: gst::ClockTime) -> bool; fn set_start(&self, start: gst::ClockTime) -> bool;
#[doc(alias = "ges_timeline_element_set_timeline")]
fn set_timeline<P: IsA<Timeline>>(&self, timeline: &P) -> Result<(), glib::error::BoolError>; fn set_timeline<P: IsA<Timeline>>(&self, timeline: &P) -> Result<(), glib::error::BoolError>;
#[doc(alias = "ges_timeline_element_trim")]
fn trim(&self, start: gst::ClockTime) -> Result<(), glib::error::BoolError>; fn trim(&self, start: gst::ClockTime) -> Result<(), glib::error::BoolError>;
fn get_property_in_point(&self) -> u64; fn get_property_in_point(&self) -> u64;

View file

@ -26,6 +26,7 @@ glib::glib_wrapper! {
} }
impl Track { impl Track {
#[doc(alias = "ges_track_new")]
pub fn new(type_: TrackType, caps: &gst::Caps) -> Track { pub fn new(type_: TrackType, caps: &gst::Caps) -> Track {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { from_glib_none(ffi::ges_track_new(type_.to_glib(), caps.to_glib_full())) } unsafe { from_glib_none(ffi::ges_track_new(type_.to_glib(), caps.to_glib_full())) }
@ -35,26 +36,35 @@ impl Track {
pub const NONE_TRACK: Option<&Track> = None; pub const NONE_TRACK: Option<&Track> = None;
pub trait GESTrackExt: 'static { pub trait GESTrackExt: 'static {
#[doc(alias = "ges_track_add_element")]
fn add_element<P: IsA<TrackElement>>(&self, object: &P) -> Result<(), glib::error::BoolError>; fn add_element<P: IsA<TrackElement>>(&self, object: &P) -> Result<(), glib::error::BoolError>;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_add_element_full")]
fn add_element_full<P: IsA<TrackElement>>(&self, object: &P) -> Result<(), glib::Error>; fn add_element_full<P: IsA<TrackElement>>(&self, object: &P) -> Result<(), glib::Error>;
#[doc(alias = "ges_track_commit")]
fn commit(&self) -> bool; fn commit(&self) -> bool;
#[doc(alias = "ges_track_get_caps")]
fn get_caps(&self) -> Option<gst::Caps>; fn get_caps(&self) -> Option<gst::Caps>;
#[doc(alias = "ges_track_get_elements")]
fn get_elements(&self) -> Vec<TrackElement>; fn get_elements(&self) -> Vec<TrackElement>;
#[doc(alias = "ges_track_get_mixing")]
fn get_mixing(&self) -> bool; fn get_mixing(&self) -> bool;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_get_restriction_caps")]
fn get_restriction_caps(&self) -> Option<gst::Caps>; fn get_restriction_caps(&self) -> Option<gst::Caps>;
#[doc(alias = "ges_track_get_timeline")]
fn get_timeline(&self) -> Option<Timeline>; fn get_timeline(&self) -> Option<Timeline>;
#[doc(alias = "ges_track_remove_element")]
fn remove_element<P: IsA<TrackElement>>( fn remove_element<P: IsA<TrackElement>>(
&self, &self,
object: &P, object: &P,
@ -62,16 +72,22 @@ pub trait GESTrackExt: 'static {
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_remove_element_full")]
fn remove_element_full<P: IsA<TrackElement>>(&self, object: &P) -> Result<(), glib::Error>; fn remove_element_full<P: IsA<TrackElement>>(&self, object: &P) -> Result<(), glib::Error>;
//#[doc(alias = "ges_track_set_create_element_for_gap_func")]
//fn set_create_element_for_gap_func<P: Fn(&Track) -> gst::Element + 'static>(&self, func: P); //fn set_create_element_for_gap_func<P: Fn(&Track) -> gst::Element + 'static>(&self, func: P);
#[doc(alias = "ges_track_set_mixing")]
fn set_mixing(&self, mixing: bool); fn set_mixing(&self, mixing: bool);
#[doc(alias = "ges_track_set_restriction_caps")]
fn set_restriction_caps(&self, caps: &gst::Caps); fn set_restriction_caps(&self, caps: &gst::Caps);
#[doc(alias = "ges_track_set_timeline")]
fn set_timeline<P: IsA<Timeline>>(&self, timeline: &P); fn set_timeline<P: IsA<Timeline>>(&self, timeline: &P);
#[doc(alias = "ges_track_update_restriction_caps")]
fn update_restriction_caps(&self, caps: &gst::Caps); fn update_restriction_caps(&self, caps: &gst::Caps);
fn get_property_duration(&self) -> u64; fn get_property_duration(&self) -> u64;

View file

@ -29,6 +29,7 @@ glib::glib_wrapper! {
pub const NONE_TRACK_ELEMENT: Option<&TrackElement> = None; pub const NONE_TRACK_ELEMENT: Option<&TrackElement> = None;
pub trait TrackElementExt: 'static { pub trait TrackElementExt: 'static {
#[doc(alias = "ges_track_element_add_children_props")]
fn add_children_props<P: IsA<gst::Element>>( fn add_children_props<P: IsA<gst::Element>>(
&self, &self,
element: &P, element: &P,
@ -39,9 +40,11 @@ pub trait TrackElementExt: 'static {
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_element_clamp_control_source")]
fn clamp_control_source(&self, property_name: &str); fn clamp_control_source(&self, property_name: &str);
#[cfg_attr(feature = "v1_18", deprecated)] #[cfg_attr(feature = "v1_18", deprecated)]
#[doc(alias = "ges_track_element_edit")]
fn edit( fn edit(
&self, &self,
layers: &[Layer], layers: &[Layer],
@ -50,50 +53,68 @@ pub trait TrackElementExt: 'static {
position: u64, position: u64,
) -> Result<(), glib::error::BoolError>; ) -> Result<(), glib::error::BoolError>;
//#[doc(alias = "ges_track_element_get_all_control_bindings")]
//fn get_all_control_bindings(&self) -> /*Unknown conversion*//*Unimplemented*/HashTable TypeId { ns_id: 0, id: 28 }/TypeId { ns_id: 6, id: 83 }; //fn get_all_control_bindings(&self) -> /*Unknown conversion*//*Unimplemented*/HashTable TypeId { ns_id: 0, id: 28 }/TypeId { ns_id: 6, id: 83 };
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_element_get_auto_clamp_control_sources")]
fn get_auto_clamp_control_sources(&self) -> bool; fn get_auto_clamp_control_sources(&self) -> bool;
//#[doc(alias = "ges_track_element_get_control_binding")]
//fn get_control_binding(&self, property_name: &str) -> /*Ignored*/Option<gst::ControlBinding>; //fn get_control_binding(&self, property_name: &str) -> /*Ignored*/Option<gst::ControlBinding>;
#[doc(alias = "ges_track_element_get_element")]
fn get_element(&self) -> Option<gst::Element>; fn get_element(&self) -> Option<gst::Element>;
#[doc(alias = "ges_track_element_get_gnlobject")]
fn get_gnlobject(&self) -> Option<gst::Element>; fn get_gnlobject(&self) -> Option<gst::Element>;
#[doc(alias = "ges_track_element_get_nleobject")]
fn get_nleobject(&self) -> Option<gst::Element>; fn get_nleobject(&self) -> Option<gst::Element>;
#[doc(alias = "ges_track_element_get_track")]
fn get_track(&self) -> Option<Track>; fn get_track(&self) -> Option<Track>;
#[doc(alias = "ges_track_element_get_track_type")]
fn get_track_type(&self) -> TrackType; fn get_track_type(&self) -> TrackType;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_element_has_internal_source")]
fn has_internal_source(&self) -> bool; fn has_internal_source(&self) -> bool;
#[doc(alias = "ges_track_element_is_active")]
fn is_active(&self) -> bool; fn is_active(&self) -> bool;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_track_element_is_core")]
fn is_core(&self) -> bool; fn is_core(&self) -> bool;
//#[doc(alias = "ges_track_element_lookup_child")]
//fn lookup_child(&self, prop_name: &str, pspec: /*Ignored*/glib::ParamSpec) -> Option<gst::Element>; //fn lookup_child(&self, prop_name: &str, pspec: /*Ignored*/glib::ParamSpec) -> Option<gst::Element>;
#[doc(alias = "ges_track_element_remove_control_binding")]
fn remove_control_binding(&self, property_name: &str) -> Result<(), glib::error::BoolError>; 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; fn set_active(&self, active: bool) -> bool;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", 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); fn set_auto_clamp_control_sources(&self, auto_clamp: bool);
//#[doc(alias = "ges_track_element_set_control_source")]
//fn set_control_source(&self, source: /*Ignored*/&gst::ControlSource, property_name: &str, binding_type: &str) -> bool; //fn set_control_source(&self, source: /*Ignored*/&gst::ControlSource, property_name: &str, binding_type: &str) -> bool;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", 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; 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); fn set_track_type(&self, type_: TrackType);
fn get_property_active(&self) -> bool; fn get_property_active(&self) -> bool;

View file

@ -24,6 +24,7 @@ glib::glib_wrapper! {
} }
impl UriClip { impl UriClip {
#[doc(alias = "ges_uri_clip_new")]
pub fn new(uri: &str) -> Result<UriClip, glib::BoolError> { pub fn new(uri: &str) -> Result<UriClip, glib::BoolError> {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { unsafe {
@ -36,14 +37,19 @@ impl UriClip {
pub const NONE_URI_CLIP: Option<&UriClip> = None; pub const NONE_URI_CLIP: Option<&UriClip> = None;
pub trait UriClipExt: 'static { pub trait UriClipExt: 'static {
#[doc(alias = "ges_uri_clip_get_uri")]
fn get_uri(&self) -> Option<glib::GString>; fn get_uri(&self) -> Option<glib::GString>;
#[doc(alias = "ges_uri_clip_is_image")]
fn is_image(&self) -> bool; fn is_image(&self) -> bool;
#[doc(alias = "ges_uri_clip_is_muted")]
fn is_muted(&self) -> bool; fn is_muted(&self) -> bool;
#[doc(alias = "ges_uri_clip_set_is_image")]
fn set_is_image(&self, is_image: bool); fn set_is_image(&self, is_image: bool);
#[doc(alias = "ges_uri_clip_set_mute")]
fn set_mute(&self, mute: bool); fn set_mute(&self, mute: bool);
fn get_property_is_image(&self) -> bool; fn get_property_is_image(&self) -> bool;

View file

@ -27,14 +27,17 @@ glib::glib_wrapper! {
impl UriClipAsset { impl UriClipAsset {
//#[cfg(any(feature = "v1_16", feature = "dox"))] //#[cfg(any(feature = "v1_16", feature = "dox"))]
//#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))] //#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
//#[doc(alias = "ges_uri_clip_asset_finish")]
//pub fn finish(res: /*Ignored*/&gio::AsyncResult) -> Result<UriClipAsset, glib::Error> { //pub fn finish(res: /*Ignored*/&gio::AsyncResult) -> Result<UriClipAsset, glib::Error> {
// unsafe { TODO: call ffi:ges_uri_clip_asset_finish() } // unsafe { TODO: call ffi:ges_uri_clip_asset_finish() }
//} //}
//#[doc(alias = "ges_uri_clip_asset_new")]
//pub fn new<P: IsA<gio::Cancellable>, Q: FnOnce(Result<(), glib::Error>) + 'static>(uri: &str, cancellable: Option<&P>, callback: Q) { //pub fn new<P: IsA<gio::Cancellable>, Q: FnOnce(Result<(), glib::Error>) + 'static>(uri: &str, cancellable: Option<&P>, callback: Q) {
// unsafe { TODO: call ffi:ges_uri_clip_asset_new() } // unsafe { TODO: call ffi:ges_uri_clip_asset_new() }
//} //}
#[doc(alias = "ges_uri_clip_asset_request_sync")]
pub fn request_sync(uri: &str) -> Result<UriClipAsset, glib::Error> { pub fn request_sync(uri: &str) -> Result<UriClipAsset, glib::Error> {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { unsafe {
@ -52,18 +55,23 @@ impl UriClipAsset {
pub const NONE_URI_CLIP_ASSET: Option<&UriClipAsset> = None; pub const NONE_URI_CLIP_ASSET: Option<&UriClipAsset> = None;
pub trait UriClipAssetExt: 'static { pub trait UriClipAssetExt: 'static {
#[doc(alias = "ges_uri_clip_asset_get_duration")]
fn get_duration(&self) -> gst::ClockTime; fn get_duration(&self) -> gst::ClockTime;
#[doc(alias = "ges_uri_clip_asset_get_info")]
fn get_info(&self) -> Option<gst_pbutils::DiscovererInfo>; fn get_info(&self) -> Option<gst_pbutils::DiscovererInfo>;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_uri_clip_asset_get_max_duration")]
fn get_max_duration(&self) -> gst::ClockTime; fn get_max_duration(&self) -> gst::ClockTime;
#[doc(alias = "ges_uri_clip_asset_get_stream_assets")]
fn get_stream_assets(&self) -> Vec<UriSourceAsset>; fn get_stream_assets(&self) -> Vec<UriSourceAsset>;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_uri_clip_asset_is_image")]
fn is_image(&self) -> bool; fn is_image(&self) -> bool;
fn set_property_duration(&self, duration: u64); fn set_property_duration(&self, duration: u64);

View file

@ -18,14 +18,18 @@ glib::glib_wrapper! {
pub const NONE_URI_SOURCE_ASSET: Option<&UriSourceAsset> = None; pub const NONE_URI_SOURCE_ASSET: Option<&UriSourceAsset> = None;
pub trait UriSourceAssetExt: 'static { pub trait UriSourceAssetExt: 'static {
#[doc(alias = "ges_uri_source_asset_get_filesource_asset")]
fn get_filesource_asset(&self) -> Option<UriClipAsset>; fn get_filesource_asset(&self) -> Option<UriClipAsset>;
#[doc(alias = "ges_uri_source_asset_get_stream_info")]
fn get_stream_info(&self) -> Option<gst_pbutils::DiscovererStreamInfo>; fn get_stream_info(&self) -> Option<gst_pbutils::DiscovererStreamInfo>;
#[doc(alias = "ges_uri_source_asset_get_stream_uri")]
fn get_stream_uri(&self) -> Option<glib::GString>; fn get_stream_uri(&self) -> Option<glib::GString>;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "ges_uri_source_asset_is_image")]
fn is_image(&self) -> bool; fn is_image(&self) -> bool;
} }

View file

@ -1,2 +1,2 @@
Generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) Generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#[cfg(not(feature = "dox"))] #[cfg(not(feature = "dox"))]

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)] #![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
use gstreamer_editing_services_sys::*; use gstreamer_editing_services_sys::*;

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#include "manual.h" #include "manual.h"

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#include "manual.h" #include "manual.h"

View file

@ -14,15 +14,18 @@ glib::glib_wrapper! {
} }
impl GLDisplayEGL { impl GLDisplayEGL {
#[doc(alias = "gst_gl_display_egl_new")]
pub fn new() -> GLDisplayEGL { pub fn new() -> GLDisplayEGL {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { from_glib_full(ffi::gst_gl_display_egl_new()) } unsafe { from_glib_full(ffi::gst_gl_display_egl_new()) }
} }
//#[doc(alias = "gst_gl_display_egl_new_with_egl_display")]
//pub fn with_egl_display(display: /*Unimplemented*/Option<Fundamental: Pointer>) -> GLDisplayEGL { //pub fn with_egl_display(display: /*Unimplemented*/Option<Fundamental: Pointer>) -> GLDisplayEGL {
// unsafe { TODO: call ffi:gst_gl_display_egl_new_with_egl_display() } // unsafe { TODO: call ffi:gst_gl_display_egl_new_with_egl_display() }
//} //}
#[doc(alias = "gst_gl_display_egl_from_gl_display")]
pub fn from_gl_display<P: IsA<gst_gl::GLDisplay>>(display: &P) -> Option<GLDisplayEGL> { pub fn from_gl_display<P: IsA<gst_gl::GLDisplay>>(display: &P) -> Option<GLDisplayEGL> {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { unsafe {
@ -32,6 +35,7 @@ impl GLDisplayEGL {
} }
} }
//#[doc(alias = "gst_gl_display_egl_get_from_native")]
//pub fn get_from_native(type_: /*Ignored*/gst_gl::GLDisplayType, display: /*Unimplemented*/Fundamental: UIntPtr) -> /*Unimplemented*/Option<Fundamental: Pointer> { //pub fn get_from_native(type_: /*Ignored*/gst_gl::GLDisplayType, display: /*Unimplemented*/Fundamental: UIntPtr) -> /*Unimplemented*/Option<Fundamental: Pointer> {
// unsafe { TODO: call ffi:gst_gl_display_egl_get_from_native() } // unsafe { TODO: call ffi:gst_gl_display_egl_get_from_native() }
//} //}

View file

@ -1,2 +1,2 @@
Generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) Generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#[cfg(not(feature = "dox"))] #[cfg(not(feature = "dox"))]

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)] #![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
use gstreamer_gl_egl_sys::*; use gstreamer_gl_egl_sys::*;

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#include "manual.h" #include "manual.h"

View file

@ -1,5 +1,5 @@
// This file was generated by gir (https://github.com/gtk-rs/gir @ 1c1a8d7) // This file was generated by gir (https://github.com/gtk-rs/gir @ 6ec2baf)
// from gir-files (https://github.com/gtk-rs/gir-files @ 01ae47c9) // from gir-files (https://github.com/gtk-rs/gir-files @ 9424eabd)
// DO NOT EDIT // DO NOT EDIT
#include "manual.h" #include "manual.h"

View file

@ -51,7 +51,7 @@ impl ToGlib for GLContextError {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstGLContextError> for GLContextError { impl FromGlib<ffi::GstGLContextError> for GLContextError {
fn from_glib(value: ffi::GstGLContextError) -> Self { unsafe fn from_glib(value: ffi::GstGLContextError) -> Self {
skip_assert_initialized!(); skip_assert_initialized!();
match value { match value {
0 => GLContextError::Failed, 0 => GLContextError::Failed,
@ -141,12 +141,14 @@ pub enum GLFormat {
} }
impl GLFormat { impl GLFormat {
//#[doc(alias = "gst_gl_format_from_video_info")]
//pub fn from_video_info<P: IsA<GLContext>>(context: &P, vinfo: /*Ignored*/&mut gst_video::VideoInfo, plane: u32) -> GLFormat { //pub fn from_video_info<P: IsA<GLContext>>(context: &P, vinfo: /*Ignored*/&mut gst_video::VideoInfo, plane: u32) -> GLFormat {
// unsafe { TODO: call ffi:gst_gl_format_from_video_info() } // unsafe { TODO: call ffi:gst_gl_format_from_video_info() }
//} //}
#[cfg(any(feature = "v1_16", feature = "dox"))] #[cfg(any(feature = "v1_16", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
#[doc(alias = "gst_gl_format_is_supported")]
pub fn is_supported<P: IsA<GLContext>>(context: &P, format: GLFormat) -> bool { pub fn is_supported<P: IsA<GLContext>>(context: &P, format: GLFormat) -> bool {
skip_assert_initialized!(); skip_assert_initialized!();
unsafe { unsafe {
@ -159,6 +161,7 @@ impl GLFormat {
#[cfg(any(feature = "v1_16", feature = "dox"))] #[cfg(any(feature = "v1_16", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
#[doc(alias = "gst_gl_format_type_from_sized_gl_format")]
pub fn type_from_sized_gl_format(self) -> (GLFormat, u32) { pub fn type_from_sized_gl_format(self) -> (GLFormat, u32) {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { unsafe {
@ -175,6 +178,7 @@ impl GLFormat {
} }
} }
#[doc(alias = "gst_gl_format_type_n_bytes")]
pub fn type_n_bytes(format: u32, type_: u32) -> u32 { pub fn type_n_bytes(format: u32, type_: u32) -> u32 {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { ffi::gst_gl_format_type_n_bytes(format, type_) } unsafe { ffi::gst_gl_format_type_n_bytes(format, type_) }
@ -213,7 +217,7 @@ impl ToGlib for GLFormat {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstGLFormat> for GLFormat { impl FromGlib<ffi::GstGLFormat> for GLFormat {
fn from_glib(value: ffi::GstGLFormat) -> Self { unsafe fn from_glib(value: ffi::GstGLFormat) -> Self {
skip_assert_initialized!(); skip_assert_initialized!();
match value { match value {
6409 => GLFormat::Luminance, 6409 => GLFormat::Luminance,
@ -290,7 +294,7 @@ impl ToGlib for GLQueryType {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstGLQueryType> for GLQueryType { impl FromGlib<ffi::GstGLQueryType> for GLQueryType {
fn from_glib(value: ffi::GstGLQueryType) -> Self { unsafe fn from_glib(value: ffi::GstGLQueryType) -> Self {
skip_assert_initialized!(); skip_assert_initialized!();
match value { match value {
0 => GLQueryType::None, 0 => GLQueryType::None,
@ -351,7 +355,7 @@ impl ToGlib for GLSLError {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstGLSLError> for GLSLError { impl FromGlib<ffi::GstGLSLError> for GLSLError {
fn from_glib(value: ffi::GstGLSLError) -> Self { unsafe fn from_glib(value: ffi::GstGLSLError) -> Self {
skip_assert_initialized!(); skip_assert_initialized!();
match value { match value {
0 => GLSLError::Compile, 0 => GLSLError::Compile,
@ -433,11 +437,13 @@ pub enum GLSLVersion {
} }
impl GLSLVersion { impl GLSLVersion {
#[doc(alias = "gst_glsl_version_from_string")]
pub fn from_string(string: &str) -> GLSLVersion { pub fn from_string(string: &str) -> GLSLVersion {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { from_glib(ffi::gst_glsl_version_from_string(string.to_glib_none().0)) } unsafe { from_glib(ffi::gst_glsl_version_from_string(string.to_glib_none().0)) }
} }
#[doc(alias = "gst_glsl_version_profile_from_string")]
pub fn profile_from_string(string: &str) -> Option<(GLSLVersion, GLSLProfile)> { pub fn profile_from_string(string: &str) -> Option<(GLSLVersion, GLSLProfile)> {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { unsafe {
@ -458,6 +464,7 @@ impl GLSLVersion {
} }
} }
#[doc(alias = "gst_glsl_version_profile_to_string")]
pub fn profile_to_string(self, profile: GLSLProfile) -> Option<glib::GString> { pub fn profile_to_string(self, profile: GLSLProfile) -> Option<glib::GString> {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { unsafe {
@ -468,6 +475,7 @@ impl GLSLVersion {
} }
} }
#[doc(alias = "gst_glsl_version_to_string")]
pub fn to_str(self) -> Option<glib::GString> { pub fn to_str(self) -> Option<glib::GString> {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { from_glib_none(ffi::gst_glsl_version_to_string(self.to_glib())) } unsafe { from_glib_none(ffi::gst_glsl_version_to_string(self.to_glib())) }
@ -504,7 +512,7 @@ impl ToGlib for GLSLVersion {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstGLSLVersion> for GLSLVersion { impl FromGlib<ffi::GstGLSLVersion> for GLSLVersion {
fn from_glib(value: ffi::GstGLSLVersion) -> Self { unsafe fn from_glib(value: ffi::GstGLSLVersion) -> Self {
skip_assert_initialized!(); skip_assert_initialized!();
match value { match value {
0 => GLSLVersion::None, 0 => GLSLVersion::None,
@ -583,7 +591,7 @@ impl ToGlib for GLStereoDownmix {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstGLStereoDownmix> for GLStereoDownmix { impl FromGlib<ffi::GstGLStereoDownmix> for GLStereoDownmix {
fn from_glib(value: ffi::GstGLStereoDownmix) -> Self { unsafe fn from_glib(value: ffi::GstGLStereoDownmix) -> Self {
skip_assert_initialized!(); skip_assert_initialized!();
match value { match value {
0 => GLStereoDownmix::GreenMagentaDubois, 0 => GLStereoDownmix::GreenMagentaDubois,
@ -630,16 +638,19 @@ pub enum GLTextureTarget {
} }
impl GLTextureTarget { impl GLTextureTarget {
#[doc(alias = "gst_gl_texture_target_from_gl")]
pub fn from_gl(target: u32) -> GLTextureTarget { pub fn from_gl(target: u32) -> GLTextureTarget {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { from_glib(ffi::gst_gl_texture_target_from_gl(target)) } unsafe { from_glib(ffi::gst_gl_texture_target_from_gl(target)) }
} }
#[doc(alias = "gst_gl_texture_target_from_string")]
pub fn from_string(str: &str) -> GLTextureTarget { pub fn from_string(str: &str) -> GLTextureTarget {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { from_glib(ffi::gst_gl_texture_target_from_string(str.to_glib_none().0)) } unsafe { from_glib(ffi::gst_gl_texture_target_from_string(str.to_glib_none().0)) }
} }
#[doc(alias = "gst_gl_texture_target_to_buffer_pool_option")]
pub fn to_buffer_pool_option(self) -> Option<glib::GString> { pub fn to_buffer_pool_option(self) -> Option<glib::GString> {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { unsafe {
@ -649,11 +660,13 @@ impl GLTextureTarget {
} }
} }
#[doc(alias = "gst_gl_texture_target_to_gl")]
pub fn to_gl(self) -> u32 { pub fn to_gl(self) -> u32 {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { ffi::gst_gl_texture_target_to_gl(self.to_glib()) } unsafe { ffi::gst_gl_texture_target_to_gl(self.to_glib()) }
} }
#[doc(alias = "gst_gl_texture_target_to_string")]
pub fn to_str(self) -> Option<glib::GString> { pub fn to_str(self) -> Option<glib::GString> {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { from_glib_none(ffi::gst_gl_texture_target_to_string(self.to_glib())) } unsafe { from_glib_none(ffi::gst_gl_texture_target_to_string(self.to_glib())) }
@ -677,7 +690,7 @@ impl ToGlib for GLTextureTarget {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstGLTextureTarget> for GLTextureTarget { impl FromGlib<ffi::GstGLTextureTarget> for GLTextureTarget {
fn from_glib(value: ffi::GstGLTextureTarget) -> Self { unsafe fn from_glib(value: ffi::GstGLTextureTarget) -> Self {
skip_assert_initialized!(); skip_assert_initialized!();
match value { match value {
0 => GLTextureTarget::None, 0 => GLTextureTarget::None,
@ -743,7 +756,7 @@ impl ToGlib for GLUploadReturn {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstGLUploadReturn> for GLUploadReturn { impl FromGlib<ffi::GstGLUploadReturn> for GLUploadReturn {
fn from_glib(value: ffi::GstGLUploadReturn) -> Self { unsafe fn from_glib(value: ffi::GstGLUploadReturn) -> Self {
skip_assert_initialized!(); skip_assert_initialized!();
match value { match value {
1 => GLUploadReturn::Done, 1 => GLUploadReturn::Done,
@ -806,7 +819,7 @@ impl ToGlib for GLWindowError {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstGLWindowError> for GLWindowError { impl FromGlib<ffi::GstGLWindowError> for GLWindowError {
fn from_glib(value: ffi::GstGLWindowError) -> Self { unsafe fn from_glib(value: ffi::GstGLWindowError) -> Self {
skip_assert_initialized!(); skip_assert_initialized!();
match value { match value {
0 => GLWindowError::Failed, 0 => GLWindowError::Failed,

View file

@ -21,11 +21,13 @@ bitflags! {
} }
impl GLAPI { impl GLAPI {
#[doc(alias = "gst_gl_api_from_string")]
pub fn from_string(api_s: &str) -> GLAPI { pub fn from_string(api_s: &str) -> GLAPI {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { from_glib(ffi::gst_gl_api_from_string(api_s.to_glib_none().0)) } unsafe { from_glib(ffi::gst_gl_api_from_string(api_s.to_glib_none().0)) }
} }
#[doc(alias = "gst_gl_api_to_string")]
pub fn to_str(self) -> glib::GString { pub fn to_str(self) -> glib::GString {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { from_glib_full(ffi::gst_gl_api_to_string(self.to_glib())) } unsafe { from_glib_full(ffi::gst_gl_api_to_string(self.to_glib())) }
@ -50,7 +52,7 @@ impl ToGlib for GLAPI {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstGLAPI> for GLAPI { impl FromGlib<ffi::GstGLAPI> for GLAPI {
fn from_glib(value: ffi::GstGLAPI) -> GLAPI { unsafe fn from_glib(value: ffi::GstGLAPI) -> GLAPI {
skip_assert_initialized!(); skip_assert_initialized!();
GLAPI::from_bits_truncate(value) GLAPI::from_bits_truncate(value)
} }
@ -107,7 +109,7 @@ impl ToGlib for GLDisplayType {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstGLDisplayType> for GLDisplayType { impl FromGlib<ffi::GstGLDisplayType> for GLDisplayType {
fn from_glib(value: ffi::GstGLDisplayType) -> GLDisplayType { unsafe fn from_glib(value: ffi::GstGLDisplayType) -> GLDisplayType {
skip_assert_initialized!(); skip_assert_initialized!();
GLDisplayType::from_bits_truncate(value) GLDisplayType::from_bits_truncate(value)
} }
@ -148,6 +150,7 @@ bitflags! {
} }
impl GLPlatform { impl GLPlatform {
#[doc(alias = "gst_gl_platform_from_string")]
pub fn from_string(platform_s: &str) -> GLPlatform { pub fn from_string(platform_s: &str) -> GLPlatform {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { unsafe {
@ -157,6 +160,7 @@ impl GLPlatform {
} }
} }
#[doc(alias = "gst_gl_platform_to_string")]
pub fn to_str(self) -> glib::GString { pub fn to_str(self) -> glib::GString {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { from_glib_full(ffi::gst_gl_platform_to_string(self.to_glib())) } unsafe { from_glib_full(ffi::gst_gl_platform_to_string(self.to_glib())) }
@ -181,7 +185,7 @@ impl ToGlib for GLPlatform {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstGLPlatform> for GLPlatform { impl FromGlib<ffi::GstGLPlatform> for GLPlatform {
fn from_glib(value: ffi::GstGLPlatform) -> GLPlatform { unsafe fn from_glib(value: ffi::GstGLPlatform) -> GLPlatform {
skip_assert_initialized!(); skip_assert_initialized!();
GLPlatform::from_bits_truncate(value) GLPlatform::from_bits_truncate(value)
} }
@ -220,11 +224,13 @@ bitflags! {
} }
impl GLSLProfile { impl GLSLProfile {
#[doc(alias = "gst_glsl_profile_from_string")]
pub fn from_string(string: &str) -> GLSLProfile { pub fn from_string(string: &str) -> GLSLProfile {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { from_glib(ffi::gst_glsl_profile_from_string(string.to_glib_none().0)) } unsafe { from_glib(ffi::gst_glsl_profile_from_string(string.to_glib_none().0)) }
} }
#[doc(alias = "gst_glsl_profile_to_string")]
pub fn to_str(self) -> Option<glib::GString> { pub fn to_str(self) -> Option<glib::GString> {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { from_glib_none(ffi::gst_glsl_profile_to_string(self.to_glib())) } unsafe { from_glib_none(ffi::gst_glsl_profile_to_string(self.to_glib())) }
@ -242,7 +248,7 @@ impl ToGlib for GLSLProfile {
#[doc(hidden)] #[doc(hidden)]
impl FromGlib<ffi::GstGLSLProfile> for GLSLProfile { impl FromGlib<ffi::GstGLSLProfile> for GLSLProfile {
fn from_glib(value: ffi::GstGLSLProfile) -> GLSLProfile { unsafe fn from_glib(value: ffi::GstGLSLProfile) -> GLSLProfile {
skip_assert_initialized!(); skip_assert_initialized!();
GLSLProfile::from_bits_truncate(value) GLSLProfile::from_bits_truncate(value)
} }

View file

@ -28,10 +28,12 @@ pub const NONE_GL_BASE_FILTER: Option<&GLBaseFilter> = None;
pub trait GLBaseFilterExt: 'static { pub trait GLBaseFilterExt: 'static {
#[cfg(any(feature = "v1_16", feature = "dox"))] #[cfg(any(feature = "v1_16", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
#[doc(alias = "gst_gl_base_filter_find_gl_context")]
fn find_gl_context(&self) -> bool; fn find_gl_context(&self) -> bool;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_gl_base_filter_get_gl_context")]
fn get_gl_context(&self) -> Option<GLContext>; fn get_gl_context(&self) -> Option<GLContext>;
fn get_property_context(&self) -> Option<GLContext>; fn get_property_context(&self) -> Option<GLContext>;

View file

@ -15,6 +15,7 @@ glib::glib_wrapper! {
} }
impl GLColorConvert { impl GLColorConvert {
#[doc(alias = "gst_gl_color_convert_new")]
pub fn new<P: IsA<GLContext>>(context: &P) -> GLColorConvert { pub fn new<P: IsA<GLContext>>(context: &P) -> GLColorConvert {
skip_assert_initialized!(); skip_assert_initialized!();
unsafe { unsafe {
@ -24,6 +25,7 @@ impl GLColorConvert {
} }
} }
#[doc(alias = "gst_gl_color_convert_set_caps")]
pub fn set_caps( pub fn set_caps(
&self, &self,
in_caps: &gst::Caps, in_caps: &gst::Caps,
@ -41,6 +43,7 @@ impl GLColorConvert {
} }
} }
#[doc(alias = "gst_gl_color_convert_transform_caps")]
pub fn transform_caps<P: IsA<GLContext>>( pub fn transform_caps<P: IsA<GLContext>>(
context: &P, context: &P,
direction: gst::PadDirection, direction: gst::PadDirection,

View file

@ -22,16 +22,19 @@ glib::glib_wrapper! {
} }
impl GLContext { impl GLContext {
#[doc(alias = "gst_gl_context_new")]
pub fn new<P: IsA<GLDisplay>>(display: &P) -> GLContext { pub fn new<P: IsA<GLDisplay>>(display: &P) -> GLContext {
skip_assert_initialized!(); skip_assert_initialized!();
unsafe { from_glib_none(ffi::gst_gl_context_new(display.as_ref().to_glib_none().0)) } unsafe { from_glib_none(ffi::gst_gl_context_new(display.as_ref().to_glib_none().0)) }
} }
#[doc(alias = "gst_gl_context_get_current")]
pub fn get_current() -> Option<GLContext> { pub fn get_current() -> Option<GLContext> {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { from_glib_none(ffi::gst_gl_context_get_current()) } unsafe { from_glib_none(ffi::gst_gl_context_get_current()) }
} }
#[doc(alias = "gst_gl_context_get_current_gl_api")]
pub fn get_current_gl_api(platform: GLPlatform) -> (GLAPI, u32, u32) { pub fn get_current_gl_api(platform: GLPlatform) -> (GLAPI, u32, u32) {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { unsafe {
@ -55,54 +58,77 @@ unsafe impl Sync for GLContext {}
pub const NONE_GL_CONTEXT: Option<&GLContext> = None; pub const NONE_GL_CONTEXT: Option<&GLContext> = None;
pub trait GLContextExt: 'static { pub trait GLContextExt: 'static {
#[doc(alias = "gst_gl_context_activate")]
fn activate(&self, activate: bool) -> Result<(), glib::error::BoolError>; fn activate(&self, activate: bool) -> Result<(), glib::error::BoolError>;
#[doc(alias = "gst_gl_context_can_share")]
fn can_share<P: IsA<GLContext>>(&self, other_context: &P) -> bool; fn can_share<P: IsA<GLContext>>(&self, other_context: &P) -> bool;
#[doc(alias = "gst_gl_context_check_feature")]
fn check_feature(&self, feature: &str) -> bool; fn check_feature(&self, feature: &str) -> bool;
#[doc(alias = "gst_gl_context_check_framebuffer_status")]
fn check_framebuffer_status(&self, fbo_target: u32) -> bool; 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; fn check_gl_version(&self, api: GLAPI, maj: i32, min: i32) -> bool;
#[doc(alias = "gst_gl_context_clear_framebuffer")]
fn clear_framebuffer(&self); fn clear_framebuffer(&self);
#[doc(alias = "gst_gl_context_clear_shader")]
fn clear_shader(&self); fn clear_shader(&self);
#[doc(alias = "gst_gl_context_create")]
fn create<P: IsA<GLContext>>(&self, other_context: Option<&P>) -> Result<(), glib::Error>; fn create<P: IsA<GLContext>>(&self, other_context: Option<&P>) -> Result<(), glib::Error>;
#[doc(alias = "gst_gl_context_destroy")]
fn destroy(&self); fn destroy(&self);
#[doc(alias = "gst_gl_context_fill_info")]
fn fill_info(&self) -> Result<(), glib::Error>; fn fill_info(&self) -> Result<(), glib::Error>;
#[doc(alias = "gst_gl_context_get_display")]
fn get_display(&self) -> GLDisplay; fn get_display(&self) -> GLDisplay;
#[doc(alias = "gst_gl_context_get_gl_api")]
fn get_gl_api(&self) -> GLAPI; fn get_gl_api(&self) -> GLAPI;
#[doc(alias = "gst_gl_context_get_gl_platform")]
fn get_gl_platform(&self) -> GLPlatform; fn get_gl_platform(&self) -> GLPlatform;
#[doc(alias = "gst_gl_context_get_gl_platform_version")]
fn get_gl_platform_version(&self) -> (i32, i32); fn get_gl_platform_version(&self) -> (i32, i32);
#[doc(alias = "gst_gl_context_get_gl_version")]
fn get_gl_version(&self) -> (i32, i32); fn get_gl_version(&self) -> (i32, i32);
#[doc(alias = "gst_gl_context_get_window")]
fn get_window(&self) -> Option<GLWindow>; fn get_window(&self) -> Option<GLWindow>;
#[doc(alias = "gst_gl_context_is_shared")]
fn is_shared(&self) -> bool; fn is_shared(&self) -> bool;
#[doc(alias = "gst_gl_context_set_shared_with")]
fn set_shared_with<P: IsA<GLContext>>(&self, share: &P); fn set_shared_with<P: IsA<GLContext>>(&self, share: &P);
#[doc(alias = "gst_gl_context_set_window")]
fn set_window<P: IsA<GLWindow>>(&self, window: &P) -> Result<(), glib::error::BoolError>; fn set_window<P: IsA<GLWindow>>(&self, window: &P) -> Result<(), glib::error::BoolError>;
#[doc(alias = "gst_gl_context_supports_glsl_profile_version")]
fn supports_glsl_profile_version(&self, version: GLSLVersion, profile: GLSLProfile) -> bool; fn supports_glsl_profile_version(&self, version: GLSLVersion, profile: GLSLProfile) -> bool;
#[cfg(any(feature = "v1_16", feature = "dox"))] #[cfg(any(feature = "v1_16", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
#[doc(alias = "gst_gl_context_supports_precision")]
fn supports_precision(&self, version: GLSLVersion, profile: GLSLProfile) -> bool; fn supports_precision(&self, version: GLSLVersion, profile: GLSLProfile) -> bool;
#[cfg(any(feature = "v1_16", feature = "dox"))] #[cfg(any(feature = "v1_16", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
#[doc(alias = "gst_gl_context_supports_precision_highp")]
fn supports_precision_highp(&self, version: GLSLVersion, profile: GLSLProfile) -> bool; fn supports_precision_highp(&self, version: GLSLVersion, profile: GLSLProfile) -> bool;
#[doc(alias = "gst_gl_context_swap_buffers")]
fn swap_buffers(&self); fn swap_buffers(&self);
} }

View file

@ -24,6 +24,7 @@ glib::glib_wrapper! {
} }
impl GLDisplay { impl GLDisplay {
#[doc(alias = "gst_gl_display_new")]
pub fn new() -> GLDisplay { pub fn new() -> GLDisplay {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { from_glib_full(ffi::gst_gl_display_new()) } unsafe { from_glib_full(ffi::gst_gl_display_new()) }
@ -42,31 +43,41 @@ unsafe impl Sync for GLDisplay {}
pub const NONE_GL_DISPLAY: Option<&GLDisplay> = None; pub const NONE_GL_DISPLAY: Option<&GLDisplay> = None;
pub trait GLDisplayExt: 'static { pub trait GLDisplayExt: 'static {
#[doc(alias = "gst_gl_display_add_context")]
fn add_context<P: IsA<GLContext>>(&self, context: &P) -> Result<(), glib::error::BoolError>; fn add_context<P: IsA<GLContext>>(&self, context: &P) -> Result<(), glib::error::BoolError>;
#[doc(alias = "gst_gl_display_create_context")]
fn create_context<P: IsA<GLContext>>( fn create_context<P: IsA<GLContext>>(
&self, &self,
other_context: &P, other_context: &P,
) -> Result<GLContext, glib::Error>; ) -> Result<GLContext, glib::Error>;
#[doc(alias = "gst_gl_display_create_window")]
fn create_window(&self) -> Result<GLWindow, glib::BoolError>; fn create_window(&self) -> Result<GLWindow, glib::BoolError>;
#[doc(alias = "gst_gl_display_filter_gl_api")]
fn filter_gl_api(&self, gl_api: GLAPI); fn filter_gl_api(&self, gl_api: GLAPI);
#[doc(alias = "gst_gl_display_get_gl_api")]
fn get_gl_api(&self) -> GLAPI; fn get_gl_api(&self) -> GLAPI;
#[doc(alias = "gst_gl_display_get_gl_api_unlocked")]
fn get_gl_api_unlocked(&self) -> GLAPI; fn get_gl_api_unlocked(&self) -> GLAPI;
#[doc(alias = "gst_gl_display_get_handle_type")]
fn get_handle_type(&self) -> GLDisplayType; fn get_handle_type(&self) -> GLDisplayType;
#[cfg(any(feature = "v1_18", feature = "dox"))] #[cfg(any(feature = "v1_18", feature = "dox"))]
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
#[doc(alias = "gst_gl_display_remove_context")]
fn remove_context<P: IsA<GLContext>>(&self, context: &P); fn remove_context<P: IsA<GLContext>>(&self, context: &P);
#[doc(alias = "gst_gl_display_remove_window")]
fn remove_window<P: IsA<GLWindow>>(&self, window: &P) -> Result<(), glib::error::BoolError>; fn remove_window<P: IsA<GLWindow>>(&self, window: &P) -> Result<(), glib::error::BoolError>;
//#[cfg(any(feature = "v1_18", feature = "dox"))] //#[cfg(any(feature = "v1_18", feature = "dox"))]
//#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))] //#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
//#[doc(alias = "gst_gl_display_retrieve_window")]
//fn retrieve_window(&self, data: /*Unimplemented*/Option<Fundamental: Pointer>, compare_func: /*Unimplemented*/FnMut(/*Unimplemented*/Option<Fundamental: Pointer>, /*Unimplemented*/Option<Fundamental: Pointer>) -> i32) -> Option<GLWindow>; //fn retrieve_window(&self, data: /*Unimplemented*/Option<Fundamental: Pointer>, compare_func: /*Unimplemented*/FnMut(/*Unimplemented*/Option<Fundamental: Pointer>, /*Unimplemented*/Option<Fundamental: Pointer>) -> i32) -> Option<GLWindow>;
fn connect_create_context<F: Fn(&Self, &GLContext) -> GLContext + Send + Sync + 'static>( fn connect_create_context<F: Fn(&Self, &GLContext) -> GLContext + Send + Sync + 'static>(

View file

@ -16,6 +16,7 @@ glib::glib_wrapper! {
} }
impl GLFramebuffer { impl GLFramebuffer {
#[doc(alias = "gst_gl_framebuffer_new")]
pub fn new<P: IsA<GLContext>>(context: &P) -> GLFramebuffer { pub fn new<P: IsA<GLContext>>(context: &P) -> GLFramebuffer {
skip_assert_initialized!(); skip_assert_initialized!();
unsafe { unsafe {
@ -25,6 +26,7 @@ impl GLFramebuffer {
} }
} }
#[doc(alias = "gst_gl_framebuffer_new_with_default_depth")]
pub fn with_default_depth<P: IsA<GLContext>>( pub fn with_default_depth<P: IsA<GLContext>>(
context: &P, context: &P,
width: u32, width: u32,
@ -47,14 +49,19 @@ unsafe impl Sync for GLFramebuffer {}
pub const NONE_GL_FRAMEBUFFER: Option<&GLFramebuffer> = None; pub const NONE_GL_FRAMEBUFFER: Option<&GLFramebuffer> = None;
pub trait GLFramebufferExt: 'static { pub trait GLFramebufferExt: 'static {
//#[doc(alias = "gst_gl_framebuffer_attach")]
//fn attach(&self, attachment_point: u32, mem: /*Ignored*/&mut GLBaseMemory); //fn attach(&self, attachment_point: u32, mem: /*Ignored*/&mut GLBaseMemory);
#[doc(alias = "gst_gl_framebuffer_bind")]
fn bind(&self); fn bind(&self);
//#[doc(alias = "gst_gl_framebuffer_draw_to_texture")]
//fn draw_to_texture(&self, mem: /*Ignored*/&mut GLMemory, func: /*Unimplemented*/FnMut(/*Unimplemented*/Option<Fundamental: Pointer>) -> bool, user_data: /*Unimplemented*/Option<Fundamental: Pointer>) -> bool; //fn draw_to_texture(&self, mem: /*Ignored*/&mut GLMemory, func: /*Unimplemented*/FnMut(/*Unimplemented*/Option<Fundamental: Pointer>) -> bool, user_data: /*Unimplemented*/Option<Fundamental: Pointer>) -> bool;
#[doc(alias = "gst_gl_framebuffer_get_effective_dimensions")]
fn get_effective_dimensions(&self) -> (u32, u32); fn get_effective_dimensions(&self) -> (u32, u32);
#[doc(alias = "gst_gl_framebuffer_get_id")]
fn get_id(&self) -> u32; fn get_id(&self) -> u32;
} }

View file

@ -33,6 +33,7 @@ glib::glib_wrapper! {
} }
impl GLOverlayCompositor { impl GLOverlayCompositor {
#[doc(alias = "gst_gl_overlay_compositor_new")]
pub fn new<P: IsA<GLContext>>(context: &P) -> GLOverlayCompositor { pub fn new<P: IsA<GLContext>>(context: &P) -> GLOverlayCompositor {
skip_assert_initialized!(); skip_assert_initialized!();
unsafe { unsafe {
@ -42,12 +43,14 @@ impl GLOverlayCompositor {
} }
} }
#[doc(alias = "gst_gl_overlay_compositor_draw_overlays")]
pub fn draw_overlays(&self) { pub fn draw_overlays(&self) {
unsafe { unsafe {
ffi::gst_gl_overlay_compositor_draw_overlays(self.to_glib_none().0); ffi::gst_gl_overlay_compositor_draw_overlays(self.to_glib_none().0);
} }
} }
#[doc(alias = "gst_gl_overlay_compositor_free_overlays")]
pub fn free_overlays(&self) { pub fn free_overlays(&self) {
unsafe { unsafe {
ffi::gst_gl_overlay_compositor_free_overlays(self.to_glib_none().0); ffi::gst_gl_overlay_compositor_free_overlays(self.to_glib_none().0);
@ -83,6 +86,7 @@ impl GLOverlayCompositor {
} }
} }
#[doc(alias = "gst_gl_overlay_compositor_add_caps")]
pub fn add_caps(caps: &gst::Caps) -> Option<gst::Caps> { pub fn add_caps(caps: &gst::Caps) -> Option<gst::Caps> {
assert_initialized_main_thread!(); assert_initialized_main_thread!();
unsafe { unsafe {

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