Search results

  1. houtson

    May i contact to "Bleep Labs."???

    @charnjit let's keep it here at least until bugs are ironed out. Cheers Paul
  2. houtson

    Example code for AudioEffectDelayExternal ?

    Hi, the AudioEffectDelay sets max delay to 4.00s for teensy 4. If you have 2 for stereo a sensible limit would be 2sec although depending on what else you have using memory you could push this. Cheers Paul
  3. houtson

    code speed affect on another Code mixing

    Hi, I can't replicate your problem - for me both sets of code at post #1 work well under 1s. A couple of things to try: 1. Since the code works fine for me with a clean board, it is likely something in your hardware or environment, can you show me your actual wiring to the encoder. do you...
  4. houtson

    code speed affect on another Code mixing

    I got and fitted some PSRAM. Both these run equally as quickly for me. I tried the one that is running slowly for you with 6 files - CARD FOUND Read 01.WAV into memory at 7000000C; 199846 bytes Read 02.WAV into memory at 70030CCC; 199846 bytes Read 03.WAV into memory at 7006198C; 210988 bytes...
  5. houtson

    May i contact to "Bleep Labs."???

    If you want to load a new sample just use vocoder.setSample(newBuffer, newNumSamples); Sorry I don't know what you mean
  6. houtson

    May i contact to "Bleep Labs."???

    @charnjit I'm glad you got it running. It looks like you have modified the code to preload 16 samples into PSRAM? I have no idea how large the files are or the speed of your SD card but I can only imagine that is what is taking the time in setup. Are you using a good quality SD card ? Either...
  7. houtson

    May i contact to "Bleep Labs."???

    @charnjit if using the audio board you need to update the example ino.---- do what you did above and also remove the comments from the codec in setup() // codec.enable(); // codec.volume(0.5f);
  8. houtson

    May i contact to "Bleep Labs."???

    Read post #39 again
  9. houtson

    May i contact to "Bleep Labs."???

    Hi @charnjit - I take it you are using the Arduino IDE? I'm using PlatformIO so it will not work directly with Arduino IDE or the library manager. For it to work in the Arduino IDE try this: - create a new directory called timestretch_example in your Arduino sketch directory - copy all the...
  10. houtson

    May i contact to "Bleep Labs."???

    Hi @Rezo - have a listen to it, it works better with some material than others but it’s great fun change both the pitch and speed. It uses about 18% of teensy 4.1 available interrupt time, the WSOLA version was much less <5% but the phase vocoder is much better. Stereo would be possible but 2x...
  11. houtson

    May i contact to "Bleep Labs."???

    I forked and did a rehash of the Stefan Bernsee/Duff2013 phase vocoder implementation. This can now do time stretching and pitch shifting independently - both can run simultaneously - using a phase vocoder approach. I also added configurable transient detection to try to improve drum sounds...
  12. houtson

    May i contact to "Bleep Labs."???

    @charnjit - if you want the full sample to play and loop you need to make the buffer larger - I'm limited to 2 second as I'm using a teensy3.6 - something like : EXTMEM int16_t sampleBuffer[44100 * 5]; // space for 5s at 44100 Hz will create 5 seconds of buffer in your PSRAM I think the...
  13. houtson

    May i contact to "Bleep Labs."???

    It needs a mono, 44.1khz with no additional (meta) data in the header WAV file. If you use FFMPEG, # ffmpeg -i original.wav -ac 1 -ar 44100 -c:a pcm_s16le -map_metadata -1 clean.wav should clean up an original.
  14. houtson

    May i contact to "Bleep Labs."???

    Also should have asked, are you using a teensy 4 ? I've only tested on a 3.6 so far. Also, at the moment it will only work with 128 sample per block.
  15. houtson

    May i contact to "Bleep Labs."???

    Thats's weird - plays at normal speed for me at 100%. I'm using this wav from the OP
  16. houtson

    May i contact to "Bleep Labs."???

    @DD4WH really interesting work on the BirdSongPitchShifter and a thanks for the pointer to the phase vocoder implementation @charnjit I had a play about with a new object which I've attached with and example sketch. It is using a basic WSOLA algorithm (great explanation of WSOLA approach here)...
  17. houtson

    May i contact to "Bleep Labs."???

    Apologies for the slow reply – I’ve been away over Easter. I think there’s a misunderstanding of what the granular object is doing. It’s not a true time-stretch algorithm, it’s replaying short grains at different speeds, so pitch change with setSpeed() is expected. It is also designed to work...
  18. houtson

    May i contact to "Bleep Labs."???

    Hi the accumulator was overflowing- I've update the files which should fix it. Let me know it it works for longer than 1.4s samples. The effect_granular effect is not set up for working directly from a SD file or an array. Confirm that it works with your longer samples and also that it is...
  19. houtson

    May i contact to "Bleep Labs."???

    It is difficult to help when I can't see your code or test anything - small extracts of code are not helpful. How are you selecting .wav files? The granular effects starts sampling when you run .beginFreeze - how are you aligning that with the start of your .wav (is that what you want to do?)...
  20. houtson

    May i contact to "Bleep Labs."???

    You need to replace that and also the other indexes, I've attached two replacement files that I haven't tested. Did you test it at maximum length (#define GRANULAR_BUFFER_SIZE 32000) to see if you actually like how it sounds? Cheers Paul
  21. houtson

    how to allow PSRAM to freeze long duration for granular Effect ???

    @charnjit Please don't open any more thread on this topic, try to keep all the discussion in one place I've put a response in the previous thread https://forum.pjrc.com/index.php?threads/may-i-contact-to-bleep-labs.77791/#post-366863 cheers Paul
  22. houtson

    May i contact to "Bleep Labs."???

    I had a look at the library object and it uses int16_t to store the buffer size and various pointers. The max number a int16_t can hold is 32,767 for the max time that the current object is just under 0.75s. When you pass it a size of 2800000 it will overflow and have unpredictable results...
  23. houtson

    May i contact to "Bleep Labs."???

    In your example snippets of code above... #define GRANULAR_BUFFER_SIZE 12800 and granular1.begin(grainBuffer, GRANULAR_BUFFER_SIZE); sets up an array of samples. Since we sample at 44100Hz a buffer of 12800 will allow for about 290ms of samples. When you do granular1.beginFreeze(250); that...
  24. houtson

    May i contact to "Bleep Labs."???

    Did you check out https://github.com/newdigate/teensy-variable-playback which is referenced in the video you linked to? cheers, Paul
  25. houtson

    Jteensy8000 - Clone of a clone with extra filters

    On mux'd pots - I use responsive analogue read which is great at smoothing out jitter. Also, I find it better to leave out the caps on individual pots when reading quickly through a mux. Cheers, Paul
  26. houtson

    3-Band EQ help

    lots of different way to do it, with your code, something like this would be the most basic: float lastF = -1.0f; void loop() { int knob = analogRead(A5); int knob1 = analogRead(A0); int knob2 = analogRead(A1); float F = (float(knob) * 18.0f) + 20.0f; float lowGain = float(knob1) /...
  27. houtson

    3-Band EQ help

    The low frequency performance issue at #5 is the first things I'd suspect. You're also reading the pots and updating coefficients every loop which will result in coefficients being reset millions of times a second and could be adding distortion. You'd be better checking if the pots have moved...
  28. houtson

    Teensy synth crashes while playing

    Have a look at noteFreqs[note + octave1] - there are quite a few instances where I think you could go out of bounds i.e. >127 which would have unpredictable results. You need to constrain the note+octave to keep it in bounds. I do it with something like : // Wraps a MIDI note to the range...
  29. houtson

    Updated 8x8 and 16x16 audio

    The board outline with connectors loaded for me (using Shapr3d) - I've attached an stl file, if another format is more useful let me know and I'll try to convert it. cheers Paul
  30. houtson

    Help with syncing Teensy drum machine to external source via sync pulse

    nice teensy compatible library by midilab that might suit your needs - https://github.com/midilab/uClock
  31. houtson

    SongBeam - realtime beamforming with four MEMS mics

    Interesting subject that I haven't come across before - thanks for the link to the basics it is really helpful. Sounds like you're no stranger to using the accumulated knowledge of all humanity to help on coding problems and that you understand the limitations. I asked my pals - claude code and...
  32. houtson

    TAC5112 Codec, basic driver (+free to a good home)

    Hi Jay, looks great, I'll definitely check that out. Cheers Paul
  33. houtson

    TAC5112 Codec, basic driver (+free to a good home)

    Hi @MrCanvas, I'm getting on okay with it. I've been spending time interfacing it to a pi pico for something that doesn't need the power of a teensy, that's where most of my effort has been lately. One difference to the WM8731 is that the TAC 5112 doesn't have a PGA so any gain needs to be...
  34. houtson

    TAC5112 Codec, basic driver (+free to a good home)

    Hi h4yn0nnym0u5e, I did see the other thread on the TAC5212 and TDM, for me I'm just looking for a single codec, probably just stereo in and stereo out. I sent off a request for approval with TI, let's see what they say. I'm not planning on buying their eval board but I thought might be able...
  35. houtson

    TAC5112 Codec, basic driver (+free to a good home)

    I'm looking for a new codec to use in custom designs of musical effects. I've been using the WM8731 for a while but it's now obsolete and a bit more difficult to find. I need something that I can get easily, stocked at JLCPCB for assembly and ideally with an ADC that is a bit less noisy than I...
  36. houtson

    Beat Friend: Teensy 4.1-based analogue drum machine

    That looks really fantastic, I'm a big fan of the minipops and your cr78 vibe sounds great. Interested in your use of dig-pots - is that for CVs or in the audio path?
  37. houtson

    Let's talk of possible new accessory boards

    A different sort of module but I think this new Raspberry Pi Radio module is interesting from a couple of angles: - could an adapter board be developed and integrated for teensy 4 - the module approach to ease certification is interesting for those considering making and selling in lower...
  38. houtson

    Teensy 4.0 with Midi Input and 5V LED Strips

    Hi, You are correct that the additional load on the 5V supply will be very small. Depending how many WS2812B's you are also driving the current drawn will likely be fine. The main thing to watch for is voltage and that you don't connect 5v to any of the Teensy inputs, the max. is 3.3V for a...
  39. houtson

    Setting momentary button array with latching functionality. Teensy 4.0 content

    you need to reference to the element in the array: from - usbMIDI.sendControlChange(60 + i, cc_value, channel); to - usbMIDI.sendControlChange(60 + i, cc_value[i], channel); Cheers, Paul
  40. houtson

    Setting momentary button array with latching functionality. Teensy 4.0 content

    you need to hold all the cc_values at the moment you are just using one variable, something like: // Store the value of Control Change for each button (0 or 127) uint8_t cc_value[8] = {0, 0, 0, 0, 0, 0, 0, 0}; ....... // Toggle CC value between 0 and 127 if (cc_value[i] == 127) { cc_value[i]...
  41. houtson

    TouchOSC and Teensy 4.1

    I don't believe so.
  42. houtson

    TouchOSC and Teensy 4.1

    on the teensy the usb host port is only host (your iPhone and Mac can switch between host and device duties) can you connect the teensy as a device using the other port?
  43. houtson

    TouchOSC and Teensy 4.1

    I think you're connecting a Host (iPhone) to a Host (USB host port) which doesn't work - can you connect the phone to the usb device port on the teensy.
  44. houtson

    Drone 2.0

    I missed this, bandcamp links sounds much better (sample 2 - wow!) - really nice
  45. houtson

    MIDI dropouts when I use readMidi with FrameBuffer ILI9341_t3n

    use !asyncUpdateActive() to avoid writing to the buffer while its updating
  46. houtson

    MIDI dropouts when I use readMidi with FrameBuffer ILI9341_t3n

    had Quick Look at library, it has a dmabusy so maybe something like if (!tft.dmaBusy()) { tft.updateScreen}
  47. houtson

    MIDI dropouts when I use readMidi with FrameBuffer ILI9341_t3n

    If dma then control should return to your loop but I would still measure the time take in you loop() to be sure. I don't know if your library has a dual buffer but is there a chance that you're modifying the framebuffer while DMA is still transferring?
  48. houtson

    MIDI dropouts when I use readMidi with FrameBuffer ILI9341_t3n

    I do not know the library but I would time these transactions, the library has lots of comments like //Not sure if should or not or do like main code and break up into transactions... which suggests they may take some time Cheers, Paul
  49. houtson

    MIDI dropouts when I use readMidi with FrameBuffer ILI9341_t3n

    I would time add some elapsedMicros timers around fillScreen() and the other items in your Task_Timer routine to characterise how long they take (average and also max). Depending on results you may be able tot optimise them or make midi.read() occur more deterministically Cheers Paul
  50. houtson

    MIDI dropouts when I use readMidi with FrameBuffer ILI9341_t3n

    I watched your video, not sure I followed exactly what you were doing but are you sure it is midi drop out i.e. actually missing midi messages or is the timing just being thrown off ? I see you print to serial note on - do you see the right sequence of notes. Cheers, Paul
Back
Top