David Colburn
5fdb6361cd
Dev debug info ( #50 )
2021-07-13 14:05:25 -05:00
David Zhao
d38fc43b89
Lock room creation to ensure atomic creation & node assignment ( #46 )
...
* Lock room creation to ensure atomic creation & node assignment
* more tests
2021-07-12 14:50:14 -07:00
David Zhao
a80e8cf69f
Enable passing in local IP, refactored IP detection ( #48 )
...
* Enable passing in local IP, refactored IP detection
* update docker server instructions
2021-07-11 08:42:11 -07:00
David Colburn
50538db21f
update log keys
2021-07-09 10:49:21 -07:00
hn8
dcfe7eaf4f
Enhancement: audio speakers ( #44 )
...
* refactor: active speakers
1. Observe the loudest adjusted with active ratio instead of linear average of decibel values
2. Follow RFC6465 to convert audio level from decibel to linear value.
3. Quantize audio level for stable slice comparison
4. Switch moving average algorithm from MMA to EMA to have the same center of mass with SMA
5. Minor: remove seenSids map allocation
6. Minor: minimize division arithmetic
* Update pkg/rtc/audiolevel.go
Co-authored-by: David Zhao <david@davidzhao.com >
2021-07-09 09:46:24 -07:00
David Colburn
145f058eaa
send leave when client reconnects on server restart ( #43 )
2021-07-08 01:37:21 -05:00
David Colburn
3eba7fe25c
update twirp and pb
2021-07-06 19:30:06 -07:00
David Zhao
1ced03d72f
fixed failing tests
2021-07-02 17:04:22 -07:00
David Zhao
6751361187
Feature: codec restrictions.
...
In order to ensure clients are publishing with compatible codecs, the server can enforce codec restrictions.
2021-07-02 16:54:54 -07:00
David Colburn
e543aaa98a
turn server tls ( #38 )
...
* tls
* acm
* use cert/key files
* turn -> turns
* turn cert config
* updates
* move panic
* tidy
* final updates
2021-07-01 17:00:49 -05:00
David Colburn
b05da63fc3
send update on reconnect
2021-06-28 16:22:51 -07:00
David Zhao
d8b96ac2c8
Room API to support selective subscriptions
2021-06-23 14:12:51 -07:00
David Colburn
0ffb8a97e4
rtcpThrottle -> pliThrottle
2021-06-22 15:00:27 -07:00
David Zhao
3b2b3a4929
debounce track settings API to match client usage pattern
2021-06-22 14:13:24 -07:00
David Zhao
f0d8b1c7ee
fixed bug in smoothing algorithm, fixed tests
2021-06-21 22:18:18 -07:00
David Zhao
d69e9f451e
Smooth audio levels by averaging over samples.
2021-06-21 18:14:28 -07:00
David Colburn
eebc2f5acd
add throttle config
2021-06-21 17:13:58 -07:00
David Colburn
31b4148052
don't send empty pkts
2021-06-21 15:54:42 -07:00
David Zhao
38c81e5645
Support for video dimensions in publications ( #36 )
...
* send back video dimensions
* Store video dimensions in MediaTrack and forward in TrackInfo
* use committed protocol
2021-06-18 21:05:56 -07:00
David Zhao
e527a66096
endpoint to dump stacktraces
2021-06-17 22:54:09 -07:00
David Colburn
4f56d55d86
close rtp buffers
2021-06-15 00:50:33 -07:00
David Zhao
2cecbad29d
fix: memory leaks with BufferFactory being held
2021-06-14 22:53:29 -07:00
David Zhao
db7d5fff52
Test reliability - give time for HTTP server to start
2021-06-09 13:54:52 -07:00
David Zhao
abedc05ce5
Improve logging, hook up ion with zap logger
2021-06-09 12:31:29 -07:00
David Zhao
a3228c2ae9
resolve data race conditions, code quality
2021-06-04 14:57:55 -07:00
David Colburn
5baf97e99b
imports/inspections
2021-06-04 14:30:10 -05:00
David Zhao
c510ea2e1a
Fix race condition with Transport negotiations
2021-06-04 12:26:23 -07:00
David Zhao
59a27d20c3
improve test reliability, fully close rooms during server shutdown
2021-06-03 23:04:19 -07:00
David Colburn
69b94e1142
error logging
2021-06-03 01:57:43 -05:00
David Zhao
5d85257577
install/update proto-gen tools in bootstrap
2021-06-02 22:56:58 -07:00
David Colburn
684691e1cd
first commit
2021-06-02 23:46:38 -05:00
David Zhao
0900054c24
ability to disable auto subscribe per participant
2021-05-22 22:54:47 -07:00
David Zhao
c76cdf11c2
add tests to ensure subscriber cleanup
2021-05-12 23:52: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
d399a57a7b
Removed cli, mux cleanup, docs update
2021-05-07 01:16:33 -07:00
David Zhao
f60b356807
don't hide trickle decode errors
2021-05-06 00:10:23 -07:00
David Zhao
84ac0a718d
single port mode connectivity improvements, ICE v2.1.6
2021-04-25 14:13:35 -07:00
David Zhao
0dddc3c0be
DeleteRoom now removes all participants in the room
2021-04-21 22:30:29 -07:00
David Zhao
3b236f0d72
handle client reconnect with ICE restarts
2021-04-19 16:51:20 -07:00
David Zhao
1ef2fb8f4a
better startup logging
2021-04-16 16:57:57 -07:00
David Zhao
93d10b2640
Manual negotiation and plan-b support
2021-04-16 00:56:25 -07:00
David Zhao
540d1c2e8c
always allow ICE candidates, even before offer
2021-04-16 00:39:22 -07:00
David Zhao
e4238890ff
Refactor/cleanup of negotiation path
2021-04-15 17:03:22 -07:00
David Zhao
9aa6fc29f5
support immediate disconnect via Leave
2021-04-08 22:06:43 -07:00
David Zhao
dfac44d59e
reduce reliance of funk, fixed bug getting subscribed tracks
2021-03-27 21:54:46 -07:00
David Zhao
cb963f1637
logging port range on start
2021-03-23 18:07:04 -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
98013ac20f
/rtc responds to only websocket requests. Fixes #25
2021-03-15 11:06:26 -07:00