Streaming Server

In online virtual environments, the audiovisual content render is typically achieved by a standalone application on the client side. Our interest is here, rather than deploying a large-scale efficient system, to provide a flexible platform for soundscape design and generation that is both application-agnostic and is focused to user accessibility.We intend to foster user-generated content, and the web has become commonplace as a collaborative repository of media content. As for the actual audio rendering, inspite of the lower efficiency, a server-side architecture offers advantages, since it does not require any specific software installation by the user.

 architechture

Interaction with the soundscape running in the server is done through a web API. This allows client applications to add listeners and obtain personalized streams given the coordinates of each listener (“position” and “rotation”). A web server implemented a Twisted (http://twistedmatrix.com) framework and it provides an HTTP interface for external Internet clients, which translates to OSC (OpenSoundControl) calls for controlling the streaming server. The web server is also responsible of maintaining client sessions. In the current implementation, a fixed pool of streaming URLs is used, and so the number of clients is bounded. Finally, this server module streams the listener output produced by the soundscape generation in the MPEG1 Layer 3 format.Currently, the streaming server hosts uniquely the soundscape for the "Virtual Travel" demo (see downloads page). For evaluation purposes, it is possible to host streaming of user-created soundscapes under request from research or commercial institutions.

intranet