mirror of
https://github.com/italicsjenga/ableton-rack-converter.git
synced 2024-11-22 15:11:30 +11:00
loads and saves!!!
This commit is contained in:
parent
797799ae2d
commit
e2641154d2
67
Cargo.lock
generated
67
Cargo.lock
generated
|
@ -7,8 +7,7 @@ name = "ableton-rack-converter"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"flate2",
|
"flate2",
|
||||||
"minidom",
|
"xml_dom",
|
||||||
"quick-xml 0.22.0",
|
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
@ -17,6 +16,15 @@ version = "1.0.2"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
|
checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "aho-corasick"
|
||||||
|
version = "0.7.18"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f"
|
||||||
|
dependencies = [
|
||||||
|
"memchr",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "autocfg"
|
name = "autocfg"
|
||||||
version = "1.0.1"
|
version = "1.0.1"
|
||||||
|
@ -56,21 +64,21 @@ version = "0.2.98"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "320cfe77175da3a483efed4bc0adc1968ca050b098ce4f2f1c13a56626128790"
|
checksum = "320cfe77175da3a483efed4bc0adc1968ca050b098ce4f2f1c13a56626128790"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "log"
|
||||||
|
version = "0.4.14"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710"
|
||||||
|
dependencies = [
|
||||||
|
"cfg-if",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "memchr"
|
name = "memchr"
|
||||||
version = "2.4.0"
|
version = "2.4.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "b16bd47d9e329435e309c58469fe0791c2d0d1ba96ec0954152a5ae2b04387dc"
|
checksum = "b16bd47d9e329435e309c58469fe0791c2d0d1ba96ec0954152a5ae2b04387dc"
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "minidom"
|
|
||||||
version = "0.13.0"
|
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
checksum = "332592c2149fc7dd40a64fc9ef6f0d65607284b474cef9817d1fc8c7e7b3608e"
|
|
||||||
dependencies = [
|
|
||||||
"quick-xml 0.20.0",
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "miniz_oxide"
|
name = "miniz_oxide"
|
||||||
version = "0.4.4"
|
version = "0.4.4"
|
||||||
|
@ -81,15 +89,6 @@ dependencies = [
|
||||||
"autocfg",
|
"autocfg",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "quick-xml"
|
|
||||||
version = "0.20.0"
|
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
checksum = "26aab6b48e2590e4a64d1ed808749ba06257882b461d01ca71baeb747074a6dd"
|
|
||||||
dependencies = [
|
|
||||||
"memchr",
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "quick-xml"
|
name = "quick-xml"
|
||||||
version = "0.22.0"
|
version = "0.22.0"
|
||||||
|
@ -98,3 +97,31 @@ checksum = "8533f14c8382aaad0d592c812ac3b826162128b65662331e1127b45c3d18536b"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"memchr",
|
"memchr",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "regex"
|
||||||
|
version = "1.5.4"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "d07a8629359eb56f1e2fb1652bb04212c072a87ba68546a04065d525673ac461"
|
||||||
|
dependencies = [
|
||||||
|
"aho-corasick",
|
||||||
|
"memchr",
|
||||||
|
"regex-syntax",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "regex-syntax"
|
||||||
|
version = "0.6.25"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "xml_dom"
|
||||||
|
version = "0.2.5"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "9d785025af9dcb8f8b8ce48c4f5405b8469833802a3432b04838b392c2d97287"
|
||||||
|
dependencies = [
|
||||||
|
"log",
|
||||||
|
"quick-xml",
|
||||||
|
"regex",
|
||||||
|
]
|
||||||
|
|
|
@ -7,5 +7,4 @@ edition = "2018"
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
flate2 = "1.0"
|
flate2 = "1.0"
|
||||||
quick-xml = "0.22.0"
|
xml_dom = "0.2.5"
|
||||||
minidom = "0.13.0"
|
|
|
@ -1,6 +1,9 @@
|
||||||
use ableton_rack_converter::load_adg;
|
use ableton_rack_converter;
|
||||||
|
use xml_dom::level2::RefNode;
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
let filename = String::from("C:\\Users\\janka\\Documents\\Projects\\Programming\\ableton-rack-converter\\validation\\Utility10.adg");
|
let file_load = String::from("C:\\Users\\janka\\Documents\\Projects\\Programming\\ableton-rack-converter\\validation\\Utility10.adg");
|
||||||
let device = load_adg(&filename);
|
let file_save = String::from("C:\\Users\\janka\\Documents\\Projects\\Programming\\ableton-rack-converter\\validation\\Utility10_save.adg");
|
||||||
|
let device: RefNode = ableton_rack_converter::load_adg(&file_load);
|
||||||
|
ableton_rack_converter::save_adg(&device, &file_save);
|
||||||
}
|
}
|
||||||
|
|
58
src/lib.rs
58
src/lib.rs
|
@ -1,50 +1,46 @@
|
||||||
use flate2::read::GzDecoder;
|
use flate2::{read::GzDecoder, write::GzEncoder, Compression};
|
||||||
use minidom::Element;
|
use std::{
|
||||||
use std::{fs::File, io::Read, str};
|
fs::{self, File},
|
||||||
|
io::{Read, Write},
|
||||||
|
str,
|
||||||
|
};
|
||||||
|
use xml_dom::{level2::RefNode, parser};
|
||||||
|
|
||||||
pub fn load_adg(filename: &str) -> AbletonDeviceGroup {
|
pub fn load_adg(filename: &str) -> RefNode {
|
||||||
let contents = File::open(filename).unwrap();
|
let contents = File::open(filename).expect("failed to load file");
|
||||||
let xml = decompress(contents);
|
let xml = decompress(contents);
|
||||||
let stripped = strip_first_line(&xml);
|
decode(&xml)
|
||||||
// println!("{}", stripped);
|
|
||||||
decode(&stripped);
|
|
||||||
AbletonDeviceGroup::new(xml)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fn decompress(loaded_file: File) -> String {
|
fn decompress(loaded_file: File) -> String {
|
||||||
let mut decoder = GzDecoder::new(loaded_file);
|
let mut decoder = GzDecoder::new(loaded_file);
|
||||||
let mut decompressed = String::new();
|
let mut decompressed = String::new();
|
||||||
decoder.read_to_string(&mut decompressed).unwrap();
|
decoder
|
||||||
|
.read_to_string(&mut decompressed)
|
||||||
|
.expect("could not decompress file");
|
||||||
decompressed
|
decompressed
|
||||||
}
|
}
|
||||||
|
|
||||||
fn decode(xml: &str) {
|
fn decode(xml: &str) -> RefNode {
|
||||||
let root: Result<Element, _> = xml.parse();
|
parser::read_xml(xml).expect("failed to parse xml")
|
||||||
println!("{:?}", root);
|
|
||||||
// let root2 = root.unwrap();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fn strip_first_line(text: &str) -> &str {
|
pub fn save_adg(dom: &RefNode, filename: &str) {
|
||||||
let bytes = text.trim().as_bytes();
|
let xml = encode(dom);
|
||||||
for (i, &val) in bytes.iter().enumerate() {
|
let compressed = compress(&xml);
|
||||||
if val == b'\n' {
|
fs::write(filename, compressed).expect("could not write file");
|
||||||
return &text[i + 1..bytes.len()];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
&text
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pub struct AbletonDeviceGroup {
|
fn compress(xml: &str) -> Vec<u8> {
|
||||||
body: String,
|
let mut encoder = GzEncoder::new(Vec::new(), Compression::default());
|
||||||
|
encoder
|
||||||
|
.write_all(xml.as_bytes())
|
||||||
|
.expect("could not compress");
|
||||||
|
encoder.finish().unwrap()
|
||||||
}
|
}
|
||||||
|
|
||||||
impl AbletonDeviceGroup {
|
fn encode(dom: &RefNode) -> String {
|
||||||
pub fn new(body: String) -> AbletonDeviceGroup {
|
dom.to_string()
|
||||||
AbletonDeviceGroup { body }
|
|
||||||
}
|
|
||||||
pub fn get_body(&self) -> &str {
|
|
||||||
&self.body
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
|
|
653
validation/Utility10_save
Normal file
653
validation/Utility10_save
Normal file
|
@ -0,0 +1,653 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<Ableton SchemaChangeCount="5" Revision="a4cc5da58a12b2430753133883a25ad12aa979b7" Creator="Ableton Live 10.1.35" MajorVersion="5" MinorVersion="10.0_377">
|
||||||
|
<GroupDevicePreset>
|
||||||
|
<OverwriteProtectionNumber Value="2561"></OverwriteProtectionNumber>
|
||||||
|
<Device>
|
||||||
|
<AudioEffectGroupDevice Id="0">
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<LomIdView Value="0"></LomIdView>
|
||||||
|
<IsExpanded Value="true"></IsExpanded>
|
||||||
|
<On>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="true"></Manual>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<MidiCCOnOffThresholds>
|
||||||
|
<Min Value="64"></Min>
|
||||||
|
<Max Value="127"></Max>
|
||||||
|
</MidiCCOnOffThresholds>
|
||||||
|
</On>
|
||||||
|
<ParametersListWrapper LomId="0"></ParametersListWrapper>
|
||||||
|
<LastSelectedTimeableIndex Value="0"></LastSelectedTimeableIndex>
|
||||||
|
<LastSelectedClipEnvelopeIndex Value="0"></LastSelectedClipEnvelopeIndex>
|
||||||
|
<LastPresetRef>
|
||||||
|
<Value>
|
||||||
|
<AbletonDefaultPresetRef Id="0">
|
||||||
|
<FileRef>
|
||||||
|
<HasRelativePath Value="true"></HasRelativePath>
|
||||||
|
<RelativePathType Value="5"></RelativePathType>
|
||||||
|
<RelativePath>
|
||||||
|
<RelativePathElement Id="0" Dir="Devices"></RelativePathElement>
|
||||||
|
<RelativePathElement Dir="Audio Effects" Id="1"></RelativePathElement>
|
||||||
|
<RelativePathElement Dir="Audio Effect Rack" Id="2"></RelativePathElement>
|
||||||
|
</RelativePath>
|
||||||
|
<Name Value=""></Name>
|
||||||
|
<Type Value="1"></Type>
|
||||||
|
<Data>43003A005C00500072006F006700720061006D0044006100740061005C00410062006C0065007400
|
||||||
|
6F006E005C004C006900760065002000310030002000530075006900740065005C00520065007300
|
||||||
|
6F00750072006300650073005C0043006F007200650020004C006900620072006100720079005C00
|
||||||
|
44006500760069006300650073005C0041007500640069006F002000450066006600650063007400
|
||||||
|
73005C0041007500640069006F00200045006600660065006300740020005200610063006B000000</Data>
|
||||||
|
<RefersToFolder Value="true"></RefersToFolder>
|
||||||
|
<SearchHint>
|
||||||
|
<PathHint></PathHint>
|
||||||
|
<FileSize Value="0"></FileSize>
|
||||||
|
<Crc Value="0"></Crc>
|
||||||
|
<MaxCrcSize Value="0"></MaxCrcSize>
|
||||||
|
<HasExtendedInfo Value="false"></HasExtendedInfo>
|
||||||
|
</SearchHint>
|
||||||
|
<LivePackName Value="Core Library"></LivePackName>
|
||||||
|
<LivePackId Value="www.ableton.com/0"></LivePackId>
|
||||||
|
</FileRef>
|
||||||
|
<DeviceId Name="AudioEffectGroupDevice"></DeviceId>
|
||||||
|
</AbletonDefaultPresetRef>
|
||||||
|
</Value>
|
||||||
|
</LastPresetRef>
|
||||||
|
<LockedScripts></LockedScripts>
|
||||||
|
<IsFolded Value="false"></IsFolded>
|
||||||
|
<ShouldShowPresetName Value="true"></ShouldShowPresetName>
|
||||||
|
<UserName Value=""></UserName>
|
||||||
|
<Annotation Value=""></Annotation>
|
||||||
|
<SourceContext>
|
||||||
|
<Value></Value>
|
||||||
|
</SourceContext>
|
||||||
|
<OverwriteProtectionNumber Value="2561"></OverwriteProtectionNumber>
|
||||||
|
<Branches></Branches>
|
||||||
|
<IsBranchesListVisible Value="true"></IsBranchesListVisible>
|
||||||
|
<IsReturnBranchesListVisible Value="false"></IsReturnBranchesListVisible>
|
||||||
|
<IsRangesEditorVisible Value="false"></IsRangesEditorVisible>
|
||||||
|
<AreDevicesVisible Value="false"></AreDevicesVisible>
|
||||||
|
<MacroControls.0>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="0"></Manual>
|
||||||
|
<MidiControllerRange>
|
||||||
|
<Min Value="0"></Min>
|
||||||
|
<Max Value="127"></Max>
|
||||||
|
</MidiControllerRange>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<ModulationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</ModulationTarget>
|
||||||
|
</MacroControls.0>
|
||||||
|
<MacroControls.1>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="0"></Manual>
|
||||||
|
<MidiControllerRange>
|
||||||
|
<Min Value="0"></Min>
|
||||||
|
<Max Value="127"></Max>
|
||||||
|
</MidiControllerRange>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<ModulationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</ModulationTarget>
|
||||||
|
</MacroControls.1>
|
||||||
|
<MacroControls.2>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="0"></Manual>
|
||||||
|
<MidiControllerRange>
|
||||||
|
<Min Value="0"></Min>
|
||||||
|
<Max Value="127"></Max>
|
||||||
|
</MidiControllerRange>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<ModulationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</ModulationTarget>
|
||||||
|
</MacroControls.2>
|
||||||
|
<MacroControls.3>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="0"></Manual>
|
||||||
|
<MidiControllerRange>
|
||||||
|
<Min Value="0"></Min>
|
||||||
|
<Max Value="127"></Max>
|
||||||
|
</MidiControllerRange>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<ModulationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</ModulationTarget>
|
||||||
|
</MacroControls.3>
|
||||||
|
<MacroControls.4>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="0"></Manual>
|
||||||
|
<MidiControllerRange>
|
||||||
|
<Min Value="0"></Min>
|
||||||
|
<Max Value="127"></Max>
|
||||||
|
</MidiControllerRange>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<ModulationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</ModulationTarget>
|
||||||
|
</MacroControls.4>
|
||||||
|
<MacroControls.5>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="0"></Manual>
|
||||||
|
<MidiControllerRange>
|
||||||
|
<Min Value="0"></Min>
|
||||||
|
<Max Value="127"></Max>
|
||||||
|
</MidiControllerRange>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<ModulationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</ModulationTarget>
|
||||||
|
</MacroControls.5>
|
||||||
|
<MacroControls.6>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="0"></Manual>
|
||||||
|
<MidiControllerRange>
|
||||||
|
<Min Value="0"></Min>
|
||||||
|
<Max Value="127"></Max>
|
||||||
|
</MidiControllerRange>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<ModulationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</ModulationTarget>
|
||||||
|
</MacroControls.6>
|
||||||
|
<MacroControls.7>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="0"></Manual>
|
||||||
|
<MidiControllerRange>
|
||||||
|
<Min Value="0"></Min>
|
||||||
|
<Max Value="127"></Max>
|
||||||
|
</MidiControllerRange>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<ModulationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</ModulationTarget>
|
||||||
|
</MacroControls.7>
|
||||||
|
<MacroDisplayNames.0 Value="Macro 1"></MacroDisplayNames.0>
|
||||||
|
<MacroDisplayNames.1 Value="Macro 2"></MacroDisplayNames.1>
|
||||||
|
<MacroDisplayNames.2 Value="Macro 3"></MacroDisplayNames.2>
|
||||||
|
<MacroDisplayNames.3 Value="Macro 4"></MacroDisplayNames.3>
|
||||||
|
<MacroDisplayNames.4 Value="Macro 5"></MacroDisplayNames.4>
|
||||||
|
<MacroDisplayNames.5 Value="Macro 6"></MacroDisplayNames.5>
|
||||||
|
<MacroDisplayNames.6 Value="Macro 7"></MacroDisplayNames.6>
|
||||||
|
<MacroDisplayNames.7 Value="Macro 8"></MacroDisplayNames.7>
|
||||||
|
<MacroDefaults.0 Value="-1"></MacroDefaults.0>
|
||||||
|
<MacroDefaults.1 Value="-1"></MacroDefaults.1>
|
||||||
|
<MacroDefaults.2 Value="-1"></MacroDefaults.2>
|
||||||
|
<MacroDefaults.3 Value="-1"></MacroDefaults.3>
|
||||||
|
<MacroDefaults.4 Value="-1"></MacroDefaults.4>
|
||||||
|
<MacroDefaults.5 Value="-1"></MacroDefaults.5>
|
||||||
|
<MacroDefaults.6 Value="-1"></MacroDefaults.6>
|
||||||
|
<MacroDefaults.7 Value="-1"></MacroDefaults.7>
|
||||||
|
<MacroAnnotations.0 Value=""></MacroAnnotations.0>
|
||||||
|
<MacroAnnotations.1 Value=""></MacroAnnotations.1>
|
||||||
|
<MacroAnnotations.2 Value=""></MacroAnnotations.2>
|
||||||
|
<MacroAnnotations.3 Value=""></MacroAnnotations.3>
|
||||||
|
<MacroAnnotations.4 Value=""></MacroAnnotations.4>
|
||||||
|
<MacroAnnotations.5 Value=""></MacroAnnotations.5>
|
||||||
|
<MacroAnnotations.6 Value=""></MacroAnnotations.6>
|
||||||
|
<MacroAnnotations.7 Value=""></MacroAnnotations.7>
|
||||||
|
<ForceDisplayGenericValue.0 Value="false"></ForceDisplayGenericValue.0>
|
||||||
|
<ForceDisplayGenericValue.1 Value="false"></ForceDisplayGenericValue.1>
|
||||||
|
<ForceDisplayGenericValue.2 Value="false"></ForceDisplayGenericValue.2>
|
||||||
|
<ForceDisplayGenericValue.3 Value="false"></ForceDisplayGenericValue.3>
|
||||||
|
<ForceDisplayGenericValue.4 Value="false"></ForceDisplayGenericValue.4>
|
||||||
|
<ForceDisplayGenericValue.5 Value="false"></ForceDisplayGenericValue.5>
|
||||||
|
<ForceDisplayGenericValue.6 Value="false"></ForceDisplayGenericValue.6>
|
||||||
|
<ForceDisplayGenericValue.7 Value="false"></ForceDisplayGenericValue.7>
|
||||||
|
<AreMacroControlsVisible Value="false"></AreMacroControlsVisible>
|
||||||
|
<IsAutoSelectEnabled Value="false"></IsAutoSelectEnabled>
|
||||||
|
<ChainSelector>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="0"></Manual>
|
||||||
|
<MidiControllerRange>
|
||||||
|
<Min Value="0"></Min>
|
||||||
|
<Max Value="127"></Max>
|
||||||
|
</MidiControllerRange>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<ModulationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</ModulationTarget>
|
||||||
|
</ChainSelector>
|
||||||
|
<ChainSelectorRelativePosition Value="-1073741824"></ChainSelectorRelativePosition>
|
||||||
|
<ViewsToRestoreWhenUnfolding Value="2"></ViewsToRestoreWhenUnfolding>
|
||||||
|
<ReturnBranches></ReturnBranches>
|
||||||
|
<BranchesSplitterProportion Value="0.5"></BranchesSplitterProportion>
|
||||||
|
<ShowBranchesInSessionMixer Value="false"></ShowBranchesInSessionMixer>
|
||||||
|
<MacroColorIndex.0 Value="0"></MacroColorIndex.0>
|
||||||
|
<MacroColorIndex.1 Value="0"></MacroColorIndex.1>
|
||||||
|
<MacroColorIndex.2 Value="0"></MacroColorIndex.2>
|
||||||
|
<MacroColorIndex.3 Value="0"></MacroColorIndex.3>
|
||||||
|
<MacroColorIndex.4 Value="0"></MacroColorIndex.4>
|
||||||
|
<MacroColorIndex.5 Value="0"></MacroColorIndex.5>
|
||||||
|
<MacroColorIndex.6 Value="0"></MacroColorIndex.6>
|
||||||
|
<MacroColorIndex.7 Value="0"></MacroColorIndex.7>
|
||||||
|
<LockId Value="0"></LockId>
|
||||||
|
<LockSeal Value="0"></LockSeal>
|
||||||
|
<ChainsListWrapper LomId="0"></ChainsListWrapper>
|
||||||
|
<ReturnChainsListWrapper LomId="0"></ReturnChainsListWrapper>
|
||||||
|
</AudioEffectGroupDevice>
|
||||||
|
</Device>
|
||||||
|
<PresetRef>
|
||||||
|
<AbletonDefaultPresetRef Id="0">
|
||||||
|
<FileRef>
|
||||||
|
<HasRelativePath Value="true"></HasRelativePath>
|
||||||
|
<RelativePathType Value="5"></RelativePathType>
|
||||||
|
<RelativePath>
|
||||||
|
<RelativePathElement Id="0" Dir="Devices"></RelativePathElement>
|
||||||
|
<RelativePathElement Dir="Audio Effects" Id="1"></RelativePathElement>
|
||||||
|
<RelativePathElement Id="2" Dir="Audio Effect Rack"></RelativePathElement>
|
||||||
|
</RelativePath>
|
||||||
|
<Name Value=""></Name>
|
||||||
|
<Type Value="1"></Type>
|
||||||
|
<Data>43003A005C00500072006F006700720061006D0044006100740061005C00410062006C0065007400
|
||||||
|
6F006E005C004C006900760065002000310030002000530075006900740065005C00520065007300
|
||||||
|
6F00750072006300650073005C0043006F007200650020004C006900620072006100720079005C00
|
||||||
|
44006500760069006300650073005C0041007500640069006F002000450066006600650063007400
|
||||||
|
73005C0041007500640069006F00200045006600660065006300740020005200610063006B000000</Data>
|
||||||
|
<RefersToFolder Value="true"></RefersToFolder>
|
||||||
|
<SearchHint>
|
||||||
|
<PathHint></PathHint>
|
||||||
|
<FileSize Value="0"></FileSize>
|
||||||
|
<Crc Value="0"></Crc>
|
||||||
|
<MaxCrcSize Value="0"></MaxCrcSize>
|
||||||
|
<HasExtendedInfo Value="false"></HasExtendedInfo>
|
||||||
|
</SearchHint>
|
||||||
|
<LivePackName Value="Core Library"></LivePackName>
|
||||||
|
<LivePackId Value="www.ableton.com/0"></LivePackId>
|
||||||
|
</FileRef>
|
||||||
|
<DeviceId Name="AudioEffectGroupDevice"></DeviceId>
|
||||||
|
</AbletonDefaultPresetRef>
|
||||||
|
</PresetRef>
|
||||||
|
<BranchPresets>
|
||||||
|
<AudioEffectBranchPreset Id="0">
|
||||||
|
<Name Value=""></Name>
|
||||||
|
<IsSoloed Value="false"></IsSoloed>
|
||||||
|
<DevicePresets>
|
||||||
|
<AbletonDevicePreset Id="0">
|
||||||
|
<OverwriteProtectionNumber Value="2561"></OverwriteProtectionNumber>
|
||||||
|
<Device>
|
||||||
|
<StereoGain Id="0">
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<LomIdView Value="0"></LomIdView>
|
||||||
|
<IsExpanded Value="true"></IsExpanded>
|
||||||
|
<On>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="true"></Manual>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<MidiCCOnOffThresholds>
|
||||||
|
<Min Value="64"></Min>
|
||||||
|
<Max Value="127"></Max>
|
||||||
|
</MidiCCOnOffThresholds>
|
||||||
|
</On>
|
||||||
|
<ParametersListWrapper LomId="0"></ParametersListWrapper>
|
||||||
|
<LastSelectedTimeableIndex Value="0"></LastSelectedTimeableIndex>
|
||||||
|
<LastSelectedClipEnvelopeIndex Value="0"></LastSelectedClipEnvelopeIndex>
|
||||||
|
<LastPresetRef>
|
||||||
|
<Value>
|
||||||
|
<AbletonDefaultPresetRef Id="0">
|
||||||
|
<FileRef>
|
||||||
|
<HasRelativePath Value="false"></HasRelativePath>
|
||||||
|
<RelativePathType Value="0"></RelativePathType>
|
||||||
|
<RelativePath></RelativePath>
|
||||||
|
<Name Value=""></Name>
|
||||||
|
<Type Value="0"></Type>
|
||||||
|
<Data></Data>
|
||||||
|
<RefersToFolder Value="false"></RefersToFolder>
|
||||||
|
<SearchHint>
|
||||||
|
<PathHint></PathHint>
|
||||||
|
<FileSize Value="0"></FileSize>
|
||||||
|
<Crc Value="0"></Crc>
|
||||||
|
<MaxCrcSize Value="0"></MaxCrcSize>
|
||||||
|
<HasExtendedInfo Value="false"></HasExtendedInfo>
|
||||||
|
</SearchHint>
|
||||||
|
<LivePackName Value=""></LivePackName>
|
||||||
|
<LivePackId Value=""></LivePackId>
|
||||||
|
</FileRef>
|
||||||
|
<DeviceId Name="StereoGain"></DeviceId>
|
||||||
|
</AbletonDefaultPresetRef>
|
||||||
|
</Value>
|
||||||
|
</LastPresetRef>
|
||||||
|
<LockedScripts></LockedScripts>
|
||||||
|
<IsFolded Value="false"></IsFolded>
|
||||||
|
<ShouldShowPresetName Value="true"></ShouldShowPresetName>
|
||||||
|
<UserName Value=""></UserName>
|
||||||
|
<Annotation Value=""></Annotation>
|
||||||
|
<SourceContext>
|
||||||
|
<Value></Value>
|
||||||
|
</SourceContext>
|
||||||
|
<OverwriteProtectionNumber Value="2561"></OverwriteProtectionNumber>
|
||||||
|
<PhaseInvertL>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="false"></Manual>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<MidiCCOnOffThresholds>
|
||||||
|
<Min Value="64"></Min>
|
||||||
|
<Max Value="127"></Max>
|
||||||
|
</MidiCCOnOffThresholds>
|
||||||
|
</PhaseInvertL>
|
||||||
|
<PhaseInvertR>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="false"></Manual>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<MidiCCOnOffThresholds>
|
||||||
|
<Min Value="64"></Min>
|
||||||
|
<Max Value="127"></Max>
|
||||||
|
</MidiCCOnOffThresholds>
|
||||||
|
</PhaseInvertR>
|
||||||
|
<ChannelMode>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="1"></Manual>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
</ChannelMode>
|
||||||
|
<StereoWidth>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="1"></Manual>
|
||||||
|
<MidiControllerRange>
|
||||||
|
<Min Value="0"></Min>
|
||||||
|
<Max Value="4"></Max>
|
||||||
|
</MidiControllerRange>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<ModulationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</ModulationTarget>
|
||||||
|
</StereoWidth>
|
||||||
|
<MidSideBalance>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="1"></Manual>
|
||||||
|
<MidiControllerRange>
|
||||||
|
<Min Value="0"></Min>
|
||||||
|
<Max Value="2"></Max>
|
||||||
|
</MidiControllerRange>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<ModulationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</ModulationTarget>
|
||||||
|
</MidSideBalance>
|
||||||
|
<MidSideBalanceOn Value="false"></MidSideBalanceOn>
|
||||||
|
<Mono>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="false"></Manual>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<MidiCCOnOffThresholds>
|
||||||
|
<Min Value="64"></Min>
|
||||||
|
<Max Value="127"></Max>
|
||||||
|
</MidiCCOnOffThresholds>
|
||||||
|
</Mono>
|
||||||
|
<BassMono>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="false"></Manual>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<MidiCCOnOffThresholds>
|
||||||
|
<Min Value="64"></Min>
|
||||||
|
<Max Value="127"></Max>
|
||||||
|
</MidiCCOnOffThresholds>
|
||||||
|
</BassMono>
|
||||||
|
<BassMonoAudition Value="false"></BassMonoAudition>
|
||||||
|
<BassMonoFrequency>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="120"></Manual>
|
||||||
|
<MidiControllerRange>
|
||||||
|
<Min Value="50"></Min>
|
||||||
|
<Max Value="500"></Max>
|
||||||
|
</MidiControllerRange>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<ModulationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</ModulationTarget>
|
||||||
|
</BassMonoFrequency>
|
||||||
|
<Balance>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="0"></Manual>
|
||||||
|
<MidiControllerRange>
|
||||||
|
<Min Value="-1"></Min>
|
||||||
|
<Max Value="1"></Max>
|
||||||
|
</MidiControllerRange>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<ModulationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</ModulationTarget>
|
||||||
|
</Balance>
|
||||||
|
<Gain>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="1"></Manual>
|
||||||
|
<MidiControllerRange>
|
||||||
|
<Min Value="0"></Min>
|
||||||
|
<Max Value="56.2341309"></Max>
|
||||||
|
</MidiControllerRange>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<ModulationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</ModulationTarget>
|
||||||
|
</Gain>
|
||||||
|
<LegacyGain>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="0"></Manual>
|
||||||
|
<MidiControllerRange>
|
||||||
|
<Min Value="-35"></Min>
|
||||||
|
<Max Value="35"></Max>
|
||||||
|
</MidiControllerRange>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<ModulationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</ModulationTarget>
|
||||||
|
</LegacyGain>
|
||||||
|
<Mute>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="false"></Manual>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<MidiCCOnOffThresholds>
|
||||||
|
<Min Value="64"></Min>
|
||||||
|
<Max Value="127"></Max>
|
||||||
|
</MidiCCOnOffThresholds>
|
||||||
|
</Mute>
|
||||||
|
<DcFilter>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="false"></Manual>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<MidiCCOnOffThresholds>
|
||||||
|
<Min Value="64"></Min>
|
||||||
|
<Max Value="127"></Max>
|
||||||
|
</MidiCCOnOffThresholds>
|
||||||
|
</DcFilter>
|
||||||
|
<LegacyMode Value="false"></LegacyMode>
|
||||||
|
</StereoGain>
|
||||||
|
</Device>
|
||||||
|
<PresetRef>
|
||||||
|
<AbletonDefaultPresetRef Id="0">
|
||||||
|
<FileRef>
|
||||||
|
<HasRelativePath Value="false"></HasRelativePath>
|
||||||
|
<RelativePathType Value="0"></RelativePathType>
|
||||||
|
<RelativePath></RelativePath>
|
||||||
|
<Name Value=""></Name>
|
||||||
|
<Type Value="0"></Type>
|
||||||
|
<Data></Data>
|
||||||
|
<RefersToFolder Value="false"></RefersToFolder>
|
||||||
|
<SearchHint>
|
||||||
|
<PathHint></PathHint>
|
||||||
|
<FileSize Value="0"></FileSize>
|
||||||
|
<Crc Value="0"></Crc>
|
||||||
|
<MaxCrcSize Value="0"></MaxCrcSize>
|
||||||
|
<HasExtendedInfo Value="false"></HasExtendedInfo>
|
||||||
|
</SearchHint>
|
||||||
|
<LivePackName Value=""></LivePackName>
|
||||||
|
<LivePackId Value=""></LivePackId>
|
||||||
|
</FileRef>
|
||||||
|
<DeviceId Name="StereoGain"></DeviceId>
|
||||||
|
</AbletonDefaultPresetRef>
|
||||||
|
</PresetRef>
|
||||||
|
</AbletonDevicePreset>
|
||||||
|
</DevicePresets>
|
||||||
|
<MixerPreset>
|
||||||
|
<AbletonDevicePreset Id="0">
|
||||||
|
<OverwriteProtectionNumber Value="2561"></OverwriteProtectionNumber>
|
||||||
|
<Device>
|
||||||
|
<AudioBranchMixerDevice Id="0">
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<LomIdView Value="0"></LomIdView>
|
||||||
|
<IsExpanded Value="true"></IsExpanded>
|
||||||
|
<On>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="true"></Manual>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<MidiCCOnOffThresholds>
|
||||||
|
<Min Value="64"></Min>
|
||||||
|
<Max Value="127"></Max>
|
||||||
|
</MidiCCOnOffThresholds>
|
||||||
|
</On>
|
||||||
|
<ParametersListWrapper LomId="0"></ParametersListWrapper>
|
||||||
|
<LastSelectedTimeableIndex Value="0"></LastSelectedTimeableIndex>
|
||||||
|
<LastSelectedClipEnvelopeIndex Value="0"></LastSelectedClipEnvelopeIndex>
|
||||||
|
<LastPresetRef>
|
||||||
|
<Value></Value>
|
||||||
|
</LastPresetRef>
|
||||||
|
<LockedScripts></LockedScripts>
|
||||||
|
<IsFolded Value="false"></IsFolded>
|
||||||
|
<ShouldShowPresetName Value="true"></ShouldShowPresetName>
|
||||||
|
<UserName Value=""></UserName>
|
||||||
|
<Annotation Value=""></Annotation>
|
||||||
|
<SourceContext>
|
||||||
|
<Value></Value>
|
||||||
|
</SourceContext>
|
||||||
|
<OverwriteProtectionNumber Value="2561"></OverwriteProtectionNumber>
|
||||||
|
<Speaker>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="true"></Manual>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<MidiCCOnOffThresholds>
|
||||||
|
<Min Value="64"></Min>
|
||||||
|
<Max Value="127"></Max>
|
||||||
|
</MidiCCOnOffThresholds>
|
||||||
|
</Speaker>
|
||||||
|
<Volume>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="1"></Manual>
|
||||||
|
<MidiControllerRange>
|
||||||
|
<Min Value="0.0003162277571"></Min>
|
||||||
|
<Max Value="1.99526238"></Max>
|
||||||
|
</MidiControllerRange>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<ModulationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</ModulationTarget>
|
||||||
|
</Volume>
|
||||||
|
<Panorama>
|
||||||
|
<LomId Value="0"></LomId>
|
||||||
|
<Manual Value="0"></Manual>
|
||||||
|
<MidiControllerRange>
|
||||||
|
<Min Value="-1"></Min>
|
||||||
|
<Max Value="1"></Max>
|
||||||
|
</MidiControllerRange>
|
||||||
|
<AutomationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</AutomationTarget>
|
||||||
|
<ModulationTarget Id="0">
|
||||||
|
<LockEnvelope Value="0"></LockEnvelope>
|
||||||
|
</ModulationTarget>
|
||||||
|
</Panorama>
|
||||||
|
<SendInfos></SendInfos>
|
||||||
|
<RoutingHelper>
|
||||||
|
<Routable>
|
||||||
|
<Target Value="AudioOut/None"></Target>
|
||||||
|
<UpperDisplayString Value="No Output"></UpperDisplayString>
|
||||||
|
<LowerDisplayString Value=""></LowerDisplayString>
|
||||||
|
</Routable>
|
||||||
|
<TargetEnum Value="0"></TargetEnum>
|
||||||
|
</RoutingHelper>
|
||||||
|
<SendsListWrapper LomId="0"></SendsListWrapper>
|
||||||
|
</AudioBranchMixerDevice>
|
||||||
|
</Device>
|
||||||
|
<PresetRef>
|
||||||
|
<AbletonDefaultPresetRef Id="0">
|
||||||
|
<FileRef>
|
||||||
|
<HasRelativePath Value="false"></HasRelativePath>
|
||||||
|
<RelativePathType Value="0"></RelativePathType>
|
||||||
|
<RelativePath></RelativePath>
|
||||||
|
<Name Value=""></Name>
|
||||||
|
<Type Value="0"></Type>
|
||||||
|
<Data></Data>
|
||||||
|
<RefersToFolder Value="false"></RefersToFolder>
|
||||||
|
<SearchHint>
|
||||||
|
<PathHint></PathHint>
|
||||||
|
<FileSize Value="0"></FileSize>
|
||||||
|
<Crc Value="0"></Crc>
|
||||||
|
<MaxCrcSize Value="0"></MaxCrcSize>
|
||||||
|
<HasExtendedInfo Value="false"></HasExtendedInfo>
|
||||||
|
</SearchHint>
|
||||||
|
<LivePackName Value=""></LivePackName>
|
||||||
|
<LivePackId Value=""></LivePackId>
|
||||||
|
</FileRef>
|
||||||
|
<DeviceId Name="AudioBranchMixerDevice"></DeviceId>
|
||||||
|
</AbletonDefaultPresetRef>
|
||||||
|
</PresetRef>
|
||||||
|
</AbletonDevicePreset>
|
||||||
|
</MixerPreset>
|
||||||
|
<BranchSelectorRange>
|
||||||
|
<Min Value="0"></Min>
|
||||||
|
<Max Value="0"></Max>
|
||||||
|
<CrossfadeMin Value="0"></CrossfadeMin>
|
||||||
|
<CrossfadeMax Value="0"></CrossfadeMax>
|
||||||
|
</BranchSelectorRange>
|
||||||
|
<SessionViewBranchWidth Value="55"></SessionViewBranchWidth>
|
||||||
|
<ColorIndex Value="163"></ColorIndex>
|
||||||
|
<AutoColored Value="true"></AutoColored>
|
||||||
|
<AutoColorScheme Value="0"></AutoColorScheme>
|
||||||
|
<SourceContext></SourceContext>
|
||||||
|
</AudioEffectBranchPreset>
|
||||||
|
</BranchPresets>
|
||||||
|
<ReturnBranchPresets></ReturnBranchPresets>
|
||||||
|
</GroupDevicePreset>
|
||||||
|
</Ableton>
|
BIN
validation/Utility10_save.adg
Normal file
BIN
validation/Utility10_save.adg
Normal file
Binary file not shown.
Loading…
Reference in a new issue