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ý
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
Miroslav Šedivý
6067367acd
Capture bandwidth switch ( #14 )
...
* Handle bitrate change by finding the stream with closest bitrate as peer
* Convert video id into bitrate when creating peer or changing bitrate
* Try to fix prometheus panic
* Revert metrics label name change
* minor fixes.
* bitrate selector.
* skip if moving to the same stream.
* no closure for getting target bitrate.
* fix: high res switch to lo video, stream bitrate out of range
* revert dev config change.
* white space.
Co-authored-by: Aleksandar Sukovic <aleksandar.sukovic@gmail.com>
2022-10-25 20:25:00 +02:00
Miroslav Šedivý
5ad5daa6bb
Stream bucket manager ( #12 )
...
* refactor webrtc.
* bind track with a single connection.
* audio+video codec.
* move stream selection to bucket manager.
* audio w/o bucket manager.
* revert peer changes.
* return video IDs.
* destroy & recreate all.
* add video ID change.
* Track -> Recevier.
2022-10-17 13:39:31 +02:00
Miroslav Šedivý
c34a76c8a3
broadcast url in config.
2022-09-23 17:21:33 +02:00
Miroslav Šedivý
194fd29679
capture fix replaces for pipelines.
2022-09-23 17:21:33 +02:00
Miroslav Šedivý
3eedbbf8ea
broadcast pipeline fn.
2022-09-23 17:21:33 +02:00
Miroslav Šedivý
a6f117686f
create pipeline fn return error.
2022-09-23 17:21:33 +02:00
Miroslav Šedivý
3cd59b9f30
rename module name from gitlab to github.
2022-07-14 22:10:41 +02:00
Miroslav Šedivý
8593d2d0fd
move shared code to pkg.
2022-03-20 11:43:00 +01:00
Miroslav Šedivý
94c17e9a42
rename module to gitlab.com/demodesk/neko/server.
2022-03-20 11:27:41 +01:00
Miroslav Šedivý
8b6a2ed6d6
add webcam resolution + to config.
2022-01-08 23:53:45 +01:00
Miroslav Šedivý
6b14e01415
add media to capture config.
2021-12-09 23:22:24 +01:00
Miroslav Šedivý
b653856994
fix v4l2sink sync.
2021-12-05 22:25:35 +01:00
Miroslav Šedivý
6431f63da7
v4l2 drop-allocation.
2021-12-05 22:11:52 +01:00
Miroslav Šedivý
9a6eb942a4
keep appsrc / appsink in ctx.
2021-12-05 22:06:42 +01:00
Miroslav Šedivý
09cb1e9c6a
webcam add videoconvert.
2021-12-05 16:35:04 +01:00
Miroslav Šedivý
d70ae4410f
implement webcam.
2021-12-02 23:06:21 +01:00
Miroslav Šedivý
5643e7abbc
add streamsrc to capture.
2021-12-01 22:36:45 +01:00
Miroslav Šedivý
0a94191a5f
rename to StreamSink.
2021-12-01 20:30:18 +01:00
Miroslav Šedivý
4debddf27d
remove leftover variable from capture manager.
2021-09-30 20:03:30 +02:00
Miroslav Šedivý
41d8fa7e22
do not panic if capture pipeline already exists.
2021-09-20 20:21:13 +02:00
Miroslav Šedivý
7e2f173460
unify shutdown logs.
2021-09-02 00:00:29 +02:00
Miroslav Šedivý
8bb77166e8
stream use video_id in logs.
2021-08-28 20:15:54 +02:00
Miroslav Šedivý
d84297fbec
update pipelines config settings extractor.
2021-03-30 00:36:13 +02:00
Miroslav Šedivý
051ab9f426
always start pipelines with !.
2021-03-29 22:59:07 +02:00
Miroslav Šedivý
d8c031af4d
add video config evaluation.
2021-03-29 00:58:51 +02:00
Miroslav Šedivý
fb845a1f18
update pipelines.
2021-03-23 14:06:40 +01:00
Miroslav Šedivý
9fcc310685
pipelines adding buffer.
2021-03-22 16:45:17 +01:00
Miroslav Šedivý
7c9c7ec7cb
video qualities: modify only FPS.
2021-03-22 16:37:37 +01:00
Miroslav Šedivý
9c6c107ee0
move broadcast constants to config.
2021-03-18 13:17:10 +01:00
Miroslav Šedivý
524d895db8
scope config variables.
2021-03-16 15:24:58 +01:00
Miroslav Šedivý
6b638db825
capture use display from ENV.
2021-03-11 17:55:13 +01:00
Miroslav Šedivý
f6114cd410
pipelines: modify default bitrate ratio.
2021-03-03 22:30:45 +01:00
Miroslav Šedivý
13ffc59209
broadcast pipeline update.
2021-03-03 19:13:53 +01:00
Miroslav Šedivý
e98237a58c
vp8 set CBR and undershoot values.
2021-03-03 19:10:48 +01:00
Miroslav Šedivý
45679f1b86
format Go source code.
2021-02-14 14:40:17 +01:00
Miroslav Šedivý
732764991b
fix linter errors.
2021-02-14 14:23:33 +01:00
Miroslav Šedivý
c0c14b3ac2
add screen-size aware pipelines.
2021-02-09 20:36:22 +01:00
Miroslav Šedivý
bac69a205f
update qualities pipelines with fps.
2021-02-08 22:21:21 +01:00
Miroslav Šedivý
1838a74213
switch to VP8 with multiple qualities.
2021-02-06 18:18:49 +01:00
Miroslav Šedivý
eb88c8dc62
independent tracks for users & stream switching.
2021-02-06 18:16:24 +01:00
Miroslav Šedivý
761f6d8a8f
add Video error return.
2021-02-05 18:07:58 +01:00
Miroslav Šedivý
aa7a131da2
refactor single video track to an array.
2021-02-05 17:40:29 +01:00
Miroslav Šedivý
ebd7e7c065
move gst pipelines to codec.
2021-02-05 15:10:41 +01:00
Miroslav Šedivý
36b7eca43c
name confusion Enabled -> Started.
2021-02-05 14:03:53 +01:00
Miroslav Šedivý
18b6fa0a03
remove config from capture managers.
2021-02-05 13:58:02 +01:00
Miroslav Šedivý
2b72f43c9e
do not start pipeline when error.
2021-02-05 12:41:02 +01:00
Miroslav Šedivý
58ea3665b0
unify capture shutdown.
2021-02-05 12:18:46 +01:00
Miroslav Šedivý
7902d7b1f1
Implement Audio & Video using custom StreamManager.
2021-02-04 20:39:48 +00:00