TODO 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. ffmpeg TODO list:
  2. ----------------
  3. Fabrice's TODO list: (unordered)
  4. -------------------
  5. Short term:
  6. - use AVFMTCTX_DISCARD_PKT in ffplay so that DV has a chance to work
  7. - add RTSP regression test (both client and server)
  8. - make ffserver allocate AVFormatContext
  9. - clean up (incompatible change, for 0.5.0):
  10. * AVStream -> AVComponent
  11. * AVFormatContext -> AVInputStream/AVOutputStream
  12. * suppress rate_emu from AVCodecContext
  13. - add new float/integer audio filterting and conversion : suppress
  14. CODEC_ID_PCM_xxc and use CODEC_ID_RAWAUDIO.
  15. - fix telecine and frame rate conversion
  16. Long term (ask me if you want to help):
  17. - commit new imgconvert API and new PIX_FMT_xxx alpha formats
  18. - commit new LGPL'ed float and integer-only AC3 decoder
  19. - add WMA integer-only decoder
  20. - add new MPEG4-AAC audio decoder (both integer-only and float version)
  21. Michael's TODO list: (unordered) (if anyone wanna help with sth, just ask)
  22. -------------------
  23. - optimize H264 CABAC
  24. - more optimizations
  25. - simper rate control
  26. Francois' TODO list: (unordered, without any timeframe)
  27. -------------------
  28. - test MACE decoder against the openquicktime one as suggested by A'rpi
  29. - BeOS audio input grabbing backend
  30. - BeOS video input grabbing backend
  31. - publish my BeOS libposix on BeBits so I can officially support ffserver :)
  32. - check the whole code for thread-safety (global and init stuff)
  33. Philip'a TODO list: (alphabetically ordered) (please help)
  34. ------------------
  35. - Add a multi-ffm filetype so that feeds can be recorded into multiple files rather
  36. than one big file.
  37. - Authenticated users support -- where the authentication is in the URL
  38. - Change ASF files so that the embedded timestamp in the frames is right rather
  39. than being an offset from the start of the stream
  40. - Make ffm files more resilient to changes in the codec structures so that you
  41. can play old ffm files.
  42. Baptiste's TODO list:
  43. -----------------
  44. - mov edit list support (AVEditList)
  45. - YUV 10 bit per component support "2vuy"
  46. - mxf muxer
  47. - mpeg2 non linear quantizer
  48. unassigned TODO: (unordered)
  49. ---------------
  50. - use AVFrame for audio codecs too
  51. - rework aviobuf.c buffering strategy and fix url_fskip
  52. - generate optimal huffman tables for mjpeg encoding
  53. - fix ffserver regression tests
  54. - support xvids motion estimation
  55. - support x264s motion estimation
  56. - support x264s rate control
  57. - SNOW: non translational motion compensation
  58. - SNOW: more optimal quantization
  59. - SNOW: 4x4 block support
  60. - SNOW: 1/8 pel motion compensation support
  61. - SNOW: iterative motion estimation based on subsampled images
  62. - SNOW: try B frames and MCTF and see how their PSNR/bitrate/complexity behaves
  63. - SNOW: try to use the wavelet transformed MC-ed reference frame as context for the entropy coder
  64. - SNOW: think about/analyize how to make snow use multiple cpus/threads
  65. - SNOW: finish spec
  66. - FLAC: lossy encoding (viterbi and naive scalar quantization)
  67. - libavfilter
  68. - JPEG2000 decoder & encoder
  69. - MPEG4 GMC encoding support
  70. - macroblock based pixel format (better cache locality, somewhat complex, one paper claimed it faster for high res)
  71. - regression tests for codecs which do not have an encoder (I+P-frame bitstream in svn)
  72. - add support for using mplayers video filters to ffmpeg
  73. - H264 encoder
  74. - per MB ratecontrol (so VCD and such do work better)
  75. - write a script which iteratively changes all functions between always_inline and noinline and benchmarks the result to find the best set of inlined functions
  76. - convert all the non SIMD asm into small asm vs. C testcases and submit them to the gcc devels so they can improve gcc
  77. - generic audio mixing API
  78. - extract PES packetizer from PS muxer and use it for new TS muxer
  79. - implement automatic AVBistreamFilter activation
  80. - make cabac encoder use bytestream (see http://trac.videolan.org/x264/changeset/?format=diff&new=651)
  81. - merge imdct and windowing, the current code does considerable amounts of redundant work