192 lines · 4.9 KB · Shell
RawDownload
#!/bin/bash#*******************************************************************************# Encoder binary comparison test model#       -- Compared with benchmark version using SHA-1 string#       -- Test bit stream under folder  openh264/res#       -- SHA-1 string of benchmark version for  all cases  of all bit streams#           under folder  openh264/test/encoder_binary_comparion/SHA1Table#       -- For more detail,please refer to file AboutTest.##brief:#       -- Prepare test space for all test bit streams#          1) update codec#          2) update configure files#          3) create test space for all test bit streams#       -- Usage: run_PrepareAllTestFolder.sh \#                       $AllTestDataFolder    \#                       $TestBitStreamFolder  \#                       $CodecFolder          \#                       $ScriptFolder         \#                       $SHA1TableFolder##      -- WorkingDir=openh264/test/encoder_binary_comparison#       -- Before using this script, need to#             cd  $WorkingDir## date:  10/06/2014 Created#*******************************************************************************#build codecrunBuildCodec(){  if [ ! $# -eq 1   ]  then    echo "usage: runBuildCodec  \64/32  #bits"    exit 1  fi   local BitType=$1  local MakeFileDir="../.."  local CurrentDir=`pwd`   echo "bit type is ${BitType}"  #***************************  #build codec  cd ${MakeFileDir}  if [ "${BitType}" -eq 64   ]  then    make clean    make -B ENABLE64BIT=Yes h264dec h264enc  elif [ "${BitType}" -eq 32   ]  then    make clean    make -B ENABLE64BIT=No h264dec h264enc  else    echo "usage: runBuildCodec  \64/32  #bits"    exit 1  fi   cd ${CurrentDir}   echo ""  if [ ! -e ${MakeFileDir}/h264enc  ]  then    echo "h264 Encoder build failed"    return 1  elif [ ! -e ${MakeFileDir}/h264dec  ]  then    echo "h264 Decoder build failed"    return 1  else    echo "codec build succeed!"    return 0  fi }  #copy codec related files to TestSpace's codec folderrunCopyFiles(){  local CodecFolder="Codec"  local MakeFileDir="../.."  local ConfigureFileDir="../../testbin"   #copy codec and configure files  cp  -p  ${MakeFileDir}/h264enc    ${CodecFolder}/  cp  -p  ${MakeFileDir}/h264dec    ${CodecFolder}/  cp  -p  ${ConfigureFileDir}/layer2.cfg     ${CodecFolder}/layer0.cfg  cp  -p  ${ConfigureFileDir}/layer2.cfg     ${CodecFolder}/layer1.cfg  cp  -p  ${ConfigureFileDir}/layer2.cfg     ${CodecFolder}/layer2.cfg  cp  -p  ${ConfigureFileDir}/layer2.cfg     ${CodecFolder}/layer3.cfg  cp  -p  ${ConfigureFileDir}/welsenc.cfg    ${CodecFolder}/welsenc.cfg  return 0}#usage: runPrepareAllFolder   $AllTestDataFolder  $CodecFolder  $ScriptFolder  $SHA1TableFolderrunPrepareAllFolder(){  #parameter check!  if [ ! $# -eq 4  ]  then    echo "usage: runPrepareAllFolder   \$AllTestDataFolder  \$CodecFolder  \$ScriptFolder \$SHA1TableFolder"    return 1  fi   local AllTestDataFolder=$1  local CodecFolder=$2  local ScriptFolder=$3  local SHA1TableFolder=$4  local SHA1TableName=""  local SubFolder=""  local IssueFolder="issue"  local TempDataFolder="TempData"  local ResultFolder="result"   if [ -d $AllTestDataFolder ]  then    ./${ScriptFolder}/run_SafeDelete.sh  $AllTestDataFolder  fi   for Bitsream in ${SHA1TableFolder}/*.csv  do    StreamName=`echo ${Bitsream} | awk 'BEGIN {FS="/"}  {print $NF}   ' `    StreamName=`echo ${StreamName} | awk 'BEGIN {FS="_AllCase"}  {print $1}   ' `    SubFolder="${AllTestDataFolder}/${StreamName}"    SHA1TableName="${StreamName}_AllCases_SHA1_Table.csv"    echo "BitSream is ${StreamName}"    echo "sub folder is  ${SubFolder}"    echo ""    mkdir -p ${SubFolder}    mkdir -p ${SubFolder}/${IssueFolder}    mkdir -p ${SubFolder}/${TempDataFolder}    mkdir -p ${SubFolder}/${ResultFolder}    cp  ${CodecFolder}/*   ${SubFolder}    cp  ${ScriptFolder}/*   ${SubFolder}    if [ -e ${SHA1TableFolder}/${SHA1TableName}  ]    then      cp  ${SHA1TableFolder}/${SHA1TableName}   ${SubFolder}    fi   done }#usage: run_PrepareAllTestFolder.sh   ${BitType}runMain(){  #parameter check!  if [ ! $# -eq 1  ]  then    echo "usage: run_PrepareAllTestFolder.sh   \${BitType}"    exit 1  fi  local BitType=$1  local AllTestDataFolder="./AllTestData"  local CodecFolder="./Codec"  local ScriptFolder="./Scripts"  local SHA1TableFolder="./SHA1Table"   if [ -d ./Codec ]  then    ./Scripts/run_SafeDelete.sh ./Codec  fi   if [ -d ./FinalResult  ]  then    ./Scripts/run_SafeDelete.sh ./FinalResult  fi  mkdir Codec  mkdir FinalResult   echo ""  echo "building codec.........."  runBuildCodec  ${BitType}>build.log  if [ ! $? -eq 0 ]  then    echo "codec build failed ..."    exit 1  fi   echo ""  runCopyFiles  echo ""  echo "preparing All test data folders...."  echo ""  runPrepareAllFolder   $AllTestDataFolder  $CodecFolder  $ScriptFolder  $SHA1TableFolder  echo ""   return 0} BitType=$1 runMain   ${BitType}  

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