The capability of the Raspberry to decode H.264 and MPEG-2 data makes it necessary to develop a simple interface to ensure that additional video compression methods can be added later without to change other modules. Such an interface can be very simple since DVB-S2 uses the same MPEG container format that is used in DVB-S.
Since the vanilla GnuTV application is already capable of recording broadcasts that are encoded in H.264, we only need to adjust our MPEG helper code that converts the MPEG-TS data into elementary streams to handle such video streams. The audio extraction is not affected because usually the audio profile is the same as in SD TV.
In a nutshell, we already tested our OpenMAX code with H.264 elementary streams and we did not find any problems. Thus, it suffices that the interface defines the values that are then used for the ‘eCompressionFormat’ field in the OpenMAX API. Then, all we need to do is to add the H.264 related identifier to the MPEG code to watch both SD and HD TV with our prototype.