GithubHelp home page GithubHelp logo

junkai0531 / quic-gstreamer-integration Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mwalker2299/quic-gstreamer-integration

0.0 0.0 0.0 47.24 MB

Repository for the research project to be completed as part of the 5th year Msci Software Engineering with Year Placement degree. This project aims to integrate the QUIC transport protocol into GStreamer in order to compare QUIC to other transport protocols in various use cases.

License: GNU Lesser General Public License v2.1

Shell 1.10% Python 15.25% C 51.78% TeX 31.53% Meson 0.33%

quic-gstreamer-integration's Introduction

Evaluating the Effectiveness of QUIC When Integrated Into Gstreamer

This is a 40 credit MSci research project required for the Software Engineering with Year Placement course.

  • Student Name: Matthew Walker
  • Student Matriculation: 2310528
  • Project Supervisor: DR. Colin Perkins

Project Overview

QUIC is a transport layer network protocol recently standardised by the IETF that provides secure and reliable delivery of packets. QUIC runs over the existing UDP protocol and was designed to solve the issues of Head-of-Line blocking and protocol ossification which plague TCP. Currently, there is no support for QUIC in GStreamer, an open-source framework for creating pipelines for use in media processing and streaming applications. As a result, we do not know how well QUIC performs in conjunction with GStreamer.

The goal of this project is to evaluate the effectiveness of the QUIC protocol when integrated into GStreamer. In order to accomplish this, two new GStreamer source and sink element plugins that utilise an existing implementation of the QUIC protocol will be created. Using these new plugins, the performance of QUIC will be assessed in a range of realistic scenarios and compared to the performance of other network protocols (UPD, TCP) using existing GStreamer plugins. This will show whether or not QUIC-based GStreamer elements can function appropriately and demonstrate in which scenarios, if any, QUIC is the appropriate network protocol to use in a GStreamer pipeline.

Project Structure

  • timelog.md The time log for the project (Total time logged is 580.75 hours).
  • data/ Contains data acquired during the project (evaluation).
  • src/ The source code for the project.
  • status_report/ Contains the status report to be submitted in December.
  • meetings/ Records of the meetings conducted during the project.
  • requirements/ Holds the requirements for the project
  • dissertation/ Contains all files needed for the final project dissertation
  • summer/ Contains info on the research conducted before the project began
  • submodules/ Contains submodules necessary to build the GStreamer element plugins and run the test framework.

quic-gstreamer-integration's People

Contributors

mwalker2299 avatar mjwalker2299 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.