<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to sampler</title><link>https://sourceforge.net/p/floctrl/wiki/sampler/</link><description>Recent changes to sampler</description><atom:link href="https://sourceforge.net/p/floctrl/wiki/sampler/feed" rel="self"/><language>en</language><lastBuildDate>Fri, 30 Mar 2012 20:20:02 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/floctrl/wiki/sampler/feed" rel="self" type="application/rss+xml"/><item><title>WikiPage sampler modified by Jeff Lu</title><link>https://sourceforge.net/p/floctrl/wiki/sampler/</link><description>&lt;pre&gt;--- v5 
+++ v6 
@@ -22,6 +22,10 @@
     - The back end takes those midi events and generates the sound
 - The sounds are stored in a directory structure that maps the different pitches to sound files.  When a midi event is generated, the program will find the appropriate sound.
 
+The GUI has been integrated with the Performer UI. Running their code will initialize and start up the Sample Player.
+
+The Player has a Bank of Instruments, where an instrument contains a mapping from note names to the absolute path of the .wav files.
+
 Implementation Plan
 -------------------
 - Currently we have two teams, one working on the GUI and the other working on the back end sound player. 
&lt;/pre&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Jeff Lu</dc:creator><pubDate>Fri, 30 Mar 2012 20:20:02 -0000</pubDate><guid>https://sourceforge.net45b2f1e46093c4e3c49b45381a3ba44370bf4562</guid></item><item><title>WikiPage sampler modified by Skippy Johnson</title><link>https://sourceforge.net/p/floctrl/wiki/sampler/</link><description>&lt;pre&gt;--- v4 
+++ v5 
@@ -20,15 +20,58 @@
 - The Player is split in to two parts, the GUI Interface and and back end.
     - The GUI turns the user's key presses in to MIDI events
     - The back end takes those midi events and generates the sound
-- The sounds are stored in a folder with a config file that maps the sounds to different
-    voices.  When a midi event is generated, the program will find the appropriate sound
-
+- The sounds are stored in a directory structure that maps the different pitches to sound files.  When a midi event is generated, the program will find the appropriate sound.
+
 Implementation Plan
 -------------------
 - Currently we have two teams, one working on the GUI and the other working on the back end sound player. 
 
 - Playing a sound is implemented with a keylistener and currently justs plays a sound based on the ASCII of the key.
 - We are working with the Sound design team to come up with a consistent format to send messages with.
+
+------------------
+Group Member Tasks
+------------------
+
+- Kris-
+Construct basic GUI
+Capture Key Presses/Releases
+
+- Jeff-
+Expand on GUI controls
+Map Key Presses/Releases to MIDI messages
+
+- Mike-
+Set up wav player and threading
+Implement note duration detection
+
+- Mo-
+Create sound bank
+Interaction between GUI and wav player
+
+------------------
+Accomplishment Summary
+------------------
+We have a minimal GUI which displays the current note being played
+(based on the key currently being pressed). The GUI also includes a
+spinner for setting note velocity, and an attribute selector (currently
+just a placeholder until we get tighter integration with the Sound Design
+team's output). It then generates MIDI messages and sends it to the 
+back-end.
+
+The back-end has functionality for loading different instruments into a 
+bank, and even supports multiple banks of instruments. When a keypress is
+registered by the GUI, a note is generated corresponding to the key's pitch
+on the current instrument. That note is then played until the GUI detects
+that they key has been released.
+
+----------------
+Future Goals
+----------------
+- Implement volume control and better fade-out (pending future interaction 
+with Sound Design)
+- Expand GUI for multiple instrument/bank selection
+Input sanitization (deal with non-existant pitches for certain instruments)
 
 
 [Home](/p/floctrl/wiki/)
&lt;/pre&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Skippy Johnson</dc:creator><pubDate>Fri, 09 Mar 2012 04:52:59 -0000</pubDate><guid>https://sourceforge.net0a42592e325cced87e1554a8c5211279da3ba524</guid></item><item><title>WikiPage sampler modified by Jeff Lu</title><link>https://sourceforge.net/p/floctrl/wiki/sampler/</link><description>&lt;pre&gt;--- v3 
+++ v4 
@@ -27,4 +27,8 @@
 -------------------
 - Currently we have two teams, one working on the GUI and the other working on the back end sound player. 
 
+- Playing a sound is implemented with a keylistener and currently justs plays a sound based on the ASCII of the key.
+- We are working with the Sound design team to come up with a consistent format to send messages with.
+
+
 [Home](/p/floctrl/wiki/)
&lt;/pre&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Jeff Lu</dc:creator><pubDate>Fri, 09 Mar 2012 01:11:12 -0000</pubDate><guid>https://sourceforge.net10bd0d51ad09390fc652edf4732ad5d896ef219c</guid></item><item><title>WikiPage sampler modified by Kris</title><link>https://sourceforge.net/p/floctrl/wiki/sampler/</link><description>&lt;pre&gt;--- v2 
+++ v3 
@@ -17,11 +17,14 @@
 
 Design
 ------
-- design goes here
-- how are sounds specified? How does the player know what are the files and how do controls map to files?
+- The Player is split in to two parts, the GUI Interface and and back end.
+    - The GUI turns the user's key presses in to MIDI events
+    - The back end takes those midi events and generates the sound
+- The sounds are stored in a folder with a config file that maps the sounds to different
+    voices.  When a midi event is generated, the program will find the appropriate sound
 
 Implementation Plan
 -------------------
-- who does what when?
+- Currently we have two teams, one working on the GUI and the other working on the back end sound player. 
 
 [Home](/p/floctrl/wiki/)
&lt;/pre&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Kris</dc:creator><pubDate>Sat, 03 Mar 2012 23:15:19 -0000</pubDate><guid>https://sourceforge.net7af0bebe9410faaa3efb46620507352c5d6188c2</guid></item><item><title>WikiPage sampler modified by Roger B. Dannenberg</title><link>https://sourceforge.net/p/floctrl/wiki/sampler/</link><description>&lt;pre&gt;--- v1 
+++ v2 
@@ -5,7 +5,9 @@
 
 The sample player turns each laptop into an instrument. The basic function is to play .wav files. 
 
-How are they played? Probably there is a way to select a bank of sounds (e.g. typing a number key) and a way to play a sound (e.g. typing an alphabetic character). 
+How are they played? Probably there is a way to select a bank of sounds (e.g. typing a number key) and a way to play a sound (e.g. typing an alphabetic character). The interactive control is part of this project (not part of the [performance interface](performance)), so you should coordinate with the [performance interface](performance) group to integrate your control software with their graphical interface (and if you have graphical components, you will want to coordinate on screen layout too).
+
+The sample player should operate as a JavaSound Synthesizer, taking MIDI messages in and playing sounds. (It would also be possible to have a non-MIDI protocol between the performance gestures -- typing keys, using the mouse -- and the synthesizer, but using MIDI might be helpful for testing and making the protocol clear.
 
 The player must have control over duration, e.g. by how long you hold a key. Duration is changed by multiplying the sample stream by an envelope that ramps to zero when the "note" stops.
 
&lt;/pre&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Roger B. Dannenberg</dc:creator><pubDate>Mon, 27 Feb 2012 17:19:32 -0000</pubDate><guid>https://sourceforge.net40c301f203d6790fd82952dc088198488999da6e</guid></item><item><title>WikiPage sampler modified by Roger B. Dannenberg</title><link>https://sourceforge.net/p/floctrl/wiki/sampler/</link><description>[Home](/p/floctrl/wiki/)

Sample Player
=============

The sample player turns each laptop into an instrument. The basic function is to play .wav files. 

How are they played? Probably there is a way to select a bank of sounds (e.g. typing a number key) and a way to play a sound (e.g. typing an alphabetic character). 

The player must have control over duration, e.g. by how long you hold a key. Duration is changed by multiplying the sample stream by an envelope that ramps to zero when the "note" stops.

Volume control would be nice.

Other features can be added: filters or effects, but keep in mind it must be very simple for others to learn and operate.

Design
------
- design goes here
- how are sounds specified? How does the player know what are the files and how do controls map to files?

Implementation Plan
-------------------
- who does what when?

[Home](/p/floctrl/wiki/)
</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Roger B. Dannenberg</dc:creator><pubDate>Sat, 25 Feb 2012 03:44:57 -0000</pubDate><guid>https://sourceforge.netc29ba710827167b75ca299cc40774889a8907967</guid></item></channel></rss>