Commit Graph

501 Commits

Author SHA1 Message Date
David Zhao 182c19e8e2 version v0.13.4 v0.13.4 2021-10-15 00:32:57 -07:00
David Zhao 81712f9502 revert to pion v3.1.0-beta.3
mixing of simulcast and non-simulcast tracks is broken
2021-10-15 00:31:57 -07:00
David Zhao eba0c23375 Handle TrackInfo.Source attribute (#146)
* Support passing along Source attribute
v0.13.3
2021-10-14 13:10:57 -07:00
Raja Subramanian d08646f17e Reuse transceivers (#145)
* WIP - Re-use transceiver

* Support both old and new methods for adding transceiver
2021-10-14 11:57:59 +05:30
Raja Subramanian ac4db4575f LK-105 (Opus DTX) (#140)
* LK-105 (Opus DTX)

https://linear.app/livekit/issue/LK-105/allow-enabling-of-opus-dtx

Enable/Disable Opus DTX using SDP answer based on setting in
`AddTrack` request.

Testing:
--------
Chrome and Firefox work. Having audio problems with Safari
(maybe the Safari 15 issue as I am not getting media)

* Check that receiver has no tracks

* Skip non-audio transceivers

* A small clean up to not use pendin track outside lock and also append with spread

* Address comments from review by David

* Update pkg/rtc/participant.go

Co-authored-by: David Zhao <david@davidzhao.com>

* Pull in tagged version of webrtc and lk protocol

Co-authored-by: David Zhao <david@davidzhao.com>
2021-10-13 11:22:33 +05:30
Mathew Kamkar 84ab0f82af Prometheus counters for RTC connection steps (#143)
* signal ws connection, participant join, ice connection

* must register

* offer negotiation

* dz review: offer and offer_response

* dz review: answer
2021-10-12 15:22:17 -07:00
David Zhao 4149c4a314 removed duplicate region log 2021-10-10 22:52:51 -07:00
Artur Shellunts 03342efe4f Test improvements (#136)
* Fix "ineffectual assignment" linter warning

* Simplify TestClientCouldConnect

* Simplify range expression
2021-10-10 22:37:31 -07:00
David Zhao 575b99840a Fixed handling of multiple nodes in region-aware routing 2021-10-10 22:25:29 -07:00
Brint E. Kriebel 822f8c3944 Region Aware node selection fixes and enhancements (#141)
* cli: Allow setting the current node region with flag or env variable

Also add region to "starting LiveKit server" log.

* routing: Add region to node registration

Register the node's region on the selected router so it can be used for
region aware node selection.

Also add the region to the list-nodes output.

* regionaware: Set minDist to zero for the current node

If you don't set the minDist when leaving the loop early for a node that
matches the current region, the minDist value with still be at max. This
causes the the wrong node to be selected if the current node is the
first one the loop passes through.

Add a test that validates this change. The new test fails if this new
change is not in place.
2021-10-10 22:21:37 -07:00
cnderrauber 8ff18e0326 forward fraction lost from subscriber to publisher (#142)
Co-authored-by: cnderrauber <zengjie9004@gmail.com>
2021-10-10 21:56:13 -07:00
David Colburn 72bd394106 v0.13.2 v0.13.2 2021-10-10 13:27:37 -07:00
David Zhao 3013139fa0 update link to deployment docs 2021-10-08 23:02:52 -07:00
Mathew Kamkar b212fb9a9e Prometheus counter for Signal/RTC messages (#139) 2021-10-08 12:02:08 -07:00
David Colburn 2c9ef2f6bb Update recording service (#137)
* update recording service

* return empty for EndRecording

* update protocol
2021-10-08 13:44:41 -05:00
Russ d'Sa f6f5602bc4 consolidate on api key and api secret to describe our key pairs (#138)
* consolidate on api key and api secret to describe our key pairs

* tweak error message for the keys flag
2021-10-07 15:50:18 -07:00
David Zhao 52e10ea315 handle nil MessageChannel 2021-10-06 22:24:09 -07:00
David Zhao c745f0a318 Region aware routing (#135)
* Region aware routing

* update config, fix spacing on commented out lines
2021-10-06 21:40:04 -07:00
Mathew Kamkar b0eca12ee8 Simple deployment to EC2 (#134)
* aws ami

* cloud-init from base ami

* rename

* readme and ubuntu cloud-init

* nginx ssl termination

* small readme fixes

* nginx on ubuntu cloud-init

* better default config, nginx websocket config

* small change to readme

* packer does not need to start services

* standardize nginx config

* path fixes

* small fixes

* end line return

* move readme to docs repo

* remove lk-image cloud-init and bake into ami
2021-10-05 10:47:55 -07:00
Artur Shellunts 4915692f7c Refactor getConfigString (#133)
* Add test for getConfigString

* Refactor getConfigString

* Increase connect timeout in tests
v0.13.1
2021-10-04 17:20:47 -07:00
David Zhao fb91dce30e version bump v0.13.1 2021-10-04 17:17:41 -07:00
David Zhao 797d2607c4 Fix NACK handling in simulcast (fixed in ion-sfu) 2021-10-04 17:17:41 -07:00
Artur Shellunts 1c12272927 Refactor singlenode_test.go (#131)
* Fix typo

* test: move client creation to where it is used

* Refactor TestAutoSubDisabled
2021-10-04 13:07:38 -07:00
Théo Monnom 939ed10ca6 Room Metadata Implementation (#126) 2021-10-02 22:08:29 -07:00
David Zhao cdb04248fb Fixed reconnection for single node
It does not yet support resuming the session.
2021-09-24 14:19:23 -07:00
David Colburn d83b7b543d update protocol 2021-09-22 13:48:37 -07:00
David Zhao 4fe3c07bb0 version bump 0.13.0 v0.13.0 2021-09-21 23:26:22 -07:00
David Colburn 347bf0345a Recording webhooks (#125)
* dump

* update protocol

* const

* regenerate wire

* message bus nil check

* nil message bus if no redis

* start and stop rec service
2021-09-21 23:46:25 -05:00
David Zhao 3ed3afad2c Recognize Go client in parsing 2021-09-17 16:25:47 -07:00
David Colburn c4c14785be let the room manager delete from router and store (#121) 2021-09-17 13:57:06 -05:00
David Zhao ff47301820 Implements protocol 3 speaker updates (#120)
* Disallow AddTrack from participants that don't have the permission

* Support protocol 3 speaker updates, client info

* update protocol

* Disallow AddTrack from participants that don't have the permission

* increase wait time for GH to pass
2021-09-17 11:47:13 -07:00
David Colburn abde72a907 Remove room manager from room service (#119)
* start splitting

* room allocator

* remove room manager

* Update pkg/service/roomallocator.go

Co-authored-by: David Zhao <david@davidzhao.com>

Co-authored-by: David Zhao <david@davidzhao.com>
2021-09-17 01:29:29 -05:00
Mathew Kamkar 700a879c0b Redis Router graceful stop (#116)
* prestop and hasparticipants in interface

* add prestop function to existing routers

* fakerouter prestop

* update protocol version

* read lock

* redis router graceful stop

* test fix

* force stop
2021-09-15 13:07:44 -07:00
David Zhao 20d0c0ca43 Fix mute of simulcasted video tracks with < 3 encodings (#114) 2021-09-14 15:50:34 -07:00
David Zhao 95a5e3ca85 Fix data publish test (#113) 2021-09-12 00:25:36 -07:00
David Zhao 66997b37f9 improve reliability of data publish test 2021-09-11 23:33:35 -07:00
David Zhao 976e61f10c more generous sleep workaround in test client, better logging 2021-09-11 23:18:20 -07:00
David Zhao ceea024fdb fix tests 2021-09-11 22:50:00 -07:00
David Zhao e99ec0b339 Add tests to data publishing with protocol 3 2021-09-11 22:27:17 -07:00
David Zhao 1bcaf9d0ea update test client to use protocol 3 2021-09-10 20:58:33 -07:00
hn8 2d215f80b3 Restore SetLogger (#111)
- Fix buffer.NewBufferFactory: logger.GetLogger() has extra depth. Passing empty logger will use default logger set by serverlogger.SetLogger()
2021-09-10 13:34:46 -07:00
David Zhao 614ede2edc Supports client protocol 3 - subscriber as primary (#110)
* use subscriber connection as primary whenever possible

* backwards compat for data messages

* bump protocol version
2021-09-09 00:53:15 -07:00
David Colburn 2a3fb5f0e7 move logging to protocol (#109) 2021-09-09 00:45:42 -07:00
David Zhao 63bd531cc8 version bump 0.12.5 v0.12.5 2021-09-05 15:05:21 -10:00
David Colburn e9ffbefa70 move recorder to msg bus (#108) 2021-09-02 17:06:48 -05:00
David Zhao e82d50d717 Send explicit message to clients for mute/unmute. (#107)
* Send explicit message to clients for mute/unmute.

* documentation in config
2021-09-01 21:50:02 -07:00
David Colburn 4044c314b8 participant key (#106)
* participant key

* update fake router

* WriteRTCMessage

* move sink closing

* unused code
2021-08-31 16:14:06 -05:00
David Colburn eb6e763e8d use request context in rtc service 2021-08-30 23:27:04 -07:00
David Zhao d882542491 links to Flutter SDK 2021-08-30 22:56:15 -07:00
David Colburn 1f1eea383f add ctx to interfaces (#105)
* add ctx to interfaces

* use existing context
2021-08-30 20:31:24 -05:00