-
Older Activity
-
09-20-2023, 07:17 AM
Oh, I just looked at the I2S code. It’s set for 16-bit acquisition, so the edits needed to get pseudo 24-bit are a bit more extensive than I’d hoped :(
4 replies | 177 view(s)
-
09-20-2023, 07:14 AM
I believe you’ll find it does. Because you check for the playing state too soon, about 2/3 of the time it’ll completely skip the while() loop, fail to stop the queues, and emit garbage data or just crash because you...
4 replies | 177 view(s)
-
09-19-2023, 12:26 PM
Well that's a bonus, if the clicking isn't on the recordings (which are, after all, the important thing). But it doesn't ring any bells to me as to possible causes. Have you checked that the files are OK if you remove...
447 replies | 49803 view(s)
-
09-18-2023, 07:46 PM
Great news, hope the wedding goes well!
Yes, the constant clicking seems to be a "feature" of the Teensy 4.0 / audio adaptor conbination - see my post #311 and on for the discussion of what I think is going on. Using...
447 replies | 49803 view(s)
-
09-17-2023, 07:52 AM
OK, so Gandalf the Blithering Idiot messed up.
Here's a new set of hex files, or get the latest commit from https://github.com/h4yn0nnym0u5e/audio-guestbook/tree/feature/doc-01
Full disclosure ... I've modified...
447 replies | 49803 view(s)
-
09-17-2023, 07:09 AM
Only you know which pins you used for the hook switch and play button! The numbering on the Teensy is logical rather than physical, so you need to check against the reference card or...
447 replies | 49803 view(s)
-
09-16-2023, 07:42 AM
I suspect many of the issues are hardware. To prove this to yourself, feed the queues with a synthesised signal using AudioWaveform - you should see no pops apart from any discontinuities cause by starting and stopping...
4 replies | 177 view(s)
-
09-15-2023, 07:04 PM
Here you (and future users) go. Note that I renamed the files in accordance with Paul's convention, so they're now effect_hammond_vibrato.cpp and .h. In my mind, anyway...
/* \file effect_hammond_vibrato.cpp
*
*...
3 replies | 1011 view(s)
-
09-15-2023, 06:45 PM
Reverb and DynMixer fixed, I think. Please give them a go :D
92 replies | 11732 view(s)
-
09-15-2023, 06:32 PM
Well, this is really good! Why is it so orphaned? :confused:
I've been having a play, and a couple of things have come up. Having made it "dynamic capable" by giving it a suitable destructor, it turns out that if...
3 replies | 1011 view(s)
-
09-14-2023, 09:48 PM
Not sure about Gandalf the White - how about Gandalf the Grubby?
I've been thinking about this for a while, and decided now is probably a good moment to try it out. The attached .ZIP file has builds for both Teensy...
447 replies | 49803 view(s)
-
09-14-2023, 12:28 PM
Doesn't sound stupid to me. I had much the same idea a few weeks back while musing on how to use the AudioSynthWavetable object in my "dynamic" branch of the audio ecosystem. At a glance it looks like most of the data...
5 replies | 288 view(s)
-
09-13-2023, 07:33 AM
Nice call on the cleanup thread, Mark - thanks!
That's looking a whole lot better .. at least it's compiling, and the sizes all look about right (I'm using Teensyduino 1.59 beta 3 here, and also tried with 1.58,...
447 replies | 49803 view(s)
-
09-12-2023, 08:40 PM
Can you turn on the "Show verbose output" checkbox and post the result (in code tags again)?
That "FQBN" looks like lingering Arduino 2 stuff, as does still having things in your appdata/local, but I'm not sure....
447 replies | 49803 view(s)
-
09-12-2023, 08:17 PM
Inspecting the code, it's Yet Another Audio Object That Fails With Null Blocks. There are far too many of those in the Audio library ... I've fixed some and done PRs, which are being ignored, so I'm not doing any more....
92 replies | 11732 view(s)
-
09-11-2023, 02:33 PM
You have to download MTP_Teensy as a separate library - various posts on this thread should help you do this. It’s not part of either the Arduino IDE or standard Teensyduino.
447 replies | 49803 view(s)
-
09-11-2023, 07:39 AM
This line worries me:
MWG_WV Audio Guestbook3 Verify Errors – unaltered Guestbook.ino – tweaked MTP_Teensy.h for Serial and change of MTP to CDC per compiler
You shouldn't have to tweak anything, if you installed...
447 replies | 49803 view(s)
-
09-10-2023, 03:01 PM
And it is a warning that must be heeded. IMHO Freescale / NXP did no-one any favours by including the letter sequence "GND" in the pin name. It isn't a ground, it's a mid-rail power supply acting as a common connection...
447 replies | 49803 view(s)
-
09-09-2023, 09:25 PM
Should work OK, I've had no such problem recently. Only thing I can think is either you have two copies and you're somehow getting the wrong one, or you only have the one copy but it's corrupted somehow.
95 replies | 9921 view(s)
-
09-08-2023, 08:55 PM
Trying a bunch of different stuff until you find something that works is rarely the best way of solving a problem.
Truly the best is to get a hex editor, open the offending file, compare it to what a WAV file should...
447 replies | 49803 view(s)
-
09-08-2023, 08:17 PM
Personal computers. There were various duff WAV files earlier in this thread, and it was quite interesting (if you’re interested in that sort of thing…) how most applications would play them without complaining....
447 replies | 49803 view(s)
-
09-08-2023, 07:21 PM
Usually it’s caused by the WAV file not being quite to the specification the AudioPlaySdWav object expects. It’s more picky than most PCs… If you zip it up and attach it to a post we can probably figure out what’s...
447 replies | 49803 view(s)
-
09-08-2023, 05:38 AM
Oh, and it’s not my library, it’s Nic’s! I just come on the internet and make a nuisance of myself with it…
95 replies | 9921 view(s)
-
09-08-2023, 05:36 AM
Not 100% sure but I believe you’re right, no such function exists. You can already start at a specific position, by setting the loop start and using setPlayStart(play_start::play_start_loop).
Bear in mind this will...
95 replies | 9921 view(s)
-
09-07-2023, 06:41 PM
Ah, OK, glad it's sorted out. There is looping built in to the library, but it's possibly easier to "roll your own" if you're aiming for MIDI sync. It does have some neat features like cross-fading the loop start and...
95 replies | 9921 view(s)
-
09-06-2023, 06:37 PM
Should be fine: you'll get an improvement if you bump the buffer sizes a bit, too, assuming you can afford the memory. Look at line 19 in ResamplingSdReader.h, change #define RESAMPLE_BUFFER_SAMPLE_SIZE 512 to 1024 or...
95 replies | 9921 view(s)
-
09-05-2023, 09:03 PM
No worries, I'd like to know this works OK...
Amazon appear to have grabbed their images straight off the PNY website, so hard to know if you got hit with a faulty or knockoff card. I tend to buy from MyMemory here...
95 replies | 9921 view(s)
-
09-05-2023, 08:45 PM
A couple more things to try. One is to increase the AudioMemory(25) to, say, 50. If you're using 18 blocks for the queue, that's leaving perilously few for other uses. The other is to move the queue1.freeBuffer(); line...
5 replies | 143 view(s)
-
09-05-2023, 08:19 PM
Can't 100% reproduce this here ... but I also couldn't get it to work at all with just the USB output, I had to switch to the audio adaptor. It used to be the case USB-only didn't work, because it couldn't have "update...
95 replies | 9921 view(s)
-
09-05-2023, 06:57 PM
Doesn't look like you have quite the latest source code, though it might be the latest from playful(-but-we-don't-bother-with-ongoing-support-for-our-)technology ... I wrote that out loud, didn't I? Oops... Try this:...
447 replies | 49803 view(s)
-
09-05-2023, 12:52 PM
You should be able to use Teensyduino 1.59 beta 3 with this version of cores and the latest dynamic audio library. I'm not planning to support old versions, there are simply too many combinations to deal with! I do make...
42 replies | 6193 view(s)
-
09-03-2023, 10:01 AM
Hi Paul. Yup ... barring typos! There's also an updated Design Tool which allows you to place the new object, wire the modulation inputs, and export the result, and has documentation, but that's entirely optional. For a...
4 replies | 269 view(s)
-
09-02-2023, 06:22 PM
Just took a look at the spec for the Lexicon - default 480ms delay, upgradeable to 960ms or a whopping 1920ms ... at 20kHz ... assuming I found the right beast. That's 84,672 samples, taking 173k @ 44.1kHz by my...
42 replies | 6193 view(s)
-
09-02-2023, 02:51 PM
Isn't the feedback just the mix of the 16-tap delay? I know the hardware has the Reverb / Echo selector, but that'd just be a parameter change for the Teensy. Looking at scope photo #5 in the service manual, you can see...
42 replies | 6193 view(s)
-
09-02-2023, 01:05 PM
Not bad, and I found the patent, too (slightly less dodgy link than in the write-up...). Not quite sure how to interpret the table stating in section 6, particularly the "delay increment". Anyway, it motivated me to...
42 replies | 6193 view(s)
-
09-01-2023, 03:16 PM
Mmmm ... 11-bit 16kHz vintage-ness ... tasty! And a use for AudioEffectBitcrusher. I downloaded the service manual and can't quite figure out why they need 24 taps, guess it must be to do with the PROM magic using 13 of...
42 replies | 6193 view(s)
-
09-01-2023, 08:01 AM
I know my PM folder is full ... it's self-defence: I got a lot of questions which could / should be asked on the open forum!
With 4-beat samples and needing to stretch to fit the current MIDI clock, your only real...
6 replies | 887 view(s)
-
08-31-2023, 09:34 PM
I'm still slightly confused ... but I think less so ... it's not that hard to do! So if I'm understanding it, delayFade() is (internally) like having two taps set to different delay times, with a 2-channel mixer that...
42 replies | 6193 view(s)
-
08-31-2023, 12:47 PM
I think for use with the Dynamic Audio Objects library you need a destructor for the AudioEffectDelay10tap object. It can be very simple because it doesn't manage its own delay memory, so a definition like...
42 replies | 6193 view(s)
-
08-27-2023, 09:02 PM
No plans to do that, no. I did do some work on porting my pre-loading approach to Nic's teensy-variable-playback, which you can take a look at in my feature branch here. This was based on a request for the benefit of...
147 replies | 8957 view(s)
-
08-27-2023, 02:23 PM
More info needed on "gets stuck"! There's been a recent issue with AudioEffectDelayExternal and other classes which attempt to use SPI, Wire etc in their constructors ... this should have been fixed in Teensyduino 1.59...
9 replies | 901 view(s)
-
08-27-2023, 06:58 AM
Good news! I’ll let it simmer a bit, make corresponding changes to the record object, test, and merge back. Will post when that’s done.
147 replies | 8957 view(s)
-
08-26-2023, 04:03 PM
OK, I've pushed another set of revisions up to GitHub which seem to fix the issues with both direct playing from the sample file, and when using preload objects to get better latency. So far no crashes and no obviously...
147 replies | 8957 view(s)
-
08-25-2023, 07:22 AM
"Decidedly we make progress, mon cher Hastings!"
Should I be able to reproduce the failure to play using your code from post #135? Any particular bpm that seems particularly prone to this? Could it be an attempt to...
147 replies | 8957 view(s)
-
08-24-2023, 08:54 PM
OK, so I've made some changes on a new branch, which you can find at https://github.com/h4yn0nnym0u5e/Audio/tree/feature/buffered-SD-interrupt-safe-01. The changes only affect playback, so please don't try to record...
147 replies | 8957 view(s)
-
08-23-2023, 07:11 PM
Here you go. Shows different vector numbers for the minimal audio object and IntervalTimer callback, and the 0 "thread vector" value when I call the callback from loop().
#include "Audio.h"
uint32_t...
105 replies | 10866 view(s)
-
08-23-2023, 05:02 PM
AAArrrgh ... I'm a numpty ... ignore the above. I was calling the callback from loop() as well as the IntervalTimer ... because I initially wanted to test it was correct. :rolleyes:
As you were, folks.
105 replies | 10866 view(s)
-
08-23-2023, 04:34 PM
There’s a facility to preload the first part of a file, to improve latency - take a look at the updated Design Tool info pane for AudioPlayWAVstereo … you’ll need to scroll to near the end. This reduces the problems but...
147 replies | 8957 view(s)
-
08-23-2023, 04:25 PM
I think I might have spotted a gremlin that's crept in with the new IntervalTimer. I'd like my (library) function to be able to tell if it's been called from within an ISR, so to that end I've got the very simple:...
105 replies | 10866 view(s)
-
08-23-2023, 05:48 AM
Ah, right, I think I see the root cause of the issue. The uclock library is calling the audio functions from an interrupt, which is super bad news for SD card access when there are also access calls in user code … which...
147 replies | 8957 view(s)
-
08-22-2023, 09:27 PM
I've got a bunch of different branches - you'd be wanting this one to use the improved AudioEffectDelayExternal ... oh, it's you ... :D ... yes, the Dynamic version of the library has my improvements to...
9 replies | 901 view(s)
-
08-22-2023, 08:55 PM
OK, here's an entirely untested update to the AudioMixerStereo object. Keep a copy of the old versions, and drop these files into the Audio library:
To switch pan types, you need something like:
AudioMixerStereo...
92 replies | 11732 view(s)
-
08-22-2023, 07:27 PM
Not as slow as I'd be if I had to write in Spanish!
I found this discussion on a Reaper forum, not Cubase, but still seems relevant. It looks a bit of a weird response to my eyes on their various animated graphics,...
92 replies | 11732 view(s)
-
08-22-2023, 07:20 PM
That scuppers the easy ideas. The 0x6FFFC00B address looks like about 16k before the start of EXTMEM, which is probably a Clue. Are you able to run addr2line on your .elf file and find out what piece of code is at...
147 replies | 8957 view(s)
-
08-22-2023, 05:23 PM
Sounds like you figured out the PlatformIO bit, which is lucky because I have zero idea!
The most recent commit to https://github.com/h4yn0nnym0u5e/Audio/tree/feature/buffered-SD should get you the up to date...
147 replies | 8957 view(s)
-
08-22-2023, 10:03 AM
Hmmm ... OK, that'd be a special case, then. I'll give it some thought about how the API should work: on the face of it it's probably a separate function to set a flag which says "use the pan law gain value from ±1.0 to...
92 replies | 11732 view(s)
-
08-22-2023, 06:22 AM
Probably, but it'd be a maintenance nightmare...
There are 7 code files needed for the functionality, but there's also documentation, a changed Design Tool with the extra objects available, and multiple examples,...
147 replies | 8957 view(s)
-
08-20-2023, 10:28 PM
We’ve ordered some National Instruments kit for a project at work. We need one PC compatible ADC with a bridge amplifier, though the selected card has two channels - always nice to have room for expansion, it’s often...
21 replies | 1594 view(s)
-
08-20-2023, 12:57 PM
Yes, connects like any other SPI memory. You can't use the QSPI on Teensy 4.0, though - see https://forum.pjrc.com/threads/72321-QSPI-PSRAM-for-Teensy-4-0. It can be used as delay memory on the audio adaptor, with some...
9 replies | 901 view(s)
-
08-20-2023, 12:05 PM
More context needed, really. OS in use? IDE (version?) has failed to find the MTP library, or you can't find the files on the SD card when the Teensy's plugged in? Error messages output by the compiler? (if you post...
447 replies | 49803 view(s)
-
08-19-2023, 05:54 PM
Sounds good. Technically it would be possible to re-patch the effect ordering (now that patchcords are dis- and re-connectable, and indeed new and delete'able), but it'd be a UI nightmare on that tidgy screen!
Thanks...
6 replies | 1265 view(s)
-
08-19-2023, 09:59 AM
I'm curious, but too lazy to read the manual (which might not even answer the question) ... for the Multiverse, do you / Aviate have a technique for uploading multiple topologies (pedalboards) simultaneously, of which...
6 replies | 1265 view(s)
-
08-17-2023, 07:19 AM
This sounds like an issue that appeared with the recent toolchain update - Teensyduino 1.58 or so? Discussed in a few threads, for example this one. I can't see any indications of which Teensyduino you've all used, but...
39 replies | 1418 view(s)
-
08-16-2023, 07:59 PM
No problem, though it will be comforting to have a Real User’s confirmation that all is well. I’m actually using it myself for a standalone audio patch editor, wrapped into M5w_8angle and M5w_8encoder classes for ease...
12 replies | 825 view(s)
-
08-15-2023, 10:19 PM
That’s the AudioAmplifier object, just the one input. The existing AudioMixer4 (same file, further up) only optimises for gain=1.0, but I just put in a PR which optimises for gain=0.0. Interestingly, my testing seemed...
10 replies | 425 view(s)
-
08-15-2023, 06:06 PM
You really need to experiment or look at the source to see if any CPU cycles will be saved, and whether audio objects will behave well when disconnected. There are at least a couple of examples (fader and envelope)...
10 replies | 425 view(s)
-
08-14-2023, 06:00 AM
You don’t say which Teensyduino you’re using … there have been some issues with AudioEffectDelayExternal on recent versions: the updated gcc toolchain caused this sort of crash. Updating to Teensyduino 1.59 beta 3 will...
8 replies | 388 view(s)
-
08-13-2023, 06:50 PM
But you do have USB Type. Which is what the highlighted (in my quote) and very clear error message in your build output was telling you to change. And is shown correctly set in the linked image.
Audio tweaks are...
447 replies | 49803 view(s)
-
08-12-2023, 10:31 PM
My test code only needs serial so it can show its progress, it should have no effect on whether the delay works. It’s a simple job to remove the serial stuff if you need to, but it’s just test code.
Somewhere in the...
8 replies | 388 view(s)
-
08-12-2023, 03:39 PM
PR #43 has now been merged into Teensyduino 1.59 beta 3, though the announcement doesn't mention it. So it should be in the final release (unless it proves to stuff something else up!), all will be lovely and official,...
12 replies | 825 view(s)
-
08-12-2023, 07:32 AM
I think the link was intended to be https://forum.pjrc.com/threads/63241-use-EXTMEM-(psram-16mb-soldered-onto-Teensy-4-1-pads)-for-AudioMemory
Using a slightly different program (not relying on an audio source), I...
8 replies | 388 view(s)
-
08-11-2023, 07:11 PM
See screenshot in this post.
447 replies | 49803 view(s)
-
08-10-2023, 09:54 PM
You can give it a go with the AudioPlaySdWav object from the “stock” library, but you may run into problems. If so, take a look at https://forum.pjrc.com/threads/70963-Yet-Another-File-Player-(and-recorder) - I think...
3 replies | 211 view(s)
-
08-10-2023, 05:19 PM
Note that AudioProcessorUsage() outputs directly in percent (see https://www.pjrc.com/teensy/td_libs_AudioProcessorUsage.html), so you're using 0.19% of the CPU, not 19%. You've got a bit in hand...
10 replies | 539 view(s)
-
08-09-2023, 03:44 PM
There wasn't a way before ... but there is now! Grab it from this commit. Change the value of MAX_RECORDING_TIME_MS from the 120 seconds I randomly picked to whatever value you choose.
This commit also enables the...
447 replies | 49803 view(s)
-
08-08-2023, 09:33 PM
Okay then. I tried the non-existent file case by changing my example to delete it in setup(), and it didn't preload or play. Which was odd. So I've put a call to flush() every time a file is written while recording, and...
147 replies | 8957 view(s)
-
08-08-2023, 07:21 PM
Been there, done that!
Correct, you can't preload a file that doesn't exist. When you start a recording it exists, but is empty (for a new file) or contains the previous file contents (for a file that already...
147 replies | 8957 view(s)
-
08-07-2023, 07:02 PM
You’re very welcome, I’m having a blast making this better as time goes on!
Looks like a very cool project, hope we can get a post with video and audio on the blog project section, when you’re ready.
147 replies | 8957 view(s)
-
08-07-2023, 04:07 PM
You're right, inHeap would be a better choice for the example - I'll change that.
The preload should always return 0 (no error), another value means an error occurred such as an invalid header. So if you get no...
147 replies | 8957 view(s)
-
08-07-2023, 11:54 AM
OK, I've pushed a new commit to GitHub, which should allow you to start playback (or pre-load an AudioPreload object) while the file is still being recorded. This includes an example in...
147 replies | 8957 view(s)
-
08-06-2023, 07:40 PM
Did this help? Suggestions for improvement?
7 replies | 356 view(s)
-
08-06-2023, 06:45 AM
The delay effect is one of the many special cases in the Audio library, which needs careful reading of the documentation. In this case, it uses audio blocks for its delay memory so you need to allocate “enough” at...
10 replies | 539 view(s)
-
08-05-2023, 05:04 AM
This has nothing to do with the audio guestbook. Please start a new thread.
447 replies | 49803 view(s)
-
08-03-2023, 09:28 PM
I suspect not at the moment, because the WAV header isn’t written until recording stops. But it’d probably be possible to add a function to write an interim header to the file so preload would work. I’d also need to...
147 replies | 8957 view(s)
-
08-03-2023, 07:08 AM
Not sure what you’re trying to get at here. The Audio library doesn’t do stereo except in a few modules, otherwise everything is mono and you have to duplicate stuff if you want stereo. The lower limit of the audio...
447 replies | 49803 view(s)
-
07-31-2023, 03:43 PM
But the MIDI library will probably be using Serial under the hood … so, it’s still worth trying to confirm or deny that MIDI/Serial use is part of the issue, by removing it from the problem demo.
9 replies | 510 view(s)
-
07-31-2023, 10:07 AM
Can't reproduce this, though I've not quite got the same setup as you (no MIDI keyboard). Doesn't look relevant, as your video clearly shows a lack of sync between the LED and the audio, but ... full disclosure.
...
9 replies | 510 view(s)
-
07-29-2023, 05:33 PM
OK, I've tuned it up a bit and this seems to work OK:
// Demonstrate use of AudioUpdateGrabber class
#include <Audio.h>
//#include <TeensyDebug.h>
...
7 replies | 356 view(s)
-
07-29-2023, 02:35 PM
We've all been there...
If it helps, I've made an Audio class which claims update responsibility, but actually updates only when you trigger it from your code. You can thus step through what's going on one audio...
7 replies | 356 view(s)