JackTrip

Todo List

Member AudioInterface::appendProcessPlugin (ProcessPlugin *plugin)
  check that channels in ProcessPlugins are less or same that jack channels
Member AudioInterface::callback (QVarLengthArray< sample_t *> &in_buffer, QVarLengthArray< sample_t *> &out_buffer, unsigned int n_frames)
  Implement for more than one process plugin, now it just works propertely with one. do it chaining outputs to inputs in the buffers. May need a tempo buffer
Class DataProtocol

  This Class should contain definition of jacktrip header and basic funcionality to obtain local machine IPs and maybe functions to manipulate IPs. Redundancy and forward error correction should be implemented on each Transport protocol, cause they depend on the protocol itself

  The transport protocol itself has to be implemented subclassing this class, i.e., using a TCP or UDP protocol.

Member DataProtocol::mJackTrip
  check a better way to access the header from the subclasses
Member DataProtocol::setPeerAddress (const char *peerHostOrIP)=0
  implement here instead of in the subclass UDP
Member DataProtocol::setPeerPort (int port)=0
  implement here instead of in the subclass UDP
Member DefaultHeader::checkPeerSettings (int8_t *full_packet)
  Check number of channels and other parameters
Member gVersion
  Add this namespace
Class JackAudioInterface

  implement srate_callback

  automatically starts jack with buffer and sample rate settings specified by the user

Member JackTrip::createHeader (const DataProtocol::packetHeaderTypeT headertype)
  Document all these functions
Member JackTrip::setupAudio ()
  FIX THIS REPETITION OF CODE
Member JackTrip::setupRingBuffers ()
  Make all this operations cleaner
Member PacketHeader::fillHeaderCommonFromAudio ()=0
  Implement this using a JackTrip Method (Mediator) member instead of the reference to JackAudio
Member RingBuffer::insertSlotNonBlocking (const int8_t *ptrToSlot)
  It may be better here to insert the slot anyways, instead of not writing anything
Member Settings::parseInput (int argc, char **argv)
  Specify mandatory arguments
Member Settings::startJackTrip ()
  Change this, just here to test
Member UdpDataProtocol::run ()
  fix this to avoid memory leaks
Member UdpMasterListener::releaseThread (int id)
  Check if we really need to return an argument here
Member UdpMasterListener::run ()
  temp default to 1 channel