diff implementations/midi-db/examples/importing-midifiles.lisp @ 236:a5d065905f6d

Add midi-db. Ignore-this: c6f4fc32efa4453ddbdc478793eedd52 A basic implementation for working with MIDI files stored in the database. It is a test case for `versioned' data, but only partially implemented at the moment. darcs-hash:20100223152703-16a00-4388d2720907d777a1c6c6b3a010885ce0fe06a7.gz committer: Jamie Forth <j.forth@gold.ac.uk>
author j.forth <j.forth@gold.ac.uk>
date Thu, 24 Feb 2011 11:23:18 +0000
parents
children 55c188ef8b0a
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/implementations/midi-db/examples/importing-midifiles.lisp	Thu Feb 24 11:23:18 2011 +0000
@@ -0,0 +1,51 @@
+(cl:in-package #:amuse-midi-db)
+
+(connect-to-database :database-name "amuse"
+		     :username "jamief") ; needs to be adequate permissions
+
+(create-midi-db-tables *amuse-database*)
+
+;(drop-midi-db-tables *amuse-database*)
+
+(register-new-implementation *package*)
+
+
+;;;=====================================================================
+;;; Import collections of drum loops (from Marcus)
+;;;=====================================================================
+
+;;; Dangerous Drums
+(let ((collection-identifier
+       (register-new-collection "Dangerous Drums"
+				"Collection of drum loops. Each 'composition' is a collection of loops on separate tracks."
+				*amuse-database*)))
+
+  (import-midifiles
+   "/home/jamie/Music/MIDIFiles/MarcusMIDIFiles/DangerousDrums/"
+   collection-identifier
+   *amuse-database*))
+
+
+;;; LA Riot v1
+(let ((collection-identifier
+       (register-new-collection "LA Riot V1"
+				"Collection of drum loops. Each 'composition' is a collection of loops on separate tracks."
+				*amuse-database*)))
+
+  (import-midifiles
+   "/home/jamie/Music/MIDIFiles/MarcusMIDIFiles/LARiotv1/"
+   collection-identifier
+   *amuse-database*))
+
+;;; Midi breakbeats v8
+(let ((collection-identifier
+       (register-new-collection "MIDI Breakbeats V8"
+				"Collection of drum loops. Each 'composition' is a collection of loops on separate tracks."
+				*amuse-database*)))
+
+  (import-midifiles
+   "/home/jamie/Music/MIDIFiles/MarcusMIDIFiles/MIDIBreakbeatsv8/"
+   collection-identifier
+   *amuse-database*))
+
+(disconnect-from-database)