for (const InputMapping::Bus &bus : input_mapping.buses) {
if (!used_devices.count(bus.device)) {
used_devices.emplace(bus.device, used_devices.size());
- global_audio_mixer->serialize_device(bus.device, mapping_proto.add_device());
+ DeviceSpecProto *device_proto = mapping_proto.add_device();
+ global_audio_mixer->serialize_device(bus.device, device_proto);
+
+ const auto delay_it = input_mapping.extra_delay_ms.find(bus.device);
+ if (delay_it != input_mapping.extra_delay_ms.end()) {
+ device_proto->set_extra_delay_ms(delay_it->second);
+ }
}
BusProto *bus_proto = mapping_proto.add_bus();
default:
assert(false);
}
+ new_mapping->extra_delay_ms.emplace(device_mapping.back(), device_proto.extra_delay_ms());
}
for (const BusProto &bus_proto : mapping_proto.bus()) {