// Add some mix KBool ktest9_add_mix (KFile* pKFile) { KBool bRet; k_notnull (pKFile); // ==================== // // Create the first mix // bRet = kmix_create (pKFile, "My First Mix"); k_check (bRet); // Adds track in the mix bRet = kmix_addTrack (pKFile, "My First Mix", "Cello"); bRet = bRet && kmix_addTrack (pKFile, "My First Mix", "Violin"); bRet = bRet && kmix_addTrack (pKFile, "My First Mix", "Trumpet"); bRet = bRet && kmix_addTrack (pKFile, "My First Mix", "Clarinet"); bRet = bRet && kmix_addTrack (pKFile, "My First Mix", "Timpani"); bRet = bRet && kmix_addTrack (pKFile, "My First Mix", "Flute"); k_check (bRet); // Adds levels for mix's elements // If you create mixing or selection constraints in your file, // the mix you add, can transgress constraints. bRet = kmix_setEltLevel (pKFile, "My First Mix", "Cello", 1.0); bRet = bRet && kmix_setEltLevel (pKFile, "My First Mix", "Violin", 0.9); bRet = bRet && kmix_setEltLevel (pKFile, "My First Mix", "Trumpet", 0.8); bRet = bRet && kmix_setEltLevel (pKFile, "My First Mix", "Clarinet", 1.1); bRet = bRet && kmix_setEltLevel (pKFile, "My First Mix", "Timpani", 1.2); bRet = bRet && kmix_setEltLevel (pKFile, "My First Mix", "Flute", 1.0); k_check (bRet); // Set the mix 'My First Mix' as the default mix // Here it isn't necessary because by default, the first mix // you create is the default one... bRet = kmix_setDefault (pKFile, "My First Mix"); k_check (bRet); // ===================== // // Create the second mix // bRet = kmix_create (pKFile, "My Second Mix"); k_check (bRet); // Adds track in the mix bRet = kmix_addTrack (pKFile, "My Second Mix", "Violin"); bRet = bRet && kmix_addTrack (pKFile, "My Second Mix", "Timpani"); bRet = bRet && kmix_addTrack (pKFile, "My Second Mix", "Flute"); k_check (bRet); // Adds levels for mix's elements // If you create mixing or selection constraints in your file, // the mix you add, can transgress constraints. bRet = kmix_setEltLevel (pKFile, "My Second Mix", "Violin", 2.5); bRet = bRet && kmix_setEltLevel (pKFile, "My Second Mix", "Timpani", 1.5); bRet = bRet && kmix_setEltLevel (pKFile, "My Second Mix", "Flute", 2.0); k_check (bRet); return ktrue; }
// Create an iKlax File with author mix. KBool ktest9_create_file_with_mix (KCString sTracksFilePath) { KFile* pKFile = knull; KBool bRet = kfalse; bRet = knull != sTracksFilePath; // Create a KFile structure bRet = bRet && knull != (pKFile = k_create_simple_kfile (sTracksFilePath)); // Create some mix bRet = bRet && ktest9_add_mix (pKFile); // Export the KFile structure in a iKlax file bRet = bRet && k_export_structure_in_file (pKFile, "ex9-author_mix.iklax"); // Delete the KFile structure KFile_delete (&pKFile); return bRet; }
Source Code Summary
Previous Source Code: Example 8: Create an iKlax File with mixing constraints.
1.3.8