Building a simple wav player for long playback


#1

Hello everyone, first post here for me.
First of all, I wanted to thank the community for the amazing work and knowledge you all shared here.
I got my Axoloti this year and since then i have done some simple patching.

I'm now in the process of trying to use my Axoloti as a simple audio file player.

The idea is quite simple, I just want to play chunks of recordings of synths and other instruments I have at my studio but that I can't take for a live gig.
I have cut some sample out of track i have done and uploaded them using the file manager.
These files are quite light and can last from 4 to 30 seconds and I should mention that I don't need to have any looping or audio processing going on.

They all respond to a specific midi note and are triggered externally with my MidiRex sequencer, I have added a gain that I control with a pot and a stop button.

First issue that I came across is that I quickly exceeded the SRAM limit (especially with the two controls mentioned above). I temporarily solved it by taking the volume/gain control out.

Unfortunately, my patch is very dysfunctional as every minute or so, the message "file error: FR_DISK_ERR," comes up in the console and no sample can be played anymore. It seems that the Axoloti has trouble reading the SD card.
I formatted the latter using the format utility patch and carefully uploaded my samples using the file manager.

So my questions are:

—Is this problem linked to the fact that my patch is already close to the SRAM limit?
—Should I use tables? If so, does this limit the amount and the length of the samples I can use? Ideally, I would like to play chunks of audio that could go up in total to 10 minutes or more.
—Is this even feasible? My understanding was that there is no limit to the length of audio files as long as it is just for playback purpose.

I hope I was clear enough, here is a screenshot of my patch so far. forgive me for the simplicity of it, I am quite a beginner with coding and Axoloti patching at the moment.

thanks a lot for your help,

best,

Paulus


#2

hey man without too much thought, i thinkt the way for you to ggo here is to dynamically generate the filename to be streamed, would save you a lot of work:

  • use a wave/play stereo object, without the fn
  • use a string/indexed object to generate the filename
  • midi note number can generate the string index number
  • this will generate "soliere00X.raw" everytime you press a key
  • if you need several samples playing at the same time, just throw the whole thing in a polyphonic subpatch. not sure how many polyphonic streams the sd card can handle?

let me know if you need more help


#3

I feel the desire to do this with the Axoloti but if you are willing to use another solution, I can suggest the $50 WaveTrigger or the $80 Tsunami PCBs from SparkFun. Both can play CD quality Stereo tracks direct from a MicroSD card. A long a file as you can fit on the card. They can play up to 16 files at once. They can be triggered via pushbuttons, Gates or MIDI. They can play in One-shot, looping, on gate high and other modes and each track can be programmed for a different mode. The WaveTrigger has stereo outs and the Tsunami has 8-channels of outs with tracks assignable ir any channel. They can be grouped for Surround sound or quad play for instance. I have both and use the WaveTrigger for background ambiences and textures and the Tsunami for full on "Ableton in a module" use by dumping Ableton tracks out into separate files and playing them back through the Tsunami. I have the Tesseract Nutella Eurorack module (the Tsunami plugs into the back of it and it provides all the signal level matching) and two WaveTrigger modules I made myself. It is quite easy to make your own stand alone module with your own buttons and switches. The PCBs are all quite small at 3"x3".
Then you can use the AXoloti to modify the output of the box you made.


#4

Big fan of the tsunami etc and probably a good call here, but axoloti should be perfectly capable of doing it too right? see abhoth/mellotron


#5

Oh, no doubt the AXO can do the job. It is just basically plug and play for the Robersonics boards. I would use the AXO for live modifications of the output of the others. For file playback alone, no other modifying other than pitch, it is so simple on the Robersonics stuff, I would use the AXO for more fun things.


#6

Hey guys, thanks a lot for your answers.
@weasel79 Thanks a lot for your approach, actually it makes totally sense to simplify it that way. It seems to work really well right now. I still need to troubleshoot the SD card issue I have and test the setup.
I actually do not need crazy 4-6 voices polyphony at the moment so I'm thinking your approach will totally do the trick.

@Ersatzplanet I think I came across the WaveTrigger in the past, it seemed like a nice piece of gear. The Tsunami also looks really great!

I agree that this specific use of the axoloti is not very exciting. But at the moment, I have several solo and collective projects and thye idea is to design one specific use of the Axoloti for each project's need.
Actually, it is this specific capacity that I was longing to: being able to answer a one or a few specific needs that I stumble upon during live shows.


#7

Hey, after some testing, everything works fine until I get the error "file error: FR_DISK_ERR," for all the samples on the SD card (in a folder called "samples)
It seems to happen after a few minutes of testing. Somthing is wrong with the SD card.
I tried formating it again with the format patch and uploading the samples again, with shorter names, to no avail.

It is a type 10 16gb SD card, brand new, and it's the first time I have problem with it, I only used it in the past to upload a startup patch.

Do you guys have any idea about what's going on here?
I still have to try this patch as a startup patch and connected to the power with a dc jack rather than connected via USB and though the Axoloti patcher.