SightLine Applications Command, Control, and Script API  v3.6
List of all members
SLASetH264Parameters_t Struct Reference


Modify H264, H265 and MPEG4 encoding behavior.

typedef struct {
u32 targetBitRate;
u8 intraFrameInterval;
u8 lfDisableIdc;
u8 airMbPeriod;
u8 sliceRefreshRowNumber;
u8 flags;
u16 displayId;

SightLine's H264 (AVC), H265 (HEVC) and MPEG4 compression encodes the video stream into I-frames and P-frames. I-Frames are a compression of the entire video frame, while P-Frames only include the delta between the video frame that was compressed in the last I-frame and the current video frame.
H264 and H265 compression can also use Intra Refresh mode to put blocks of I data in every frame.

See also
SLASetEthernetDisplayParameters_t to set the receiver IP address.
SLASetKlvData_t to set KLV metadata.
SLASetEthernetVideoParameters_t to change Down Sample and Frame Step.
SLAStreamingControl_t for starting and stopping video.
EAN-Encoding.pdf for additional details on SightLine Ethernet encoding.

Message ID 0x23

Byte Offset Name Description
4-7targetBitRateTarget bit rate, bits per second (3000/1500: default 1500000, 17XX/4000: default 3000000). Actual bit rate will vary (see flags below).
NOTE: Maximum bitrates are:
17XX/4000 - 30 Mbps
3000 - 20 Mbps
1500 - 10 Mpbs
8intraFrameInterval1-90 = Intra Frame (I-frame) interval (default 30). The rate at which I-frames are produced.
0 = Intra Refresh mode where there are blocks of I data in every frame resulting in a smoother overall bitrate.
NOTE: Not all decoders can connect to an intra refresh stream. Intra refresh is only support with H264 on the 17XX/3000/4000, and H265 on the 17XX/4000.
9lfDisableIdcH264 in-loop filter control
Bits Description
0-3 0 = filter all edges (default), 1 = disable all filtering, 2 = disable slice edge filter, other values = Reserved
4-6 Reserved set to 0
7 0 = default, 1 = apply encoder fix to support hardware decoders (1500 only)
10airMbPeriodOnly used if intraFrameInterval is 0 (Intra Refresh mode)
1500 - Not available
3000 - Adaptive Intra Refresh (AIR) mega-block period (default 0)
17XX/4000 - Cyclic Intra Refresh (CIR) mega-block period, if 0 a default value of 20 will be used
11sliceRefreshRowNumberOnly used if intraFrameInterval is 0 (Intra Refresh mode)
1500 - Not available
3000 - Slice refresh row number – number of rows coded as each intra slice (default 0)
17XX/4000 - Not available
Bits Description
0-1 Profile (H.264 17XX/3000/4000 only, set to 0 otherwise)
0Baseline profile (default 1500/3000)
1Main profile
2High profile (default 17XX/4000)
2-3 Reserved set to 0
4-5 Bit Rate Mode (H.264/H.265 only, set to 0 otherwise)
0Legacy (default 1500/3000). Approximates Variable Bit Rate (VBR) with loose constraints but a fairly short time constant.
1Variable Bit Rate (VBR) (default 17XX/4000). Bit rate dynamically changes based on the video content and motion in order to acheive high quality video. (Added to 1500 in 3.4)
2Constrained Bit Rate Mode. Encoder parameters are tuned to achieve approximate target bit rate. (Not available on 1500/17XX/4000, on 17XX/4000 try Intra Refresh mode)
6-7 Reserved set to 0
13-14displayIdNetwork Display ID
3000 / 4000: (0x0002 = Net0, 0x0080 = Net1, 0x0082 = both)
17XX: (0x0002 = Net0)
1500: Ignored or 0x0000