Skip to content

Logging

GPAC Log System

libgpac logs options:

-noprog: disable progress messages
-quiet: disable all messages, including errors
-log-file,-lf (string): set output log file
-log-clock,-lc: log time in micro sec since start time of GPAC before each log line except for app tool
-log-utc,-lu: log UTC time in ms before each log line except for app tool
-logs (string): set log tools and levels.

You can independently log different tools involved in a session.
log_args is formatted as a colon (':') separated list of toolX[:toolZ]@levelX
levelX can be one of:
quiet: skip logs
error: logs only error messages
warning: logs error+warning messages
info: logs error+warning+info messages
* debug: logs all messages

toolX can be one of:
core: libgpac core
mutex: log all mutex calls
mem: GPAC memory tracker
module: GPAC modules (av out, font engine, 2D rasterizer)
filter: filter session debugging
sched: filter session scheduler debugging
codec: codec messages (used by encoder and decoder filters)
coding: bitstream formats (audio, video, scene)
container: container formats (ISO File, MPEG-2 TS, AVI, ...) and multiplexer/demultiplexer filters
network: TCP/UDP sockets and TLS
http: HTTP traffic
cache: HTTP cache subsystem
rtp: RTP traffic
dash: HTTP streaming logs
route: ROUTE (ATSC3) debugging
media: messages from generic filters and reframer/rewriter filters
parser: textual parsers (svg, xmt, bt, ...)
mmio: I/O management (AV devices, file, pipes, OpenGL)
audio: audio renderer/mixer/output
script: script engine except console log
console: script console log
scene: scene graph and scene manager
compose: composition engine (2D, 3D, etc)
ctime: media and SMIL timing info from composition engine
interact: interaction messages (UI events and triggered DOM events and VRML route)
rti: run-time stats of compositor
* all: all tools logged - other tools can be specified afterwards.
The special keyword ncl can be set to disable color logs.
The special keyword strict can be set to exit at first error.

Example

-logs=all@info:dash@debug:ncl
This moves all log to info level, dash to debug level and disable color logs

-proglf: use new line at each progress messages
-log-dual,-ld: output to both file and stderr