A software based system for facilitating streaming of media files to a
device over a wide area network (WAN) includes an agent process, an
authentication process, a client services process and a client process.
The agent process catalogs local media files and advises the
authentication process of it's availability on the WAN and the address at
which it may be contacted. The client process contacts the client
services process to obtain, after authenticating with it, the WAN address
of the agent process and contacts the agent process to receive
information or meta-data describing the media files available for
streaming. The client process obtains information for forming a URI or
playlist, that it then passes to a media player to request the stream
over the WAN. Alternately, the client process may direct the agent
process to pass the URL to another client process on, for example, the
same local area network.