shuffleIndices property

  1. @override
List<int> shuffleIndices
override

The order to use over sequence when in shuffle mode.

Implementation

@override
List<int> get shuffleIndices {
  final order = <int>[];
  var offset = order.length;
  final childOrders = <List<int>>[];
  for (var audioSourcePlayer in audioSourcePlayers) {
    final childShuffleIndices = audioSourcePlayer.shuffleIndices;
    childOrders.add(childShuffleIndices.map((i) => i + offset).toList());
    offset += childShuffleIndices.length;
  }
  for (var i = 0; i < childOrders.length; i++) {
    order.addAll(childOrders[_shuffleOrder[i]]);
  }
  return order;
}