/elastest-webrtc-qoe-meter

Experiments aimed to measure the Quality of Experience (QoE) of WebRTC applications

Primary LanguageJava

License badge Documentation badge

Copyright © 2017-2019 Universidad Rey Juan Carlos. Licensed under Apache 2.0 License.

elastest-webrtc-qoe-meter

This repository contains practical examples aimed to support the research line of the ElasTest project aimed to measure the Quality of Experience (QoE) of WebRTC applications.

In order to carry out this QoE assessment, a process made up by three stage is proposed:

  1. Generate input video. This step is done using a the bash script generate_input_video.sh.
  2. Run an automated test based on Selenium, JUnit, and Docker. This step is done using a test case, for example OpenViduBasicConferencePacketLossTest or AppRtcAdvancedTest.
  3. Calculate QoE metrics. This step is aimed to post process video recordings and generate objective (VMAF, SSIM, PSNR, VIFp, etc) results using the bash script calculate_qoe_metrics.sh.

This repository also contains the result data (objective and subjective) of a experiment done using OpenVidu basic video conference demo as System Under Test.

What is ElasTest

This repository is part of ElasTest, which is a flexible open source testing platform aimed to simplify the end-to-end testing processes for different types of applications, including web and mobile, among others.

The objective of ElasTest is to provide advance testing capabilities aimed to increase the scalability, robustness, security and quality of experience of large distributed systems. All in all, ElasTest will make any software development team capable of delivering software faster and with fewer defects.

Documentation

The ElasTest project provides detailed documentation including tutorials, installation and development guide.

Source

Source code for other ElasTest projects can be found in the GitHub ElasTest Group.

News

Check the ElasTest Blog and follow us on Twitter @elastestio.

Issue tracker

Issues and bug reports should be posted to the GitHub ElasTest Bugtracker.

Licensing and distribution

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Contribution policy

You can contribute to the ElasTest community through bug-reports, bug-fixes, new code or new documentation. For contributing to the ElasTest community, you can use GitHub, providing full information about your contribution and its value. In your contributions, you must comply with the following guidelines

  • You must specify the specific contents of your contribution either through a detailed bug description, through a pull-request or through a patch.
  • You must specify the licensing restrictions of the code you contribute.
  • For newly created code to be incorporated in the ElasTest code-base, you must accept ElasTest to own the code copyright, so that its open source nature is guaranteed.
  • You must justify appropriately the need and value of your contribution. The ElasTest project has no obligations in relation to accepting contributions from third parties.
  • The ElasTest project leaders have the right of asking for further explanations, tests or validations of any code contributed to the community before it being incorporated into the ElasTest code-base. You must be ready to addressing all these kind of concerns before having your code approved.

Support

The ElasTest project provides community support through the ElasTest Public Mailing List and through StackOverflow using the tag elastest.


Funded by the European Union