Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save rrichardson/f3388f00f1f93bfc852d8308f024e746 to your computer and use it in GitHub Desktop.
Save rrichardson/f3388f00f1f93bfc852d8308f024e746 to your computer and use it in GitHub Desktop.
Factory Details:
Long name: x264enc
Class: Codec/Encoder/Video
Description: H264 Encoder
Author(s): Josef Zlomek <[email protected]>, Mark Nauwelaerts <[email protected]>
Rank: primary (256)
Plugin Details:
Name: x264
Description: libx264-based H264 plugins
Filename: /usr/lib64/gstreamer-0.10/libgstx264.so
Version: 0.10.19
License: GPL
Source module: gst-plugins-ugly
Source release date: 2012-02-20
Binary package: gst-plugins-ugly rpmfusion rpm
Origin URL: http://rpmfusion.org/
GObject
+----GstObject
+----GstElement
+----GstX264Enc
Implemented Interfaces:
GstPreset
Pad Templates:
SRC template: 'src'
Availability: Always
Capabilities:
video/x-h264
framerate: [ 0/1, 2147483647/1 ]
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
stream-format: { byte-stream, avc }
alignment: { au }
profile: { high-10, high, main, constrained-baseline, high-10-intra }
SINK template: 'sink'
Availability: Always
Capabilities:
video/x-raw-yuv
format: { I420, YV12 }
framerate: [ 0/1, 2147483647/1 ]
width: [ 16, 2147483647 ]
height: [ 16, 2147483647 ]
Element Flags:
no flags set
Element Implementation:
Has change_state() function: gst_x264_enc_change_state
Has custom save_thyself() function: gst_element_save_thyself
Has custom restore_thyself() function: gst_element_restore_thyself
Element has no clocking capabilities.
Element has no indexing capabilities.
Element has no URI handling capabilities.
Pads:
SRC: 'src'
Implementation:
Has custom eventfunc(): gst_x264_enc_src_event
Has getcapsfunc(): gst_pad_get_fixed_caps_func
Has acceptcapsfunc(): gst_pad_acceptcaps_default
Pad Template: 'src'
SINK: 'sink'
Implementation:
Has chainfunc(): gst_x264_enc_chain
Has custom eventfunc(): gst_x264_enc_sink_event
Has getcapsfunc(): gst_x264_enc_sink_get_caps
Has setcapsfunc(): gst_x264_enc_sink_set_caps
Has acceptcapsfunc(): gst_pad_acceptcaps_default
Pad Template: 'sink'
Element Properties:
name : The name of the object
flags: readable, writable
String. Default: "x264enc0"
threads : Number of threads used by the codec (0 for automatic)
flags: readable, writable
Unsigned Integer. Range: 0 - 4 Default: 0
sliced-threads : Low latency but lower efficiency threading
flags: readable, writable
Boolean. Default: false
sync-lookahead : Number of buffer frames for threaded lookahead (-1 for automatic)
flags: readable, writable
Integer. Range: -1 - 250 Default: -1
pass : Encoding pass/type
flags: readable, writable
Enum "GstX264EncPass" Default: 0, "cbr"
(0): cbr - Constant Bitrate Encoding
(4): quant - Constant Quantizer (debugging only)
(5): qual - Constant Quality
(17): pass1 - VBR Encoding - Pass 1
(18): pass2 - VBR Encoding - Pass 2
(19): pass3 - VBR Encoding - Pass 3
quantizer : Constant quantizer or quality to apply
flags: readable, writable
Unsigned Integer. Range: 1 - 50 Default: 21
stats-file : Filename for multipass statistics (deprecated, use multipass-cache-file)
flags: readable, writable
String. Default: "x264.log"
multipass-cache-file: Filename for multipass cache file
flags: readable, writable
String. Default: "x264.log"
byte-stream : Generate byte stream format of NALU
flags: readable, writable
Boolean. Default: false
bitrate : Bitrate in kbit/sec
flags: readable, writable, changeable in NULL, READY, PAUSED or PLAYING state
Unsigned Integer. Range: 1 - 102400 Default: 2048
intra-refresh : Use Periodic Intra Refresh instead of IDR frames
flags: readable, writable
Boolean. Default: false
vbv-buf-capacity : Size of the VBV buffer in milliseconds
flags: readable, writable, changeable in NULL, READY, PAUSED or PLAYING state
Unsigned Integer. Range: 0 - 10000 Default: 600
me : Integer pixel motion estimation method
flags: readable, writable
Enum "GstX264EncMe" Default: 1, "hex"
(0): dia - dia
(1): hex - hex
(2): umh - umh
(3): esa - esa
(4): tesa - tesa
subme : Subpixel motion estimation and partition decision quality: 1=fast, 10=best
flags: readable, writable
Unsigned Integer. Range: 1 - 10 Default: 1
analyse : Partitions to consider
flags: readable, writable
Flags "GstX264EncAnalyse" Default: 0x00000000, "(none)"
(0x00000001): i4x4 - i4x4
(0x00000002): i8x8 - i8x8
(0x00000010): p8x8 - p8x8
(0x00000020): p4x4 - p4x4
(0x00000100): b8x8 - b8x8
dct8x8 : Adaptive spatial transform size
flags: readable, writable
Boolean. Default: false
ref : Number of reference frames
flags: readable, writable
Unsigned Integer. Range: 1 - 12 Default: 1
bframes : Number of B-frames between I and P
flags: readable, writable
Unsigned Integer. Range: 0 - 4 Default: 0
b-adapt : Automatically decide how many B-frames to use
flags: readable, writable
Boolean. Default: true
b-pyramid : Keep some B-frames as references
flags: readable, writable
Boolean. Default: false
weightb : Weighted prediction for B-frames
flags: readable, writable
Boolean. Default: false
sps-id : SPS and PPS ID number
flags: readable, writable
Unsigned Integer. Range: 0 - 31 Default: 0
aud : Use AU (Access Unit) delimiter
flags: readable, writable
Boolean. Default: true
trellis : Enable trellis searched quantization
flags: readable, writable
Boolean. Default: true
key-int-max : Maximal distance between two key-frames (0 for automatic)
flags: readable, writable
Unsigned Integer. Range: 0 - 2147483647 Default: 0
cabac : Enable CABAC entropy coding
flags: readable, writable
Boolean. Default: true
qp-min : Minimum quantizer
flags: readable, writable
Unsigned Integer. Range: 1 - 51 Default: 10
qp-max : Maximum quantizer
flags: readable, writable
Unsigned Integer. Range: 1 - 51 Default: 51
qp-step : Maximum quantizer difference between frames
flags: readable, writable
Unsigned Integer. Range: 1 - 50 Default: 4
ip-factor : Quantizer factor between I- and P-frames
flags: readable, writable
Float. Range: 0 - 2 Default: 1.4
pb-factor : Quantizer factor between P- and B-frames
flags: readable, writable
Float. Range: 0 - 2 Default: 1.3
mb-tree : Macroblock-Tree ratecontrol
flags: readable, writable
Boolean. Default: true
rc-lookahead : Number of frames for frametype lookahead
flags: readable, writable
Integer. Range: 0 - 250 Default: 40
noise-reduction : Noise reduction strength
flags: readable, writable
Unsigned Integer. Range: 0 - 100000 Default: 0
interlaced : Interlaced material
flags: readable, writable
Boolean. Default: false
option-string : String of x264 options (overridden by element properties)
flags: readable, writable
String. Default: ""
profile : Apply restrictions to meet H.264 Profile constraints. This will override other properties if necessary. This will only be used if downstream elements do not specify a profile in their caps (DEPRECATED)
flags: readable, writable
Enum "GstX264EncProfile" Default: 2, "main"
(0): None - No profile
(1): baseline - baseline
(2): main - main
(3): high - high
(4): high10 - high10
(5): high422 - high422
(6): high444 - high444
speed-preset : Preset name for speed/quality tradeoff options (can affect decode compatibility - impose restrictions separately for your target decoder)
flags: readable, writable
Enum "GstX264EncPreset" Default: 6, "medium"
(0): None - No preset
(1): ultrafast - ultrafast
(2): superfast - superfast
(3): veryfast - veryfast
(4): faster - faster
(6): medium - medium
(7): slow - slow
(8): slower - slower
(9): veryslow - veryslow
(10): placebo - placebo
psy-tune : Preset name for psychovisual tuning options
flags: readable, writable
Enum "GstX264EncPsyTune" Default: 0, "none"
(0): none - No tuning
(1): film - Film
(2): animation - Animation
(3): grain - Grain
(4): psnr - PSNR
(5): ssim - SSIM
tune : Preset name for non-psychovisual tuning options
flags: readable, writable
Flags "GstX264EncTune" Default: 0x00000000, "(none)"
(0x00000001): stillimage - Still image
(0x00000002): fastdecode - Fast decode
(0x00000004): zerolatency - Zero latency (requires constant framerate)
(END)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment