GithubHelp home page GithubHelp logo

denizugur / capsc Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 1.0 8.31 MB

Content-Aware Playback Speed Control for Low-Latency Live Streaming of Sports

Home Page: https://dl.acm.org/doi/10.1145/3458305.3478437

Shell 6.44% JavaScript 54.66% CSS 1.38% Python 29.60% HTML 2.20% Dockerfile 5.71%
dashjs low-latency streaming

capsc's Introduction

Content-Aware Playback Speed Control for Low-Latency Live Streaming of Sports

DOI:10.1145/3458305.3478437

Abstract

There are two main factors that determine the viewer experience during the live streaming of sports content: latency and stalls. Latency should be low and stalls should not occur. Yet, these two factors work against each other and it is not trivial to strike the best trade-off between them. One of the best tools we have today to manage this trade-off is the adaptive playback speed control. This tool allows the streaming client to slow down the playback when there is a risk of stalling and increase the playback when there is no risk of stalling but the live latency is higher than desired. While adaptive playback generally works well, the artifacts due to the changes in the playback speed should preferably be unnoticeable to the viewers. However, this mostly depends on the portion of the audio/video content subject to the playback speed change. In this paper, we advance the state-of-the-art by developing a content-aware playback speed control (CAPSC) algorithm and demonstrate a number of examples showing its significance. We make the running code available and provide a demo page hoping that it will be a useful tool for the developers and content providers.

Table of Contents

  • demo/ contains the source code for our demo page
  • server/ contains the web server. It is needed by the simulator and provides example code for several metrics. This directory also contains GPAC-Dash server that streams chunks to the client.
  • scripts/ contains some scripts to start development environment
  • simulator/ contains the utilities needed to benchmark CAPSC

Demo

We have included a docker image for you to test our system live.

If you want to build the image yourself, execute the following:

docker build -t capsc .

To run the image, execute the following:

docker run -p 80:80 \ # web server will be accesible on port 80
	   --rm \ # remove the container after it is stopped
	   -it \ # Interactive mode. Needed for Ctrl^C to work.
	   -v "$PWD:/home" \ # You need to map a location to be able to use your video files
	   -w "/home" \ # If you want to use your own video files
	   --name capsc-demo \ # Optional: If you want to name the container
	   ghcr.io/denizugur/capsc \ # Chanege it to `capsc` if you built the image yourself
	   --help # Shows the usage instructions for the demo

Citation

@inproceedings{10.1145/3458305.3478437,
	author = {Aladag, Omer F. and Ugur, Deniz and Akcay, Mehmet N. and Begen, Ali C.},
	title = {Content-Aware Playback Speed Control for Low-Latency Live Streaming of Sports},
	year = {2021},
	isbn = {9781450384346},
	publisher = {Association for Computing Machinery},
	address = {New York, NY, USA},
	url = {https://doi.org/10.1145/3458305.3478437},
	doi = {10.1145/3458305.3478437},
	booktitle = {Proceedings of the 12th ACM Multimedia Systems Conference},
	pages = {344โ€“349},
	numpages = {6},
	keywords = {low latency, CMAF, adaptive streaming, playback speed control, DASH, ABR, HLS, Adaptive playback},
	location = {Istanbul, Turkey},
	series = {MMSys '21}
}

capsc's People

Contributors

denizugur avatar ofaladag avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Forkers

ajunlonglive

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.