Hi HK
I met with the engineer behind the new sound module at SFN. He showed me a working prototype, which they are developing firmware for. They estimate it will be available this winter, though the exact release date is to be determined.
In the meanwhile, I developed alternative firmware for our 4-ch analog output module, specialized for playing audio waveforms. Its MATLAB interface is documented here. There are two firmware variants that can be used with the MATLAB interface: AudioPlayer and AudioPlayerLive. The critical specs are:
AudioPlayer
Up to 64 sounds
Up to 1M stereo samples / sound
Up to 96kHz sampling rate
Loading of new sounds must occur before the session, or between trials
AudioPlayerLive
Up to 20 sounds (memory limitation; lots of extra buffers needed)
Up to 1M stereo samples / sound
Up to 44.1kHz sampling rate
Loading of the next trial's sounds may occur even while the current trial's sounds are playing. A 'Push' command adds newly loaded sounds to the current sound set (replacing any sounds already present in each newly loaded position).
Both firmware versions support loop mode natively, and the AudioPlayer device can be triggered by a looping global timer (i.e. this example, adapted for the AudioPlayer module). This function is also supported using scheduled waves in our BControl patch.
For added convenience, we now retail an audio connector for the module.
Unfortuantely, global timers cannot yet trigger soft codes. We may not add that feature for a while, as we are only making changes to keep the firmware stable while the PyBpod project brings support for v18 online.
I will update this thread once the HD module becomes available, or once we have global timer-triggered soft codes.
-Josh