Elecard QS Video Transcoder

Elecard QS Video Transcoder is a GStreamer plugin for transcoding MPEG-2/H.264/H.265 into MPEG-2 (ISO/IEC 13818-2), H.264/AVC (MPEG-4 Part 10, ISO/IEC 14496-10), and H.265/HEVC (ISO/IEC 23008-2 MPEG-H Part 2/ITU-T H.265) streams based on Intel QuickSync technology.

Features

Elecard QS Video Encoder has the following features:

  • Supports various color space standards.

  • Supports multiple chroma format conversion settings.

  • Supports two deinterlacing methods: the fast Bob algorithm and the Advanced space-time algorithm.

  • Ensures precise picture size and luminance adjustment.

Parameter Description

Below is the table describing Elecard QS Video Transcoder parameters and their values.

Pad Properties

Parameter Name

Description

Value Type

Available Values [range]

Default

Flags

acc-mode

Specifies the acceleration mode.

Enum

0 — Auto
62915329 — MFX GPU accelerated mode, system memory

0

readable, writable

aspect

Specifies the input aspect ratio. Specified values are used as the numerator and denominator of the rational fraction.

Fraction

[0/1 – 16384/1]

0/1

readable, writable

aud

Enables or disables the in-header access unit delimiter recording. Available options:

  • Auto — enabled/disabled automatically;

  • Off — always off;

  • On — always on.

Enum

0 — Auto
1 — Off
2 — On

2

readable, writable

bitrate

Specifies the video stream bit rate.

Integer

[1 – 65535000]

8000000

readable, writable

bitrate-max

Specifies the maximum allowed bit rate when encoding in the VBR mode. The mode is set in the rate-control parameter.

Integer

[1 – 65535000]

9000000

readable, writable

buffer-size

Specifies the size of the encoded picture buffer, VBV in bits. This buffer is used to manage the data stream during encoding, ensuring the video bit rate meets the specified limits and protecting the buffer from overflowing.

Integer

[1 – 65535000]

8000000

readable, writable

cavlc

Specifies the CAVLC entropy encoding mode. This encoding algorithm is less complicated and offers higher processing speed. Available options:

  • Auto — enabled/disabled automatically;

  • Off — always off;

  • On — always on.

Enum

0 — Auto
1 — Off
2 — On

0

readable, writable

closed-gop

Enables or disables the closed GOP structure. In an open GOP, frames can reference the frames of a preceding GOP, which increases compression efficiency but makes processing and random access more complicated.

Boolean

True, False

True

readable, writable

colour-primaries

Specifies the standard of the color space in the video stream, which is required for correct display of colors on output devices.

Enum

0 — Unspecified
1 — BT.709
4 — FCC
5 — BT.601 PAL
6 — BT.601 NTSC
7 — SMPTE 240M
8 — Generic film
9 — BT.2020
10 — SMPTE 428
11 — SMPTE 431
12 — SMPTE 432
22 — EBU 3213

0

readable

crop-h

Specifies the picture cropping height. The positive value sets the cropping height, while the negative value sets the vertical offset relative to the right bottom corner of the source picture.

Integer

[-16384 – 16384]

0

readable, writable

crop-w

Specifies the picture cropping width. The positive value sets the cropping width, while the negative value sets the horizontal offset relative to the right bottom corner of the source picture.

Integer

[-16384 – 16384]

0

readable, writable

crop-x

Specifies the picture cropping parameters. Sets the top left corner coordinates (CropTop: x) relative to the source picture.

Integer

[0 – 16384]

0

readable, writable

crop-y

Specifies the picture cropping parameters. Sets the top left corner coordinates (CropLeft: y) relative to the source picture.

Integer

[0 – 16384]

0

readable, writable

csc

Specifies the chroma format conversion and bit depth setting.

Enum

0 — Unspecified
-1073731448 — YUV, 4:2:0, 8 bit
-1073731318 — YUV, 4:2:0, 10 bit
-1073723256 — YUV, 4:2:2, 8 bit
-1073723126 — YUV, 4:2:2, 10 bit
-1073715064 — YUV, 4:4:4, 8 bit
-1073714934 — YUV, 4:4:4, 10 bit

0

readable, writable

deinterlace

Specifies the deinterlacing functioning mode. In the Auto mode, the deinterlacing is applied only to interlaced frames.

Enum

0 — Off
1 — On
2 — Auto

0

readable, writable

deinterlace-method

Specifies the deinterlacing method. Available methods:

  • BOB — the fast Bob algorithm that vertically scales the original frame field to a complete frame;

  • Advanced — a high-quality space-time algorithm that uses adaptive algorithms to process each frame area.

Enum

1 — BOB
2 — Advanced

2

readable, writable

double-rate

Enables or disables the frame rate doubling mode during deinterlacing. In this mode, each field is transformed into a complete frame.

Boolean

True, False

False

readable, writable

eos

Specifies the mode of recording the End Of Sequence (EOS) header to the bitstream.

Enum

0 — Auto
1 — Off
2 — On

2

readable, writable

format

Specifies the stream encoding format.

Enum

1073983424 — MPEG2 Video
1073988784 — AVC
1073991408 — HEVC

1073988784

readable

framerate

Specifies the input frame rate. Specified values are used as the numerator and denominator of the rational fraction.

Fraction

[0/2147483647 – 2147483647/1]

0/1

readable

frc

Specifies the frame rate of the output bitstream. Specified values are used as the numerator and denominator of the rational fraction.

Fraction

[0/2147483647 – 2147483647/1]

0/1

readable, writable

full-range

Specifies whether the full range of levels is used for video display. The full range (0-255) can be found in PC screens and devices supporting the extended range; the limited range (16-235 for luma and 16-240 for chroma components) is used in the majority of television and broadcasting standards.

Boolean

True, False

False

readable

gop-size

Specifies the distance between I-frames (the number of frames in a GOP).

Integer

[1 – 1500]

64

readable, writable

idr-interval

Specifies the maximum distance between IDR frames. A set value indicates which key-frame should be an IDR frame. If the parameter is set to 1, every key-frame is an IDR (default). If the value is 2, every second key-frame is an IDR and so on.

Integer

[1 – 2147483647]

1

readable, writable

initial-delay

Specifies the initial HRD (Hypothetical Reference Decoder) buffer occupancy in 90 kHz ticks. This determines how much data will be loaded to the buffer before encoding.

Integer

[1 – 900000]

45000

readable, writable

level

Specifies the codec level by setting limitations on the maximum values of bit rate, resolution, and other stream properties.

Enum

0 — Unspecified
1 — MPEG2 Low
2 — MPEG2 Main
4 — MPEG2 High
6 — AVC 1
7 — AVC 1.b
8 — AVC 1.1
9 — AVC 1.2
10 — AVC 1.3
11 — AVC 2
12 — AVC 2.1
13 — AVC 2.2
14 — AVC 3
15 — AVC 3.1
16 — AVC 3.2
17 — AVC 4
18 — AVC 4.1
19 — AVC 4.2
20 — AVC 5
21 — AVC 5.1
22 — AVC 5.2
23 — AVC 6
24 — AVC 6.1
25 — AVC 6.2
26 — HEVC 1
27 — HEVC 2
28 — HEVC 2.1
29 — HEVC 3
30 — HEVC 3.1
31 — HEVC 4
32 — HEVC 4.1
33 — HEVC 5
34 — HEVC 5.1
35 — HEVC 5.2
36 — HEVC 6
37 — HEVC 6.1
38 — HEVC 6.2

0

readable, writable

lookahead

Enables or disables the buffer of preliminary analysis (look-ahead) in frames. This buffer is used to analyze and predict subsequent frames, which helps the encoder to take better decisions when encoding, thus improving the compression quality. Available modes:

  • Auto — enabled/disabled automatically;

  • On — always on;

  • Off — always off.

Enum

0 — Auto
1 — Off
2 — On

0

readable, writable

lookahead-depth

Specifies the size of the preliminary analysis buffer. In accordance with the MediaSDK documentation, 0 is the default value, while the lowest accepted value is 10. To ensure compatibility, values in the [1–9] range shall be changed to 10.

Integer

[0 – 100]

0

readable, writable

matrix-coeffs

Specifies the transform matrix for encoding/decoding video color components (YUV ↔ RGB). The matrix determines how luminance (Y) and color differences (U, V) are transformed into color components (R, G, B) and back.

Enum

0 — Unspecified
1 — BT.709
2 — Identity
4 — FCC
5 — BT.601 PAL
6 — BT.601 NTSC
7 — SMPTE 240
8 — YCgCo
9 — BT.2020 NC
10 — BT.2020 C
11 — SMPTE 2085
12 — Chromaticity NC
13 — Chromaticity C
14 — BT.2100

0

readable

performance

Allows to select pre-configured parameters to ensure a certain balance between the speed and quality of video encoding.

Enum

1 — Veryslow
2 — Slower
3 — Slow
4 — Medium
5 — Fast
6 — Veryfast
7 — Ultrafast

7

readable, writable

profile

Specifies a profile for the selected encoder that defines a set of functions and limitations for video stream decoding.

Enum

0 — Unspecified
1 — MPEG2 Simple
2 — MPEG2 Main
5 — MPEG2 High
1000 — AVC Baseline
1002 — AVC Main
1004 — AVC High
2000 — HEVC Main
2001 — HEVC Main 10
2105 — HEVC Main 4:2:2 10
2107 — HEVC Main 4:4:4
2108 — HEVC Main 4:4:4 10
2300 — HEVC Screen-Extended Main
2301 — HEVC Screen-Extended Main 10
2302 — HEVC Screen-Extended Main 4:4:4
2303 — HEVC Screen-Extended Main 4:4:4 10

0

readable, writable

pyramid

Specifies the mode of using the pyramidal GOP structure.

Enum

0 — Auto
1 — Off
2 — On

0

readable, writable

qp-b

Specifies the quantization parameter for B-frames (CQP).

Integer

[0 – 51]

28

readable, writable

qp-i

Specifies the quantization parameter for I-frames (CQP).

Integer

[0 – 51]

24

readable, writable

qp-p

Specifies the quantization parameter for P-frames (CQP).

Integer

[0 – 51]

26

readable, writable

rate-control

Specifies the Rate Control operation mode. Available modes:

  • CQP — a mode with constant quantization parameters for all frames;

  • VBR — a variable bit rate mode, taking into account the maximum bit rate;

  • CBR — a constant bit rate mode, taking into account the limitations of the HRD model that protect against the encoder’s buffer overflow and ensure the set bit rate is met.

Enum

0 — CQP
1 — VBR
2 — CBR

2

readable, writable

recovery-point

Enables or disables the writing of SEI recovery_point to the bitstream.

Enum

0 — Auto
1 — Off
2 — On

0

readable, writable

ref-distance

Specifies the distance between I or P-frames. The specified value affects the distance between reference frames in the following manner: 1 — IP, 2 — IPB, 3 — IPBB and so on. If the value is 0, the distance is set automatically.

Integer

[0 – 16]

0

readable, writable

ref-frames

Specifies how many preceding frames can be used as references for encoding the current frame during motion prediction. Increasing the number of frames can make prediction better, which is especially useful for complex scenes with quick motion. However, this will also increase computation overhead and memory requirements.

Integer

[0 – 16]

0

readable, writable

resize-h

Specifies the output picture height. If changing picture height is not required, set the parameter to 0.

Integer

[0 – 16384]

0

readable, writable

resize-mode

Specifies the image resizing algorithm. Available modes:

  • Lowpower — a quick mode optimized for low energy consumption;

  • Quality — a maximum quality mode.

Enum

0 — Unspecified
1 — Lowpower
2 — Quality

0

readable, writable

resize-w

Specifies the output picture width. If changing picture width is not required, set the parameter to 0.

Integer

[0 – 16384]

0

readable, writable

transfer-characteristics

Specifies the transfer function that determines how luminance (Luma) is transformed into signal levels. The method is used for correct display of the luminance levels according to the chosen standard.

Enum

0 — Unspecified
1 — BT.709
4 — FCC
5 — BT.601 PAL
6 — BT.601 NTSC
7 — SMPTE 240
8 — Linear
9 — Logarithmic 100:1
10 — Logarithmic 100*Sqrt(10):1
11 — IEC 61966-2-4
12 — BT.1361
13 — IEC 61966-2-1
14 — BT.2020 (10 bit)
15 — BT.2020 (12 bit)
16 — SMPTE 2084 (PQ)
17 — SMPTE 428
18 — BT.2100 (HLG)

0

readable

video-format

Specifies the video format of the stream.

Enum

0 — Unspecified
1 — PAL
2 — NTSC
3 — SECAM
4 — MAC
5 — Component

0

readable

vst

Enables or disables the overriding of the video signal type.

Boolean

True, False

False

readable, writable

Element Properties

Parameter Name

Description

Value Type

Available Values [range]

Default

Flags

analyzer-enable

Enables or disables the input stream analysis prior to decoding.

Boolean

True, False

False

readable, writable

connection-timeout

Specifies the connection timeout in seconds.

Integer

[0 – 2147483647]

10

readable, writable

crop-h

Specifies the picture cropping height. The positive value sets the cropping height, while the negative value sets the vertical offset relative to the right bottom corner of the source picture.

Integer

[-16384 – 16384]

0

readable, writable

crop-w

Specifies the picture cropping width. The positive value sets the cropping width, while the negative value sets the horizontal offset relative to the right bottom corner of the source picture.

Integer

[-16384 – 16384]

0

readable, writable

crop-x

Specifies the picture cropping parameters. Sets the top left corner coordinates (CropTop: x) relative to the source picture.

Integer

[0 – 16384]

0

readable, writable

crop-y

Specifies the picture cropping parameters. Sets the top left corner coordinates (CropLeft: y) relative to the source picture.

Integer

[0 – 16384]

0

readable, writable

csc

Specifies the chroma format conversion and bit depth setting.

Enum

0 — Unspecified
-1073731448 — YUV, 4:2:0, 8 bit
-1073731318 — YUV, 4:2:0, 10 bit
-1073723256 — YUV, 4:2:2, 8 bit
-1073723126 — YUV, 4:2:2, 10 bit
-1073715064 — YUV, 4:4:4, 8 bit
-1073714934 — YUV, 4:4:4, 10 bit

0

readable, writable

deinterlace

Specifies the deinterlacing operation mode. In the Auto mode, the deinterlacing is applied only to interlaced frames.

Enum

0 — Off
1 — On
2 — Auto

0

readable, writable

deinterlace-method

Specifies the deinterlacing method. Available methods:

  • BOB — the fast Bob algorithm that vertically scales the original frame field to a complete frame;

  • Advanced — a high-quality space-time algorithm that uses adaptive algorithms to process each frame area.

Enum

1 — BOB
2 — Advanced

2

readable, writable

device-id (Windows-only) / device-path (Linux-only)

The device-id` parameter specifies the ordinal number of the QS graphics card. The numeration starts from 0. The upper range boundary depends on the number of GPUs on a given machine. The parameter is used to control the component operation in systems with multiple graphics cards. The device-path parameter indicates a path to the video device. It is an empty string by default, as the device is selected automatically.

Integer (device-id) / String (device-path)

[0 – INTEL_GPU_COUNT]

0

readable, writable

double-rate

Enables or disables the frame rate doubling mode during deinterlacing. In this mode, each field is transformed into a complete frame.

Boolean

True, False

False

readable, writable

encoded-frames

Indicates the number of encoded frames.

Unsigned Integer64

[0 – 18446744073709551615]

0

readable

fps

Indicates the average number of encoded frames per second.

Double

[0 – 1.797693e+308]

0

readable

frames-decoded

Indicates the number of decoded frames.

Unsigned Integer64

[0 – 18446744073709551615]

0

readable

frc

Specifies the frame rate of the output bitstream. Specified values are used as the numerator and denominator of the rational fraction.

Fraction

[0/1 – 2147483647/2147483647]

0/1

readable, writable

input-samples-count

Indicates the number of input samples.

Unsigned Integer64

[0 – 18446744073709551615]

0

readable

license-state

Indicates the component license state.

String

evaluation expired

readable

live-mode

Specifies the mode for encoder operation in live systems with active Color Bar Generator (CBG).

Boolean

True, False

False

readable, writable

name

Specifies the name of the object.

String

eqstranscoder0

readable, writable

nosignal-caps

Sets the default caps that can be used when the input data isn’t present. Setting this property takes a reference to the supplied GstCaps object.

String

EMPTY

readable, writable

nosignal-enabled

Enables or disables the generation of a video sequence based on the image indicated in the nosignal-image parameter, which is actually the Color Bar Generator (CBG).

Boolean

True, False

False

readable, writable

nosignal-image

Specifies the path to a BMP file that will be used as a source image for generating a video sequence if the input stream for the encoder is missing.

String

readable, writable

oem-name

Indicates the OEM name.

String

readable

osd-image-path

Specifies the path to a file that will be used as an image superimposed on the video.

String

readable, writable

osd-image-position-x

Specifies a horizontal offset of the superimposed image.

Integer

[-16384 – 16384]

0

readable, writable

osd-image-position-y

Specifies a vertical offset of the superimposed image.

Integer

[-16384 – 16384]

0

readable, writable

output-samples-count

Indicates the number of output samples.

Unsigned Integer64

[0 – 18446744073709551615]

0

readable

override-framerate

Specifies the frame rate for the input video, ignoring the information from its metadata. This method is used to fix errors in the source data and ensure the stream is processed correctly.

Fraction

[0/2147483647 – 2147483647/1]

0/1

readable, writable

parent

Specifies the parent of the object.

Object of type GstObject

readable, writable

pic-struct-mode

Specifies the mode of handling frames with different structure types. Available modes:

  • IGNORE_SEI — ignore data in SEI and treat non-MBAFF interlaced frames as progressive;

  • PROGRESSIVE — treat input stream as progressive.

Enum

0 — Unspecified
1 — IGNORE_SEI
2 — PROGRESSIVE

0

readable, writable

pulldown-mode

Specifies a mode for processing pull-down stream. If the parameter is set to Unspecified, the decoder determines the mode itself. In the Progressive mode, the pull-down stream is treated as progressive.

Enum

0 — Unspecified
1 — Progressive

0

readable, writable

resize-h

Specifies the output picture height. If changing picture height is not required, set the parameter to 0.

Integer

[0 – 16384]

0

readable, writable

resize-mode

Specifies the image resizing algorithm. Available modes:

  • Lowpower — a quick mode optimized for low energy consumption;

  • Quality — a maximum quality mode.

Enum

0 — Unspecified
1 — Lowpower
2 — Quality

0

readable, writable

resize-w

Specifies the output picture width. If changing picture width is not required, set the parameter to 0.

Integer

[0 – 16384]

0

readable, writable

segment-size

Specifies the size of the segment coded by the servers (in GOP units).

Integer

[1 – 100]

10

readable, writable

server-host

Indicates the host server address and port in the following manner:

192.168.1.101:7000.

String

readable

transcoder-list

Indicates the list of servers that perform distributed encoding of the stream. The list is set in the following manner:

192.168.1.101:7000,192.168.1.102:7000.

String

readable