Merge remote-tracking branch 'ffmpeg-mt/master'
[ffmpeg.git] / mt-work / todo.txt
index a27f181..013853e 100644 (file)
@@ -2,7 +2,7 @@ Todo
 
 -- For other people
 - Multithread vp8 or vc1.
-- Multithread an intra codec like mjpeg.
+- Multithread an intra codec like mjpeg (trivial).
 - Fix mpeg1 (see below).
 - Try the first three items under Optimization.
 - Fix h264 (see below).
@@ -14,6 +14,8 @@ General critical:
 - Error resilience has to run before ff_report_frame_progress()
 is called. Otherwise there will be race conditions. (This might already
 work.) In general testing error paths should be done more.
+- 'make fate THREADS=2' doesn't pass. Most failures are due to
+bugs in vsync in ffmpeg.c, which are currently obscuring real failures.
 
 h264:
 - Files split at the wrong NAL unit don't (and can't)
@@ -39,7 +41,7 @@ with threads on. Currently disabled for this reason.
 -- Prove correct
 
 - decode_update_progress() in h264.c
-h264_race_checking branch has some work on h264,
+race_checking branch has some work on h264,
 but not that function. It might be worth putting
 the branch under #ifdef DEBUG in mainline, but
 the code would have to be cleaner.
@@ -48,9 +50,11 @@ the code would have to be cleaner.
 
 -- Optimization
 
+- Merge h264 decode_update_progress() with loop_filter().
+Add CODEC_CAP_DRAW_HORIZ_BAND as a side effect.
 - EMU_EDGE is always set for h264 PAFF+MT
 because draw_edges() writes into the other field's
-thread's pixels.
+thread's pixels. Needs an option to skip T/B fields.
 - Check update_thread_context() functions and make
 sure they only copy what they need to.
 - Try some more optimization of the "ref < 48; ref++"