History

remove unneed script, MD5 check and simplified the case check logic

huade committed 10 years ago

Commit 62b4f5d1 parent f22c47c3 files · +62 −139Browse files

Showing the changes to test/encoder_binary_comparison/Scripts (2 of 3 files). Show all

Unified · Split

2 files
  1. test/encoder_binary_comparison/Scripts/run_BinarySHA1Comparison.sh +54 −131
  2. test/encoder_binary_comparison/Scripts/run_BitStreamToYUV.sh +1 −1
test/encoder_binary_comparison/Scripts/run_BinarySHA1Comparison.sh+54−131
@@ -22,25 +22,19 @@ · 21 unmodified lines
2222 #usage runGlobalVariableDef
2323 runGlobalVariableDef()
2424 {
25− WorkingDirDir=""
2625 #test data space
2726 FinalResultPath=""
2827 IssueDataPath=""
2928 TempDataPath=""
3029 #for test sequence info
31− TestSequenceName=""
3230 PicW=""
3331 PicH=""
34− #test cfg file and test info output file
35− ConfigureFile=""
36− AllCaseFile=""
3732 #xxx.csv
3833 AllCasePassStatusFile=""
3934 #for encoder command
4035 declare -a aEncoderCommandSet
4136 declare -a aEncoderCommandName
4237 declare -a aEncoderCommandValue
43− declare -a aRecYUVFileList
4438 #encoder parameters change based on the case info
4539 let "EncoderFlag = 0"
4640 CaseInfo=""
@@ -55,7 +49,6 @@ runGlobalVariableDef() · 8 unmodified lines
5549 #usage runEncoderCommandInital
5650 runEncoderCommandInital()
5751 {
58−
5952 aEncoderCommandSet=( -utype -frms -numl -numtl \
6053 -sw -sh "-dw 0" "-dh 0" "-dw 1" "-dh 1" "-dw 2" "-dh 2" "-dw 3" "-dh 3" \
6154 "-frout 0" "-frout 1" "-frout 2" "-frout 3" \
@@ -95,16 +88,11 @@ runGlobalVariableInitial() · 33 unmodified lines
9588 IssueDataPath="${CurrentDir}/issue"
9689 TempDataPath="TempData"
9790 TestSequencePath="${CurrentDir}"
98− #get YUV detail info $picW $picH $FPS
99− declare -a aYUVInfo
100− aYUVInfo=(`./run_ParseYUVInfo.sh ${TestSequenceName}`)
101− PicW=${aYUVInfo[0]}
102− PicH=${aYUVInfo[1]}
103− #test cfg file and test info output file
104− ConfigureFile=welsenc.cfg
105− AllCasePassStatusFile="${FinalResultPath}/${TestSequenceName}_AllCaseOutput.csv"
106− UnpassCaseFile="${FinalResultPath}/${TestSequenceName}_unpassCaseOutput.csv"
107− UpdateSHA1TableFile="${FinalResultPath}/${TestSequenceName}_UpdateSHA1Table.csv"
91+
92+ #test info output file
93+ AllCasePassStatusFile="${FinalResultPath}/${TestYUVName}_AllCaseOutput.csv"
94+ UnpassCaseFile="${FinalResultPath}/${TestYUVName}_unpassCaseOutput.csv"
95+ UpdateSHA1TableFile="${FinalResultPath}/${TestYUVName}_UpdateSHA1Table.csv"
10896
10997 HeadLine1="EncoderFlag, DecoderFlag, FPS, BitSreamSHA1, BitSreamMD5, InputYUVSHA1, InputYUVMD5,\
11098 -utype, -frms, -numl, -numtl, -sw, -sh,\
@@ -144,13 +132,15 @@ runGlobalVariableInitial() · 33 unmodified lines
144132 EncoderCommand=""
145133 EncoderLogFile="${TempDataPath}/Encoder.log"
146134 TargetSHA1=""
147− TargetMD5=""
148135 TargetYUVSHA1=""
149− TargetYUVMD5=""
150136 BenchmarkSHA1=""
151− BenchmarkMD5=""
152137 BenchmarkYUVSHA1=""
153− BenchmarkYUVMD5=""
138+
139+ RecParam=""
140+ for((i=0;i<4;i++))
141+ do
142+ RecParam="${RecParam} -drec ${i} ${TempDataPath}/${TestYUVName}_rec${i}.yuv"
143+ done
154144 }
155145 #***********************************************************
156146 #called by runAllCaseTest
@@ -163,76 +153,31 @@ runParseCaseInfo() · 6 unmodified lines
163153 echo "no parameter!"
164154 return 1
165155 fi
166− local TempData=""
156+
167157 local CaseData=$@
168− local BitstreamPrefix=""
169158 BenchmarkSHA1=`echo $CaseData |awk 'BEGIN {FS="[,\r]"} {print $1} ' `
170− BenchmarkMD5=`echo $CaseData |awk 'BEGIN {FS="[,\r]"} {print $2} ' `
171159 BenchmarkYUVSHA1=`echo $CaseData |awk 'BEGIN {FS="[,\r]"} {print $3} ' `
172− BenchmarkYUVMD5=`echo $CaseData |awk 'BEGIN {FS="[,\r]"} {print $4} ' `
173−
174−
175− declare -a aTempParamIndex=( 6 7 8 9 10 11 12 13 15 16 17 19 20 21 25 26 27 28 31 32 33 34 35 36 )
176− TempData=`echo $CaseData |awk 'BEGIN {FS="[,\r]"} {for(i=5;i<=NF;i++) printf(" %s",$i)} ' `
177− aEncoderCommandValue=(${TempData})
178− let "TempParamFlag=0"
179−
180− for((i=0; i<$NumParameter; i++))
181− do
182− for ParnmIndex in ${aTempParamIndex[@]}
183− do
184− if [ $i -eq ${ParnmIndex} ]
185− then
186− let "TempParamFlag=1"
187− fi
188− done
189−
190− if [ ${TempParamFlag} -eq 0 ]
191− then
192− BitstreamPrefix=${BitstreamPrefix}_${aEncoderCommandName[$i]}_${aEncoderCommandValue[$i]}
193− fi
194− let "TempParamFlag=0"
195− done
196−
197− BitstreamTarget=${TempDataPath}/${TestSequenceName}_${BitstreamPrefix}_codec_target.264
198− echo ""
199− echo "BitstreamPrefix is ${BitstreamPrefix}"
200− echo ""
160+ aEncoderCommandValue=(`echo $CaseData |awk 'BEGIN {FS="[,\r]"} {for(i=5;i<=NF;i++) printf(" %s",$i)} ' `)
161+ BitstreamTarget=${TempDataPath}/${TestYUVName}_codec_target.264
201162 }
202163
203164 runEncodeOneCase()
204165 {
205− local ParamCommand=""
166+ EncoderCommand=""
206167 BitStreamFile=${BitstreamTarget}
207168
208− for ((i=4; i<${NumParameter}; i++))
169+ for ((i=0; i<${NumParameter}; i++))
209170 do
210− ParamCommand="${ParamCommand} ${aEncoderCommandSet[$i]} ${aEncoderCommandValue[$i]} "
171+ EncoderCommand="${EncoderCommand} ${aEncoderCommandSet[$i]} ${aEncoderCommandValue[$i]} "
211172 done
212173
213− for((i=0;i<4;i++))
214− do
215− aRecYUVFileList[$i]="${TempDataPath}/${TestYUVName}_rec${i}.yuv"
216− done
174+ EncoderCommand="./h264enc welsenc.cfg -lconfig 0 layer0.cfg -lconfig 1 layer1.cfg -lconfig 2 layer2.cfg -lconfig 3 layer3.cfg \
175+ -bf ${BitStreamFile} -org ${TestSequencePath}/${TestYUVName} ${RecParam} ${EncoderCommand}"
176+ echo -e "\n---------------Encode One Case-------------------------------------------"
177+ echo -e "case encode command is : \n ${EncoderCommand} "
217178
218− ParamCommand="${aEncoderCommandSet[0]} ${aEncoderCommandValue[0]} ${aEncoderCommandSet[1]} ${aEncoderCommandValue[1]} \
219− ${aEncoderCommandSet[2]} ${aEncoderCommandValue[2]} \
220− -lconfig 0 layer0.cfg -lconfig 1 layer1.cfg -lconfig 2 layer2.cfg -lconfig 3 layer3.cfg \
221− ${aEncoderCommandSet[3]} ${aEncoderCommandValue[3]} \
222− ${ParamCommand}"
223− echo ""
224− echo "---------------Encode One Case-------------------------------------------"
225− echo "case line is :"
226− EncoderCommand="./h264enc welsenc.cfg ${ParamCommand} -bf ${BitStreamFile} \
227− -drec 0 ${aRecYUVFileList[0]} -drec 1 ${aRecYUVFileList[1]} \
228− -drec 2 ${aRecYUVFileList[2]} -drec 3 ${aRecYUVFileList[3]} \
229− -org ${TestSequencePath}/${TestSequenceName}"
230− echo ${EncoderCommand}
231179 echo -e "\n\n"
232− ./h264enc welsenc.cfg ${ParamCommand} -bf ${BitStreamFile} \
233− -drec 0 ${aRecYUVFileList[0]} -drec 1 ${aRecYUVFileList[1]} \
234− -drec 2 ${aRecYUVFileList[2]} -drec 3 ${aRecYUVFileList[3]} \
235− -org ${TestSequencePath}/${TestSequenceName} 2>${EncoderLogFile}
180+ ${EncoderCommand} 2>${EncoderLogFile}
236181 if [ $? -eq 0 ]
237182 then
238183 let "EncoderFlag=0"
@@ -255,9 +200,8 @@ runEncodeOneCase() · 16 unmodified lines
255200 #usage runJSVMVerify
256201 runBitStreamVerify()
257202 {
258− echo ""
259− echo "******************************************"
260− echo "Bit streamSHA1 value comparison.... "
203+ echo -e "\n******************************************"
204+ echo -e "Bit stream SHA1 value comparison.... "
261205 #*******************************************
262206 TargetSHA1="NULL"
263207 TargetMD5="NULL"
@@ -267,7 +211,7 @@ runBitStreamVerify() · 3 unmodified lines
267211 if [ ${EncoderFlag} -eq 1 ]
268212 then
269213 let "UnpassCaseNum++"
270− echo "1:unpassed! encoder initial failed or crash!"
214+ echo "1:unpassed! encoder initial failed or crash!"
271215 DiffFlag="1:unpassed! encoder initial failed or crash!"
272216 return 1
273217 fi
@@ -275,46 +219,30 @@ runBitStreamVerify() · 1 unmodified line
275219 if [ ! -s ${BitStreamFile} ]
276220 then
277221 let "UnpassCaseNum++"
278− echo "2:unpassed! 0 bits--bit stream"
222+ echo "2:unpassed! 0 bits--bit stream"
279223 DiffFlag="2:unpassed! 0 bits--bit stream"
280224 return 1
281225 fi
226+
282227 #*******************************************
283− #*******************************************
284− echo ""
285− echo "${BitStreamFile}"
286228 #SHA1
287− TargetSHA1=`openssl sha1 ${BitStreamFile}`
288− TargetSHA1=`echo ${TargetSHA1} | awk '{print $2}' `
289− TargetMD5=`openssl md5 ${BitStreamFile}`
290− TargetMD5=`echo ${TargetMD5} | awk '{print $2}' `
291−
292− TargetYUVSHA1=`openssl sha1 ${TestSequencePath}/${TestSequenceName} `
293− TargetYUVSHA1=`echo ${TargetYUVSHA1} | awk '{print $2}' `
294− TargetYUVMD5=`openssl md5 ${TestSequencePath}/${TestSequenceName} `
295− TargetYUVMD5=`echo ${TargetYUVMD5} | awk '{print $2}' `
296−
297− if [[ "${TargetSHA1}" =~ "${BenchmarkSHA1}" ]]
229+ TargetSHA1=`openssl sha1 ${BitStreamFile} | awk '{print $2}'`
230+ TargetYUVSHA1=`openssl sha1 ${TestSequencePath}/${TestYUVName} | awk '{print $2}'`
231+ if [[ "${TargetSHA1}" =~ "${BenchmarkSHA1}" ]]
298232 then
299− echo "bitstream pass! SHA1--${TargetSHA1} ----- ${BenchmarkSHA1}"
300− echo "MD5 info: MD5--${TargetMD5} ----- ${BenchmarkMD5}"
301− echo "YUV SHA1 info: SHA1--${TargetYUVSHA1} ---- ${BenchmarkYUVSHA1} "
302− echo "YUV MD5 info: MD5--${TargetYUVMD5} ---- ${BenchmarkYUVMD5}"
233+ echo "bitstream pass! SHA1--${TargetSHA1} ----- ${BenchmarkSHA1} YUV--SHA1--info: ${TargetYUVSHA1} ---- ${BenchmarkYUVSHA1}"
303234 DiffFlag="0:passed!"
304235 let "PassCaseNum++"
305236 return 0
306237 else
307− echo "!!! SHA1 string not match: ${TargetSHA1} ----- ${BenchmarkSHA1} "
308− echo "MD5 info: MD5--${TargetMD5} ----- ${BenchmarkMD5}"
309− echo "YUV SHA1 info: SHA1--${TargetYUVSHA1} ---- ${BenchmarkYUVSHA1} "
310− echo "YUV MD5 info: MD5--${TargetYUVMD5} ---- ${BenchmarkYUVMD5}"
238+ echo "!!! SHA1 string not match: ${TargetSHA1} ----- ${BenchmarkSHA1} YUV--SHA1--info: ${TargetYUVSHA1} ---- ${BenchmarkYUVSHA1}"
311239 DiffFlag="3:unpassed!"
312240 let "UnpassCaseNum++"
313241 return 1
314242 fi
315243 }
316244
317−#called by runAllCaseTest
245+#called by runAllCaseTest
318246 #delete temp data files and output single case test result to log file
319247 #usage runSingleCasePostAction $CaseData
320248 runSingleCasePostAction()
@@ -326,16 +254,15 @@ runSingleCasePostAction() · 5 unmodified lines
326254 fi
327255 local CaseData=$@
328256 CaseInfo=`echo $CaseData | awk 'BEGIN {FS="[,\r]"} {for(i=5;i<=NF;i++) printf(" %s,",$i)} '`
329− PassStatusInfo="${DiffFlag}, ${TargetSHA1}, ${BenchmarkSHA1}, ${TargetMD5}, ${BenchmarkMD5},\
330− ${TargetYUVMD5}, ${BenchmarkYUVMD5}, ${TargetYUVSHA1}, ${BenchmarkYUVSHA1},\
331− ${CaseInfo}, ${EncoderCommand} "
257+ PassStatusInfo="${DiffFlag}, ${TargetSHA1}, ${BenchmarkSHA1}, ${TargetYUVSHA1}, ${BenchmarkYUVSHA1}, ${CaseInfo}, ${EncoderCommand} "
332258 echo "${PassStatusInfo}">>${AllCasePassStatusFile}
333259 if [ "$DiffFlag" != "0:passed!" ]
334260 then
335261 echo "${PassStatusInfo}">>${UnpassCaseFile}
336262 fi
337− echo "${TargetSHA1}, ${TargetMD5},${TargetYUVMD5}, ${TargetYUVSHA1},${CaseInfo}">>${UpdateSHA1TableFile}
338− ./run_SafeDelete.sh ${BitstreamTarget} >>${AllCaseConsoleLogFile}
263+
264+ echo "${TargetSHA1}, ${TargetMD5},${TargetYUVMD5}, ${TargetYUVSHA1},${CaseInfo}">>${UpdateSHA1TableFile}
265+ #./run_SafeDelete.sh ${BitstreamTarget} >>${AllCaseConsoleLogFile}
339266 }
340267
341268 #usage runOutputPassNum
@@ -344,7 +271,7 @@ runOutputPassNum() · 2 unmodified lines
344271 # output file locate in ../result
345272 echo ""
346273 echo "***********************************************************"
347− echo "${TestSequenceName}"
274+ echo "${TestYUVName}"
348275 echo "total case Num is: ${TotalCaseNum}"
349276 echo "pass case Num is: ${PassCaseNum}"
350277 echo "unpass case Num is: ${UnpassCaseNum}"
@@ -376,17 +303,15 @@ runAllCaseTest() · 25 unmodified lines
376303 then
377304 if [ "$DiffFlag" = "0:passed!" ]
378305 then
379− echo -e "\033[32m OK! ${TestSequenceName} Case Index ${TotalCaseNum}:SHA-1(Current--Benchmark): ${TargetSHA1}-----${BenchmarkSHA1} \033[0m"
380− echo -e "\033[32m ----MD5 (Current--Benchmark): ${TargetMD5}-----${BenchmarkMD5} \033[0m"
381− echo -e "\033[32m ----YUVMD5: ${TargetYUVMD5}, ${BenchmarkYUVMD5} YUVSHA1: ${TargetYUVSHA1}, ${BenchmarkYUVSHA1} \033[0m"
306+ echo -e "\033[32m OK! ${TestYUVName} Case Index ${TotalCaseNum}:SHA-1(Current--Benchmark): ${TargetSHA1}-----${BenchmarkSHA1} \033[0m"
307+ echo -e "\033[32m ----YUVSHA1: ${TargetYUVSHA1}, ${BenchmarkYUVSHA1} \033[0m"
382308 fi
383309 fi
384310 #******************************************
385311 if [ ! "$DiffFlag" = "0:passed!" ]
386312 then
387− echo -e "\033[31m Failed! ${TestSequenceName} Case Index ${TotalCaseNum}:SHA-1(Current--Benchmark): ${TargetSHA1}-----${BenchmarkSHA1} \033[0m"
388− echo -e "\033[31m ----MD5 (Current--Benchmark): ${TargetMD5}-----${BenchmarkMD5} \033[0m"
389− echo -e "\033[31m ----YUVMD5: ${TargetYUVMD5}, ${BenchmarkYUVMD5} YUVSHA1: ${TargetYUVSHA1}, ${BenchmarkYUVSHA1} \033[0m"
313+ echo -e "\033[31m Failed! ${TestYUVName} Case Index ${TotalCaseNum}:SHA-1(Current--Benchmark): ${TargetSHA1}-----${BenchmarkSHA1} \033[0m"
314+ echo -e "\033[31m ----YUVSHA1: ${TargetYUVSHA1}, ${BenchmarkYUVSHA1} \033[0m"
390315 EncoderLogInfo=`cat ${EncoderLogFile}`
391316 echo -e "\033[31m ${EncoderLogInfo} \033[0m"
392317 fi
@@ -399,28 +324,18 @@ runAllCaseTest() · 6 unmodified lines
399324 # usage: runMain $TestYUV $AllCaseFile
400325 runMain()
401326 {
402− if [ ! $# -eq 2 ]
403− then
404− echo "usage: run_BinarySHA1Comparison.sh \$TestYUV \$AllCaseFile"
405− return 1
406− fi
407−
408327 runGlobalVariableDef
409−
410− #for test sequence info
411− TestSequenceName=$1
412− AllCaseFile=$2
413328 runGlobalVariableInitial
414329 TestFolder=`echo $CurrentDir | awk 'BEGIN {FS="/"} { i=NF; print $i}'`
415− AllCaseConsoleLogFile="${FinalResultPath}/${TestSequenceName}.TestLog"
416− CaseSummaryFile="${FinalResultPath}/${TestSequenceName}.Summary"
330+ AllCaseConsoleLogFile="${FinalResultPath}/${TestYUVName}.TestLog"
331+ CaseSummaryFile="${FinalResultPath}/${TestYUVName}.Summary"
417332 FlagFile=""
418333
419334 #run all cases
420335 runAllCaseTest
421336
422337 # output file locate in ./result
423− echo "${TestSequenceName}, \
338+ echo "${TestYUVName}, \
424339 ${PassCaseNum} pass!, \
425340 ${UnpassCaseNum} unpass!,\
426341 detail file located in ../AllTestData/${TestFolder}/result">${CaseSummaryFile}
@@ -436,7 +351,15 @@ runMain() · 9 unmodified lines
436351 exit 0
437352 fi
438353 }
354+#************************************************************************
355+# main entry
356+#************************************************************************
357+if [ ! $# -eq 2 ]
358+then
359+ echo "usage: run_BinarySHA1Comparison.sh \$TestYUV \$AllCaseFile"
360+ return 1
361+fi
439362 TestYUVName=$1
440363 AllCaseFile=$2
441−runMain ${TestYUVName} ${AllCaseFile}
364+runMain
442365
test/encoder_binary_comparison/Scripts/run_BitStreamToYUV.sh+1−1
@@ -110,7 +110,7 @@ runMain() · 109 unmodified lines
110110 run_BitStream2YUV ${BitStreameFile} ${DecodedYUVName} ${DecoderLogFile}
111111 if [ ! $? -eq 0 ]
112112 then
113− echo "bit stream decoded failed!"
113+ echo "bit stream decoded failed!"
114114 return 1
115115 fi
116116 #*********************

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t