summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTimo Wischer <twischer@de.adit-jv.com>2018-11-20 15:53:39 +0100
committerFilipe Coelho <falktx@falktx.com>2019-01-17 00:56:39 +0100
commitc5a0f5ea1cf4c29f35e76b600043bef95147186f (patch)
tree8145b58e2dea88b4e3f9976b6fa61a826e37537c
parent148c8d8e6acf3242bcc27b62f7f51bbdeee6472b (diff)
downloadjack2-c5a0f5ea1cf4c29f35e76b600043bef95147186f.tar.gz
oss_driver: Use float to S32 conversion if requested
sample_move_d32u24_sS() converts into samples like 0x00****** but S32 format expects samples like 0x********. Therefore it will not use the full volume range when also using sample_move_d32u24_sS() for S32. Signed-off-by: Timo Wischer <twischer@de.adit-jv.com>
-rw-r--r--solaris/oss/JackBoomerDriver.cpp4
-rw-r--r--solaris/oss/JackOSSAdapter.cpp4
-rw-r--r--solaris/oss/JackOSSDriver.cpp4
3 files changed, 6 insertions, 6 deletions
diff --git a/solaris/oss/JackBoomerDriver.cpp b/solaris/oss/JackBoomerDriver.cpp
index 5f07bc57..f207addb 100644
--- a/solaris/oss/JackBoomerDriver.cpp
+++ b/solaris/oss/JackBoomerDriver.cpp
@@ -87,7 +87,7 @@ static inline void CopyAndConvertIn(jack_sample_t *dst, void *src, size_t nframe
case 32: {
signed int *s32src = (signed int*)src;
s32src += channel;
- sample_move_dS_s32u24(dst, (char*)s32src, nframes, byte_skip);
+ sample_move_dS_s32(dst, (char*)s32src, nframes, byte_skip);
break;
}
}
@@ -112,7 +112,7 @@ static inline void CopyAndConvertOut(void *dst, jack_sample_t *src, size_t nfram
case 32: {
signed int *s32dst = (signed int*)dst;
s32dst += channel;
- sample_move_d32u24_sS((char*)s32dst, src, nframes, byte_skip, NULL);
+ sample_move_d32_sS((char*)s32dst, src, nframes, byte_skip, NULL);
break;
}
}
diff --git a/solaris/oss/JackOSSAdapter.cpp b/solaris/oss/JackOSSAdapter.cpp
index 8418068d..23615992 100644
--- a/solaris/oss/JackOSSAdapter.cpp
+++ b/solaris/oss/JackOSSAdapter.cpp
@@ -52,7 +52,7 @@ static inline void CopyAndConvertIn(jack_sample_t *dst, void *src, size_t nframe
case 32: {
signed int *s32src = (signed int*)src;
s32src += channel;
- sample_move_dS_s32u24(dst, (char*)s32src, nframes, chcount<<2);
+ sample_move_dS_s32(dst, (char*)s32src, nframes, chcount<<2);
break;
}
}
@@ -77,7 +77,7 @@ static inline void CopyAndConvertOut(void *dst, jack_sample_t *src, size_t nfram
case 32: {
signed int *s32dst = (signed int*)dst;
s32dst += channel;
- sample_move_d32u24_sS((char*)s32dst, src, nframes, chcount<<2, NULL);
+ sample_move_d32_sS((char*)s32dst, src, nframes, chcount<<2, NULL);
break;
}
}
diff --git a/solaris/oss/JackOSSDriver.cpp b/solaris/oss/JackOSSDriver.cpp
index 77ca6e00..f1affaf0 100644
--- a/solaris/oss/JackOSSDriver.cpp
+++ b/solaris/oss/JackOSSDriver.cpp
@@ -86,7 +86,7 @@ static inline void CopyAndConvertIn(jack_sample_t *dst, void *src, size_t nframe
case 32: {
signed int *s32src = (signed int*)src;
s32src += channel;
- sample_move_dS_s32u24(dst, (char*)s32src, nframes, chcount<<2);
+ sample_move_dS_s32(dst, (char*)s32src, nframes, chcount<<2);
break;
}
}
@@ -111,7 +111,7 @@ static inline void CopyAndConvertOut(void *dst, jack_sample_t *src, size_t nfram
case 32: {
signed int *s32dst = (signed int*)dst;
s32dst += channel;
- sample_move_d32u24_sS((char*)s32dst, src, nframes, chcount<<2, NULL);
+ sample_move_d32_sS((char*)s32dst, src, nframes, chcount<<2, NULL);
break;
}
}