# HG changeset patch # User mas01mj # Date 1268308239 0 # Node ID e78e5a80b73d888fc6fbf19386494175d89986f1 # Parent fed70cb84a9254db35ae1bf9e9db004ca96e6e76 * Extraction params supplied at db creation time * n3 configs are customized at extraction time * Changes to import UI * Extraction params stored in db plist diff -r fed70cb84a92 -r e78e5a80b73d examples/iAudioDB/AppController.h --- a/examples/iAudioDB/AppController.h Fri Mar 05 17:20:06 2010 +0000 +++ b/examples/iAudioDB/AppController.h Thu Mar 11 11:50:39 2010 +0000 @@ -33,17 +33,26 @@ NSMutableArray* results; NSDictionary* trackMap; + NSDictionary* dbState; + + // Creating + IBOutlet id createSheet; + IBOutlet NSMatrix* extractorOptions; + IBOutlet NSTextField* windowSizeField; + IBOutlet NSTextField* hopSizeField; + IBOutlet NSTextField* maxTracksField; + IBOutlet NSTextField* maxLengthField; // Extracting IBOutlet id importSheet; - IBOutlet NSBox* extractingBox; - IBOutlet NSMatrix* extractorOptions; IBOutlet NSProgressIndicator* indicator; // Playback NSSound* queryTrack; NSSound* resultTrack; + + // Query param fields /* To Come @@ -53,17 +62,20 @@ IBOutlet NSTextField* queryLengthField; IBOutlet NSTextField* queryRadiusField; IBOutlet NSButtonCell* exhaustiveField;*/ - } // Menus -(IBAction)newDatabase:(id)sender; -(IBAction)openDatabase:(id)sender; --(IBAction)selectFiles:(id)sender; // Import -(IBAction)importAudio:(id)sender; --(IBAction)cancelImport:(id)sender; +// -(IBAction)cancelImport:(id)sender; + +// Create + +-(IBAction)cancelCreate:(id)sender; +-(IBAction)createDatabase:(id)sender; // Buttons -(IBAction)playBoth:(id)sender; diff -r fed70cb84a92 -r e78e5a80b73d examples/iAudioDB/AppController.m --- a/examples/iAudioDB/AppController.m Fri Mar 05 17:20:06 2010 +0000 +++ b/examples/iAudioDB/AppController.m Thu Mar 11 11:50:39 2010 +0000 @@ -38,42 +38,95 @@ */ -(IBAction)newDatabase:(id)sender { + + [NSApp beginSheet:createSheet modalForWindow:mainWindow modalDelegate:self didEndSelector:NULL contextInfo:nil]; + session = [NSApp beginModalSessionForWindow:createSheet]; + [NSApp runModalSession:session]; +} + +/** + * Cancel the db creation (at configuration time). + */ +-(IBAction)cancelCreate:(id)sender +{ + [NSApp endModalSession:session]; + [createSheet orderOut:nil]; + [NSApp endSheet:createSheet]; +} + +-(IBAction)createDatabase:(id)sender +{ + [self cancelCreate:self]; + NSSavePanel* panel = [NSSavePanel savePanel]; NSInteger response = [panel runModalForDirectory:NSHomeDirectory() file:@""]; - + [results removeAllObjects]; [tracksView reloadData]; - + if(response == NSFileHandlingPanelOKButton) { + // Work out which extractor to use + NSString* extractor = @"adb_chroma"; + // TODO: This should be stored with the n3. + int dim; + switch([extractorOptions selectedTag]) + { + case 0: + extractor = @"adb_chroma"; + dim = 12; + break; + case 1: + extractor = @"adb_cq"; + dim = 48; + break; + case 2: + extractor = @"qm_chroma"; + dim = 12; + break; + case 3: + extractor = @"qm_mfcc"; + dim = 12; + break; + } + + // Calculate the max DB size + int vectors = ceil(([maxLengthField doubleValue] * 60) / ([hopSizeField doubleValue] / 44100)); + int numtracks = [maxTracksField intValue]; + int datasize = ceil((numtracks * vectors * dim * 8) / 1024 / 1024); // In MB + // TODO: Refactor this into a 'tidy' method. // Tidy any existing references up. if(db) { audiodb_close(db); } - + if(dbFilename) { [dbFilename release]; [dbName release]; [plistFilename release]; } - + // Create new db, and set flags. - db = audiodb_create([[panel filename] cStringUsingEncoding:NSUTF8StringEncoding], 0, 0, 0); + db = audiodb_create([[panel filename] cStringUsingEncoding:NSUTF8StringEncoding], datasize, numtracks, dim); audiodb_l2norm(db); - // audiodb_power(db); - + // Store useful paths. dbName = [[[panel URL] relativePath] retain]; dbFilename = [[panel filename] retain]; plistFilename = [[NSString stringWithFormat:@"%@.plist", [dbFilename stringByDeletingPathExtension]] retain]; - + // Create the plist file (contains mapping from filename to key). + dbState = [[NSMutableDictionary alloc] init]; trackMap = [[NSMutableDictionary alloc] init]; - [trackMap writeToFile:plistFilename atomically:YES]; - + [dbState setValue:trackMap forKey:@"tracks"]; + [dbState setValue:extractor forKey:@"extractor"]; + [dbState setValue:[hopSizeField stringValue] forKey:@"hopsize"]; + [dbState setValue:[windowSizeField stringValue] forKey:@"windowsize"]; + [dbState writeToFile:plistFilename atomically:YES]; + [queryKey setStringValue:@"None Selected"]; [self updateStatus]; } @@ -102,6 +155,8 @@ [dbFilename release]; [dbName release]; [plistFilename release]; + [trackMap release]; + [dbState release]; } // Store useful paths. @@ -129,7 +184,9 @@ } audiodb_liszt_free_results(db, liszt_results); - trackMap = [[[NSMutableDictionary alloc] initWithContentsOfFile:plistFilename] retain]; + dbState = [[[NSMutableDictionary alloc] initWithContentsOfFile:plistFilename] retain]; + trackMap = [[dbState objectForKey:@"tracks"] retain]; + NSLog(@"Size: %d", [trackMap count]); } } @@ -159,30 +216,10 @@ } /** - * Get user's import choices. - */ --(IBAction)importAudio:(id)sender -{ - [NSApp beginSheet:importSheet modalForWindow:mainWindow modalDelegate:self didEndSelector:NULL contextInfo:nil]; - session = [NSApp beginModalSessionForWindow: importSheet]; - [NSApp runModalSession:session]; -} - -/** - * Cancel the import (at configuration time). - */ --(IBAction)cancelImport:(id)sender; -{ - [NSApp endModalSession:session]; - [importSheet orderOut:nil]; - [NSApp endSheet:importSheet]; -} - -/** * Choose the file(s) to be imported. * TODO: Currently handles the import process too - split this off. */ --(IBAction)selectFiles:(id)sender +-(IBAction)importAudio:(id)sender { [tracksView reloadData]; @@ -192,52 +229,27 @@ NSInteger response = [panel runModalForDirectory:NSHomeDirectory() file:@"" types:fileTypes]; if(response == NSFileHandlingPanelOKButton) { - NSRect newFrame; + [indicator startAnimation:self]; - [extractingBox setHidden:FALSE]; - newFrame.origin.x = [importSheet frame].origin.x; - newFrame.origin.y = [importSheet frame].origin.y - [extractingBox frame].size.height; - newFrame.size.width = [importSheet frame].size.width; - newFrame.size.height = [importSheet frame].size.height + [extractingBox frame].size.height; - - [indicator startAnimation:self]; - [importSheet setFrame:newFrame display:YES animate:YES]; + [NSApp beginSheet:importSheet modalForWindow:mainWindow modalDelegate:self didEndSelector:NULL contextInfo:nil]; + session = [NSApp beginModalSessionForWindow: importSheet]; + [NSApp runModalSession:session]; NSArray *filesToOpen = [panel filenames]; - NSLog(@"Begin import"); + NSString* extractor = [dbState objectForKey:@"extractor"]; + NSString* extractorPath = [NSString stringWithFormat:@"/Users/mikej/Development/audioDB/examples/iAudioDB/rdf/%@.n3", extractor]; - /* - vamp:vamp-audiodb-plugins:cq:cq - vamp:vamp-audiodb-plugins:chromagram:chroma - vamp:qm-vamp-plugins:qm-mfcc:coefficients - vamp:qm-vamp-plugins:qm-chromagram:chromagram - */ + // Create the customized extractor config + NSString* extractorContent = [NSString stringWithContentsOfFile:extractorPath]; + NSString* hopStr = [dbState objectForKey:@"hopsize"]; + NSString* winStr = [dbState objectForKey:@"windowsize"]; + NSString* newContent = [[extractorContent stringByReplacingOccurrencesOfString:@"HOP_SIZE" withString:hopStr] + stringByReplacingOccurrencesOfString:@"WINDOW_SIZE" withString:winStr]; + NSString* n3FileName = [NSTemporaryDirectory() stringByAppendingPathComponent:@"extractor_config.n3"]; - - // adb_chroma - // adb_cq - // qm_chroma - // qm_mfcc - - // Work out which extractor to use - NSString* extractor = @"chromagram"; - switch([extractorOptions selectedTag]) - { - case 0: - extractor = @"adb_chroma"; - break; - case 1: - extractor = @"adb_cq"; - break; - case 2: - extractor = @"qm_chroma"; - break; - case 3: - extractor = @"qm_mfcc"; - break; - } - + NSError* error; + [newContent writeToFile:n3FileName atomically:YES encoding:NSASCIIStringEncoding error:&error]; for(int i=0; i<[filesToOpen count]; i++) { @@ -254,11 +266,8 @@ NSTask* task = [[NSTask alloc] init]; [task setLaunchPath:@"/usr/local/bin/sonic-annotator"]; - - NSString* extractorPath = [NSString stringWithFormat:@"/Users/mikej/Development/audioDB/examples/iAudioDB/rdf/%@.n3", extractor]; - NSLog(@"Extractor path: %@", extractorPath); NSArray* args; - args = [NSArray arrayWithObjects:@"-t", extractorPath, @"-w", @"rdf", @"-r", @"--rdf-network", @"--rdf-one-file", featuresFileName, @"--rdf-force", [filesToOpen objectAtIndex:i], nil]; + args = [NSArray arrayWithObjects:@"-t", n3FileName, @"-w", @"rdf", @"-r", @"--rdf-network", @"--rdf-one-file", featuresFileName, @"--rdf-force", [filesToOpen objectAtIndex:i], nil]; [task setArguments:args]; [task launch]; [task waitUntilExit]; @@ -274,42 +283,20 @@ NSString* val = [[filesToOpen objectAtIndex:i] retain]; NSString* key = [[[filesToOpen objectAtIndex:i] lastPathComponent] retain]; - /* - adb_insert_t insert; - insert.features = [featuresFileName cStringUsingEncoding:NSUTF8StringEncoding]; - // insert.power = [powersFileName cStringUsingEncoding:NSUTF8StringEncoding]; - insert.times = NULL; - insert.key = [key cStringUsingEncoding:NSUTF8StringEncoding]; - - // Insert into db. - if(audiodb_insert(db, &insert)) - { - // TODO: Show an error message. - NSLog(@"Weep: %@ %@", featuresFileName, key); - continue; - }*/ - + // Update the plist store. [trackMap setValue:val forKey:key]; - [trackMap writeToFile:plistFilename atomically: YES]; + [dbState writeToFile:plistFilename atomically: YES]; db = audiodb_open([dbFilename cStringUsingEncoding:NSUTF8StringEncoding], O_RDONLY); [self updateStatus]; } - newFrame.origin.x = [importSheet frame].origin.x; - newFrame.origin.y = [importSheet frame].origin.y + [extractingBox frame].size.height; - newFrame.size.width = [importSheet frame].size.width; - newFrame.size.height = [importSheet frame].size.height - [extractingBox frame].size.height; - - [importSheet setFrame:newFrame display:YES animate:YES]; - [NSApp endModalSession:session]; [importSheet orderOut:nil]; [NSApp endSheet:importSheet]; [indicator stopAnimation:self]; - [extractingBox setHidden:TRUE]; } } diff -r fed70cb84a92 -r e78e5a80b73d examples/iAudioDB/English.lproj/MainMenu.xib --- a/examples/iAudioDB/English.lproj/MainMenu.xib Fri Mar 05 17:20:06 2010 +0000 +++ b/examples/iAudioDB/English.lproj/MainMenu.xib Thu Mar 11 11:50:39 2010 +0000 @@ -8,9 +8,10 @@ 353.00 YES - - + + + YES @@ -419,7 +420,7 @@ 1044 - + 6 System textBackgroundColor @@ -428,7 +429,7 @@ MQA - + 6 System textColor @@ -896,9 +897,9 @@ 17 2 - {{196, 364}, {535, 146}} + {{196, 229}, {305, 281}} -1543503872 - Window + Create NSPanel {3.40282e+38, 3.40282e+38} @@ -910,7 +911,7 @@ 268 - {{20, 20}, {176, 86}} + {{20, 155}, {176, 86}} YES 4 @@ -1190,90 +1191,29 @@ 268 - {{17, 114}, {123, 17}} + {{17, 249}, {123, 17}} YES 68288064 272630784 - Available Features: + Feature Type: - - - 12 - - YES - - - 256 - - YES - - - -2147482356 - - {{5, 26}, {481, 20}} - - 16394 - 2.000000e+01 - 1.000000e+02 - - - - 268 - {{178, 54}, {136, 17}} - - YES - - 68288064 - 272630784 - Extracting features... - - - - - - - - {496, 71} - - - - {{22, -98}, {496, 71}} - - {0, 0} - - 67239424 - 0 - Box - - - - 3 - MCAwLjgwMDAwMDAxAA - - - - 0 - 0 - 0 - NO - 268 - {{329, 12}, {96, 32}} + {{99, 12}, {96, 32}} YES -2080244224 134217728 - Browse + Create -2038284033 @@ -1287,7 +1227,7 @@ 268 - {{425, 12}, {96, 32}} + {{195, 12}, {96, 32}} YES @@ -1304,8 +1244,170 @@ 25 + + + 268 + {{198, 249}, {117, 17}} + + YES + + 68288064 + 272630784 + Max Tracks: + + + + + + + + + 268 + {{201, 219}, {84, 22}} + + YES + + -1804468671 + 272630784 + 10 + + + YES + + + + + + + 268 + {{198, 194}, {182, 17}} + + YES + + 68288064 + 272630784 + Max Length: + + + + + + + + + 268 + {{201, 164}, {84, 22}} + + YES + + -1804468671 + 272630784 + 5 + + + YES + + + + + + + 268 + {{198, 139}, {182, 17}} + + YES + + 68288064 + 272630784 + Hop Size: + + + + + + + + + 268 + {{201, 109}, {84, 22}} + + YES + + -1804468671 + 272630784 + 2048 + + + YES + + + + + + + 268 + {{198, 84}, {182, 17}} + + YES + + 68288064 + 272630784 + Window Size: + + + + + + + + + 268 + {{201, 54}, {84, 22}} + + YES + + -1804468671 + 272630784 + 16384 + + + YES + + + + - {535, 146} + {305, 281} + + + {{0, 0}, {1280, 1002}} + {3.40282e+38, 3.40282e+38} + + + 17 + 2 + {{196, 454}, {528, 56}} + -1543503872 + Import + NSPanel + + + + 256 + + YES + + + 1292 + + {{18, 16}, {492, 20}} + + 16394 + 2.000000e+01 + 1.000000e+02 + + + {528, 56} {{0, 0}, {1280, 1002}} @@ -1413,14 +1515,6 @@ - importSheet - - - - 569 - - - mainWindow @@ -1436,22 +1530,6 @@ 631 - - selectFiles: - - - - 632 - - - - extractingBox - - - - 633 - - extractorOptions @@ -1485,14 +1563,6 @@ - cancelImport: - - - - 695 - - - selectedChanged: @@ -1619,6 +1689,78 @@ 754 + + + maxTracksField + + + + 772 + + + + maxLengthField + + + + 773 + + + + hopSizeField + + + + 774 + + + + indicator + + + + 782 + + + + createSheet + + + + 783 + + + + importSheet + + + + 784 + + + + createDatabase: + + + + 785 + + + + cancelCreate: + + + + 786 + + + + windowSizeField + + + + 791 + @@ -1938,8 +2080,15 @@ YES - + + + + + + + + @@ -1988,35 +2137,6 @@ - 623 - - - YES - - - - - - - 624 - - - - - 625 - - - YES - - - - - - 626 - - - - 627 @@ -2169,20 +2289,6 @@ - 693 - - - YES - - - - - - 694 - - - - 699 @@ -2321,6 +2427,155 @@ + + 693 + + + YES + + + + + + 694 + + + + + 757 + + + YES + + + + + + 758 + + + + + 759 + + + YES + + + + + + 760 + + + + + 763 + + + YES + + + + + + 764 + + + + + 765 + + + YES + + + + + + 766 + + + + + 767 + + + YES + + + + + + 768 + + + YES + + + + + + 769 + + + + + 770 + + + + + 778 + + + YES + + + + + + 779 + + + YES + + + + + + 780 + + + + + 787 + + + YES + + + + + + 788 + + + YES + + + + + + 789 + + + + + 790 + + + @@ -2420,10 +2675,6 @@ 620.IBPluginDependency 621.IBPluginDependency 622.IBPluginDependency - 623.IBPluginDependency - 624.IBPluginDependency - 625.IBPluginDependency - 626.IBPluginDependency 627.IBPluginDependency 628.IBPluginDependency 665.IBPluginDependency @@ -2461,6 +2712,28 @@ 750.IBPluginDependency 755.IBPluginDependency 756.IBPluginDependency + 757.IBPluginDependency + 758.IBPluginDependency + 759.IBPluginDependency + 760.IBPluginDependency + 763.IBPluginDependency + 764.IBPluginDependency + 765.IBPluginDependency + 766.IBPluginDependency + 767.IBPluginDependency + 768.IBPluginDependency + 769.IBPluginDependency + 770.IBPluginDependency + 778.IBEditorWindowLastContentRect + 778.IBPluginDependency + 778.IBWindowTemplateEditedContentRect + 778.NSWindowTemplate.visibleAtLaunch + 779.IBPluginDependency + 780.IBPluginDependency + 787.IBPluginDependency + 788.IBPluginDependency + 789.IBPluginDependency + 790.IBPluginDependency 81.IBEditorWindowLastContentRect 81.IBPluginDependency 81.ImportedFromIB2 @@ -2524,8 +2797,8 @@ {74, 862} {{6, 978}, {478, 20}} - {{47, 66}, {606, 477}} - {{47, 66}, {606, 477}} + {{366, 55}, {606, 477}} + {{366, 55}, {606, 477}} {{33, 99}, {480, 360}} {3.40282e+38, 3.40282e+38} @@ -2551,9 +2824,9 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - {{9, 164}, {535, 146}} - {{9, 164}, {535, 146}} - + {{169, 544}, {305, 281}} + {{169, 544}, {305, 281}} + com.apple.InterfaceBuilder.CocoaPlugin {{83, 102}, {201, 183}} com.apple.InterfaceBuilder.CocoaPlugin @@ -2583,10 +2856,6 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin {{778, 152}, {154, 133}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -2608,6 +2877,28 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{76, 497}, {528, 56}} + com.apple.InterfaceBuilder.CocoaPlugin + {{76, 497}, {528, 56}} + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin {{736, 222}, {169, 63}} com.apple.InterfaceBuilder.CocoaPlugin @@ -2640,7 +2931,7 @@ - 756 + 791 @@ -2652,16 +2943,17 @@ YES YES - cancelImport: + cancelCreate: chooseQuery: + createDatabase: importAudio: newDatabase: openDatabase: playBoth: playResult: - selectFiles: selectedChanged: stopPlay: + tableDoubleClick: YES @@ -2675,6 +2967,7 @@ id id id + id @@ -2682,32 +2975,40 @@ YES chooseButton - extractingBox + createSheet extractorOptions + hopSizeField importSheet indicator mainWindow + maxLengthField + maxTracksField playBothButton playResultButton queryKey statusField stopButton tracksView + windowSizeField YES NSButton - NSBox + id NSMatrix + NSTextField id NSProgressIndicator id + NSTextField + NSTextField NSButton NSButton NSTextField NSTextField NSButton NSTableView + NSTextField diff -r fed70cb84a92 -r e78e5a80b73d examples/iAudioDB/rdf/adb_chroma.n3 --- a/examples/iAudioDB/rdf/adb_chroma.n3 Fri Mar 05 17:20:06 2010 +0000 +++ b/examples/iAudioDB/rdf/adb_chroma.n3 Thu Mar 11 11:50:39 2010 +0000 @@ -4,8 +4,8 @@ :transform a vamp:Transform ; vamp:plugin ; - vamp:step_size "2048"^^xsd:int ; - vamp:block_size "16384"^^xsd:int ; + vamp:step_size "HOP_SIZE"^^xsd:int ; + vamp:block_size "WINDOW_SIZE"^^xsd:int ; vamp:parameter_binding [ vamp:parameter [ vamp:identifier "bpo" ] ; vamp:value "12"^^xsd:float ; diff -r fed70cb84a92 -r e78e5a80b73d examples/iAudioDB/rdf/adb_cq.n3 --- a/examples/iAudioDB/rdf/adb_cq.n3 Fri Mar 05 17:20:06 2010 +0000 +++ b/examples/iAudioDB/rdf/adb_cq.n3 Thu Mar 11 11:50:39 2010 +0000 @@ -4,8 +4,8 @@ :transform a vamp:Transform ; vamp:plugin ; - vamp:step_size "2048"^^xsd:int ; - vamp:block_size "16384"^^xsd:int ; + vamp:step_size "HOP_SIZE"^^xsd:int ; + vamp:block_size "WINDOW_SIZE"^^xsd:int ; vamp:parameter_binding [ vamp:parameter [ vamp:identifier "bpo" ] ; vamp:value "12"^^xsd:float ; diff -r fed70cb84a92 -r e78e5a80b73d examples/iAudioDB/rdf/qm_chroma.n3 --- a/examples/iAudioDB/rdf/qm_chroma.n3 Fri Mar 05 17:20:06 2010 +0000 +++ b/examples/iAudioDB/rdf/qm_chroma.n3 Thu Mar 11 11:50:39 2010 +0000 @@ -4,8 +4,8 @@ :transform a vamp:Transform ; vamp:plugin ; - vamp:step_size "2048"^^xsd:int ; - vamp:block_size "16384"^^xsd:int ; + vamp:step_size "HOP_SIZE"^^xsd:int ; + vamp:block_size "WINDOW_SIZE"^^xsd:int ; vamp:parameter_binding [ vamp:parameter [ vamp:identifier "bpo" ] ; vamp:value "12"^^xsd:float ; diff -r fed70cb84a92 -r e78e5a80b73d examples/iAudioDB/rdf/qm_mfcc.n3 --- a/examples/iAudioDB/rdf/qm_mfcc.n3 Fri Mar 05 17:20:06 2010 +0000 +++ b/examples/iAudioDB/rdf/qm_mfcc.n3 Thu Mar 11 11:50:39 2010 +0000 @@ -4,8 +4,8 @@ :transform a vamp:Transform ; vamp:plugin ; - vamp:step_size "1024"^^xsd:int ; - vamp:block_size "2048"^^xsd:int ; + vamp:step_size "HOP_SIZE"^^xsd:int ; + vamp:block_size "WINDOW_SIZE"^^xsd:int ; vamp:parameter_binding [ vamp:parameter [ vamp:identifier "logpower" ] ; vamp:value "1"^^xsd:float ;