There are several options for H.264 encoding in Logosys - both CPU-based and GPU-powered. 

In Logosys Lite, all CPU-based H.264 encoding options are available in the Professional edition. All hardware-accelerated H.264 encoders are available with the Expert edition. In Logosys, all encoders are part of the streaming component.

Intel Quick Sync

Available in software and in hardware modes.

Codec ID for software mode: 'q264sw'

Codec ID for hardware mode: 'q264hw'

Your Intel processor supports Quick Sync decoding if it is equipped with Intel HD Graphics 4200 or higher. Note, that for all XEON processors a mainboard with C226 chipset is required.

Quick Sync encoding has no hardware limitations for a number of encoding processes running at the same time. It depends on the processor's performance.

Attributes 

Here is a list of main attributes specific for 'q264hw' and 'q264sw' codecs:

NameDefault valueDescription
rc_typeautoThe rate control type.
Possible values:
  • vbr
  • cbr
  • cqp
  • avbr
  • vbr_la
  • quality
quality7Quality of captured video.
Possible values:
from 1 (fast capturing, minimal quality) to 7 (maximal quality, slow capturing)
profileautoEncoding profile
Possible values:
  • Auto
  • Baseline
  • Main
  • High
  • Extended
levelautoSets the level flag in the output bitstream
Possible values: Auto, 1.0, 1.0b, 1.1, 1.2, 1.3, 2.0, 2.1, 2.2, 3.0, 3.1, 3.2, 4.0, 4.1, 4.2, 5.0, 5.1, 5.2

NVIDIA NVENC

Codec ID: 'n264'

Available, if you use NVIDIA graphics card as a default graphics device for your system.

There is a hardware limitation for a number of encoding processes running at the same time. This is made by NVIDIA:

Up to 2 encoding sessions enforced on low-end (like Kepler-based Quadro cards) or GeForce cards only and unlimited for non-low-end cards (like Pascal-based Quadro cards). It means that the limitation is up to hardware performance

To get information about Tesla, GRID or Quadro cards supported formats, please refer to this table:

https://developer.nvidia.com/video-encode-decode-gpu-support-matrix#Encoder

Here is a reference for NVIDIA NVENC SDK where you can find what features are available for your graphics card:

https://developer.nvidia.com/nvidia-video-codec-sdk

If you have a card that supports H.265 encoding then you can use 'n265' codec to encode the H.265 video.

Attributes

Here is a list of main attributes specific to 'n264' codec:

NameDefault valueDescription
rc_typeautoThe rate control type.
Possible values:
  • auto
  • cbr
  • vbr
  • cqp
  • vbr_minq
presetdefaultEncoding preset
Possible values:
  • default
  • high_quality
  • high_performance
  • low_latency
  • low_latency_hq
  • low_latency_hp
  • blue_ray_disk
profileautoEncoding profile
Possible values:
  • Auto
  • Baseline
  • Main
  • High
  • Stereo
  • 444
levelautoSets the level flag in the output bitstream
Possible values: Auto, 1.0, 1.0b, 1.1, 1.2, 1.3, 2.0, 2.1, 2.2, 3.0, 3.1, 3.2, 4.0, 4.1, 4.2, 5.0, 5.1, 5.2
output.444falseEnables 4:4:4 encoding mode.

Some of the NVIDIA graphics units might not support the encoding of interlaced video. You can check your video card with this ffmpeg command:

ffmpeg -i "your_input_file" -flags +ilme+ildct -vcodec nvenc_h264 out_ffmpeg.h264 -loglevel verbose

Here is an example of the log message:

To overcome the incorrect order issues, consider using "video::interlace=progressive" in your encoding configurations.

AMD AMF

Codec ID: 'h264_amf'

Available, if you use an AMD processor and graphics card at the same time for your system.

Attributes

Here is a list of main attributes specific to 'h264_amf' codec:

NameDefault valueDescription
usagetranscoding

Sets type of encoder usage. Possible values:

  • transcoding,
  • ultralowlatency,
  • lowlatency,
  • webcam
profile
main
Set the encoding profile.Possible values:
  • main,
  • high,
  • constrained_baseline,
  • constrained_high
levelautoSets the level flag in the output bitstream
Possible values: Auto, 1.0, 1.0b, 1.1, 1.2, 1.3, 2.0, 2.1, 2.2, 3.0, 3.1, 3.2, 4.0, 4.1, 4.2, 5.0, 5.1, 5.2
quality
speed

Sets quality preference. Possible values:

  • speed,
  • balanced,
  • quality
rc
cqp

Sets Rate Control Method. Possible values:

  • cqp,
  • cbr,
  • vbr_peak,
  • vbr_latency
enforce_hrd
false

Enables Enforce HRD.

filler_data
false

Enables Filler Data

vbaq
false

Enables VBAQ

frame_skipping
false

Enables rate control-based frameskip

qp_i
-1

Quantization Parameter for I-Frame. From -1 to 51.

qp_p
-1

Quantization Parameter for P-Frame. From -1 to 51.

qp_b
-1

Quantization Parameter for B-Frame. From -1 to 51.

qp_i
-1

Quantization Parameter for I-Frame. From -1 to 51.

max_au_size
0

Sets Maximum Access Unit Size for rate control (in bits)

header_spacing
-1

Sets Header Insertion Spacing

bf_delta_qp
4

B-Picture Delta QP. From -10 to 10.

bf_ref
true

Enables Reference to B-Frames

bf_ref_delta_qp
4

Reference B-Picture Delta QP. From -10 to 10.

intra_refresh_mb
0

Intra Refresh MBs Number Per Slot in Macroblocks

coder
auto

Sets coding type. Possible values:

  • auto,
  • cavlc,
  • cabac
me_half_pel
false

Enables ME Half Pixel

me_quarter_pel
false

Enables ME Quarter Pixel

aud
false

Inserts AU Delimiter NAL unit

x264 encoder (GPL)

One of the best CPU-based encoders in the world. However, the GPL license prohibits to use this encoder in commercial applications without a special license.

We don't ship x264 with any of our products, but you can still try it with Logosys  by downloading a GPL (shared) build of FFmpeg and extracting the archive to "\EncoderLib" folder of your Logosys directory or in "\bin\[target_build]" folder for Logosys, replacing existing DLLs. 

Then libx264 component should be available as an encoding option for streaming codex list. The ID of the encoder is "libx264".

Attributes

Here is a list of main attributes specific for 'libx264' codec

NameDefault valueDescription
presetfasterChange options to trade off compression efficiency against encoding speed.
Possible values:
  • ultrafast
  • superfast
  • veryfast
  • faster
  • fast
  • medium
  • slow
  • slower
  • veryslow
  • placebo
tune
 
Tune options to further optimize them for your input content.
Possible values:
  • film
  • animation
  • grain
  • stillimage
  • psnr
  • ssim
  • fastdecode
  • zerolatency
profile
 
Limit the profile of the output stream.
Possible values:
  • baseline
  • main
  • high
  • high10
  • high422
  • high444
level
 
Sets the level flag in the output bitstream.
Possible values: 1 1b 1.1 1.2 1.3 2 2.1 2.2 3 3.1 3.2 4 4.1 4.2 5 5.1
v422falseIndicates whether captioning is in 4:2:2 colorspace.
Possible values: true, false
interlace-1Interlacing type.
Possible values:
  • 1 - interlaced, 
  • 0 - progressive,
  • -1 - auto.

Cisco OpenH264

Codec ID: "libopenh264"

CPU-only based encoder by Cisco Systems. More details about the encoder are here - http://www.openh264.org/

Attributes

Here is a list of main attributes specific for 'libopenh264' codec:

NameDefault valueDescription
slices0Set the number of slices, used in the parallelized encoding. This is only used when slice_mode is set to ‘fixed
slice_mode
auto
Set slice mode.Possible values:
  • fixed
  • rowmb
  • auto
  • dyn
loopfilter
1
Enable loop filter, if set to 1. To disable set a value of 0.
max_nal_size
0
Set maximum NAL size in bytes.
allow_skip_frames0Allow skipping frames to hit the target bitrate if set to 1.