File libbs2b-clipping.patch of Package libbs2b

From 5ca2d59888df047f1e4b028e3a2fd5be8b5a7277 Mon Sep 17 00:00:00 2001
From: Alex Marsev <alex.marsev@gmail.com>
Date: Fri, 17 Oct 2014 11:09:04 +0300
Subject: [PATCH] Don't clip floating point samples

---
 src/bs2b.c | 36 ------------------------------------
 1 file changed, 36 deletions(-)

diff --git a/src/bs2b.c b/src/bs2b.c
index 623ca77..b87680c 100644
--- a/src/bs2b.c
+++ b/src/bs2b.c
@@ -350,12 +350,6 @@ void bs2b_cross_feed_d( t_bs2bdp bs2bdp, double *sample, int n )
 		{
 			cross_feed_d( bs2bdp, sample );
 			
-			/* Clipping of overloaded samples */
-			if( sample[ 0 ] >  1.0 ) sample[ 0 ] =  1.0;
-			if( sample[ 0 ] < -1.0 ) sample[ 0 ] = -1.0;
-			if( sample[ 1 ] >  1.0 ) sample[ 1 ] =  1.0;
-			if( sample[ 1 ] < -1.0 ) sample[ 1 ] = -1.0;
-
 			sample += 2;
 		} /* while */
 	} /* if */
@@ -374,12 +368,6 @@ void bs2b_cross_feed_dbe( t_bs2bdp bs2bdp, double *sample, int n )
 
 			cross_feed_d( bs2bdp, sample );
 
-			/* Clipping of overloaded samples */
-			if( sample[ 0 ] >  1.0 ) sample[ 0 ] =  1.0;
-			if( sample[ 0 ] < -1.0 ) sample[ 0 ] = -1.0;
-			if( sample[ 1 ] >  1.0 ) sample[ 1 ] =  1.0;
-			if( sample[ 1 ] < -1.0 ) sample[ 1 ] = -1.0;
-
 			#ifndef WORDS_BIGENDIAN
 			int64swap( ( uint32_t * )sample );
 			int64swap( ( uint32_t * )( sample + 1 ) );
@@ -403,12 +391,6 @@ void bs2b_cross_feed_dle( t_bs2bdp bs2bdp, double *sample, int n )
 
 			cross_feed_d( bs2bdp, sample );
 
-			/* Clipping of overloaded samples */
-			if( sample[ 0 ] >  1.0 ) sample[ 0 ] =  1.0;
-			if( sample[ 0 ] < -1.0 ) sample[ 0 ] = -1.0;
-			if( sample[ 1 ] >  1.0 ) sample[ 1 ] =  1.0;
-			if( sample[ 1 ] < -1.0 ) sample[ 1 ] = -1.0;
-
 			#ifdef WORDS_BIGENDIAN
 			int64swap( ( uint32_t * )sample );
 			int64swap( ( uint32_t * )( sample + 1 ) );
@@ -432,12 +414,6 @@ void bs2b_cross_feed_f( t_bs2bdp bs2bdp, float *sample, int n )
 
 			cross_feed_d( bs2bdp, sample_d );
 
-			/* Clipping of overloaded samples */
-			if( sample_d[ 0 ] >  1.0 ) sample_d[ 0 ] =  1.0;
-			if( sample_d[ 0 ] < -1.0 ) sample_d[ 0 ] = -1.0;
-			if( sample_d[ 1 ] >  1.0 ) sample_d[ 1 ] =  1.0;
-			if( sample_d[ 1 ] < -1.0 ) sample_d[ 1 ] = -1.0;
-
 			sample[ 0 ] = ( float )sample_d[ 0 ];
 			sample[ 1 ] = ( float )sample_d[ 1 ];
 
@@ -464,12 +440,6 @@ void bs2b_cross_feed_fbe( t_bs2bdp bs2bdp, float *sample, int n )
 
 			cross_feed_d( bs2bdp, sample_d );
 
-			/* Clipping of overloaded samples */
-			if( sample_d[ 0 ] >  1.0 ) sample_d[ 0 ] =  1.0;
-			if( sample_d[ 0 ] < -1.0 ) sample_d[ 0 ] = -1.0;
-			if( sample_d[ 1 ] >  1.0 ) sample_d[ 1 ] =  1.0;
-			if( sample_d[ 1 ] < -1.0 ) sample_d[ 1 ] = -1.0;
-
 			sample[ 0 ] = ( float )sample_d[ 0 ];
 			sample[ 1 ] = ( float )sample_d[ 1 ];
 
@@ -501,12 +471,6 @@ void bs2b_cross_feed_fle( t_bs2bdp bs2bdp, float *sample, int n )
 
 			cross_feed_d( bs2bdp, sample_d );
 
-			/* Clipping of overloaded samples */
-			if( sample_d[ 0 ] >  1.0 ) sample_d[ 0 ] =  1.0;
-			if( sample_d[ 0 ] < -1.0 ) sample_d[ 0 ] = -1.0;
-			if( sample_d[ 1 ] >  1.0 ) sample_d[ 1 ] =  1.0;
-			if( sample_d[ 1 ] < -1.0 ) sample_d[ 1 ] = -1.0;
-
 			sample[ 0 ] = ( float )sample_d[ 0 ];
 			sample[ 1 ] = ( float )sample_d[ 1 ];
 
openSUSE Build Service is sponsored by