]> git.sesse.net Git - ffmpeg/blobdiff - doc/TODO
vfr mov/mp4 todo item
[ffmpeg] / doc / TODO
index e39f24ac030bb442c658f4eec8f1429928ac0507..899cfb268842c4948c2002c0208e108d317a051e 100644 (file)
--- a/doc/TODO
+++ b/doc/TODO
@@ -1,40 +1,43 @@
 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)
-- slower / better zonal ME
-- better & cleaner b frame ME
+- H264 encoder
+- optimize H264 CABAC
 - per MB ratecontrol (so VCD and such do work better)
 - more optimizations
-- more compare functions for ME
 - simper rate control
-- qpel encoding
 - split h263.c
-- mpeg2 encoding (after the ME impovements)
-- mpeg1 b frames (after the ME impovements)
+- 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
@@ -44,10 +47,33 @@ Francois' TODO list: (unordered, without any timeframe)
 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: (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
+