Commit Graph
79 Commits
Author SHA1 Message Date
CloudWebRTCandGitHub 7b72721560 fix SpeakerPhone switch for mobile. (#312)
* fix SpeakerPhone switch for mobile.

* update.
2023-06-30 14:47:49 +08:00
CloudWebRTCandGitHub 193f89806f fix: add name to AudioPublishOptions. (#302)
* fix: add name to AudioPublishOptions.

* remove name for Track.

* remove name for Track.

* update.

* fix flutter analyzer.

* update.

* add Deprecated declaration for Track.name.

* update.
2023-06-14 15:31:21 +08:00
CloudWebRTCandGitHub 272484ce7e feat: Stats monitor for Track. (#290)
* feat: Stats monitor for Track.

* fix analyze.

* fix.

* import sorter.

* add monitor layer for example.

* update.

* update.

* fix import sorter.

* update.

* import sorter.

* fix typo for filename.

* revert changes for VideoPublishOptions.videoCodec.

* chore: improve code.

* update.
2023-06-01 16:15:37 +08:00
CloudWebRTCandGitHub 03a7672cf1 fix: default options for fast connect. (#289) 2023-05-22 12:17:34 +08:00
CloudWebRTCandGitHub 0b8aeeeba1 fix: audio play bug for ios safari. (#285)
* fix: audio play bug for ios safari. (WIP).

* chore: Repair and can pop up the playback prompt dialog box correctly.

* chore: add AudioContext to reduce playback delay.
2023-05-16 10:28:09 +08:00
CloudWebRTCandGitHub 4f697ca867 fix bluetooth device enumerate. (#281)
* fix bluetooth device enumerate.

* update README.md

* dart format.

* revert pubspec.yaml.

* fix analyzer.
2023-05-11 17:29:33 +08:00
26947e96d6 e2ee. (#226)
* chore: e2ee.

* update.

* update.

* update.

* update.

* chore: Use feat/frame-encryption branch of flutter-webrtc.

* chore: Add E2EEKEY defines for dart environment, and e2ee switch.

* Add encodedInsertableStreams to RTCConfiguration.

* update.

* feat: Add e2ee indicator for Participant.

* feat: add e2ee worker js for flutter web.

* dart format.

* remove unused file.

* fix flutter analyze .

* update.

* update.

* add: indicate for decryption failure, and string key.

* remove .lock files.

* update.

* update.

* update e2ee.worker for web.

* feat: support setCodecPreferences.

* state TrackE2EEStateEvent.

* fix wrong import interface from dart_webrtc.

* update.

* update.

* update.

* update.

* update pubspec.lock.

* chore: update protocol and add EncryptionType for Participant.

* Update lib/src/e2ee/options.dart

Co-authored-by: Théo Monnom <[email protected]>

* fix typo.

* revert changes for internal import.

* Add _cleanUp() for previous room.

* Add e2ee supports detection method for native/web.

* Remove redundant overriding methods.

* dart format.

* Add e2ee.worker code and deployment docs.

* chore: remove duplicate words.

* chore: using Pbkdf2 derive the key.

* Update pubspec.yaml

* fix e2ee for safari.

* fix key length.

* update e2ee.worker.dart.js.

* fix.

* update proto.

* update.

* chore: add simulate for rachetKey.

* update.

* chore: key ratchet for flutter web.

* update.

* update.

* update.

* chore: key ratchet export for web.

* bump version for xframeworks.

* update.

* chore: some changes for key safety ratcheting.

* update.

* fix typo.

* update.

* rename.

* magic bytes for web.

* bump version for flutter-webrtc.

* fix analyzer.

---------

Co-authored-by: Théo Monnom <[email protected]>
2023-04-27 17:54:32 +08:00
CloudWebRTCandGitHub bc4df105fa feat: support metadata update. (#259) 2023-03-27 09:19:52 +08:00
59ee3105fb feat: Support setVideoFPS for subscribe. (#258)
* feat: Support setVideoFPS for subscribe.

* Update lib/src/publication/remote.dart

Co-authored-by: David Zhao <[email protected]>

* Add comment for setVideoFPS.

---------

Co-authored-by: David Zhao <[email protected]>
2023-03-15 15:51:15 +08:00
CloudWebRTCandGitHub b63d4bde8a Room recording event (#252)
* feat: Add room reocording reminder.

* chore: comment for recording event.
2023-03-08 13:09:04 +08:00
CloudWebRTCandGitHub c74e6777d8 feat: Forward leave reason of disconnected events. (#250)
* feat: Forward leave reason of disconnected events.

* fix analyze.

* chore: print room disconnect reason when event.reason != null.

* chore: rename InternalDisconnectReason => ClientDisconnectReason.
2023-03-07 17:54:18 +08:00
CloudWebRTCandGitHub db2e25d424 feat: web/native device consistency management (#243)
* fix: Force audio settings to be consistent.

* chore: applyAudioSettings for onUnpublish.

* revert audio output select for web.

* add RoomHardwareManagementMethods to Room.

* update.

* fix analyze.

* update.

* update.

* chore: Reset sinkId for web when remoteTrack replays.

* rename setAudioOutput to setSinkId for flutter web.

* chore: Make sure AudioElement has `setSinkId` method.
2023-03-07 17:54:06 +08:00
CloudWebRTCandGitHub 70e6589981 feat: audio output select for web. (#247)
* feat: audio output select for web.

* chore: Add comments for VideoTrackRenderer.

* update.
2023-03-06 10:53:45 +08:00
CloudWebRTCandGitHub 5c4761bc7c Fix: re-publish tracks after re connect (#238)
* fix republish local tracks after reconnect.

* update flutter-webrtc.

* remove unused import.

* add dart_webrtc.

* cleanup.

* fix: Fix sendSyncState timing error, when reconnecting is sending.

* Adjust the re-connect logic to ensure that the publisher negotiates and reconnects correctly.

* Update room.dart
2023-02-17 09:04:56 +08:00
a23eb6332c Audio mute unmute fixes (#234)
* progress

* refresh

* Create Podfile.lock

* Update Podfile.lock

* pub

* update deps.

* fix tests

* dart format .

* fix duplicate imports

---------

Co-authored-by: cloudwebrtc <[email protected]>
2023-02-06 12:43:27 +09:00
CloudWebRTCandGitHub 5d727bee5d [Android] fix screen sharing crash on first boot (#203)
* fix screen sharing crash on first boot.

* update.

* update.

* Update controls.dart
2023-02-03 14:59:49 +08:00
cloudwebrtc 06783cad5c release: 1.1.9. 2022-11-28 11:20:56 +08:00
CloudWebRTCandGitHub 27ea869443 fix: stop audio track on mute. (#207)
* fix: stop audio track on mute.

* chore: Let audioBitrate preset to music.

* update.

* update depends.

* update.
2022-11-14 19:13:48 +08:00
CloudWebRTCandGitHub 0d8441ebfb e2e: fix resume/full-reconnect. (#194)
* fix: full re-connect.

* chore: Reset fullReConnect state after ConnectionState is emitted.

* Support full reconnect, fix Migration, NodeFailure, FullReconnect test cases.

* revert Timeouts.connection.

* update.

* Refactor the resume/reconnect implementation.

* more changes.

* update.

* Changed to simpler reconnect/recovery logic.

* update.

* update.

* code format.

* tidy.

* bump version for flutter-webrtc.

* chore: Remove unused exception class (SignalReconnectError).

* chore: rename `fullReconnectOnNext` to `fullReconnect`.

* update.

* chore: Revert changes for `unpublishTrack`.

* chore: Reconnect signalClient when resumeConnection.

* revert `rethrow` in engine.connect.

* Use removePublishedTrack instead of unpublishTrack (RemoteParticipant).

* chore: Correctly handle PeerConnectionState for resume/full-reconnect.

* tidy.
2022-11-08 16:06:09 +08:00
CloudWebRTCandGitHub a60a2e861c chore: Add simulate for candidate protocol switch. (#176) 2022-09-20 17:47:38 +08:00
CloudWebRTCandGitHub cbdfa634a3 feat: Support for capturing audio for chrome tab. (#158)
* feat: Support for capturing audio for chrome tab.

* Update code comments.
2022-09-07 15:15:11 +08:00
CloudWebRTCandGitHub 82e8a9eedf fix: close issue #154. (#155) 2022-09-07 10:13:32 +08:00
CloudWebRTCandGitHub 1d621501f7 Add hardware api for camera, audio input/output selection. (#147)
* chore: Add hardware api for device settings dialog, camera preview, audio input/output selection.

* update.

* update flutter-webrtc.

* chore: add popupmenu for audio/video selection.

* chore: Improve menu tooltip text.

* Removed hardware settings dialog, added it to experimental branch.

* remove unused code.

* Respond to device changes.

* fixed `flutter analyze`.

* update.

* bump verion to v1.1.1.
2022-08-24 12:41:11 +08:00
CloudWebRTCandGitHub 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
CloudWebRTCandGitHub 3d8bf96651 protocol 8. (#134)
* protocol 8.

* add FastConnectOptions.

* update.

* fix.

* Deprecated the top connect method.

* Add fast connect button in example.

* Create a Listener before connecting.

* Force protocol-v7 for deprecated APIs.

* remove commented out line.

* relative path import.

* update.
2022-07-11 19:54:08 +08:00
davidliuandGitHub 531cbd1676 iOS screen share (#133) 2022-07-10 22:43:20 +09:00
CloudWebRTCandGitHub 9ed0c534be There is a bug in defaultValue in fromEnvironment, so replace the code. (#125) 2022-06-03 09:12:04 +08:00
CloudWebRTCandGitHub 741bead18c Autofill URL and TOKEN in debug mode. (#123)
* Autofill URL and TOKEN in debug mode.

* dart format.

* Set ENV priority higher than prefs.
2022-06-02 10:57:09 +08:00
Hiroshi Horie 566937f630 compatibility with flutter 3.0 2022-05-15 20:56:20 +09:00
Hiroshi Horie 910efe3d64 update protos 2022-04-03 00:31:06 +09:00
Hiroshi Horie 91b604a191 adaptiveStream and dynacast option in example 2022-04-03 00:18:28 +09:00
Hiroshi Horie ead3a7ea6a move sendSimulateScenario 2022-03-06 14:06:39 +09:00
Hiroshi Horie c205660bbf adaptiveStream and dynacast on in example 2022-03-04 22:27:05 +09:00
davidliuandGitHub 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 HorieandGitHub 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 HorieandGitHub aef1fd8804 Subscription permission API (#68)
* signal

* request

* implement

* rename event

* ref

* adjustments based on review

* override subscribed

* move events emit

* fix subscription state

* minor change

* update example for permissions demo

* format & subscriptionState as computed property

* prepare macos build

* unsubscribed event when subscription not allowed
2022-01-10 23:48:44 +07:00
Hiroshi Horie 677ad94e75 more logging for dynacast 2022-01-03 16:37:51 +07:00
Hiroshi Horie 44a42eafea name field for participant 2022-01-02 01:38:54 +07:00
Hiroshi HorieandGitHub 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 94b4b07e92 fix reconnect logic 2021-12-23 01:50:58 +07:00
Hiroshi Horie b91c822fba more docs 2021-12-12 19:09:38 +07:00
Hiroshi Horie 7e1164a74c fix imports 2021-12-10 23:14:21 +07:00
Hiroshi Horie a706a5e1fb organize ConnectOptions RoomOptions RTCConfiguration 2021-12-10 00:23:45 +07:00
Artur ShelluntsandGitHub b6b48ea310 Fix rendering of remote shared screen (#50)
Fix activeVideoTrack to return any unmuted stream, not only first one in the list.
2021-12-07 11:28:25 +01:00
Hiroshi HorieandGitHub 0f5a758cd4 Create room without connecting (#49)
* initial commit

* fix example compile

* format

* clean up

* fix check

* missing import
2021-12-07 17:02:58 +07:00
Hiroshi Horie d20a6e2ddb fix compiling since VideoQuality moved to another file 2021-12-07 12:30:46 +07:00
Hiroshi Horie 5ce12dae85 use setScreenShareEnabled for example 2021-12-07 02:04:08 +07:00
Hiroshi Horie 01902ef7eb example clean up 2021-12-02 14:28:59 +07:00
Hiroshi Horie 64a243a312 update example (no casting) 2021-12-02 14:21:41 +07:00
Hiroshi HorieandGitHub 44864ff525 Type-aware Publication etc (static typing) (#43)
* implemented

* format

* add missing type
2021-12-01 12:15:09 +07:00