diff README.txt @ 2:897f711a7157

rearrange to work with autoconf
author Nina Engelhardt <nengel@mailbox.tu-berlin.de>
date Tue, 25 Sep 2012 15:55:33 +0200
parents
children
line diff
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/README.txt	Tue Sep 25 15:55:33 2012 +0200
     1.3 @@ -0,0 +1,79 @@
     1.4 +App: h264dec
     1.5 +
     1.6 +This application decodes H.264 raw videos.
     1.7 +
     1.8 +Build Sequential/Pthreads:
     1.9 +
    1.10 +autoreconf -i -f
    1.11 +mkdir build
    1.12 +cd build
    1.13 +../configure --enable-ssse3 --enable-sdl2
    1.14 +make
    1.15 +
    1.16 +Build OmpSs:
    1.17 +
    1.18 +autoreconf -i -f
    1.19 +mkdir build
    1.20 +cd build-ss
    1.21 +../configure CC=sscc --enable-ssse3 --enable-sdl2
    1.22 +make
    1.23 +
    1.24 +ssse3 enables assembler optimizations up to ssse3 (optional)
    1.25 +sdl enables a rudimentary viewing capability      (optional)
    1.26 +
    1.27 +Usage Sequential/Pthreads:
    1.28 +./h264dec -i $(INPUT_VIDEO) -s
    1.29 +./h264dec -i $(INPUT_VIDEO) -t $(THREADS)
    1.30 +
    1.31 +Usage OmpSs:
    1.32 +NX_PES=<numthreads> ./h264dec -i <inputfile> -e <num parallel entropy frames> -z <width> <height> --static-3d
    1.33 +
    1.34 +-e specify the number of entropy decode pipeline buffers and should be ideally
    1.35 +the same as the number of threads.
    1.36 +
    1.37 +-z allows to set the MB reconstruction grouped block size. A size between 6 by 6 to 10 by 10
    1.38 +was found to strike a good balance between overhead and parallelism, but is machine and input
    1.39 +dependent.
    1.40 +
    1.41 +--static-3d performs overlapping wavefront decoding.
    1.42 +
    1.43 +General usage:
    1.44 +-d 				displays output
    1.45 +-f 				fullscreen
    1.46 +-o $(OUT_FILE)  write raw YUV
    1.47 +-v  			show framerate
    1.48 +
    1.49 +
    1.50 +The INPUT_VIDEOs are in "inputs_encore", but should be able to decode any raw H.264 stream using
    1.51 +one slice per frame, non-interlaced, and CABAC, YUV420.
    1.52 +
    1.53 +
    1.54 +Integrated OmpSs player demo
    1.55 +----------------------------
    1.56 +NOTE: for the player demo SDL2 must be installed.
    1.57 +
    1.58 +1. Go to the OmpSs build directory (/home/cchi/Projects/ffmpeg_smp/build-ss)
    1.59 +
    1.60 +2. Launch the H.264 decoder with the desired options:
    1.61 +
    1.62 +NX_PES=<numthreads> ./h264dec <inputfile> -v (verbose) -e <num parallel entropy frames> -z <width> <height> -d (display) -f (fullscreen)
    1.63 +
    1.64 +note that <num parallel entropy frames> should be equal or higher than <numthreads> for optimal performance
    1.65 +
    1.66 +Examples:
    1.67 +
    1.68 +NX_PES=7 ./h264dec -i ../../h264_movies/park_joy_2160px5.h264 -v -z 8 8 -df -e 9
    1.69 +NX_PES=7 ./h264dec -i ../../h264_movies/big_buck_bunny_1080p24.h264 -v -d  -z 6 6 -e 9
    1.70 +
    1.71 +Interacting with the program
    1.72 +----------------------------
    1.73 +<CTRL+F>    Fullscreen mode
    1.74 +<ESCAPE>    Window mode
    1.75 +<SPACE>     Pause/resume
    1.76 +<M>         Show/hide macroblock borders
    1.77 +<arrows>    When macroblock borders are shown resizes the macroblocks
    1.78 +<ALT+F4>    Close
    1.79 +
    1.80 +Force close in case of lockup
    1.81 +-----------------------------
    1.82 +On a terminal: killall -9 h264dec