ffmpeg TODO list: ---------------- Fabrice's TODO list: (unordered) ------------------- Short term: - 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 - commit new LGPL'ed float and integer-only AC3 decoder - add WMA integer-only decoder - add new MPEG4-AAC audio decoder (both integer-only and float version) Michael's TODO list: (unordered) (if anyone wanna help with sth, just ask) ------------------- - optimize H264 CABAC - more optimizations - simper rate control Francois' TODO list: (unordered, without any timeframe) ------------------- - test MACE decoder against the openquicktime one as suggested by A'rpi - BeOS audio input grabbing backend - BeOS video input grabbing backend - publish my BeOS libposix on BeBits so I can officially support ffserver :) - check the whole code for thread-safety (global and init stuff) 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. - 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. Baptiste's TODO list: ----------------- - mov edit list support (AVEditList) - YUV 10 bit per component support "2vuy" - mxf muxer - mpeg2 non linear quantizer 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 - SNOW: try B frames and MCTF and see how their PSNR/bitrate/complexity behaves - SNOW: try to use the wavelet transformed MC-ed reference frame as context for the entropy coder - SNOW: think about/analyize how to make snow use multiple cpus/threads - SNOW: finish spec - 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) - regression tests for codecs which do not have an encoder (I+P-frame bitstream in svn) - add support for using mplayers video filters to ffmpeg - H264 encoder - per MB ratecontrol (so VCD and such do work better) - 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 - convert all the non SIMD asm into small asm vs. C testcases and submit them to the gcc devels so they can improve gcc - generic audio mixing API - extract PES packetizer from PS muxer and use it for new TS muxer - implement automatic AVBistreamFilter activation - make cabac encoder use bytestream (see http://trac.videolan.org/x264/changeset/?format=diff&new=651) - merge imdct and windowing, the current code does considerable amounts of redundant work