TODO
-------------
* fix maintainer-clean: removes icons ?!
* XV + ffmpeg pixel aspect ratio.
* complete contrib/tsmm and perform tests.
* mq:
- FIX multiple remote clients one xjadeo -> who gets the replies ?
- multi drop queues and mq_notify()
- multiple instances - named message queues + list of avail queues.
- queue length and timeouts..
* ratain aspect ratio - letterbox option for imlib (+ SDL? )
- cache imlib2 letterbox border
- revisit window hinting + aspect ratio resize
* qjadeo
- nicely parse xjinfo output.
- allow to specify offset + "seek to" either as frame-integer or SMPTE string.
* XV/X11 brightness/contrast control
- LASH save
- remote commands
- restore prev/system settings on exit.
* opt. cache cont. images from last keyframe. (backwards play)
* ffmpeg packet queues (#)
* testsuite for quality assurance and benchmarks.
* remote commands to query mouse, fullscreen and on_top mode
* map key bindings (cfg file -> to remote commands)
and print help OSD
-make key events generate remote-replies (notify GUI of changes)
* xjadeorc man page
* bring SDL up to scratch - should behave as X11 + SDL-SWSURFACE
* decode DnD UTF8 etc.
MIDI:
- alsamidi - catch port re-assignments and remember em ?
don't clash with check with lash+qjackctl !
TODO - next major version:
------------------------------------------------
* exact sync
decode one frame ahead and use
Xv/Xext -> VSYNC raster interrupt to trigger double buffer flip
* option: don't poll for jack-time but register as jack-audio client
-> jack will call xjadeo in a RT callback.
* option: modularize time-sync + video-source
(send time information via message queues)
* dig into ffmpeg.
* vacuum the code and clean the bath tub.
* translations and internationalization ?!
TODO - legacy and low priority issues / ideas
---------------------------------------------
- read image sequences (eg. sgi) and playlists (vob)
DISPLAY:
- SDL RGB SWSURFACE (new videomode)
- speed up YUV trancoding -
have ffmpeg decode directly to shared-mem...
- remember and set window position when (re-)creating window.
- put xjadeo-session name in window title ?
add some info and markups to the title (on top, offset, smpte)
- freetype font config. outline font? color, xposition, size,..
MIDI:
- portmidi: error handling (portmidi aborts on error)
- jack midi
REMOTE:
- keyboard events. (-> generate remote msgs)
- notify key event ?? (have client handle keystrokes on the xjadeo window)
internal (default) key press handler if no-bidir remote ctrl.
map key event to command
OTHER:
- check cpu load - dynamically increase delay if above threshold.