gst-plugins-rs/video
Mathieu Duponchelle 42b4defb5c tttocea608: in-depth refactoring, support for new input format
Up to now, tttocea608 supported text/utf8, and no interface to
control the positioning of closed captions apart from new lines
in the input text.

CEA 608 supports a larger set of features than that, such as
positioning CC precisely in its 32 x 15 grid, styling text,
switching from one mode to another, resetting the base row
in roll-up mode etc ..

A custom, JSON-based format is now supported by the element
(caps application/x-json, format=cea608), allowing users to
control those features in a pretty advanced manner.

A side effect of this is that the approach previously used
by the element to ensure frame-accurate CC display is now
untenable: where we knew before that an input buffer would
at most span 74 buffers and calculate a somewhat reasonable
latency based on that, this is no longer possible. Instead
we pick the approach most CC encoders seem to pick, and
accept a certain latency at display time: for example the
flipping of the back buffer to the display buffer for a
10-character text buffer will occur 7 frames after its
PTS. This has obvious benefits in terms of code complexity
and should generally be acceptable.

+ Removes a now irrelevant test, updates other tests

+ Extracts the Mode enum to the root of the crate, it will
  be used by another element in a follow-up commit
2021-01-20 02:29:19 +01:00
..
cdg use cargo-c to produce cdy and static libs 2021-01-04 12:26:45 +01:00
closedcaption tttocea608: in-depth refactoring, support for new input format 2021-01-20 02:29:19 +01:00
dav1d use cargo-c to produce cdy and static libs 2021-01-04 12:26:45 +01:00
flavors use cargo-c to produce cdy and static libs 2021-01-04 12:26:45 +01:00
gif use cargo-c to produce cdy and static libs 2021-01-04 12:26:45 +01:00
hsv use cargo-c to produce cdy and static libs 2021-01-04 12:26:45 +01:00
rav1e rav1enc: Make use of the opaque API to map frames/packets to the video encoder frames 2021-01-15 11:58:26 +02:00
rspng use cargo-c to produce cdy and static libs 2021-01-04 12:26:45 +01:00