David Zhao
0416299e02
fix sender report batching to not exceed MTU
2021-06-03 15:46:41 -07:00
David Colburn
69b94e1142
error logging
2021-06-03 01:57:43 -05:00
David Zhao
6a99146c21
skip ICE restart if subscriber not connected
2021-05-14 22:50:45 -07:00
David Zhao
bbadd4ccb6
properly cleanup downtracks on subscriber disconnect
2021-05-12 23:40:41 -07:00
David Zhao
681010072c
support for exposing stats via prometheus
2021-05-11 22:04:59 -07:00
David Zhao
9616149a88
collect inbound and outbound packet stats
2021-05-11 00:31:18 -07:00
David Zhao
e1f23e6dbe
remove logs about sending lossy packet
2021-04-28 12:39:07 -07:00
David Zhao
6b63cd5b31
Revamp data channels ( #32 )
...
* support for built-in data channels. active speaker updates via data channel
* fixed tests
* update to Pion 3.0.27
2021-04-27 22:02:59 -07:00
David Zhao
84ac0a718d
single port mode connectivity improvements, ICE v2.1.6
2021-04-25 14:13:35 -07:00
David Zhao
4725872884
Disconnect immediately when server initiated close
2021-04-21 22:05:16 -07:00
David Zhao
d6c155e060
set joinedAt when participant is created
2021-04-21 21:52:31 -07:00
David Zhao
3b236f0d72
handle client reconnect with ICE restarts
2021-04-19 16:51:20 -07:00
David Zhao
93d10b2640
Manual negotiation and plan-b support
2021-04-16 00:56:25 -07:00
David Zhao
e4238890ff
Refactor/cleanup of negotiation path
2021-04-15 17:03:22 -07:00
David Zhao
e47754179c
disconnect participant when ICE connection fails
2021-04-10 10:58:12 -07:00
David Zhao
b29bde4b87
fixed RLock typo
2021-04-07 14:11:47 -07:00
David Zhao
b90f851be5
return participant connected timestamps
2021-03-28 21:05:20 -07:00
David Zhao
dfac44d59e
reduce reliance of funk, fixed bug getting subscribed tracks
2021-03-27 21:54:46 -07:00
David Zhao
537edda4c3
handle new UpdateParticipant API, enable permission updates
2021-03-20 22:27:47 -07:00
David Zhao
f7ed2cee60
RoomService.updateParticipantMetadata, participant permissions
2021-03-16 01:22:21 -07:00
David Zhao
7d02c01fd8
refactor - moved common code to livekit/protocol
2021-03-13 22:01:51 -08:00
David Zhao
e20c831c14
automatic configuration of TURN, with per-room credentials. version 0.6.0
2021-03-07 23:30:21 -08:00
David Zhao
03d0a8c047
updated to ion-sfu v1.9.1, removed package bufferFactory
2021-03-01 14:49:46 -08:00
David Zhao
0a5808c73e
use nack fix in ion-sfu, fixes #26
2021-02-28 22:28:24 -08:00
David Zhao
e402d0d0af
subscriber control of tracks (unsubscribe/mute/quality), support simulcast ( #23 )
...
* subscription control & simulcast RTC APIs
* don't remove tracks for simulcast
2021-02-16 13:52:50 -08:00
David Zhao
99baeb38e4
fix bugs with websocket reconnection, don't re-use redis sinks ( #22 )
2021-02-15 17:57:01 -08:00
David Zhao
a96069969d
support audio level extension & active speaker detection ( #20 )
...
* send active speaker updates with audio level
* add test on loudness sorting
* use a float to represent audio level
2021-02-14 14:30:23 -08:00
David Zhao
090f8d0664
use dedicated PeerConnections for sending and receiving ( #19 )
...
* protobuf updates to support new protocol
* use dedicated publish & subscribe peerconnections
* update client to work with dedicated PCs
* fix Go client negotiation, reduced length of UUID
2021-02-12 22:30:31 -08:00
David Zhao
538461d5dc
pass client defined metadata from JWT to participant ( #17 )
2021-02-10 23:13:36 -08:00
David Zhao
38140debdf
Admin APIs for participant management ( #13 )
...
* stubs for room admin APIs
* room store APIs to persist participants
* participant persistence
* updated protobufs
* implemented APIs to mute/remove/etc
* fixed mute handling
2021-02-10 00:06:32 -08:00
David Zhao
f1f5b8dafe
use proper fix for using shared bufferFactory, remove resync hack
2021-02-07 23:06:16 -08:00
David Zhao
e30c9f706c
cleaner resync
2021-02-07 22:44:25 -08:00
David Zhao
290e100d0d
fix generation
2021-02-06 23:15:30 -08:00
David Zhao
ae203c27e3
send resync to ensure keyframes have been requested
2021-02-06 23:02:21 -08:00
David Zhao
c012c742bd
fix allowing client negotiations prematurely.
2021-02-05 17:46:52 -08:00
David Zhao
c978a9cb1f
move to ion-SFU's receiver and downtrack
2021-02-04 21:57:40 -08:00
David Zhao
0cb09ee945
handle cid changes between publish intent and onTrack
2021-02-02 23:55:56 -08:00
David Zhao
d117cce37b
integration test around receive before publish
2021-02-02 22:53:48 -08:00
David Zhao
a4266478c5
better logging around negotiations
2021-02-02 01:16:13 -08:00
David Zhao
70574deaf7
better debug logs around negotiations
2021-02-02 00:40:55 -08:00
David Zhao
712d0da6cc
use synchronized GetParticipants to ensure eliminate timing issues upon participant join
2021-01-31 23:06:48 -08:00
David Zhao
320a6c35bf
enable explicit reconnect to distinguish between WS disconnect vs PeerConnection disconnect
2021-01-30 23:16:11 -08:00
David Zhao
2cf2c448be
rework multi-node routing, cleaner design for reconnection
2021-01-30 22:24:08 -08:00
David Zhao
28e73bd109
rename Participant.name to Participant.identity
2021-01-30 14:00:37 -08:00
David Zhao
65078f5ef8
skip track updates when client has disconnected
2021-01-29 01:03:20 -08:00
David Zhao
57a13f9930
fix synchronization issues, use AtomicFlag/atomic.Value for shared fields
2021-01-29 00:49:32 -08:00
David Zhao
dd8a1a5055
use atomic.Load to ensure atomicity
2021-01-28 23:40:30 -08:00
David Zhao
0813a55617
ignore duplicate tracks being published
2021-01-27 09:42:02 -08:00
David Zhao
61db4f5b66
fixed multi-node so signal node can start sessions
2021-01-26 23:52:55 -08:00
David Zhao
ed0b9db655
avoid sending to closed channels
2021-01-26 21:45:00 -08:00