{'fraction_non_alphanumeric': 0.024978466838931956, 'fraction_numerical': 0.0017226528854435831, 'mean_word_length': 5.564971751412429, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
An LLVM-based decoder for MPEG Reconfigurable Video Coding

MPEG Reconfigurable Video Coding(RVC) is a new platform-independent specification methodology chosen by the MPEG community for describing coding standards. This methodology aims at producing Abstract Decoder Models (ADMs) of MPEG decoders as dataflow programs described in RVC-CAL Actor Language (RVC-CAL) [1]. RVC-CAL naturally expresses potential parallelism between tasks of an application, which makes an ADM description suitable for implementation to a wide variety of platform, from uniprocessor systems to FPGAs. MPEG RVC eases the conception process of decoders by describing decoders at a library component level instead of using monilithic algorithms, and by providing a library of coding tools standardized in MPEG. This paper presents new mechanisms based on the Low Level Virtual Machine (LLVM) capacities that allow the conception of the first decoder able to dynamically instantiate an RVC decoder description. This decoder, unlike static decoders generated by RVC tools [2], keeps de facto the features of an RVC description namely portability, scalability and reconfiguration ability.