Browse Source

Remove mt-work directory

It is all dead and rotting code.

Also, move yuvcmp.c to tools. Its license is non-existent, however,
and should be clarified.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Derek Buitenhuis 12 years ago
parent
commit
5a627c14b5
7 changed files with 0 additions and 142 deletions
  1. 0 6
      mt-work/email.sh
  2. 0 13
      mt-work/mplayer.diff
  3. 0 10
      mt-work/raw.sh
  4. 0 13
      mt-work/test.sh
  5. 0 95
      mt-work/todo.txt
  6. 0 5
      mt-work/valgrind-check.sh
  7. 0 0
      tools/yuvcmp.c

+ 0 - 6
mt-work/email.sh

@@ -1,6 +0,0 @@
-#!/bin/sh -v
-
-# args [where to put patches] [smtp server] [destination]
-
-git format-patch -o "$1" --inline --subject-prefix=soc --thread origin
-git send-email --no-chain-reply-to --smtp-server $2 --to $3 --dry-run "$1"

+ 0 - 13
mt-work/mplayer.diff

@@ -1,13 +0,0 @@
-diff --git a/libmpcodecs/vd_ffmpeg.c b/libmpcodecs/vd_ffmpeg.c
-index 7c68a20..135e6b1 100644
---- a/libmpcodecs/vd_ffmpeg.c
-+++ b/libmpcodecs/vd_ffmpeg.c
-@@ -280,7 +280,7 @@ static int init(sh_video_t *sh){
-         return 0;
-     }
- 
--    if(vd_use_slices && (lavc_codec->capabilities&CODEC_CAP_DRAW_HORIZ_BAND) && !do_vis_debug)
-+    if(vd_use_slices && (lavc_codec->capabilities&CODEC_CAP_DRAW_HORIZ_BAND) && !do_vis_debug && lavc_param_threads <= 1)
-         ctx->do_slices=1;
- 
-     if(lavc_codec->capabilities&CODEC_CAP_DR1 && !do_vis_debug && lavc_codec->id != AV_CODEC_ID_H264 && lavc_codec->id != AV_CODEC_ID_INTERPLAY_VIDEO && lavc_codec->id != AV_CODEC_ID_ROQ && lavc_codec->id != AV_CODEC_ID_VP8 && lavc_codec->id != AV_CODEC_ID_LAGARITH)

+ 0 - 10
mt-work/raw.sh

@@ -1,10 +0,0 @@
-#!/bin/bash
-
-fn=`basename "$1"`
-for th in 1 4; do
-    time ./ffmpeg_g -threads $th -skip_loop_filter all -vsync 0 -y -t 30 -i "$1" -an -f rawvideo "raw/n-$fn-$th.yuv"
-done
-
-#for th in 1 4; do
-#    time ./ffmpeg_g -threads $th -vsync 0 -y -t 30 -i "$1" -an -f rawvideo "raw/$fn-$th.yuv"
-#done

+ 0 - 13
mt-work/test.sh

@@ -1,13 +0,0 @@
-#!/bin/bash
-
-fn=`basename "$1"`
-for th in 1 2 3 4; do
-    time ./ffmpeg_g -threads $th -flags2 +fast  -vsync 0 -y -t 30 -i "$1" -an -f framecrc "crc/$fn-$th.txt" >/dev/null 2>&1
-done
-
-./ffmpeg_g -threads 1 -y -t 10 -i "$1" -an -f framecrc "crc/$fn-1-vsync.txt" >/dev/null 2>&1
-./ffmpeg_g -threads 3 -y -t 10 -i "$1" -an -f framecrc "crc/$fn-3-vsync.txt" >/dev/null 2>&1
-
-md5 "crc/$fn-"[1234].txt
-echo
-md5 "crc/$fn-"*vsync.txt

+ 0 - 95
mt-work/todo.txt

@@ -1,95 +0,0 @@
-Todo
-
--- For other people
-- Multithread vc1.
-- Multithread an intra codec like mjpeg (trivial).
-- Fix mpeg1 (see below).
-- Try the first three items under Optimization.
-- Fix h264 (see below).
-- Try mpeg4 (see below).
-
--- Bug fixes
-
-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 that aren't parsed (e.g. mp4) and contain PAFF with two
-field pictures in the same packet are not optimal. Modify the
-nals_needed check so that the second field's first slice is
-considered as needed, then uncomment the FIXME code in decode_postinit.
-Ex: http://astrange.ithinksw.net/ffmpeg/mt-samples/PAFF-Chalet-Tire.mp4
-
-mpeg4:
-- Packed B-frames need to be explicitly split up
-when frame threading is on. It's not very fast
-without this.
-- The buffer age optimization is disabled due to
-the way buffers are allocated across threads. The
-branch 'fix_buffer_age' has an attempt to fix it
-which breaks ffplay.
-- Support interlaced.
-
-mpeg1/2:
-- Seeking always prints "first frame not a keyframe"
-with threads on. Currently disabled for this reason.
-
--- Prove correct
-
-- decode_update_progress() in h264.c
-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.
-- MPV_lowest_referenced_row() and co in mpegvideo.c
-- Same in vp3.
-
--- 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. 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++"
-loop in h264.c await_references(), try turning the list0/list1 check
-above into a loop without being slower.
-- Support frame+slice threading at the same time
-by assigning slice_count threads for frame threads
-to use with execute(). This is simpler but unbalanced
-if only one frame thread uses any.
-
--- Features
-
-- Support streams with width/height changing. This
-requires flushing all current frames (and buffering
-the input in the meantime), closing the codec and
-reopening it. Or don't support it.
-- Support encoding. Might need more threading primitives
-for good ratecontrol; would be nice for audio and libavfilter too.
-- Async decoding part 1: instead of trying to
-start every thread at the beginning, return a picture
-if the earliest thread is already done, but don't wait
-for it. Not sure what effect this would have.
-- Part 2: have an API that doesn't wait for the decoding
-thread, only returns EAGAIN if it's not ready. What will
-it do with the next input packet if it returns that?
-- Have an API that returns finished pictures but doesn't
-require sending new ones. Maybe allow NULL avpkt when
-not at the end of the stream.
-
--- Samples
-
-http://astrange.ithinksw.net/ffmpeg/mt-samples/
-
-See yuvcmp.c in this directory to compare decoded samples.
-
-For debugging, try commenting out ff_thread_finish_setup calls so
-that only one thread runs at once, and then binary search+
-scatter printfs to look for differences in codec contexts.

+ 0 - 5
mt-work/valgrind-check.sh

@@ -1,5 +0,0 @@
-#!/bin/bash
-
-valgrind --track-origins=yes --leak-check=full ./ffmpeg_g -threads 1 -vsync 0 -y -t 30 -i "$1" -an -f null /dev/null
-
-valgrind --track-origins=yes --leak-check=full ./ffmpeg_g -threads 3 -vsync 0 -y -t 30 -i "$1" -an -f null /dev/null

+ 0 - 0
mt-work/yuvcmp.c → tools/yuvcmp.c