]> git.sesse.net Git - vlc/blobdiff - TODO
- previously checked in this file to work only within my debug environment
[vlc] / TODO
diff --git a/TODO b/TODO
index 4229984131330352140ba46ce69535d5c710d05a..d3f8db7a4cae1b139c1af4692a2f66a60316da3c 100644 (file)
--- a/TODO
+++ b/TODO
-#
-#   vlc tasks
-#   ---------
-#
-#
+# VLC Todo
 # Difficulty values: Easy, Medium, Hard, Guru
 #
 # Urgency values: Wishlist, Normal, Important, Critical
 
-Task: 0x29
-Difficulty: Medium
-Urgency: Normal
-Description: ALSA audio output support
- ALSA is the Advanced Linux Sound Architecture and is believed to be
- technically superior to the usual OSS support found in the Linux kernel.
+Task
+Difficulty: Easy
+Urgency: Critical
+Platform: any
+Description: World domination
+ We need to dominate the world
 Status: Todo
 
-Task: 0x28
+Task
 Difficulty: Guru
-Urgency: Wishlist
-Description: Support for RTP
- RTP is a transport protocol for realtime applications. MPEG1 and MPEG2
- versions of RTP are described in RFCs 2038 and 2250. RFCs 1889 (RTP)
- and 2508 (compressed RTP) can be interesting as well.
+Platform: any
+Urgency: Critical
+Description: Clock Synchro redesign
+We need to adapt the clock synchro to work better with BOTH files and streams.
 Status: Todo
 
-Task: 0x27
-Difficulty: Medium
+Task
+Difficulty: Easy
+Platform: any
+Urgency: Normal
+Description: cli option for audio-channels
+It's currently not possible to force VLC from stereo to mono mode, or from stereo to reverse stereo or dolby mode. It's one of the few options in VLC that can not yet be forced from Preferences or the commandline.
+Status: Todo
+
+Task
+Difficulty: Hard
+Platform: any
 Urgency: Wishlist
-Description: Draw a font / support color fonts
- The vlc currently uses an ugly font to display its data on the output
- window, and we have a slow hack to make it outlined. Writing our own
- font, or adding support for color fonts, would make us gain some time.
+Description: Java wrapping/bindings
+Allow java apps to use VLC perhaps? Several people have suggested something like this.
 Status: Todo
 
-Task: 0x26
-Difficulty: Medium
-Urgency: Important
-Description: Layer 2 mono support
- The vlc doesn't play layer 2 mono yet. We need it since a few of our
- streams are in this audio format.
+Task
+Difficulty: Easy
+Platform: win32/macosx
+Urgency: Normal
+Description: OS contextual menu support
+Create contextual menus for the OS so you can play or enqueue files from the Finder/Explorer directly into VLC. Much like with for instance Winamp.
 Status: Todo
 
-Task: 0x25
+Task
 Difficulty: Hard
-Urgency: Wishlist
-Description: MP3 support
- The vlc cannot play MPEG1/2 layer 3 yet. It might be nice to fix that.
+Urgency: Critical
+Platform: Mac OS X
+Description: CoreAudio multichannel audio output.
+ Convert to <a href="http://www.mat.ucsb.edu:8000/CoreAudio/108">AUHAL</a> based sytem.
+Still no info over S/PDIF output available.
+Outstanding issues:<br />
+ - G5 S/PDIF not working<br />
+ - G5 PCM not working because S/PDIF is selected by default, even if not connected.<br />
 Status: Todo
 
-Task: 0x24
-Difficulty: Hard
+Task
+Difficulty: Medium
+Platform: Any
+Urgency: Critical
+Description: fix subtitle regressions
+Investigate behaviour of subpictures when pausing.<br />
+Status: Todo
+
+
+Task
+Difficulty: Easy to Difficult
+Platform: Any
+Urgency: Important
+Description: Write some developer documentation
+Perhaps a skeletal driver in each of the categories, what they need to
+do, the design decisions, possibilities, or options that drivers in
+a category might implement. If there is a canonical module for each 
+category or modules that show the range of options that might be mentioned 
+too.
+
+Task
+Difficulty: Easy
+Platform: Mac OS X
 Urgency: Normal
-Description: Support for unencapsulated streams
- Some streams are not encapsulated in PES/PS or TS packets, which the
- vlc currently requires to properly decode a stream. Adding support for
- this would require to rewrite the input code, and probably make it a
- plugin.
+Description: Streaming wizard
+ Make a Streaming wizard for OS X
 Status: Todo
 
-Task: 0x24
-Difficulty: Guru
-Urgency: Wishlist
-Description: Ogg/Vorbis audio decoder support
- The Ogg/Vorbis audio format is a free alternative to the patent-encumbered
- MP3 format. The system packets are quite different than the MPEG ones, so
- adding support for it would require a lot of code rewrite.
+Task
+Difficulty: Easy
+Platform: all
+Urgency: Normal
+Description: configure overview of modules
+ configure should report what it will and what it won't build, after it is done running.
 Status: Todo
 
-Task: 0x23
+Task
+Difficulty: Hard
+Urgency: Normal
+Platform: any
+Description: Dual window in embed mode
+Windows taskbar reports two windows in the video embed mode.
+Status: Done
+
+Task
 Difficulty: Guru
 Urgency: Normal
-Description: Xv video output support
- XFree 4.0 provides the Xv interface which can do hardware YUV on supported
- hardware. Unfortunately, there doesn't seem to be much documentation
- available.
+Platform: any
+Description: Multi-input
+* Many demuxers don't support it<br />
+* Need GUI elements
+Status: Assigned to fenrir
+
+Task
+Difficulty: Hard
+Urgency: Normal
+Platform: any
+Description: make everything UTF-8 based
+ Convert everything that deals with strings to a UTF-8 based system. Not very difficult, but needs a lot of checking, testing and allows for easy breakage.
 Status: Todo
 
-Task: 0x22
+Task
 Difficulty: Medium
 Urgency: Normal
-Description: SDL video output support
- The Simple DirectMedia Layer library is a generic API that provides
- YUV acceleration on some platforms. More information can be found
- on http://www.devolution.com/~slouken/SDL/
+Platform: any
+Description: Rewrite the SAP parser
+ The SAP parser is very dirty at the moment, and needs a complete rewrite.
+ - caching support<br />
+ - timeout support<br />
+ - add meta-information to playlist<br />
+ - session version support<br />
+Status: Assigned to zorglub (80% done)
+
+Task
+Difficulty: Medium
+Urgency: Normal
+Platform: any
+Description: Playlist II
+ A hierarchized playlist structure, eventually using a media library.
+Think playlist within playlist, directory structures, SAP section, TV channels list, iTunes library like stuff etc. <a href="http://sierra.via.ecp.fr/~zorglub/vlc/playlist.txt">Thoughts and ideas (not up-to-date)</a><br />
+70% done.<br />
+Todo:<br />
+- Core support<br />
+   - *** Consider changing calls to playlist_Control into playlist_LockControl
+   - *   "Name finder"<br />
+   - *   "Protocol rollover" node<br />
+   - *** Item moving/copying facilities<br />
+   - *   Ability to save playlist on quit<br />
+   - ?   Represent navigation structure as "fake items" ?  <br />
+   -     Custom playlist format (http://xspf.xiph.org/ looks like a good idea)<br />
+- Helper modules<br />
+   - **  ASX and B4S parsers (see below)<br />
+   - *   Rewrite SLP announce discovery<br />
+   - *   Live directory representation<br /> 
+- *** Implement in Skins 2 interfaces<br />
+- wx implementation :<br />
+   - **  Support item move/copy<br />
+   - *   Explorer view<br />
+   - *   Playlist preferences panel<br />
+   - **  Improve iteminfo dialog<br />
+Status: Assigned to zorglub
+
+Task
+Difficulty: Easy
+Urgency: Normal
+Platform: any
+Description: Improve bookmarks
+ - Put them in the input_item structure to have them persistent
+ - Add an input option to play the whole file but starting at a given bookmark
+Status: Todo
+
+Task
+Difficulty: Easy
+Urgency: Normal
+Platform: any
+Description: fix ASX playlist parser
+Basically our asx parser is broken. It doesn't handle relative links. It should also URL encode the hrefs (spaces in the url need to be converted to %20 etc). protocol rollover, authors, title's etc etc aren't handled. See <a href="http://www.meetnewplayers.com/bend/Windows%20Media%20-%20Fun%20with%20asx%20files2.htm">this</a> for asx examples. It is still located in the old demux/m3u.c module instead of modules/demux/playlist/
 Status: Todo
 
-Task: 0x21
+Task
 Difficulty: Medium
 Urgency: Normal
-Description: Implement pause
- There is no real `pause' command yet. Pausing just stops
- displaying and sound playback, but the streams continues to
- be decoded. One will have to do a file implementation as
- well as a network implementation.
+Platform: any
+Description: fix current muxers.<br />
+Our avi muxer doesn't produce valid files<br />
 Status: Todo
 
-Task: 0x20
-Difficulty: Hard
-Urgency: Important
-Description: Rewrite input for Program Stream files
- Currently when we read a PS file, it is first translated to TS
- because we first had only PS support. Now time has come to get
- rid of this ugly kludge and integrate a proper PS input.
+Task
+Difficulty: Easy
+Urgency: Normal
+Platform: Mac OS X
+Description: LPCM
+The LPCM decoder outputs really small samples which aren't accepted properly by the macosx coreaudio resampler, causing VLC to not output any sound with many DVD's. A test sample that shows this effect on the mac is the Madonna clip.<br />
+This is now fixed, but there is a problem with buffers in the resampler that now sometimes overflows (or rather get changed after they are released). A good method for reproduction seems to be running Finding Nemo for a minute or 8.
 Status: Todo
 
-Task: 0x1f
+Task
 Difficulty: Hard
 Urgency: Normal
-Description: DeCSS and DVD ioctls
- The vlc needs the DVD ioctls support as well as the integration
- of DeCSS to play DVDs properly. The person doing this should
- probably not live in a country where DeCSS has been ruled illegal.
+Platform: Mac OS X
+Description: New OS X preferences
+ New preferences for Mac OS X. Current not suited for Mac Users and several
+Pref. elements are broken (hotkeys and int with string desc.).
 Status: Todo
 
-Task: 0x1e
-Difficulty: Hard
-Urgency: Wishlist
-Description: ASCII-art output
- For the ones who don't know how to waste their time, they can
- try to do an ASCII-art output plugin.
+Task
+Difficulty: Easy
+Urgency: Normal
+Platform: Mac OS X
+Description: OS X bookmarks window
+We miss a bookmarks window like the wxwidget one.
 Status: Todo
 
-Task: 0x1d
-Difficulty: Hard
+Task
+Difficulty: Medium
+Urgency: Normal
+Platform: Mac OS X
+Description: Finish Mac Mozilla plugin
+The Mac mozilla plugin needs some more work to be useable. Mostly done now,
+needs testing.
+Status: 90%
+
+Task
+Difficulty: Easy
 Urgency: Normal
-Description: LPCM decoder
- The LPCM decoder is full of stubs, it only parses the stream
- but does not decode it. Fix this.
+Platform: any
+Description: Controlling the mozilla plugin
+The mozilla plugin needs to be better controllable (via javascript). <br />
+- retrieve variable values.<br />
+- open VLC media player<br />
+- default html page to control the plugin<br />
+- XUL controls<br />
+(80% done) see:<br />
+<a href="http://sierra.via.ecp.fr/~zorglub/vlc/plugin/vlc.html">Javascript controls</a>
+<a href="http://sierra.via.ecp.fr/~zorglub/vlc/xul/">XUL controls</a>
+<a href="http://mplayerplug-in.sourceforge.net/">MPlayer Mozilla plugin</a>
+Status: Assigned to zorglub
+
+Task
+Difficulty: Easy
+Platform: Win32, Linux
+Urgency: Normal
+Description: equalizer fixes
+   - Gray out "reset to defaults" for audio equalizer when disabled<br />
+   - Once audio equalizer is disabled, it doesn't enable the first
+     try when you select from main menu. It only works a 2nd change
+     (enable flag not properly set?).
+ To have this work correctly, the best solution is to remove knowledge of
+ presets from the filter and give it to ... core ?
+Status: Todo
+
+Task
+Difficulty: Medium
+Platform: Win32, Linux
+Urgency: Normal
+Description: wxWidgets fixes
+ - Rename wxWindows to wxWidgets<br />
+ - Problems with slider (doesn't go where you click, keep updating while seeking
+?)<br />
 Status: Todo
 
-Task: 0x1c
+Task
 Difficulty: Guru
-Urgency: Important
-Description: Fix field pictures support
- Some MPEG2 streams are interleaved, and the vlc does not support
- this very well. Adding support for them requires an excellent
- knowledge of the MPEG2 papers.
+Urgency: Normal
+Platform: Mac OS X
+Description: SVCD support
+Support the cddax and vcdx modules for proper SVCD support. libcdio seems to work a tad flacky under OS X. Cause is unknown.
 Status: Todo
 
-Task: 0x1b
+Task
 Difficulty: Hard
-Urgency: Wishlist
-Description: modularize decoder
- Make the decoder a plugin, so that two versions can coexist
- without recompilation (MMX and non-MMX).
-Status: Todo
+Urgency: Normal
+Platform: any
+Description: Stream text subtitles
+ Find a a way to stream text subtitles, in TS and in RTP.<br />
+ Needs testing and validating<br />
+ Currently broken.
+Status: 65% (fenrir)
+
+Task
+Difficulty: Medium
+Urgency: Normal
+Platform: any
+Description: RTSP server
+Full implementation of a RTSP server. We already have a very basic implementation working but it does need a lot more work. See the following <a href="http://via.ecp.fr/via/ml/streaming/200408/msg00068.html">mail</a> and <a href="http://via.ecp.fr/via/ml/streaming/200410/msg00002.html">mail</a>.
+Status: 90%
 
-Task: 0x1a
+Task
 Difficulty: Easy
 Urgency: Normal
-Description: Make interface more responsive
+Platform: Win32/Linux
+Description: V4L and dshow tuning support
+We need an API that allows us to control the tuning of V4L and dshow TV cards.
+Status: Todo (CryHavoc)
+
+Task
+Difficulty: Medium
+Platform: any
+Urgency: Wishlist
+Description: RAR/ZIP/... access
+An access module that would be able to uncompress compressed files.
 Status: Todo
- When in "waiting for stream" mode, the interface is refreshed
- every 5 seconds. This is too long, and can be confusing for
- the user. Make it refresh at least after a keyboard/mouse event.
+
+Task
+Difficulty: Medium
+Platform: any
+Urgency: Wishlist
+Description: DVTS support
+DV over RTP support. See <a href="http://www.sfc.wide.ad.jp/DVTS/">DVTS homepage</a>
 Status: Todo
 
-Task: 0x19
+Task
 Difficulty: Hard
-Urgency: Normal
-Description: Support MP1 and MP3
- The vlc does not support all MPEG1 audio formats yet, nor
- does it support MPEG1/2 layer 3.
+Platform: WinCE
+Urgency: Wishlist
+Description: WinCE port finalizing
+The WinCE port needs a little maturing and optimization.
+Status: Assigned to gibalou
 
-Task: 0x18
-Difficulty: Guru
+Task
+Difficulty: Medium
 Urgency: Wishlist
-Description: Split interface/video_output
- The interface and the vout modules are too dependant, which
- makes it impossible to run the Glide output with the Gnome
- interface for instance. This will require a major rewrite of
- the interface, and a solid knowledge of how the vlc internals
- work.
+Platform: any
+Description: Full blown OSD system 
+ In the line of freevo etc.
+ (Checkout the correct svn branch)
+Status: 80% done. Assigned to thedj, jpsaman and yoann
+
+Task
+Difficulty: Easy
+Urgency: Wishlist
+Platform: any
+Description: GSM decoder
+The <a href="http://kbs.cs.tu-berlin.de/~jutta/toast.html">Toast</a> implementation.
 Status: Todo
 
-Task: 0x17
-Difficulty: Hard
-Urgency: Normal
-Description: Add 24bpp YUV
- There is no 24bpp support yet. Add it, either in MMX
- or in C.
+Task
+Difficulty: Easy
+Urgency: Wishlist
+Platform: any
+Description: AMR decoder
+We will need to find one that isn't based on the reference code.
 Status: Todo
 
-Task: 0x16
-Difficulty: Medium
-Urgency: Important
-Description: Fix 8bpp YUV
- The 8bpp YUV function is broken, there is some serious
- alpha blending, and it scales pretty badly. Fix it.
-Status: Done 14 Aug 2000 (sam)
+Task
+Difficulty: Easy
+Urgency: Wishlist
+Platform: any
+Description: MusePack decoder
+Need I say more? <a href="http://www.hydrogenaudio.org/index.php?showtopic=21775&">MPCdec</a>. We are awaiting MPC 7.5 or 8.0 specification which should split the codec from the fileformat.
+Status: Todo
 
-Task: 0x15
-Difficulty: Medium
-Urgency: Critical
-Description: Fix input_file exit
- input_file does not exit cleanly when the file is finished,
- which makes it impossible to quit the vlc. Fix it.
+Task
+Difficulty: Easy
+Urgency: Wishlist
+Platform: any
+Description: APE decoder
+Need I say more? <a href="http://www.monkeysaudio.com/">Monkeys Audio (APE)</a> website. This codec is currently not GPL compatible. We will have to await a GPL compatible implementation of this.
 Status: Todo
 
-Task: 0x14
-Difficulty: Guru
+Task
+Difficulty: Easy
 Urgency: Wishlist
-Description: Debug MPEG1 video
- The MPEG1 support has been done, but it still crashes.
+Platform: any
+Description: flash video playing/streaming
+A flash video muxer and demuxer. FFMPEG can already output flash video. a waste not to make use of that capability.
 Status: Todo
 
-Task: 0x13
-Difficulty: Hard
+Task
+Difficulty: Medium
 Urgency: Wishlist
-Description: Support MPEG1 timecodes
- The vlc can parse an MPEG1 system stream, but the parsed
- PCR values do not seem to be correct. Check what's wrong.
+Platform: any
+Description: Closed Captions/Teletext support
+In order to conform to international regulations, VLC needs to be able to decode the closed captions in TV, DVD, DVB and HDTV video. V4L has a CC api, DVD and HDTV usually have them in a seperate stream.<br />
+ - Use ZVBI library for VBI decoding and image generation<br />
+ - ESTI EN 300 472 for EBU teletext support in DVB<br />
+Perhaps look at Xawtv, dvbtext and other vbi, vtx systems.
 Status: Todo
 
-Task: 0x12
+Task
 Difficulty: Medium
-Urgency: Important
-Description: Fix 32bpp MMX YUV
- The MMX 32bpp YUV function is buggy.
-Status: Done 13 Aug 2000 (sam)
+Urgency: Wishlist
+Platform: any
+Description: DVB info in NIT
+We need to get the information of a DVB stream that are in the NIT (current program, next program, ...)
+Status: Todo
 
-Task: 0x11
-Difficulty: Hard
-Urgency: Normal
-Description: Optimize YUV scaling
- The YUV scaling method does not seem very efficient. Perhaps
- some CPU cycles can be gained by saving some buffers.
+Task
+Difficulty: Medium
+Urgency: Wishlist
+Platform: any
+Description: IceCast/ShoutCast serving
+This would be a nice thing for the sake of completeness of VLC's streaming capabilities.
 Status: Todo
 
-Task: 0x10
+Task
 Difficulty: Easy
+Urgency: Wishlist
+Platform: any
+Description: More/Better Picture filters
+There are several picture filters (blend, scale), but we can use more (screenshot, crop, move..) We probably need on the fly picture filter insertion as well. (and also not-on-the-fly)<br />
+- ideas for new filters are a greenwall filter, and a goom filter that mixes goom effects into the vout.
+Status: Todo
+
+Task
+Difficulty: Guru
 Urgency: Normal
-Description: vlc icon
- The vlc needs an icon. It should render well in 48x48 but
- can be any size.
+Platform: any
+Description: Vout redesign
+- vout needs distinct splitting into vout_core, vout_window, pic_filter, vout_filter<br />
+- needs 'assistance' vout windows (clone filters, goom) etc.<br />
+- 4:3, 16:9, freeform Aspect Ratio<br />
+- cropping and padding (do at OS level, but provide a core call to set it up and configure).<br />
+- OSD at window resolution instead of video res (secondary vout channel)<br />
+- a OSD needs to be bound to a vout stream (no subs on goom vout)<br />
+- Use OS native calls where appropriate, with 'C' fallbacks. (OpenGL, Quartz, DirectX already has many of the funtionalities we seek and sometimes they are a lot faster too).<br />
+- Allow a vout to reuse a window by resizing it (instead of closing and opening).
+- better hotkeys integration
+Status: Todo
+
+Task
+Difficulty: Medium
+Urgency: Wishlist
+Platform: any
+Description: Subtitle work
+- better SSA support with postioning, colors etc.<br />
 Status: Todo
 
-Task: 0x0f
+Task
 Difficulty: Easy
-Urgency: Normal
-Description: Better black&white support
- When in B&W mode, the chroma part of pictures is decoded,
- but it would be more efficient not to decode at all when
- the video decoder knows it does not need to.
+Urgency: Wishlist
+Platform: any
+Description: Automatic charset recognition
+See if we can use <a href="http://trific.ath.cx/software/enca/">ENCA</a> for automatic charset recognition on subtitle files. Might simplify usage of sub files a lot? Might require complete file to be parsed by ENCA before good result is returned?
 Status: Todo
 
-Task: 0x0e
+Task
+Difficulty: Guru
+Urgency: Wishlist
+Platform: Mac OS X
+Description: skins2
+Port VLC skins to Objective C++ and OSX. Also requires the intf to be a dialog provider. There is already some code in the VLC sourcetree.<br />
+Hints:<br />
+ - In a first step, the need for a dialog provider can be easily omitted.<br />
+ - In theory, only a small amount of classes (6 or so) must be written for OS X, implementing predefined interfaces.<br />
+ - The code of <a href="http://www.fltk.org">FLTK</a> could be really helpful to identify the correct functions and see how to use them.
+Status: Todo
+
+Task
+Difficulty: Hard
+Urgency: Wishlist
+Platform: any
+Description: informing user.
+Implement a system to: <br />
+ - Alert the user of critical errors (cannot play file). Should be blocking. <br />
+ - Ask the user a question (Are you sure? or Try to Fix index of avi? or Overwrite File?)<br />
+ - Inform the user, without disturbing him. (Buffering stream). This might require a displaytime or something. Because how do we know how long this information should be displayed? Also think of buffering 0-100%<br /> 
+ - present a user/passwd dialog when we get an authentication failure on a stream.<br />
+Implementation ideas: <br />
+ - via variables and callbacks. How to give answers back ?<br />
+ - via p_intf->pf_* functions.<br />
+Status: Todo
+
+Task
+Difficulty: Hard
+Urgency: Wishlist
+Platform: any
+Description: Full H323 Videoconferencing
+VLC isn't really suited for this yet, because it introduces quite large latencies. This should be fixed before the H323 can ever come close to working in VLC.
+We also will need SIP support. A first implementation using a custom protocol is being made. 
+Status: Todo
+
+Task
+Difficulty: Hard 
+Urgency: Wishlist
+Platform: Mac OS X
+Description: QuickTime capturing
+Allow capturing from QuickTime Firewire, USB and PCI devices.
+Possibly see: <a href="http://bugzilla.videolan.org/cgi-bin/bugzilla/show_bug.cgi?id=416">Bug 416</a>
+Status: Todo
+
+Task
 Difficulty: Easy
 Urgency: Wishlist
-Description: Rename channel names
- Channels should start from 1 (not 0) like on a VCR or TV,
- and Channel 0 should be renamed to "Playlist" or similar.
+Platform: any
+Description: export paramaters of an input
+ Export the Media Info of a file/source to a standard xml file for use by other applications. Possibly combine with file "probe'ing".<br />
+ - AR<br />
+ - size<br />
+ - bitrate<br />
+ - resolution<br />
+ - codecs, etc.<br />
 Status: Todo
 
-Task: 0x0d
-Difficulty: Medium
-Urgency: Important
-Description: Framebuffer exit bug
- When the vlc abnormally exits in framebuffer mode, it leaves
- the console in an unusable state. This does not happen on
- the Matrox framebuffer, but it does on the VESA one.
+Task
+Difficulty: Hard
+Urgency: Wishlist
+Platform: any
+Description: statistics
+Count packetloss, bandwith usage and fps for statistics.<br />
 Status: Todo
 
-Task: 0x0c
+Task
 Difficulty: Hard
-Urgency: Critical
-Description: Fix synchro
- The synchronization algorithm sucks a bit. While it is
- quite efficient on frameskipping on slow machines, it
- is not smart enough on fast machines and does not detect
- when it has enough time for a frame. Perhaps a better
- handling of the dates might help.
+Urgency: Wishlist
+Platform: any
+Description: http cookies
+For protected VoD  (http://a-select.surfnet.nl)
 Status: Todo
 
-Task: 0x0b
-Difficulty: Medium
-Urgency: Important
-Description: Allow to force synchro
- Add a --force-synchro option to bypass the auto-adaptative
- algorithm present in the vlc. Options should allow displaying
- only I frames, only I and P, or all frames, or some more
- fancy stuff such as half the Bs.
-Status: Done 8 Aug 2000 (sam)
-
-Task: 0x0a
-Difficulty: Medium
-Urgency: Important
-Description: Do separate packages
- The plugins can be compiled with specific libraries, such
- as Gnome, GGI, Esound. Putting all of them in the same
- package would require a lot of useless dependencies, thus
- one should do separate packages: a core "vlc" package, and
- "vlc-fb", "vlc-ggi", "vlc-esd" packages depending on the
- core package.
-Status: Done 15 Aug 2000 (sam)
-
-Task: 0x09
+Task
 Difficulty: Easy
-Urgency: Normal
-Description: Get rid of dumb vlc aliases
- When compiling the vlc, some symlinks to the main app
- are created, such as gvlc, ggivlc, etc. Actually this
- might confuse the user, so they should be removed,
- except perhaps gvlc and fbvlc which follow a usual
- naming scheme.
-Status: Done 8 Aug 2000 (sam)
-
-Task: 0x08
+Urgency: Wishlist
+Platform: any
+Description: Progressive download playing
+Allow application/vlc mimetype to launch VLC instead of plugin for video file.
+Allows for Progressive download to TEMP folder from browsers. VLC would play the file in the TEMP.
+Status: Todo
+
+Task
+Difficulty: Medium
+Urgency: Wishlist
+Platform: any
+Description: rendezvous announces
+Apple released the rendezvous code under a Open Source license now. perhaps it can be used. (It's OpenTalk now btw).<br />
+Note: the licence is probably not DFSG compatible. Alternative mDNS implementations exist<br />
+DMAP protocol announce for videos.
+Status: Partly done (DAAP only)
+
+Task
 Difficulty: Easy
-Urgency: Important
-Description: Get rid of floating instructions
- Mixing floating instructions and MMX is seldom a good idea,
- it might be interesting to remove all floating instructions
- in a single thread. The audio decoders are of course not
- concerned by this task.
+Urgency: Wishlist
+Platform: any
+Description: SDL vout cleaning
+The SDL vout hasn't been updated for a long while. It needs some cleaning up. New hotkeys support, better resizing, alignment etc. Even though SDL isn't used much, this vout shouldn't disappear, because it is a crossplatform API.
 Status: Todo
 
-Task: 0x07
+Task
+Difficulty: Easy
+Urgency: Wishlist
+Platform: any
+Description: Electronic Program Guide
+Integrate a EPG system into VLC.
+Status: Todo (CryHavoc)
+
+Task
 Difficulty: Hard
-Urgency: Critical
-Description: Fix VDEC_SMP segfaults
- When compiled to support SMP, the vlc segfaults. The synchro
- code lacks locks, but there might be bugs elsewhere as well.
+Urgency: Wishlist
+Platform: any
+Description: a Time Shifting module
+This module should create TiVo like capabilities for VLC.
+Status: Todo (CryHavoc)
+
+Task
+Difficulty: Medium
+Urgency: Wishlist
+Platform: any
+Description: UDP packet reordering
+Currently we ignore every packet that is too late and just wait for a fresh one.
+It would be nice to be able to reorder the packets in the buffer to prevent degredation of the signal.
 Status: Todo
 
-Task: 0x06
-Difficulty: Guru
-Urgency: Important
-Description: Optimize video parser
- The video parser has some speed issues currently unexplained:
- even though most functions are inlined, it keeps eating more
- CPU than it should. This has to be investigated.
+Task
+Difficulty: Easy
+Urgency: Wishlist
+Platform: any
+Description: Make vlm more user friendly (setup etc)
+vlm is kinda a pain to setup if you are not entirely experienced with A/V and streaming or VLC for that matter.<br />
+It can be heavily improved by updating the vlm http interface. Using seperate fields for the need paramters of a schedule/source.<br />
+Also, GUI implementation.
 Status: Todo
 
-Task: 0x05
+Task
 Difficulty: Easy
-Urgency: Important
-Description: vlms backport
- The vlc uses the same file input code as the vlms (VideoLAN
- Mini Server) which has been much improved. Someone should
- port modifications done to the vlms back to the vlc.
+Urgency: Wishlist
+Platform: any
+Description: Protocol rollover
+It would be cool if VLC supported something like a protocol rollover mechanism, much like WM server has as well. Multicast, UDP, TCP, HTTP etc.
+However, how spec compliant can this be?<br />
+We require a timeout on udp connecting. Beyond this a playlist file can be used to do a form of protocol rollover when one of the links fails ( or implement this in the new style playlist system [only advance index on failure]).
 Status: Todo
 
-Task: 0x04
+Task
+Difficulty: Hard
+Urgency: Wishlist
+Platform: any
+Description: NAT issues
+Find a way to deal with clients behind a NAT. Multicast and RTSP work 'poorly' in these setups. NATP2P, STUN, UDP hole punching, other techniques ????
+Protocol rollover can be a solution for a lot of these issues.
+Use full DNS names in SDP
+Status: Todo
+
+Task
 Difficulty: Medium
-Urgency: Normal
-Description: Get rid of vlc.channels
- The file vlc.channels should be removed and information
- found in it put either into ~/.vlcrc or in another rc
- file. Note that this file can be modified by the vlc.
+Urgency: Wishlist
+Platform: any
+Description: Gstreamer and Helix API integration
+See if you can support GStreamer and helix plugins in one way or another.
+Status: Todo
+
+Task
+Difficulty: Easy
+Urgency: Wishlist
+Platform: any
+Description: Gnome-vfs support
+For integration with smb, sftp and other file sharing/mounting methods
 Status: Todo
 
-Task: 0x03
+Task
 Difficulty: Hard
-Urgency: Important
-Description: Playlist API
- Currently only files given in the command line are played,
- one after the other. We need a smarter way to handle this,
- through AddFile(), MoveFile(), etc. functions. input_file
- has to be modified to support this as well.
+Platform: any
+Urgency: Wishlist
+Description: Matroska muxer
+ We need one :)
 Status: Todo
 
-Task: 0x02
+Task
 Difficulty: Medium
-Urgency: Normal
-Description: Better Gnome interface
- The Gnome interface has many stubs and is actually rather
- unfunctional. Someone should make the buttons work when
- the appropriate hooks exist.
+Platform: any
+Urgency: Wishlist
+Description: TTA decoder
+  TTA is said to be a fast en good lossless codec. Opensource library
+  availabe: http://tta.corecodec.org/
 Status: Todo
 
-Task: 0x01
+Task
+Difficulty: Medium
+Platform: any
+Urgency: Wishlist
+Description: Option to automatically deinterlace when needed
+  Mkv stores wether a video track is interlaced in the traxk descriptor
+  libmpeg2 etc output this information in the header AND on a per-picture basis
+Status: Todo
+
+Task
+Difficulty: Easy
+Platform: any
+Urgency: Wishlist
+Description: UDF decoder
+Support for the new XML based subtitle format called UDF
+Status: Todo
+
+Task
 Difficulty: Hard
+Platform: any
 Urgency: Wishlist
-Description: MGA YUV
- The Matrox acceleration for the vlc does not work yet,
- though there are initialization routines in the code.
+Description: Faster deinterlacing
+Our deinterlacers are relatively slow. DScaler has the best Soft deinterlacers out there.
+Unfortunatly it is very Win32 focused.
 Status: Todo
 
-Task: 0x00
+Task
 Difficulty: Medium
+Platform: any
+Urgency: Wishlist
+Description: More service discovery modules
+- Port UPnP support from http://sourceforge.net/project/showfiles.php?group_id=89768 <br />
+- libhal based discovery (should be able to find cd, dvd, capture cards, etc etc <br />
+- Perhaps a generalized webpage parser (use user supplied templates to parse
+   streams from popular websites )
+Status: Todo
+
+Task
+Difficulty: Easy
+Platform: win32
 Urgency: Wishlist
-Description: Splash screen
- The vlc needs a splash screen with a vlc logo, instead of
- the "waiting for stream" message.
+Description: file filters in the open dialog
+Have default filters in the open dialog. like:
+All files<br />
+Sound Files( .mp3, .ogg, .wav, .m4a, .m4p)<br />
+Video Files( .avi, .mkv, .mov, .mpg, .m2v, etc)<br />
+Subtitle Files( .idx, .sub, .utf, .srt)<br />
 Status: Todo
 
 
+# Do not remove me
+Task