Files
client-sdk-rust/livekit-webrtc/src/rtp_sender.rs
T
Théo MonnomandGitHub cad6d36201 feat: video publishing (#42)
- Prepare webrtc abstraction ( for future wasm support )
- Added track publish support for videos
  - Added LogoTrack example to simple_room demo
- Lot of cleanup
- There are compiler warnings I'll solve on our v1 release
2023-03-18 03:25:16 +01:00

38 lines
926 B
Rust

use std::fmt::Debug;
use crate::{
imp::rtp_sender as imp_rs, media_stream::MediaStreamTrack, rtp_parameters::RtpParameters,
RtcError,
};
#[derive(Clone)]
pub struct RtpSender {
pub(crate) handle: imp_rs::RtpSender,
}
impl RtpSender {
pub fn track(&self) -> Option<MediaStreamTrack> {
self.handle.track()
}
pub fn set_track(&self, track: Option<MediaStreamTrack>) -> Result<(), RtcError> {
self.handle.set_track(track)
}
pub fn parameters(&self) -> RtpParameters {
self.handle.parameters()
}
pub fn set_parameters(&self, parameters: RtpParameters) -> Result<(), RtcError> {
self.handle.set_parameters(parameters)
}
}
impl Debug for RtpSender {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
f.debug_struct("RtpReceiver")
.field("cname", &self.parameters().rtcp.cname)
.finish()
}
}