Files
client-sdk-flutter/lib/src/track/local_audio_track.dart
T

31 lines
801 B
Dart

import 'package:flutter_webrtc/flutter_webrtc.dart';
import '../errors.dart';
import '../proto/livekit_models.pb.dart';
import 'options.dart';
import 'track.dart';
class LocalAudioTrack extends Track {
MediaStream mediaStream;
LocalAudioTrack(String name, MediaStreamTrack track, this.mediaStream)
: super(TrackType.AUDIO, name, track);
Future<LocalAudioTrack> createTrack(LocalAudioTrackOptions? options) async {
try {
var stream = await navigator.mediaDevices.getUserMedia({
"audio": true,
"video": false,
});
if (stream.getAudioTracks().length == 0) {
return Future.error(TrackCreateError());
}
return LocalAudioTrack("", stream.getVideoTracks().first, stream);
} catch (e) {
return Future.error(e);
}
}
}