Discussion
From Buzztrax
Here we would discuss anything about the implementation. If you are designing something, don't understand something or would do something different than the current code does it, feel free to start a discussion below.
Contents |
Audio core
- multi channel audio - mono, stereo, quadro and more
- format negotiation - how to select the audio format on sub-chains
- buffer pools - reusable bufferpools
- multi i/o elements - how to nicely handle elements with multiple in- and/or outputs
- gain handling - changing volumes
- machine states - mute, solo, bypass
- gst-controller queues - how to update the control change data from pattern changes
- song pipeline state - allow live song changes while not playing
- cpu usage - show cpu consumtion
- audio analyzer - tap into wires for audio signal anaysis
- song rendering - recording songs in various formats
- bt-bin - a gstreamer bin element + a typefinder, so that buzztard songs can be played in playbin based applications
User interface
- custom cell renderer - customizing GtkTreeView display
- song sequence editing - analysis of buzz features
- menus and toolbars - balancing feature for toolbars vs. menus
- machine settings layout information - generate a good layout from gobject-introspection data
- sequence and pattern widget - requirements for sequence and pattern editing
- splitting and tabbing interface - how to handle multiple views from the users point of view
- undo, redo - safe editing
- cut, copy, paste - editing and clipboard handling
- user help - online help for app and machines
- ui state persistence - remember and restore the ui state
- interaction controller - (midi/joystick/keyboard) mapping to machine properties
- playback controller - (midi/upnp/lirc) for remote playback control
- keyboard shortcuts - make important stuff available through the keyboard
- Icon Design - ideas about icons
- Sample import - get sounds from various online services
- Foreign project generation - when recoding to multiple single tracks, generate a project file
- Look improvements - improve the visual appearance
- Song metadata - extra info saved with songs and recordings
GStreamer
- dynamic parameters - requirements for dynamic parameter api
- polyphonic elements - how to handle polyphonic elements
- audio base classes - better code reuse for audio elements
- song tempo interface - abstraction and handling of song tempo
- preset handling interface - persistence for parameter sets
- extra data for GObject Params - attach extra data to parameter
- Plugin docs - how to document plugins and elements
- Plugin design - what additional plugins (gstreamer elements are needed)
- Plugin profiling - how to find out about plugin cpu usage
- Latency - how to determine signal latency
- dbus ipc for gst - make gst app cooperate
- gst log view - gstreamer debug log browser
- plugin wrappers - wrap alien apis like ladspa, vst, ...
Miscellaneous
- buzzmachineloader - internals, architecture and compatibility list
- date functions - date serialisation
- test machines - uninstalled gstreamer elements for tests
- gobject serialisation - automatically loading/saving songs by introspection
- utility elements - check required plugins
- archive song format - how to handle song.xml + binaries archives
Build System
- Source template generator - create new boilerplate sources
- splint - static source code checks
- DocBuild - issues with documentation build
- Environment Variables - things to think about when exporting shell variables



