NOTE: 

This list is outdated and no longer updated. I keep it for my personal referrence.

Please take a look at the CHANGELOG - file.

ToDo list:
o = Open
+ = solved / implemented


-	Create User Guide for Transition menus.
-	ResizeObjects -> howto leave the resize mode ?
-	Create MovieBackground templates from the lake ....	
-	Redesign dvd-slideshow interface (in Qt 4.0)
-	Replace Help - dialog in AnimationDialog with MEssageBox::html ...
-	Dynamically explain each property in the animation - dialog when selected.
-	Set up paths in (Tools->Setup->Paths) are entered in qdvdauthor.ini first.
-	After second call of Setup, already existing paths are going lost.
-	Add custom Files(s)
-	Add directory.
+	Added image preview to file open dialog for images.
-	Implemented undo/redo for most ativities.
-	Implemented Cut'N Paste for all objects.
-	Implemented multiple selections for objects.
-	Fixed Slideshow ImagePreview - class.
-	Included transcoding of audio input files.
-	Add collection

-	Added support for transparency of buttons.
-	Button objects are now highlighted / selected if the mouse is above the button.
-	Implemented TitlesetStructureToolBar.
-	Add gstreamer interface ?
-	Add mlt interface ?
-	Add VLCWidget/VLCInfo/QVLCWidget
-	Add description for QVLCWidget/MediaInterface
-	-> Maybe time to link dynamically during runtime ?

-	Odities wth rendering :
	- When re-rendering a menu, the previous rendered images are used, thus the rocket appears once, twice, three times, etc when animating.
	o zoom is not used for ImageObjects.
	- after rect.x1, rect.width has to be set.
	o missing pos, which moves the object and takes the objects center.

-	AnimationMenu : Possible scenarios :
	- All movies / animation have the same length as the menu. Good, No action required.
	- The menu is longer then the movieObject.
		-> Cut MovieObject off
		-> Accelerate or decelerate the MovieObject to fit length.
		-> Cut MenuLength
		-> Fade in / fade out MovieObject
		-> Loop MovieObject
	- The MovieObject is longer than the menu.
		-> fit menu to MovieObject length
		-> MovieBackground: accelerate / decelerate background.
		-> Loop MovieBackground
		-> MovieBackground: Fade in / fade out
-	created a new proj from template i'd just created and stuck up locally. (created, saved templ, then closed q and started the new proj).  when i tried to build it, it tells me that the "dvd directory" isn't defined. 2 problems here.  
	1) wtf is it. (turns out to be the dvd build dir), and
	2) why isn't it defined earlier?

opening /tmp/oah1/Are_You_Being_Served_-_Christmas_Crackers/Are_You_Being_Served_-_Christmas_Crackers.mpeg2: No such file or directory
...
the movie has no mpeg>>>2<<< in it's name!  got the 2 from somewhere,
eh?
to do this...
pulled up one of my projects that i use for templates from before i got
templates figured out.  i added 3 movies.  dragged em to the main
window. 

-	ImageObject - > Edit blows up the image to original size.
-	Replace ImagePreview with QLabel ... see DialogShadow ...

-	MovieDialog -> StartSlider -> set start of 'Play' to start.
-	ButtonObject -> ContextMenus -> add [Edit source ...]
-	ButtonObject -> ContextMenus -> change to  [Edit button ...]
-	I found a small bug in the Template import dialog, which will not show the thumbnails of the templates the first time you connect to the server.
	-	Implement handling of snapshots in the template dialog. I.e. don't use the first frame.
-	Fix configurator and check returns from system () ...
-	TextObjects do not display correctly when semi-transparent and rotated.
-	StructureToolbar, when seleting and object, visibly select it also in the DVDMenu
-	Implement TYPE_REFLECTION for ShadowObjects ( wie in 3D unter einem Objekt, flipped 180deg und sheared )
-	Implement TYPE_MIRROR for ShadowObjects( unter dem Object mit der gleichen textur (copy of ) )
-	Implement TYPE_OVERLAY for ShadowObjects ( Durchsichtiger Rahmen [ think Bilder rahmen ] )


This is the leftover from the 0.1.3 - release.
Version 0.1.3 Beta, Not yet released.
-	Implement FandeIn/FadeOut in the MovieDialog for MovieObjects. Use script and prepend to the animation.dat file. This way the user can still do its thing and might overwrite if he wishes to with his own animation script.
-	Menu idea : have a movieLine vertically and have the movies start on top, scroll down and after reaching centerHeight, have them getting bigger and more transparent until disappeared, have the 'empty', black movieLine continuing running.
-	MenuTemplate BUGFIX : implement next / prev / Main Menu - buttons
transcode -x mplayer,null -y mpeg2enc,null -V -w 1800 -F 3,"-E -10 -q 6 -R 0 -K tmpgenc"  -Z 200x132 -o output -i ./t.mpg 
-	BUGFIX: If a image can not be rendered, then the last image from the previous object is taken.
	- lines 211 212 commented out.

	- Offer possibility to open files through a list of dropzones rather then dragNDrop. In case it is an Animated thingy that'll help.
	- Accept dragged Movie files, create preview.	

-	wrap up the log class. 
	- Implement storing to log-file
	- Implement tab in setup dialog, to handle settings for log.
-	BUGFIX: WHEN CLOSING QDVDAUTHOR AND BEEING ASKED IF INI FILE SHOULD BE SAVED, IT DOES IT ANYWAYS
-	BUGFIX: Put printf's in MenuObject constructor/destructor to see why it is created / deleted when moving objects around.
-	BUGFIX: AutoChapters does not work correctly if start is set to anything but 0;
-	BUGFIX: 'Edit timeline' for Menus crashes qdvdauthor.
-	CRASH-BUG : QPainter::begin: Cannot paint null pixmap - QPainter::setPen: Will be reset by begin() - Segmentation fault| that was using movie on the bg
-	CRASH-BUG : Edit Chapters in the MovieDialog crashes QDVDAuthor.
-	BUGFIX : After renaming the project button thumbnails were lost, because their path contained still the reference to the old project in the xml file. 
-	BUGFIX: The ButtonDialog->Normal Layer does not store changes to the object (MovieObject).
-	BUGFIX: Implemented isPlaying / isPaused in KXineWidget.
-	BUGFIX: the slideshow creation is almost prefect : it stops only at the end with msg "cleanup" in the logfile (the slideshow is available in a file suffixed by mpg.vob).
-	AnimationDialog: Offer library type script snipplets (E.g. Fadein/fadeout etc.)
-	MJPeg Intro http://software.newsforge.com/article.pl?sid=04/11/04/1458235&tid=75

Transcoding
o	Implement of basic transcoding interface.
o	Implement basic transcode CommandBlock for video conversion to DVD conform material.
o	Implement adjust variables according to conversion tool -> E.G. --export_asr +RATIO+ where ratio needs to get converted from 4:3 to 2 for transcode and 
+	Added audio files conversion logic to mp2 for DVD videos.
o	Added video files conversion logic from any-format to DVD-MPEG2.
+	Added basic automatic sanity checks for the source files.
+	SourceToolbar needs some loving (add file format and conversion algo if neccesary and more ...)
-	Add functionality to the source tabs Video, and Audio.
o	Change DialogCommandEditor to have different vars for Transcoding tab.
o	Modify saveInitFile, to handle the new functionality.
-	Transcoding set-up :
-	 What to do when ss = endpos = 0. Filter this one out ...
	- 1'st option : DEFAULT : Generate an optimized transcoding block 
		(excluding parameters already inherent to source such a size etc.)
o	- 2'nd option : Generate a full set with transcode, where all parameters are used.
	- 3'rd option : Generate a optimized mencoder set
o	- 4'th option : Generate a full set with mencoder
	When user presses on CreateDVD then pop up progress window (table of progress bars) with all currently running background tasks which are converting stuff.
	- Finish those up before handling the rest through the CommandQueueDialog.
-	Implement the waiting for current running tasks as a timer driven task rather then blocking the foreground task.
o	  - Implement transcode properties into QDVDAuthor structures and init file.
o	  - Implement transcode execute block in CommandQueueDialog.
	  - Implement different color handling pending on 
	    > need to transcode
	    > transcoding scheduled
	    > transcoding in progress
	    > No transcoding neccesary
	BUGFIX: Also, when creating slide-shows, I found I needed to change dvd-slideshow to have -S 420mpeg2 on the ppmtoy4m command line, or mpeg2enc would bark about problems in the headers and die with: **ERROR: [mpeg2enc] Could not read YUV4MPEG2 header: stream requires unsupported features!

-	Template with masks, and OpenGL overlays. This way a 3D scene with moving/rotating etc objects can be created.
	- If possible to render frames / videos in a X-buffer, then we can use as skin.
-	Template Ideas (A la I-DVD)
	- Overtaking cars on a Highway
	- A skyscraper with windows (lights on / off )
	- A Ancient castllike staircase with image frames.
	- A passing train.
	- A trafic light (swinging in the wind ?)


 
>	Create Wedding Template - Pink / Platinum / black
	- autosave still complains about saving of slideshow ... Why ?
	- QSlideshow : Add backgroundColor instead of backgroud image.
	- offer temlpate download from web.
	- Note startFrame / stopFrame is  NOT part of the animation !!! It ought to be a property.

-	Submit dvdauthor patches.
-> Include #define in source for SourceCodeReleaseDate

////////////////////////////////////////////////////////////////////////
// GENERAL outlook.
////////////////////////////////////////////////////////////////////////>
Here a little bit about the near future of  QDVDAuthor:
-   I want to create some more templates and re-work the dvdauthor.xml creation. I know that there are issues with a lot of set top DVD player.
o   Then I want to implement a interface to create subtitles.
-   Re-work the slideshow creation and implement a plug-in interface for image transitions.
o   Give the StructureTree  some context menus. This will be very helpfull for users.
-   Improving the Transcode interface and make it auto detect which files have to be transcoded.
-   Implement sound file transcoding.
-   Movie button/background support with xine and a full VLC integration. (Yep this french video player are is cool).
+   Also something very simple is a feature in the DVD spec to add computer files.
-   Continue working on the UndoFunctionality.
-   Implement Cut/Copy/Past
-   Write another executable, which renders the menus/Images through the command line and an XML file. This will bring QDVDAuthor back to the point that all commands can be executed one by one through the command line.
-   The in the long run I want to port QDVDAuthor to Qt 4.0
-   I want to implement OpenGL support to speed up rendering and to allow to create 3D templates (like the baby template in iDVD)

Here are some ideas for templates I had.
    - Overtaking cars on a Highway ( dropZones in the windows of the cars )
    - A skyscraper with windows (lights on / off )
    - A Ancient castllike staircase with image frames.
    - A passing train. 
    - A trafic light (swinging in the wind ?)
    - Have a movieLine vertically and have the movies start on top, scroll down and after reaching centerHeight, have them getting bigger and more transparent until disappeared, have the 'empty', black movieLine continuing running.
////////////////////////////////////////////////////////////////////////
// GENERAL outlook.
////////////////////////////////////////////////////////////////////////
o	- Handle SourceFileInfo->qsPreCommand / SourceFileInfo->qsPostCommand
-	- Handle DVDMenu->Interface->listIntroVobs / DVDMenu->Interface->listExtroVobs.
-	-> Implement GUI
o	- Handle SourceFileEntry->iTitleset / SourceFileInfo->iTitleset
-	-> Implement GUI

-	Implement the Titleset-structure-view.
-       Build structure ...
-	Implement automatic Transcoding for (at least) kinos DV imports.
-	Offer option to move menu / title to defined Titleset
-	Implement advanced GUI option, which shows menus by titleset.
	-> Main tab view should be ordered by titleset. Each titleset should hold menus/sub-menus.

-	DV - camera input:
	- Work on QDVDAuthorInit::resolveConvert to check for properties set (E.g. size. If size is same as current size, then check if command has --resize - option and exclude it.)
	-> implement "Keep xxx" in QDVDAuthorInit ...
	-> handle negative values in TranscodeInterface to indicate Keep ...
		-> DialogMovie.cpp
		-> Need video props here ... might be a problem.
		-> If user wants to transcode anyways form 720x480 to 720x480 ???
		-> special handling form MEncoder, transcode and any other transcoding tool requires programming ... bad but Okay for now.
	- AutoTranscode input files and change color on the SourceFileToolbar
	- implement semaphore/mutex type thread locking for preview creation.
	- Implement Template download dialog, to get and innstall templates through QDVDAuthor.
-	Workflow: When importing DVs then we should automatically transcode those pesky files into the propper format. (Transcoding enabled, format pending on the input size 720x480=NTSC etc)
-	Try transcoding with small DV file first ...

+	Add VLC support	- Postponed due to missing libvlc.so 
o	-> Install working VLC.
		- Get test_vlc to compile. 
	-> Implement QVLCWidget
+	-> implement VLCWidget
	-> implement VLCInfo


-	After dropping a movie to the main menu a thumbnail button is created automatically from the first movie's picture. It would be better to change this picture with a slider to any arbitrary picture from the added clip at any time in edit menu of the button later 
-	Some functionality to restrict the drag&drop option for elements in menu to vertical/horizontal movements for precise alighment of buttons, e.g. pressing Alt/Ctr button simultaneously with mouse movement (Maybe snap to grid)
-	There are objects in the left object panel for each button and text element. It should be easier to make their nodes clickable to edit elements as in the main menu window. (Structure toolbar)
-	Status of current size of the target dvd project 
o	If transcoding is implemented in future it should not be very restrictive regarding resolution, it should be optional. It means with this version i can add a recording with resolution 544x576 from tv card directly to make a non-standard dvd without transcoding to standard dvd resolution. Consequently, my DVD can contain material of about 4 hours with this resolution. In others programs like Nero or Sonic MyDVD it is not possible, they must transcode it first and only about 2 hours material would fit on the dvd.  
-	I added mp3 for the main menu, but my standalone dvd player couldnt play the sound, because it should be as in standard AC3 or MPEG2. Perhaps a warning or optional transcoding. 

-	Cool effect ID: output over generating menu in lower 1/3'rd through a slightly highlighted(whitened) but transparent field.
-	For the Toolbars small buttons, is it possible to have it in two lines (but keep one toolbar) ? This saves realestate.
-	Include background generator through using the screensaver API. This would allow to generate nice effects.
-	Implement feature to delete singel directories from the temp Paths through usage of the table object.
UndoRedo
-	Continue undo - functionality set.
+	Undo functionality for DVDMenu - class
-	- add XYZ-Object
-	Implement cut / copy / paste in MainMenuBar (setEnables (true/false) according to selected object.
-	DialogUndoStack : Implement functionality.
-	MenuObjects  : add cut / copy / paste
BUGS
-	try to generate a slideshow it crash with this message: SourceToolBar::slotAddSlideshow SourceToolBar::slotAddSlideshow <MySlideshow> Segmentation fault 
-	BackgroundMovie + MovieButtons, background does not render ...
MISC
o	Implement ImageMenu duration, for sound background. Functionality is not in ExecuteDialog.
-	Add MouseOver effect for Buttons
-	Implement Transparency dialog for the colors.
-	Initial start-up give messages for utils missing. E.g.
	*	SoX (from sox.sf.net) not found, needed for dvd-slideshow. Note: qdvdauthor can still be used
	*	convert (from ImageMagick.sf.net) not found, needed for dvd-slideshow. Note: qdvdauthor can still be used
	*	pngtopnm (from netpbm.sf.net) not found, needed for dvd-slideshow. Note: qdvdauthor can still be used
-	if not all tools for dvd-slideshow are present then disable the slideshow-button instead return a MSGBox which lists all needed utilities ...
-	Improve on the StartMenuRender - class, currently requires mencoder and mplayer AND they MUST be in the PATH !!!
/* How to get a screenshot of a video, using transcode :
transcode -i DolbyDigitalRain.vob -V -y jpg -F d -c 100-103 --export_fps 29.97 --export_asr 2 -E 48000 -b 224 -o test
transcode -i board.avi -c 110-111 -J smartdeinter -y jpg -F 100 -o board
puts frame No. 110 from DV board.avi into board0000.jpg
from transcode 0.6.12 www.transcoding.org


RELEASE ... RELEASE ... RELEASE ...
-	The right-click on any object opens the menu instantly when the right mouse button has been pressed down. So I have to choose the menu with the mouse button pressed down. When I right-click the background image, I can release the mouse button and then select the menu item. That should be consistent, and match the behavior people know (press+release right button to show the menu)
-	Selecting an object in the Structure tree should highlight it in the "preview" area.
-	Shortcuts for the menu entries. E.g. I would assign F2 to rename the Menu.
-	Compile for Win32 through gcc
	- testing through wine.
-	Implement QRender - application
	- Ability to generate the MovieMenu external
	- With or without Progress GUI.
-	Dropping the whole SourceFileEntry, Create LayoutWizard - class + GUI
-	Implement ObjectCollection.
-	When dropping a SourceFileEntry, then leave SourceFileInfo = NULL, get img from listFileInfos[]
	- Create N equal sized image/movie buttons according to pre-selected layouts
	- Background image is first frame of first video ...
	- Layout engine is plugin - based. Plugins are xml files which describe the layout.
	- If more videos then N, then create multiple sub-menus (inclusive Buttons to go to next/prev menu)
	- Insert the Previews in ONE ObjectCollection.
+	Output log file for all conversion / generation tasks under temp to trace errors ...
-	Add recover feature for interrupted tasks such as slideshow generation, file conversation, menu creation etc  ...

-	Offer option, to shrink/stretch, loop last image, loop full clip for MovieObjects
-	Offer option to inlcude sound track from clip in menu.
	- Add posibility to start one movie after the other (I.e. the first movie button, then the second etc.) in the DVDMenu.
-	Check why start-up is still so slow ...
-	How to handle same Movie with different offset/duration for a button ?
-	Ensure that MovieObjects and ButtonObjects are named uniquely as per Menu.
	-> E.g. two times the same movie but different chapters ...
	- if we have audio (from the background movie), then remove the empty sound file creation part
	- if we have audio (from the clips), then add up to 7 channels to the menu.
o	- When restarting the movie menus, check for status file and do only what needs to be done.
	- Store parameter file in this path which describes the filter applied (and maybe the current frame of N frames)
o	  -> Also store status (E.g. converting vs done etc.).
+	  This way we can use multiple background tasks to generate the menus, recover crashed sessions and check if a change is necessary.
	- Add option to re-render DVDMenu.
XINE-LIBS
-	Crashes when opening the MovieObjectDialog more then once (xine-libs) ...
-	QPlayer will exit with "Segmentation fault" with xine-libs
o	QPlayer crashes when returning from MovieDialog or re-Opening MovieDialog.
o	Preview does not work with MPlayer Engine in 'Q' DVD-Author.
MPLAYER
+	Why do we not get a screenshot of creta.mpg for the MPlayerEngine ?
	- No solution.

-	No longer possible to specify the qsMovieBackground file. If movie, then it'll be splitted into images and put back together. Good, bad ?
-	Modify Button Frame of Homepage to reflect the StructureToolBar or the SourceToolBar.

-	Add a status tab behind the StructureToolBar. Status will keep (text colored) record of -behind the scenes- threads activity, success, failure etc.
-	http://www.exit1.org/dvdrip/ DVD::rip - perl GUI interface.
-	Some systems do not have /dev/stdout ... what to do ???
-	jumppad seems to give some problems, while manually generating the entries seems to always work.
-	Add option to add comments in dvdauthor.xml - file, (http://www.wershofen.de/downloads/dvdauthor.xml)
-	Implement feature to be able to add any XML - tag to the dvdauthor - file. (DropDown Menu / Structure View)
-	Make StructureView intui-active
-	ColorScheme of the All-Tab. Change color pending connection to a menu. I.e. if the movie is only used as a button then we do not need to convert the format as the movie is incorporated into the menu.
o	DialogGeometry does not work for image re-scaling ...
-	Add [Reset] and [Geometry] to ImageDialog.
- 	SourceToolBar::allSources : Implement background task to serve tiny buttons.
-	SourceToolBar::allSources : How to handle slideshow's ???

-	Plugin support for Video filter
	- Use OpenGL interface to overlay. This way spinning movies, transparency etc. are possible etc.
	- Same interface can be used to generate Subtitles.
	- Maybe enable foreign plugin support.
-	Plugin support for MenuWizard. XML based simple file structure powerfull interface.

-	Add interactive resize of MenuObject's.
-	Implement "Add XML tag" in m_pMenuBar->DVDMenu (action, pre/post etc)
-	DVDMenu::setMask -> Missing Dialog to choose the transparent color from a loaded Mask.
-	Application does not terminate after closing on SuSE 9.1.
-	Improve File open dialog.

-	Add drop down menus to the StructureTreeWidget (I.e. delete, edit etc).
-	Inclusion of QPlayer widget directly into 'Q' DVD-Author to speed up previewing movies.
-	Improvement of the preview handling in the MovieDialog.

-	ImagePreview for the SlideshowDialog is too slow.
-	Add [Reset] and [Geometry] to ImageDialog.
-	Rotation of images in the SlideshowDialog is not yet passed through to the final movie.
-	CSlideDialog::slotOk() : Check why callback is not called when signal emmitesd to QDVDAuthor application ...
-	QSlideshow can't move images around ...
-	Slideshow generation is messed up ... Use dvd-slideshow 0.6.0 instead of 0.5.4.
-	After a slideshow has finished, the SourceFileEntry is no longer updated to reflect the availability of the mpeg.
-	The resize dialog is too slow.

-	Add functionality to manually edit the generated xml - files.
-	Add functionality to the audio tab in the Open Movie file dialog.
-	Enhance Drag'n Drop support to also accept Sound/Movie files.

/* How to get a screenshot of a video, using transcode :
transcode -i DolbyDigitalRain.vob -V -y jpg -F d -c 100-103 --export_fps 29.97 --export_asr 2 -E 48000 -b 224 -o test
transcode -i board.avi -c 110-111 -J smartdeinter -y jpg -F 100 -o board
puts frame No. 110 from DV board.avi into board0000.jpg
from transcode 0.6.12 www.transcoding.org

ogg to mp2 > oggdec test.ogg -o - | mp2enc -o test2.mp2
mp3 to mp2 > lame --decode blues.mp3 - | mp2enc -o blues.mp2
           > mplayer mymusicfile.mp3 -vo null -ao pcm -aofile menu_audio.pcm ; mp2enc -r 48000 -o menu_audio.mpa < menu_audio.pcm

// Here is what I found to convert a video from any format into mpeg2 format on the web
First you can use mplayer to convert the video in the AVI to mpeg2
stream, for a (relatively) low quality 1-pass test, try

mencoder yoursource.avi -nosound -ovc lavc -lavcopts
vcodec=mpeg2video:keyint=132:vbitrate=1000:autoaspect:vrc_buf_size=1000:
vrc_minrate=1000:vrc_maxrate=2500:vpsize=1000 -of mpeg -o
yoursource.mpeg
mplayer yoursource.mpeg -dumpvideo -dumpfile yoursource.m2v

To make SVCD's you want to keep, you should turn on a bunch of other
lavc options, such as
mbd=2:precmp=2:cmp=2:subcmp=2:trell:cbp:tcplx_mask=0.1:scplx_mask=0.1
and ofcourse do 2 pass, and maybe increase vbitrate and vrc_maxrate

Get the audio:
mplayer yoursource.avi -dumpaudio -dumpfile audio.dump

Depending on the type of the audio, you might have to convert it, or you
can throw it as is into mplex from mjpegtools, which you use  to mux the
audio and video streams together to make a (S)VCD.

mplex -f5 -V -b230 -o movie.mpg yoursource.m2v audio.dump

Then with any luck movie.mpg should be a SVCD movie... I think... I
build DVD's (or at least that's what I'm trying to do) so I don't know.


> Here a link to avidemux, a gtk2 GUI to convert to Mpeg2
http://fixounet.free.fr/avidemux/

> Here a link to IWantVCD
http://roi.halted.net/
> Video Effects plugins : http://effectv.sourceforge.net/ (using SMIL like kdenlife)
> http://www.pitivi.org/ - Non-Linear VideoEditor in Gtk2++. I like the time-line.

// More on multichannel audio can be found under : http://www.dahnielson.com/primer.txt
// -- pcm2aiff inFile -c5 -r1
// -- mctoolame -m s -n d -L 6channelAiffFile.aiff output.m2v

// Trial and error : arecord -S -M -t 1 -w /dev/stdout | mp2enc -r 48000 -o \"%1.mp2\"

*/
http://www.videohelp.com/~gfd/Motionmenu_eng.html to links ...
http://www.stevengotz.com/video.htm
http://www.videohelp.com/~gfd/GUI_DVDauthor_eng_07.htm
-> Check out Slide Show Movie Maker (http://www.joern-thiemann.de/subpage/index.html?/tools/ssmm/)



-	Check out cdrecord-prodvd for dao.
o	Create CInstall - class, which checks for all needed tools.
	- If the prefered tool is not found on the users machine check if this can be substituted by another tool.
	- Notify user about missing features if tool is not used (E.g. mplayer is missing - no convertion from mov to MPeg2)
o	Modify the CommandQueueDialog to include :
+	- add frames for each command line
+	- split commands at a | character
	- add Combo boxes for easy config of some (all ?) lines (I.e. PAL vs NTSC)
	- add Combo box for retrieval of a stored 'theme'. This way the user could specify MPEG2 creation vs Divx creation etc. pp.
o	Include ability to modify the generated source XML code manually.
o	Improve the Slideshow filter Dialog:
	- use slot to update the pixmap, and/or semaphores to protect against crashes. However doubel check if they persist if the XExtension is confined.
	- After <ok> ask if task should run in background already converting imgs to mpeg.
	- If done display message box.
	- Use ProgressBar UI with or without text output of command line for the background task.
	- improve slider handling.
	- display total time as well as time range of the current slot.
	- manually sync Y pos of <add> buttons to the SoundFrame / FilterFrame height.
	- allow images to be moved/edited(rotated)/removed/inserted in the filter GUI.
	- import a dvd-slideshow file (done in the slideshow selector GUI).
o	Get algol to detect buttons from dvdauthor and use it to generate the buttons.




Okay this is just the out of my head need for Alpha 0.0.9
o	QPlayer has no icons anymore ...
o	-> Play / Pause icon works only once ...
	-> when starting up the first movie in header is not played.
	-> when changing the movie in the header then it shows up another movie ...
+	DialogSetup - man page comes up for the wrong util. 
-	-> Need smore investigation. Maybe only after new utils ...

-	Initial start-up give messages for utils missing. E.g. 
	*	SoX (from sox.sf.net) not found, needed for dvd-slideshow. Note: qdvdauthor can still be used
	*	convert (from ImageMagick.sf.net) not found, needed for dvd-slideshow. Note: qdvdauthor can still be used
	*	pngtopnm (from netpbm.sf.net) not found, needed for dvd-slideshow. Note: qdvdauthor can still be used
-	if not all tools for dvd-slideshow are present then disable the slideshow-button instead return a MSGBox which lists all needed utilities ...
-	Some systems do not have /dev/stdout ... what to do ???
-	jumppad seems to give some problems, while manually generating the entries seems to always work.
-	Implement MoviePreview in DVDMenu::addBackground
-	Implement feature to be able to add any XML - tag to the dvdauthor - file. (DropDown Menu / Structure View)

-	Implement Transparency dialog for the colors.
-	DVDMenu::setMask -> Missing Dialog to choose the transparent color from a loaded Mask.
-	Application does not terminate after closing on SuSE 9.1.
-	Improve File open dialog.


ogg to mp2 > oggdec test.ogg -o - | mp2enc -o test2.mp2
mp3 to mp2 > lame --decode blues.mp3 - | mp2enc -o blues.mp2
           > mplayer mymusicfile.mp3 -vo null -ao pcm -aofile menu_audio.pcm ; mp2enc -r 48000 -o menu_audio.mpa < menu_audio.pcm
*/

-	Add drop down menus to the TreeWidget (I.e. delete, edit etc).
-	Inclusion of the new QXineWidget - class into the QXine sub-project. (Kaffeine project seems to be on hold since 05/13/2004)
	-> CHeck out the new kaffeine-widget for xine ...
-	Inclusion of QPlayer widget directly into 'Q' DVD-Author to speed up previewing movies.
o	Implement the "Play" button in the Execute - dialog (execute.cpp)
-	Improvement of the preview handling in the MovieDialog.

-	ImagePreview for the SlideshowDialog is too slow.
-	Rotation of images in the SlideshowDialog is not yet passed through to the final movie.
-	CSlideDialog::slotOk() : Check why callback is not called when signal emmitesd to QDVDAuthor application ...
-	QSlideshow can't move images around ...
-	Slideshow generation is messed up ... Use dvd-slideshow 0.6.0 instead of 0.5.4.
-	After a slideshow has finished, the SourceFileEntry is no longer updated to reflect the availability of the mpeg.
-	The resize dialog is too slow.

-	Add functionality to manually edit the generated xml - files.
-	Add functionality to the audio tab in the Open Movie file dialog.


//////////////////////////////////////////////////////////////////////////////
//
// PREVIOUS LIST ...
//
//////////////////////////////////////////////////////////////////////////////

-	Implement FandeIn/FadeOut in the MovieDialog for MovieObjects. Use script and prepend to the animation.dat file. This way the user can still do its thing and might overwrite if he wishes to with his own animation script.
-	Menu idea : have a movieLine vertically and have the movies start on top, scroll down and after reaching centerHeight, have them getting bigger and more transparent until disappeared, have the 'empty', black movieLine continuing running.
-	MenuTemplate BUGFIX : implement next / prev / Main Menu - buttons
transcode -x mplayer,null -y mpeg2enc,null -V -w 1800 -F 3,"-E -10 -q 6 -R 0 -K tmpgenc"  -Z 200x132 -o output -i ./t.mpg 
-	BUGFIX: If a image can not be rendered, then the last image from the previous object is taken.
-	TextObjects are no longer drawn on the background ... Why ?
-	RELEASE C R A S H I N G  -  T H U N D E R. The instable release.
	- Offer possibility to open files through a list of dropzones rather then dragNDrop. In case it is an Animated thingy that'll help.
	- Accept dragged Movie files, create preview.
-	Start with the subtitle GUI.
-	wrap up the log class. 
	- Implement storing to log-file
	- Implement tab in setup dialog, to handle settings for log.
-	BUGFIX: WHEN CLOSING QDVDAUTHOR AND BEEING ASKED IF INI FILE SHOULD BE SAVED, IT DOES IT ANYWAYS
-	BUGFIX: Put printf's in MenuObject constructor/destructor to see why it is created / deleted when moving objects around.
-	BUGFIX: AutoChapters does not work correctly if start is set to anything bu 0;
-	BUGFIX: 'Edit timeline' for Menus crashes qdvdauthor.
-	CRASH-BUG : QPainter::begin: Cannot paint null pixmap - QPainter::setPen: Will be reset by begin() - Segmentation fault| that was using movie on the bg
-	CRASH-BUG : Edit Chapters in the MovieDialog crashes QDVDAuthor.
-	BUGFIX : After renaming the project button thumbnails were lost, because their path contained still the reference to the old project in the xml file. 
-	BUGFIX: The ButtonDialog->Normal Layer does not store changes to the object (MovieObject).
-	BUGFIX: Implemented isPlaying / isPaused in KXineWidget.
-	BUGFIX: the slideshow creation is almost prefect : it stops only at the end with msg "cleanup" in the logfile (the slideshow is available in a file suffixed by mpg.vob).
-	AnimationDialog: Offer library type script snipplets (E.g. Fadein/fadeout etc.)
-	Add functionality to the source tabs Video, and Audio.
-	Transcoding set-up :
-	 What to do when ss = endpos = 0. Filter this one out ...
	- 1'st option : DEFAULT : Generate an optimized transcoding block 
		(excluding parameters already inherent to source such a size etc.)
o	- 2'nd option : Generate a full set with transcode, where all parameters are used.
	- 3'rd option : Generate a optimized mencoder set
o	- 4'th option : Generate a full set with mencoder
	When user presses on CreateDVD then pop up progress window (table of progress bars) with all currently running background tasks which are converting stuff.
	- Finish those up before handling the rest through the CommandQueueDialog.
-	Implement the waiting for current running tasks as a timer driven task rather then blocking the foreground task.
	  - Implement different color handling pending on 
	    > need to transcode
	    > transcoding scheduled
	    > transcoding in progress
	    > No transcoding neccesary
	BUGFIX: Also, when creating slide-shows, I found I needed to change dvd-slideshow to have -S 420mpeg2 on the ppmtoy4m command line, or mpeg2enc would bark about problems in the headers and die with: **ERROR: [mpeg2enc] Could not read YUV4MPEG2 header: stream requires unsupported features!
-	Template with masks, and OpenGL overlays. This way a 3D scene with moving/rotating etc objects can be created.
	- If possible to render frames / videos in a X-buffer, then we can use as skin.
-	Template Ideas (A la I-DVD)
	- Overtaking cars on a Highway
	- A skyscraper with windows (lights on / off )
	- A Ancient castllike staircase with image frames.
	- A passing train.
	- A trafic light (swinging in the wind ?)

-	Resolve the DVDAUTHOR.XML file creation problem.
	- Check out the dvdauthor - files in home directory.
1. The video manager is generally known as the  VMG  
2. The DVD industry calls a menu in the VMG a VMG menu. DVDStyler calls it  vmMenu . 
3. The DVD industry calls a menu in the titleset a  VTS menu . DVDStyler calls it a  Menu . DVDStyler simply calls the two menu types  vmMenu  and  Menu . From this point on, we will use the DVDStyler terminology. Guidelines
4. The video manager (VMG) is not required to include a menu. 
5. If the video manager does not have a menu, it will simply jump to the first menu of the first titleset. 
6. A  vmMenu  is a menu in the video manager (VMG), not the titleset.
7. A  Menu  is a menu in the titleset, not the video manager. 
8. The video manager (VMG) can have multiple menus (vmMenus). 
9. If the video manager (VMG) does have a menu (vmMenu): 
   a. A vmMenu button can jump to other vmMenus. 
   b. A vmMenu button can launch a title (movie clip), but only if it is the first title in its associated titleset. 
   c. If jumping to a Menu, a vmMenu button can only jump to the first menu in its titleset. 
   d. A Menu in a given titleset can jump to other menus in the same titleset. 
   e. A Menu in a given titleset cannot jump to other menus in other titlesets.

    * A VMGM menu can only jump to:
          o Another VMGM menu
          o The first VTSM of a titleset
          o The start of a titleset
    * A VTSM menu can only jump to
          o Another VTSM in the same titleset.
          o _A title or chapter_ within the titleset.
          o The first VMGM of the disk
    * There are a number of other useful targets for menus (use dvdauthor --help for a list).

 
-	After dropping a movie to the main menu a thumbnail button is created automatically from the first movie's picture. It would be better to change this picture with a slider to any arbitrary picture from the added clip at any time in edit menu of the button later 
-	Some functionality to restrict the drag&drop option for elements in menu to vertical/horizontal movements for precise alighment of buttons, e.g. pressing Alt/Ctr button simultaneously with mouse movement (Maybe snap to grid)
-	There are objects in the left object panel for each button and text element. It should be easier to make their nodes clickable to edit elements as in the main menu window. (Structure toolbar)
-	Status of current size of the target dvd project 
o	If transcoding is implemented in future it should not be very restrictive regarding resolution, it should be optional. It means with this version i can add a recording with resolution 544x576 from tv card directly to make a non-standard dvd without transcoding to standard dvd resolution. Consequently, my DVD can contain material of about 4 hours with this resolution. In others programs like Nero or Sonic MyDVD it is not possible, they must transcode it first and only about 2 hours material would fit on the dvd.  
-	I added mp3 for the main menu, but my standalone dvd player couldnt play the sound, because it should be as in standard AC3 or MPEG2. Perhaps a warning or optional transcoding. 

-	Cool effect ID: output over generating menu in lower 1/3'rd through a slightly highlighted(whitened) but transparent field.
-	For the Toolbars small buttons, is it possible to have it in two lines (but keep one toolbar) ? This saves realestate.
-	Include background generator through using the screensaver API. This would allow to generate nice effects.
-	Implement feature to delete singel directories from the temp Paths through usage of the table object.
UndoRedo
-	Continue undo - functionality set.
+	Undo functionality for DVDMenu - class
-	- add XYZ-Object
-	Implement cut / copy / paste in MainMenuBar (setEnables (true/false) according to selected object.
-	DialogUndoStack : Implement functionality.
-	MenuObjects  : add cut / copy / paste
BUGS
-	try to generate a slideshow it crash with this message: SourceToolBar::slotAddSlideshow SourceToolBar::slotAddSlideshow <MySlideshow> Segmentation fault 
-	BackgroundMovie + MovieButtons, background does not render ...
MISC
o	Implement ImageMenu duration, for sound background. Functionality is not in ExecuteDialog.
-	Add MouseOver effect for Buttons
-	Implement Transparency dialog for the colors.
-	Initial start-up give messages for utils missing. E.g.
	*	SoX (from sox.sf.net) not found, needed for dvd-slideshow. Note: qdvdauthor can still be used
	*	convert (from ImageMagick.sf.net) not found, needed for dvd-slideshow. Note: qdvdauthor can still be used
	*	pngtopnm (from netpbm.sf.net) not found, needed for dvd-slideshow. Note: qdvdauthor can still be used
-	if not all tools for dvd-slideshow are present then disable the slideshow-button instead return a MSGBox which lists all needed utilities ...
-	Improve on the StartMenuRender - class, currently requires mencoder and mplayer AND they MUST be in the PATH !!!
/* How to get a screenshot of a video, using transcode :
transcode -i DolbyDigitalRain.vob -V -y jpg -F d -c 100-103 --export_fps 29.97 --export_asr 2 -E 48000 -b 224 -o test
transcode -i board.avi -c 110-111 -J smartdeinter -y jpg -F 100 -o board
puts frame No. 110 from DV board.avi into board0000.jpg
from transcode 0.6.12 www.transcoding.org


-	Compile for Win32 through gcc
	- testing through wine.
-	Implement QRender - application
	- Ability to generate the MovieMenu external
	- With or without Progress GUI.
-	Dropping the whole SourceFileEntry, Create LayoutWizard - class + GUI
-	Implement ObjectCollection.
-	When dropping a SourceFileEntry, then leave SourceFileInfo = NULL, get img from listFileInfos[]
	- Create N equal sized image/movie buttons according to pre-selected layouts
	- Background image is first frame of first video ...
	- Layout engine is plugin - based. Plugins are xml files which describe the layout.
	- If more videos then N, then create multiple sub-menus (inclusive Buttons to go to next/prev menu)
	- Insert the Previews in ONE ObjectCollection.
+	Output log file for all conversion / generation tasks under temp to trace errors ...
-	Add recover feature for interrupted tasks such as slideshow generation, file conversation, menu creation etc  ...

-	Offer option, to shrink/stretch, loop last image, loop full clip for MovieObjects
-	Offer option to inlcude sound track from clip in menu.
	- Add posibility to start one movie after the other (I.e. the first movie button, then the second etc.) in the DVDMenu.
-	Check why start-up is still so slow ...
-	How to handle same Movie with different offset/duration for a button ?
-	Ensure that MovieObjects and ButtonObjects are named uniquely as per Menu.
	-> E.g. two times the same movie but different chapters ...
	- if we have audio (from the background movie), then remove the empty sound file creation part
	- if we have audio (from the clips), then add up to 7 channels to the menu.
o	- When restarting the movie menus, check for status file and do only what needs to be done.
	- Store parameter file in this path which describes the filter applied (and maybe the current frame of N frames)
o	  -> Also store status (E.g. converting vs done etc.).
+	  This way we can use multiple background tasks to generate the menus, recover crashed sessions and check if a change is necessary.
	- Add option to re-render DVDMenu.
XINE-LIBS
-	Crashes when opening the MovieObjectDialog more then once (xine-libs) ...
-	QPlayer will exit with "Segmentation fault" with xine-libs
o	QPlayer crashes when returning from MovieDialog or re-Opening MovieDialog.
o	Preview does not work with MPlayer Engine in 'Q' DVD-Author.
MPLAYER
+	Why do we not get a screenshot of creta.mpg for the MPlayerEngine ?
	- No solution.

-	No longer possible to specify the qsMovieBackground file. If movie, then it'll be splitted into images and put back together. Good, bad ?
-	Modify Button Frame of Homepage to reflect the StructureToolBar or the SourceToolBar.

-	Add a status tab behind the StructureToolBar. Status will keep (text colored) record of -behind the scenes- threads activity, success, failure etc.
-	http://www.exit1.org/dvdrip/ DVD::rip - perl GUI interface.
-	Some systems do not have /dev/stdout ... what to do ???
-	jumppad seems to give some problems, while manually generating the entries seems to always work.
-	Add option to add comments in dvdauthor.xml - file, (http://www.wershofen.de/downloads/dvdauthor.xml)
-	Implement feature to be able to add any XML - tag to the dvdauthor - file. (DropDown Menu / Structure View)
-	Make StructureView intui-active
-	ColorScheme of the All-Tab. Change color pending connection to a menu. I.e. if the movie is only used as a button then we do not need to convert the format as the movie is incorporated into the menu.
o	DialogGeometry does not work for image re-scaling ...
-	Add [Reset] and [Geometry] to ImageDialog.
- 	SourceToolBar::allSources : Implement background task to serve tiny buttons.
-	SourceToolBar::allSources : How to handle slideshow's ???

-	Plugin support for Video filter
	- Use OpenGL interface to overlay. This way spinning movies, transparency etc. are possible etc.
	- Same interface can be used to generate Subtitles.
	- Maybe enable foreign plugin support.
-	Plugin support for MenuWizard. XML based simple file structure powerfull interface.


-	Add interactive resize of MenuObject's.
-	Implement "Add XML tag" in m_pMenuBar->DVDMenu (action, pre/post etc)
-	DVDMenu::setMask -> Missing Dialog to choose the transparent color from a loaded Mask.
-	Application does not terminate after closing on SuSE 9.1.
-	Improve File open dialog.

-	Add drop down menus to the StructureTreeWidget (I.e. delete, edit etc).
-	Inclusion of QPlayer widget directly into 'Q' DVD-Author to speed up previewing movies.
-	Improvement of the preview handling in the MovieDialog.

+	Add VLC support	- Postponed due to missing libvlc.so 
o	-> Install working VLC.
		- Get test_vlc to compile. 
	-> Implement QVLCWidget
+	-> implement VLCWidget
	-> implement VLCInfo

-	ImagePreview for the SlideshowDialog is too slow.
-	Add [Reset] and [Geometry] to ImageDialog.
-	Rotation of images in the SlideshowDialog is not yet passed through to the final movie.
-	CSlideDialog::slotOk() : Check why callback is not called when signal emmitesd to QDVDAuthor application ...
-	QSlideshow can't move images around ...
-	Slideshow generation is messed up ... Use dvd-slideshow 0.6.0 instead of 0.5.4.
-	After a slideshow has finished, the SourceFileEntry is no longer updated to reflect the availability of the mpeg.
-	The resize dialog is too slow.

-	Add functionality to manually edit the generated xml - files.
-	Add functionality to the audio tab in the Open Movie file dialog.
-	Enhance Drag'n Drop support to also accept Sound/Movie files.

/* How to get a screenshot of a video, using transcode :
transcode -i DolbyDigitalRain.vob -V -y jpg -F d -c 100-103 --export_fps 29.97 --export_asr 2 -E 48000 -b 224 -o test
transcode -i board.avi -c 110-111 -J smartdeinter -y jpg -F 100 -o board
puts frame No. 110 from DV board.avi into board0000.jpg
from transcode 0.6.12 www.transcoding.org

ogg to mp2 > oggdec test.ogg -o - | mp2enc -o test2.mp2
mp3 to mp2 > lame --decode blues.mp3 - | mp2enc -o blues.mp2
           > mplayer mymusicfile.mp3 -vo null -ao pcm -aofile menu_audio.pcm ; mp2enc -r 48000 -o menu_audio.mpa < menu_audio.pcm

// Here is what I found to convert a video from any format into mpeg2 format on the web
First you can use mplayer to convert the video in the AVI to mpeg2
stream, for a (relatively) low quality 1-pass test, try

mencoder yoursource.avi -nosound -ovc lavc -lavcopts
vcodec=mpeg2video:keyint=132:vbitrate=1000:autoaspect:vrc_buf_size=1000:
vrc_minrate=1000:vrc_maxrate=2500:vpsize=1000 -of mpeg -o
yoursource.mpeg
mplayer yoursource.mpeg -dumpvideo -dumpfile yoursource.m2v

To make SVCD's you want to keep, you should turn on a bunch of other
lavc options, such as
mbd=2:precmp=2:cmp=2:subcmp=2:trell:cbp:tcplx_mask=0.1:scplx_mask=0.1
and ofcourse do 2 pass, and maybe increase vbitrate and vrc_maxrate

Get the audio:
mplayer yoursource.avi -dumpaudio -dumpfile audio.dump

Depending on the type of the audio, you might have to convert it, or you
can throw it as is into mplex from mjpegtools, which you use  to mux the
audio and video streams together to make a (S)VCD.

mplex -f5 -V -b230 -o movie.mpg yoursource.m2v audio.dump

Then with any luck movie.mpg should be a SVCD movie... I think... I
build DVD's (or at least that's what I'm trying to do) so I don't know.


> Here a link to avidemux, a gtk2 GUI to convert to Mpeg2
http://fixounet.free.fr/avidemux/

> Here a link to IWantVCD
http://roi.halted.net/
> Video Effects plugins : http://effectv.sourceforge.net/ (using SMIL like kdenlife)
> http://www.pitivi.org/ - Non-Linear VideoEditor in Gtk2++. I like the time-line.

// More on multichannel audio can be found under : http://www.dahnielson.com/primer.txt
// -- pcm2aiff inFile -c5 -r1
// -- mctoolame -m s -n d -L 6channelAiffFile.aiff output.m2v

// Trial and error : arecord -S -M -t 1 -w /dev/stdout | mp2enc -r 48000 -o \"%1.mp2\"

*/
http://www.videohelp.com/~gfd/Motionmenu_eng.html to links ...
http://www.stevengotz.com/video.htm
http://www.videohelp.com/~gfd/GUI_DVDauthor_eng_07.htm
-> Check out Slide Show Movie Maker (http://www.joern-thiemann.de/subpage/index.html?/tools/ssmm/)



-	Check out cdrecord-prodvd for dao.
o	Create CInstall - class, which checks for all needed tools.
	- If the prefered tool is not found on the users machine check if this can be substituted by another tool.
	- Notify user about missing features if tool is not used (E.g. mplayer is missing - no convertion from mov to MPeg2)
o	Modify the CommandQueueDialog to include :
+	- add frames for each command line
+	- split commands at a | character
	- add Combo boxes for easy config of some (all ?) lines (I.e. PAL vs NTSC)
	- add Combo box for retrieval of a stored 'theme'. This way the user could specify MPEG2 creation vs Divx creation etc. pp.
o	Include ability to modify the generated source XML code manually.
o	Improve the Slideshow filter Dialog:
	- use slot to update the pixmap, and/or semaphores to protect against crashes. However doubel check if they persist if the XExtension is confined.
	- After <ok> ask if task should run in background already converting imgs to mpeg.
	- If done display message box.
	- Use ProgressBar UI with or without text output of command line for the background task.
	- improve slider handling.
	- display total time as well as time range of the current slot.
	- manually sync Y pos of <add> buttons to the SoundFrame / FilterFrame height.
	- allow images to be moved/edited(rotated)/removed/inserted in the filter GUI.
	- import a dvd-slideshow file (done in the slideshow selector GUI).
o	Get algol to detect buttons from dvdauthor and use it to generate the buttons.




Okay this is just the out of my head need for Alpha 0.0.9
o	QPlayer has no icons anymore ...
o	-> Play / Pause icon works only once ...
	-> when starting up the first movie in header is not played.
	-> when changing the movie in the header then it shows up another movie ...
+	DialogSetup - man page comes up for the wrong util. 
-	-> Need smore investigation. Maybe only after new utils ...

-	Initial start-up give messages for utils missing. E.g. 
	*	SoX (from sox.sf.net) not found, needed for dvd-slideshow. Note: qdvdauthor can still be used
	*	convert (from ImageMagick.sf.net) not found, needed for dvd-slideshow. Note: qdvdauthor can still be used
	*	pngtopnm (from netpbm.sf.net) not found, needed for dvd-slideshow. Note: qdvdauthor can still be used
-	if not all tools for dvd-slideshow are present then disable the slideshow-button instead return a MSGBox which lists all needed utilities ...
-	Some systems do not have /dev/stdout ... what to do ???
-	jumppad seems to give some problems, while manually generating the entries seems to always work.
-	Implement MoviePreview in DVDMenu::addBackground
-	Implement feature to be able to add any XML - tag to the dvdauthor - file. (DropDown Menu / Structure View)

-	Implement Transparency dialog for the colors.
-	DVDMenu::setMask -> Missing Dialog to choose the transparent color from a loaded Mask.
-	Application does not terminate after closing on SuSE 9.1.
-	Improve File open dialog.


ogg to mp2 > oggdec test.ogg -o - | mp2enc -o test2.mp2
mp3 to mp2 > lame --decode blues.mp3 - | mp2enc -o blues.mp2
           > mplayer mymusicfile.mp3 -vo null -ao pcm -aofile menu_audio.pcm ; mp2enc -r 48000 -o menu_audio.mpa < menu_audio.pcm
*/

-	Add drop down menus to the TreeWidget (I.e. delete, edit etc).
-	Inclusion of the new QXineWidget - class into the QXine sub-project. (Kaffeine project seems to be on hold since 05/13/2004)
	-> CHeck out the new kaffeine-widget for xine ...
-	Inclusion of QPlayer widget directly into 'Q' DVD-Author to speed up previewing movies.
o	Implement the "Play" button in the Execute - dialog (execute.cpp)
-	Improvement of the preview handling in the MovieDialog.

-	ImagePreview for the SlideshowDialog is too slow.
-	Rotation of images in the SlideshowDialog is not yet passed through to the final movie.
-	CSlideDialog::slotOk() : Check why callback is not called when signal emmitesd to QDVDAuthor application ...
-	QSlideshow can't move images around ...
-	Slideshow generation is messed up ... Use dvd-slideshow 0.6.0 instead of 0.5.4.
-	After a slideshow has finished, the SourceFileEntry is no longer updated to reflect the availability of the mpeg.
-	The resize dialog is too slow.

-	Add functionality to manually edit the generated xml - files.
-	Add functionality to the audio tab in the Open Movie file dialog.
o	Add basic support for Movie buttons
o	Add basic support for movie backgrounds.



this is the leftover from version 0.0.9, to be done.

XINE-LIBS
-	Crashes when opening the MovieObjectDialog more then once (xine-libs) ...
-	QPlayer will exit with "Segmentation fault" with xine-libs
o	QPlayer crashes when returning from MovieDialog or re-Opening MovieDialog.
o	Preview does not work with MPlayer Engine in 'Q' DVD-Author.
MPLAYER
+	Why do we not get a screenshot of creta.mpg for the MPlayerEngine ?
	- No solution.

-	No longer possible to specify the qsMovieBackground file. If movie, then it'll be splitted into images and put back together. Good, bad ?
-	Offer option, to shrink/stretch, loop last image, loop full clip for MovieObjects
-	Offer option to inlcude sound track from clip in menu.
-	Implement ImageMenu duration, for sound background. Functionality is not in ExecuteDialog.
-	How to handle same Movie with different offset/duration for a button ?
-	At some MovieObject's in the menu the PLEASE_WAIT img does not show.
-	Check why start-up is still so slow ...
-	Implement Dialog to display / handle the temp-drive and all generated temp data (of ALL projects)
-	MenuObjects  : add cut / copy / paste
-	Implement cut / copy / paste in MainMenuBar (setEnables (true/false) according to selected object.
-	Ensure that MovieObjects and ButtonObjects are named uniquely as per Menu.
	-> E.g. two times the same movie but different chapters ...
	- if we have audio (from the background movie), then remove the empty sound file creation part
	- if we have audio (from the clips), then add up to 7 channels to the menu.
	- When restarting the movie menus, check for status file and do only what needs to be done.
	- Store parameter file in this path which describes the filter applied (and maybe the current frame of N frames)
	  -> Also store status (E.g. converting vs done etc.).
	  This way we can use multiple background tasks to generate the menus, recover crashed sessions and check if a change is necessary.
	- Add option to re-render DVDMenu.
	- Add posibility to start one movie after the other (I.e. the first movie button, then the second etc.) in the DVDMenu.

-	Initial start-up give messages for utils missing. E.g.
	*	SoX (from sox.sf.net) not found, needed for dvd-slideshow. Note: qdvdauthor can still be used
	*	convert (from ImageMagick.sf.net) not found, needed for dvd-slideshow. Note: qdvdauthor can still be used
	*	pngtopnm (from netpbm.sf.net) not found, needed for dvd-slideshow. Note: qdvdauthor can still be used
-	if not all tools for dvd-slideshow are present then Thank you for the helpdisable the slideshow-button instead return a MSGBox which lists all needed utilities ...
-	Modify Button Frame of Homepage to reflect the StructureToolBar or the SourceToolBar.

-	Add a status tab behind the StructureToolBar. Status will keep (text colored) record of -behind the scenes- threads aktivity, success, failure etc.
-	Generate FileInfos (+Screenshots) in background task.
-	Dither from KImmageEffect -check nearest color algo- currently not pretty dithering !
-	check out http://scale2x.sourceforge.net/ for scaling if neccesary or not.
-	http://www.exit1.org/dvdrip/ DVD::rip - perl GUI interface.
-	Implement quantize algorithm. This might be needed for the dithering of a loaded mask.
-	Improvement of the color handling for the generated masks.
+	Improved color handling of the mask. Added functionality to the color button toolbar.
-	Some systems do not have /dev/stdout ... what to do ???
-	jumppad seems to give some problems, while manually generating the entries seems to always work.
-	Add option to add comments in dvdauthor.xml - file, (http://www.wershofen.de/downloads/dvdauthor.xml)
-	Implement feature to be able to add any XML - tag to the dvdauthor - file. (DropDown Menu / Structure View)
-	Make StructureView intui-active
-	Implement MediaScanner - files (Background task to determine Medias properties)
-	ColorScheme of the All-Tab. Change color pending connection to a menu. I.e. if the movie is only used as a button then we do not need to convert the format as the movie is incorporated into the menu.
-	DialogGeometry does not work for image re-scaling ...
-	Add [Reset] and [Geometry] to ImageDialog.
- 	SourceToolBar::allSources : Implement background task to serve tiny buttons.
-	SourceToolBar::allSources : How to handle slideshow's ???
Undo:
+	Undo functionality for DVDMenu - class
-	- add XYZ-Object

-	Make ChapterDialog tabbed and assign each tab one entry of the SourceFileEntries  - list
-	Finish ChapterDialog (manually add chapters, set chapter markers, timeline etc.)
-	Implement mediaPreview in ChapterDialog.

-	Plugin support for Video filter
	- Use OpenGL interface to overlay. This way spinning movies, transparency etc. are possible etc.
	- Same interface can be used to generate Subtitles.
	- Maybe enable foreign plugin support.
-	Plugin support for MenuWizard. XML based simple file structure powerfull interface.

-	Add option to choose external video player (drop down list for the ones found [xine / mplayer / kaffeine / kmplayer / kplayer ... etc ] ) plus option to Browse.
-	Dropping the whole SourceFileEntry, Create LayoutWIzard - class + GUI
-	Implement ObjectCollection.
-	Add drag'n drop from SourceToolbar and automagically create MovieButton.
-	When dropping a SourceFileEntry, then leave SourceFileInfo = NULL, get img from listFileInfos[]
	- Create n equal sized image/movie buttons according to pre-selected layouts
	- Background image is first frame of first video ...
	- Layout engine is plugin - based. Plugins are xml files which describe the layout.
	- If more videos then n, then create multiple sub-menus (inclusive Buttons to go to next/prev menu)
	- Insert the Previews in ONE ObjectCollection.
-	Draw frame when entering with a drop ???
+	Background task : get/set thumbnail and media info from background task, so as to not to wait for the Media engine ...
-	DialogUndoStack : Implement functionality.

-	Add interactive resize of MenuObject's.
-	Implement "Add XML tag" in m_pMenuBar->DVDMenu (action, pre/post etc)
-	Add MouseOver effect for Buttons
-	Implement Transparency dialog for the colors.
-	DVDMenu::setMask -> Missing Dialog to choose the transparent color from a loaded Mask.
-	Application does not terminate after closing on SuSE 9.1.
-	Improve File open dialog.
-	Implement SetupDialog - option to [delete all Temp files older than ...]
-	Implement SetupDialog - option to [delete all temp files from other sessions ...]
-	Output log file for all conversion / generation tasks under temp to trace errors ...
-	Add recover feature for interrupted tasks such as slideshow generation, file conversation, menu creation etc  ...
-	Storing / loading of Project files with dropped images.
	-> When storing Project file, save proj.xml + all non existant data (I.e. dropped data) under /tmp and then use system (tar ...) to tar it into one file. When restoring a proj file then reverse those steps.

+	Implement basic transcode CommandBlock for video conversion to DVD conform material.
+	Added audio files conversion logic to mp2 for DVD videos.
+	Added video files conversion logic fro any-format to DVD-MPEG2.
+	Added basic automatic sanity checks for the source files.
+	SourceToolbar needs some loving (add file format and conversion algo if neccesary and more ...)
+	Add functionality to the source tabs Video, and Audio.

-	Add drop down menus to the TreeWidget (I.e. delete, edit etc).
o	Inclusion of the new QXineWidget - class into the QXine sub-project. (Kaffeine project seems to be on hold since 05/13/2004)
o	-> Check out the new kaffeine-widget for xine ...
-	Inclusion of QPlayer widget directly into 'Q' DVD-Author to speed up previewing movies.
-	Improvement of the preview handling in the MovieDialog.

+	Add VLC support	- Postponed due to missing libvlc.so 
o	-> Install working VLC.
		- Get test_vlc to compile. 
	-> Implement QVLCWidget
+	-> implement VLCWidget
	-> implement VLCInfo

-	ImagePreview for the SlideshowDialog is too slow.
-	Add [Reset] and [Geometry] to ImageDialog.
-	Rotation of images in the SlideshowDialog is not yet passed through to the final movie.
-	CSlideDialog::slotOk() : Check why callback is not called when signal emmitesd to QDVDAuthor application ...
-	QSlideshow can't move images around ...
-	Slideshow generation is messed up ... Use dvd-slideshow 0.6.0 instead of 0.5.4.
-	After a slideshow has finished, the SourceFileEntry is no longer updated to reflect the availability of the mpeg.
-	The resize dialog is too slow.

-	Add functionality to manually edit the generated xml - files.
-	Add functionality to the audio tab in the Open Movie file dialog.
-	Enhance Drag'n Drop support to also accept Sound/Movie files.

/* How to get a screenshot of a video, using transcode :
transcode -i DolbyDigitalRain.vob -V -y jpg -F d -c 100-103 --export_fps 29.97 --export_asr 2 -E 48000 -b 224 -o test
transcode -i board.avi -c 110-111 -J smartdeinter -y jpg -F 100 -o board
puts frame No. 110 from DV board.avi into board0000.jpg
from transcode 0.6.12 www.transcoding.org

ogg to mp2 > oggdec test.ogg -o - | mp2enc -o test2.mp2
mp3 to mp2 > lame --decode blues.mp3 - | mp2enc -o blues.mp2
           > mplayer mymusicfile.mp3 -vo null -ao pcm -aofile menu_audio.pcm ; mp2enc -r 48000 -o menu_audio.mpa < menu_audio.pcm

// Here is what I found to convert a video from any format into mpeg2 format on the web
First you can use mplayer to convert the video in the AVI to mpeg2
stream, for a (relatively) low quality 1-pass test, try

mencoder yoursource.avi -nosound -ovc lavc -lavcopts
vcodec=mpeg2video:keyint=132:vbitrate=1000:autoaspect:vrc_buf_size=1000:
vrc_minrate=1000:vrc_maxrate=2500:vpsize=1000 -of mpeg -o
yoursource.mpeg
mplayer yoursource.mpeg -dumpvideo -dumpfile yoursource.m2v

To make SVCD's you want to keep, you should turn on a bunch of other
lavc options, such as
mbd=2:precmp=2:cmp=2:subcmp=2:trell:cbp:tcplx_mask=0.1:scplx_mask=0.1
and ofcourse do 2 pass, and maybe increase vbitrate and vrc_maxrate

Get the audio:
mplayer yoursource.avi -dumpaudio -dumpfile audio.dump

Depending on the type of the audio, you might have to convert it, or you
can throw it as is into mplex from mjpegtools, which you use  to mux the
audio and video streams together to make a (S)VCD.

mplex -f5 -V -b230 -o movie.mpg yoursource.m2v audio.dump

Then with any luck movie.mpg should be a SVCD movie... I think... I
build DVD's (or at least that's what I'm trying to do) so I don't know.


> Here a link to avidemux, a gtk2 GUI to convert to Mpeg2
http://fixounet.free.fr/avidemux/

> Here a link to IWantVCD
http://roi.halted.net/
> Video Effects plugins : http://effectv.sourceforge.net/ (using SMIL like kdenlife)
> http://www.pitivi.org/ - Non-Linear VideoEditor in Gtk2++. I like the time-line.

// More on multichannel audio can be found under : http://www.dahnielson.com/primer.txt
// -- pcm2aiff inFile -c5 -r1
// -- mctoolame -m s -n d -L 6channelAiffFile.aiff output.m2v

// Trial and error : arecord -S -M -t 1 -w /dev/stdout | mp2enc -r 48000 -o \"%1.mp2\"

*/
http://www.videohelp.com/~gfd/Motionmenu_eng.html to links ...
http://www.stevengotz.com/video.htm
http://www.videohelp.com/~gfd/GUI_DVDauthor_eng_07.htm
-> Check out Slide Show Movie Maker (http://www.joern-thiemann.de/subpage/index.html?/tools/ssmm/)



-	Check out cdrecord-prodvd for dao.
o	Create CInstall - class, which checks for all needed tools.
	- If the prefered tool is not found on the users machine check if this can be substituted by another tool.
	- Notify user about missing features if tool is not used (E.g. mplayer is missing - no convertion from mov to MPeg2)
o	Modify the dynamic GUI to include :
+	- add frames for each command line
+	- split commands at a | character
	- add Combo boxes for easy config of some (all ?) lines (I.e. PAL vs NTSC)
	- add Combo box for retrieval of a stored 'theme'. This way the user could specify MPEG2 creation vs Divx creation etc. pp.
o	Include ability to modify the generated source XML code manually.
o	Improve the Slideshow filter Dialog:
	- use slot to update the pixmap, and/or semaphores to protect against crashes. However doubel check if they persist if the XExtension is confined.
	- After <ok> ask if task should run in background already converting imgs to mpeg.
	- If done display message box.
	- Use ProgressBar UI with or without text output of command line for the background task.
	- improve slider handling.
	- display total time as well as time range of the current slot.
	- manually sync Y pos of <add> buttons to the SoundFrame / FilterFrame height.
	- allow images to be moved/edited(rotated)/removed/inserted in the filter GUI.
	- import a dvd-slideshow file (done in the slideshow selector GUI).
o	Get algol to detect buttons from dvdauthor and use it to generate the buttons.




Okay this is just the out of my head need for Alpha 0.0.9
o	QPlayer has no icons anymore ...
o	-> Play / Pause icon works only once ...
	-> when starting up the first movie in header is not played.
	-> when changing the movie in the header then it shows up another movie ...
+	DialogSetup - man page comes up for the wrong util. 
-	-> Need smore investigation. Maybe only after new utils ...

-	Initial start-up give messages for utils missing. E.g. 
	*	SoX (from sox.sf.net) not found, needed for dvd-slideshow. Note: qdvdauthor can still be used
	*	convert (from ImageMagick.sf.net) not found, needed for dvd-slideshow. Note: qdvdauthor can still be used
	*	pngtopnm (from netpbm.sf.net) not found, needed for dvd-slideshow. Note: qdvdauthor can still be used
-	if not all tools for dvd-slideshow are present then disable the slideshow-button instead return a MSGBox which lists all needed utilities ...
-	Dither from KImmageEffect -check nearest color algo- currently not pretty dithering !
-	Implement quantize algorithm. This might be needed for the dithering of a loaded mask.
-	Improvement of the color handling for the generated masks.
-	Improved color handling of the mask. Added functionality to the color button toolbar.
-	Some systems do not have /dev/stdout ... what to do ???
-	jumppad seems to give some problems, while manually generating the entries seems to always work.
-	Implement MoviePreview in DVDMenu::addBackground
-	Add XinePreview to the ChapterDialog.
-	Implement feature to be able to add any XML - tag to the dvdauthor - file. (DropDown Menu / Structure View)

-	Implement Transparency dialog for the colors.
-	DVDMenu::setMask -> Missing Dialog to choose the transparent color from a loaded Mask.
-	Include MPLayer interface transparently so the user can choose between Xine and MPlayer back-end.
-	Application does not terminate after closing on SuSE 9.1.
-	Improve File open dialog.

+	Implement basic transcode CommandBlock for video conversion to DVD conform material.
+	Added audio files conversion logic to mp2 for DVD videos.
+	Added video files conversion logic fro any-format to DVD-MPEG2.
+	Added basic automatic sanity checks for the source files.
+	SourceToolbar needs some loving (add file format and conversion algo if neccesary and more ...)
+	Add functionality to the source tabs Video, and Audio.
IN ORDER TO TEST !!!
/* How to get a screenshot of a video, using transcode :
transcode -i DolbyDigitalRain.vob -V -y jpg -F d -c 100-103 --export_fps 29.97 --export_asr 2 -E 48000 -b 224 -o test
transcode -i board.avi -c 110-111 -J smartdeinter -y jpg -F 100 -o board
puts frame No. 110 from DV board.avi into board0000.jpg
from transcode 0.6.12 www.transcoding.org

ogg to mp2 > oggdec test.ogg -o - | mp2enc -o test2.mp2
mp3 to mp2 > lame --decode blues.mp3 - | mp2enc -o blues.mp2
           > mplayer mymusicfile.mp3 -vo null -ao pcm -aofile menu_audio.pcm ; mp2enc -r 48000 -o menu_audio.mpa < menu_audio.pcm
*/

-	Add drop down menus to the TreeWidget (I.e. delete, edit etc).
-	Inclusion of the new QXineWidget - class into the QXine sub-project. (Kaffeine project seems to be on hold since 05/13/2004)
	-> CHeck out the new kaffeine-widget for xine ...
-	Inclusion of QPlayer widget directly into 'Q' DVD-Author to speed up previewing movies.
o	Implement the "Play" button in the Execute - dialog (execute.cpp)
-	Improvement of the preview handling in the MovieDialog.

-	ImagePreview for the SlideshowDialog is too slow.
-	Rotation of images in the SlideshowDialog is not yet passed through to the final movie.
-	CSlideDialog::slotOk() : Check why callback is not called when signal emmitesd to QDVDAuthor application ...
-	QSlideshow can't move images around ...
-	Slideshow generation is messed up ... Use dvd-slideshow 0.6.0 instead of 0.5.4.
-	After a slideshow has finished, the SourceFileEntry is no longer updated to reflect the availability of the mpeg.
-	The resize dialog is too slow.

-	Add functionality to manually edit the generated xml - files.
-	Add functionality to the audio tab in the Open Movie file dialog.
-	Add basic support for Movie buttons
-	Add basic support for movie backgrounds.

+	SubMenus, and new xml structure for dvdauthor.xml.
o	Create CInstall - class, which checks for all needed tools.
	- If the prefered tool is not found on the users machine check if this can be substituted by another tool.
	- Notify user about missing features if tool is not used (E.g. mplayer is missing - no convertion from mov to MPeg2)
o	Modify the dynamic GUI to include :
+	- add frames for each command line
+	- split commands at a | character
	- add Combo boxes for easy config of some (all ?) lines (I.e. PAL vs NTSC)
	- add Combo box for retrieval of a stored 'theme'. This way the user could specify MPEG2 creation vs Divx creation etc. pp.
o	Include ability to modify the generated source XML code manually.
o	Improve the Slideshow filter Dialog:
	- use slot to update teh pixmap, and/or semaphores to protect against crashes. However doubel check if they persist if the XExtension is confined.
	- After <ok> ask if task should run in background already converting imgs to mpeg.
	- If done display message box.
	- Use ProgressBar UI with or without text output of command line for the background task.
	- improve slider handling.
	- display total time as well as time range of the current slot.
	- manually sync Y pos of <add> buttons to the SoundFrame / FilterFrame height.
	- allow images to be moved/edited(rotated)/removed/inserted in the filter GUI.
	- import a dvd-slideshow file (done in the slideshow selector GUI).
o	Get algol to detect buttons from dvdauthor and use it to generate the buttons.

Here we tackle the first usefull release version 0.5.0 (half way there ?!?)
o	Create Help files / documentation.
o	Generate doxygen documentation.
o	Implement the slideshow functionality.
	- as one image per sub-menu (max 512)
	- as one image per chapter in a 'movie' (max 512 * images per chapter)
	- as a variable number of images per sub-menu (E.g. 4 on one page.)
o	Include multi language support through tr()
o	Create menu entry to verify all sources (mpegs in mpeg2 format, same aspect ratio, images same size, color of masks < 5 etc.
o	Include ability to add other features currently not supported (manual definition of pre / post commands etc.)

Here is the list for the first Beta release (big items only):
+	Implement multiple Sound Tracks per menu.
o	Implement multiple Subtitles per menu.
o	Implement Subtitlte editor for Movies.
o	Implement motion Buttons.
o	Implement motion Menus.
o	Implement highlighted / selected - effect.
o	Improve dvd-slideshow capability / usability.
o	Improve 4 colors - handling of the masks.
o	Supply capabilities to create Objects on the Highlighted/Slected layers.
o	Improve StructureWidget (icons, right mouse change roperties of Object etc.)
o	Improve SourceFile list (multi file entry, duration|type|Status|Chapters)

Version 1.0.0 should have :
o	All possibilities provided with dvdauthor.
o	Additional editing functions
o	Wizards
o	The rest

