Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(66)

Side by Side Diff: source/libvpx/test/tools_common.sh

Issue 478033002: libvpx: Pull from upstream (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/deps/third_party/libvpx/
Patch Set: Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « source/libvpx/test/test_vectors.cc ('k') | source/libvpx/test/variance_test.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/bin/sh 1 #!/bin/sh
2 ## 2 ##
3 ## Copyright (c) 2014 The WebM project authors. All Rights Reserved. 3 ## Copyright (c) 2014 The WebM project authors. All Rights Reserved.
4 ## 4 ##
5 ## Use of this source code is governed by a BSD-style license 5 ## Use of this source code is governed by a BSD-style license
6 ## that can be found in the LICENSE file in the root of the source 6 ## that can be found in the LICENSE file in the root of the source
7 ## tree. An additional intellectual property rights grant can be found 7 ## tree. An additional intellectual property rights grant can be found
8 ## in the file PATENTS. All contributing project authors may 8 ## in the file PATENTS. All contributing project authors may
9 ## be found in the AUTHORS file in the root of the source tree. 9 ## be found in the AUTHORS file in the root of the source tree.
10 ## 10 ##
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after
137 } 137 }
138 138
139 # Echoes yes when output of test_configuration_target() contains win32 or win64. 139 # Echoes yes when output of test_configuration_target() contains win32 or win64.
140 is_windows_target() { 140 is_windows_target() {
141 if test_configuration_target \ 141 if test_configuration_target \
142 | grep -q -e win32 -e win64 > /dev/null 2>&1; then 142 | grep -q -e win32 -e win64 > /dev/null 2>&1; then
143 echo yes 143 echo yes
144 fi 144 fi
145 } 145 }
146 146
147 # Echoes path to $1 when it's executable and exists in ${LIBVPX_BIN_PATH}, or an
148 # empty string. Caller is responsible for testing the string once the function
149 # returns.
150 vpx_tool_path() {
151 local readonly tool_name="$1"
152 local tool_path="${LIBVPX_BIN_PATH}/${tool_name}${VPX_TEST_EXE_SUFFIX}"
153 if [ ! -x "${tool_path}" ]; then
154 # Try one directory up: when running via examples.sh the tool could be in
155 # the parent directory of $LIBVPX_BIN_PATH.
156 tool_path="${LIBVPX_BIN_PATH}/../${tool_name}${VPX_TEST_EXE_SUFFIX}"
157 fi
158
159 if [ ! -x "${tool_path}" ]; then
160 tool_path=""
161 fi
162 echo "${tool_path}"
163 }
164
147 # Echoes yes to stdout when the file named by positional parameter one exists 165 # Echoes yes to stdout when the file named by positional parameter one exists
148 # in LIBVPX_BIN_PATH, and is executable. 166 # in LIBVPX_BIN_PATH, and is executable.
149 vpx_tool_available() { 167 vpx_tool_available() {
150 local tool_name="$1" 168 local tool_name="$1"
151 local tool="${LIBVPX_BIN_PATH}/${tool_name}${VPX_TEST_EXE_SUFFIX}" 169 local tool="${LIBVPX_BIN_PATH}/${tool_name}${VPX_TEST_EXE_SUFFIX}"
152 [ -x "${tool}" ] && echo yes 170 [ -x "${tool}" ] && echo yes
153 } 171 }
154 172
155 # Echoes yes to stdout when vpx_config_option_enabled() reports yes for 173 # Echoes yes to stdout when vpx_config_option_enabled() reports yes for
156 # CONFIG_VP8_DECODER. 174 # CONFIG_VP8_DECODER.
(...skipping 18 matching lines...) Expand all
175 vp9_encode_available() { 193 vp9_encode_available() {
176 [ "$(vpx_config_option_enabled CONFIG_VP9_ENCODER)" = "yes" ] && echo yes 194 [ "$(vpx_config_option_enabled CONFIG_VP9_ENCODER)" = "yes" ] && echo yes
177 } 195 }
178 196
179 # Echoes yes to stdout when vpx_config_option_enabled() reports yes for 197 # Echoes yes to stdout when vpx_config_option_enabled() reports yes for
180 # CONFIG_WEBM_IO. 198 # CONFIG_WEBM_IO.
181 webm_io_available() { 199 webm_io_available() {
182 [ "$(vpx_config_option_enabled CONFIG_WEBM_IO)" = "yes" ] && echo yes 200 [ "$(vpx_config_option_enabled CONFIG_WEBM_IO)" = "yes" ] && echo yes
183 } 201 }
184 202
185 # Echoes yes to stdout when vpxdec exists according to vpx_tool_available().
186 vpxdec_available() {
187 [ -n $(vpx_tool_available vpxdec) ] && echo yes
188 }
189
190 # Wrapper function for running vpxdec in noblit mode. Requires that
191 # LIBVPX_BIN_PATH points to the directory containing vpxdec. Positional
192 # parameter one is used as the input file path. Positional parameter two, when
193 # present, is interpreted as a boolean flag that means the input should be sent
194 # to vpxdec via pipe from cat instead of directly.
195 vpxdec() {
196 local input="${1}"
197 local pipe_input=${2}
198
199 if [ $# -gt 2 ]; then
200 # shift away $1 and $2 so the remaining arguments can be passed to vpxdec
201 # via $@.
202 shift 2
203 fi
204
205 local decoder="${LIBVPX_BIN_PATH}/vpxdec${VPX_TEST_EXE_SUFFIX}"
206
207 if [ -z "${pipe_input}" ]; then
208 eval "${VPX_TEST_PREFIX}" "${decoder}" "$input" --summary --noblit "$@" \
209 ${devnull}
210 else
211 cat "${input}" \
212 | eval "${VPX_TEST_PREFIX}" "${decoder}" - --summary --noblit "$@" \
213 ${devnull}
214 fi
215 }
216
217 # Echoes yes to stdout when vpxenc exists according to vpx_tool_available().
218 vpxenc_available() {
219 [ -n $(vpx_tool_available vpxenc) ] && echo yes
220 }
221
222 # Wrapper function for running vpxenc. Positional parameters are interpreted as
223 # follows:
224 # 1 - codec name
225 # 2 - input width
226 # 3 - input height
227 # 4 - number of frames to encode
228 # 5 - path to input file
229 # 6 - path to output file
230 # Note: The output file path must end in .ivf to output an IVF file.
231 # 7 - extra flags
232 # Note: Extra flags currently supports a special case: when set to "-"
233 # input is piped to vpxenc via cat.
234 vpxenc() {
235 local encoder="${LIBVPX_BIN_PATH}/vpxenc${VPX_TEST_EXE_SUFFIX}"
236 local codec="${1}"
237 local width=${2}
238 local height=${3}
239 local frames=${4}
240 local input=${5}
241 local output="${VPX_TEST_OUTPUT_DIR}/${6}"
242 local extra_flags=${7}
243
244 # Because --ivf must be within the command line to get IVF from vpxenc.
245 if echo "${output}" | egrep -q 'ivf$'; then
246 use_ivf=--ivf
247 else
248 unset use_ivf
249 fi
250
251 if [ "${extra_flags}" = "-" ]; then
252 pipe_input=yes
253 extra_flags=${8}
254 else
255 unset pipe_input
256 fi
257
258 if [ -z "${pipe_input}" ]; then
259 eval "${VPX_TEST_PREFIX}" "${encoder}" --codec=${codec} --width=${width} \
260 --height=${height} --limit=${frames} ${use_ivf} ${extra_flags} \
261 --output="${output}" "${input}" ${devnull}
262 else
263 cat "${input}" \
264 | eval "${VPX_TEST_PREFIX}" "${encoder}" --codec=${codec} \
265 --width=${width} --height=${height} --limit=${frames} ${use_ivf} \
266 ${extra_flags} --output="${output}" - ${devnull}
267 fi
268
269 if [ ! -e "${output}" ]; then
270 # Return non-zero exit status: output file doesn't exist, so something
271 # definitely went wrong.
272 return 1
273 fi
274 }
275
276 # Filters strings from positional parameter one using the filter specified by 203 # Filters strings from positional parameter one using the filter specified by
277 # positional parameter two. Filter behavior depends on the presence of a third 204 # positional parameter two. Filter behavior depends on the presence of a third
278 # positional parameter. When parameter three is present, strings that match the 205 # positional parameter. When parameter three is present, strings that match the
279 # filter are excluded. When omitted, strings matching the filter are included. 206 # filter are excluded. When omitted, strings matching the filter are included.
280 # The filtered string is echoed to stdout. 207 # The filtered string is echoed to stdout.
281 filter_strings() { 208 filter_strings() {
282 strings=${1} 209 strings=${1}
283 filter=${2} 210 filter=${2}
284 exclude=${3} 211 exclude=${3}
285 212
(...skipping 193 matching lines...) Expand 10 before | Expand all | Expand 10 after
479 VPX_TEST_RAND=${VPX_TEST_RAND} 406 VPX_TEST_RAND=${VPX_TEST_RAND}
480 VPX_TEST_RUN_DISABLED_TESTS=${VPX_TEST_RUN_DISABLED_TESTS} 407 VPX_TEST_RUN_DISABLED_TESTS=${VPX_TEST_RUN_DISABLED_TESTS}
481 VPX_TEST_SHOW_PROGRAM_OUTPUT=${VPX_TEST_SHOW_PROGRAM_OUTPUT} 408 VPX_TEST_SHOW_PROGRAM_OUTPUT=${VPX_TEST_SHOW_PROGRAM_OUTPUT}
482 VPX_TEST_TEMP_ROOT=${VPX_TEST_TEMP_ROOT} 409 VPX_TEST_TEMP_ROOT=${VPX_TEST_TEMP_ROOT}
483 VPX_TEST_VERBOSE_OUTPUT=${VPX_TEST_VERBOSE_OUTPUT} 410 VPX_TEST_VERBOSE_OUTPUT=${VPX_TEST_VERBOSE_OUTPUT}
484 YUV_RAW_INPUT=${YUV_RAW_INPUT} 411 YUV_RAW_INPUT=${YUV_RAW_INPUT}
485 YUV_RAW_INPUT_WIDTH=${YUV_RAW_INPUT_WIDTH} 412 YUV_RAW_INPUT_WIDTH=${YUV_RAW_INPUT_WIDTH}
486 YUV_RAW_INPUT_HEIGHT=${YUV_RAW_INPUT_HEIGHT}" 413 YUV_RAW_INPUT_HEIGHT=${YUV_RAW_INPUT_HEIGHT}"
487 414
488 fi # End $VPX_TEST_TOOLS_COMMON_SH pseudo include guard. 415 fi # End $VPX_TEST_TOOLS_COMMON_SH pseudo include guard.
OLDNEW
« no previous file with comments | « source/libvpx/test/test_vectors.cc ('k') | source/libvpx/test/variance_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698