GithubHelp home page GithubHelp logo

bones's Introduction

BONES

This is the official code repository for the paper: BONES: Near-Optimal Neural-Enhanced Video Streaming . Authors: Lingdong Wang, Simran Singh, Jacob Chakareski, Mohammad Hajiesmaili, Ramesh K. Sitaraman.

Simulation Environment

Prerequisites

numpy

Quick Start

Move to the control/folder, and then run our BONES algorithm with:

python bones.py --monitor --verbose

Data

We provide the video metadata and the enhancement performance as JSON files here.

Refer to this document if you want to reproduce our data collection procedure.

Reproduction

To reproduce the results in our paper, move to the experiment/ folder and then run:

python run_all.py

Prototype System

Prerequisites

asyncio, PyTorch, VPF, OpenGL

This system requires a GPU with CUDA support. It has only been tested on Linux.

Data

Download the sample DASH video segments from here. Unzip the file and overwrite the player/data/video_mp4box/ folder with it.

If you want to reproduce the generation of video segments, move to player/data/video_mp4box/ and run:

bash segment_1080p_mp4box.sh

Usage

Move to the player/ folder, and then run our prototype system with:

python play.py -i data/video_mp4box/bbb.mpd -t data/3Glogs/report.2010-09-13_1003CEST.json

The player runs in the headless mode by default. To enable the graphical renderer, run:

python play.py -i data/video_mp4box/bbb.mpd -t data/3Glogs/report.2010-09-13_1003CEST.json --mod_renderer opengl

Please note that this implementation is a research prototype favoring flexibility over efficiency, so the graphical mode may suffer from low frame rate or rendering artifacts. To achieve better performance, we recommend using the headless mode, running the graphical mode with powerful GPU, or decreasing the display_width/display_height in the configuration file.

Acknowledgement

Our implementation of the simulation environment is based on Sabre.

Our implementation of the prototype system is based on iStream.

Citation

If you find our work helpful, please consider citing:

bones's People

Contributors

wld22145 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.