#
# Urgency values: Wishlist, Normal, Important, Critical
+Task: 0x4e
+Difficulty: Hard
+Urgency: High
+Description: Write stream zones support
+ For random access we need to know where stream descriptors are valid
+ and reside (essentially DVD plugin). -> Meuuh
+Status: Todo
+
+Task: 0x4d
+Difficulty: Hard
+Urgency: Normal
+Description: Write subtitles and stream information in YUV coordinates
+ ... so that they can be displayed even in "overlay" mode.
+Status: Todo
+
+Task: 0x4c
+Difficulty: Medium
+Urgency: Normal
+Description: Update documentation
+ The input structures have undergone a major restructuration with
+ input-II. It might be a good idea to reflect thoses changes in the
+ documentation.
+Status: Todo
+
+Task: 0x4b
+Difficulty: Guru
+Urgency: Low
+Description: Write AVI input plugin
+ .avi files can use MPEG codec, if this is the case it shouldn't be
+ hard to read those files -> Meuuh
+Status: Todo
+
+Task: 0x4a
+Difficulty: Medium
+Urgency: Normal
+Description: Write ES input plugin
+ We need to be able to read .mpg video streams, or .mp* audio streams.
+ More information -> Meuuh
+Status: Todo
+
+Task: 0x49
+Difficulty: Easy
+Urgency: Important
+Description: Write a new buffer allocator
+ Avoid malloc()s by reusing the recently released packets. More
+ information -> Meuuh
+Status: Todo
+
+Task: 0x48
+Difficulty: Medium
+Urgency: Critical
+Description: Fix audio synchro
+ With some audio plugins, the audio stream is late because of buffer
+ sizes. See what's wrong and fix it.
+Status: Todo
+
+Task: 0x47
+Difficulty: Hard
+Urgency: Normal
+Description: Make decoders dynamically loadable
+Status: Todo
+
+Task: 0x46
+Difficulty: Hard
+Urgency: Normal
+Description: Make input plugins dynamically loadable
+ With a probe() function, and stuff...
+Status: Done 7 Feb 2001 (sam)
+
+Task: 0x45
+Difficulty: Guru
+Urgency: Normal
+Description: Write DVD plugin
+ We need a DVD plugin which read the device directly, calls DeCSS
+ (optional) and parse .ifo files.
+Status: Todo
+
+Task: 0x44
+Difficulty: Guru
+Urgency: Important
+Description: Write input_ext-intf.c
+ This file will provide functions which allow the interface to change
+ the pace of reading and change the position in the file.
+Status: Todo
+
+Task: 0x43
+Difficulty: Medium
+Urgency: Important
+Description: Write TS support
+ The parser has already been back-ported, but it still lacks the
+ PSI parser, and currently the functions to read from the network
+ are yet to be written.
+Status: Todo
+
+Task: 0x42
+Difficulty: Medium
+Urgency: Important
+Description: Write input_netlist.c
+ We need an interface to create fixed-size packets (for instance
+ 188 bytes or 2 kB) and avoid using the system malloc().
+Status: Done 23 Jan 2001 (henri)
+
+Task: 0x41
+Difficulty: Easy
+Urgency: Important
+Description: Write input_programs.c
+ We need a centralized manner of creating new programs, es, and
+ spawning new decoders.
+Status: Done 20 Dec 2000 (Meuuh)
+
+Task: 0x40
+Difficulty: Medium
+Urgency: Important
+Description: Fix the PS plugin
+ The PS plugin should be able to recover from packet loss, to
+ read MPEG-1 .mpg files, and to pre-parse the stream (if possible)
+ to build the ES table. Check what's wrong and fix it. Now.
+Status: Done 20 Dec 2000 (Meuuh)
+
+Task: 0x3f
+Difficulty: Easy
+Urgency: Critical
+Description: Enhance intf_*Msg
+ The intf_*Msg functions could be more clever : add "mymodule
+ warning/error:" and \n automatically. The new input already
+ uses such a behaviour, so we must hurry. It might be necessary
+ to modify all messages in all modules...
+Status: Done 20 Dec 2000 (sam)
+
+Task: 0x3e
+Difficulty: Guru
+Urgency: Critical
+Description: Fix backwards moves
+ Sometimes the frames seem to go backwards for a short period of
+ time. This is due to the output methods and is known to happen
+ with the x11 and SDL plugins.
+Status: Done 27 Nov 2000 (Meuuh)
+
+Task: 0x3d
+Difficulty: Easy
+Urgency: Normal
+Description: Have more statistics messages displayed
+ The vlc has structures to keep track of the interesting
+ events, but there is no way to print these structures. In stats
+ mode, we should print these structures regularly, or at quit
+ time (whichever is the more convenient).
+Status: Done 27 Nov 2000 (Meuuh)
+
+Task: 0x3c
+Difficulty: Easy
+Urgency: Important
+Description: Separate optimizations from debug mode
+ We sometimes want to have the debug mode (which writes an
+ interesting log of debug messages) along with the compiler
+ optimizations (which allow decoding of more than 2 fps).
+Status: Done 18 Nov 2000 (Meuuh)
+
+Task: 0x3b
+Difficulty: Easy
+Urgency: Important
+Description: Write intf_WarnMsg and intf_StatMsg
+ We have intf_ErrMsg to display fatal errors, but warnings are
+ drowned in an ocean of unreadable intf_DbgMsg. Same for
+ statistics messages.
+Status: Done 23 Nov 2000 (Stef)
+
+Task: 0x3a
+Difficulty: Hard
+Urgency: Important
+Description: Support SDL Overlay
+ The SDL livrary has routines to use the video board to do the YUV
+ conversion, scaling and displaying. Using them will require a
+ partial rewrite of the video_output way of handling rendering
+ and displaying.
+Status: Done 18 Dec 2000 (bozo and oct)
+
+Task: 0x39
+Difficulty: Medium
+Urgency: Wishlist
+Description: Rewrite the font display routines
+ The current font display routines aren't powerful enough. There
+ should be a way to display a big String at once, without needing
+ to compute the size of the string and its coordinates beforehand.
+Status: Todo
+
Task: 0x38
Difficulty: Medium
Urgency: Important
When the vlc is launched without a stream, the audio_output thread
eats all memory, probably because there is no msleep() when no data
is available in the audio_output queue.
-Status: Todo
+Status: Done one doesn't know when by some unknown stranger
Task: 0x37
Difficulty: Guru
Task: 0x36
Difficulty: Medium
Urgency: Normal
- Description: Finish the new keyboard input interface to support
- interfaces that allow modifiers. This will allow the SDL to run
- properly.
+Description: Enhance the interface
+ . Finish the new keyboard input interface to support
+ interfaces that allow modifiers. This will allow the SDL to run
+ properly.
+ . Here are some details:
+ Allow any interface to have its own set of keys:
+ - allow the 'discovery' of the main interface of the binding
+ created by each interface:
+ what key ("control-C", what action (INTF...))
+ - extend the interface by a specific struct (meta+modifier+ascii)
+ - implement an interface specific getKey function.
Status: Todo
Task: 0x35
When compiling a plugin, all symbols seem to be exported, while we
actually just need GetConfig and a few other things: the other
functions are accessed through function pointers.
-Status: Todo
+Status: Done 10 Jan 2001 (sam)
Task: 0x34
Difficulty: Medium
At the moment, plugins to be detected are hardcoded in the code. We
need a better method to get all available plugins, by listing all the
files in selected directories.
-Status: Todo
+Status: Done 7 Jan 2001 (sam)
Task: 0x33
Difficulty: Hard
We need some functions to register plugins, automatically detect which
ones are the most appropriate, as well as ways to express that plugin
A won't work unless plugin B is activated as well.
-Status: Todo
+Status: Done 7 Jan 2001 (sam)
Task: 0x32
Difficulty: Medium
friendly.
Status: Todo
-Task: 0x29
+Task: 0x2b
+Difficulty: Hard
+Urgency: Wishlist
+Description: Shoot the TODO list on the web site
+ The TODO list on the web site hasn't been updated for months. We may
+ wonder then why the hell to we put a TODO list on the web site ? Maybe
+ we'd better shoot it in the head, that would make its suffering end.
+Status: Todo
+
+Task: 0x2a
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.
-Status: Todo
+Status: Done ( henri )
-Task: 0x28
+Task: 0x29
Difficulty: Guru
Urgency: Wishlist
Description: Support for RTP
and 2508 (compressed RTP) can be interesting as well.
Status: Todo
-Task: 0x27
+Task: 0x28
Difficulty: Medium
Urgency: Wishlist
Description: Draw a font / support color fonts
font, or adding support for color fonts, would make us gain some time.
Status: Todo
-Task: 0x26
+Task: 0x27
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.
-Status: Todo
+Status: Done 18 Dec 2000 (sam)
-Task: 0x25
+Task: 0x26
Difficulty: Hard
Urgency: Wishlist
Description: MP3 support
The vlc cannot play MPEG1/2 layer 3 yet. It might be nice to fix that.
Status: Todo
-Task: 0x24
+Task: 0x25
Difficulty: Hard
Urgency: Normal
Description: Support for unencapsulated streams
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.
-Status: Todo
+Status: Done 8 Feb 2001 (Meuuh)
Task: 0x20
Difficulty: Hard
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.
-Status: Todo
+Status: Done because of Input II on 5 Dec 2000 (Meuuh)
Task: 0x1f
Difficulty: Hard
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.
-Status: Todo
+Status: Done 20 Jan 2001 (stef)
Task: 0x1e
Difficulty: Hard
Description: Modularize decoder
Make the decoder a plugin, so that two versions can coexist
without recompilation (MMX and non-MMX).
-Status: Todo
+Status: Done 16 Jan 2001 (sam)
Task: 0x1a
Difficulty: Easy
Urgency: Normal
Description: Make interface more responsive
-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.
-Status: Todo
+Status: Done 28 Aug 2000 (oct)
Task: 0x19
Difficulty: Hard
Description: Support MP1 and MP3
The vlc does not support all MPEG1 audio formats yet, nor
does it support MPEG1/2 layer 3.
+Status: Done 18 Dec 2000 (sam) but see 0x25
Task: 0x18
Difficulty: Guru
Urgency: Wishlist
Description: Debug MPEG1 video
The MPEG1 support has been done, but it still crashes.
-Status: Todo
+Status: Done 23 Oct 2000 (Meuuh)
Task: 0x13
Difficulty: Hard
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.
-Status: Todo
+Status: Done because of Input II on 5 Dec 2000 (Meuuh)
Task: 0x12
Difficulty: Medium
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.
-Status: Todo
+Status: Done 25 Oct 2000 (reno)
Task: 0x0e
Difficulty: Easy
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.
-Status: Todo
+Status: Done 13 Nov 2000 (Meuuh)
Task: 0x0b
Difficulty: Medium
it might be interesting to remove all floating instructions
in a single thread. The audio decoders are of course not
concerned by this task.
-Status: Todo
+Status: Done (sam)
Task: 0x07
Difficulty: Hard
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.
-Status: Todo
+Status: Done 16 Nov 2000 (Meuuh)
Task: 0x06
Difficulty: Guru
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.
-Status: Todo
+Status: Done because of Input II on 5 Dec 2000 (Meuuh)
Task: 0x05
Difficulty: Easy
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.
-Status: Todo
+Status: Done because of Input II on 5 Dec 2000 (Meuuh)
Task: 0x04
Difficulty: Medium
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.
-Status: Todo
+Status: Done 8 Feb 2001 (sam)
Task: 0x02
Difficulty: Medium
the "waiting for stream" message.
Status: Todo
-