A system, method, and computer program product for determining the
configuration of an end user's computer system. In particular, the media
players and network connection speed of the user are determined. This
configuration information is then received by a delivery management
server. The configuration information is used to format multi-media
content for delivery to the user. Because the content is formatted
according to the configuration information, the content is compatible
with the user's configuration. The configuration determination process
involves server contact code placed in the web page of the content
provider. When the web page is loaded by the user, the server contact
code directs the browser to retrieve code from the delivery management
server. When the code is executed by the user, the media player of the
user is determined. This information is saved in cookies at the user and
is sent to the delivery management server. If the configuration
information is indeterminate or incomplete, the user is presented with a
preferences page in which the user can indicate the configuration. The
preferences page also contains a mechanism for determining the connection
speed of the user. The preferences page can also make specific
recommendations to the user, e.g., recommend that the user choose a
specific media player. The preferences page contains a block of data
having a known size. The time required to transfer the block is measured,
and the connection speed is then calculated and provided to the delivery
management server.