]> git.sesse.net Git - vlc/blob - TODO
5e49fc100569e4cb7a9c4b3f939d203c0937b3a9
[vlc] / TODO
1 # VLC Todo
2 # Difficulty values: Easy, Medium, Hard, Guru
3 #
4 # Urgency values: Wishlist, Normal, Important, Critical
5
6 Task
7 Difficulty: Easy
8 Urgency: Critical
9 Platform: any
10 Description: World domination
11  We need to dominate the world
12 Status: Todo
13
14 Task
15 Difficulty: Easy
16 Platform: any
17 Urgency: Normal
18 Description: cli option for audio-channels
19 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.
20 Status: Todo
21
22 Task
23 Difficulty: Hard
24 Platform: any
25 Urgency: Wishlist
26 Description: Java wrapping/bindings
27 Allow java apps to use VLC perhaps? Several people have suggested something like this.
28 Status: Todo
29
30 Task
31 Difficulty: Easy
32 Platform: win32/macosx
33 Urgency: Normal
34 Description: OS contextual menu support
35 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.
36 Status: Todo
37
38 Task
39 Difficulty: Hard
40 Urgency: Critical
41 Platform: Mac OS X
42 Description: CoreAudio multichannel audio output.
43  Convert to <a href="http://www.mat.ucsb.edu:8000/CoreAudio/108">AUHAL</a> based sytem.
44 Still no info over S/PDIF output available.
45 Outstanding issues:<br />
46  - G5 S/PDIF not working<br />
47  - G5 PCM not working because S/PDIF is selected by default, even if not connected.<br />
48 Status: Todo
49
50 Task
51 Difficulty: Medium
52 Platform: Any
53 Urgency: Critical
54 Description: fix subtitle regressions
55 Investigate behaviour of subpictures when pausing.<br />
56 Status: Todo
57
58
59 Task
60 Difficulty: Easy to Difficult
61 Platform: Any
62 Urgency: Important
63 Description: Write some developer documentation
64 Perhaps a skeletal driver in each of the categories, what they need to
65 do, the design decisions, possibilities, or options that drivers in
66 a category might implement. If there is a canonical module for each 
67 category or modules that show the range of options that might be mentioned 
68 too.
69
70 Task
71 Difficulty: Easy
72 Platform: Mac OS X
73 Urgency: Normal
74 Description: Streaming wizard
75  Make a Streaming wizard for OS X
76 Status: Todo
77
78 Task
79 Difficulty: Easy
80 Platform: all
81 Urgency: Normal
82 Description: configure overview of modules
83  configure should report what it will and what it won't build, after it is done running.
84 Status: Todo
85
86 Task
87 Difficulty: Hard
88 Urgency: Normal
89 Platform: any
90 Description: Dual window in embed mode
91 Windows taskbar reports two windows in the video embed mode.
92 Status: Done
93
94 Task
95 Difficulty: Guru
96 Urgency: Normal
97 Platform: any
98 Description: Multi-input
99 * Many demuxers don't support it<br />
100 * Need GUI elements
101 Status: Assigned to fenrir
102
103 Task
104 Difficulty: Hard
105 Urgency: Normal
106 Platform: any
107 Description: make everything UTF-8 based
108  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.
109 Status: Todo
110
111 Task
112 Difficulty: Medium
113 Urgency: Normal
114 Platform: any
115 Description: Rewrite the SAP parser
116  The SAP parser is very dirty at the moment, and needs a complete rewrite.
117  - caching support<br />
118  - timeout support<br />
119  - add meta-information to playlist<br />
120  - session version support<br />
121 Status: Assigned to zorglub (80% done)
122
123 Task
124 Difficulty: Medium
125 Urgency: Normal
126 Platform: any
127 Description: Playlist II
128  A hierarchized playlist structure, eventually using a media library.
129 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 />
130 70% done.<br />
131 Todo:<br />
132 - Core support<br />
133    - *** Consider changing calls to playlist_Control into playlist_LockControl
134    - *   "Name finder"<br />
135    - *   "Protocol rollover" node<br />
136    - *** Item moving/copying facilities<br />
137    - *   Ability to save playlist on quit<br />
138    - ?   Represent navigation structure as "fake items" ?  <br />
139    -     Custom playlist format (http://xspf.xiph.org/ looks like a good idea)<br />
140 - Helper modules<br />
141    - **  ASX and B4S parsers (see below)<br />
142    - *   Rewrite SLP announce discovery<br />
143    - *   Live directory representation<br /> 
144 - *** Implement in Skins 2 interfaces<br />
145 - wx implementation :<br />
146    - **  Support item move/copy<br />
147    - *   Explorer view<br />
148    - *   Playlist preferences panel<br />
149    - **  Improve iteminfo dialog<br />
150 Status: Assigned to zorglub
151
152 Task
153 Difficulty: Easy
154 Urgency: Normal
155 Platform: any
156 Description: Improve bookmarks
157  - Put them in the input_item structure to have them persistent
158  - Add an input option to play the whole file but starting at a given bookmark
159 Status: Todo
160
161 Task
162 Difficulty: Easy
163 Urgency: Normal
164 Platform: any
165 Description: fix ASX playlist parser
166 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/
167 Status: Todo
168
169 Task
170 Difficulty: Medium
171 Urgency: Normal
172 Platform: any
173 Description: fix current muxers.<br />
174 Our avi muxer doesn't produce valid files<br />
175 Status: Todo
176
177 Task
178 Difficulty: Easy
179 Urgency: Normal
180 Platform: Mac OS X
181 Description: LPCM
182 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 />
183 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.
184 Status: Todo
185
186 Task
187 Difficulty: Hard
188 Urgency: Normal
189 Platform: Mac OS X
190 Description: New OS X preferences
191  New preferences for Mac OS X. Current not suited for Mac Users and several
192 Pref. elements are broken (hotkeys and int with string desc.).
193 Status: Todo
194
195 Task
196 Difficulty: Easy
197 Urgency: Normal
198 Platform: Mac OS X
199 Description: OS X bookmarks window
200 We miss a bookmarks window like the wxwidget one.
201 Status: Todo
202
203 Task
204 Difficulty: Medium
205 Urgency: Normal
206 Platform: Mac OS X
207 Description: Finish Mac Mozilla plugin
208 The Mac mozilla plugin needs some more work to be useable. Mostly done now,
209 needs testing.
210 Status: 90%
211
212 Task
213 Difficulty: Easy
214 Urgency: Normal
215 Platform: any
216 Description: Controlling the mozilla plugin
217 The mozilla plugin needs to be better controllable (via javascript). <br />
218 - retrieve variable values.<br />
219 - open VLC media player<br />
220 - default html page to control the plugin<br />
221 - XUL controls<br />
222 (80% done) see:<br />
223 <a href="http://sierra.via.ecp.fr/~zorglub/vlc/plugin/vlc.html">Javascript controls</a>
224 <a href="http://sierra.via.ecp.fr/~zorglub/vlc/xul/">XUL controls</a>
225 <a href="http://mplayerplug-in.sourceforge.net/">MPlayer Mozilla plugin</a>
226 Status: Assigned to zorglub
227
228 Task
229 Difficulty: Easy
230 Platform: Win32, Linux
231 Urgency: Normal
232 Description: equalizer fixes
233    - Gray out "reset to defaults" for audio equalizer when disabled<br />
234    - Once audio equalizer is disabled, it doesn't enable the first
235      try when you select from main menu. It only works a 2nd change
236      (enable flag not properly set?).
237  To have this work correctly, the best solution is to remove knowledge of
238  presets from the filter and give it to ... core ?
239 Status: Todo
240
241 Task
242 Difficulty: Medium
243 Platform: Win32, Linux
244 Urgency: Normal
245 Description: wxWidgets fixes
246  - Rename wxWindows to wxWidgets<br />
247  - Problems with slider (doesn't go where you click, keep updating while seeking
248 ?)<br />
249 Status: Todo
250
251 Task
252 Difficulty: Guru
253 Urgency: Normal
254 Platform: Mac OS X
255 Description: SVCD support
256 Support the cddax and vcdx modules for proper SVCD support. libcdio seems to work a tad flacky under OS X. Cause is unknown.
257 Status: Todo
258
259 Task
260 Difficulty: Hard
261 Urgency: Normal
262 Platform: any
263 Description: Stream text subtitles
264  Find a a way to stream text subtitles, in TS and in RTP.<br />
265  Needs testing and validating<br />
266  Currently broken.
267 Status: 65% (fenrir)
268
269 Task
270 Difficulty: Medium
271 Urgency: Normal
272 Platform: any
273 Description: RTSP server
274 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>.
275 Status: 90%
276
277 Task
278 Difficulty: Easy
279 Urgency: Normal
280 Platform: Win32/Linux
281 Description: V4L and dshow tuning support
282 We need an API that allows us to control the tuning of V4L and dshow TV cards.
283 Status: Todo (CryHavoc)
284
285 Task
286 Difficulty: Medium
287 Platform: any
288 Urgency: Wishlist
289 Description: RAR/ZIP/... access
290 An access module that would be able to uncompress compressed files.
291 Status: Todo
292
293 Task
294 Difficulty: Medium
295 Platform: any
296 Urgency: Wishlist
297 Description: DVTS support
298 DV over RTP support. See <a href="http://www.sfc.wide.ad.jp/DVTS/">DVTS homepage</a>
299 Status: Todo
300
301 Task
302 Difficulty: Hard
303 Platform: WinCE
304 Urgency: Wishlist
305 Description: WinCE port finalizing
306 The WinCE port needs a little maturing and optimization.
307 Status: Assigned to gibalou
308
309 Task
310 Difficulty: Medium
311 Urgency: Wishlist
312 Platform: any
313 Description: Full blown OSD system 
314  In the line of freevo etc.
315  (Checkout the correct svn branch)
316 Status: 80% done. Assigned to thedj, jpsaman and yoann
317
318 Task
319 Difficulty: Easy
320 Urgency: Wishlist
321 Platform: any
322 Description: GSM decoder
323 The <a href="http://kbs.cs.tu-berlin.de/~jutta/toast.html">Toast</a> implementation.
324 Status: Todo
325
326 Task
327 Difficulty: Easy
328 Urgency: Wishlist
329 Platform: any
330 Description: AMR decoder
331 We will need to find one that isn't based on the reference code.
332 Status: Todo
333
334 Task
335 Difficulty: Easy
336 Urgency: Wishlist
337 Platform: any
338 Description: MusePack decoder
339 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.
340 Status: Todo
341
342 Task
343 Difficulty: Easy
344 Urgency: Wishlist
345 Platform: any
346 Description: APE decoder
347 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.
348 Status: Todo
349
350 Task
351 Difficulty: Easy
352 Urgency: Wishlist
353 Platform: any
354 Description: flash video playing/streaming
355 A flash video muxer and demuxer. FFMPEG can already output flash video. a waste not to make use of that capability.
356 Status: Todo
357
358 Task
359 Difficulty: Medium
360 Urgency: Wishlist
361 Platform: any
362 Description: Closed Captions/Teletext support
363 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 />
364  - Use ZVBI library for VBI decoding and image generation<br />
365  - ESTI EN 300 472 for EBU teletext support in DVB<br />
366 Perhaps look at Xawtv, dvbtext and other vbi, vtx systems.
367 Status: Todo
368
369 Task
370 Difficulty: Medium
371 Urgency: Wishlist
372 Platform: any
373 Description: DVB info in NIT
374 We need to get the information of a DVB stream that are in the NIT (current program, next program, ...)
375 Status: Todo
376
377 Task
378 Difficulty: Medium
379 Urgency: Wishlist
380 Platform: any
381 Description: IceCast/ShoutCast serving
382 This would be a nice thing for the sake of completeness of VLC's streaming capabilities.
383 Status: Todo
384
385 Task
386 Difficulty: Easy
387 Urgency: Wishlist
388 Platform: any
389 Description: More/Better Picture filters
390 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 />
391 - ideas for new filters are a greenwall filter, and a goom filter that mixes goom effects into the vout.
392 Status: Todo
393
394 Task
395 Difficulty: Guru
396 Urgency: Normal
397 Platform: any
398 Description: Vout redesign
399 - vout needs distinct splitting into vout_core, vout_window, pic_filter, vout_filter<br />
400 - needs 'assistance' vout windows (clone filters, goom) etc.<br />
401 - 4:3, 16:9, freeform Aspect Ratio<br />
402 - cropping and padding (do at OS level, but provide a core call to set it up and configure).<br />
403 - OSD at window resolution instead of video res (secondary vout channel)<br />
404 - a OSD needs to be bound to a vout stream (no subs on goom vout)<br />
405 - 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 />
406 - Allow a vout to reuse a window by resizing it (instead of closing and opening).
407 - better hotkeys integration
408 Status: Todo
409
410 Task
411 Difficulty: Medium
412 Urgency: Wishlist
413 Platform: any
414 Description: Subtitle work
415 - better SSA support with postioning, colors etc.<br />
416 Status: Todo
417
418 Task
419 Difficulty: Easy
420 Urgency: Wishlist
421 Platform: any
422 Description: Automatic charset recognition
423 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?
424 Status: Todo
425
426 Task
427 Difficulty: Guru
428 Urgency: Wishlist
429 Platform: Mac OS X
430 Description: skins2
431 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 />
432 Hints:<br />
433  - In a first step, the need for a dialog provider can be easily omitted.<br />
434  - In theory, only a small amount of classes (6 or so) must be written for OS X, implementing predefined interfaces.<br />
435  - 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.
436 Status: Todo
437
438 Task
439 Difficulty: Hard
440 Urgency: Wishlist
441 Platform: any
442 Description: informing user.
443 Implement a system to: <br />
444  - Alert the user of critical errors (cannot play file). Should be blocking. <br />
445  - Ask the user a question (Are you sure? or Try to Fix index of avi? or Overwrite File?)<br />
446  - 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 /> 
447  - present a user/passwd dialog when we get an authentication failure on a stream.<br />
448 Implementation ideas: <br />
449  - via variables and callbacks. How to give answers back ?<br />
450  - via p_intf->pf_* functions.<br />
451 Status: Todo
452
453 Task
454 Difficulty: Hard
455 Urgency: Wishlist
456 Platform: any
457 Description: Full H323 Videoconferencing
458 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.
459 We also will need SIP support. A first implementation using a custom protocol is being made. 
460 Status: Todo
461
462 Task
463 Difficulty: Hard 
464 Urgency: Wishlist
465 Platform: Mac OS X
466 Description: QuickTime capturing
467 Allow capturing from QuickTime Firewire, USB and PCI devices.
468 Possibly see: <a href="http://bugzilla.videolan.org/cgi-bin/bugzilla/show_bug.cgi?id=416">Bug 416</a>
469 Status: Todo
470
471 Task
472 Difficulty: Easy
473 Urgency: Wishlist
474 Platform: any
475 Description: export paramaters of an input
476  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 />
477  - AR<br />
478  - size<br />
479  - bitrate<br />
480  - resolution<br />
481  - codecs, etc.<br />
482 Status: Todo
483
484 Task
485 Difficulty: Hard
486 Urgency: Wishlist
487 Platform: any
488 Description: statistics
489 Count packetloss, bandwith usage and fps for statistics.<br />
490 Status: Todo
491
492 Task
493 Difficulty: Hard
494 Urgency: Wishlist
495 Platform: any
496 Description: http cookies
497 For protected VoD  (http://a-select.surfnet.nl)
498 Status: Todo
499
500 Task
501 Difficulty: Easy
502 Urgency: Wishlist
503 Platform: any
504 Description: Progressive download playing
505 Allow application/vlc mimetype to launch VLC instead of plugin for video file.
506 Allows for Progressive download to TEMP folder from browsers. VLC would play the file in the TEMP.
507 Status: Todo
508
509 Task
510 Difficulty: Medium
511 Urgency: Wishlist
512 Platform: any
513 Description: rendezvous announces
514 Apple released the rendezvous code under a Open Source license now. perhaps it can be used. (It's OpenTalk now btw).<br />
515 Note: the licence is probably not DFSG compatible. Alternative mDNS implementations exist<br />
516 DMAP protocol announce for videos.
517 Status: Partly done (DAAP only)
518
519 Task
520 Difficulty: Easy
521 Urgency: Wishlist
522 Platform: any
523 Description: SDL vout cleaning
524 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.
525 Status: Todo
526
527 Task
528 Difficulty: Easy
529 Urgency: Wishlist
530 Platform: any
531 Description: Electronic Program Guide
532 Integrate a EPG system into VLC.
533 Status: Todo (CryHavoc)
534
535 Task
536 Difficulty: Hard
537 Urgency: Wishlist
538 Platform: any
539 Description: a Time Shifting module
540 This module should create TiVo like capabilities for VLC.
541 Status: Todo (CryHavoc)
542
543 Task
544 Difficulty: Medium
545 Urgency: Wishlist
546 Platform: any
547 Description: UDP packet reordering
548 Currently we ignore every packet that is too late and just wait for a fresh one.
549 It would be nice to be able to reorder the packets in the buffer to prevent degredation of the signal.
550 Status: Todo
551
552 Task
553 Difficulty: Easy
554 Urgency: Wishlist
555 Platform: any
556 Description: Make vlm more user friendly (setup etc)
557 vlm is kinda a pain to setup if you are not entirely experienced with A/V and streaming or VLC for that matter.<br />
558 It can be heavily improved by updating the vlm http interface. Using seperate fields for the need paramters of a schedule/source.<br />
559 Also, GUI implementation.
560 Status: Todo
561
562 Task
563 Difficulty: Easy
564 Urgency: Wishlist
565 Platform: any
566 Description: Protocol rollover
567 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.
568 However, how spec compliant can this be?<br />
569 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]).
570 Status: Todo
571
572 Task
573 Difficulty: Hard
574 Urgency: Wishlist
575 Platform: any
576 Description: NAT issues
577 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 ????
578 Protocol rollover can be a solution for a lot of these issues.
579 Use full DNS names in SDP
580 Status: Todo
581
582 Task
583 Difficulty: Medium
584 Urgency: Wishlist
585 Platform: any
586 Description: Gstreamer and Helix API integration
587 See if you can support GStreamer and helix plugins in one way or another.
588 Status: Todo
589
590 Task
591 Difficulty: Easy
592 Urgency: Wishlist
593 Platform: any
594 Description: Gnome-vfs support
595 For integration with smb, sftp and other file sharing/mounting methods
596 Status: Todo
597
598 Task
599 Difficulty: Hard
600 Platform: any
601 Urgency: Wishlist
602 Description: Matroska muxer
603  We need one :)
604 Status: Todo
605
606 Task
607 Difficulty: Medium
608 Platform: any
609 Urgency: Wishlist
610 Description: TTA decoder
611   TTA is said to be a fast en good lossless codec. Opensource library
612   availabe: http://tta.corecodec.org/
613 Status: Todo
614
615 Task
616 Difficulty: Medium
617 Platform: any
618 Urgency: Wishlist
619 Description: Option to automatically deinterlace when needed
620   Mkv stores wether a video track is interlaced in the traxk descriptor
621   libmpeg2 etc output this information in the header AND on a per-picture basis
622 Status: Todo
623
624 Task
625 Difficulty: Easy
626 Platform: any
627 Urgency: Wishlist
628 Description: UDF decoder
629 Support for the new XML based subtitle format called UDF
630 Status: Todo
631
632 Task
633 Difficulty: Hard
634 Platform: any
635 Urgency: Wishlist
636 Description: Faster deinterlacing
637 Our deinterlacers are relatively slow. DScaler has the best Soft deinterlacers out there.
638 Unfortunatly it is very Win32 focused.
639 Status: Todo
640
641 Task
642 Difficulty: Medium
643 Platform: any
644 Urgency: Wishlist
645 Description: More service discovery modules
646 - Port UPnP support from http://sourceforge.net/project/showfiles.php?group_id=89768 <br />
647 - libhal based discovery (should be able to find cd, dvd, capture cards, etc etc <br />
648 - Perhaps a generalized webpage parser (use user supplied templates to parse
649    streams from popular websites )
650 Status: Todo
651
652 Task
653 Difficulty: Easy
654 Platform: win32
655 Urgency: Wishlist
656 Description: file filters in the open dialog
657 Have default filters in the open dialog. like:
658 All files<br />
659 Sound Files( .mp3, .ogg, .wav, .m4a, .m4p)<br />
660 Video Files( .avi, .mkv, .mov, .mpg, .m2v, etc)<br />
661 Subtitle Files( .idx, .sub, .utf, .srt)<br />
662 Status: Todo
663
664 Task
665 Difficulty: Medium
666 Platform: any
667 Urgency: Wishlist
668 Description: OpenGL improvements
669 OpenGL extensions can be querried at runtime using the glGetString(
670 GL_EXTENSIONS ) call. Both rectangular textures and yuv textures may be
671 available at non-apple platform (or even not available on some macs).<br />
672 More fancy stuff can be done with GL, like subpicture rendering.<br />
673 With recent hardware (and opengl shading language) stuff like dct, motion
674 compensation or postprocessing should be possible.
675
676 Task
677 Difficulty: Medium
678 Platform: any
679 Urgancy: Wishlist
680 Description: Gnutella servlet
681 A simple gnutella servlet, combined with vlc's stream output/input features
682 would make it fairly easy to implement peercast streaming, and peercast
683 playback with restreaming. Also I guess gnutella could be used for other
684 things as well, like discovering services.
685
686 # Do not remove me
687 Task