Modern digital video applications, ranging from video compression to content analysis, require both high computation rates and the ability to run a variety of complex algorithms. As a result, many groups have developed programmable architectures tuned for video applications. There have been four solutions to this problem so far: modiﬁcations of existing microprocessor architectures, application-speciﬁc architectures, fully programmable video signal processors (VSPs), and hybrid systems with reconﬁgurable hardware. Each approach has both advantages and disadvantages. They target the market from different perspectives. Instruction set extensions are motivated by the desire to speed up video signal processing (and other multimedia applications) by software solely rather than by special-purpose hardware. Application-speciﬁc architectures are designed to implement one or a few applications (e.g., MPEG-2 decoding). Programmable VSPs are architectures designed from the ground up for multiple video applications and may not perform well on traditional computer applications. Finally, reconﬁgurable systems intend to achieve high performance while maintaining ﬂexibility.