Advertisement
Guest User

Untitled

a guest
Sep 23rd, 2024
31
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 0.95 KB | None | 0 0
  1. #!/bin/sh
  2.  
  3. [ $# -eq 2 -o $# -eq 3 ] || { echo "Syntax: ofdmtv-decode.sh <output dir> <input file> [<max fragments>]"; exit 1; }
  4.  
  5. outdir=$1
  6. infile=$2
  7. fragments=1000
  8. [ $# -eq 3 ] && fragments=$3
  9.  
  10. tmpdir=$(mktemp -d)
  11. trap "rm -rf $tmpdir" exit
  12.  
  13. mkdir -p $outdir
  14. fragment_list=
  15. for fragment in $(seq 0 $fragments); do
  16.     ofdmtv-modem-decode $tmpdir/$fragment.crs $infile $fragment > /dev/null 2>&1
  17.     md5sum $tmpdir/$fragment.crs
  18.     fragment_list="$fragment_list $tmpdir/$fragment.crs"
  19. done
  20.  
  21. touch $tmpdir/md5
  22. for fragment in $(seq 0 $fragments); do
  23.     file=$outdir/$fragment.jpg
  24.     ofdmtv-crs-decode $file $fragment_list > /dev/null 2>&1
  25.     fragment_list=$(echo $fragment_list | sed 's/[^ ]* //')
  26.  
  27.     if [ -f $file ]; then
  28.         if [ -s $file ]; then
  29.             md5=$(md5sum < $file | cut -b -32)
  30.             if grep ^$md5 $tmpdir/md5 > /dev/null; then
  31.                 rm -f $file
  32.             else
  33.                 ls -l $file
  34.                 echo $md5 $file >> $tmpdir/md5
  35.             fi
  36.         else
  37.             rm -f $file
  38.         fi
  39.     fi
  40. done
  41.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement