I don't know if I fully understand what you want to do, but the list of "instruments" is detailed in the SoundNote/Details and Options (Documentation).
Below I have created a list of the instruments that are displayed there (in alphabetic order):
instruments = {"Accordion", "Agogo", "AltoSax", "Applause",
"Atmosphere", "Bagpipe", "Bandoneon", "Banjo", "BaritoneSax",
"Bass", "BassAndLead", "Bassoon", "Bird", "BlownBottle", "Bowed",
"BrassSection", "Breath", "Brightness", "BrightPiano", "Calliope",
"Celesta", "Cello", "Charang", "Chiff", "Choir", "Clarinet",
"Clavi", "Contrabass", "Crystal", "DrawbarOrgan", "Dulcimer",
"Echoes", "ElectricBass", "ElectricGrandPiano", "ElectricGuitar",
"ElectricPiano", "ElectricPiano2", "EnglishHorn", "Fiddle",
"Fifths", "Flute", "FrenchHorn", "FretlessBass", "FretNoise",
"Glockenspiel", "Goblins", "Guitar", "GuitarDistorted",
"GuitarHarmonics", "GuitarMuted", "GuitarOverdriven", "Gunshot",
"Halo", "Harmonica", "Harp", "Harpsichord", "Helicopter",
"HonkyTonkPiano", "JazzGuitar", "Kalimba", "Koto", "Marimba",
"MelodicTom", "Metallic", "MusicBox", "MutedTrumpet", "NewAge",
"Oboe", "Ocarina", "OrchestraHit", "Organ", "PanFlute",
"PercussiveOrgan", "Piano", "Piccolo", "PickedBass",
"PizzicatoStrings", "Polysynth", "Rain", "Recorder", "ReedOrgan",
"ReverseCymbal", "RockOrgan", "Sawtooth", "SciFi", "Seashore",
"Shakuhachi", "Shamisen", "Shanai", "Sitar", "SlapBass",
"SlapBass2", "SopranoSax", "Soundtrack", "Square", "Steeldrums",
"SteelGuitar", "Strings", "Strings2", "Sweep", "SynthBass",
"SynthBass2", "SynthBrass", "SynthBrass2", "SynthDrum",
"SynthStrings", "SynthStrings2", "SynthVoice", "Taiko",
"Telephone", "TenorSax", "Timpani", "Tinklebell", "TremoloStrings",
"Trombone", "Trumpet", "Tuba", "TubularBells", "Vibraphone",
"Viola", "Violin", "Voice", "VoiceAahs", "VoiceOohs", "Warm",
"Whistle", "Woodblock", "Xylophone"};
To listen to a sample of each instrument the following code can be used (C3 tone and 0.5 seconds):
ins = Map[Sound@SoundNote["C3", 0.5, #] &,
instruments]; Thread[{instruments, ins}]
There is also a list of percussion events (also listed in SoundNote) that can also be used regardless of the melody tone:
events = {"BassDrum", "BassDrum2", "BellTree", "Cabasa", "Castanets",
"ChineseCymbal", "Clap", "Claves", "Cowbell", "CrashCymbal",
"CrashCymbal2", "ElectricSnare", "GuiroLong", "GuiroShort",
"HighAgogo", "HighBongo", "HighCongaMute", "HighCongaOpen",
"HighFloorTom", "HighTimbale", "HighTom", "HighWoodblock",
"HiHatClosed", "HiHatOpen", "HiHatPedal", "JingleBell", "LowAgogo",
"LowBongo", "LowConga", "LowFloorTom", "LowTimbale", "LowTom",
"LowWoodblock", "Maracas", "MetronomeBell", "MetronomeClick",
"MidTom", "MidTom2", "MuteCuica", "MuteSurdo", "MuteTriangle",
"OpenCuica", "OpenSurdo", "OpenTriangle", "RideBell", "RideCymbal",
"RideCymbal2", "ScratchPull", "ScratchPush", "Shaker",
"SideStick", "Slap", "Snare", "SplashCymbal", "SquareClick",
"Sticks", "Tambourine", "Vibraslap", "WhistleLong",
"WhistleShort"};
To listen to samples of each percussion event, use the following code (note that the event is in place of the tone and there is no instrumentation or note interval option when it is an event):
eve = Map[Sound@SoundNote[#] &, events]; Thread[{events, eve}]
I hope this information was helpful to you.
After this , can you explain to me a little more what you want to do?