Implementing a video decoder using Feldspar - Heurlin, Daniel; Zwierzchowski, Stanisław (My University, 2020)
In this project, we attempt to implement a decoder for the MPEG-1 video standard using Feldspar, an embedded domain specific language in Haskell. The idea is to evaluate whether Feldspar is suitable for more advanced DSP applications and whether it can result in simpler code compared to a lower level language like C while maintaining similar performance. We succeed in implementing a functioning, albeit limited and slow decoder which shows that Feldspar is capable of such a task. We discover that some parts of the implementation are simpler compared to a low level language while others are similar, if not more complicated. We also discuss the pros and cons of Feldspar and suggest improvements that could be made to the language.
Keywords: video; video decoding; codec; DSP; functional programming; Haskell; Feldspar; MPEG-1