Commit Graph

66 Commits

Author SHA1 Message Date
cloudwebrtc 157f94ea04 bump version. 2022-08-02 11:21:33 +08:00
CloudWebRTC a554d92543 screen sharing for desktop. (#135)
* screen sharing for desktop (WIP).

* use git repo for testing.

* update.

* Add sourceId/frameRate to ScreenShareCaptureOptions.

* Compatible with flutter web.

* Rendering of camera and screenshare video tracks at same time.

* Remote screen sharing is shown first, and fixed sub/unsub button for screenshare widget.

* resolved conflict.

* modify flutter-webrtc to pub version.

* remove unused import.

* chore: Common params for Camera and ScreenShare.
2022-08-02 11:17:09 +08:00
CloudWebRTC c7722718dd Downgrade version settings to support flutter 2.8.0+ (#139) 2022-07-18 15:26:41 +08:00
CloudWebRTC e974b08589 fix: camera release. (#138) 2022-07-15 23:52:37 +08:00
CloudWebRTC 66d4052ada fix issue #129. (#136) 2022-07-11 15:14:23 +08:00
davidliu 531cbd1676 iOS screen share (#133) 2022-07-10 22:43:20 +09:00
cloudwebrtc 98d71699c3 bump version. 2022-06-20 15:58:34 +08:00
CloudWebRTC 47cd505a52 bump version for flutter_webrtc. (#127) 2022-06-09 18:48:37 +08:00
Hiroshi Horie dc68c65b23 update dependencies 2022-05-18 22:02:24 +09:00
Hiroshi Horie 6fd0d5578d prepare for 1.0.0 2022-05-18 01:23:33 +09:00
Hiroshi Horie 365c68c709 update packages 2022-05-15 15:15:13 +09:00
Hiroshi Horie 8c227574ac prepare v0.5.9 2022-04-07 13:28:54 +09:00
Hiroshi Horie e0bcacda6d fix publish dry-run 2022-04-05 00:01:26 +09:00
Hiroshi Horie 2f6042ef94 prepare 0.5.8 2022-04-02 15:30:55 +09:00
Hiroshi Horie 88b462432e Send DC info for syncState (#88)
* dc private methods

* impl

* pub

* id

* fix test
2022-04-02 15:09:02 +09:00
Hiroshi Horie da8fe67ec6 update to flutter_webrtc 0.8.3 2022-03-02 08:12:19 +09:00
Hiroshi Horie 7843e87254 Update WebRTC to m97 (#86)
* update WebRTC to m97

* use flutter_webrtc's master
2022-02-26 13:23:36 +09:00
Hiroshi Horie b5c3499a5c ignore import sort for proto files 2022-02-25 15:48:01 +09:00
Hiroshi Horie 0dfbf03e5b import sorter config 2022-02-25 15:44:16 +09:00
Hiroshi Horie c465d37c88 start preparing for 0.5.7 2022-02-17 14:58:16 +07:00
davidliu 9bd546b9a2 tests and mocks for e2e testing (#78)
* tests and mocks for e2e testing

* formatting

* fix analyze errors
2022-02-06 20:36:42 +09:00
Hiroshi Horie cf476e365b remove client side ua parsing 2022-01-31 20:03:14 +07:00
Hiroshi Horie 224047c31f Session migration (#72)
* impl

* retry logic

* simulate

* pass checks

* adjust log level

* retry condition

* fix simulate scenario params

* format

* use `RTCPeerConnectionState` instead of `RTCIceConnectionState`

* adjust retry

* additional check for completer

* more logging

* fix id

* pub

* change package

* doc update

* retry tests

* format

* apply suggestions
2022-01-25 00:53:18 +07:00
Hiroshi Horie 56aeacc291 Capture client info (#71) 2022-01-18 16:16:05 +07:00
Hiroshi Horie d346763ecd update package vers 2022-01-03 09:56:06 +07:00
Hiroshi Horie e154f7ace0 prepare 0.5.6 2022-01-03 09:19:21 +07:00
Hiroshi Horie 38328c5e0d Fix: Visibility Optimization randomly not working (#65)
* use widget id instead of state id

* ignore local video view events

* switch remote view visibility also

* use Key for a reliable id

* remove local check

* clean up

* redesign

* check mounted

* remove mount check

* more optimization

* quick wake up

* mark internal

* rename to adaptiveStream
2022-01-01 12:59:24 +07:00
Hiroshi Horie d79e1f340c pass pub validation 2021-12-13 03:19:15 +07:00
Hiroshi Horie 4a025a4ed2 prepare v0.5.5 2021-12-13 02:53:47 +07:00
Hiroshi Horie 0356599bd2 update flutter_webrtc, add import_sorter 2021-12-05 13:41:43 +07:00
Hiroshi Horie 679d0b81d3 update dependency 2021-12-03 02:13:14 +07:00
Hiroshi Horie c8a6a3f0c1 Windows support (#34)
* generate windows files

* adjustments

* attempt compile

* Fix windows build

* Add note about VS 2019

* Update .gitignore

Co-authored-by: Artur Shellunts <shellunts.artur@gmail.com>
2021-12-02 21:20:10 +07:00
David Zhao 89117c2980 version bump 0.5.4 2021-11-27 10:37:47 -08:00
Hiroshi Horie 357213e7e4 macOS support (#33)
* mac os support 1

* entitlements

* fix updateTrack bug

* clean

* throws on mac

* simplify structure

* lock
2021-11-24 21:32:40 +07:00
Hiroshi Horie 5f813d7fbb prepare for 0.5.3 2021-11-09 21:14:15 +09:00
Hiroshi Horie 9a273fc834 update dependencies 2021-11-09 21:07:17 +09:00
Hiroshi Horie 16910cae25 Video optimizations (#18)
* use events for `VideoTrackRenderer`

* logger

* implemented visibility detection

* optimize code with 1 param debounce func

* stop pending visibility event when disposed

* clean up

* mark internal

* report to track

* call dispose on pub and track

* use internal events to receive visibility events

* clean up visibility for disposed track

* listen to track visibility events on pub

* re-design

* quickly re-enable

* clean up

* clean up
2021-10-25 18:34:02 +09:00
Hiroshi Horie fa5e9c91a3 v0.5.2 2021-10-22 19:36:24 +09:00
Hiroshi Horie c358d63ef5 update to flutter_webrtc 0.7.0 2021-10-21 01:31:23 +09:00
Hiroshi Horie 9366db0dde mac os example (#19) 2021-10-20 05:19:44 +09:00
Hiroshi Horie ffb1d25ed1 ver to 0.5.1 2021-10-02 15:51:30 +09:00
Hiroshi Horie 48e03b84cb Create android & web plugins (#15)
* create android & web plugins

* apply `flutter format .`
2021-10-02 15:20:41 +09:00
David Zhao 46e76e5613 improved description 2021-10-01 22:32:38 -07:00
David Zhao d444d69951 include missing dependencies 2021-10-01 14:18:20 -07:00
David Zhao 9518a2f123 pass SDK and version number to server, v0.5.0 (#14)
* pass SDK and version number to server, v0.5.0

* missing files and formatting

* make format

* line length comment for VSCode
2021-10-01 13:35:32 -07:00
Hiroshi Horie b67c807fd5 Organize events (#13)
* move internal events & remove unused events

* `TrackUnpublishedEvent` for local tracks

* update example since we have local track unpublish events

* use flutter_webrtc 0.6.9
2021-10-01 16:56:36 +09:00
Hiroshi Horie 84618cf56f Fix compile iOS issue (#12)
* fix ios compile
2021-10-01 03:57:16 +09:00
Hiroshi Horie 001f688729 Better audio management (#10)
* add audio_session package

* `AudioManager` initial design

* try to integrate audio manager

* configure audio session

* `DisposeAware`

disposing if already published causes exception.

* organize

* guard flutter_webrtc calls

* websocket async fix

* use `ConnectionState` instead of `_isClosed` and `isReconnecting`

* change create audio track defaults

* update protos

* protocol 3 speaker updates

* fix exception

* emit `RoomDisconnectedEvent` only once

* fix exception

* keep track of local / remote audio tracks

* explicit types

* manage track state

* re-structure audio management

* change defaults

* unpublish all

* use experimental build

* change defaults

* configuring is optional

* call native `RTCAudioSession.setConfiguration`

* defaults adjustment

* iOS only for now

* use lib 92.4515.07

* clean up

* revert audio options for now

* remove pod source

* rename apple related audio

* `createListener` method

* organize native audio

* `SpeakingChangedEvent` only on `Participant`

* refactoring

* fix ios compile

* fix configure audio only for iOS logic

* minor fix & clean up

* change dispose logic

* format protos

* fix unpublishTrack

* `createListener` into a mixin

* simplify

* use flutter_webrtc master

* unpublish for example

* update ios icon

* android icon

* web icon

* favicon
2021-10-01 02:47:18 +09:00
Hiroshi Horie 6445b8d2a8 Switch to new event system (#9)
* `SignalEvents` and `synchronized` mode for `EventsListenable`

* cascade syntax

* clean up

* `RoomEvents`

* `ParticipantEvents`

* all events implemented

* make it compile with M1 macs

* dispose logic

* cleaner connect logic

* ask to publish

* fix initial EngineTrackAddedEvent glitch

* fix unpublishTrack bug

* clean up

* better events docs

* organize event types

* clean up

* cleaner wait logic

* wait for event instead of using Completer

* notifyListeners
2021-09-24 23:37:26 +09:00
Hiroshi Horie f4bd82a919 Subscriber as primary (#8)
* Update protos

* Signal client

* Improve transport

* First implementation

* Fix publish

* Update `PCTransport` for debounce negotiation

* debounce func

* reconnect & events

* Update debounce func

* engine events

* make sure events don't emit after dispose

* prefix flutter_webrtc

* Cleaner `iceServers` update

* don't mutate user provided params

* fix tests

* event manager

* Fix: `Room.onDisconnected` gets fired multiple times

* data publish in example

* cleaner logic

* safer events

* un-prefix with LK

* organize imports

* Clean up

* remove `Tuple`

* `EventsEmitter` can now be directly listened to

`EventsEmitter` extends `EventsListenable`
2021-09-18 00:10:16 +09:00