Measurement of Video Conferencing Libraries Using a Test Framework Based on Profiling

Total Page:16

File Type:pdf, Size:1020Kb

Measurement of Video Conferencing Libraries Using a Test Framework Based on Profiling Computer Engineering 2013 Mekelweg 4, 2628 CD Delft The Netherlands http://ce.et.tudelft.nl/ MSc THESIS Measurement of Video Conferencing Libraries using a Test Framework based on Profiling Maulik Prabhudesai Abstract Video Conferencing systems have become highly popular with the explosion of bandwidth and computing power. This has made high quality video conference possible on embedded hand held devices. This has created an ecosystem of companies developing applications which are powered by video conferencing libraries and a parallel ecosystem of companies who make those video conferencing libraries. An application developer has to design his system in a way that the video conferencing library (which is the backbone of the applica- tion) is efficiently integrated and is performing optimally. In order to do that, the developer must be acutely aware of features such CE-MS-2013-18 as platform compatibility, resource usage, performance boundaries and bottlenecks of the library in order to make an informed deci- sion. Hence the developer needs a test-bench which can evaluate the above mentioned features. This thesis mainly discusses the need to arrive at one such test framework followed by the framework itself. The framework designed in this thesis consists of a network emulator which is combined with a popular network protocol analyser. It pro- files the library and monitors variables essential to Quality of Service (QoS) like bandwidth usage, frame rates, frame/packet sizes and au- dio/video delay under varying network conditions. By observing the change in these variables, the QoS offered by the library can be determined. This information can also be extrapolated to understand the challenges in guaranteeing a minimum quality of experience (QoE). This thesis applies the framework on one chosen library (Library 1) and Google Hangouts and discusses the results. The performance of the library under varying network conditions (bandwidth, packet loss and latency) is observed, enabling Presence Displays BV to extract information about how the library works. Presence Displays BV is building a video conferencing enabled product and uses the framework discussed in this thesis to analyse video conferencing libraries in order to build the application around it. It has been observed that Library 1 favours video quality above other parameters and only compromises video quality to accommodate more users participating in a call. Google Hangouts favour audio, motion content in the video, interactivity and robustness over video quality. This information can be used to configure Library 1 in a way such that it delivers maximum QoE in the available resources. Faculty of Electrical Engineering, Mathematics and Computer Science Measurement of Video Conferencing Libraries using a Test Framework based on Profiling Requirement Specific Selection and Evaluation of Video Conferencing Libraries THESIS submitted in partial fulfillment of the requirements for the degree of MASTER OF SCIENCE in EMBEDDED SYSTEMS by Maulik Prabhudesai born in Mumbai, India Computer Engineering Department of Electrical Engineering Faculty of Electrical Engineering, Mathematics and Computer Science Delft University of Technology Measurement of Video Conferencing Libraries using a Test Framework based on Profiling by Maulik Prabhudesai Abstract ideo Conferencing systems have become highly popular with the explosion of bandwidth and computing power. This has made high quality video conference possible on embedded V hand held devices. This has created an ecosystem of companies developing applications which are powered by video conferencing libraries and a parallel ecosystem of companies who make those video conferencing libraries. An application developer has to design his system in a way that the video conferencing library (which is the backbone of the application) is efficiently integrated and is performing optimally. In order to do that, the developer must be acutely aware of features such as platform compatibility, resource usage, performance boundaries and bottlenecks of the library in order to make an informed decision. Hence the developer needs a test-bench which can evaluate the above mentioned features. This thesis mainly discusses the need to arrive at one such test framework followed by the framework itself. The framework designed in this thesis consists of a network emulator which is combined with a popular network protocol analyser. It profiles the library and monitors variables essential to Quality of Service (QoS) like bandwidth usage, frame rates, frame/packet sizes and audio/video delay under varying network conditions. By observing the change in these variables, the QoS offered by the library can be determined. This information can also be extrapolated to understand the challenges in guaranteeing a minimum quality of experience (QoE). This thesis applies the framework on one chosen library (Library 1) and Google Hangouts and discusses the results. The performance of the library under varying network conditions (bandwidth, packet loss and latency) is observed, enabling Presence Displays BV to extract in- formation about how the library works. Presence Displays BV is building a video conferencing enabled product and uses the framework discussed in this thesis to analyse video conferencing libraries in order to build the application around it. It has been observed that Library 1 favours video quality above other parameters and only compromises video quality to accommodate more users participating in a call. Google Hangouts favour audio, motion content in the video, inter- activity and robustness over video quality. This information can be used to configure Library 1 in a way such that it delivers maximum QoE in the available resources. Laboratory : Computer Engineering Codenumber : CE-MS-2013-18 Committee Members : Advisor: Koen Bertels, CE, TU Delft Advisor: Robbert Smit, Presence Displays BV Chairperson: Koen Bertels, CE, TU Delft i Member: Arjan van Genderen, Assistant Professor CE, TU Delft Member: Johan Pouwelse, Assistant Professor PDS, TU Delft ii This thesis is dedicated to the engineering and scientific community with the hope that after reading this, they will recognise me as one of their own. iii iv Contents List of Figures x List of Tables xi Acknowledgements xiii 1 Introduction 1 1.1 Background . .1 1.1.1 Problem Statement . .1 1.2 Thesis goals . .2 1.3 Thesis Contributions . .2 1.4 Thesis organisation . .3 2 Video Conferencing Technology and Considerations 5 2.1 Introduction . .5 2.2 Video Conferencing Technology . .6 2.3 Video Conferencing Stack . .8 2.3.1 User Interface Layer . .8 2.3.2 Media . .8 2.3.3 Network Stack . 11 2.3.4 Session Management in Video Conferencing . 17 2.3.5 A case study: WebRTC . 20 2.4 Topology . 21 2.4.1 Client-Server . 22 2.4.2 Peer-to-Peer . 23 2.4.3 Peer-to-Peer with Peer Contribution towards video distribution . 24 2.5 Quality of Service . 27 2.5.1 Challenges to the QoS . 29 3 Problem Description, System Requirements and System Design 31 3.1 Concept . 31 3.2 User Requirements . 31 3.2.1 Login Scenario . 32 3.2.2 Group formation scenarios . 32 3.2.3 User shuts down/disconnects without warning Scenario . 33 3.3 System Requirements . 33 3.3.1 Software System Requirements . 33 3.3.2 Video Conferencing Library Requirements . 34 3.3.3 Hardware Requirements . 35 3.4 System Design . 36 v 3.4.1 Topologies . 36 3.4.2 System Architecture . 38 3.4.3 Server's function in QoE management . 42 3.4.4 Hardware Device . 43 3.5 Conclusion . 44 4 Overview of Video Conferencing Libraries 45 4.1 Introduction . 45 4.2 Criteria for Evaluation . 45 4.2.1 Quality of Experience . 46 4.2.2 Maturity . 46 4.2.3 Robustness . 46 4.2.4 Technical Support . 46 4.2.5 Android Compatibility . 46 4.2.6 Multi-User Video Conferencing . 47 4.2.7 Availability of Source Code/API . 47 4.2.8 Price . 47 4.2.9 Intellectual Property . 47 4.2.10 Support for other functionalities . 48 4.2.11 Summary . 48 4.3 Overview of Video Conferencing Libraries/Applications . 49 4.4 Chosen Video Libraries for Implementation . 52 4.5 Criteria for Quality of Experience . 53 4.5.1 Metrics affecting QoE . 55 5 Framework 59 5.1 Introduction . 59 5.2 Controlling Network Conditions . 59 5.2.1 Network Emulation . 62 5.3 Framework Structure and Capabilities . 62 5.3.1 Audio Video Delay . 62 5.3.2 Audio Video Synchronisation . 64 5.3.3 Identification of the Server and subsequent analysis . 64 5.3.4 Packet Size, Frame Size and Frame Rate . 65 5.3.5 Video Quality . 66 5.3.6 Bandwidth Usage of a Call . 67 5.4 Summary . 68 6 Experiments and Analysis 69 6.1 Pre-experimentation modification . 69 6.2 Configuration Experiment . 70 6.2.1 Details of each configuration . 70 6.2.2 Results . 71 6.3 Effect of Packet Loss and Packet Corruption . 78 6.3.1 Effect of Packet Loss on Video with Motion . 83 vi 6.3.2 Effect of Packet Corruption . 84 6.4 Effect of Network Latency . 86 6.5 Effect of Bandwidth Variation . 88 6.5.1 Full Bandwidth . 88 6.5.2 Performance in Low Bandwidth Conditions . 92 6.5.3 Performance in Medium Bandwidth Conditions . 93 6.6 Pre-Connection Results . 97 7 Conclusions and Evaluations 101 7.1 Congestion - The main challenge to QoS . 101 7.1.1 How does each Library react to Packet Loss/Corruption ? . 102 7.1.2 How does each Library react to Network Latency ? . 102 7.1.3 How does each Library react to Bandwidth Constraints ? . 103 7.2 Effect of Heterogeneity in Hardware . 104 7.3 Effect of Varying Call Sizes . 104 7.4 Summary . 104 7.5 Evaluations and Future Recommendations . 105 Bibliography 111 vii viii List of Figures 2.1 A typical video conferencing system architecture based on WebRTC [10]7 2.2 Real-Time Transport Protocol Stack .
Recommended publications
  • ON Soluciones
    € Número 71 - Diciembre 2016 - 14 Call & Contact Centers / Customer Engagement / BPO by ON Soluciones renueva su imagen como expertos Santiago Muñoz-Chápulí socio fundador en la construcción de experiencias de ON Soluciones generadas desde el contact center. María José Peraza socia de ON Soluciones En positivo Enred@dos Hoy hablamos con... Caso de éxito Analizamos el mapa Responsables Charlamos con José En Schibsted Spain, desde del viaje del cliente de Hawkers nos Miguel Zarco, KAM- el área recién inaugurada como herramienta cuentan su estrategia Ventas Microempresas de “Customer Experience que ayuda a dar para lograr tener en Vodafone España Management” han valor a los momentos legiones de clientes sobre su trayectoria incorporado la voz del de la verdad. fans. profesional. cliente en la organización. / P.10 / P.44 / P.56 / P.70 Nº 71 ODiciembre 2016 ORelación Cliente Magazine ENE CASO DE ÉXITO 20 REPSOL PORTADAP PROTAGONISTA 22 Arvato 6 EN PRIMERA LÍNEA DE FUEGO ONO SOLUCIONES 24 Teletrabajo La empresa busca posicio- narna una imagen renovada 34 CONSULTORIO TECNOLÓGICO en la que se presenta como constructoraco de experiencias CASO DE ÉXITO desdede los CRCs. 36 Zardoya Otis EN IMÁGENES EN POSITIVO 40 EDP ENRED@DOS 44 Hawkers 10 EN 800 PALABRAS EL VIAJE DEL CLIENTE Distintas experiencias permiten 48 Nuance conocer las posibilidades de esta herramienta en las organizaciones. 50 EXPO RELACIÓN CLIENTE HOY HABLAMOS CON... 56 José Miguel Zarco, KAM - Ventas CASO DE ÉXITO Microempresas en Vodafone España QUÉ ESTÁ PASANDO 70 64 Sound Masking 68 VoIP2DAY 2016 SCHIBSTED SPAIN Los responsables de la 65 BLOG DE TRANSCOM compañía cuentan cómo han logrado incorporar en sus procesos la voz 66 LA VISIÓN DEL BLOGUERO del cliente.
    [Show full text]
  • Universidad Pol Facultad D Trabajo
    UNIVERSIDAD POLITÉCNICA DE MADRID FACULTAD DE INFORMÁTICA TRABAJO FINAL DE CARRERA ESTUDIO DEL PROTOCOLO XMPP DE MESAJERÍA ISTATÁEA, DE SUS ATECEDETES, Y DE SUS APLICACIOES CIVILES Y MILITARES Autor: José Carlos Díaz García Tutor: Rafael Martínez Olalla Madrid, Septiembre de 2008 2 A mis padres, Francisco y Pilar, que me empujaron siempre a terminar esta licenciatura y que tanto me han enseñado sobre la vida A mis abuelos (q.e.p.d.) A mi hijo icolás, que me ha dejado terminar este trabajo a pesar de robarle su tiempo de juego conmigo Y muy en especial, a Susana, mi fiel y leal compañera, y la luz que ilumina mi camino Agradecimientos En primer lugar, me gustaría agradecer a toda mi familia la comprensión y confianza que me han dado, una vez más, para poder concluir definitivamente esta etapa de mi vida. Sin su apoyo, no lo hubiera hecho. En segundo lugar, quiero agradecer a mis amigos Rafa y Carmen, su interés e insistencia para que llegara este momento. Por sus consejos y por su amistad, les debo mi gratitud. Por otra parte, quiero agradecer a mis compañeros asesores militares de Nextel Engineering sus explicaciones y sabios consejos, que sin duda han sido muy oportunos para escribir el capítulo cuarto de este trabajo. Del mismo modo, agradecer a Pepe Hevia, arquitecto de software de Alhambra Eidos, los buenos ratos compartidos alrrededor de nuestros viejos proyectos sobre XMPP y que encendieron prodigiosamente la mecha de este proyecto. A Jaime y a Bernardo, del Ministerio de Defensa, por haberme hecho descubrir las bondades de XMPP.
    [Show full text]
  • Libghc-Gtk-Prof Libghc-Gio-Prof 0. Libghc-Pango-Prof 0. Zorp
    linphone-common libhugs-base-bundled jlex libmono-security2.0-cil 0. libkonq5-templates libxfixes-dev php5-tidy ruby-magic python-peak.util 0. 0. libisc83 python-async 0. 0. linphone kvirc-modules libjaxe-java syncache 3.23886639676 gcj-4.6-jre-lib 0.0. 0. 0. liblua50-dev 0. 0. 0. libgdkcutter-pixbuf-dev 0. libavahi-common-data libbind9-80 kget gir1.2-cogl-1.0 0. 0. 0. hugs libblacs-mpi-dev 0. python-syfi 0. 0. 0. 0. libhttp-exception-perl 0. 0. libmono-posix2.0-cil libkonq-common 0. 0.877192982456 0. 0.78125 libxcursor-dev 0.31919744642 0. docvert-libreoffice pdf2svg 0. python-peak.rules 2.17391304348 0. 0. 0. librasqal3-dev 0. 0. libxsltc-java libgretl1 gretl gretl-common 0.877192982456 python-passlib python-keystone python-pam kvirc kvirc-data python-cl python-celery python-mailer python-radix zorp python-kzorp libjutils-java libjinput-java libjinput-jni 0. samizdat ecj-gcj libecj-java-gcj linphone-nogtk 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. geany-common 4.04858299595 0. 0. 0. 0. paw 0. python 0. 0. 0. 0. 0. 0. libisccc80 python-gitdb python-git 0. 0. 0. llvm-3.1 0. 0. 0. 0. cl-alexandria 0. liblua50 liblualib50 0. cutter-gtk-support gir1.2-clutter-1.0 0.0227272727273 libavahi-client3 0. 0. 0. libmumps-dev 1.06382978723 0. 0. 0. libtie-shadowhash-perl ruby-graffiti libkonq5abi1 libkvilib4 docvert ruby-whitewash python-turbojson x11proto-fixes-dev libhugs-haskell98-bundled ecj libmono-system2.0-cil 0.
    [Show full text]
  • Third Party Library Attributions
    Third Party Library Attributions Table of Contents 1. Summary 2. PureWeb® Software Third Party Library Attributions 3. PureWeb iOS Client Libraries 3.1. Cocoa Lumberjack Framework 3.2. Sodium Crypto Library 4. ResolutionMD Server Libraries 4.1. Apache Commons 4.2. Apache PDFBox 4.3. Apache HttpComponents 4.4. Arial Unicode Font 4.5. Auto 4.6. Boost 4.7. Bootstrap 4.8. Cairo 4.9. CanJS 4.10. Curl 4.11. dcm4che2 4.12. dcm4che3 4.13. dcm4che5 4.14. DCMTK 4.15. Drools Expert 4.16. Eclipse Implementation of JAXB 4.17. Eclipse Metro 4.18. Eclipse ORB 4.19. Eclipse Project for JAX-WS 4.20. FFmpeg 4.21. FreeMarker 4.22. Freetype 4.23. FTGL 4.24. Glew 4.25. google-api-java-client 4.26. google-api-java-client-services 4.27. google-code-prettify 4.28. google-http-java-client 4.29. google-oauth-java-client 4.30. grcp-java 4.31. guava 4.32. html5shiv 4.33. HAPI 4.34. ICU 4.35. ITK 4.36. Java implementation of JSON Web Token (JWT) 4.37. Jersey 4.38. Joda-Time 4.39. jQuery 4.40. jQuery File Upload Plugin 4.41. jQuery Hashchange 4.42. jQuery UI 4.43. JSON Web Token support for the JVM 4.44. jsoup Java HTML Parser 4.45. Lo-Dash 4.46. libpng 4.47. llvm 4.48. logback 4.49. Mesa 3D Graphics Library 4.50. minizip 4.51. PixelMed 4.52. opencensus-java 4.53. requirejs 4.54. SLF4J 4.55. wysihtml5 4.56. zlib 5.
    [Show full text]
  • D2.2.3 Version 2.4 Author URJC Dissemination CO Date 30/11/2016 Status Final
    D2.2.3 Version 2.4 Author URJC Dissemination CO Date 30/11/2016 Status Final D2.3: State-of-the-art revision document v3 Project acronym: NUBOMEDIA Project title: NUBOMEDIA: an elastic Platform as a Service (PaaS) cloud for interactive social multimedia Project duration: 2014-02-01 to 2017-01-30 Project type: STREP Project reference: 610576 Project web page: http://www.nubomedia.eu Work package WP2 WP leader Victor Hidalgo Deliverable nature: Report Lead editor: Luis Lopez Planned delivery date 11/2016 Actual delivery date 30/11/2016 Keywords State-of-the-art revision The research leading to these results has been funded by the European Union’s Seventh Framework Programme (FP7/2007-2013) under grant agreement nº 610576 FP7 ICT-2013.1.6. Connected and Social Media D2.2.3: State-of-the-art revision document v3 DISCLAIMER All intellectual property rights are owned by the NUBOMEDIA consortium members and are protected by the applicable laws. Except where otherwise specified, all document contents are: “© NUBOMEDIA project -All rights reserved”. Reproduction is not authorized without prior written agreement. All NUBOMEDIA consortium members have agreed to full publication of this document. The commercial use of any information contained in this document may require a license from the owner of that information. All NUBOMEDIA consortium members are also committed to publish accurate and up to date information and take the greatest care to do so. However, the NUBOMEDIA consortium member scan not accept liability for any inaccuracies or omissions
    [Show full text]
  • Mehrwerte Via IP Videokonferenztechnik Hält Einzug in Voip-Systeme
    KOMMUNIKATIONSMANAGEMENT Mehrwerte via IP Videokonferenztechnik hält Einzug in VoIP-Systeme Kai-Oliver Detken VoIP-Systeme (Voice over IP) werden von Microsoft übernommen, eroberte normalerweise dazu genutzt, Telefon- als kostenloser Chat-Dienst die Welt. gespräche über IP-basierte Infrastruk- Nach und nach kamen Funktionen wie Nach wie vor tut sich in Deutschland turen zu führen. Dabei steht die Tele- Telefonie, Videounterstützung und fonie klar im Vordergrund. Videokon- Mehrpunktkonferenzen hinzu. Skype die Videokonferenztechnik schwer, ferenzsysteme entwickelten sich un- lässt sich mittels einer Applikation wenn es um Einsatz und Verbreitung abhängig von VoIP und werden oft nutzen, die inzwischen auf vielen Be- parallel dazu eingesetzt. triebssystemen erhältlich ist. Aller- geht. Allerdings haben inzwischen Aufgrund der Sicherheitsproblematik dings basiert die Datenübertragung – kein externer Anrufer darf direkt auf auf einem proprietären Protokoll. Sky- auch die IP-Telefonhersteller diese einen internen Rechner von außen zu- pe konnte sich maßgeblich durchset- Möglichkeit zur Kommunikation greifen – konnten sich Desktop-Video- zen, weil die Anwendung einfach ge- konferenzsysteme bislang nicht eta- nutzt werden kann und sich automa- entdeckt und setzen vermehrt blieren. Sie fristeten ein Nischendasein tisiert den Weg zum Zielrechner im Low-Budget-Bereich (wie z.B. Net- bahnt, d.h., die Software arbeitet hin- Bildtelefonie auf ihren Systemen ein. Meeting von Microsoft). Hinzu kam, ter den meisten Firewalls und NAT- Zudem kommt aus dem Instant- dass zentrale Server im Internet po- Routern problemlos. tenzielle Videoteilnehmer zwecks Na- Das damit vorhandene systemimma- Messaging-Lager eine mens- und IP-Adressenauflösung spei- nente Sicherheitsproblem scheint aber chern mussten, damit ein entspre- vielen Unternehmen nichts auszuma- Wiederbelebung des Themas. NET chender Videokonferenzanruf über- chen – sie nutzen Skype aufgrund der zeigt, welche Möglichkeiten es gibt, haupt abgesetzt werden konnte.
    [Show full text]
  • Pipenightdreams Osgcal-Doc Mumudvb Mpg123-Alsa Tbb
    pipenightdreams osgcal-doc mumudvb mpg123-alsa tbb-examples libgammu4-dbg gcc-4.1-doc snort-rules-default davical cutmp3 libevolution5.0-cil aspell-am python-gobject-doc openoffice.org-l10n-mn libc6-xen xserver-xorg trophy-data t38modem pioneers-console libnb-platform10-java libgtkglext1-ruby libboost-wave1.39-dev drgenius bfbtester libchromexvmcpro1 isdnutils-xtools ubuntuone-client openoffice.org2-math openoffice.org-l10n-lt lsb-cxx-ia32 kdeartwork-emoticons-kde4 wmpuzzle trafshow python-plplot lx-gdb link-monitor-applet libscm-dev liblog-agent-logger-perl libccrtp-doc libclass-throwable-perl kde-i18n-csb jack-jconv hamradio-menus coinor-libvol-doc msx-emulator bitbake nabi language-pack-gnome-zh libpaperg popularity-contest xracer-tools xfont-nexus opendrim-lmp-baseserver libvorbisfile-ruby liblinebreak-doc libgfcui-2.0-0c2a-dbg libblacs-mpi-dev dict-freedict-spa-eng blender-ogrexml aspell-da x11-apps openoffice.org-l10n-lv openoffice.org-l10n-nl pnmtopng libodbcinstq1 libhsqldb-java-doc libmono-addins-gui0.2-cil sg3-utils linux-backports-modules-alsa-2.6.31-19-generic yorick-yeti-gsl python-pymssql plasma-widget-cpuload mcpp gpsim-lcd cl-csv libhtml-clean-perl asterisk-dbg apt-dater-dbg libgnome-mag1-dev language-pack-gnome-yo python-crypto svn-autoreleasedeb sugar-terminal-activity mii-diag maria-doc libplexus-component-api-java-doc libhugs-hgl-bundled libchipcard-libgwenhywfar47-plugins libghc6-random-dev freefem3d ezmlm cakephp-scripts aspell-ar ara-byte not+sparc openoffice.org-l10n-nn linux-backports-modules-karmic-generic-pae
    [Show full text]
  • Using Voip Midtveisrapport
    INF5261 Using VoIP Midtveisrapport Thomas Bekkeheien, Magnus Lange og Mathias Hagen Innholdsfortegnelse 1 Innledning ............................................................................................................................................. 4 2 Analyse av eksisterende VoIP tilbud .................................................................................................... 4 2.1 Begreper ........................................................................................................................................ 4 2.1.1 VoIP......................................................................................................................................... 4 2.1.2 SIP ........................................................................................................................................... 4 2.1.3 SoftPhone ............................................................................................................................... 5 2.2 Oversikt over tilbydere .................................................................................................................. 5 2.2.1 Shape Services ........................................................................................................................ 5 2.2.2 Barablu ................................................................................................................................... 5 2.2.3 Nimbuzz! ................................................................................................................................
    [Show full text]
  • Exinda Applications List
    Application List Exinda ExOS Version 6.4 © 2014 Exinda Networks, Inc. 2 Copyright © 2014 Exinda Networks, Inc. All rights reserved. No parts of this work may be reproduced in any form or by any means - graphic, electronic, or mechanical, including photocopying, recording, taping, or information storage and retrieval systems - without the written permission of the publisher. Products that are referred to in this document may be either trademarks and/or registered trademarks of the respective owners. The publisher and the author make no claim to these trademarks. While every precaution has been taken in the preparation of this document, the publisher and the author assume no responsibility for errors or omissions, or for damages resulting from the use of information contained in this document or from the use of programs and source code that may accompany it. In no event shall the publisher and the author be liable for any loss of profit or any other commercial damage caused or alleged to have been caused directly or indirectly by this document. Document Built on Tuesday, October 14, 2014 at 5:10 PM Documentation conventions n bold - Interface element such as buttons or menus. For example: Select the Enable checkbox. n italics - Reference to other documents. For example: Refer to the Exinda Application List. n > - Separates navigation elements. For example: Select File > Save. n monospace text - Command line text. n <variable> - Command line arguments. n [x] - An optional CLI keyword or argument. n {x} - A required CLI element. n | - Separates choices within an optional or required element. © 2014 Exinda Networks, Inc.
    [Show full text]
  • A Webrtc Based Platform for Synchronous Online Collaboration and Screen Casting
    A WEBRTC BASED PLATFORM FOR SYNCHRONOUS ONLINE COLLABORATION AND SCREEN CASTING by NIKOLAOS PINIKAS Master in Informatics and Multimedia, Department of Informatics Engineering, School of Applied Technology, Technological Educational Institute of Crete, 2016 A THESIS submitted in partial fulfillment of the requirements for the degree of MASTER OF SCIENCE IN INFORMATICS & MULTIMEDIA DEPARTMENT OF INFORMATICS ENGINEERING SCHOOL OF APPLIED TECHNOLOGY TECHNOLOGICAL EDUCATIONAL INSTITUTE OF CRETE 2016 Approved by: Assistant Professor Dr. Spyros Panagiotakis Copyright NIKOLAOS PINIKAS 2 0 16 This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by/4.0/. All included code is licensed under the MIT License. 2 “WebRTC is not a standard. It’s a movement.” -Tsahi Levent-Levi 3 Abstract WebRTC is a project that was released by Google in 2011 to allow browser- to-browser communication. It includes voice, video and data without the use of plugins. The mission of WebRTC according to Google is to enable rich, high quality, RTC applications to be developed for the browser, mobile platforms, and Internet of Things (IoT) devices, and allow them all to communicate via a common set of protocols. In this thesis we employ the capabilities of the WebRTC APIs to implement a platform for synchronous online collaboration, screen casting and simultaneous multimedia communication by utilizing the WebRTC data and media streams. Collaborative software is defined as “a software that supports intentional group processes”. Collaborative solutions include a wide range of tools. On the Web these tools can be part of what is known as a “Client-Portal” and can include discussions, white boards, media and file exchanging etc.
    [Show full text]
  • Presents : Coreboot for Dummies
    Coreboot for Dummies By Youness Alaoui This adventure has been sponsored by : What are we gonna talk about? •Who am I ? •Getting started with coreboot! •Getting an existing port to build and work •Testing and finishing the Librem 13 v1 port •Starting a new port from scratch •Debug output, how hard can it be? •Summary of doing a port •It's question time! Who am I ? ● Youness Alaoui, a.k.a KaKaRoTo ● aMSN developper ● libnice, Farstream, GStreamer, Meego ● PS3 reverse-engineer ● Freelance consultant ● Most importantly: a coreboot newbie Getting started with coreboot! ● What is coreboot? How does it work ? ● Looking at the entry point… Bad ideas ● The Three Stooges ● Lack of documentation ● Excessive documentation ● Getting started tutorial How to brick a laptop quickly and painlessly! ● Just kidding, it will be painful to the laptop. ● At first glance, most wiki information is about desktop motherboards ● Backup the rom before doing anything else! ● Don’t solder to the motherboard! Dumping the flash on v2 hardware ● Used a Logic Analyzer ● Dump trace data into CSV ● Script to analyze SPI commands and reconstitute the image from reads ● Realize the image is corrupted ● Adjust for <2ns spikes to ignore cross talk ● Give up Dumping the flash on v2 hardware Dumping the flash on v1 hardware ● Don't trust AFULNX, AFUDOS, AFUWIN ● Flashrom to the rescue! ● Laptops and EC ● Use a SOIC clip, instead of a chip socket ● Understanding the Intel Flash Descriptor ● Powering the flash chip and hardware magical nonsense First coreboot build ● The first build tutorial is an excellent start ● Missing microcode ● Missing blobs and descriptors Binary blobs, gotta catch them all! ● How to dump the VGA Bios properly ● Where to get the MRC.bin file ? ● What about the refcode.bin ? ● IFD Descriptor and ME binaries The importance of debugging ● Getting USB debug to work was easy, thank you! ● With no debug output, you can’t properly do a port.
    [Show full text]
  • Red Hat Enterprise Linux 7 7.8 Release Notes
    Red Hat Enterprise Linux 7 7.8 Release Notes Release Notes for Red Hat Enterprise Linux 7.8 Last Updated: 2021-03-02 Red Hat Enterprise Linux 7 7.8 Release Notes Release Notes for Red Hat Enterprise Linux 7.8 Legal Notice Copyright © 2021 Red Hat, Inc. The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/ . In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version. Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law. Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries. Linux ® is the registered trademark of Linus Torvalds in the United States and other countries. Java ® is a registered trademark of Oracle and/or its affiliates. XFS ® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries. MySQL ® is a registered trademark of MySQL AB in the United States, the European Union and other countries. Node.js ® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
    [Show full text]