File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 11# CHANGELOG
22
3+ ## 2.4.5
4+
5+ * feat: noise filter for flutter web. (#762 )
6+
37## 2.4.4
48
59* feat: data stream
Original file line number Diff line number Diff line change 11Pod ::Spec . new do |s |
22 s . name = 'livekit_client'
3- s . version = '2.4.4 '
3+ s . version = '2.4.5 '
44 s . summary = 'Open source platform for real-time audio and video.'
55 s . description = 'Open source platform for real-time audio and video.'
66 s . homepage = 'https://livekit.io/'
Original file line number Diff line number Diff line change @@ -44,7 +44,11 @@ export 'src/track/remote/audio.dart';
4444export 'src/track/remote/remote.dart' ;
4545export 'src/track/remote/video.dart' ;
4646export 'src/track/track.dart' ;
47+
4748export 'src/track/processor.dart' ;
49+ export 'src/track/processor_native.dart'
50+ if (dart.library.js_interop) 'src/track/processor_web.dart' ;
51+
4852export 'src/track/audio_visualizer.dart' ;
4953export 'src/types/other.dart' ;
5054export 'src/types/participant_permissions.dart' ;
Original file line number Diff line number Diff line change @@ -20,7 +20,7 @@ import 'support/native.dart';
2020/// Main entry point to connect to a room.
2121/// {@category Room}
2222class LiveKitClient {
23- static const version = '2.4.4 ' ;
23+ static const version = '2.4.5 ' ;
2424
2525 /// Initialize the WebRTC plugin. If this is not manually called, will be
2626 /// initialized with default settings.
Original file line number Diff line number Diff line change 1414
1515import 'dart:io' ;
1616
17+ import 'package:flutter/foundation.dart' ;
18+
1719import '../platform.dart' ;
1820
1921PlatformType lkPlatformImplementation () {
@@ -31,7 +33,7 @@ bool lkPlatformIsWebMobileImplementation() {
3133}
3234
3335bool lkPlatformIsTestImplementation () =>
34- Platform .environment.containsKey ('FLUTTER_TEST' );
36+ ! kIsWeb && ! kIsWasm && Platform .environment.containsKey ('FLUTTER_TEST' );
3537
3638bool lkE2EESupportedImplementation () {
3739 return [
Original file line number Diff line number Diff line change @@ -36,6 +36,9 @@ import '../track.dart';
3636import 'audio.dart' ;
3737import 'video.dart' ;
3838
39+ import '../processor_native.dart'
40+ if (dart.library.js_interop) '../processor_web.dart' ;
41+
3942/// Used to group [LocalVideoTrack] and [RemoteVideoTrack] .
4043mixin VideoTrack on Track {
4144 @internal
@@ -258,13 +261,16 @@ abstract class LocalTrack extends Track {
258261
259262 _processor = processor;
260263
261- var processorOptions = ProcessorOptions (
262- kind: kind,
264+ var processorOptions = AudioProcessorOptions (
263265 track: mediaStreamTrack,
264266 );
265267
266268 await _processor! .init (processorOptions);
267269
270+ if (_processor? .processedTrack != null ) {
271+ setProcessedTrack (processor.processedTrack! );
272+ }
273+
268274 logger.fine ('processor initialized' );
269275
270276 events.emit (TrackProcessorUpdateEvent (track: this , processor: _processor));
Original file line number Diff line number Diff line change @@ -21,6 +21,9 @@ import '../track/local/video.dart';
2121import '../types/video_parameters.dart' ;
2222import 'processor.dart' ;
2323
24+ import 'processor_native.dart'
25+ if (dart.library.js_interop) 'processor_web.dart' ;
26+
2427/// A type that represents front or back of the camera.
2528enum CameraPosition {
2629 front,
Original file line number Diff line number Diff line change @@ -12,18 +12,6 @@ class ProcessorOptions<T extends TrackType> {
1212 });
1313}
1414
15- class AudioProcessorOptions extends ProcessorOptions {
16- AudioProcessorOptions ({
17- required MediaStreamTrack track,
18- }) : super (kind: TrackType .AUDIO , track: track);
19- }
20-
21- class VideoProcessorOptions extends ProcessorOptions {
22- VideoProcessorOptions ({
23- required MediaStreamTrack track,
24- }) : super (kind: TrackType .VIDEO , track: track);
25- }
26-
2715abstract class TrackProcessor <T extends ProcessorOptions > {
2816 String get name;
2917
@@ -36,4 +24,6 @@ abstract class TrackProcessor<T extends ProcessorOptions> {
3624 Future <void > onPublish (Room room);
3725
3826 Future <void > onUnpublish ();
27+
28+ MediaStreamTrack ? get processedTrack;
3929}
Original file line number Diff line number Diff line change 1+ import 'package:flutter_webrtc/flutter_webrtc.dart' ;
2+
3+ import '../types/other.dart' ;
4+ import 'processor.dart' ;
5+
6+ class AudioProcessorOptions extends ProcessorOptions {
7+ AudioProcessorOptions ({
8+ required MediaStreamTrack track,
9+ }) : super (kind: TrackType .AUDIO , track: track);
10+ }
11+
12+ class VideoProcessorOptions extends ProcessorOptions {
13+ VideoProcessorOptions ({
14+ required MediaStreamTrack track,
15+ }) : super (kind: TrackType .VIDEO , track: track);
16+ }
Original file line number Diff line number Diff line change 1- import 'package:web/web.dart' ;
1+ import 'package:flutter_webrtc/flutter_webrtc.dart' show MediaStreamTrack;
2+ import 'package:web/web.dart' show AudioContext, HTMLAudioElement;
23
4+ import '../types/other.dart' ;
35import 'processor.dart' ;
46
5- class AudioProcessorOptionsWeb extends AudioProcessorOptions {
6- AudioProcessorOptionsWeb ({
7+ class AudioProcessorOptions extends ProcessorOptions {
8+ AudioProcessorOptions ({
9+ required MediaStreamTrack track,
710 this .audioElement,
811 this .audioContext,
9- required super .track,
10- });
12+ }) : super (kind: TrackType .AUDIO , track: track);
1113
1214 HTMLAudioElement ? audioElement;
1315 AudioContext ? audioContext;
1416}
17+
18+ class VideoProcessorOptions extends ProcessorOptions {
19+ VideoProcessorOptions ({
20+ required MediaStreamTrack track,
21+ }) : super (kind: TrackType .VIDEO , track: track);
22+ }
You can’t perform that action at this time.
0 commit comments