{'fraction_non_alphanumeric': 0.02391118701964133, 'fraction_numerical': 0.0, 'mean_word_length': 5.104166666666667, '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}}
Programming Multimedia Applications in GStreamer

This short course is an introduction to GStreamer, one of the main free/open-source frameworks for multimedia processing. We start presenting GStreamer, its architecture and the dataflow programming model, and then adopt a hands-on approach. Starting with an example, a simple video player, we introduce each concept of GStreamer's basic C API and implement it over the initial example incrementally, so that at the end of the course we get a complete video player with support for the usual playback operations (start, stop, pause, seek, fast-forward, and rewind). We also discuss sample filters'processing elements that manipulate audio and video samples. We present the various filters natively available in GStreamer and show how one can extend the framework by creating a plugin with a custom filter that manipulates video samples. The only prerequisite for the short course is a basic knowledge of the C programming language. At the end of the short course, we expect that participants acquire a general view of GStreamer, and be able to create simple multimedia applications and explore its more advanced features.