Skip to content


jeanlf edited this page Nov 22, 2019 · 33 revisions

HOME » Filters » Core Options

GPAC Core Options

libgpac core options:

-noprog: disable progress messages
-quiet: disable all messages, including errors
-strict-error -se: exit after the first error is reported
-store-dir (string): set storage directory
-mod-dirs (string list): set module directories
-js-dirs (string list): set javascript directories
-no-js-mods (string list): disable javascript module loading
-ifce (string): set default multicast interface through interface IP address
-lang (string): set preferred language
-cfg -opt (string): set configuration file value. The string parameter can be formatted as:

  • section:key=val: set the key to a new value
  • section:key=null, section:key: remove the key
  • section:*=null: remove the section

-no-save: discard any changes made to the config file upon exit
-mod-reload: unload / reload module shared libs when no longer used
-for-test: disable all creation/modif dates and GPAC versions in files
-cache (string): cache directory location
-proxy-on: enable HTTP proxy
-proxy-name (string): set HTTP proxy address
-proxy-port (int, default: 80): set HTTP proxy port
-maxrate (int): set max HTTP download rate in bits per sec. 0 means unlimited
-no-cache: disable HTTP caching
-offline-cache: enable offline HTTP caching (no revalidation of existing resource in cache)
-clean-cache (string): indicate if HTTP cache should be clean upon launch/exit
-cache-size (int, default: 100M): specify cache size in bytes
-head-timeout (int, default: 5000): set HTTP head request timeout in milliseconds
-req-timeout (int, default: 20000): set HTTP/RTSP request timeout in milliseconds
-broken-cert: enable accepting broken SSL certificates
-user-agent -ua (string): set user agent name for HTTP/RTSP
-user-profileid -upid (string): set user profile ID (through X-UserProfileID entity header)
-user-profile -up (string): set user profile filename. Content of file is appended as body to HEAD/GET requests
-query-string (string): insert query string (without ?) to URL on requests
-dm-threads: force using threads for async download requests rather than session scheduler
-dbg-edges: log edges status in filter graph before dijkstra resolution (for debug). Edges are logged as edge_source(status, weight, src_cap_idx, dst_cap_idx)
-no-block: disable blocking mode of filters
-no-reg: disable regulation (no sleep) in session
-no-reassign: disable source filter reassignment in pid graph resolution
-sched (Enum, default: free): set scheduler mode

  • free: lock-free queues except for task list (default)
  • lock: mutexes for queues when several threads
  • freex: lock-free queues including for task lists (experimental)
  • flock: mutexes for queues even when no thread (debug mode)
  • direct: no threads and direct dispatch of tasks whenever possible (debug mode)

-max-chain (int, default: 6): set maximum chain length when resolving filter links. Default value covers for [ in -> ] demux -> reframe -> decode -> encode -> reframe -> mux [ -> out]. Filter chains loaded for adaptation (eg pixel format change) are loaded after the link resolution. Setting the value to 0 disables dynamic link resolution. You will have to specify the entire chain manually
-max-sleep (int, default: 50): set maximum sleep time slot in milliseconds when regulation is enabled
-threads (int): set N extra thread for the session. -1 means use all available cores
-no-probe: disable data probing on sources and relies on extension (faster load but more error-prone)
-no-argchk: disable tracking of argument usage (all arguments will be considered as used)
-blacklist (string): blacklist the filters listed in the given string (comma-seperated list)
-no-graph-cache: disable internal caching of filter graph connections. If disabled, the graph will be recomputed at each link resolution (lower memory usage but slower)
-no-reservoir: disable memory recycling for packets and properties. This uses much less memory but stresses the system memory allocator much more
-switch-vres: select smallest video resolution larger than scene size, otherwise use current video resolution
-hwvmem (Enum, default: auto): specify (2D rendering only) memory type of main video backbuffer. Depending on the scene type, this may drastically change the playback speed.

  • always: always on hardware
  • never: always on system memory
  • auto: selected by GPAC based on content type (graphics or video)

-pref-yuv4cc (string): set prefered YUV 4CC for overlays (used by DirectX only)
-offscreen-yuv: indicate if offscreen yuv->rgb is enabled. can be set to false to force disabling
-overlay-color-key (string): color to use for overlay keying, hex format
-gl-offscreen (Enum, default: Window): openGL mode for offscreen rendering (will soon be deprecated).

  • Window: a hidden window is used to perform offscreen rendering. Depending on your video driver and X11 configuration, this may not work
  • VisibleWindow: a visible window is used to perform offscreen rendering. This can be useful while debugging
  • Pixmap: an X11 Pixmap is used to perform offscreen rendering. Depending on your video driver and X11 configuration, this may not work and can even crash the player
  • PBuffer: use opengl PBuffers for drawing, not always supported

-gl-bits-comp (int, default: 8): number of bits per color component in openGL
-gl-bits-depth (int, default: 16): number of bits for depth buffer in openGL
-gl-doublebuf: enable openGL double buffering
-sdl-defer: use defer rendering for SDL
-no-colorkey: disable color keying at the video output level
-glfbo-txid (int): set output texture ID when using glfbo output. The OpenGL context shall be initialized and gf_term_process shall be called with the OpenGL context active
-video-output (string): indicate the name of the video output module to use (see gpac -h modules). The reserved name glfbo is used in player mode to draw in the openGL texture identified by glfbo-txid. In this mode, the application is responsible for sending event to the terminal
-audio-output (string): indicate the name of the audio output module to use
-alsa-devname (string): set ALSA dev name
-force-alsarate (int): force ALSA and OSS output sample rate
-ds-disable-notif: disable DirectSound audio buffer notifications when supported
-font-reader (string): indicate name of font reader module
-font-dirs (string): indicate comma-separated list of directories to scan for fonts
-rescan-fonts: indicate the font directory must be rescanned
-wait-fonts: wait for SVG fonts to be loaded before displaying frames
-rmt: enable profiling through Remotery. A copy of Remotery visualizer is in gpac/share/vis, usually installed in /usr/share/gpac/vis or Program Files/GPAC/vis
-rmt-port (int, default: 17815): set remotery port
-rmt-reuse: allow remotery to reuse port
-rmt-localhost: make remotery only accepts localhost connection
-rmt-sleep (int, default: 10): set remotery sleep (ms) between server updates
-rmt-nmsg (int, default: 10): set remotery number of messages per update
-rmt-qsize (int, default: 131072): set remotery message queue size in bytes
-rmt-log: redirect logs to remotery (experimental, usually not well handled by browser)
-rmt-ogl: make remotery sample opengl calls

HOME » Filters

GPAC Configuration

Configuration File
Global Options

Filters Overview

General Filters Concepts
gpac General Usage
Built-in Properties

Filters Help

Inspect packets (inspect)
Probe source (probe)
Compositor (compositor)
ISOBMFF/QT demuxer (mp4dmx)
MPEG-4 BIFS decoder (bifsdec)
MPEG-4 OD decoder (odfdec)
File input (fin)
BT/XMT/X3D loader (btplay)
HTTP input (httpin)
SVG loader (svgplay)
JPG/J2K/PNG/BMP reframer (rfimg)
PNG/JPG decoder (imgdec)
ADTS reframer (rfadts)
LATM reframer (rflatm)
MP3 reframer (rfmp3)
FAAD decoder (faad)
MAD decoder (maddec)
XVid decoder (xviddec)
OpenJPEG2000 decoder (j2kdec)
AC3 reframer (rfac3)
A52 decoder (a52dec)
AMR/EVRC reframer (rfamr)
OGG demuxer (oggdmx)
Vorbis decoder (vorbisdec)
Theora decoder (theoradec)
MPEG-2 TS demuxer (m2tsdmx)
UDP/TCP input (sockin)
OpenSVC decoder (osvcdec)
VideoToolBox decoder (vtbdec)
MPEG-4 LASeR decoder (lsrdec)
SAF demuxer (safdmx)
MPEG-DASH and HLS client (dashin)
CENC decryptor (cdcrypt)
CENC encryptor (cecrypt)
ISOBMFF/QT muxer (mp4mx)
QCP reframer (rfqcp)
H263 reframer (rfh263)
M1V/M2V/M4V reframer (rfmpgvid)
NHNT reader (nhntr)
NHML parser (nhmlr)
AVC/HEVC reframer (rfnalu)
MPEG PS demuxer (m2psdmx)
AVI demuxer (avidmx)
Subtitle loader (txtin)
TTXT/TX3G decoder (ttxtdec)
WebVTT decoder (vttdec)
RTP/RTSP/SDP input (rtpin)
File output (fout)
Raw AAC to LATM writer (uflatm)
ADTS writer (ufadts)
Media Reframer (reframer)
Stream to file (writegen)
AVC/HEVC to AnnexB writer (ufnalu)
QCP writer (writeqcp)
WebVTT writer (writevtt)
NHNT writer (nhntw)
NHML writer (nhmlw)
VobSub demuxer (vobsubdmx)
AVI muxer (avimx)
Audio output (aout)
M4V writer (ufm4v)
Audio resampler (resample)
Video output (vout)
Video crop (vcrop)
Video flip (vflip)
RAW video reframer (rfrawvid)
PCM reframer (rfpcm)
JPG encoder (jpgenc)
PNG encoder (pngenc)
Audio/Video rewinder (rewind)
Sources concatenator (flist)
MPEG-2 TS muxer (m2tsmx)
DASH and HLS segmenter (dasher)
HEVC tile aggregator (tileagg)
pipe input (pin)
pipe output (pout)
GSF Muxer (gsfmx)
GSF Demuxer (gsfdmx)
UDP/TCP output (sockout)
AV1/IVF/VP9 reframer (rfav1)
IVF/OBU/annexB writer (ufobu)
ATSC input (atscin)
RTP Streamer (rtpout)
RTSP Server (rtspout)
HTTP Server (httpout)
HEVC tile spliter (hevcsplit)
HEVC Tile merger (hevcmerge)
FLAC reframer (rfflac)
ProRes reframer (rfprores)
MPEG Transport Stream splitter (tssplit)
FFMPEG demuxer (ffdmx)
FFMPEG decoder (ffdec)
FFMPEG AV Capture (ffavin)
FFMPEG video rescaler (ffsws)
FFMPEG encoder (ffenc)
FFMPEG muxer (ffmx)
FFMPEG AVFilter (ffavf)
JavaScript filter (jsf)
OpenHEVC decoder (ohevcdec)

Clone this wiki locally
You can’t perform that action at this time.