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
This commit is contained in:
Théo Monnom
2023-03-18 03:25:16 +01:00
committed by GitHub
parent 4443eae434
commit cad6d36201
123 changed files with 8534 additions and 4601 deletions
+2 -2
View File
@@ -114,13 +114,13 @@ impl SignalClient {
}
}
impl From<proto::JoinResponse> for RTCConfiguration {
impl From<proto::JoinResponse> for RtcConfiguration {
fn from(join_response: proto::JoinResponse) -> Self {
Self {
ice_servers: {
let mut servers = vec![];
for ice_server in join_response.ice_servers.clone() {
servers.push(ICEServer {
servers.push(IceServer {
urls: ice_server.urls,
username: ice_server.username,
password: ice_server.credential,
+2 -2
View File
@@ -34,7 +34,7 @@ enum InternalMessage {
///
/// It is replaced by [SignalClient] at each reconnection.
#[derive(Debug)]
pub(crate) struct SignalStream {
pub(super) struct SignalStream {
internal_tx: mpsc::Sender<InternalMessage>,
read_handle: JoinHandle<()>,
write_handle: JoinHandle<()>,
@@ -46,7 +46,7 @@ impl SignalStream {
///
/// SignalStream will never try to reconnect if the connection has been
/// closed.
pub(super) async fn connect(
pub async fn connect(
url: &str,
token: &str,
options: SignalOptions,