Project Noja hosts official and user-contributed code. The official modules are developed and maintained by the core developer team. Registered users can also uploaded their own code and extension modules to share ideas and common solutions with the community. However, support for contributed code is up to the original author who may be unavailable for questions and bug fixes.
Project Noja officially supports and maintains the following modules and utilities for network simulations and real-world streaming applications.
NojaCore is a multi-platform C++ library that offers basic OS-level abstractions and utility classes.
NojaSim is a set of tools and C++ libraries for building and running audio/video streaming simulations.
NojaStream is an extensible middleware platform written in C++ that provides a convenient programming model to build streaming applications.
The dependency model is a generic service to efficiently track dependencies in packetized media streams and to infer the importance of network packets based on dependency relations.
We encourage our users to share their utilities, algorithms and simulation models with the Noja community. We regularly consider to integrate some of these contributions into the main-line of tools. Please contact us if your idea does not fit into one of the following categories:
Algorithms that optimize the delivery of multimedia bitstreams to increase loss-resilience or perform content scaling in servers and proxies.
Pre-configured network models and applications to enable simulation out-of-the-box simulations of different delivery scenarios.
Simulator wrappers and utilities to perform single and complex tasks in simulation workflows such as running distributed simulations and analyzing streams and packet traces.
NojaStream plugins or stand-alone transport protocols for media streaming that may use one of the optimization models.
Project Library | Documentation | Community | Blogs | About
