c@69: @prefix rdfs: . c@69: @prefix xsd: . c@69: @prefix vamp: . c@69: @prefix vampex: . c@69: @prefix plugbase: . c@69: @prefix owl: . c@69: @prefix dc: . c@69: @prefix af: . c@69: @prefix foaf: . c@69: @prefix cc: . c@69: @prefix thisplug: . c@69: @prefix : <> . c@69: c@69: <> a vamp:PluginDescription ; c@69: foaf:maker ; c@69: foaf:maker ; c@69: foaf:primaryTopic plugbase:qm-keydetector . c@69: c@69: plugbase:qm-keydetector a vamp:Plugin ; c@69: dc:title "Key Detector" ; c@69: vamp:name "Key Detector" ; c@69: dc:description "Estimate the key of the music" ; c@69: foaf:maker [ foaf:name "Queen Mary, University of London"] ; # FIXME could give plugin author's URI here c@69: cc:license ; c@69: vamp:identifier "qm-keydetector" ; c@69: vamp:vamp_API_version vamp:api_version_1 ; c@69: owl:versionInfo "3" ; c@69: vamp:input_domain vamp:TimeDomain ; c@69: c@69: vamp:parameter_descriptor thisplug:param_tuning ; c@69: vamp:parameter_descriptor thisplug:param_length ; c@69: c@69: vamp:output_descriptor thisplug:output_tonic ; c@69: vamp:output_descriptor thisplug:output_mode ; c@69: vamp:output_descriptor thisplug:output_key ; c@69: vamp:output_descriptor thisplug:output_keystrength ; c@69: . c@69: thisplug:param_tuning a vamp:ParameterDescriptor ; c@69: vamp:identifier "tuning" ; c@69: dc:title "Tuning Frequency" ; c@69: dc:format "Hz" ; c@69: vamp:min_value 420 ; c@69: vamp:max_value 460 ; c@69: vamp:default_value 440 . c@69: c@69: thisplug:param_length a vamp:ParameterDescriptor ; c@69: vamp:identifier "length" ; c@69: dc:title "Window Length" ; c@69: dc:format "chroma frames" ; c@69: vamp:min_value 1 ; c@69: vamp:max_value 30 ; c@69: vamp:default_value 10 . c@69: c@69: thisplug:output_tonic a vamp:DenseOutput ; c@69: vamp:identifier "tonic" ; c@69: dc:title "Tonic Pitch" ; c@69: dc:description "Tonic of the estimated key (from C = 1 to B = 12)" ; c@69: vamp:fixed_bin_count "true" ; c@69: vamp:is_quantised "true" ; c@69: vamp:unit "" ; c@69: vamp:bin_count 1 ; c@69: vamp:bin_names ( ""); c@69: vamp:quantize_step 1 ; c@69: vamp:computes_feature_type ; c@69: vamp:computes_event_type ; c@69: . c@69: thisplug:output_mode a vamp:DenseOutput ; c@69: vamp:identifier "mode" ; c@69: dc:title "Key Mode" ; c@69: dc:description "Major or minor mode of the estimated key (major = 0, minor = 1)" ; c@69: vamp:fixed_bin_count "true" ; c@69: vamp:is_quantised "true" ; c@69: vamp:unit "" ; c@69: vamp:bin_count 1 ; c@69: vamp:bin_names ( ""); c@69: vamp:quantize_step 1 ; c@69: vamp:computes_feature_type ; c@69: vamp:computes_event_type ; c@69: . c@69: thisplug:output_key a vamp:DenseOutput ; c@69: vamp:identifier "key" ; c@69: dc:title "Key" ; c@69: dc:description "Estimated key (from C major = 1 to B major = 12 and C minor = 13 to B minor = 24)" ; c@69: vamp:fixed_bin_count "true" ; c@69: vamp:is_quantised "true" ; c@69: vamp:unit "" ; c@69: vamp:bin_count 1 ; c@69: vamp:bin_names ( ""); c@69: vamp:quantize_step 1 ; c@69: vamp:computes_feature_type ; c@69: vamp:computes_event_type ; c@69: . c@69: thisplug:output_keystrength a vamp:DenseOutput ; c@69: vamp:identifier "keystrength" ; c@69: dc:title "Key Strength Plot" ; c@69: dc:description "Correlation of the chroma vector with stored key profile for each major and minor key" ; c@69: vamp:fixed_bin_count "true" ; c@69: vamp:is_quantised "false" ; c@69: vamp:unit "" ; c@69: vamp:bin_count 25 ; c@69: vamp:bin_names ( "F# / Gb major" "B major" "E major" "A major" "D major" "G major" "C major" "F major" "Bb major" "Eb major" "Ab major" "Db major" " " "Eb / D# minor" "G# minor" "C# minor" "F# minor" "B minor" "E minor" "A minor" "D minor" "G minor" "C minor" "F minor" "Bb minor"); c@69: vamp:sample_type vamp:OneSamplePerStep ; c@69: vamp:computes_feature_type ; c@69: vamp:computes_event_type ; c@69: .