cleanup: room & dependencies (#76)
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
use crate::audio_frame::AudioFrame;
|
||||
use cxx::SharedPtr;
|
||||
use std::sync::{Arc, Mutex};
|
||||
use parking_lot::Mutex;
|
||||
use std::sync::Arc;
|
||||
use webrtc_sys::media_stream as sys_ms;
|
||||
|
||||
#[derive(Clone)]
|
||||
@@ -32,7 +33,7 @@ impl NativeAudioSource {
|
||||
}
|
||||
|
||||
pub fn capture_frame(&self, frame: &AudioFrame) {
|
||||
let mut inner = self.inner.lock().unwrap();
|
||||
let mut inner = self.inner.lock();
|
||||
let samples_10ms = (frame.sample_rate / 100 * frame.num_channels) as usize;
|
||||
if inner.sample_rate != frame.sample_rate || inner.num_channels != frame.num_channels {
|
||||
inner.buf.resize(samples_10ms as usize, 0);
|
||||
|
||||
@@ -3,8 +3,9 @@ use crate::data_channel::{
|
||||
OnStateChange,
|
||||
};
|
||||
use cxx::SharedPtr;
|
||||
use parking_lot::Mutex;
|
||||
use std::str;
|
||||
use std::sync::{Arc, Mutex};
|
||||
use std::sync::Arc;
|
||||
use webrtc_sys::data_channel as sys_dc;
|
||||
|
||||
impl From<sys_dc::ffi::DataState> for DataState {
|
||||
@@ -94,15 +95,15 @@ impl DataChannel {
|
||||
}
|
||||
|
||||
pub fn on_state_change(&self, handler: Option<OnStateChange>) {
|
||||
*self.observer.state_change_handler.lock().unwrap() = handler;
|
||||
*self.observer.state_change_handler.lock() = handler;
|
||||
}
|
||||
|
||||
pub fn on_message(&self, handler: Option<OnMessage>) {
|
||||
*self.observer.message_handler.lock().unwrap() = handler;
|
||||
*self.observer.message_handler.lock() = handler;
|
||||
}
|
||||
|
||||
pub fn on_buffered_amount_change(&self, handler: Option<OnBufferedAmountChange>) {
|
||||
*self.observer.buffered_amount_change_handler.lock().unwrap() = handler;
|
||||
*self.observer.buffered_amount_change_handler.lock() = handler;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -115,21 +116,21 @@ struct DataChannelObserver {
|
||||
|
||||
impl sys_dc::DataChannelObserver for DataChannelObserver {
|
||||
fn on_state_change(&self, state: sys_dc::ffi::DataState) {
|
||||
let mut handler = self.state_change_handler.lock().unwrap();
|
||||
let mut handler = self.state_change_handler.lock();
|
||||
if let Some(f) = handler.as_mut() {
|
||||
f(state.into());
|
||||
}
|
||||
}
|
||||
|
||||
fn on_message(&self, data: &[u8], binary: bool) {
|
||||
let mut handler = self.message_handler.lock().unwrap();
|
||||
let mut handler = self.message_handler.lock();
|
||||
if let Some(f) = handler.as_mut() {
|
||||
f(DataBuffer { data, binary });
|
||||
}
|
||||
}
|
||||
|
||||
fn on_buffered_amount_change(&self, sent_data_size: u64) {
|
||||
let mut handler = self.buffered_amount_change_handler.lock().unwrap();
|
||||
let mut handler = self.buffered_amount_change_handler.lock();
|
||||
if let Some(f) = handler.as_mut() {
|
||||
f(sent_data_size);
|
||||
}
|
||||
|
||||
@@ -23,8 +23,9 @@ use crate::MediaType;
|
||||
use crate::{session_description::SessionDescription, RtcError};
|
||||
use cxx::{SharedPtr, UniquePtr};
|
||||
use futures::channel::oneshot;
|
||||
use parking_lot::Mutex;
|
||||
use std::mem::ManuallyDrop;
|
||||
use std::sync::{Arc, Mutex};
|
||||
use std::sync::Arc;
|
||||
use webrtc_sys::data_channel as sys_dc;
|
||||
use webrtc_sys::jsep as sys_jsep;
|
||||
use webrtc_sys::peer_connection as sys_pc;
|
||||
@@ -372,39 +373,39 @@ impl PeerConnection {
|
||||
}
|
||||
|
||||
pub fn on_connection_state_change(&self, f: Option<OnConnectionChange>) {
|
||||
*self.observer.connection_change_handler.lock().unwrap() = f;
|
||||
*self.observer.connection_change_handler.lock() = f;
|
||||
}
|
||||
|
||||
pub fn on_data_channel(&self, f: Option<OnDataChannel>) {
|
||||
*self.observer.data_channel_handler.lock().unwrap() = f;
|
||||
*self.observer.data_channel_handler.lock() = f;
|
||||
}
|
||||
|
||||
pub fn on_ice_candidate(&self, f: Option<OnIceCandidate>) {
|
||||
*self.observer.ice_candidate_handler.lock().unwrap() = f;
|
||||
*self.observer.ice_candidate_handler.lock() = f;
|
||||
}
|
||||
|
||||
pub fn on_ice_candidate_error(&self, f: Option<OnIceCandidateError>) {
|
||||
*self.observer.ice_candidate_error_handler.lock().unwrap() = f;
|
||||
*self.observer.ice_candidate_error_handler.lock() = f;
|
||||
}
|
||||
|
||||
pub fn on_ice_connection_state_change(&self, f: Option<OnIceConnectionChange>) {
|
||||
*self.observer.ice_connection_change_handler.lock().unwrap() = f;
|
||||
*self.observer.ice_connection_change_handler.lock() = f;
|
||||
}
|
||||
|
||||
pub fn on_ice_gathering_state_change(&self, f: Option<OnIceGatheringChange>) {
|
||||
*self.observer.ice_gathering_change_handler.lock().unwrap() = f;
|
||||
*self.observer.ice_gathering_change_handler.lock() = f;
|
||||
}
|
||||
|
||||
pub fn on_negotiation_needed(&self, f: Option<OnNegotiationNeeded>) {
|
||||
*self.observer.negotiation_needed_handler.lock().unwrap() = f;
|
||||
*self.observer.negotiation_needed_handler.lock() = f;
|
||||
}
|
||||
|
||||
pub fn on_signaling_state_change(&self, f: Option<OnSignalingChange>) {
|
||||
*self.observer.signaling_change_handler.lock().unwrap() = f;
|
||||
*self.observer.signaling_change_handler.lock() = f;
|
||||
}
|
||||
|
||||
pub fn on_track(&self, f: Option<OnTrack>) {
|
||||
*self.observer.track_handler.lock().unwrap() = f;
|
||||
*self.observer.track_handler.lock() = f;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -451,7 +452,7 @@ pub struct PeerObserver {
|
||||
|
||||
impl sys_pc::PeerConnectionObserver for PeerObserver {
|
||||
fn on_signaling_change(&self, new_state: sys_pc::ffi::SignalingState) {
|
||||
if let Some(f) = self.signaling_change_handler.lock().unwrap().as_mut() {
|
||||
if let Some(f) = self.signaling_change_handler.lock().as_mut() {
|
||||
f(new_state.into());
|
||||
}
|
||||
}
|
||||
@@ -461,7 +462,7 @@ impl sys_pc::PeerConnectionObserver for PeerObserver {
|
||||
fn on_remove_stream(&self, _stream: SharedPtr<webrtc_sys::media_stream::ffi::MediaStream>) {}
|
||||
|
||||
fn on_data_channel(&self, data_channel: SharedPtr<sys_dc::ffi::DataChannel>) {
|
||||
if let Some(f) = self.data_channel_handler.lock().unwrap().as_mut() {
|
||||
if let Some(f) = self.data_channel_handler.lock().as_mut() {
|
||||
f(DataChannel {
|
||||
handle: imp_dc::DataChannel::configure(data_channel),
|
||||
});
|
||||
@@ -471,7 +472,7 @@ impl sys_pc::PeerConnectionObserver for PeerObserver {
|
||||
fn on_renegotiation_needed(&self) {}
|
||||
|
||||
fn on_negotiation_needed_event(&self, event: u32) {
|
||||
if let Some(f) = self.negotiation_needed_handler.lock().unwrap().as_mut() {
|
||||
if let Some(f) = self.negotiation_needed_handler.lock().as_mut() {
|
||||
f(event);
|
||||
}
|
||||
}
|
||||
@@ -479,25 +480,25 @@ impl sys_pc::PeerConnectionObserver for PeerObserver {
|
||||
fn on_ice_connection_change(&self, _new_state: sys_pc::ffi::IceConnectionState) {}
|
||||
|
||||
fn on_standardized_ice_connection_change(&self, new_state: sys_pc::ffi::IceConnectionState) {
|
||||
if let Some(f) = self.ice_connection_change_handler.lock().unwrap().as_mut() {
|
||||
if let Some(f) = self.ice_connection_change_handler.lock().as_mut() {
|
||||
f(new_state.into());
|
||||
}
|
||||
}
|
||||
|
||||
fn on_connection_change(&self, new_state: sys_pc::ffi::PeerConnectionState) {
|
||||
if let Some(f) = self.connection_change_handler.lock().unwrap().as_mut() {
|
||||
if let Some(f) = self.connection_change_handler.lock().as_mut() {
|
||||
f(new_state.into());
|
||||
}
|
||||
}
|
||||
|
||||
fn on_ice_gathering_change(&self, new_state: sys_pc::ffi::IceGatheringState) {
|
||||
if let Some(f) = self.ice_gathering_change_handler.lock().unwrap().as_mut() {
|
||||
if let Some(f) = self.ice_gathering_change_handler.lock().as_mut() {
|
||||
f(new_state.into());
|
||||
}
|
||||
}
|
||||
|
||||
fn on_ice_candidate(&self, candidate: SharedPtr<sys_jsep::ffi::IceCandidate>) {
|
||||
if let Some(f) = self.ice_candidate_handler.lock().unwrap().as_mut() {
|
||||
if let Some(f) = self.ice_candidate_handler.lock().as_mut() {
|
||||
f(IceCandidate {
|
||||
handle: imp_ic::IceCandidate {
|
||||
sys_handle: candidate,
|
||||
@@ -514,7 +515,7 @@ impl sys_pc::PeerConnectionObserver for PeerObserver {
|
||||
error_code: i32,
|
||||
error_text: String,
|
||||
) {
|
||||
if let Some(f) = self.ice_candidate_error_handler.lock().unwrap().as_mut() {
|
||||
if let Some(f) = self.ice_candidate_error_handler.lock().as_mut() {
|
||||
f(IceCandidateError {
|
||||
address,
|
||||
port,
|
||||
@@ -547,7 +548,7 @@ impl sys_pc::PeerConnectionObserver for PeerObserver {
|
||||
}
|
||||
|
||||
fn on_track(&self, transceiver: SharedPtr<webrtc_sys::rtp_transceiver::ffi::RtpTransceiver>) {
|
||||
if let Some(f) = self.track_handler.lock().unwrap().as_mut() {
|
||||
if let Some(f) = self.track_handler.lock().as_mut() {
|
||||
let receiver = transceiver.receiver();
|
||||
let streams = receiver.streams();
|
||||
let track = receiver.track();
|
||||
|
||||
Reference in New Issue
Block a user