Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

[795e5e]: TODO Maximize Restore History

Download this file

TODO    167 lines (104 with data), 5.2 kB

o move label with mouse (drag&drop)

o simplify loading/unloading of plugins

o license change to GPL v3

o new import/export plugin using ffmpeg/libavcodec

o more intelligent clipping of position widget

o support for visualization plugins (rev 2498)
  - new functions
    * allow drag&drop to reorder signal views
    * resizing of signal views per size grip
    * allow plugins to add and remove own signal views

  - enhanced functions (maybe next release)
    * store order and settings of signal views in embedded metadata
    * store order and settings of signal views in a separate file
    * provide global database for colors (for signal, labels, etc.)
    * reordering of tracks according to order of the views
    * context sensitive toolbar/menu entries when clicking to a view
    * navigating between views per <Tab> key

o show sonagram as "signal view" below each track or below the whole signal

o support for multi selection

o support for recording via PULSE audio

o MP3 export (maybe via calling lame/mpg123/mencoder as an external process)

o debug aid: write all actions to a logfile

o debug aid: new plugin for adding a new track with test/debug info:
  - stripe number
  - hull curve
  - test pattern: sample offset within stripe
  - test pattern: stripe borders
  - generate labels at stripe borders

o spurious valgrind error:
    ==13087== Conditional jump or move depends on uninitialised value(s)
    ==13087==    at 0x40F29EE: Kwave::Mul::multiply() (KwaveMul.cpp:117)

o spurious valgrind error:
    ==13087== Invalid read of size 8
    ==13087==    at 0x4BF10544: QList<QTouchEvent::TouchPoint>::~QList() (qlist.h:716)
    ==13087==    by 0x4C1CD41B: QRasterPaintEngine::drawLines(QLineF const*, int) (qpaintengine_raster_p.h:278)
    ==13087==    by 0x4C1D386A: QRasterPaintEngine::drawRects(QRectF const*, int) (qpaintengine_raster_p.h:272)
    ==13087==    by 0x4C110A63: QPainter::drawImage(QPointF const&, QImage const&) (qpainterpath.h:310)
    ==13087==    by 0x404C4B5: OverViewWidget::calculateBitmap() (qpainter.h:925)
    ==13087==    by 0x404D091: OverViewWidget::WorkerThread::run() (OverViewWidget.cpp:65)

o use xml description for device names in playback/record plugins

o use svg graphics instead of pixmaps

o use LADSPA

o JACK audio support

o automatic defragmentation of stripes

o maybe some effects from soundtouch

o re-activate the "label" menu

o use some xml file for the menu instead of a macro

o support for Spex codec: http://www.speex.org/

o ALSA record/playback: also detect devices configured in the .asoundrc,
  and not only hardware devices

o find a better solution for deadlock when closing the current file while
  a plugin is still running, instead of refusing the request to close

o replace "AF_SAMPFMT_xxx" with enum "SampleFormat::yyy" in WavEncoder.cpp,
  WavDecoder.cpp and PlayBack-OSS.cpp

o more precise handling of the playback pointer
  -> latency handling

o dithering/noise shaping when loading/saving

o auto-detect pause and set markers, for splitting recorded stuff into several
  parts and then save them to disc as separate files

o install a new_handler() for cases in which we run out of memory

o open file dialog: add a preview widget that shows info about the file
  and maybe has "playback/pause/stop" buttons

o fast playback mode, playback with facor 1.5x, 3x, 5x, 7x...
  -> look how noatun does that...

o support for compressed wav files, like those found on www.montypython.net
  -> MPEG 3 is still not supported by libaudiofile

o get Phonon playback support running correctly

o TrackPixmap: implement usage of "extra_samples" for interpolated mode

o fileinfo plugin: auto-generate filename from "track - title"

o use a MenuManager in the plugins (e.g. sonagram)

o optimized cut/paste, at zero-crossing

o new plugin: amplifyclip

o new plugin: pulse train

o document how to do an optimized build, for example:
  CFLAGS="-march=athlon-xp -mcpu=athlon-xp \
  -O4 -Wall -pipe -DQT_CLEAN_NAMESPACE -DQT_NO_COMPAT -DQT_NO_TRANSLATION" \
  CXXFLAGS=${CFLAGS} cmake ...

o speed up MP3 import by blockwise operation

o import/export of labels as meta info in codecs other than wav

o SonagramWindow::toSignal()

o rework of the FFTWidget

o new plugin: additive synthesis

o new plugin: fft, averagefft

o new plugin: distort

o new plugin: channel mixer

o import of multi-channel ASCII files

o use namespace "Kwave" for all Kwave components

o support for KDE's session management

o fix bug in Fx->Periodic Silence (segmentation fault)

o macro recorder

o use MemoryManager for undo actions

o user selectable color scheme
  (feature requested by John David Thompson, 2006-12-20)

o port from id3lib to taglib
  => rejected, currently no alternative available
  => taglib currently works only on files, unsuitable API
     + inaccurate file length detection (units of 1 sec)
  => libid3tag is nearly as old, undocumented and would
      produce a lot of work

o switch to use float as sample_t (requires much work...)
  -> version 0.9

o about plugin: auto-scroll for contents

o re-run cmake automatically when VERSION file has changed

### EOF ###