---
name: "glasscoder-ipc"
section: "7"
platform: "linux"
package: "glasscoder"
version: "2.0.1-2.1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/glasscoder-ipc"
---

# glasscoder-ipc(7)

IPC methods for the GlassCoder stream encoder

## NAME

glasscoder-ipc - IPC methods for the GlassCoder stream encoder

## SYNOPSIS

**glasscoder** \[*OPTIONS*\]

## DESCRIPTION

[**glasscoder**(1)](/glasscoder/1.md) 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)](/glasscoder/1.md) man page.

A running [**glasscoder**(1)](/glasscoder/1.md) 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)](/glasscoder/1.md) 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)](/glasscoder/1.md) 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)](/syslog/3.md) 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)](/glasscoder/1.md) 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)](/glasscoder/1.md) 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)](/glasscoder/1.md) man page.

## PROXY CONNECTIONS

It is possible to implement proxy connectors for [**glasscoder**(1)](/glasscoder/1.md)'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)](/unix/7.md) 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)](/glasscoder/1.md), [**cmsg**(3)](/cmsg/3.md), [**sendmsg**(2)](/sendmsg/2.md), [**syslog**(3)](/syslog/3.md), [**unix**(7)](/unix/7.md)

## AUTHOR

**Fred Gleason** \<fredg@paravelsystems.com\>

Application Author
