TODO
上传用户:riyaled888
上传日期:2009-03-27
资源大小:7338k
文件大小:18k
源码类别:

多媒体

开发平台:

MultiPlatform

  1. # VLC Todo
  2. # Difficulty values: Easy, Medium, Hard, Guru
  3. #
  4. # Urgency values: Wishlist, Normal, Important, Critical
  5. Task
  6. Difficulty: Easy
  7. Urgency: Critical
  8. Platform: any
  9. Description: World domination
  10.  We need to dominate the world
  11. Status: Todo
  12. Task
  13. Difficulty: Medium
  14. Platform: any
  15. Urgency: Wishlist
  16. Description: RAR/ZIP/... access
  17. An access module that would be able to uncompress compressed files.
  18. Status: Todo
  19. Task
  20. Difficulty: Medium
  21. Platform: any
  22. Urgency: Wishlist
  23. Description: DVTS support
  24. DV over RTP support. See <a href="http://www.sfc.wide.ad.jp/DVTS/">DVTS homepage</a>
  25. Status: Todo
  26. Task
  27. Difficulty: Easy
  28. Platform: any
  29. Urgency: Urgent
  30. Description: proper DVD controls
  31. Most importantly a proper button that will take you straight to the DVD menu. But also, next/prev chapter should be integrated with next/prev playlistitem.
  32. Status: Todo
  33. Task
  34. Difficulty: Easy
  35. Platform: Linux, Win32, Mac OS X
  36. Urgency: Normal
  37. Description: Streaming wizard
  38.  Finish the streaming wizard (85% finished)<br />
  39. The mac version is at 0%
  40. Status: Assigned to zorglub
  41. Task
  42. Difficulty: Easy
  43. Platform: all
  44. Urgency: Normal
  45. Description: configure overview of modules
  46.  configure should report what it will and what it won't build, after it is done running.
  47. Status: Todo
  48. Task
  49. Difficulty: Hard
  50. Platform: WinCE
  51. Urgency: Wishlist
  52. Description: WinCE port finalizing
  53. The WinCE port is already quite functional but we still miss a GAPI video output (GDI works but is slow) and an interface.
  54. Some code already exists for that (http://sourceforge.net/projects/vlcpocketpc/) and would need to be imported into the VLC source tree.
  55. Downloads should be added to the main vlc download page. We need an icon for this. 
  56. Status: Assigned to MixerAnderson
  57. Task
  58. Difficulty: Hard
  59. Urgency: Normal
  60. Platform: any
  61. Description: Dual window in embed mode
  62. Windows taskbar reports two windows in the video embed mode.
  63. Status: Assigned to gibalou
  64. Task
  65. Difficulty: Guru
  66. Urgency: Normal
  67. Platform: any
  68. Description: External audio file playing
  69.  Allow several access from an input thread to allow for multi-input<br />
  70. (90% done) Add GUI elements
  71. Status: Assigned to fenrir
  72. Task
  73. Difficulty: Hard
  74. Urgency: Normal
  75. Platform: any
  76. Description: make everything UTF-8 based
  77.  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.
  78. Status: Todo
  79. Task
  80. Difficulty: Medium
  81. Urgency: Wishlist
  82. Platform: any
  83. Description: Full blown OSD system 
  84.  In the line of freevo etc.
  85. Status: Todo
  86. Task
  87. Difficulty: Medium
  88. Urgency: Normal
  89. Platform: any
  90. Description: Rewrite the SAP parser
  91.  The SAP parser is very dirty at the moment, and needs a complete rewrite.
  92.  - caching support<br />
  93. Mostly finished. Closely tied to the new playlist system
  94. Status: Assigned to zorglub
  95. Task
  96. Difficulty: Medium
  97. Urgency: Normal
  98. Platform: any
  99. Description: Tree playlist
  100.  A hierarchized playlist structure, eventually using a media library.
  101. 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 />
  102. Mostly finished. will be done after 0.8.0
  103. Status: Assigned to zorglub
  104. Task
  105. Difficulty: Easy
  106. Urgency: Normal
  107. Platform: any
  108. Description: fix ASX playlist parser
  109. 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/
  110. Status: Todo
  111. Task
  112. Difficulty: Medium
  113. Urgency: Normal
  114. Platform: any
  115. Description: fix current muxers.
  116. Our avi muxer doesn't produce valid files
  117. Status: Todo
  118. Task
  119. Task
  120. Difficulty: Easy
  121. Urgency: Wishlist
  122. Platform: any
  123. Description: GSM decoder
  124. The <a href="http://kbs.cs.tu-berlin.de/~jutta/toast.html">Toast</a> implementation.
  125. Status: Todo
  126. Task
  127. Difficulty: Easy
  128. Urgency: Wishlist
  129. Platform: any
  130. Description: AMR decoder
  131. We will need to find one that isn't based on the reference code.
  132. Status: Todo
  133. Task
  134. Difficulty: Easy
  135. Urgency: Wishlist
  136. Platform: any
  137. Description: MusePack decoder
  138. 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.
  139. Status: Todo
  140. Task
  141. Difficulty: Easy
  142. Urgency: Normal
  143. Platform: any
  144. Description: 24 bit LPCM
  145. - Increasingly more DVDs use 24 bit LPCM sound. We should support it.
  146. Status: Todo
  147. Task
  148. Difficulty: Easy
  149. Urgency: Normal
  150. Platform: Mac OS X
  151. Description: LPCM
  152. 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.
  153. Status: Todo
  154. Task
  155. Difficulty: Easy
  156. Urgency: Wishlist
  157. Platform: any
  158. Description: APE decoder
  159. 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.
  160. Status: Todo
  161. Task
  162. Difficulty: Easy
  163. Urgency: Wishlist
  164. Platform: any
  165. Description: flash video playing/streaming
  166. A flash video muxer and demuxer. FFMPEG can already output flash video. a waste not to make use of that capability.
  167. Status: Todo
  168. Task
  169. Difficulty: Medium
  170. Urgency: Wishlist
  171. Platform: any
  172. Description: Closed Captions/Teletext support
  173. 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.
  174. Perhaps look at Xawtv, dvbtext and other vbi, vtx systems.
  175. Status: Todo
  176. Task
  177. Difficulty: Medium
  178. Urgency: Wishlist
  179. Platform: any
  180. Description: DVB info in NIT
  181. We need to get the information of a DVB stream that are in the NIT (current program, next program, ...)
  182. Status: Todo
  183. Task
  184. Difficulty: Medium
  185. Urgency: Wishlist
  186. Platform: any
  187. Description: IceCast/ShoutCast serving
  188. This would be a nice thing for the sake of completeness of VLC's streaming capabilities.
  189. Status: Todo
  190. Task
  191. Difficulty: Hard
  192. Urgency: Normal
  193. Platform: Mac OS X
  194. Description: New OS X preferences
  195.  New preferences for Mac OS X. Current not suited for Mac Users and several
  196. Pref. elements are broken (hotkeys and int with string desc.).
  197. Status: Todo
  198. Task
  199. Difficulty: Easy
  200. Urgency: Normal
  201. Platform: Mac OS X
  202. Description: OS X bookmarks window
  203. We miss a bookmarks window like the wxwidget one.
  204. Status: Todo
  205. Task
  206. Difficulty: Hard
  207. Urgency: Critical
  208. Platform: Mac OS X
  209. Description: CoreAudio multichannel audio output.
  210.  Convert to <a href="http://www.mat.ucsb.edu:8000/CoreAudio/108">AUHAL</a> based sytem.
  211. Still no info over S/PDIF output available.
  212. Outstanding issues:<br />
  213.  - G5 S/PDIF not working<br />
  214.  - G5 PCM not working because S/PDIF is selected by default, even if not connected.<br />
  215. Status: Todo
  216. Task
  217. Difficulty: Hard
  218. Urgency: Normal
  219. Platform: any
  220. Description: Stream text subtitles
  221.  Find a a way to stream text subtitles, in TS and in RTP.
  222.   - Find an existing norm
  223.   - Implement it
  224. <br />Needs testing and validating
  225. Status: 65% (fenrir)
  226. Task
  227. Difficulty: Medium
  228. Urgency: Normal
  229. Platform: any
  230. Description: RTSP server
  231. 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>.
  232. Status: 90%
  233. Task
  234. Difficulty: Easy
  235. Urgency: Wishlist
  236. Platform: any
  237. Description: More Picture filters
  238. There are several picture filters (blend, scale), but we can use more (crop, move..)
  239. Status: Todo
  240. Task
  241. Difficulty: Guru
  242. Urgency: Wishlist
  243. Platform: any
  244. Description: Vout redesign
  245. - vout needs distinct splitting into vout_core, vout_window, pic_filter, vout_filter
  246. - needs 'assistence' vout windows (clone filters, goom) etc.
  247. - 4:3, 16:9, freeform Aspect Ratio
  248. - cropping and padding (do at OS level, but provide a core call to set it up and configure).
  249. - OSD at window resolution instead of video res (secondary vout channel)
  250. - a OSD needs to be bound to a vout stream (no subs on goom vout)
  251. - 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).
  252. Status: Todo
  253. Task
  254. Difficulty: Medium
  255. Urgency: Wishlist
  256. Platform: any
  257. Description: Subtitle work
  258. - better SSA support with postioning, colors etc.
  259. - Vobsub seeking
  260. - Fix subtitles dialogs (mac done)
  261. Status: Todo
  262. Task
  263. Difficulty: Easy
  264. Urgency: Wishlist
  265. Platform: any
  266. Description: Automatic charset recognition
  267. 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?
  268. Status: Todo
  269. Task
  270. Difficulty: Guru
  271. Urgency: Wishlist
  272. Platform: Mac OS X
  273. Description: skins2
  274. Port VLC skins to Objective C++ and OSX. Also requires the intf to be a dialog handler.
  275. Status: Todo
  276. Task
  277. Difficulty: Hard
  278. Urgency: Wishlist
  279. Platform: any
  280. Description: informing user.
  281. Implement a system to: <br />
  282.  - Alert the user of critical errors (cannot play file). Should be blocking. <br />
  283.  - Ask the user a question (Are you sure? or Try to Fix index of avi? or Overwrite File?)<br />
  284.  - 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 /> 
  285.  - present a user/passwd dialog when we get an authentication failure on a stream.<br />
  286. Status: Todo
  287. Task
  288. Difficulty: Hard
  289. Urgency: Wishlist
  290. Platform: any
  291. Description: Full H323 Videoconferencing
  292. 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.
  293. We also will need SIP support.
  294. Status: Todo
  295. Task
  296. Difficulty: Guru
  297. Urgency: Normal
  298. Platform: Mac OS X
  299. Description: SVCD support
  300. libcdio needs to be ported to the Mac to support the cddax and vcdx modules for proper SVCD support
  301. Status: Todo
  302. Task
  303. Difficulty: Hard 
  304. Urgency: Wishlist
  305. Platform: Mac OS X
  306. Description: QuickTime capturing
  307. Allow capturing from QuickTime Firewire, USB and PCI devices.
  308. Possibly see: <a href="http://bugzilla.videolan.org/cgi-bin/bugzilla/show_bug.cgi?id=416">Bug 416</a>
  309. Status: Todo
  310. Task
  311. Difficulty: Medium
  312. Urgency: Normal
  313. Platform: Mac OS X
  314. Description: Finish Mac Mozilla plugin
  315. The Mac mozilla plugin needs some more work to be useable. Basic funtionality is working. However the video-output part needs some more work since it was crashing. See svn history for the old code. 
  316. Status: Halfway (stalled)
  317. Task
  318. Difficulty: Easy
  319. Urgency: Normal
  320. Platform: any
  321. Description: Controlling the mozilla plugin
  322. The mozilla plugin needs to be better controllable (via javascript). <br />
  323. - retrieve variable values.<br />
  324. - open VLC media player<br />
  325. - default html page to control the plugin<br />
  326. - XUL controls<br />
  327. (80% done) see:<br />
  328. <a href="http://sierra.via.ecp.fr/~zorglub/vlc/plugin/vlc.html">Javascript controls</a>
  329. <a href="http://sierra.via.ecp.fr/~zorglub/vlc/xul/">XUL controls</a>
  330. <a href="http://mplayerplug-in.sourceforge.net/">MPlayer Mozilla plugin</a>
  331. Status: Assigned to zorglub
  332. Task
  333. Difficulty: Hard
  334. Urgency: Wishlist
  335. Platform: Windows
  336. Description: ActiveX control for VLC
  337.  We need an ActiveX version of VLC for IE intergration
  338. Status: Todo
  339. Task
  340. Difficulty: Easy
  341. Urgency: Wishlist
  342. Platform: any
  343. Description: export paramaters of an input
  344.  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 />
  345.  - AR<br />
  346.  - size<br />
  347.  - bitrate<br />
  348.  - resolution<br />
  349.  - codecs, etc.<br />
  350. Status: Todo
  351. Task
  352. Difficulty: Easy
  353. Urgency: Wishlist
  354. Platform: any
  355. Description: SSL http
  356. SSL encrypted HTTP communication. To support protected VoD.<br />
  357. The question is how to neatly integrate it into our API. Support for all our http handling plugins means complicating the API. Perhaps we should store the SSL context in the p_sys of the vlc_object that is calling it? Tad dangerous, but would keep stuff simple.
  358. Status: Todo
  359. Task
  360. Difficulty: Hard
  361. Urgency: Wishlist
  362. Platform: any
  363. Description: http cookies
  364. For protected VoD  (http://a-select.surfnet.nl)
  365. Status: Todo
  366. Task
  367. Difficulty: Easy
  368. Urgency: Wishlist
  369. Platform: any
  370. Description: mime-type VLC launching
  371. Allow application/vlc mimetype to launch VLC instead of plugin for video file.
  372. Allows for Progressive download to TEMP folder from browsers. VLC would play the file in the TEMP.
  373. Status: Todo
  374. Task
  375. Difficulty: Medium
  376. Urgency: Wishlist
  377. Platform: any
  378. Description: rendezvous announces
  379. Apple released the rendezvous code under a Open Source license now. perhaps it can be used. (It's OpenTalk now btw).<br />
  380. DMAP protocol announce for videos.
  381. Status: Todo
  382. Task
  383. Difficulty: Easy
  384. Urgency: Wishlist
  385. Platform: any
  386. Description: SDL vout cleaning
  387. 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.
  388. Status: Todo
  389. Task
  390. Difficulty: Easy
  391. Urgency: Normal
  392. Platform: Win32/Linux
  393. Description: V4L and dshow tuning support
  394. We need an API that allows us to control the tuning of V4L and dshow TV cards.
  395. Status: Todo (CryHavoc)
  396. Task
  397. Difficulty: Easy
  398. Urgency: Wishlist
  399. Platform: any
  400. Description: Electronic Program Guide
  401. Integrate a EPG system into VLC.
  402. Status: Todo (CryHavoc)
  403. Task
  404. Difficulty: Hard
  405. Urgency: Wishlist
  406. Platform: any
  407. Description: a Time Shifting module
  408. This module should create TiVo like capabilities for VLC.
  409. Status: Todo (CryHavoc)
  410. Task
  411. Difficulty: Medium
  412. Urgency: Wishlist
  413. Platform: any
  414. Description: UDP packet reordering
  415. Currently we ignore every packet that is too late and just wait for a fresh one.
  416. It would be nice to be able to reorder the packets in the buffer to prevent degredation of the signal.
  417. Status: Todo
  418. Task
  419. Difficulty: Easy
  420. Urgency: Wishlist
  421. Platform: any
  422. Description: Make vlm more user friendly (setup etc)
  423. vlm is kinda a pain to setup if you are not entirely experienced with A/V and streaming or VLC for that matter. It can be heavily improved by updating the vlm http interface. Using seperate fields for the need paramters of a schedule/source.
  424. Status: Todo
  425. Task
  426. Difficulty: Easy
  427. Urgency: Wishlist
  428. Platform: any
  429. Description: Protocol rollover
  430. 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.
  431. However, how spec compliant can this be?<br />
  432. 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]).
  433. Status: Todo
  434. Task
  435. Difficulty: Hard
  436. Urgency: Wishlist
  437. Platform: any
  438. Description: NAT issues
  439. 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 ????
  440. Protocol rollover can be a solution for a lot of these issues.
  441. Use full DNS names in SDP
  442. Status: Todo
  443. Task
  444. Difficulty: Medium
  445. Urgency: Wishlist
  446. Platform: any
  447. Description: Gstreamer and Helix API integration
  448. See if you can support GStreamer and helix plugins in one way or another.
  449. Status: Todo
  450. Task
  451. Difficulty: Easy
  452. Urgency: Wishlist
  453. Platform: any
  454. Description: Gnome-vfs support
  455. For integration with smb, sftp and other file sharing/mounting methods
  456. Status: Todo
  457. Task
  458. Difficulty: Medium
  459. Platform: any
  460. Urgency: Normal
  461. Description: Update matroska demux
  462.  Better Seeking
  463. Status: Todo
  464. Task
  465. Difficulty: Hard
  466. Platform: any
  467. Urgency: Wishlist
  468. Description: Matroska muxer
  469. Status: Todo
  470. Task
  471. Difficulty: Medium
  472. Platform: any
  473. Urgency: Wishlist
  474. Description: TTA decoder
  475.   TTA is said to be a fast en good lossless codec. Opensource library
  476.   availabe: http://tta.corecodec.org/
  477. Status: Todo
  478. Task
  479. Difficulty: Medium
  480. Platform: any
  481. Urgency: Wishlist
  482. Description: Option to automatically deinterlace when needed
  483.   Mkv stores wether a video track is interlaced in the traxk descriptor
  484.   libmpeg2 etc output this information on a per-picture bases
  485. Status: Todo
  486. Task
  487. Difficulty: Easy
  488. Platform: any
  489. Urgency: Wishlist
  490. Description: UDF decoder
  491. Support for the new XML based subtitle format called UDF
  492. Status: Todo
  493. Task
  494. Difficulty: Hard
  495. Platform: any
  496. Urgency: Wishlist
  497. Description: Faster deinterlacing
  498. Our deinterlacers are relatively slow. DScaler has the best Soft deinterlacers out there.
  499. Unfortunatly it is very Win32 focused.
  500. Status: Todo
  501. Task
  502. Difficulty: Medium
  503. Platform: any
  504. Urgency: Wishlist
  505. Description: More service discovry modules
  506. - Port UPnP support from http://sourceforge.net/project/showfiles.php?group_id=89768 <br />
  507. - libhal based discovery (should be able to find cd,dvd,capture cards,etc etc <br />
  508. - Perhaps a generalized webpage parser (use user supplied templates to parse
  509.    streams from popular websites )
  510. Status: Todo
  511. # Do not remove me
  512. Task