Adaptive MPEG agent system

MPEG video streaming and displaying are handled by agents. A streaming agent sends video data over best-effort network, and at the other end, a display agent receives the video and decodes it for display. Since real-time multimedia data quality is subject to system resource availability, and in the case of no native system reservation support, adaptiveness of applications are key to successful multimedia streaming.

Problem

Performance of MPEG video streaming over best-effort based network is heavily dependent on system resource state (e.g. network bandwith, CPU load).

Approach

With a set of streaming modes each of which is tuned for different resource states and a set of rules to control the mode selection, streaming can be adapted according to current system resource state. Bond agent framework provides good foundation to build agents which can be easily re-configured.
 

Adaptive MPEG agent system architecture

Display agents (client) connect to a video server, which spawns streaming agents for each connection. The display agent is responsible for displaying video stream and the streaming agent is to deliver the stream as well as to control streaming modes. Two communication channels exist between the agents: a control channel for streaming commands and performance feedback from client, and a data channel for the streaming video contents.
 
 

  • Streaming mode
  • Rules
  • Structure of agents

     

    Experiment result
     

    Screen capture video

    Related papers