Top |
The interlace element takes a non-interlaced raw video stream as input, creates fields out of each frame, then combines fields into interlaced frames to output as an interlaced video stream. It can also produce telecined streams from progressive input.
1 |
gst-launch-1.0 -v videotestsrc pattern=ball ! interlace ! xvimagesink |
This pipeline illustrates the combing effects caused by displaying two interlaced fields as one progressive frame.
1 2 3 4 |
gst-launch-1.0 -v filesrc location=/path/to/file ! decodebin ! videorate ! videoscale ! video/x-raw,format=\(string\)I420,width=720,height=480, framerate=60000/1001,pixel-aspect-ratio=11/10 ! interlace top-field-first=false ! autovideosink |
This pipeline converts a progressive video stream into an interlaced stream suitable for standard definition NTSC.
1 2 3 4 |
gst-launch-1.0 -v videotestsrc pattern=ball ! video/x-raw, format=\(string\)I420,width=720,height=480,framerate=24000/1001, pixel-aspect-ratio=11/10 ! interlace ! autovideosink |
This pipeline converts a 24 frames per second progressive film stream into a 30000/1001 2:3:2:3... pattern telecined stream suitable for displaying film content on NTSC.
name |
sink |
direction |
sink |
presence |
always |
details |
video/x-raw, format=(string){ AYUV, YUY2, UYVY, I420, YV12, Y42B, Y444, NV12, NV21 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ] |
name |
src |
direction |
source |
presence |
always |
details |
video/x-raw, format=(string){ AYUV, YUY2, UYVY, I420, YV12, Y42B, Y444, NV12, NV21 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], interlace-mode=(string){ interleaved, mixed } |