Thursday, February 3, 2011

Luppp: Update Waveform

Hey,

Today a "ResourceHolder" was implemented, it takes all buffers / MIDI / automation data, and stores it. Nothing else. But it means there's a centralized place from which both the GUI & the engine can access the data, and allows much easier plotting of data on screen... See attached:


So there's 3 piano wavs on the top 3 loopers, some drum & bass drums on strip 3. Breaks & noises on 4, leaves some synths on 5  :-)



All in all... happy that this got done, no clean solution came to mind since the last update, so its had been while in the pipeline.
Till next, -Harry

Sunday, January 16, 2011

Luppp : Update Funky

Hey,

Its a special day: 10,000+ lines.

Lots of work been done: UI got a real haul over, but under the bonnet there's a structure for automating data, and some initial multi-threading is going on to keep the RT thread doing what its supposed to!

The following shots nicely show off the funky new UI:



"Loopers", each one will* represent an audio loop, and provide some nice effects like reversing a part of the loop, swapping parts around & beat-grinding...







I've only 2 hands so automation is essential: take it away! Any parameter can be controlled via OSC! Working on an implementation of MIDI LEARN, to open access to every MIDI thing out there







Finally (& most funky): The mixer.

Needs a little overhaul to not look your tripping, but basic features are there, the big orange is the fader, red-green-blue is a 3 band eq, under it the black line shows PAN (all 0 in shot).




Will post back when that 60's look is gone, -Harry

Wednesday, January 5, 2011

Luppp: Getting there

Hey all,

Serious progress going on! Audio input can be recorded (in time with the timebase) played back at a certain bpm (in sync with other files at the same bpm) effects can be applied to the signal stream (LADSPA only for now), and the resulting signals can be mixed with logarithmic faders, and finally the peak meters show you your levels ;-)


As you can see: there's a shiny "Add Track" button at the top of the screen, dynamically adds tracks to infinity...

The number in the left of the "track" widgets is its OSC ID, you'll need it to do things to that track!

The smaller numbers show how many beats there are in the loaded sample, and how many have elapsed.

The record button is there so you can enable.. duh


The orange faders give volume control (with a log scale of x^3, feels nice with a MIDI controller ;-)  Then the master output levels, and then the HUGE number to tell you what beat your on!

Next features: PFL on each mixer track, master faders, PFL faders, busses (sends), GUI interface to LADSPA effects (engine done :-)

Also needed: Some threading to allow RT thread not have to load / write audio samples, send large OSC messages etc. Working on it!

Cheers, till next! -Harry

Sunday, December 19, 2010

Luppp: More features

Hey,

Luppp got its chrismas pressie early: Live audio input. As well as this, the start of a "timeline" class has been made, and this allows any recorded loops to stay in sync with eachother... :-)

GUI stuff has been deleted except for the re-usable stuff, and over the next while I intend to get some basic waveform & mixer widgets implemented. That is if i can stop myself recording all sorts of crazy sounds & looping them.

Till next, -Harry

Saturday, December 18, 2010

Luppp: Update? Nah News!

Hi.

Here's the deal: Luppp has been brought back to life. Not only same code is being re-used, but other projects have joined forces and now co-exist with Luppp.

This makes all the features from the other projects easier to implement in Luppp, like looping a .wav file, like processing automation data, providing LADSPA plugins.. :-)

The front-end needs work dratically, its basically just an OSC & terminal application atm. But that's all gonna change. Plans are made to scrap the "internal OSC" mode, in favour of being able to access the waveform data etc in the GUI thread. Nessisary evil for a nice program. Oh well.

Also the GUI will be totally reworked from 0, just like the engine was. This will provide more stable & maintainable code, as what I wrote a couple of years ago isn't quite what most would concider acceptable.. :-P

Will post here once there's new features... -Harry

Sunday, December 5, 2010

Exams Idea's and Audio

Hey guys,

With exams looming in the next two weeks and projects to be finished there's definatly enough to be done. At the same time there's some nice ideas popping up around the place.

I've understood the C++ principle of composition, which will allow for neater more sustainable code. In my mind there's some better idea's of how Luppp Automate reSampler etc need to be integrated into one larger program.

Also some messing about with a windows build has been done... apart from LibLO, and Pthreads I've got most of it sorted out. :-)

Next update after the exams! -Harry

Saturday, November 13, 2010

Luppp revived: reSampler

Hey,

I've just spent a lil while getting Luppp into a launchpad repo, and hacking the code a little in a small sub-project called reSampler.

Its gonna a mini JACK app that will scramble a .wav loop D'n'B style :-)
Hopefully Ill figure out how I actually want to control this little re-sampling program.

At the moment, I'm just concidering just a simple copy of say the 3rd part of an 8 part loop to the 5th part. An OSC interface in this case will be:

/resampler/load "sample.wav"
/resampler/setNumParts 8
/resampler/swap 3 5
/resampler/swaprev 3 5

swap just swaps the parts, swaprev, swaps & reverses the direction of the part.

I have a GTK widget that can draw files but it needs some optimization... It takes about 3 secs for a normal length loop atm.

More info on the way once I've got stuff implemented.
Cheers, -Harry




Clean drum looop












Same drum loop with reverb effect:





OSC interface has been implemented, can now swap parts around, reverse parts of the clip and revert to the original loop using ONLY OSC COMMANDS! :-)