Commit Graph

705 Commits

Author SHA1 Message Date
0760976b4b set all settings initially using config. 2023-05-15 16:47:28 +02:00
cf4e0666fe add locked controls to settings. 2023-05-15 16:47:28 +02:00
52b4cbcbdf add path prefix to server. 2023-04-28 22:19:52 +02:00
c70c8217de add unminimize. 2023-04-24 22:19:48 +02:00
0ea1c2870f Refactor websocket session sync (#44)
* refactor websocket peer and comment functions.

* update comments.

* add DestroyWebSocketPeer.
2023-04-23 11:23:20 +02:00
43f8fe339f webrtc peer do not set nil conn. 2023-04-18 12:07:49 +02:00
5a2fcc1c8a move consts. 2023-04-18 12:07:49 +02:00
3f375c037f fix track rtcp & paused. 2023-04-18 12:07:49 +02:00
fcf6822833 move estimator to peer. 2023-04-18 12:07:49 +02:00
1ba561b192 fix logging. 2023-04-18 12:07:49 +02:00
c2b29ccf21 handle use webrtc logger. 2023-04-18 12:07:49 +02:00
e8aab98012 refactro cursor image and pos. 2023-04-18 12:07:49 +02:00
728e27da34 minor changes, moving things around. 2023-04-18 12:07:49 +02:00
a2e0aeec77 receiver stop error reporting. 2023-04-18 12:07:49 +02:00
dfea7fca42 refactor handler. 2023-04-18 12:07:49 +02:00
c676d7a3a2 move collectors to metrics. 2023-04-18 12:07:49 +02:00
5f0aafca51 remove deprecated functions. 2023-04-18 12:07:49 +02:00
9d362ed036 move change funcs to peer. 2023-04-18 12:07:49 +02:00
ec8560b290 add session & metrics to webrtc peer. 2023-04-18 12:07:49 +02:00
9928feefef refactor metrics. 2023-04-18 12:07:49 +02:00
7cd469f7bd cleanup peer. 2023-04-18 12:07:49 +02:00
1a752e43d2 Add plugins required flag (#40)
* add required plugins flag.

* update plugins logs.

* add plugins subcommand.

* move preflight to prerun.
2023-03-31 12:02:33 +02:00
43a649d2c4 websockets set max payload log size. (#42) 2023-03-31 12:02:19 +02:00
2ff47ac920 fix: ensure webrtc close is executed only once. 2023-03-27 19:28:28 +02:00
08a5d5abb4 Split ICE Servers to frontend and backend (#37)
* split iceservers to frontend and backend.

* no backend ice servers when ice lite enabled.

* update config.
2023-03-27 18:34:24 +02:00
09508638ce session save & load from a file. (#38) 2023-03-27 18:33:51 +02:00
fa69ddd984 streamsink total bytes metric counter. 2023-03-17 20:20:23 +01:00
9936a04fea add passive estimator & REMB back. (#35) 2023-03-13 17:55:52 +01:00
17bfd2d58f Sample listeners chan (#33)
* switch to sample listeners.

* add streamsink total bytes to metrics.

* on rtcp to chan.

* change logs.

* streamsink add real bitrate.

* add timing information to sample.

* bitrate buckets.

* switch to WriteSample.
2023-03-07 00:08:53 +01:00
a4a3ff79ad Toggle estimator config (#32)
* add estimator to conifg.

* ensure video auto is false when estimator is disabled.
2023-02-26 21:54:10 +01:00
64abfd0b1a cursors increase max serial to 300. 2023-02-21 00:14:50 +01:00
30200d4057 Switch to listeners for webrtc pause (#31)
* switch to listeners for webrtc pause.

* group track vars.

* do not set or remove stream when paused.
2023-02-20 19:48:04 +01:00
0086900053 GCC No-Op Pacer (#29)
* on rtcp send multiple packets.

* use no op pacer.
2023-02-14 21:19:14 +01:00
124c5ae117 Wait for keyframe on switching streams (#28)
* stream sink add keyframe lobby.

* change streamsink keyframe identifier.

* add h264.

* use gstreamers is delta unit for sample.

* use delta unit.
2023-02-14 21:19:02 +01:00
f8b128e1e9 Custom sizes with XRandR (#25)
* xserver dummy with RandR.

* update.

* remove screen configurations from xorg.

* screen size cannot be nil anymore.

* use predefined screen configurations.

* use screen configurations.

* fix error.

* remove comment.
2023-02-14 21:18:47 +01:00
2364facd60 WebRTC congestion control (#26)
* Add congestion control

* Improve stream matching, add manual stream selection, add metrics

* Use a ticker for bitrate estimation and make bandwidth drops switch to lower streams more aggressively

* Missing signal response, fix video auto bug

* Remove redundant mutex

* Bitrate history queue

* Get bitrate fn support h264 & float64

---------

Co-authored-by: Aleksandar Sukovic <aleksandar.sukovic@gmail.com>
2023-02-06 19:45:51 +01:00
e80ae8019e set answering dtls role as server. (#24) 2023-01-30 11:31:30 +01:00
813a0da30c WebRTC ping over data channel (#23)
* add datachannel ping to webrtc.

* add ping pong decode func.
2023-01-20 23:08:27 +01:00
8381020415 default provider: multiuser. 2023-01-13 12:01:58 +01:00
7601af9917 fix default pipeline. 2023-01-13 12:01:58 +01:00
1fb5ae43dd allow multiple users to be set in object provider. 2023-01-13 12:01:58 +01:00
107eba22a5 select profile primarily from corresponding session, if exists. 2023-01-13 12:01:58 +01:00
2ff8d84ba2 fix errors. 2023-01-13 12:01:58 +01:00
af95cb4d72 change dummy to noauth mode. 2023-01-13 12:01:58 +01:00
319bd457f3 add multiuser provider. 2023-01-13 12:01:58 +01:00
6574470278 login logout proper http error handling. 2023-01-12 23:21:56 +01:00
3c3042d691 Add batch endpoint (#19)
* add batch endpoint.

* keep error code.

* use utils.HttpSuccess.

* add batch to openapi.

* body omitempty.
2023-01-09 23:18:47 +01:00
fb8462b56a Add WebRTC candidate metrics (#18)
* stats: add protocol to iceCandidates.

* add ice candidates used metric.

* NewICECandidate use whole struct.
2022-12-16 13:49:51 +01:00
6b39e8e0e8 Fix WebRTC mux issues (#17)
* use NewMultiUDPMuxFromPort.

* tcp mux add write buffer size.
2022-12-13 11:35:03 +01:00
919a554a9e track WriteSample fix log message. 2022-12-12 22:53:26 +01:00