pub struct PortableMediaSession { /* private fields */ }Expand description
Shared target-neutral state for browser-produced media carried by either WASM directly or a thin native IPC projection.
Owner: OpenRTC Rust core.
Consumers: the WASM bridge and native host adapters such as
openrtc-tauri-plugin.
Introduced: 2026-08-26.
Platform edges own capture, codecs, and rendering. This state alone owns publication generations, sequence numbers, receiver admission, replay protection, and integrity validation so native frontends never recreate protocol lifecycle in TypeScript.
Implementations§
Source§impl PortableMediaSession
impl PortableMediaSession
pub fn begin_publication( &mut self, publication: MediaPublicationConfig, ) -> Result<(MediaPublicationConfig, Vec<u8>), MediaProtocolError>
pub fn is_video_publication( &self, publication_id: PublicationId, ) -> Result<bool, MediaProtocolError>
pub fn active_publication_controls( &self, ) -> Result<Vec<(PublicationId, Vec<u8>)>, MediaProtocolError>
pub fn encode_sample( &mut self, publication_id: PublicationId, sample: EncodedMediaSample, ) -> Result<Vec<u8>, MediaProtocolError>
pub fn pause_publication( &mut self, publication_id: PublicationId, ) -> Result<(), MediaProtocolError>
pub fn retire_publication(&mut self, publication_id: PublicationId)
pub fn retire_receiver( &mut self, publication_id: PublicationId, media_generation: u32, )
pub fn decode_control( &mut self, encoded: &[u8], ) -> Result<MediaControlFrame, MediaProtocolError>
pub fn decode_chunk( &mut self, encoded: &[u8], ) -> Result<EncodedMediaChunk, MediaProtocolError>
Trait Implementations§
Source§impl Debug for PortableMediaSession
impl Debug for PortableMediaSession
Auto Trait Implementations§
impl Freeze for PortableMediaSession
impl RefUnwindSafe for PortableMediaSession
impl Send for PortableMediaSession
impl Sync for PortableMediaSession
impl Unpin for PortableMediaSession
impl UnsafeUnpin for PortableMediaSession
impl UnwindSafe for PortableMediaSession
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