X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=TODO;h=fff3850d0c87c5ea7ae07afca3e669ff7c42947a;hb=6116299e395a1d8a27c1a7280749a0a7d59d0d66;hp=b1f3bec63b70eca5766d25c49fbf8cc13e7835d4;hpb=8d211185e6374d374382a0ab979e6c41fd7dd200;p=vlc diff --git a/TODO b/TODO index b1f3bec63b..fff3850d0c 100644 --- a/TODO +++ b/TODO @@ -7,7 +7,187 @@ # # Urgency values: Wishlist, Normal, Important, Critical -Task: +Task: 0x5e +Difficulty: Hard +Urgency: Wishlist +Description: All-in-one interface window + Find a way for the interface plugin to provide video output capabilities + and have it display the stream in the same window. +Status: Todo + +Task: 0x5d +Difficulty: Guru +Urgency: Normal +Description: Win32 port + Win32 is probably the most common desktop platform, we should support it + as well. Besides, most students at Centrale use Windows and VideoLAN was + originally designed for them. +Status: Todo + +Task: 0x5c +Difficulty: Normal +Urgency: Wishlist +Description: Infrared support + Write a plugin which listens to the infrared port and sends appropriate + commands to the application. This can either be an interface plugin, or, + preferably, a new kind of interface-agnostic "command" plugin. +Status: Todo + +Task: 0x5b +Difficulty: Hard +Urgency: Critical +Description: Fix the FreeBSD port + The FreeBSD port of vlc doesn't run, probably because of a pthread + issue. This should be investigated. +Status: Todo + +Task: 0x5a +Difficulty: Hard +Urgency: Wishlist +Description: Share stream information between vlc and vls + vls should send misc TS packets to let us know what the stream PID + contain, such as the language, or the subtitle palette. +Status: Todo + +Task: 0x59 +Difficulty: Hard +Urgency: Important +Description: Cope with vls/vlc clock jitter + The internal clocks of the server and the client are not assured to be + in perfect synchronization, which may be annoying when playing a movie. + Reduce this jitter by using a well-chosen filter. +Status: Todo + +Task: 0x58 +Difficulty: Normal +Urgency: Critical +Description: Language and subtitles selection in network input + The vls will probably have to be modified as well. +Status: Todo + +Task: 0x57 +Difficulty: Guru +Urgency: Low +Description: Full DVD navigation + Once the core DVD navigation features are ready (see item 0x52), port the + interface and video output modules so that they can handle it. +Status: Todo + +Task: 0x56 +Difficulty: Important +Urgency: Normal +Description: XVideo video output + XVideo is reported to work a bit better than the SDL wrapper on some + configurations. Modify the X11 plugin so that it supports XVideo. +Status: Done 1 Apr 2001 (shane) + +Task: 0x55 +Difficulty: Hard +Urgency: Critical +Description: Video output IV + The new video output should support subtitles both in software and hardware + YUV (see item 0x4d). One should also care about XVideo buffers, there is a + way to directly decode into them, which would improve performances. +Status: Todo + +Task: 0x54 +Difficulty: Hard +Urgency: Wishlist +Description: Hardware AC3 decoding + Some soundcards directly grok Dolby AC3. This would spare a lot of CPU time. +Status: Todo + +Task: 0x53 +Difficulty: Normal +Urgency: Critical +Description: Fix AC3 decoder + The AC3 decoder still has a few quality issues; fix them, and try to add + MMX support to it as well. +Status: Todo + +Task: 0x52 +Difficulty: Guru +Urgency: Low +Description: DVD navigation core features + We need an interpreter for the DVD virtual machine to make it easier to + browse DVDs later. +Status: Todo + +Task: 0x51 +Difficulty: Easy +Urgency: Normal +Description: Better subtitle color handling + The subtitle palette is pretty ugly for the moment, since we don't parse + the color information. Find it in the IFO file and pass the information to + the video output. +Status: Todo + +Task: 0x50 +Difficulty: Hard +Urgency: Critical +Description: Multi-angle multi-language support + Some DVDs have several languages encoded in the same video stream, we + need to properly parse them. +Status: Todo + +Task: 0x4f +Difficulty: Hard +Urgency: Critical +Description: Fix all known DVD playback issues + A few DVDs are still reported not to work at all. Try to find what is + causing this, have a more robust DVD input, and list all discs reported + to work flawlessly to prevent bug regression. +Status: Todo + +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 @@ -15,9 +195,6 @@ Description: Fix audio synchro sizes. See what's wrong and fix it. Status: Todo -# input-II tasks, from the least important to the most important -# (backwards order) : - Task: 0x47 Difficulty: Hard Urgency: Normal @@ -29,7 +206,7 @@ Difficulty: Hard Urgency: Normal Description: Make input plugins dynamically loadable With a probe() function, and stuff... -Status: Todo +Status: Done 7 Feb 2001 (sam) Task: 0x45 Difficulty: Guru @@ -37,7 +214,7 @@ 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 +Status: Done 8 Feb 2001 (stef) Task: 0x44 Difficulty: Guru @@ -45,7 +222,7 @@ 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 +Status: Done 8 Feb 2001 (Meuuh) Task: 0x43 Difficulty: Medium @@ -54,7 +231,7 @@ 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 +Status: Done 7 Mar 2001 (henri) Task: 0x42 Difficulty: Medium @@ -62,7 +239,7 @@ 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: Todo +Status: Done 23 Jan 2001 (henri) Task: 0x41 Difficulty: Easy @@ -70,7 +247,7 @@ Urgency: Important Description: Write input_programs.c We need a centralized manner of creating new programs, es, and spawning new decoders. -Status: Todo +Status: Done 20 Dec 2000 (Meuuh) Task: 0x40 Difficulty: Medium @@ -79,7 +256,7 @@ 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: Todo +Status: Done 20 Dec 2000 (Meuuh) Task: 0x3f Difficulty: Easy @@ -89,9 +266,7 @@ Description: Enhance intf_*Msg 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: Todo - -# end of input-II tasks, thanks for being with us +Status: Done 20 Dec 2000 (sam) Task: 0x3e Difficulty: Guru @@ -138,7 +313,7 @@ Description: Support SDL Overlay conversion, scaling and displaying. Using them will require a partial rewrite of the video_output way of handling rendering and displaying. -Status: Todo +Status: Done 18 Dec 2000 (bozo and oct) Task: 0x39 Difficulty: Medium @@ -156,7 +331,7 @@ Description: Make aout eat less CPU 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 (henri) Task: 0x37 Difficulty: Guru @@ -170,7 +345,7 @@ Status: Done 27 Aug 2000 (Meuuh) Task: 0x36 Difficulty: Medium Urgency: Normal - Description: +Description: Enhance the interface . Finish the new keyboard input interface to support interfaces that allow modifiers. This will allow the SDL to run properly. @@ -190,7 +365,7 @@ Description: Fix plugins namespace problem 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 @@ -199,7 +374,7 @@ Description: Fix plugin autoloading 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 @@ -208,7 +383,7 @@ Description: Real plugin API 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 @@ -217,7 +392,7 @@ Description: Enable compiled-in plugins Some plugins may have their place inside the main program, such as the dummy plugin, or the beos plugin under BeOS. We should allow to link them with the main app. -Status: Todo +Status: Done 15 Apr 2001 (sam) Task: 0x31 Difficulty: Easy @@ -235,7 +410,7 @@ Description: SPU error recovery The SPU decoder does not behave very well when a packet is missed or when it gets the stream at the middle of an SPU packet. Make it more error- friendly. -Status: Todo +Status: Done 26 Feb 2001 (sam) Task: 0x2b Difficulty: Hard @@ -244,27 +419,17 @@ 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 +Status: Done 5 Mar 2001 (sam) Task: 0x2a -Difficulty: Guru -Urgency: Critical -Description: Buy a new brain for Sam - Sam likes to show that he is a good developer, and for a good developer - hexadecimal notation really rules, though nobody really needs it. In this - TODO list, Sam has forgotten that 0x29 + 1 != 0x30, but 0x2a ! So, please - do something, and send your donations to sam@via.ecp.fr. Thanks for him. -Status: Todo - -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. -Status: Done ( henri ) +Status: Done (henri) -Task: 0x28 +Task: 0x29 Difficulty: Guru Urgency: Wishlist Description: Support for RTP @@ -273,7 +438,7 @@ 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 @@ -282,22 +447,22 @@ 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 @@ -323,7 +488,7 @@ 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. -Status: Todo +Status: Done 1 Apr 2001 (shane) Task: 0x22 Difficulty: Medium @@ -342,7 +507,7 @@ Description: Implement pause 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 @@ -351,7 +516,7 @@ 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. -Status: Todo +Status: Done because of Input II on 5 Dec 2000 (Meuuh) Task: 0x1f Difficulty: Hard @@ -360,7 +525,7 @@ 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. -Status: Todo +Status: Done 20 Jan 2001 (stef) Task: 0x1e Difficulty: Hard @@ -393,17 +558,16 @@ Urgency: Wishlist 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 @@ -411,6 +575,7 @@ 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. +Status: Done 18 Dec 2000 (sam) but see 0x25 Task: 0x18 Difficulty: Guru @@ -421,7 +586,7 @@ Description: Split interface/video_output interface for instance. This will require a major rewrite of the interface, and a solid knowledge of how the vlc internals work. -Status: Todo +Status: Done 11 Feb 2001 (sam) Task: 0x17 Difficulty: Hard @@ -460,7 +625,7 @@ 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. -Status: Todo +Status: Done because of Input II on 5 Dec 2000 (Meuuh) Task: 0x12 Difficulty: Medium @@ -483,7 +648,7 @@ Urgency: Normal Description: Draw a vlc icon The vlc needs an icon. It should render well in 48x48 but can be any size. -Status: Todo +Status: Done 11 Apr 2001 (sam) Task: 0x0f Difficulty: Easy @@ -492,7 +657,7 @@ 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. -Status: Todo +Status: Done 25 Oct 2000 (reno) Task: 0x0e Difficulty: Easy @@ -509,7 +674,7 @@ 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. -Status: Todo +Status: Done 18 Feb 2001 (sam) Task: 0x0c Difficulty: Hard @@ -563,7 +728,7 @@ Description: Get rid of floating instructions 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 @@ -580,7 +745,7 @@ 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. -Status: Todo +Status: Done because of Input II on 5 Dec 2000 (Meuuh) Task: 0x05 Difficulty: Easy @@ -589,7 +754,7 @@ Description: Backport vlms input 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 @@ -608,7 +773,7 @@ Description: Playlist API 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 @@ -617,7 +782,7 @@ 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. -Status: Todo +Status: Done 12 Feb 2001 (sam) Task: 0x01 Difficulty: Hard @@ -635,5 +800,3 @@ Description: Splash screen the "waiting for stream" message. Status: Todo - -