Introduced writePortAudioStream() - speakers on... for now, tweaked default sample rate to achieve ~100 levels of resolution per channel @ 124kHz
Added mechanisms to keep track of minimum sample and factor this into HIGH/LOW signal determination. (Having analyzed sample data I observed that LOW ~= -0.25 not 0.00 as I previously thought)
Exposed PortAudioStream Sample rate via initizePortAudioStream(). Further exposed parameter by allowing command line specification, for example: ./BuddyBox-PPM 44100
Initial debug commit of PPM generation code. Not quite working just yet
Discovered output signal inversion by sampling and plotting captured (generated) signal. Reversed output HIGH/LOW polarity.
Substancial renaming/restructuring to better accommodate the expanded input/output role of BuddyBox. Normalized error messages. Normalized some output functionality.
Separated input and output channelBuffers (input is no longer automatically piped to output. This allows for greater flexibility hybrid use scenario where input comes from a transmitter and a snapshot is taken / parts of the output are augmented in an event driven manner. The output will this hold the last instructions until they are explicitly changed.
Broke down writeBuddyBoxOutputChannelBufferIntoBuffer() monolith into smaller functions. WIP
Mid-Refactor commit.
Further refactoring in the hope of DRY. Still to implement writeBuddyBoxSignalsToBufferOrOverflowBufferWithComparatorOffset() for writeBuddyBoxOutputChannelBufferIntoBufferSynchro()
Refactor!
Added float value channel output setter "setBuddyBoxOutputChannelDuration()". Takes a value from 0.0f MIN to 1.0f MAX.
Removed erroneous "getBuddyBoxInputChannel()" from BuddyBox. Created inputChannelValues array for holding real-time received input. Removed output logic from BuddyBox (this now simply populates inputChannelValues, meaning badPacket's cannot pollute input. Moved display logic to main. (still chasing output missing channel bug).
Added missing synchro packet separator.
Fixed integer overflow display issue on inputValues