Index: webrtc/examples/androidtests/video_quality_loopback_test.py |
diff --git a/webrtc/examples/androidtests/video_quality_loopback_test.py b/webrtc/examples/androidtests/video_quality_loopback_test.py |
index 5ef85371afdc904a075c9bc8bff004495f255a02..7d2831a5f603eb7db124dcad5c68c0429bc2113e 100755 |
--- a/webrtc/examples/androidtests/video_quality_loopback_test.py |
+++ b/webrtc/examples/androidtests/video_quality_loopback_test.py |
@@ -36,6 +36,9 @@ def _RunCommand(argv, cwd=SRC_DIR, **kwargs): |
logging.info('Running %r', argv) |
subprocess.check_call(argv, cwd=cwd, **kwargs) |
+def _Popen(argv, cwd=SRC_DIR): |
+ logging.info('Running %r', argv) |
+ return subprocess.Popen(argv, cwd=cwd) |
def _ParseArgs(): |
parser = argparse.ArgumentParser(description='Start loopback video analysis.') |
@@ -76,11 +79,35 @@ def main(): |
download_script = os.path.join(tools_dir, 'download_tools.py') |
_RunCommand([sys.executable, download_script, toolchain_dir]) |
+ # Start AppRTC Server |
+ dev_appserver = os.path.join(SRC_DIR, 'out', 'apprtc', 'google_appengine', |
kjellander_webrtc
2017/03/17 12:02:16
Add try+finally around the processes being launche
mandermo
2017/03/17 13:39:42
Fixed with try+finally. Leave SIGINT for later.
|
+ 'dev_appserver.py') |
+ appengine_dir = os.path.join(SRC_DIR, 'out', 'apprtc', 'out', 'app_engine') |
+ apprtc_process = _Popen(['python', dev_appserver, appengine_dir, |
+ '--port=9999', '--admin_port=9998', '--skip_sdk_update_check', |
+ '--clear_datastore=yes']) |
+ |
+ # Start Collider |
+ collider_path = os.path.join(SRC_DIR, 'out', 'go-workspace', 'bin', |
+ 'collidermain') |
+ collider_process = _Popen([collider_path, '-tls=false', '-port=8089', |
+ '-room-server=http://localhost:9999']) |
+ |
+ # Start adb reverse forwarder |
+ reverseforwarder_path = os.path.join( |
+ SRC_DIR, 'build', 'android', 'adb_reverse_forwarder.py') |
+ reverseforwarder_process = _Popen( |
+ [reverseforwarder_path, '9999', '9999', '8089', '8089']) |
+ |
# Run the Espresso code. |
test_script = os.path.join(build_dir_android, |
'bin', 'run_AppRTCMobileTestStubbedVideoIO') |
_RunCommand([sys.executable, test_script]) |
+ apprtc_process.terminate() |
+ collider_process.terminate() |
+ reverseforwarder_process.terminate() |
+ |
# Pull the output video. |
test_video = os.path.join(temp_dir, 'test_video.y4m') |
_RunCommand(['adb', 'pull', '/sdcard/output.y4m', test_video]) |