Methods and systems are described that permit efficient processing of
user-defined multi-media editing projects that combine multiple different
source data streams into a single compressed data stream that represents
the project. The described approaches are directed to ensuring that those
compressed source data stream portions that need to be uncompressed for
processing are uncompressed and processed, while those compressed source
data stream portions that do not need to be uncompressed are not
uncompressed. In one embodiment, a unique switch assembly is provided
comprising one or more switches each of which being configured to process
data streams. The switch assembly is configured to process both
compressed and uncompressed data streams to provide the single compressed
output data stream. In one embodiment, three software-implemented
switches are provided--one for handling uncompressed source data streams,
one for handling compressed source data streams, and one for processing
the output of the first two switches to provide the single compressed
data stream.