Commit Graph

1171 Commits

Author SHA1 Message Date
David Zhao
f09885825e Return ServerInfo to clients on join (#904)
* checkpoint

* Return ServerInfo in join response

* also include node information

* less verbose quality score

* update go modules
2022-08-10 17:04:17 -07:00
renovate[bot]
1b7c8ddba4 Update golang Docker tag to v1.19 (#905)
Generated by renovateBot

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-10 14:11:33 -07:00
Raja Subramanian
2192b0fc8d Limit dynacast to video and media loss proxy to audio (#902)
* Limit dynacast to video and media loss proxy to audio

Was looking at keeping the track type out of those modules
and do a check at a higher level, but it is a bit unwieldy.
So, adding checks to the modules.

Also, ensuring that media loss proxy does not reset unconditionally
every second. Audio RTCP happens once in 5 seconds or so.
So, if server proxied let say 2% at t = 5, t = 6 would have
proxied 0 loss which may or may not be true. So, ensure that
a report was received and proxy value is updated by an actual
report.

* Remove track type from modules
2022-08-10 11:30:49 +05:30
Raja Subramanian
49cf15cdca Fix filtering candidates (#901)
* Filter candidate after setting description

* comment

* Fix filtering candidates

- For offer/answer from remote, do filtering before setting remote
  description so that Pion does not see filtered candidates
- For offer/answer originating from server, do filtering after setting
  local description (comments in code) so that remote side does not
  see filtered candidates.
- Make logging a little consistent and use right context.

* Comment

* TCP fallback config and UT (broken now)

* log SDP only when preferring TCP

* Remove TCP fallback test attempt
2022-08-10 10:42:46 +05:30
Benjamin Pracht
67d3f21122 Only update an IngressInfo if the StartedAt field is newer or equal to the one currently in storage (#897)
This is meant to ensure that we will not overwrite the state of an ingress that already reconnected to a different server on failure or timeout
2022-08-09 19:07:56 -07:00
Raja Subramanian
4ec7e71b2d Logging negotiation as we are seeing some errors with filtering candi… (#900) 2022-08-09 16:57:15 +05:30
Raja Subramanian
82439538e7 Do not send blank frame if not sending leave (#899) 2022-08-09 15:54:59 +05:30
Raja Subramanian
4d7df612ec Refactor DynacastQuality & MediaLossProxy into separate modules (#894)
* WIP commit

* Refactor media loss proxy

* Use DynacastQuality and MediaLossProxy from MediaTrack

* fix test

* Remove unused param

* Remove unused interfaces

* Move interface methods to local

* Split out DynacastManager

* have to add codec to dynacast manager

* RUnlock

* fix restart

* Adding API to force quality and also maintain closed state

* Address PR comments
2022-08-09 11:47:06 +05:30
renovate[bot]
21ffc03a0c Update module go.uber.org/zap to v1.22.0 (#896)
Generated by renovateBot

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-08 14:44:22 -07:00
cnderrauber
1d2bca373b queue restart ice offer while publisher pc gathering ice (#895)
* queue restart ice offer while publisher pc gathering ice

* fix test case fail
2022-08-08 15:40:45 +08:00
David Zhao
939757d2c8 Bulk update dependency versions (#889) 2022-08-06 17:11:03 -07:00
renovate[bot]
584abd5959 Update module github.com/pion/interceptor to v0.1.12 (#887)
Generated by renovateBot

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-06 13:47:05 -07:00
renovate[bot]
9e600181c2 Update module github.com/pion/rtcp to v1.2.10 (#888)
Generated by renovateBot

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-06 13:46:58 -07:00
David Zhao
4222f51758 updated action versions (#885)
* updated action versions

* docker to use go 1.18
2022-08-06 13:40:40 -07:00
renovate[bot]
0918670318 Update golang.org/x/sync digest to 886fb93 (#886)
Generated by renovateBot

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-06 13:40:11 -07:00
renovate[bot]
fa4c660a13 Update module github.com/pion/webrtc/v3 to v3.1.43 (#884)
Generated by renovateBot

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-06 13:34:43 -07:00
renovate[bot]
1c57771646 Update module github.com/mackerelio/go-osstat to v0.2.2 (#882)
Generated by renovateBot

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-06 13:28:23 -07:00
renovate[bot]
159a53254a Update module github.com/bep/debounce to v1.2.1 (#881)
Generated by renovateBot

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-08-06 13:27:38 -07:00
renovate[bot]
23d8b73aa9 Configure Renovate (#879)
* Add renovate.json

* configure

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: David Zhao <dz@livekit.io>
2022-08-06 13:22:00 -07:00
Raja Subramanian
07ac4da86b Log setting ICE config in participant (#877) 2022-08-06 12:06:07 +05:30
David Zhao
15a5f447da Fix Linux install script for non-root users (#876) 2022-08-05 16:01:22 -07:00
Raja Subramanian
4703e30047 Use constants (#875) 2022-08-06 00:15:00 +05:30
Raja Subramanian
ab4d57ab5b Filter out UDP candidates from SDP if allowing only TCP. (#874)
* Filter out UDP candidates from SDP if allowing only TCP.

* Do it properly

* static check

* Adding TCP candidates to test
2022-08-05 23:11:07 +05:30
David Zhao
ab1ccae0c7 Respond to signal ping / pong (#871)
* Respond to signal ping / pong

* Pass back 1 for pong for now, we don't need the timestamp

* update protocol
2022-08-05 09:24:47 -07:00
Raja Subramanian
c75090a0fe Use a TTL of 1 hour for ICE config cache (#873) 2022-08-05 17:31:28 +05:30
Raja Subramanian
3f16018b62 Cache ICE config in room manager. (#872)
* Cache ICE config in room manager.

* mage generate

* Read ICE config within lock
2022-08-05 12:49:19 +05:30
Raja Subramanian
339181a534 Enable fallback to TCP. (#870) 2022-08-05 10:49:34 +05:30
Benjamin Pracht
0cffbe69e9 Fix ingress stream key lookup and avoid nil dereference when room in auth claims doesn't match (#869) 2022-08-04 16:22:55 -07:00
Benjamin Pracht
c333b7a026 Add support for Ingress service (#868)
Also check for Join permission on ingress API calls
2022-08-04 09:48:53 -07:00
Raja Subramanian
6b6f61b4df Adding transport fallback (#866)
* Adding transport fallback

Commented out for now so that we can gather some data.

* Promoting a few logs to info
2022-08-03 23:03:10 +05:30
Raja Subramanian
3c9a2cc66a Log selected ICE candidate pair (#865)
* Log selected ICE candidate pair

* simplify
2022-08-03 13:31:37 +05:30
Raja Subramanian
0f074aeb98 Remove period from log (#863) 2022-08-03 00:41:34 +05:30
Benjamin Pracht
5558aa5228 Make sure CreateIngest populates the stream_key and URL fields (#861) 2022-08-01 11:35:30 -07:00
Raja Subramanian
a393d64ccc Do not re-use transceiver when negotiation is pending. (#862) 2022-07-31 10:50:55 +05:30
cnderrauber
997461a2b6 rtpstats add update last packet method (#858) 2022-07-29 15:29:36 +08:00
Raja Subramanian
52b2e6398b Queue AddTrack if a published track is not yet closed (#857)
* Queue `AddTrack` if a published track is not yet closed

- Adding a queue for pending track by signal cid.
  Ideally, there should not be more than one pending,
  but making a queue to be generic.
- `TrackPublished` is sent if the queue has entries
  when a published track is closed.

* Fix tests and add more checks for queueing AddTrack
2022-07-29 11:51:36 +05:30
David Colburn
2c799f7b9e v1.1.3 2022-07-28 20:41:26 -05:00
David Colburn
7aa5888338 Keep egress info for 24h (#856)
* Keep egress info for 24h

* updates

* better version comparison

* fix test

* duplicated if
2022-07-28 20:27:59 -05:00
David Colburn
0ab4379c5c Separate egress/ingress storage (#855) 2022-07-28 17:01:33 -05:00
Benjamin Pracht
7a2eac8e86 Initial Ingress support in API (#852)
This adds support for the Ingress related endpoints to LiveKit server. This currently doesn't handle reconnections safely.
2022-07-28 09:49:54 -07:00
Benjamin Pracht
188f9c675e Add support for Ingress in store interface (#849) 2022-07-26 16:55:03 -07:00
David Zhao
3e41d68d7a Updated development server instructions (#847) 2022-07-22 12:01:09 -07:00
David Zhao
67bb28e439 Docker-less install process (#828)
* installer

* update install script

* updated readme

* fixed link

* Added flutter

* address review feedback

* update readme with edits

* modify slack badge URL in readme

Co-authored-by: Russ Dsa <russelldsa@gmail.com>
2022-07-21 18:34:23 -07:00
shishirng
a3e8304b56 send participant info/identity during track_published event (#846)
Signed-off-by: shishir gowda <shishir@livekit.io>
2022-07-21 17:34:52 -04:00
Raja Subramanian
e624604453 Revert "ListRooms using sid (#842)" (#845)
This reverts commit f2e1e67e58.
2022-07-21 14:49:41 +05:30
David Zhao
53f51c8cb0 Logging cleanup (#843)
* Logging cleanup

Changes log levels to better match significance

* fix lock
2022-07-21 00:39:49 -07:00
Raja Subramanian
f2e1e67e58 ListRooms using sid (#842)
* ListRooms using `sid`

* correct field name

* Remove contains and latest protocol
2022-07-21 11:05:33 +05:30
Raja Subramanian
51073e8918 Use TimedVersion for subscription permission update (#839)
* Use a read version for subscription permission

* Use TimedVersion for subscription permission updates

* Minor clean up

* latest protocol
2022-07-21 08:52:37 +05:30
Raja Subramanian
c88d2f9af5 Make media track test more stable(hopefully) (#841) 2022-07-20 23:44:10 +05:30
cnderrauber
b69c314145 update non block tcpmux (#840) 2022-07-20 16:33:56 +08:00