summaryrefslogtreecommitdiff
path: root/dxr3audio.c
diff options
context:
space:
mode:
authorChristian Gmeiner <christian.gmeiner@gmail.com>2009-02-25 07:42:03 +0100
committerChristian Gmeiner <christian.gmeiner@gmail.com>2009-02-25 07:42:03 +0100
commit81b574d4f37cdc390def2f78fd5d5cb6484b4a3f (patch)
tree315c9085dff2f85a495ce01478774beee8877472 /dxr3audio.c
parent80e640c072b80590b3cc818e25a80589f515f4a4 (diff)
downloadvdr-plugin-dxr3-81b574d4f37cdc390def2f78fd5d5cb6484b4a3f.tar.gz
vdr-plugin-dxr3-81b574d4f37cdc390def2f78fd5d5cb6484b4a3f.tar.bz2
fix audio resampling
Split up the process of audio resampling. First, change the sound levels. Second, respect audio channel setting.
Diffstat (limited to 'dxr3audio.c')
-rw-r--r--dxr3audio.c30
1 files changed, 15 insertions, 15 deletions
diff --git a/dxr3audio.c b/dxr3audio.c
index e2daa71..d0d71d2 100644
--- a/dxr3audio.c
+++ b/dxr3audio.c
@@ -29,8 +29,8 @@ const static int AUDIO_STEREO = 0;
const static int AUDIO_MONO_LEFT = 1;
const static int AUDIO_MONO_RIGHT = 2;
-void iAudio::changeVolume(int16_t* pcmbuf, size_t size) {
-
+void iAudio::changeVolume(int16_t* pcmbuf, size_t size)
+{
if (vol == 0) {
memset(pcmbuf, 0, size);
} else if (vol < MAXVOLUME) {
@@ -44,23 +44,23 @@ void iAudio::changeVolume(int16_t* pcmbuf, size_t size) {
pcmbuf++;
size--;
}
+ }
- // respect audio channel setting
- if (audioChannel == AUDIO_STEREO)
- return;
+ // respect audio channel setting
+ if (audioChannel == AUDIO_STEREO)
+ return;
- if (audioChannel == AUDIO_MONO_RIGHT) {
+ if (audioChannel == AUDIO_MONO_RIGHT) {
- for (unsigned int i = 0; i < size / sizeof(short); i++) {
- if (!(i & 0x1))
- pcmbuf[i] = pcmbuf[i+1];
- }
- } else if (audioChannel == AUDIO_MONO_LEFT) {
+ for (unsigned int i = 0; i < size / sizeof(short); i++) {
+ if (!(i & 0x1))
+ pcmbuf[i] = pcmbuf[i+1];
+ }
+ } else if (audioChannel == AUDIO_MONO_LEFT) {
- for (unsigned int i = 0; i < size / sizeof(short); i++) {
- if ((i & 0x1))
- pcmbuf[i] = pcmbuf[i-1];
- }
+ for (unsigned int i = 0; i < size / sizeof(short); i++) {
+ if ((i & 0x1))
+ pcmbuf[i] = pcmbuf[i-1];
}
}
}