# faac

faac encodes raw audio to AAC (MPEG-4 part 3) streams.

## Example launch line

     gst-launch-1.0 audiotestsrc wave=sine num-buffers=100 ! audioconvert ! faac ! matroskamux ! filesink location=sine.mkv

Encode a sine beep as aac and write to matroska container.

## Hierarchy

    GObject
        ╰──GInitiallyUnowned
            ╰──GstObject
                ╰──GstElement
                    ╰──GstAudioEncoder
                        ╰──faac

## Implemented interfaces

    GstPreset

## Factory details

Authors: – Ronald Bultje <rbultje></rbultje>

Classification: – `Codec/Encoder/Audio`

Rank – secondary

Plugin – faac

Package – GStreamer Bad Plug-ins

## Pad Templates

### `sink`

    audio/x-raw:
             format: S16LE
             layout: interleaved
               rate: { (int)8000, (int)11025, (int)12000, (int)16000, (int)22050, (int)24000, (int)32000, (int)44100, (int)48000, (int)64000, (int)88200, (int)96000 }
           channels: 1
    audio/x-raw:
             format: S16LE
             layout: interleaved
               rate: { (int)8000, (int)11025, (int)12000, (int)16000, (int)22050, (int)24000, (int)32000, (int)44100, (int)48000, (int)64000, (int)88200, (int)96000 }
           channels: 2
       channel-mask: 0x0000000000000003
    audio/x-raw:
             format: S16LE
             layout: interleaved
               rate: { (int)8000, (int)11025, (int)12000, (int)16000, (int)22050, (int)24000, (int)32000, (int)44100, (int)48000, (int)64000, (int)88200, (int)96000 }
           channels: 3
       channel-mask: 0x0000000000000007
    audio/x-raw:
             format: S16LE
             layout: interleaved
               rate: { (int)8000, (int)11025, (int)12000, (int)16000, (int)22050, (int)24000, (int)32000, (int)44100, (int)48000, (int)64000, (int)88200, (int)96000 }
           channels: 4
       channel-mask: 0x0000000000000107
    audio/x-raw:
             format: S16LE
             layout: interleaved
               rate: { (int)8000, (int)11025, (int)12000, (int)16000, (int)22050, (int)24000, (int)32000, (int)44100, (int)48000, (int)64000, (int)88200, (int)96000 }
           channels: 5
       channel-mask: 0x0000000000000037
    audio/x-raw:
             format: S16LE
             layout: interleaved
               rate: { (int)8000, (int)11025, (int)12000, (int)16000, (int)22050, (int)24000, (int)32000, (int)44100, (int)48000, (int)64000, (int)88200, (int)96000 }
           channels: 6
       channel-mask: 0x000000000000003f

Presence – always

Direction – sink

Object type – GstPad

### `src`

    audio/mpeg:
        mpegversion: 4
           channels: [ 1, 6 ]
               rate: { (int)8000, (int)11025, (int)12000, (int)16000, (int)22050, (int)24000, (int)32000, (int)44100, (int)48000, (int)64000, (int)88200, (int)96000 }
      stream-format: { (string)adts, (string)raw }
       base-profile: { (string)main, (string)lc, (string)ssr, (string)ltp }
             framed: true
    audio/mpeg:
        mpegversion: 2
           channels: [ 1, 6 ]
               rate: { (int)8000, (int)11025, (int)12000, (int)16000, (int)22050, (int)24000, (int)32000, (int)44100, (int)48000, (int)64000, (int)88200, (int)96000 }
      stream-format: { (string)adts, (string)raw }
            profile: { (string)main, (string)lc }
             framed: true

Presence – always

Direction – src

Object type – GstPad

## Properties

### bitrate

    “bitrate” gint

Average Bitrate (ABR) in bits/sec

Flags : Read / Write / Construct

Default value : 128000

### midside

    “midside” gboolean

Allow mid/side encoding

Flags : Read / Write / Construct

Default value : true

### quality

    “quality” gint

Variable bitrate (VBR) quantizer quality in %%

Flags : Read / Write / Construct

Default value : 100

### rate-control

    “rate-control” GstFaacBrtype *

Encoding bitrate type (VBR/ABR)

Flags : Read / Write / Construct

Default value : VBR encoding (1)

### shortctl

    “shortctl” GstFaacShortCtl *

Block type encorcing

Flags : Read / Write / Construct

Default value : Normal block type (0)

### tns

    “tns” gboolean

Use temporal noise shaping

Flags : Read / Write / Construct

Default value : false

## Named constants

### GstFaacBrtype

#### Members

`VBR encoding` (1) – VBR
`ABR encoding` (2) – ABR

### GstFaacShortCtl

#### Members

`Normal block type` (0) – SHORTCTL_NORMAL
`No short blocks` (1) – SHORTCTL_NOSHORT
`No long blocks` (2) – SHORTCTL_NOLONG

The results of the search are