it works playing full duration of 2.264 sec seamlessly. usingEXTMEM int16_t sampleBuffer[44100 * 5];
Now I can only hear some pitch errors. If this can also be improved while maintaining the audio quality, then it will serve me as a good...
Yes, thank you all for your kind words.
Thank God I was able to convey my true message to you.
@houston...
This is exactly what I was asking about [Time-Stretching].
Thanks for these functions added:
stretcher.stop()...
Thank you very much .. DD4WH...
You can judge my ability.. from your answer that I learned that the change in speed is called "time stretching" event here. I am not that good at coding to create complex objects like developer. yes that much,.. I...
I am so sorry Rezo and Thank You .... I thought , like me, you also wanted to see the audio playback speed gradually increase decrease. But Houston's reply showed me that your recommendation is right for me.I thought the Phase vocoder were just...
By google Search I found something.
is it useable for my requirment???
full details is in PDF pages (attached in reply) .i tried it to understand usage.but could not ...please open and take a look at this . How can I use this in my code to...
This reply is as reminder for Post#20 . After receiving the modified files from Houston, I was able to freeze my entire sample.but using speed function code posted in post#20 and full code in post#17 , i am getting speed changes with affect...
Thank you Houtson ...
I am indebted to you for modifying the granular files. I recently test code with your files. I am happy to see playback running in Seamless looping.As my file is 2264 miilisec long . I am writing code to play & freeze below...
I am 90% sure that granularEffect does not allow buffer size for more than (nearly 1481miilisecons). Because of i tried granular1.beginFreeze(5000); replaced in above post#17's code.while the 2264 millisseconds .wav was playing.. i saw...
Yes houtson. ...
I wanted to post full code .i posted part of code , because of Someone just told me to post only related part of code.they said ,they have no time to read full code.
you can check my running full code
#include <Arduino.h>...
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...
Thank you Houtson.
using (#define GRANULAR_BUFFER_SIZE 32000) Audio loop playing correct but No Speed Change on Input. seemed too low buffer size.
using granularBuffer[5292000]; feel granular works . I am listening ,Freeze times are slightly...
Thank you a lot...and Am really sorry for new thread. It is for, i was unable to open my this thread.
For reply above . Did you mean in line 33 in
https://github.com/PaulStoffregen/Audio/blob/master/effect_granular.h
The internal RAM of the teensy4.1 is not enough to freeze long duration. if there are files (more than 2 sec duration) to be use in granular effect, How to allow PSRAM memory to handle large buffer. i tried many google suggestion something like...
if i increase buffer size for use of PSRAM
#define GRANULAR_BUFFER_SIZE 2800000
EXTMEM int16_t grainBuffer[GRANULAR_BUFFER_SIZE];
and use freeze time granular1.beginFreeze(1132); .Not Work
if freeze time...
Thank you KurtE .... I am sorry . I'm already quite confused for granular. but in experiment , I saw something hopeful. Please Take a look on code:
#define GRANULAR_BUFFER_SIZE 12800
int16_t...
thank you houtson ... i am using TeensyVariablePlayback Library for a year . it has functionality of Slower/faster playback with pitch affect also.
BUT in video , Pitch of drum loop stay same... I could not understand concept
Thanks a lot KurtE .. for reply . i could not understand link you given. I seemed I will have to again fight alone to Granular basic functions.
Thank you
Google say something like " granular1.setGrainLength(ms); should be call to set each grain size in main loop based on knob read to affect playback speed" I am seeing there is no this function added in effect_granular.h in audio library to use...
is there Nobody related to Granular???
My suggestion: Granular is not working for playback speed control.it must be Reset/modify to work and update Library. for simple users with examples.
otherwise No need to add it in Audio library
I am continously trying with GranularEffect to get better result. but could not. No example found for slower/faster playback speed of short Drum loop loaded in Psarm , something like this by Nic N but he is not reply for code..
i am seeing in...
If less than 4sec my drum loop is loaded to Psram ,Address is "SMP_SDDR[0]" size is "sizes[0]" .
Please write a simple code to try, to playback slower/faster without affect pitch of audio and audio quality.
Please don't ignore . For month i...
big confusion with use of
granular1.beginPitchShift();
granular1.beginFreeze();
if we called
Speed=Speed+0.1;
granular1.setSpeed(Speed);
granular1.beginFreeze(200);
SOME TIME speed is not changed ,but 200 millisec of my 3 sec audio are...
https://github.com/PaulStoffregen/Audio/blob/master/examples/Effects/Granular/Granular.ino
granular example has been add to Audio library. By Use , i felt it is not helpful for playback speed .And Somewhere else not more info .
if you see code...
yes ...Mark J Culross ..in example (Files > Examples > Audio > Effects > Granular) example only affect Pitch of running Audio file ,but not PLayback speed (time stretching).
above video you are seeing in post#4 by Nic N. this is what i am...
Yes tried but not working... I have tried in this thread/post#5
https://forum.pjrc.com/index.php?threads/how-to-add-granular-to-audio-playback-to-control-speed-in-realtime-without-affect-pitch-of-sample.77749/
I want to get code used below...
after calling in void setup()
granular1.begin(SMP_addr[0], sizes[0] / 2);
granular1.setSpeed(1.0); // Normal speed
granular1.beginPitchShift(1.0); // Normal pitch
granular1.beginFreeze(200);
my drum loop not start playing . but it...
if we loaded a drum loop .wav to psram teensy 4.1 . Addres SMP_addr[0] size sizes[0].
can i play it in seamless loop by granular functions (not call any player , playMemory etc) ????
if yes (how to play it with specific Speed [Time...
could you help me . while not controlled playback speed with below code:
float Speed = 1.0;
float currentSpeed = 1.0;
float baseFreezeDuration = 100.0;
void updatePlaybackSpeed(float newSpeed) {...
Wav files are being loaded to psram , and Played fine.but issue with "freeze()" parameter, or related to required function that help to" set speed()". I am not getting speed changes. But getting a small pitch up jerk in beginning of playing file...
Am sorry to make this post related to my previuos one. but i need to solve it first to go ahead for teensyAudio.
i have teensy4.1 with 2 chip PSRAM+Audio Adaptor.
i wanted Playback speed control of my 2 sec drum loop(real-time or set once...
i tried to follow Paul's example
https://github.com/PaulStoffregen/Audio/blob/master/examples/Effects/Granular/Granular.ino
as i don't have soldered button/knobs , i control it by Pure Data's Slider/buttons [file Attached below]
code is...
i am very puzzled in functions of Granular. i explored & tried very much . but could not success. i am not getting slower/faster playback @ all efforts.
speed slower/faster inputs are affecting pitch and distroyed audio quality of audio.
if i...
i seemed granular start works. but i am don't understand what should be used with granular1.setSpeed(Speed);
NOTE: my audio drum beat being loaded to psram is 2sec (390kb). it is played in loop mode seamlessly .
i start playback in loop...
i want to do playback speed slower/faster in realtime without affect pitch. by search in google i found it is possible thru granular.
as below simple sketch i wrote my 2sec audio files are loaded to PSRAM . Then they are played well by...
not being print in Serial monitor
. i test these display on Arduino leonardo board they are working right.i seemed my Teensy Lc board got fault something
thank you all of you.
Thank for Reply.....
i removed display.begin(); from setup and loop. got skipping data and cursor position auto increases one by one pixel.see result here
video1
i also tryied code from @defragster . got result below not stable position and...
i have well connected i2c oled display(128x32) with teensy LC(pin18,19) . using this code
#include <EEPROM.h>
#include <Keypad.h>
#include <MIDI.h>
#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>...
So I could do the following: Connect 5v power to the VIN pin, GND to GND pin (with cables coming from a voltage generator) and then, if I'd cut the trace between VIN and VUSB, connect a usb cable to the mirco usb port of Teensy, reprogramm it...