hc
2024-12-19 9370bb92b2d16684ee45cf24e879c93c509162da
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#!/bin/bash
echo "======================================================="
echo "    Test all camera(rkisp_demo)"
echo "======================================================="
if [ $# -eq 0 ];
then
   echo "If you want to test rkisp/rkaiq camera 1000 times"
   echo "CMD: camera_stresstest.sh 1000"
   exit
fi
#num is test times
TEST_NUM=0;
#cam link num
CAM_NUM=0;
#media node max
MEDIA_MAX=20;
#cif path node name
CIF_PATH="stream_cif"
#isp path node name
ISP_PATH="rkisp_mainpath"
for i in $(seq 0 $MEDIA_MAX); do
   MEDIA_DEV=/dev/media$i
   ISP_NODE=$(media-ctl -d $MEDIA_DEV -e $ISP_PATH)
   CIF_NODE=$(media-ctl -d $MEDIA_DEV -e $CIF_PATH)
   Link=$(media-ctl -d $MEDIA_DEV -p | grep "0 link")
 
   if echo $ISP_NODE | grep -q "^/dev/video"
   then
       CAM_NUM=$(($CAM_NUM + 1));
       eval VIDEO_NODE$i=$ISP_NODE;
       echo "     Check /dev/media$i is ISP-camera($(eval echo \$VIDEO_NODE$i))"
   elif echo $CIF_NODE | grep -q "^/dev/video"
   then
       CAM_NUM=$(($CAM_NUM + 1));
       if echo $Link | grep -q "0 link"
       then
           CAM_NUM=$(($CAM_NUM - 1));
           eval VIDEO_NODE$i="";
           echo "     Check /dev/media$i didn't link anycamera($(eval echo \$VIDEO_NODE$i)) "
       else
           eval VIDEO_NODE$i=$CIF_NODE;
           echo "     Check /dev/media$i is CIF-camera($(eval echo \$VIDEO_NODE$i))"
       fi
   else
       VID_NUM=$i;
       echo ""
       echo "     Test camera(Cam_num=$CAM_NUM) $1 times"
       echo "======================================================="
   #    break;
   fi
done
VID_NUM=$(($VID_NUM -1));
 
while [ $TEST_NUM -lt $1 ]
do
   #init test 
   i=0;
   for i in $(seq 0 $CAM_NUM); do
       VIDEO_DEV=$(eval echo \$VIDEO_NODE$i);
       if echo $VIDEO_DEV | grep -q "^/dev/video"
       then
           rkisp_demo --device=$VIDEO_DEV --stream-to=/tmp/video$i.yuv --count=100;
           echo "======================================================="
           echo " camera $(eval echo \$VIDEO_NODE$i) No.($TEST_NUM) out /tmp/video$i.yuv is ok!";
           echo "======================================================="
           sleep 1;
       fi
   done;
   TEST_NUM=$(($TEST_NUM +1));
done;