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