Scroll to navigation

GLASSCODER-IPC(7) Linux Audio Manual GLASSCODER-IPC(7)

NAME

glasscoder-ipc - IPC methods for the GlassCoder stream encoder

SYNOPSIS

glasscoder [OPTIONS]

DESCRIPTION

glasscoder(1) is an audio encoder that is capable of generating live streams using a variety of formats and sending them to an Icecast or Shoutcast audio streaming server or posting them as HTTP Live Streams [HLS]. For more information regarding its overall capabilities, see the glasscoder(1) man page.

A running glasscoder(1) instance can be monitored and controlled by means of two different IPC methods: its standard input/output streams and HTTP calls.

MONITORING VIA STANDARD OUTPUT

glasscoder(1) can output realtime information about current operating state via its standard output and/or error streams. The location and format in which this information is generated is controlled by means of the --errors-to and --meter-data options.

When --errors-to=STDOUT is specified, glasscoder(1) will output error messages on standard output in the following machine-readable format:


ER [priority] [msg]

where [priority] is an integer the indicates the priority level of the error as defined by the syslog(3) interface and [msg] is a text string describing the error. Each message is terminated by a newline character.

When --meter-data is specified, glasscoder(1) will output realtime audio level information suitable for being rendered as an audio meter display in the following format:


ME [left-lvlright-lvl]

where each argument is the current audio level of the corresponding channel in hexidecimal, referenced to 0 dBFS. Each message is terminated by a newline character.

CONTROL VIA STANDARD INPUT

glasscoder(1) supports the following command, sent via standard input:


MD [text]

Send the metadata [text] to the stream. The command should be terminated by newline.

CONTROL VIA HTTP

If the --metadata-port=port option is given a non-zero value, metadata updates can be sent to the stream by means of HTTP calls. For details, see the METADATA section of the glasscoder(1) man page.

PROXY CONNECTIONS

It is possible to implement proxy connectors for glasscoder(1)'s IceStreamer server through use of the --server-pipe command switch. This switch will create a UNIX socket which can be used to pipe in open descriptors for player connections by means of ancilliary socket messages with the SCM_RIGHTS message type. See the unix(7) man page for more information. A fully worked-out example is also available in the GlassCoder source package in the 'src/tests/' subdirectory.

AUTHOR

Fred Gleason <fredg@paravelsystems.com>

SEE ALSO

glasscoder(1), cmsg(3), sendmsg(2), syslog(3), unix(7)

AUTHOR

Fred Gleason <fredg@paravelsystems.com>

Application Author
01/24/2020 October 2019