create static method

Future<DiveAudioSource?> create(
  1. String name, {
  2. DiveInput? input,
})
override

Create an audio source. When input is null, it will create the "default" audio source.

Implementation

static Future<DiveAudioSource?> create(String name, {DiveInput? input}) async {
  final source = DiveAudioSource(name: name, input: input, inputType: DiveInputType.audioSource);

  final deviceId = source.input == null ? "default" : source.input!.id;
  final settings = DiveSettings();
  settings.set("device_id", deviceId);

  final data = settings.toData();
  source.pointer = obslib.createSource(
    sourceUuid: source.trackingUUID,
    inputTypeId: source.inputType!.id!,
    name: source.name!,
    settings: data,
  );

  data.dispose();
  return source.pointer == null ? null : source;
}