Media objects are transformed into active, connected objects via
identifiers embedded into them or their containers. In the context of a
user's playback experience, a decoding process extracts the identifier
from a media object and possibly additional context information and
forwards it to a server. The server, in turn, maps the identifier to an
action, such as returning metadata, re-directing the request to one or
more other servers, requesting information from another server to
identify the media object, etc. The server may return a higher fidelity
version of content from which the identifier was extracted. In some
applications, the higher fidelity version may be substituted for the
original media object and rendered to provide higher quality output. The
linking process applies to broadcast objects as well as objects
transmitted over networks in streaming and compressed file formats.