libgroove  5.0.0
GrooveEncoder Struct Reference

attach a GrooveEncoder to a playlist to keep a buffer of encoded audio full. More...

Data Fields

struct GrooveAudioFormat target_audio_format
 The desired audio format to encode. More...
 
int bit_rate
 Select encoding quality by choosing a target bit rate in bits per second. More...
 
const char * format_short_name
 optional - choose a short name for the format to help libgroove guess which format to use use avconv -formats to get a list of possibilities More...
 
const char * codec_short_name
 optional - choose a short name for the codec to help libgroove guess which codec to use use avconv -codecs to get a list of possibilities More...
 
const char * filename
 optional - provide an example filename to help libgroove guess which format/codec to use More...
 
const char * mime_type
 optional - provide a mime type string to help libgroove guess which format/codec to use More...
 
int sink_buffer_size
 how big the sink buffer should be, in sample frames. More...
 
int encoded_buffer_size
 how big the encoded audio buffer should be, in bytes groove_encoder_create defaults this to 16384 More...
 
double gain
 This volume adjustment to make to this player. More...
 
struct GroovePlaylistplaylist
 read-only. set when attached and cleared when detached More...
 
struct GrooveAudioFormat actual_audio_format
 read-only. More...
 

Detailed Description

attach a GrooveEncoder to a playlist to keep a buffer of encoded audio full.

for example you could use it to implement an http audio stream

Examples:
transcode.c.

Field Documentation

struct GrooveAudioFormat GrooveEncoder::actual_audio_format

read-only.

set to the actual format you get when you attach to a playlist. ideally will be the same as target_audio_format but might not be.

int GrooveEncoder::bit_rate

Select encoding quality by choosing a target bit rate in bits per second.

Note that typically you see this expressed in "kbps", such as 320kbps or 128kbps. Surprisingly, in this circumstance 1 kbps is 1000 bps, not 1024 bps as you would expect. groove_encoder_create defaults this to 256000

Examples:
transcode.c.
const char* GrooveEncoder::codec_short_name

optional - choose a short name for the codec to help libgroove guess which codec to use use avconv -codecs to get a list of possibilities

Examples:
transcode.c.
int GrooveEncoder::encoded_buffer_size

how big the encoded audio buffer should be, in bytes groove_encoder_create defaults this to 16384

const char* GrooveEncoder::filename

optional - provide an example filename to help libgroove guess which format/codec to use

Examples:
transcode.c.
const char* GrooveEncoder::format_short_name

optional - choose a short name for the format to help libgroove guess which format to use use avconv -formats to get a list of possibilities

Examples:
transcode.c.
double GrooveEncoder::gain

This volume adjustment to make to this player.

It is recommended that you leave this at 1.0 and instead adjust the gain of the underlying playlist. If you want to change this value after you have already attached the sink to the playlist, you must use groove_encoder_set_gain. float format. Defaults to 1.0

const char* GrooveEncoder::mime_type

optional - provide a mime type string to help libgroove guess which format/codec to use

Examples:
transcode.c.
struct GroovePlaylist* GrooveEncoder::playlist

read-only. set when attached and cleared when detached

int GrooveEncoder::sink_buffer_size

how big the sink buffer should be, in sample frames.

groove_encoder_create defaults this to 8192

struct GrooveAudioFormat GrooveEncoder::target_audio_format

The desired audio format to encode.

groove_encoder_create defaults these to 44100 Hz, signed 16-bit int, stereo. These are preferences; if a setting cannot be used, a substitute will be used instead. actual_audio_format is set to the actual values.

Examples:
transcode.c.

The documentation for this struct was generated from the following file: