X-Git-Url: http://git.cinelerra-gg.org/git/?p=goodguy%2Fhistory.git;a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Faudioidevice.C;h=3156dab209ab77575e2c9d9de49df660ec3d7eb0;hp=acc870576e3c41921af6cf91b69cc8d230f6a8d9;hb=502b6f3b6fd04f6b01c6d70dcb81aa304dd0db1c;hpb=a9288f4aa494cc2e76d5eb2f54e2a7561c4a35b4 diff --git a/cinelerra-5.1/cinelerra/audioidevice.C b/cinelerra-5.1/cinelerra/audioidevice.C index acc87057..3156dab2 100644 --- a/cinelerra-5.1/cinelerra/audioidevice.C +++ b/cinelerra-5.1/cinelerra/audioidevice.C @@ -42,9 +42,9 @@ #define GET_8BIT(i) ((double)(buffer[(i)])) #define GET_16BIT(i) ((double)(*(int16_t*)&buffer[(i)])) -#define GET_24BIT(i) (zi=(i), ((zi&1) ? \ - ((double)((*(uint8_t*)&buffer[zi]) | (*(int16_t*)&buffer[zi+1] << 8))) : \ - ((double)((*(uint16_t*)&buffer[zi]) | (*(int8_t*)&buffer[zi+2] << 16))))) +#define GET_24BIT(i) ((i&1) ? \ + ((double)((*(uint8_t*)&buffer[i]) | (*(int16_t*)&buffer[i+1] << 8))) : \ + ((double)((*(uint16_t*)&buffer[i]) | (*(int8_t*)&buffer[i+2] << 16)))) #define GET_32BIT(i) ((double)(*(int32_t *)&buffer[(i)])) #define GET_8BITS(j,k) { double sample = gain*GET_8BIT(k); STORE(j); } @@ -103,7 +103,6 @@ int AudioDevice::read_buffer(Samples **data, int channels, int xfr_samples = xfr_size / frame_size; for( int ich=0; ichget_data() + input_offset; if( map51_2 ) {