mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-24 10:41:04 +00:00
design: document new "alternate" video interlace mode
This commit is contained in:
parent
ba2cddfc17
commit
28e10fef5c
2 changed files with 30 additions and 1 deletions
|
@ -100,3 +100,24 @@ For example in the following sequence, the third buffer would be mixed
|
||||||
(yes, it is a strange pattern, but it can happen):
|
(yes, it is a strange pattern, but it can happen):
|
||||||
|
|
||||||
AtAb AtBb BtCb CtDb DtDb
|
AtAb AtBb BtCb CtDb DtDb
|
||||||
|
|
||||||
|
### Alternate fields
|
||||||
|
|
||||||
|
Since: 1.16
|
||||||
|
|
||||||
|
If the video info interlace mode is **"alternate"**, then each buffer
|
||||||
|
carries a single field of interlaced video.
|
||||||
|
|
||||||
|
`GST_VIDEO_BUFFER_FLAG_TOP_FIELD` and `GST_VIDEO_BUFFER_FLAG_BOTTOM_FIELD`
|
||||||
|
indicate whether the buffer carries a top or bottom field. The order of
|
||||||
|
buffers/fields in the stream and the timestamps on the buffers indicate the
|
||||||
|
temporal order of the fields.
|
||||||
|
|
||||||
|
Top and bottom fields are expected to alternate in this mode.
|
||||||
|
|
||||||
|
Caps for this interlace mode must also carry a `format:Interlaced` caps feature
|
||||||
|
(`GST_CAPS_FEATURE_FORMAT_INTERLACED`) to ensure backwards compatibility for
|
||||||
|
the new mode.
|
||||||
|
|
||||||
|
The frame rate in the caps still signals the frame rate, so the notional field
|
||||||
|
rate will be twice the frame rate from the caps (see `GST_VIDEO_INFO_FIELD_RATE_N`).
|
||||||
|
|
|
@ -18,7 +18,8 @@
|
||||||
view. use the frame id to get access to the different views.
|
view. use the frame id to get access to the different views.
|
||||||
|
|
||||||
- **interlace-mode**, `G_TYPE_STRING`: Default progressive. The interlace
|
- **interlace-mode**, `G_TYPE_STRING`: Default progressive. The interlace
|
||||||
mode. The following values are possible:
|
mode (also see the [interlaced video design docs](design/interlaced-video.md)).
|
||||||
|
The following values are possible:
|
||||||
|
|
||||||
- *"progressive"*: all frames are progressive
|
- *"progressive"*: all frames are progressive
|
||||||
|
|
||||||
|
@ -37,6 +38,13 @@
|
||||||
must be prepared for this. This mode requires multiple
|
must be prepared for this. This mode requires multiple
|
||||||
GstVideoMeta metadata to describe the fields.
|
GstVideoMeta metadata to describe the fields.
|
||||||
|
|
||||||
|
- *"alternate"*: one field per buffer, with buffer flags indicating
|
||||||
|
whether the field is the top field (`GST_VIDEO_BUFFER_FLAG_TOP_FIELD`) or
|
||||||
|
bottom field (`GST_VIDEO_BUFFER_FLAG_BOTTOM_FIELD`). Top and bottom fields
|
||||||
|
are expected to alternate in this mode. Caps for this interlace mode must
|
||||||
|
also carry a `format:Interlaced` caps feature (`GST_CAPS_FEATURE_FORMAT_INTERLACED`)
|
||||||
|
to ensure backwards compatibility for the new mode (Since: 1.16)
|
||||||
|
|
||||||
- **chroma-site**, `G_TYPE_STRING`: Default `GST_VIDEO_CHROMA_SITE_UNKNOWN`.
|
- **chroma-site**, `G_TYPE_STRING`: Default `GST_VIDEO_CHROMA_SITE_UNKNOWN`.
|
||||||
The chroma siting of the video frames.
|
The chroma siting of the video frames.
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue