Note: Pixel Bender is no longer in development. Most if not all of the content referenced in the Pixel Bender Developer Center is obsolete and will not work with the latest versions of Adobe products.
Adobe Pixel Bender technology delivers a common image and video processing infrastructure which provides automatic runtime optimization on heterogeneous hardware. You can use the Pixel Bender kernel language to implement image processing algorithms (filters or effects) in a hardware-independent manner. The Pixel Bender graph language is an XML-based language for combining individual pixel-processing operations (kernels) into more complex Pixel Bender filters.
The Pixel Bender Toolkit includes the Pixel Bender kernel language and graph language, the Pixel Bender Toolkit IDE (an integrated development environment for Pixel Bender), sample filters, and documentation.
In certain installation scenarios, the Pixel Bender Toolkit 2.1 installer introduced an issue which prevents users from successfully uninstalling Pixel Bender Toolkit 2.1 or updating to newer versions of Pixel Bender Toolkit 2, such as Pixel Bender Toolkit 2.5. To resolve this problem, follow the steps in the Pixel Bender release notes before downloading and installing Pixel Bender Toolkit 2.5.
The Pixel Bender Toolkit now includes a new visual Graph Editor that allows you to manipulate a graph structure. The text-based Graph Editor, which allows you to edit the code directly, is still available as well.
This update to the Pixel Bender Toolkit addresses many bug fixes especially in the areas of user interface, Flash Player preview, and Pixel Bender kernel and graph processing and rendering.
Get an overview of what you can do with the Pixel Bender Toolkit by following this tutorial series by Kevin Goldsmith, engineering manager for the Adobe Image Foundation team in the Core Technology group.
Programming in Pixel Bender
Pixel Bender development offers many advantages:
Low learning curve: Pixel Bender offers a small number of tools that are sufficient to write complex image-processing algorithms. Learning Pixel Bender is easier than learning C/C++ and each application's plug-in SDK. You do not need to know any graphics shading language or multithreading APIs.
Parallel processing: Pixel Bender allows the same filter to run efficiently on different GPU and CPU architectures, including multicore and multiprocessor systems. It delivers excellent image processing performance in Adobe products.
Supports all bit-depths: The same kernel runs in 8-bit/16-bit/32-bit within the application.
Support by multiple Adobe applications: Pixel Bender is integrated with multiple Adobe applications, such as After Effects, Flash, and Photoshop. It allows you to develop filters that are portable among various Adobe products. You can add your Pixel Bender filters and effects to those already offered in those applications. There is an active Pixel Bender Exchange where developers share their filters.
Pixel Bender is best suited for the kind of algorithms in which processing of any pixel has minimum dependence on the values of other pixels. For example, you can efficiently write a kernel to manipulate brightness of the image because brightness of each pixel can be changed independently. You would not want to use Pixel Bender to compute a histogram, because a histogram requires the values of all the pixels in an image.
For more details, please download the Pixel Bender Toolkit, the Pixel Bender Developer's Guide, and the Pixel Bender Language Reference, linked to at left.