667 Commits

Author SHA1 Message Date
Haibo Chen 8a6c6de1db update name of participant (#1213) 2022-12-15 22:03:59 -08:00
Raja Subramanian dfc0411908 Reverting some dynacast logs to Debugw (#1229) 2022-12-15 12:32:07 +05:30
cnderrauber 090c35ddfd change no response sink to info and not return (#1228) 2022-12-14 11:22:23 +08:00
cnderrauber da829fcf8e diable prflx over relay for firefox (#1226)
* Disable prflx over relay for firefox

* remove ice lite change

* solve comment

* disable prflx for publisher too
2022-12-13 14:32:05 +08:00
David Zhao 5af442ac10 Enable item sampler for Room logger (#1222) 2022-12-10 20:07:16 -08:00
David Zhao 7a1273151f Update to new logging library, using sampling participant logger (#1219) 2022-12-09 00:09:03 -08:00
cnderrauber eb134dc535 Close migration muted track which is not fired (#1215) 2022-12-07 13:53:37 +08:00
Raja Subramanian 6bd5504bff Add option to issue full reconnect on a publication error. (#1214)
* Add option to issue full reconnect on a publication error.

Leaving the publication error timeout at 30 seconds as there
are some publications taking long. Also, there are cases
where the peer connection fails after 30 seconds. The peer
connection failure happens after publication error is detected.
But, 30 seconds is a good amount of time for publication to establish.

* prevent recursive lock
2022-12-06 14:46:59 +05:30
cnderrauber 6f27d683a9 Don't output error log if upstream closed while binding (#1211) 2022-12-05 15:32:30 +08:00
cnderrauber 3c907ed460 Add stats for data channel and signal (#1198)
* Add stats for data channel and signal

* Solve comment
2022-11-30 14:53:19 +08:00
Mathew Kamkar caae389717 node type prometheus metric labels (#1197) 2022-11-29 20:36:35 -08:00
cnderrauber aaeb3c933c Fix rtcp lost for downtrack used incorrect buffer factory (#1195)
* Fix rtcp lost for downtrack used incorrect buffer factory

In buffer factory change(#1173), every pariticipant has its own
buffer factory, can't use publisher's bufferfactory to create
DownTrack

* clean code
2022-11-28 13:04:56 +08:00
Raja Subramanian 086009f05a Do not forward media till peer connection is connected. (#1194)
There were some failures with missing media. The only thing I could
see between working and non-working case is when media forwarding
starts. So, delay media forwarding till peer connection is connected.

Also, add a subscribe op only if a subscribe/unsubscribe queuing is
successful. There was a recent change to not queue a subscribe when
the participant is closed/disconnected. This got the subscribe op
counter out of whack.
2022-11-26 21:42:19 +05:30
Raja Subramanian 0256e071ad Promote dyancast logs for debugging (#1190) 2022-11-25 10:16:30 +05:30
cnderrauber c28b07fd11 set stereo max bitrates to 510000 (#1188) 2022-11-24 22:51:15 +08:00
Raja Subramanian 3074cb862f Force 'allowed; even on subscription.' (#1187)
Also not holding lock while resolving by sid. Not pretty.
But, we should deprecate SID based permissions.

Also, wire changes, possibly due to redis cluster PR?
2022-11-23 14:13:20 +05:30
cnderrauber 6711060cdb Add enable loopback candidate option (#1185) 2022-11-23 16:01:36 +08:00
Raja Subramanian 491a15e49e Prevent subscription after participant close. (#1182) 2022-11-23 09:10:44 +05:30
David Zhao b118ba917c Set forceRelay to unset by default (#1184)
Setting it to `DISABLED` could cause clients to override user preference to use relay.
2022-11-22 10:07:56 -08:00
cnderrauber a52a295cf3 Fix potential ssrc collision between participants (#1173) 2022-11-18 10:39:17 +08:00
Raja Subramanian fd1cc36bdc Force full reconnect when there is no previous answer during migration. (#1168) 2022-11-17 10:17:56 +05:30
Raja Subramanian 379301c0bc A few more log tweaks (#1159) 2022-11-11 13:44:14 +05:30
Raja Subramanian fe0502c886 Demote some stable logs to Debugw (#1158)
* Demote some stable logs to Debugw

* Add 'discard message from' to ignore list
2022-11-11 10:17:47 +05:30
cnderrauber 5a8a6d11b2 Set track level codec settings for all pending tracks (#1148) 2022-11-07 17:45:23 +08:00
cnderrauber 0310aa9250 Make sure client get participant info before track fired (#1147) 2022-11-07 14:50:45 +08:00
cnderrauber bdd69c7a1c Add red encoding for opus only publisher (#1137)
* Add red encodings for opus only publisher

* Add test case for red receiver
2022-11-02 10:36:29 +08:00
cnderrauber dd30808e5e Don't collect external address for ip filterd out (#1135) 2022-10-31 17:50:11 +08:00
cnderrauber 5edb42a9fd experiment fallback to tcp when udp unstable (#1119)
* fallback to tcp when udp unstable
2022-10-31 09:40:20 +08:00
David Colburn 0aa8684f1c fix activeRecording (#1132)
* fix activeRecording

* also check if p is nil
2022-10-28 12:09:37 -07:00
cnderrauber 4783db34ef Remove DD extension when AV1 not preferred (#1129) 2022-10-27 15:51:50 +08:00
Mathew Kamkar 26fe910e88 Generated CLI Flags (#1112) 2022-10-25 22:24:08 -07:00
cnderrauber 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 Subramanian 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
Raja Subramanian 41147e924f Misc clean up (#1099) 2022-10-19 05:02:41 +05:30
cnderrauber 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
Raja Subramanian 2fb744c36f Prevent multiple transport fallback in same session. (#1090) 2022-10-17 10:10:31 +05:30
cnderrauber 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
cnderrauber 192d9295f5 Fix simulcast codec block track close (#1082) 2022-10-13 12:46:43 +08:00
Raja Subramanian 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
David Colburn 78386c4669 Update protocol (#1075)
* update protocol

* auto egress ensure unique filename

* fix tests
2022-10-10 10:38:46 -07:00
Raja Subramanian a5bed14d02 Allow TCP fallback on multiple failures. (#1077) 2022-10-10 09:29:29 +05:30
David Zhao 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 Subramanian 792349cc56 Split out mediatransportutil (#1071) 2022-10-06 23:55:59 +05:30
Raja Subramanian 30e5037418 Minor clean up of media track & friends module (#1067) 2022-10-04 05:23:18 +05:30
David Zhao 02537a121d Store initial track MimeType in TrackInfo (#1065) 2022-09-30 23:33:22 -07:00
cnderrauber 716f27c435 Close UDPMux when exit (#1064)
* Close UDPMux when exit

* fix test failed
2022-10-01 09:03:58 +08:00
Raja Subramanian b3bd403316 Small clean up - remove unused pariticpant close reason (#1055) 2022-09-29 21:53:18 +05:30
Raja Subramanian 33f5dbc501 Make strict mode a param (#1054)
So, a wrapping config (like cloud) can skip the strict mode check.
2022-09-29 13:07:32 +05:30
Raja Subramanian c93df27329 Accumulate spatial layers also for SVC codecs (#1053)
* Accumulate spatial layers also for SVC codecs

* Remove TODO

* include temporal layer 0
2022-09-29 12:41:52 +05:30
cnderrauber 4b630d2156 Add ipfilter to exclude ip from candidates gather (#1052) 2022-09-29 14:40:38 +08:00