Commit Graph

843 Commits

Author SHA1 Message Date
Miroslav Šedivý
dfc7eb3882
Fix noisy errors (#49)
* send message error.

* read message error.

* close webrtc conn only if not closed yet.

* file upload no files received.
2023-05-19 17:19:38 +02:00
Miroslav Šedivý
3e8d686c0f
Bandwidth estimator refactor (#46)
* rewrite to use stream selector.

* WIP.

* add nacks to metrics.

* add estimate trend.

* estimator based on trend detector.

* add estimator unstable duration.

* add estimator debug.

* add stalled duration.

* estimator move values to config.

* change default estimator values.

* minor style changes.

* fix websocket video messages.

* replace video track with ivdeo id.
2023-05-15 19:29:39 +02:00
Miroslav Šedivý
8660c1a256 add sessions to API. 2023-05-15 16:47:59 +02:00
Miroslav Šedivý
848556adbd add time stats to state. 2023-05-15 16:47:59 +02:00
Miroslav Šedivý
82401391c8 add locked_controls to openapi. 2023-05-15 16:47:28 +02:00
Miroslav Šedivý
0760976b4b set all settings initially using config. 2023-05-15 16:47:28 +02:00
Miroslav Šedivý
cf4e0666fe add locked controls to settings. 2023-05-15 16:47:28 +02:00
Miroslav Šedivý
b8fccc4d07 add settings plugins to openapi. 2023-04-28 23:54:01 +02:00
Miroslav Šedivý
173bc6b053 CI build variant only on tag. 2023-04-28 23:53:05 +02:00
Miroslav Šedivý
a4f9f0bff5 CI build variant. 2023-04-28 23:12:26 +02:00
Miroslav Šedivý
a75ae187b4 add plugin scope to settings. 2023-04-28 22:53:41 +02:00
Miroslav Šedivý
52b4cbcbdf add path prefix to server. 2023-04-28 22:19:52 +02:00
Miroslav Šedivý
c70c8217de add unminimize. 2023-04-24 22:19:48 +02:00
Miroslav Šedivý
466185fc24 fixed by using XFlush. 2023-04-24 22:19:48 +02:00
Miroslav Šedivý
47a3f6d6fb twice toggle maximizes for fullscreen. 2023-04-24 22:19:48 +02:00
Miroslav Šedivý
3ef4c5ce0f use DefaultRootWindow. 2023-04-24 22:19:48 +02:00
Miroslav Šedivý
0ea1c2870f
Refactor websocket session sync (#44)
* refactor websocket peer and comment functions.

* update comments.

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

* add nvidia to build.

* add nvidia to start.

* add config for nvidia.

* upgrade cuda ro 11.4.3.

* add cudaconvert to comment.

* fix paths.

* add cuda to ld.

* upgrade supervisord version.

* add config to suprtvisord in rebuild.

* update nvenc params.

* update nvidia dockerfile.

* h264 profile constrained-baseline.

* h264 send SPS PPS with every IDR.
2023-04-04 23:52:15 +02:00
Miroslav Šedivý
3f117af3b9
upgrade go dependencies. (#41) 2023-03-31 19:35:09 +02:00
Miroslav Šedivý
bdebcd3221 pulseaudio log level error. 2023-03-31 19:07:38 +02:00
Miroslav Šedivý
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
Miroslav Šedivý
43a649d2c4
websockets set max payload log size. (#42) 2023-03-31 12:02:19 +02:00
Miroslav Šedivý
2ff47ac920 fix: ensure webrtc close is executed only once. 2023-03-27 19:28:28 +02:00
Miroslav Šedivý
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
Miroslav Šedivý
f8edd988b3
configure pulseaudio from env. (#39) 2023-03-27 18:34:05 +02:00
Miroslav Šedivý
09508638ce
session save & load from a file. (#38) 2023-03-27 18:33:51 +02:00
Miroslav Šedivý
fa69ddd984 streamsink total bytes metric counter. 2023-03-17 20:20:23 +01:00
Miroslav Šedivý
362bcd3852 nvidia switch to virtualgl 3.1. 2023-03-17 12:12:38 +01:00
Miroslav Šedivý
9936a04fea
add passive estimator & REMB back. (#35) 2023-03-13 17:55:52 +01:00
Miroslav Šedivý
0de8ffc773
update screen rate set. (#34) 2023-03-13 17:55:41 +01:00
Miroslav Šedivý
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
Miroslav Šedivý
38fc21aabc upgrade deps. 2023-02-28 10:09:18 +01:00
Miroslav Šedivý
a9e6736ca4 upgrade deps. 2023-02-28 10:02:20 +01:00
Miroslav Šedivý
977662affe
Upgrade to go 1.20 (#30)
* upgrade dependencies.

* videoscale element to nearest neighbor.
2023-02-26 21:57:02 +01:00