feat: server sdk (#47)

* New webrtc build scripts (Still not integrated within the SDK)
* New livekit-api crate (Integrate the server sdk protocol of livekit)
* Moved livekit-utils to livekit-protocol
This commit is contained in:
Théo Monnom
2023-04-19 12:33:39 +02:00
committed by GitHub
parent 459a42bf12
commit 180864e953
62 changed files with 2621 additions and 635 deletions
+1 -1
View File
@@ -1,8 +1,8 @@
use self::track::RemoteTrack;
use crate::participant::ConnectionQuality;
use crate::prelude::*;
use crate::proto;
use crate::rtc_engine::EngineError;
use livekit_protocol as proto;
use std::fmt::Debug;
use std::sync::Arc;
use thiserror::Error;
+1 -1
View File
@@ -1,5 +1,5 @@
use crate::prelude::*;
use crate::proto;
use livekit_protocol as proto;
use livekit_webrtc::prelude::*;
#[derive(Debug, Copy, Clone, PartialEq, Eq)]
@@ -4,8 +4,8 @@ use crate::options::compute_video_encodings;
use crate::options::video_layers_from_encodings;
use crate::options::TrackPublishOptions;
use crate::prelude::*;
use crate::proto;
use crate::rtc_engine::RtcEngine;
use livekit_protocol as proto;
use livekit_webrtc::rtp_parameters::RtpEncodingParameters;
use parking_lot::RwLockReadGuard;
use std::collections::HashMap;
@@ -150,6 +150,7 @@ impl LocalParticipant {
participant_sid: self.sid().to_string(),
payload: data.to_vec(),
destination_sids: vec![],
..Default::default()
})),
};
+3 -3
View File
@@ -1,8 +1,8 @@
use crate::prelude::*;
use crate::proto;
use crate::track::TrackError;
use livekit_utils::enum_dispatch;
use livekit_utils::observer::Dispatcher;
use livekit_protocol as proto;
use livekit_protocol::enum_dispatch;
use livekit_protocol::observer::Dispatcher;
use parking_lot::{Mutex, RwLock, RwLockReadGuard};
use std::collections::HashMap;
use std::sync::atomic::{AtomicBool, AtomicU32, AtomicU8, Ordering};
@@ -1,7 +1,7 @@
use super::{ConnectionQuality, ParticipantInner};
use crate::prelude::*;
use crate::proto;
use crate::track::TrackError;
use livekit_protocol as proto;
use livekit_webrtc as rtc;
use parking_lot::RwLockReadGuard;
use rtc::prelude::MediaStreamTrack;
+1 -1
View File
@@ -1,8 +1,8 @@
use super::TrackPublicationInner;
use crate::id::TrackSid;
use crate::options::TrackPublishOptions;
use crate::proto;
use crate::track::{LocalTrack, Track, TrackDimension, TrackKind, TrackSource};
use livekit_protocol as proto;
use parking_lot::Mutex;
use std::sync::Arc;
+3 -3
View File
@@ -1,10 +1,10 @@
use super::track::{TrackDimension, TrackEvent};
use crate::prelude::*;
use crate::proto;
use crate::track::Track;
use futures_util::stream::StreamExt;
use livekit_utils::enum_dispatch;
use livekit_utils::observer::Dispatcher;
use livekit_protocol as proto;
use livekit_protocol::enum_dispatch;
use livekit_protocol::observer::Dispatcher;
use parking_lot::Mutex;
use std::sync::atomic::{AtomicBool, AtomicU8, Ordering};
use std::sync::Arc;
+1 -1
View File
@@ -1,7 +1,7 @@
use super::TrackPublicationInner;
use crate::id::TrackSid;
use crate::proto;
use crate::track::{RemoteTrack, Track, TrackDimension, TrackKind, TrackSource};
use livekit_protocol as proto;
use std::sync::Arc;
#[derive(Clone, Debug)]
+2 -2
View File
@@ -1,10 +1,10 @@
use crate::participant::ConnectionQuality;
use crate::prelude::*;
use crate::proto;
use crate::rtc_engine::{EngineEvent, EngineEvents, EngineResult, RtcEngine};
use crate::signal_client::SignalOptions;
use crate::{RoomError, RoomEvent, RoomResult, SimulateScenario};
use livekit_utils::observer::Dispatcher;
use livekit_protocol as proto;
use livekit_protocol::observer::Dispatcher;
use parking_lot::{Mutex, RwLock, RwLockReadGuard};
use std::collections::HashMap;
use std::sync::atomic::{AtomicU8, Ordering};
+1 -1
View File
@@ -1,9 +1,9 @@
use super::TrackInner;
use crate::options::AudioCaptureOptions;
use crate::prelude::*;
use crate::proto;
use crate::rtc_engine::lk_runtime::LkRuntime;
use crate::webrtc::peer_connection_factory::native::PeerConnectionFactoryExt;
use livekit_protocol as proto;
use livekit_webrtc as rtc;
use parking_lot::Mutex;
use rtc::audio_source::native::NativeAudioSource;
+1 -1
View File
@@ -1,7 +1,7 @@
use super::TrackInner;
use crate::proto;
use crate::rtc_engine::lk_runtime::LkRuntime;
use crate::{options::VideoCaptureOptions, prelude::*};
use livekit_protocol as proto;
use livekit_webrtc as rtc;
use livekit_webrtc::peer_connection_factory::native::PeerConnectionFactoryExt;
use parking_lot::Mutex;
+3 -3
View File
@@ -1,7 +1,7 @@
use crate::prelude::*;
use crate::proto;
use livekit_utils::enum_dispatch;
use livekit_utils::observer::Dispatcher;
use livekit_protocol as proto;
use livekit_protocol::enum_dispatch;
use livekit_protocol::observer::Dispatcher;
use livekit_webrtc as rtc;
use parking_lot::Mutex;
use rtc::MediaType;
+1 -1
View File
@@ -1,6 +1,6 @@
use super::TrackInner;
use crate::prelude::*;
use crate::proto;
use livekit_protocol as proto;
use livekit_webrtc as rtc;
use std::sync::Arc;
use tokio::sync::mpsc;
+1 -1
View File
@@ -1,6 +1,6 @@
use super::TrackInner;
use crate::prelude::*;
use crate::proto;
use livekit_protocol as proto;
use livekit_webrtc as rtc;
use std::sync::Arc;
use tokio::sync::mpsc;