RoSE Project
RoSE architecture elements
RoSE project is composed of different programs, in particular:
- Re Mux
- Provides to split a raw video in two streams using the 2MD strategy;
- AVstreamer
- Transform video sequence codified by a generic encoder in to rtp traffic stream,
that can feed the RoSE RTSP server;
- RTP server
- The RTP server is used to prepare a streaming from a rtp feeder on a rtp session
that can be streamed to the clients. This server take as input rtp sessions and work
as a rtp-proxy for the clients that want to play the streams;
- Post Mux
- Post Mux is the complementary of the Re-Mux. This module simple reassembles the streams
coming from different rtp sessions when the client is able to manage more than
one rtp session;
- Media Stream Analyzer
- Since RoSE is used to value the performance of particular techniques, when a video stream
has been received, it is necessary to calculate the quality of the video received, respect
to the original one. The module responsibles for this task is the Media Stream Analyzer
In the below figure 2 you can see a draw that represents the connection of the RoSE components just described.
You can download the implementation of this elements from the
Released Software section.
Fig. 2: Diagram of the RoSE architecture
Back to index
Multiple descriptions strategy adapted, the 2MD technique
The RoSE
project is especially focusing on moving some research techniques into practical streaming systems.
As view in the Fig 1 of the
general description section, the basic idea of RoSE is to divide the
stream of a video in different rtp traffic flows, so the clients can receive different numbers of rtp
flows depending on the network condition or on the hardware of the clients.
This approach is usually called Multiple Description Code (MDC)
and is part of the Scalable Video Coding (SVC) techniques.
For RoSE project has been chosen to use a simple spatial 2MD
technique. This technique is a typical and low-cost way to produce multiple descriptions.
The basically idea is to partition the source data into several sets and then compress these independently
to produce descriptions. The separation can be into odd- and even-numbered samples. In the spatial
dimension, this corresponds to spatial sampling of frames into N subsets. For N= 2, two
balanced descriptions can be generated by separating odd/even lines. This technique is denoted
as spatial 2MD.
In spatial 2MD, each frame in the input video is separated into odd and even subframes at
the Remux module of RoSE. The odd and the even subframes contain the odd and even lines,
respectively. Therefore, the height of the frames are halved but the width does not change.
In the following figure 3 it is possible to see the result of the 2MD technique.
Fig. 3: 2MD technique example
These two descriptions are encoded with half the bit-rate of the original stream to keep the
total bit-rate constant. Then these descriptions are offline-processed/streamed and merged at
the Postmux to reconstruct the received video. All these MDC-related operations are performed in
the data plane.
Back to index
[Home]
[Research]
[Released Software]
[Documentation]
[Contact]