GSoCIdeas

From Toplap
Revision as of 09:55, 11 March 2009 by Gabor (talk | contribs) (→‎Fluxus)
Jump to navigation Jump to search

SuperCollider

ChucK

Netclock

  • Implementing network clock sharing libraries
  • Contributing ports to Mac OS X and Windows to the PTPd project

Fluxus

  • See: http://savannah.nongnu.org/task/?group=fluxus
  • UI improvement:
    • features:
      • positioning the text cursor with a mouse
      • traditional lisp autoindent / reindent (modelled after, and probably reusing indentation code of DrScheme)
      • autocompletion (function names from current namespace, verbatim text from current script)
      • API help as you type (at least parameter names/amount of a function, optional abstract of the reference guide)
      • copy and paste with other applications
      • split screen estate between the editor and REPL shell (so the error messages / interaction with interpreter is available in context)
    • implementation:
      • consider reusing functionality of the existing editor / text widgets, without obscuring the visuals. One possible approach is to factor out the GLUT and use a more feature rich toolkit (artm-qt branch is long way along this route already). Once toolkits are switched, a new text widget may be derived from the toolkit's, inheriting the editing functionality, but overriding the rendering to be visuals friendly (e.g. making the renderer to fill the widget background, allow text transparency and outlines etc).
    • restrictions:
      • recording / playing back user interaction should remain intact and extended to support any new features of the UI (e.g. splitting the screen to open the REPL sub-window, resizing editor window, pasting from the outside world etc)
    • skills: c++, GUI programming, custom widgets implementation, OpenGL
    • difficulty: moderate to hard
  • improvement of audio analysis functions:
    • improve the fft of fluxus by making the number of harmonic groups that (gh) uses optional
    • implement new fluxus-audio algorithms like:
      • beat detection
      • bpm detection
      • pitch detection
    • skills: c++, audio algorithms, jack
    • difficulty: moderate to hard
  • Windows port
    • port Fluxus and all of its modules to Windows
    • difficulty: moderate
    • skills: c++, GLUT, Cygwin or mingw, Scons
  • Bugfixes
    • Various minor bugs and issues are making the life of new users difficult. We could very much use help fixing these. Have a look at the Bugs and Tasks list at Savannah and address those which we currently aren't able to progress. This tasks would involve fixing the existing code. You will gain a great overview of all our code, and the libraries used by Fluxus including the Open Dynamics Engine, FFTW, liblo, glew, libsndfile.
    • difficulty: moderate
    • skills: c++, scheme, comfortable with visiting many different pieces of code in a large project
  • New modules
    • Develop new modules/bindings in order to extend the capabilities of Fluxus. The implemented modules are open for discussion, but we would encourage some of the following: OpenCV (computer vision), ARtoolkit (augmented reality), Arduino (electronics prototyping), TUIO (multitouch tables).
    • difficulty: moderate
    • skills: c++, scheme, PLT Scheme C API and/or Foreign Interface

Others

  • Implementing new live coding language