pub struct SourceContext { /* private fields */ }
Expand description
Context wrapping an OBS source - video / audio elements which are displayed to the screen.
Implementations§
Source§impl SourceContext
impl SourceContext
Sourcepub unsafe fn from_raw(source: *mut obs_source_t) -> Self
pub unsafe fn from_raw(source: *mut obs_source_t) -> Self
§Safety
Must call with a valid pointer.
Source§impl SourceContext
impl SourceContext
Sourcepub fn do_with_target<F: FnOnce(&mut SourceContext)>(&mut self, func: F)
pub fn do_with_target<F: FnOnce(&mut SourceContext)>(&mut self, func: F)
Run a function on the next source in the filter chain.
Note: only works with sources that are filters.
pub fn get_base_width(&self) -> u32
pub fn get_base_height(&self) -> u32
pub fn showing(&self) -> bool
pub fn active(&self) -> bool
pub fn enabled(&self) -> bool
pub fn set_enabled(&mut self, enabled: bool)
pub fn source_id(&self) -> Option<&str>
pub fn name(&self) -> Option<&str>
pub fn set_name(&mut self, name: &str)
pub fn width(&self) -> u32
pub fn height(&self) -> u32
pub fn media_play_pause(&mut self, pause: bool)
pub fn media_restart(&mut self)
pub fn media_stop(&mut self)
pub fn media_next(&mut self)
pub fn media_previous(&mut self)
pub fn media_duration(&self) -> i64
pub fn media_time(&self) -> i64
pub fn media_set_time(&mut self, ms: i64)
pub fn media_state(&self) -> MediaState
pub fn media_started(&mut self)
pub fn media_ended(&mut self)
Sourcepub fn skip_video_filter(&mut self)
pub fn skip_video_filter(&mut self)
Skips the video filter if it’s invalid
Sourcepub fn process_filter<F: FnOnce(&mut GraphicsEffectContext, &mut GraphicsEffect)>(
&mut self,
_render: &mut VideoRenderContext,
effect: &mut GraphicsEffect,
(cx, cy): (u32, u32),
format: GraphicsColorFormat,
direct: GraphicsAllowDirectRendering,
func: F,
)
pub fn process_filter<F: FnOnce(&mut GraphicsEffectContext, &mut GraphicsEffect)>( &mut self, _render: &mut VideoRenderContext, effect: &mut GraphicsEffect, (cx, cy): (u32, u32), format: GraphicsColorFormat, direct: GraphicsAllowDirectRendering, func: F, )
Run a function to do drawing - if the source is a filter. This function is wrapped by calls that automatically handle effect-based filter processing.
Note: only works with sources that are filters.
pub fn process_filter_tech<F: FnOnce(&mut GraphicsEffectContext, &mut GraphicsEffect)>( &mut self, _render: &mut VideoRenderContext, effect: &mut GraphicsEffect, (cx, cy): (u32, u32), format: GraphicsColorFormat, direct: GraphicsAllowDirectRendering, technique: ObsString, func: F, )
Sourcepub fn update_source_settings(&mut self, settings: &mut DataObj<'_>)
pub fn update_source_settings(&mut self, settings: &mut DataObj<'_>)
Update the source settings based on a settings context.
Trait Implementations§
Source§impl Clone for SourceContext
impl Clone for SourceContext
Auto Trait Implementations§
impl Freeze for SourceContext
impl RefUnwindSafe for SourceContext
impl !Send for SourceContext
impl !Sync for SourceContext
impl Unpin for SourceContext
impl UnwindSafe for SourceContext
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more