Commit graph

1928 commits

Author SHA1 Message Date
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
Bad
addb6b6d1b docs - fix typos 2023-03-02 19:47:39 +01:00
Bad
d2ddae8f45 docs typo fixes 2023-03-02 19:05:17 +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
Miroslav Šedivý
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
Miroslav Šedivý
724f5fe384 show some controls for cast #254. 2023-02-23 18:43:00 +01:00
Miroslav Šedivý
b0e3e29658 upgrade & change to go 1.20. 2023-02-23 18:23:34 +01:00
Miroslav Šedivý
64abfd0b1a cursors increase max serial to 300. 2023-02-21 00:14:50 +01:00
Miroslav Šedivý
ccaaacac7c do not round height to 8. 2023-02-20 19:49:39 +01:00
Miroslav Šedivý
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
Miroslav Šedivý
0086900053
GCC No-Op Pacer (#29)
* on rtcp send multiple packets.

* use no op pacer.
2023-02-14 21:19:14 +01:00
Miroslav Šedivý
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
Miroslav Šedivý
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
Miroslav Šedivý
bfabee12e2
gst emit video keyframe on demand. (#27) 2023-02-07 21:43:14 +01:00
Miroslav Šedivý
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
Robert Scheck
373dcb4f32 Fix typo in README.md 2023-02-03 07:37:16 +01:00
Miroslav Šedivý
e80ae8019e
set answering dtls role as server. (#24) 2023-01-30 11:31:30 +01:00
Miroslav Šedivý
72c0070a3a update changelog. 2023-01-29 20:31:00 +01:00
Miroslav Šedivý
009ceddbd3 gst: move sample channel to AttachAppsink. 2023-01-29 20:31:00 +01:00
mbattista
fdf17cfe77 channel should not close on destroy 2023-01-29 20:31:00 +01:00
mbattista
628c6a1b77 remove wait timer from goroutine 2023-01-29 20:31:00 +01:00
Miroslav Šedivý
79a1c41938 ensure fps is not 0. 2023-01-29 20:31:00 +01:00
Miroslav Šedivý
64b79f4579 update. 2023-01-29 20:31:00 +01:00
Miroslav Šedivý
8d0468ea62 codec is video & audio. 2023-01-29 20:31:00 +01:00
Miroslav Šedivý
89737dd4ce codec is video & audio. 2023-01-29 20:31:00 +01:00
Miroslav Šedivý
2649594c2e strongly typed session events channel. 2023-01-29 20:31:00 +01:00
Miroslav Šedivý
f3080713ce join GetScreenSizeChangeChannel. 2023-01-29 20:31:00 +01:00
Miroslav Šedivý
6e62b796fc remove unused channels. 2023-01-29 20:31:00 +01:00
Miroslav Šedivý
4094639ea9 adaptive fps moved to pipeline creation. 2023-01-29 20:31:00 +01:00
mbattista
c45a315d9b removed adaptive framerate tag and react to closed channels 2023-01-29 20:31:00 +01:00
Miroslav Šedivý
ee13e40d4c go fmt. 2023-01-29 20:31:00 +01:00
Miroslav Šedivý
dfe8b8b57d npm lint. 2023-01-29 20:31:00 +01:00
Miroslav Šedivý
12623866b3 disableHostCheck -> allowedHosts. 2023-01-29 20:31:00 +01:00
mbattista
161d121e59 channel direct from the pipeline 2023-01-29 20:31:00 +01:00
mbattista
5690a849e2 remove go-events 2023-01-29 20:31:00 +01:00
Miroslav Šedivý
a72648c409
add dockerfile. (#22) 2023-01-27 22:32:33 +01:00
Gheorghe
94981e30aa chore: add more resolutions
- 25 fps 2k
- 25 fps 1600x900
- 25 fps 1368x768
- 25 fps 800x1600
2023-01-23 17:04:32 +01:00
Miroslav Šedivý
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
Miroslav Šedivý
ba0dea8022 switch to xkb. 2023-01-16 13:54:17 +01:00
Miroslav Šedivý
eac9796c47 no free keycodes, pick last two keycodes anyway. 2023-01-16 13:54:17 +01:00
Miroslav Šedivý
67cc23fd53 circular list for free keycodes. 2023-01-16 13:54:17 +01:00
Miroslav Šedivý
cfc6bd417f
Update README.md 2023-01-15 22:21:44 +01:00
Miroslav Šedivý
32472a70bc
Fix docker build (#237)
* include package-lock.

* extract intel gpu support from dockerfile.

* update arm support.

* new workflows.

* build intel images.

* add to docs.
2023-01-15 20:38:29 +01:00
Miroslav Šedivý
cd9ac70cb9 update XkbAddKeyKeysym. 2023-01-15 16:23:48 +01:00
Miroslav Šedivý
a02f47f140 update xorg bindings. 2023-01-14 21:15:52 +01:00
Miroslav Šedivý
bd04ca88e8 fix missing error message on wrong config. 2023-01-13 12:01:58 +01:00
Miroslav Šedivý
8381020415 default provider: multiuser. 2023-01-13 12:01:58 +01:00
Miroslav Šedivý
7601af9917 fix default pipeline. 2023-01-13 12:01:58 +01:00