Skip to content

ccutils: Keep upstream padding payload

A payload of 0x80 0x80 means that it's padding. It's not a good idea to throw this away though, because of the cc_valid field.

According to CEA 10-B section 25.2.1, if cc_valid is zero, the run-in clock and start bit should not be generated. In practice, this means that any closed captions will be erased and the end-user TV will show that captions are not available for this stream. This might have undesired consequences, e.g. we were just showing a long line of captions and we disable it before the user has had time to read it, or you can't enable closed captions during silence/music intervals.

We cannot reliably detect whether there's a currently-silent closed caption stream or just nothing, but we have this information coming from upstream, so we can at least not discard it.

Merge request reports