BtSinkBin

BtSinkBin — bin to be used by BtSinkMachine

Synopsis

#include <libbtcore/core.h>

struct              BtSinkBin;
enum                BtSinkBinMode;
enum                BtSinkBinRecordFormat;

Description

The sink-bin provides switchable play and record facillities. It also provides controlable master-volume.

Details

struct BtSinkBin

struct BtSinkBin {
  const GstBin parent;
};

Sub-class of a GstBin that implements a signal output (a machine with inputs only).


enum BtSinkBinMode

typedef enum {
  BT_SINK_BIN_MODE_PLAY=0,
  BT_SINK_BIN_MODE_RECORD,
  BT_SINK_BIN_MODE_PLAY_AND_RECORD
} BtSinkBinMode;

BtSinkMachine supports several modes of operation. Playing is the default mode.

BT_SINK_BIN_MODE_PLAY

play the song

BT_SINK_BIN_MODE_RECORD

record to file

BT_SINK_BIN_MODE_PLAY_AND_RECORD

play and record together

enum BtSinkBinRecordFormat

typedef enum {
  BT_SINK_BIN_RECORD_FORMAT_OGG_VORBIS=0,
  BT_SINK_BIN_RECORD_FORMAT_MP3,
  BT_SINK_BIN_RECORD_FORMAT_WAV,
  BT_SINK_BIN_RECORD_FORMAT_OGG_FLAC,
  BT_SINK_BIN_RECORD_FORMAT_RAW
} BtSinkBinRecordFormat;

BtSinkMachine can record audio in several formats.

BT_SINK_BIN_RECORD_FORMAT_OGG_VORBIS

ogg vorbis

BT_SINK_BIN_RECORD_FORMAT_MP3

mp3

BT_SINK_BIN_RECORD_FORMAT_WAV

wav

BT_SINK_BIN_RECORD_FORMAT_OGG_FLAC

ogg flac

BT_SINK_BIN_RECORD_FORMAT_RAW

raw