Monday, 31 March 2014

9th Supervisor Meeting

Progress Report;

  • Getting dissertation draft, currently focusing on project chapter and literature review
  • Got iPad OSC improved display, however issues exist with the multi-xy pad 
  • Continuing debugging and optimising
  • Had a wavetable element feature, but it seemed too distant/un-connected to the overall prototype
  • Other apps have been discovered such as Fantastick and c74
  • Stack overflow still exists
Agreed Action Points;
  • Technical optimisation - Wave, Sample Rates
  • Debugging/Functionality
  • More written work
  • Framework for post mortem/project evaluation

Friday, 21 March 2014

8th Supervisor Meeting

Meeting Agenda; Progress.

Progress Report;
  • Running prototype 6.6/6.7 
  • Streamlined flow
  • Redesigned FX for parallel mix control to present an FX blend
  • Filtering very intuitive on iPad
  • Looked at Pure Data, missing object problems with running PD Extended
  • Dodge objects - Comb~/Clip~
  • Inverse concept a x10 multiplier that opens up for higher sound generation
  • STACK OVERFLOW - Possible to resolve using more specific programming  
  • Flext SDK for taking things further making custom Max/PD objects using a C base language
Agreed Action Points
  • Inverse Mode
  • More Filtering Combinations (Dynamic suggested at least looking at)
  • iPad design improvements
  • Pre-Main-Post for Signal/FX flow
  • Investigate parameter automation

Thursday, 20 March 2014

FX Mixing

After an unsuccessful integration of clip~, have integrated an FX mixer with offers a greater level of control and customisation, allowing the core along with different FX to be blended together;



This presents a level of signal flow control, instead of just relying on the main input and output levels, which proved to be inadequate in terms of offering the balance needed for the multiple processes.

Another concept for implementation would be an inverse feature that essentially adds a simple x10 multiplier on either the standard or reverse signal that results in the negation of the lowered pitch and flips it to a controllable higher pitch. 

Monday, 17 March 2014

Feedback

With the crit feedback, the iPad support feedback was very positive as it allows for a more intuitive form of control.
Will have to address the XY control issues, probably due to scaling and value attribution.

And should things get serious around taking it further in Max or PD using code, there is a dedicated C++ based SDK;
http://grrrr.org/research/software/flext/

Thursday, 13 March 2014

iPad Control

Was able to get an iPad I off one of my lecturers today, so I've been working to develop a control scheme for it. 
Version 1 has been pretty successful as it references the cross patch material. The button elements work especially well.
Issues with XY control and the multitoggle buttons as they are difficult to judge how to assign the right values.

The testing of data allocation

Tablet Optimised Design

Having investigated with lecturers about getting a tablet for development, either an iPad mini or an iPad 2 being provided by the University. I have started designs optimised for a tablet oriented display;




Wednesday, 12 March 2014

TouchOSC Success

The interface test across the University's system was successful, the interface is also capable of interacting across a considerable distance, for example across Whitespace or even outside.
Will look into securing a tablet for porting a more functional and intuitive interactive interface.

This will prove a very useful tool/route of development, bringing a hands on approach to the usability of the project.


Also looking ahead, this feature will be very useful for using at the end of year showcase, allowing people without a background knowledge in sound design, to have a hands on approach/interaction with the project.
The Beast Knob as featured on mobile.

TouchOSC Update

Got the object issue rectified with the 32bit version of Max 6, and the IP issue sorted out, will see how useful it is with the university wi-fi system. 

The TouchOSC interface and communication application is very impressive, and takes advantage of the Max object blah blah that allows information to be received via a network.

The trial Beast dial.

Tuesday, 11 March 2014

TouchOSC Support

Have been working on a way to get mobile touch control integration into the prototype, but a challenge exists in the external OSC support for Max, which after a couple of hours digging around online, only apparently works in 32-bit (due to compatibility issues with external patches).

OSC 
http://hexler.net/software/touchosc

OSC Max
http://cnmat.berkeley.edu/patch/4059

Tutorial
http://www.youtube.com/watch?v=I9bccwcYQpM

Beast Box Post-Mortem

Currently a higher level affair, mainly aimed at adding context to the collection of objects and flow charts within the Max MSP patches that detail the prototypes process.
This analysis is only currently featured in the parent patch, but will also be present in the associated subpatches that are referenced and integrated through the use of the send and receive objects.
The current overview of the post-mortem in patching mode. 
A close-up of the input analysis window.

Friday, 7 March 2014

7th Supervisor Meeting

Progress report;
  • Segmented presentation and rewire - taking advantage of bpatcher and the send and receive objects that work across patches. The segmentation also makes the prototype a lot more manageable to keep and update.
  • Reverse source implemented, but along with a simple switch, two dials are now displayed, one for the normal sound, and one for the reversed.
  • Record function always present to export sounds through the different stages
  • Segmented audio options and modules
  • Signal chain module implemented to display the flow of the signals prototype
  • Worked on Granular, still a challenge.
  • Major find with the replace message, which rectifies the past problems concerning loading samples, where I previously had the read message.
  • Got a basic limiter implemented in the master effects stage.
  • Started prototype post mortem.
Agreed Action Points;
  • Break-down prototype.
  • Investigate real-time options.
  • Additional features; envelope, filters.
  • Investigate cross synthesis.
  • Investigate any outcomes with using audio of different sample rates.
  • Investigate Pure Data.  

Thursday, 6 March 2014

Master Limiter

Still working on the inclusion of a possible Granular element, but have managed to implement a basic limiter in the Master module; 


Wednesday, 5 March 2014

Replace

Still having difficulty with the granular synthesis module, might not be possible to implement, but will give it another couple of attempts. One very significant positive has came out of revisiting the granular tutorial that I had overlooked...
For the sample import, I for the most time used the read message which gave me trouble concerning the buffers as it placed a cap on the durations of audio files that could be loaded. For example the buffer could only hold what I designated. However with replace, it clears the buffer and allows for any duration to be loaded, from a second sample, to a full music track.
A VERY SIGNIFICANT change. 

Tuesday, 4 March 2014

Reverse Input

Got the reverse feature working for both the Beast output and bypassed output signal. However, not how I initially wanted it to function. Another dial had to be created and implemented that did the same thing, but instead it has a negative integer base;


The two dials however provide added functionality in that they can hold different values independent of each other, and also allow for quick real-time flip flopping between normal and reversed. A tab background also indicates which one is active, in addition to the mode indicator.

Signal Chain

One piece of feedback I received was with the signal routing and how it was unclear what the routing order was. To address this I have made a 'Signal Chain' module which shows the flow and allows for it to be customised as well;

Monday, 3 March 2014

Hiding Options

Running Prototype Build 6 and continuing to debug the current send and returns for the modules along with trying to find a way to reverse the sample with 'Beast' mode enabled. 
One new addition is using the same trick with the bpatcher object I've implemented a really basic options menu that allows for the changing of audio drivers and cpu usage monitoring;

Sunday, 2 March 2014

Debugging

Continuing the debugging of the segmented additions. The segmented layout that takes advantage of the bpatcher object brings a lot of positives. When it comes to repositioning objects concerning design and layout, it separates a sea of objects into a collection of more manageable chunks.  
I have had another attempt of reversing the input sample, this time with some partial success, however it only works only for the bypass sample through multiple instances of the selector~ object. 

Saturday, 1 March 2014

Segmented Proof of Concept

The segmented concept works as a means to offer a variety of different options that can be displayed and hidden at any one time.
It involves referencing other patches, and my first use of the send and return objects to communicate data across patches.




The bpatcher as it appears in its own patch;