xref: /OK3568_Linux_fs/debian/overlay-debug/rockchip-test/camera/camera_stresstest_rkisp_demo.sh (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun#!/bin/bash
2*4882a593Smuzhiyunecho "======================================================="
3*4882a593Smuzhiyunecho "            Test all Cameras (By rkisp_demo)           "
4*4882a593Smuzhiyunecho "======================================================="
5*4882a593Smuzhiyun#num is test times
6*4882a593SmuzhiyunCOUNT=1
7*4882a593Smuzhiyun#cam link num
8*4882a593SmuzhiyunCAM_NUM=0;
9*4882a593Smuzhiyun#media node max
10*4882a593SmuzhiyunMEDIA_MAX=20;
11*4882a593Smuzhiyun#cif path node name
12*4882a593SmuzhiyunCIF_PATH="stream_cif"
13*4882a593Smuzhiyun#isp path node name
14*4882a593SmuzhiyunISP_PATH="rkisp_mainpath"
15*4882a593Smuzhiyunfor i in $(seq 0 $MEDIA_MAX); do
16*4882a593Smuzhiyun	MEDIA_DEV=/dev/media$i
17*4882a593Smuzhiyun	ISP_NODE=$(media-ctl -d $MEDIA_DEV -e $ISP_PATH)
18*4882a593Smuzhiyun	CIF_NODE=$(media-ctl -d $MEDIA_DEV -e $CIF_PATH)
19*4882a593Smuzhiyun	Link=$(media-ctl -d $MEDIA_DEV -p | grep "0 link")
20*4882a593Smuzhiyun
21*4882a593Smuzhiyun	if echo $ISP_NODE | grep -q "^/dev/video"
22*4882a593Smuzhiyun	then
23*4882a593Smuzhiyun		CAM_NUM=$(($CAM_NUM + 1));
24*4882a593Smuzhiyun		eval VIDEO_NODE$i=$ISP_NODE;
25*4882a593Smuzhiyun		echo "     Check /dev/media$i is ISP-camera($(eval echo \$VIDEO_NODE$i))"
26*4882a593Smuzhiyun	elif echo $CIF_NODE | grep -q "^/dev/video"
27*4882a593Smuzhiyun	then
28*4882a593Smuzhiyun		CAM_NUM=$(($CAM_NUM + 1));
29*4882a593Smuzhiyun		if echo $Link | grep -q "0 link"
30*4882a593Smuzhiyun		then
31*4882a593Smuzhiyun			CAM_NUM=$(($CAM_NUM - 1));
32*4882a593Smuzhiyun			eval VIDEO_NODE$i="";
33*4882a593Smuzhiyun			echo "     Check /dev/media$i didn't link anycamera($(eval echo \$VIDEO_NODE$i)) "
34*4882a593Smuzhiyun		else
35*4882a593Smuzhiyun			eval VIDEO_NODE$i=$CIF_NODE;
36*4882a593Smuzhiyun			echo "     Check /dev/media$i is CIF-camera($(eval echo \$VIDEO_NODE$i))"
37*4882a593Smuzhiyun		fi
38*4882a593Smuzhiyun	else
39*4882a593Smuzhiyun		VID_NUM=$i;
40*4882a593Smuzhiyun		echo ""
41*4882a593Smuzhiyun		echo "     Test camera(Cam_num=$CAM_NUM) times"
42*4882a593Smuzhiyun		echo "======================================================="
43*4882a593Smuzhiyun	#	break;
44*4882a593Smuzhiyun	fi
45*4882a593Smuzhiyundone
46*4882a593SmuzhiyunVID_NUM=$(($VID_NUM -1));
47*4882a593Smuzhiyun
48*4882a593Smuzhiyunwhile true;do
49*4882a593Smuzhiyun	NOW=`date`
50*4882a593Smuzhiyun	TIME_LABEL="====== Count:$COUNT Time: $NOW ======"
51*4882a593Smuzhiyun	echo $TIME_LABEL
52*4882a593Smuzhiyun	COUNT=$(expr $COUNT + 1 )
53*4882a593Smuzhiyun	i=0;
54*4882a593Smuzhiyun	for i in $(seq 0 $CAM_NUM); do
55*4882a593Smuzhiyun		VIDEO_DEV=$(eval echo \$VIDEO_NODE$i);
56*4882a593Smuzhiyun		if echo $VIDEO_DEV | grep -q "^/dev/video"
57*4882a593Smuzhiyun		then
58*4882a593Smuzhiyun			rkisp_demo --device=$VIDEO_DEV --stream-to=/tmp/video$i.yuv --count=100;
59*4882a593Smuzhiyun			echo "======================================================="
60*4882a593Smuzhiyun			echo " camera $(eval echo \$VIDEO_NODE$i) No.($TEST_NUM) out /tmp/video$i.yuv is ok!";
61*4882a593Smuzhiyun			echo "======================================================="
62*4882a593Smuzhiyun			sleep 1;
63*4882a593Smuzhiyun		fi
64*4882a593Smuzhiyun	done;
65*4882a593Smuzhiyundone
66*4882a593Smuzhiyun	echo END $TIME_LABEL
67*4882a593Smuzhiyun
68