1*49fe348cSAndroid Build Coastguard Worker#!/usr/bin/env python3 2*49fe348cSAndroid Build Coastguard Worker# 3*49fe348cSAndroid Build Coastguard Worker# Copyright 2022 Google LLC 4*49fe348cSAndroid Build Coastguard Worker# 5*49fe348cSAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License"); 6*49fe348cSAndroid Build Coastguard Worker# you may not use this file except in compliance with the License. 7*49fe348cSAndroid Build Coastguard Worker# You may obtain a copy of the License at 8*49fe348cSAndroid Build Coastguard Worker# 9*49fe348cSAndroid Build Coastguard Worker# http://www.apache.org/licenses/LICENSE-2.0 10*49fe348cSAndroid Build Coastguard Worker# 11*49fe348cSAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software 12*49fe348cSAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS, 13*49fe348cSAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14*49fe348cSAndroid Build Coastguard Worker# See the License for the specific language governing permissions and 15*49fe348cSAndroid Build Coastguard Worker# limitations under the License. 16*49fe348cSAndroid Build Coastguard Worker# 17*49fe348cSAndroid Build Coastguard Worker 18*49fe348cSAndroid Build Coastguard Workerimport mdct, energy, bwdet, attdet 19*49fe348cSAndroid Build Coastguard Workerimport ltpf, sns, tns, spec, encoder, decoder 20*49fe348cSAndroid Build Coastguard Worker 21*49fe348cSAndroid Build Coastguard Workerok = True 22*49fe348cSAndroid Build Coastguard Worker 23*49fe348cSAndroid Build Coastguard Workerfor m in [ ( mdct , "MDCT" ), 24*49fe348cSAndroid Build Coastguard Worker ( energy , "Energy Band" ), 25*49fe348cSAndroid Build Coastguard Worker ( bwdet , "Bandwidth Detector" ), 26*49fe348cSAndroid Build Coastguard Worker ( attdet , "Attack Detector" ), 27*49fe348cSAndroid Build Coastguard Worker ( ltpf , "Long Term Postfilter" ), 28*49fe348cSAndroid Build Coastguard Worker ( sns , "Spectral Noise Shaping" ), 29*49fe348cSAndroid Build Coastguard Worker ( tns , "Temporal Noise Shaping" ), 30*49fe348cSAndroid Build Coastguard Worker ( spec , "Spectral Quantization" ), 31*49fe348cSAndroid Build Coastguard Worker ( encoder , "Encoder" ), 32*49fe348cSAndroid Build Coastguard Worker ( decoder , "Decoder" ) ]: 33*49fe348cSAndroid Build Coastguard Worker 34*49fe348cSAndroid Build Coastguard Worker print('[{:^6}] {:}'.format('...', m[1]), end='\r', flush=True) 35*49fe348cSAndroid Build Coastguard Worker ret = m[0].check() 36*49fe348cSAndroid Build Coastguard Worker print('[{:^6}] {:}'.format('OK' if ret else 'FAILED', m[1])) 37*49fe348cSAndroid Build Coastguard Worker 38*49fe348cSAndroid Build Coastguard Worker ok = ok and ret 39*49fe348cSAndroid Build Coastguard Worker 40*49fe348cSAndroid Build Coastguard Workerexit(0 if ok else 1) 41