ffmpeg TODO list:
----------------
-Fabrice's TODO list: (in approximate decreasing priority order)
+Fabrice's TODO list: (unordered)
-------------------
-- add av_log() in libavcodec and suppress all printf
+Short term:
+
+- seeking API and example in ffplay
+- use AVFMTCTX_DISCARD_PKT in ffplay so that DV has a chance to work
+- add RTSP regression test (both client and server)
+- make ffserver allocate AVFormatContext
+- clean up (incompatible change, for 0.5.0):
+ * AVStream -> AVComponent
+ * AVFormatContext -> AVInputStream/AVOutputStream
+ * suppress rate_emu from AVCodecContext
+- add new float/integer audio filterting and conversion : suppress
+ CODEC_ID_PCM_xxc and use CODEC_ID_RAWAUDIO.
+- fix telecine and frame rate conversion
+
+Long term (ask me if you want to help):
+
- commit new imgconvert API and new PIX_FMT_xxx alpha formats
-- new ffplay based on qemacs x11/fb/vt100 GUI.
-- commit av_read_frame() API and associated support in libavcodec:
- ffserver will be able to stream MPEG and MPEG4 files in
- RTSP/RTP/SDP.
-- add new float/integer audio filterting and conversion
- commit new LGPL'ed float and integer-only AC3 decoder
- add WMA integer-only decoder
-- integrate custom Vorbis Tremor based integer and float decoder
- add new MPEG4-AAC audio decoder (both integer-only and float version)
-- fix telecine and frame rate conversion
Michael's TODO list: (unordered) (if anyone wanna help with sth, just ask)
-------------------
- finish implementation of WMV2 j-picture
-- H264 codec (after its a standart or at least more stable)
+- H264 encoder
+- optimize H264 CABAC
- per MB ratecontrol (so VCD and such do work better)
- more optimizations
- simper rate control
- split h263.c
-- mpeg2 encoding (after the ME impovements)
-- format idependant quality parameter
+- reverse engeneer RV30/RV40
Francois' TODO list: (unordered, without any timeframe)
-------------------
- test MACE decoder against the openquicktime one as suggested by A'rpi
-- mov/mp4 muxer
- BeOS audio input grabbing backend
- BeOS video input grabbing backend
- have a REAL BeOS errno fix (return MKERROR(EXXX);), not a hack
Philip'a TODO list: (alphabetically ordered) (please help)
------------------
- Add a multi-ffm filetype so that feeds can be recorded into multiple files rather
- than one big file.
+ than one big file.
- Authenticated users support -- where the authentication is in the URL
- Change ASF files so that the embedded timestamp in the frames is right rather
than being an offset from the start of the stream
- Make ffm files more resilient to changes in the codec structures so that you
can play old ffm files.
-unassigned TODO: (stuff which should/must be done but noone seems to do it)
+unassigned TODO: (unordered)
---------------
- use AVFrame for audio codecs too
+- rework aviobuf.c buffering strategy and fix url_fskip
+- generate optimal huffman tables for mjpeg encoding
+- fix ffserver regression tests
+- support xvids motion estimation
+- support x264s motion estimation
+- support x264s rate control
+- SNOW: non translational motion compensation
+- SNOW: more optimal quantization
+- SNOW: 4x4 block support
+- SNOW: 1/8 pel motion compensation support
+- SNOW: iterative motion estimation based on subsampled images
+- ADPCM: viterbi/trellis based optimal encoder
+- FLAC: lossy encoding (viterbi and naive scalar quantization)
+- libavfilter
+- JPEG2000 decoder & encoder
+- MPEG4 GMC encoding support
+- macroblock based pixel format (better cache locality, somewhat complex, one paper claimed it faster for high res)
+- finish NUT implementation
+- movenc.c fix stts so that variable framerate files work
+