Commit Graph
1347 Commits
Author SHA1 Message Date
cnderrauberandGitHub 5edb42a9fd experiment fallback to tcp when udp unstable (#1119)
* fallback to tcp when udp unstable
2022-10-31 09:40:20 +08:00
David ColburnandGitHub 0aa8684f1c fix activeRecording (#1132)
* fix activeRecording

* also check if p is nil
2022-10-28 12:09:37 -07:00
Raja SubramanianandGitHub 170d4b8629 Seed snapshots (#1128)
* Seed snapshots

- For one cycle after seeding, delta snap shot can get a huge gap
because of snapshot iitializing from start if not present. Not
a huge deal sa it should not affect functionality, but saving/restoring
(at least with down track) snap shot is a big deal. So just do it.
- Have been seeing a bunch of cases of delta stats getting a lot of
packets due to out-of-order (what seems like) receiver report. So,
save the receiver report and log it when out-of-order is detected
to understand if they are closely spaced or something else could be
happening.

* Remove comment that does not apply anymore

* log current time and RR
2022-10-28 08:53:21 +05:30
cnderrauberandGitHub 4783db34ef Remove DD extension when AV1 not preferred (#1129) 2022-10-27 15:51:50 +08:00
Benjamin PrachtandGitHub 9a45b59414 Use ingress specific grants (#1125) 2022-10-26 21:37:36 -07:00
Mathew KamkarandGitHub b2493b49f7 baseFlags do not need to be set (#1127) 2022-10-26 14:20:13 -07:00
David ColburnandGitHub 7223d9c132 web egress (#1126) 2022-10-26 13:43:56 -07:00
Mathew KamkarandGitHub 26fe910e88 Generated CLI Flags (#1112) 2022-10-25 22:24:08 -07:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
0902176e21 Update module github.com/urfave/cli/v2 to v2.20.3 (#1115)
Generated by renovateBot

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-10-25 21:57:11 -07:00
Raja SubramanianandGitHub 82c2ec8273 Remove named returns from room service. (#1124) 2022-10-26 10:24:13 +05:30
Raja SubramanianandGitHub 1e8cc0dc76 Consolidate getMemoryStats (#1122)
* Consolidate getMemoryStats

* Avoid divide-by-0
2022-10-26 09:16:39 +05:30
cnderrauberandGitHub 7a7fc09372 Add fps calculator for VP8 and DependencyDescriptor (#1110)
* Add fps calculator for VP8 and DependencyDescriptor

* clean code

* unit test

* clean code

* solve comment
2022-10-26 09:28:28 +08:00
Raja SubramanianandGitHub 96a058b503 Populate memory load in node stats. (#1121) 2022-10-25 21:31:23 +05:30
Raja SubramanianandGitHub 222ce5d1a8 Notify max layer taking into account overshoot. (#1117)
* Notify max layer taking into account overshoot.

An attempt to handle case of FF stopping layer 0, but not layer 1.
When max subscribed layer is layer 0, server allows overshoot to layer 1
to ensure continued streaming when the channel is not congested.

But, dynacast could have reported maximum subscribed layer as layer 0.

This is a very simple attempt to address that by taking overshoot
into account. Needs testing if this works well or not.

NOTE: When subsriber/down track is unmuted, it will report
the max subscribed layer as the max required layer. In those cases,
if the client does not start layer 0, there will still be an issue.
IOW, server is not keeping track of client behaviour that the client
has stopped layer 0 and publishing only layer 1. Server is just
accommodating overshoot with this change.

* Fix a couple of tests and change reflect.DeepEqual -> require.Equal as
much as possible
2022-10-23 22:46:01 +05:30
Raja SubramanianandGitHub 794c74360b Do not log duplicate packet error. (#1116)
Also, use bucket.Err* as it has been moved to mediatransportutil
2022-10-23 09:39:50 +05:30
Raja SubramanianandGitHub b9894ab014 Allocate packetMeta up front to reduce number of allocations. (#1108) 2022-10-20 14:31:19 +05:30
Raja SubramanianandGitHub 4344af6fd3 Some misc changes (#1107)
- ticker.Stop always
- clean up timer func (if they are added) on participant close
- sequencer test enhancement to add a real packet after a pdding packet
2022-10-20 11:11:45 +05:30
David ZhaoandGitHub 20cbb02360 v1.2.5 (#1106)
scrapped 1.2.4 release and will release 1.2.5 instead
v1.2.5
2022-10-19 17:42:44 -07:00
David ZhaoandGitHub 8a2c0ec574 Flag to bypass strict config enforcement (#1105)
Useful with the Helm charts, where other keys can be declared together.
2022-10-19 17:22:11 -07:00
David ZhaoandGitHub ec150e3d93 Log level should be warn instead of warning (#1104) 2022-10-19 14:14:23 -07:00
Raja SubramanianandGitHub e43c72c91d Accept same highest sequence number as a puased track sends that (#1102) 2022-10-19 12:43:22 +05:30
Raja SubramanianandGitHub f854201101 Warn on out-of-order RTCP RR. (#1101)
Have been seeing a few instances of "too many packets expected in delta"
when trying to generate RTCP SR on down track. Actual sequence numbers
indicate that start is after the end.

As down track RTPStats are driven by receiver report, wondering if we
are getting RTCP_RR out-of-order somehow causing this to happen.
Cannot find any other reason for this.

So, accepting RTCP_RR based update only if the sequence number is higher
than existing and also logging a warning with sequence numbers if they
look out-of-order.
2022-10-19 11:21:43 +05:30
Raja SubramanianandGitHub 08047eea60 Use pointers for packetMeta in sequencer to save memory. (#1100)
Padding packets do not need the full structure. They just
need a placeholder in the sequencer array. So, use pointers
(with padding slots filled by nil) to save some memory.

Also, don't need padding for audio (yet). As padding packets
are used only for probing and we do not probe using audio tracks (yet).
2022-10-19 09:37:32 +05:30
Raja SubramanianandGitHub 41147e924f Misc clean up (#1099) 2022-10-19 05:02:41 +05:30
David ColburnandGitHub b530572304 update protocol (#1097) 2022-10-17 13:38:53 -07:00
David ColburnandGitHub dff5379b78 remove record check on CreateRoom (#1096) 2022-10-17 11:25:20 -07:00
davidliuandGitHub d07393a5a4 Add server-sdk-kotlin to docs (#1095) 2022-10-17 23:59:44 +09:00
cnderrauberandGitHub 759e3bb1f2 Refine nat 1to1 mapping setting (#1094)
Now only set mapping when user_external_ip enabled or node_ip is
explicitly set. If multiple local address resolved to same external
ip, only the first one will be mapped to external, avoid candidate
conflict between different clients.
2022-10-17 16:11:52 +08:00
David ZhaoandGitHub 4161768530 Log Service API requests (#1091) 2022-10-17 00:16:54 -07:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
6e1416ab65 Update module github.com/urfave/cli/v2 to v2.20.2 (#1089)
Generated by renovateBot

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-10-16 22:10:21 -07:00
Raja SubramanianandGitHub 2fb744c36f Prevent multiple transport fallback in same session. (#1090) 2022-10-17 10:10:31 +05:30
cnderrauberandGitHub 8fd3e8fe2d Support track level stereo and red setting (#1086)
* Support track level stereo and red setting

* fix test client
2022-10-17 10:48:11 +08:00
Samuel HumeauandGitHub 00ec859dd1 Add default handler to 404 (#1088) 2022-10-16 10:30:34 -07:00
David ZhaoandGitHub d6be3cab26 v1.2.4 (#1084) v1.2.4 2022-10-13 14:30:18 -07:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
1c708d4d62 Update github.com/livekit/mediatransportutil digest to 7440725 (#1072)
Generated by renovateBot

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-10-12 23:23:04 -07:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
9e77abebb2 Update module github.com/urfave/cli/v2 to v2.19.2 (#1076)
Generated by renovateBot

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-10-12 23:10:40 -07:00
cnderrauberandGitHub 192d9295f5 Fix simulcast codec block track close (#1082) 2022-10-13 12:46:43 +08:00
Raja SubramanianandGitHub 573850261a Cache RTPStats and seed on re-use (#1080)
* Cache RTPStats and seed on re-use

When a cached down track is re-used, RTPStats was not cached.
This caused sender reports getting out-of-sync with the remote side.
Cache RTPStats and seed it on re-use.

* staticcheck
2022-10-12 09:10:17 +05:30
cnderrauberandGitHub 5f6edd6a49 update pion/ice webrtc for udpmux fix (#1081) 2022-10-12 10:53:55 +08:00
David ColburnandGitHub 78386c4669 Update protocol (#1075)
* update protocol

* auto egress ensure unique filename

* fix tests
2022-10-10 10:38:46 -07:00
Raja SubramanianandGitHub a5bed14d02 Allow TCP fallback on multiple failures. (#1077) 2022-10-10 09:29:29 +05:30
David ZhaoandGitHub 1019faa0e6 Cleanup pass through logging (#1073)
* added filtering for noisy pion logs
* demoted some logs to debug
* using consistent trackID / participant / publisher / subscriber terminology
* removed ice candidate log lines, deferring to combined log
2022-10-06 23:48:37 -07:00
Raja SubramanianandGitHub 792349cc56 Split out mediatransportutil (#1071) 2022-10-06 23:55:59 +05:30
Benjamin PrachtandGitHub c3120679e6 Make sure CreateIngress returns an empty state (#1069) 2022-10-04 19:23:09 -07:00
Raja SubramanianandGitHub 30e5037418 Minor clean up of media track & friends module (#1067) 2022-10-04 05:23:18 +05:30
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
057b9a0d26 Update golang.org/x/sync digest to 8fcdb60 (#1063)
Generated by renovateBot

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-10-03 12:44:37 -07:00
Benjamin PrachtandGitHub 8cf0872ec1 Adopt updated ingress RPC API (#1068) 2022-10-03 11:31:55 -07:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
e77134ee21 Update github.com/livekit/mageutil digest to d919808 (#1066)
Generated by renovateBot

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-10-02 10:58:17 -07:00
David ZhaoandGitHub 02537a121d Store initial track MimeType in TrackInfo (#1065) 2022-09-30 23:33:22 -07:00
cnderrauberandGitHub 716f27c435 Close UDPMux when exit (#1064)
* Close UDPMux when exit

* fix test failed
2022-10-01 09:03:58 +08:00