Reconfigurable video coding
# Reconfigurable video coding

The Reconfigurable Video Coding (RVC) is an MPEG initiative to provide an innovative framework of video coding development. This framework offers a way to overcome the lack of interoperability between the many video codecs deployed in the market. Indeed, an RVC codec is described using the dataflow programming paradigm which permits flexibility and reusability. Two standards have been produced by the RVC working group:

* The codec configuration representation (ISO/IEC 23001-4 or MPEG-B pt. 4) describes the format with which an RVC decoder can be defined as a network of computational blocks, as well as a textual language for the definition of video coding blocks.
* A video tool library (ISO/IEC 23002-4 or MPEG-C pt. 4) that standardizes actors needed to describe existing video coding standards (currently MPEG-4 part 2 and MPEG-4 part 10).

## Motivations

RVC was motivated by the following observations:

* In the last two decades, many video coding standards (MPEG-2, MPEG-4 AVC, VP8, etc.) have been specified to meet consumers' demands. These new technologies have been using increasingly complex algorithms and many of them share some common parts (a discrete cosine transform for example). Unfortunately, there was at the time no standard way to exploit these similarities.
* The specification of a video coding standard was previously provided with a textual document and reference software, without consideration for the effort needed to implement the standard on multi-core processors or hardware platforms.

## History

Work on Reconfigurable Video Coding started in March 2004 during an MPEG meeting at Munich with the research of common elements among existing MPEG standards. After more than two years of work, it was found that even if their specifications were strictly different they had some very similar architectures and related data flow. A Call for Proposals was made during the 76th MPEG meeting at Montreux, this call aimed to collect technologies to describe some unified descriptions of the MPEG video technology. The next meeting saw the proposal to build a MPEG Reconfigurable Video Coding framework accepted, and work on the development of standard components started.

