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:
|
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 |
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:
|
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 |
Enum |
0 — Off
1 — On
2 — Auto
|
0 |
readable, writable |
deinterlace-method |
Specifies the deinterlacing method. Available methods:
|
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 ( |
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 |
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 (
|
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, |
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:
|
Enum |
0 — CQP
1 — VBR
2 — CBR
|
2 |
readable, writable |
recovery-point |
Enables or disables the writing of SEI |
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: |
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 |
Integer |
[0 – 16384] |
0 |
readable, writable |
resize-mode |
Specifies the image resizing algorithm. Available modes:
|
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 |
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 |
Enum |
0 — Off
1 — On
2 — Auto
|
0 |
readable, writable |
deinterlace-method |
Specifies the deinterlacing method. Available methods:
|
Enum |
1 — BOB
2 — Advanced
|
2 |
readable, writable |
device-id (Windows-only) / device-path (Linux-only) |
The |
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 |
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:
|
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 |
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 |
Integer |
[0 – 16384] |
0 |
readable, writable |
resize-mode |
Specifies the image resizing algorithm. Available modes:
|
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 |
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 |