# wavpackenc

WavpackEnc encodes raw audio into a framed Wavpack stream. Wavpack is an open-source audio codec that features both lossless and lossy encoding.

## Example launch line

     gst-launch-1.0 audiotestsrc num-buffers=500 ! audioconvert ! wavpackenc ! filesink location=sinewave.wv

This pipeline encodes audio from audiotestsrc into a Wavpack file. The audioconvert element is needed as the Wavpack encoder only accepts input with 32 bit width.

     gst-launch-1.0 cdda://1 ! audioconvert ! wavpackenc ! filesink location=track1.wv

This pipeline encodes audio from an audio CD into a Wavpack file using lossless encoding (the file output will be fairly large).

     gst-launch-1.0 cdda://1 ! audioconvert ! wavpackenc bitrate=128000 ! filesink location=track1.wv

This pipeline encodes audio from an audio CD into a Wavpack file using lossy encoding at a certain bitrate (the file will be fairly small).

## Hierarchy

    GObject
        ╰──GInitiallyUnowned
            ╰──GstObject
                ╰──GstElement
                    ╰──GstAudioEncoder
                        ╰──wavpackenc

## Implemented interfaces

    GstPreset

## Factory details

Authors: – Sebastian Dröge

Classification: – `Codec/Encoder/Audio`

Rank – none

Plugin – wavpack

Package – GStreamer Good Plug-ins

## Pad Templates

### `sink`

    audio/x-raw:
             format: { S8, S16LE, S18LE, S20LE, S24LE, S32LE }
             layout: interleaved
           channels: [ 1, 4096 ]
               rate: [ 6000, 2147483647 ]
    audio/x-raw:
             format: F32LE
             layout: interleaved
           channels: [ 1, 4096 ]
               rate: [ 6000, 2147483647 ]

Presence – always

Direction – sink

Object type – GstPad

### `src`

    audio/x-wavpack:
              depth: [ 1, 32 ]
              width: { (int)8, (int)16, (int)24, (int)32 }
        sample-type: { (string)int, (string)float }
           channels: [ 1, 4096 ]
               rate: [ 6000, 2147483647 ]
             framed: true

Presence – always

Direction – src

Object type – GstPad

### `wvcsrc`

    audio/x-wavpack-correction:
             framed: true

Presence – sometimes

Direction – src

Object type – GstPad

## Properties

### bitrate

    “bitrate” guint

Try to encode with this average bitrate (bits/sec). This enables lossy encoding, values smaller than 24000 disable it again.

Flags : Read / Write

Default value : 0

### bits-per-sample

    “bits-per-sample” gdouble

Try to encode with this amount of bits per sample. This enables lossy encoding, values smaller than 2.0 disable it again.

Flags : Read / Write

Default value : 0

### correction-mode

    “correction-mode” Wavpack-enc-correction-mode *

Use this mode for the correction stream. Only works in lossy mode!

Flags : Read / Write

Default value : off (0)

### extra-processing

    “extra-processing” guint

Use better but slower filters for better compression/quality.

Flags : Read / Write

Default value : 0

### joint-stereo-mode

    “joint-stereo-mode” Wavpack-enc-jsmode *

Use this joint-stereo mode.

Flags : Read / Write

Default value : auto (0)

### md5

    “md5” gboolean

Store MD5 hash of raw samples within the file.

Flags : Read / Write

Default value : false

### mode

    “mode” Wavpack-enc-mode *

Speed versus compression tradeoff.

Flags : Read / Write

Default value : normal (2)

## Named constants

### Wavpack-enc-correction-mode

#### Members

`off` (0) – Create no correction file
`on` (1) – Create correction file
`optimized` (2) – Create optimized correction file

### Wavpack-enc-jsmode

#### Members

`auto` (0) – auto
`leftright` (1) – left/right
`midside` (2) – mid/side

### Wavpack-enc-mode

#### Members

`fast` (1) – Fast Compression
`normal` (2) – Normal Compression
`high` (3) – High Compression
`veryhigh` (4) – Very High Compression

The results of the search are