diff options
Diffstat (limited to 'old/evc/scripts')
-rwxr-xr-x | old/evc/scripts/bench_modes | 22 | ||||
-rwxr-xr-x | old/evc/scripts/bench_out | 11 | ||||
-rwxr-xr-x | old/evc/scripts/gen | 10 | ||||
-rwxr-xr-x | old/evc/scripts/report | 9 | ||||
-rwxr-xr-x | old/evc/scripts/stream | 7 | ||||
-rwxr-xr-x | old/evc/scripts/stream-nodebug | 7 |
6 files changed, 66 insertions, 0 deletions
diff --git a/old/evc/scripts/bench_modes b/old/evc/scripts/bench_modes new file mode 100755 index 0000000..2e66454 --- /dev/null +++ b/old/evc/scripts/bench_modes @@ -0,0 +1,22 @@ +#!/bin/fish +set w $argv[1] +set h $argv[2] +set t $argv[3] + +ffmpeg -hide_banner -i $argv[4] -to {$t} -vf scale={$w}x{$h},fps=30,format=rgb24 -f rawvideo pipe:1 >samples/raw +# ffmpeg -hide_banner -y -i $argv[4] -to {$t} -vf scale={$w}x{$h},fps=30,format=rgb24 -c:v vp9 samples/reference.webm + +echo +echo "file: "$argv[4] +echo "resolution: "{$w}x{$h} +echo "frames: "(math $t \* 30) +echo "reference (raw): "(du -h samples/raw | cut -f 1) +echo "reference (input): "(du -h $argv[4] | cut -f 1) +# echo "reference (vp8): "(du -h samples/reference.webm | cut -f 1) +# for mode in trivial simple-exhaustive simple-fast advanced advanced-partial +for mode in trivial simple-fast advanced + echo ----------- + echo "mode: $mode" + echo "time: $(command time -f %U ./target/release/reschmux-encode -W {$w} -H {$h} --mode $mode $argv[5..] <samples/raw >samples/encoded-$mode 2>| tail -n 1)s" + echo "size: $(du -h samples/encoded-$mode | cut -f 1)" +end diff --git a/old/evc/scripts/bench_out b/old/evc/scripts/bench_out new file mode 100755 index 0000000..d55cf08 --- /dev/null +++ b/old/evc/scripts/bench_out @@ -0,0 +1,11 @@ +#!/bin/fish +set w $argv[1] +set h $argv[2] + +# for mode in trivial simple-exhaustive simple-fast advanced advanced-partial +for mode in trivial simple-fast advanced + cargo run --release --bin reschmux-decode -- --debug < samples/encoded-$mode | + ffmpeg -y -hide_banner -framerate 25 -video_size {$w}x{$h} -pixel_format rgb24 -f rawvideo -i pipe:0 samples/decoded-$mode-debug.mp4 + cargo run --release --bin reschmux-decode -- < samples/encoded-$mode | + ffmpeg -y -hide_banner -framerate 25 -video_size {$w}x{$h} -pixel_format rgb24 -f rawvideo -i pipe:0 samples/decoded-$mode.mp4 +end diff --git a/old/evc/scripts/gen b/old/evc/scripts/gen new file mode 100755 index 0000000..6c8fa3c --- /dev/null +++ b/old/evc/scripts/gen @@ -0,0 +1,10 @@ +#!/bin/fish +set w $argv[1] +set h $argv[2] +ffmpeg -hide_banner -i $argv[3] -vf scale={$w}x{$h},fps=30,format=rgb24 -f rawvideo pipe:1 | + LOG=info cargo run --release --bin reschmux-encode -- -W {$w} -H {$h} $argv[4..] >samples/encoded +ffmpeg -hide_banner -y -i $argv[3] -vf scale={$w}x{$h},fps=30,format=rgb24 samples/reference.webm +LOG=info cargo run --release --bin decode -- <samples/encoded | + ffmpeg -hide_banner -y -framerate 30 -video_size {$w}x{$h} -pixel_format rgb24 -f rawvideo -i pipe:0 samples/decoded.webm +LOG=info cargo run --release --bin decode -- --debug <samples/encoded | + ffmpeg -hide_banner -y -framerate 30 -video_size {$w}x{$h} -pixel_format rgb24 -f rawvideo -i pipe:0 samples/decoded-debug.webm diff --git a/old/evc/scripts/report b/old/evc/scripts/report new file mode 100755 index 0000000..06a5517 --- /dev/null +++ b/old/evc/scripts/report @@ -0,0 +1,9 @@ +#!/bin/fish +cargo build --release +begin + echo "version: $argv[1]" + echo "commit: $(cat ../.git/refs/heads/master | head -c 10)" + echo "encode: $(command time -f %U ./target/release/reschmux-encode -W (math 1920 / 2) -H (math 1080 / 2) <samples/raw >samples/encoded 2>| tail -n 1)s" + echo "decode: $(command time -f %U ./target/release/reschmux-decode <samples/encoded >samples/decoded 2>| tail -n 1)s" + echo "size: $(du -h samples/encoded | cut -f 1)" +end | tee -a reports/(date) diff --git a/old/evc/scripts/stream b/old/evc/scripts/stream new file mode 100755 index 0000000..7e9400d --- /dev/null +++ b/old/evc/scripts/stream @@ -0,0 +1,7 @@ +#!/bin/fish +set w $argv[1] +set h $argv[2] +ffmpeg -hide_banner -i $argv[3] -vf scale={$w}x{$h},fps=30,format=rgb24 -f rawvideo pipe:1 | + cargo run --release --bin reschmux-encode -- -W {$w} -H {$h} $argv[4..] | + cargo run --release --bin reschmux-decode -- --debug | + ffplay -hide_banner -framerate 30 -video_size {$w}x{$h} -pixel_format rgb24 -f rawvideo pipe:0 diff --git a/old/evc/scripts/stream-nodebug b/old/evc/scripts/stream-nodebug new file mode 100755 index 0000000..380ec5f --- /dev/null +++ b/old/evc/scripts/stream-nodebug @@ -0,0 +1,7 @@ +#!/bin/fish +set w $argv[1] +set h $argv[2] +ffmpeg -hide_banner -i $argv[3] -vf scale={$w}x{$h},fps=30,format=rgb24 -f rawvideo pipe:1 | + cargo run --release --bin reschmux-encode -- -W {$w} -H {$h} $argv[4..] | + cargo run --release --bin reschmux-decode -- | + ffplay -hide_banner -framerate 30 -video_size {$w}x{$h} -pixel_format rgb24 -f rawvideo pipe:0 |