enumAudioMixer static method
Lists all active application audio sessions (mixers).
Returns a list of ProcessVolume containing volume info for each app.
Implementation
static Future<List<ProcessVolume>?> enumAudioMixer({AudioRole audioRole = AudioRole.multimedia}) async {
final Map<String, dynamic> arguments = <String, dynamic>{"role": audioRole.index};
final Map<dynamic, dynamic>? map = await audioMethodChannel.invokeMethod("enumAudioMixer", arguments);
if (map == null) return null;
final List<ProcessVolume> processVolumes = <ProcessVolume>[];
for (dynamic key in map.keys) {
final ProcessVolume processVolume = ProcessVolume();
final Map<dynamic, dynamic> data = map[key];
processVolume.processId = key as int;
processVolume.processPath = data["processPath"] ?? "";
processVolume.maxVolume = (data["maxVolume"] as num?)?.toDouble() ?? 0.0;
processVolume.peakVolume = (data["peakVolume"] as num?)?.toDouble() ?? 0.0;
processVolumes.add(processVolume);
}
return processVolumes;
}