summaryrefslogtreecommitdiff
path: root/src/opus_private.h
diff options
context:
space:
mode:
authorJean-Marc Valin <jmvalin@jmvalin.ca>2013-03-01 15:18:23 -0500
committerJean-Marc Valin <jmvalin@jmvalin.ca>2013-03-01 15:23:01 -0500
commit32c4a0c96e239bee7623aef8ae592a5c7f7ec753 (patch)
treea0125b967107e50702851b1bb7007a18ee01e23f /src/opus_private.h
parent69c3dcd105432a72220478cbde851cc7917e5768 (diff)
downloadopus-32c4a0c96e239bee7623aef8ae592a5c7f7ec753.tar.gz
Applies soft-clipping to the int decoder API.
opus_decode() and opus_multistream_decode() now apply soft clipping before converting to 16-bit int. This should produce better a higher quality result than hard clipping like we were doing before. The _float() API isn't affected, but the clipping function is exported so users can manually apply the soft clipping.
Diffstat (limited to 'src/opus_private.h')
-rw-r--r--src/opus_private.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/opus_private.h b/src/opus_private.h
index 977f4a25..c9a4ff53 100644
--- a/src/opus_private.h
+++ b/src/opus_private.h
@@ -88,7 +88,8 @@ opus_int32 opus_encode_native(OpusEncoder *st, const opus_val16 *pcm, int frame_
unsigned char *data, opus_int32 out_data_bytes, int lsb_depth);
int opus_decode_native(OpusDecoder *st, const unsigned char *data, opus_int32 len,
- opus_val16 *pcm, int frame_size, int decode_fec, int self_delimited, int *packet_offset);
+ opus_val16 *pcm, int frame_size, int decode_fec, int self_delimited,
+ int *packet_offset, int soft_clip);
/* Make sure everything's aligned to sizeof(void *) bytes */
static inline int align(int i)