pub mod audio_resampler; pub mod audio_source; pub mod audio_stream; pub mod audio_track; pub mod data_channel; pub mod ice_candidate; pub mod media_stream; pub mod media_stream_track; pub mod peer_connection; pub mod peer_connection_factory; pub mod rtp_parameters; pub mod rtp_receiver; pub mod rtp_sender; pub mod rtp_transceiver; pub mod session_description; pub mod video_frame; pub mod video_source; pub mod video_stream; pub mod video_track; pub mod yuv_helper; use crate::MediaType; use crate::{RtcError, RtcErrorType}; use webrtc_sys::rtc_error as sys_err; use webrtc_sys::webrtc as sys_rtc; impl From for RtcErrorType { fn from(value: sys_err::ffi::RtcErrorType) -> Self { match value { sys_err::ffi::RtcErrorType::InvalidState => Self::InvalidState, _ => Self::Internal, } } } impl From for RtcError { fn from(value: sys_err::ffi::RtcError) -> Self { Self { error_type: value.error_type.into(), message: value.message, } } } impl From for sys_rtc::ffi::MediaType { fn from(value: MediaType) -> Self { match value { MediaType::Audio => Self::Audio, MediaType::Video => Self::Video, MediaType::Data => Self::Data, MediaType::Unsupported => Self::Unsupported, } } }