Fully Interoperable Streaming of Media Resources in Heterogeneous Environments

[Description] [Source] [Examples]


The streaming of multimedia content over heterogeneous networks such as the Internet causes problems due to bandwidth fluctuations of network links with different capabilities as well as due to the variety of receiving terminals. To address these challenges we have developed an interoperable multimedia delivery framework for (scalable) media resources based on various MPEG standards and IETF Requests for Comments (RFC). In can be used to transmit (scalable) media resources within heterogeneous usage environments where the properties of the usage environment (e.g., terminal/network capabilities) may change dynamically during the streaming session. The usage environment properties are signaled by interoperable description formats provided by the MPEG-21 Digital Item Adaptation (DIA) standard and encapsulated within the MPEG Extensible Middleware’s (MXM) request content protocol. Furthermore, the available media resources are queried by means of the MPEG Query Format (MPQF). Additionally, the actual adaptation and delivery of the content is done by exploiting a state-of-the-art multimedia framework such as that provided by VideoLAN Client (VLC).

Usage of the Demo

A typical demo setup consists of one streaming server and a number of streaming clients. Each client requests the available sequences from the server, selects one sequence and transmits the desired properties of the Video on Demand session to the server. The server subsequently returns the URI for the streaming session and the client can start the session.

To use the demo, the server needs to be started first. This can be done by executing the start_server script in the scripts directory of the demo.

Subsequently, a number of clients can be started. To start one client, please execute the start_client script. After the calling of the script, the VLC GUI will start. The MXM dialog can be started by clicking on Media - Open MXM or by pressing Ctrl+M. The MXM dialog is shown below:

Before the configuration of the streaming session, the available sequences need to be requested from the server. Before requesting the sequences, you have to enter the IP of the device where the server was started and the port of the MXM interface at the server. If you did not set the parameter for the MXM interface port when starting the server, the default port is 4321. After entering the server information, the sequences are requested by clicking Get Sequences. The MXM dialog after the sequence request is shown below:

After the request of the sequenes, five new lists are available. In the sequences list, you can select the desired sequence from the sequences which are available at the server's Digital Item repository. After selecting the sequence, you can set the preferred settings of the streaming session. In the width and height lists, you can set your preferred resolution. In the frame rate list you can select your preferred frame-rate and in the bit-rate list you can select your preferred bit-rate. After choosing the appropriate values from the lists, the Video on Demand session is setup by clicking on Start VoD Session. Finally, the streaming session can be started by clicking the Play button.

Demo Video

The functionality of an older version of the demo is illustrated in this video, which shows a setup with one server and two clients.


DI Michael Eberhard
Multimedia Communication Group (MMC)
Institute of Information Technology (ITEC)
Faculty of Technical Sciences (TEWI)
Klagenfurt University, Austria