ionorg/ion-sdk-flutter
ion flutter sdk
- Stars
- 114
- Forks
- 71
- 最近推送(UTC)
- 2022年11月2日
- 專案狀態
- 未封存
語言DartShellPythonDockerfileMakefile
技術主題
使用的依賴
依賴清單 10 項
- events2
^1.0.0 - flutter_webrtc
^0.9.11 - grpc
^3.0.2 - protobuf
^2.1.0 - sdp_transform
^0.3.2 - uuid
^3.0.6 - web_socket_channel
^2.2.0 - flutter_test開發依賴
{"sdk":"flutter"} - pedantic開發依賴
^1.11.1 - test開發依賴
^1.16.8
原始 README
以下為英文專案原文快照,最新內容請造訪 GitHub。
展開 / 收合專案 README
Flutter sdk for ion
Flutter sdk for the Ion backend.
Installation
Edit pubspec.yaml in your flutter projects.
Add
flutter_ion:
Platform Support
- Android
- iOS
- macOS
- Web
Usage
import 'package:flutter_ion/flutter_ion.dart' as ion;
import 'package:uuid/uuid.dart';
// Connect to ion-sfu.
final signal = ion.JsonRPCSignal("ws://ion-sfu:7000/ws");
final String _uuid = Uuid().v4();
ion.Client client = await ion.Client.create(sid: "test session", uid: _uuid, signal: signal);
client.ontrack = (track, ion.RemoteStream stream) {
/// mute a remote stream
stream.mute();
/// unmute a remote stream
stream.unmute();
if (track.kind == "video") {
/// prefer a layer
stream.preferLayer(ion.Layer.medium);
/// render remote stream.
/// remoteRenderer.srcObject = stream.stream;
}
};
ion.LocalStream localStream = await ion.LocalStream.getUserMedia(
constraints: ion.Constraints.defaults..simulcast = true);
/// render local stream.
/// localRenderer.srcObject = localStream.stream;
/// publish stream
await client.publish(localStream);
/// mute local straem
localStream.mute();
/// unmute local stream
localStream.unmute();