Project

General

Profile

Bug #358 » gst.sh

培旭, 06/30/2023 09:50 AM

 
1
#! /bin/bash -x
2
selfpath=$(cd "$(dirname "$0")"; pwd)
3
function decode_test()
4
{
5
for ((i=0;i<10;))
6
do
7
  let "cycle=cycle+1"
8
  echo "==============================$cycle=============================" >> $1
9
  case $6 in
10
	  rk3588|lba3568-linux|lz120-linux|lz160-linux|lpb3588-linux)
11
		  /usr/bin/gst-launch-1.0 filesrc location=$4 ! qtdemux ! h264parse ! mppvideodec ! kmssink sync=false async=false render-rectangle='<20,600,640,480>';gst_rev_arry[$i]=$?;;
12
	  rk3399|rk3399pro|rk3568|lpb3568-linux-f0)
13
		  su root -c "DISPLAY=:0.0 /usr/bin/gst-launch-1.0 filesrc location=$4 ! qtdemux ! h264parse ! mppvideodec ! kmssink sync=false async=false render-rectangle='<0,220,960,10:80>'";gst_rev_arry[$i]=$?;;
14
          *)
15
		  echo error;;
16
  esac
17
#  gst_rev_arry[$i]=$?
18
  echo ${gst_rev_arry[*]}
19
#  echo ${gst_rev_arry[$i]}
20
  if [ ${gst_rev_arry[$i]} = "0" ];then
21
       sudo $selfpath/logprint.sh PASS Decode_Test $1
22
  elif [ ${gst_rev_arry[$i]} != "0" ];then
23
       sudo $selfpath/logprint.sh FAIL Decode_Test $1
24
  fi
25
       cur_stamp=`date +%s`
26
  let hours_stamp=($cur_stamp - $5)
27
       let test_time=($hours_stamp/60)
28
  if [ $test_time -ge $3 ];then
29
             a=$(grep -o "FAIL" $1 |wc -l) && b=$(grep -o "PASS" $1 |wc -l)
30
             echo $a $b
31
             if [ $a = 0 ] && [ $b -ge 1 ] ; then
32
                 sudo $selfpath/logprint.sh PASS Decode_Test $2
33
                 exit
34
             elif [ $a -ge 1 ]; then
35
                 sudo $selfpath/logprint.sh FAIL Decode_Test $2
36
                 exit
37
	     fi
38
   fi
39
done
40
}
41
decode_test $1 $2 $3 $4 $5 $6
(1-1/3)