Changeset 62981 in vbox for trunk/src/VBox/Devices/Audio/testcase
- Timestamp:
- Aug 4, 2016 12:06:27 PM (9 years ago)
- svn:sync-xref-src-repo-rev:
- 109584
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Audio/testcase/tstAudioMixBuffer.cpp
r62980 r62981 72 72 * Absolute writes. 73 73 */ 74 uint32_t read = 0, written = 0, written_abs = 0;74 uint32_t cSamplesRead = 0, cSamplesWritten = 0, cSamplesWrittenAbs = 0; 75 75 int8_t samples8 [2] = { 0x12, 0x34 }; 76 76 int16_t samples16[2] = { 0xAA, 0xBB }; … … 78 78 /* int64_t samples64[2] = { 0xEE, 0xFF }; - unused */ 79 79 80 RTTESTI_CHECK_RC_OK(AudioMixBufWriteAt(&mb, 0, &samples8, sizeof(samples8), & written));81 RTTESTI_CHECK( written == 0 /* Samples */);82 83 RTTESTI_CHECK_RC_OK(AudioMixBufWriteAt(&mb, 0, &samples16, sizeof(samples16), & written));84 RTTESTI_CHECK( written == 1 /* Samples */);85 86 RTTESTI_CHECK_RC_OK(AudioMixBufWriteAt(&mb, 2, &samples32, sizeof(samples32), & written));87 RTTESTI_CHECK( written == 2 /* Samples */);88 written_abs = 0;80 RTTESTI_CHECK_RC_OK(AudioMixBufWriteAt(&mb, 0, &samples8, sizeof(samples8), &cSamplesWritten)); 81 RTTESTI_CHECK(cSamplesWritten == 0 /* Samples */); 82 83 RTTESTI_CHECK_RC_OK(AudioMixBufWriteAt(&mb, 0, &samples16, sizeof(samples16), &cSamplesWritten)); 84 RTTESTI_CHECK(cSamplesWritten == 1 /* Samples */); 85 86 RTTESTI_CHECK_RC_OK(AudioMixBufWriteAt(&mb, 2, &samples32, sizeof(samples32), &cSamplesWritten)); 87 RTTESTI_CHECK(cSamplesWritten == 2 /* Samples */); 88 cSamplesWrittenAbs = 0; 89 89 90 90 /* Beyond buffer. */ 91 91 RTTESTI_CHECK_RC(AudioMixBufWriteAt(&mb, AudioMixBufSize(&mb) + 1, &samples16, sizeof(samples16), 92 & written), VINF_BUFFER_OVERFLOW);92 &cSamplesWritten), VINF_BUFFER_OVERFLOW); 93 93 /** @todo (bird): this was checking for VERR_BUFFER_OVERFLOW, which do you want 94 94 * the function to actually return? */ … … 97 97 * Circular writes. 98 98 */ 99 uint32_t cToWrite = AudioMixBufSize(&mb) - written_abs - 1; /* -1 as padding plus -2 samples for above. */99 uint32_t cToWrite = AudioMixBufSize(&mb) - cSamplesWrittenAbs - 1; /* -1 as padding plus -2 samples for above. */ 100 100 for (uint32_t i = 0; i < cToWrite; i++) 101 101 { 102 RTTESTI_CHECK_RC_OK(AudioMixBufWriteCirc(&mb, &samples16, sizeof(samples16), & written));103 RTTESTI_CHECK( written == 1);102 RTTESTI_CHECK_RC_OK(AudioMixBufWriteCirc(&mb, &samples16, sizeof(samples16), &cSamplesWritten)); 103 RTTESTI_CHECK(cSamplesWritten == 1); 104 104 } 105 105 RTTESTI_CHECK(!AudioMixBufIsEmpty(&mb)); 106 106 RTTESTI_CHECK(AudioMixBufFree(&mb) == 1); 107 107 RTTESTI_CHECK(AudioMixBufFreeBytes(&mb) == AUDIOMIXBUF_S2B(&mb, 1U)); 108 RTTESTI_CHECK(AudioMixBufUsed(&mb) == cToWrite + written_abs /* + last absolute write */);109 110 RTTESTI_CHECK_RC_OK(AudioMixBufWriteCirc(&mb, &samples16, sizeof(samples16), & written));111 RTTESTI_CHECK( written == 1);108 RTTESTI_CHECK(AudioMixBufUsed(&mb) == cToWrite + cSamplesWrittenAbs /* + last absolute write */); 109 110 RTTESTI_CHECK_RC_OK(AudioMixBufWriteCirc(&mb, &samples16, sizeof(samples16), &cSamplesWritten)); 111 RTTESTI_CHECK(cSamplesWritten == 1); 112 112 RTTESTI_CHECK(AudioMixBufFree(&mb) == 0); 113 113 RTTESTI_CHECK(AudioMixBufFreeBytes(&mb) == AUDIOMIXBUF_S2B(&mb, 0U)); … … 115 115 116 116 /* Circular reads. */ 117 uint32_t cToRead = AudioMixBufSize(&mb) - written_abs - 1;117 uint32_t cToRead = AudioMixBufSize(&mb) - cSamplesWrittenAbs - 1; 118 118 for (uint32_t i = 0; i < cToWrite; i++) 119 119 { 120 RTTESTI_CHECK_RC_OK(AudioMixBufReadCirc(&mb, &samples16, sizeof(samples16), & read));121 RTTESTI_CHECK( read == 1);122 AudioMixBufFinish(&mb, read);120 RTTESTI_CHECK_RC_OK(AudioMixBufReadCirc(&mb, &samples16, sizeof(samples16), &cSamplesRead)); 121 RTTESTI_CHECK(cSamplesRead == 1); 122 AudioMixBufFinish(&mb, cSamplesRead); 123 123 } 124 124 RTTESTI_CHECK(!AudioMixBufIsEmpty(&mb)); 125 RTTESTI_CHECK(AudioMixBufFree(&mb) == AudioMixBufSize(&mb) - written_abs - 1);126 RTTESTI_CHECK(AudioMixBufFreeBytes(&mb) == AUDIOMIXBUF_S2B(&mb, cBufSize - written_abs - 1));127 RTTESTI_CHECK(AudioMixBufUsed(&mb) == cBufSize - cToRead + written_abs);128 129 RTTESTI_CHECK_RC_OK(AudioMixBufReadCirc(&mb, &samples16, sizeof(samples16), & read));130 RTTESTI_CHECK( read == 1);131 AudioMixBufFinish(&mb, read);132 RTTESTI_CHECK(AudioMixBufFree(&mb) == cBufSize - written_abs);133 RTTESTI_CHECK(AudioMixBufFreeBytes(&mb) == AUDIOMIXBUF_S2B(&mb, cBufSize - written_abs));134 RTTESTI_CHECK(AudioMixBufUsed(&mb) == written_abs);125 RTTESTI_CHECK(AudioMixBufFree(&mb) == AudioMixBufSize(&mb) - cSamplesWrittenAbs - 1); 126 RTTESTI_CHECK(AudioMixBufFreeBytes(&mb) == AUDIOMIXBUF_S2B(&mb, cBufSize - cSamplesWrittenAbs - 1)); 127 RTTESTI_CHECK(AudioMixBufUsed(&mb) == cBufSize - cToRead + cSamplesWrittenAbs); 128 129 RTTESTI_CHECK_RC_OK(AudioMixBufReadCirc(&mb, &samples16, sizeof(samples16), &cSamplesRead)); 130 RTTESTI_CHECK(cSamplesRead == 1); 131 AudioMixBufFinish(&mb, cSamplesRead); 132 RTTESTI_CHECK(AudioMixBufFree(&mb) == cBufSize - cSamplesWrittenAbs); 133 RTTESTI_CHECK(AudioMixBufFreeBytes(&mb) == AUDIOMIXBUF_S2B(&mb, cBufSize - cSamplesWrittenAbs)); 134 RTTESTI_CHECK(AudioMixBufUsed(&mb) == cSamplesWrittenAbs); 135 135 136 136 AudioMixBufDestroy(&mb); … … 204 204 char pvBuf[_1K]; 205 205 int16_t samples[32] = { 0xAA, 0xBB }; 206 uint32_t read , written, mixed;206 uint32_t cSamplesRead, cSamplesWritten, cSamplesMixed; 207 207 208 208 uint32_t cSamplesChild1 = cSamples; … … 221 221 { 222 222 RTTestPrintf(hTest, RTTESTLVL_DEBUG, "i=%RU32\n", i); 223 RTTESTI_CHECK_RC_OK_BREAK(AudioMixBufWriteAt(&child1, 0, &samples, sizeof(samples), & written));224 RTTESTI_CHECK_MSG_BREAK( written == cSamplesChild1, ("Child1: Expected %RU32 written samples, got %RU32\n", cSamplesChild1, written));225 RTTESTI_CHECK_RC_OK_BREAK(AudioMixBufMixToParent(&child1, written, &mixed));226 RTTESTI_CHECK_MSG_BREAK(AudioMixBufLive(&child1) == mixed, ("Child1: Expected %RU32 mixed samples, got %RU32\n", AudioMixBufLive(&child1), mixed));227 RTTESTI_CHECK_MSG_BREAK(AudioMixBufUsed(&child1) == AUDIOMIXBUF_S2S_RATIO(&parent, mixed), ("Child1: Expected %RU32 used samples, got %RU32\n", AudioMixBufLive(&child1), AUDIOMIXBUF_S2S_RATIO(&parent, mixed)));223 RTTESTI_CHECK_RC_OK_BREAK(AudioMixBufWriteAt(&child1, 0, &samples, sizeof(samples), &cSamplesWritten)); 224 RTTESTI_CHECK_MSG_BREAK(cSamplesWritten == cSamplesChild1, ("Child1: Expected %RU32 written samples, got %RU32\n", cSamplesChild1, cSamplesWritten)); 225 RTTESTI_CHECK_RC_OK_BREAK(AudioMixBufMixToParent(&child1, cSamplesWritten, &cSamplesMixed)); 226 RTTESTI_CHECK_MSG_BREAK(AudioMixBufLive(&child1) == cSamplesMixed, ("Child1: Expected %RU32 mixed samples, got %RU32\n", AudioMixBufLive(&child1), cSamplesMixed)); 227 RTTESTI_CHECK_MSG_BREAK(AudioMixBufUsed(&child1) == AUDIOMIXBUF_S2S_RATIO(&parent, cSamplesMixed), ("Child1: Expected %RU32 used samples, got %RU32\n", AudioMixBufLive(&child1), AUDIOMIXBUF_S2S_RATIO(&parent, cSamplesMixed))); 228 228 RTTESTI_CHECK_MSG_BREAK(AudioMixBufUsed(&parent) == 0, ("Parent: Expected 0 used samples, got %RU32\n", AudioMixBufUsed(&parent))); 229 229 230 RTTESTI_CHECK_RC_OK_BREAK(AudioMixBufWriteAt(&child2, 0, &samples, sizeof(samples), & written));231 RTTESTI_CHECK_MSG_BREAK( written == cSamplesChild2, ("Child2: Expected %RU32 written samples, got %RU32\n", cSamplesChild2, written));232 RTTESTI_CHECK_RC_OK_BREAK(AudioMixBufMixToParent(&child2, written, &mixed));233 RTTESTI_CHECK_MSG_BREAK(AudioMixBufLive(&child2) == mixed, ("Child2: Expected %RU32 mixed samples, got %RU32\n", AudioMixBufLive(&child2), AudioMixBufUsed(&parent)));234 RTTESTI_CHECK_MSG_BREAK(AudioMixBufUsed(&child2) == AUDIOMIXBUF_S2S_RATIO(&parent, mixed), ("Child2: Expected %RU32 used samples, got %RU32\n", AudioMixBufLive(&child2), AUDIOMIXBUF_S2S_RATIO(&parent, mixed)));230 RTTESTI_CHECK_RC_OK_BREAK(AudioMixBufWriteAt(&child2, 0, &samples, sizeof(samples), &cSamplesWritten)); 231 RTTESTI_CHECK_MSG_BREAK(cSamplesWritten == cSamplesChild2, ("Child2: Expected %RU32 written samples, got %RU32\n", cSamplesChild2, cSamplesWritten)); 232 RTTESTI_CHECK_RC_OK_BREAK(AudioMixBufMixToParent(&child2, cSamplesWritten, &cSamplesMixed)); 233 RTTESTI_CHECK_MSG_BREAK(AudioMixBufLive(&child2) == cSamplesMixed, ("Child2: Expected %RU32 mixed samples, got %RU32\n", AudioMixBufLive(&child2), AudioMixBufUsed(&parent))); 234 RTTESTI_CHECK_MSG_BREAK(AudioMixBufUsed(&child2) == AUDIOMIXBUF_S2S_RATIO(&parent, cSamplesMixed), ("Child2: Expected %RU32 used samples, got %RU32\n", AudioMixBufLive(&child2), AUDIOMIXBUF_S2S_RATIO(&parent, cSamplesMixed))); 235 235 RTTESTI_CHECK_MSG_BREAK(AudioMixBufUsed(&parent) == 0, ("Parent2: Expected 0 used samples, got %RU32\n", AudioMixBufUsed(&parent))); 236 236 } … … 240 240 for (;;) 241 241 { 242 RTTESTI_CHECK_RC_OK_BREAK(AudioMixBufReadCirc(&parent, pvBuf, cbBuf, & read));243 if (! read)242 RTTESTI_CHECK_RC_OK_BREAK(AudioMixBufReadCirc(&parent, pvBuf, cbBuf, &cSamplesRead)); 243 if (!cSamplesRead) 244 244 break; 245 AudioMixBufFinish(&parent, read);245 AudioMixBufFinish(&parent, cSamplesRead); 246 246 } 247 247 … … 317 317 uint32_t cbBuf = 256; 318 318 char achBuf[256]; 319 uint32_t read, written, mixed, temp;319 uint32_t cSamplesRead, cSamplesWritten, cSamplesMixed; 320 320 321 321 uint32_t cSamplesChild = 16; 322 322 uint32_t cSamplesParent = cSamplesChild * 2 - 2; 323 uint32_t cSamples Read = 0;323 uint32_t cSamplesTotalRead = 0; 324 324 325 325 /**** 8-bit unsigned samples ****/ 326 326 RTTestPrintf(hTest, RTTESTLVL_DEBUG, "Conversion test %uHz %uch 8-bit\n", cfg_c.uHz, cfg_c.cChannels); 327 RTTESTI_CHECK_RC_OK(AudioMixBufWriteCirc(&child, &samples, sizeof(samples), & written));328 RTTESTI_CHECK_MSG( written == cSamplesChild, ("Child: Expected %RU32 written samples, got %RU32\n", cSamplesChild, written));329 RTTESTI_CHECK_RC_OK(AudioMixBufMixToParent(&child, written, &mixed));330 temp= AudioMixBufUsed(&parent);331 RTTESTI_CHECK_MSG(AudioMixBufLive(&child) == temp, ("Child: Expected %RU32 mixed samples, got %RU32\n", AudioMixBufLive(&child), temp));327 RTTESTI_CHECK_RC_OK(AudioMixBufWriteCirc(&child, &samples, sizeof(samples), &cSamplesWritten)); 328 RTTESTI_CHECK_MSG(cSamplesWritten == cSamplesChild, ("Child: Expected %RU32 written samples, got %RU32\n", cSamplesChild, cSamplesWritten)); 329 RTTESTI_CHECK_RC_OK(AudioMixBufMixToParent(&child, cSamplesWritten, &cSamplesMixed)); 330 uint32_t cSamples = AudioMixBufUsed(&parent); 331 RTTESTI_CHECK_MSG(AudioMixBufLive(&child) == cSamples, ("Child: Expected %RU32 mixed samples, got %RU32\n", AudioMixBufLive(&child), cSamples)); 332 332 333 333 RTTESTI_CHECK(AudioMixBufUsed(&parent) == AudioMixBufLive(&child)); … … 335 335 for (;;) 336 336 { 337 RTTESTI_CHECK_RC_OK_BREAK(AudioMixBufReadCirc(&parent, achBuf, cbBuf, & read));338 if (! read)337 RTTESTI_CHECK_RC_OK_BREAK(AudioMixBufReadCirc(&parent, achBuf, cbBuf, &cSamplesRead)); 338 if (!cSamplesRead) 339 339 break; 340 cSamples Read += read;341 AudioMixBufFinish(&parent, read);342 } 343 344 RTTESTI_CHECK_MSG(cSamples Read == cSamplesParent, ("Parent: Expected %RU32 mixed samples, got %RU32\n", cSamplesParent, cSamplesRead));340 cSamplesTotalRead += cSamplesRead; 341 AudioMixBufFinish(&parent, cSamplesRead); 342 } 343 344 RTTESTI_CHECK_MSG(cSamplesTotalRead == cSamplesParent, ("Parent: Expected %RU32 mixed samples, got %RU32\n", cSamplesParent, cSamplesTotalRead)); 345 345 346 346 /* Check that the samples came out unharmed. Every other sample is interpolated and we ignore it. */ … … 418 418 uint32_t cbBuf = 256; 419 419 char achBuf[256]; 420 uint32_t read, written, mixed, temp;420 uint32_t cSamplesRead, cSamplesWritten, cSamplesMixed; 421 421 422 422 uint32_t cSamplesChild = 16; 423 423 uint32_t cSamplesParent = cSamplesChild * 2 - 2; 424 uint32_t cSamples Read = 0;424 uint32_t cSamplesTotalRead = 0; 425 425 426 426 /**** 16-bit signed samples ****/ 427 427 RTTestPrintf(hTest, RTTESTLVL_DEBUG, "Conversion test %uHz %uch 16-bit\n", cfg_c.uHz, cfg_c.cChannels); 428 RTTESTI_CHECK_RC_OK(AudioMixBufWriteCirc(&child, &samples, sizeof(samples), & written));429 RTTESTI_CHECK_MSG( written == cSamplesChild, ("Child: Expected %RU32 written samples, got %RU32\n", cSamplesChild, written));430 RTTESTI_CHECK_RC_OK(AudioMixBufMixToParent(&child, written, &mixed));431 temp= AudioMixBufUsed(&parent);432 RTTESTI_CHECK_MSG(AudioMixBufLive(&child) == temp, ("Child: Expected %RU32 mixed samples, got %RU32\n", AudioMixBufLive(&child), temp));428 RTTESTI_CHECK_RC_OK(AudioMixBufWriteCirc(&child, &samples, sizeof(samples), &cSamplesWritten)); 429 RTTESTI_CHECK_MSG(cSamplesWritten == cSamplesChild, ("Child: Expected %RU32 written samples, got %RU32\n", cSamplesChild, cSamplesWritten)); 430 RTTESTI_CHECK_RC_OK(AudioMixBufMixToParent(&child, cSamplesWritten, &cSamplesMixed)); 431 uint32_t cSamples = AudioMixBufUsed(&parent); 432 RTTESTI_CHECK_MSG(AudioMixBufLive(&child) == cSamples, ("Child: Expected %RU32 mixed samples, got %RU32\n", AudioMixBufLive(&child), cSamples)); 433 433 434 434 RTTESTI_CHECK(AudioMixBufUsed(&parent) == AudioMixBufLive(&child)); … … 436 436 for (;;) 437 437 { 438 RTTESTI_CHECK_RC_OK_BREAK(AudioMixBufReadCirc(&parent, achBuf, cbBuf, & read));439 if (! read)438 RTTESTI_CHECK_RC_OK_BREAK(AudioMixBufReadCirc(&parent, achBuf, cbBuf, &cSamplesRead)); 439 if (!cSamplesRead) 440 440 break; 441 cSamples Read += read;442 AudioMixBufFinish(&parent, read);443 } 444 RTTESTI_CHECK_MSG(cSamples Read == cSamplesParent, ("Parent: Expected %RU32 mixed samples, got %RU32\n", cSamplesParent, cSamplesRead));441 cSamplesTotalRead += cSamplesRead; 442 AudioMixBufFinish(&parent, cSamplesRead); 443 } 444 RTTESTI_CHECK_MSG(cSamplesTotalRead == cSamplesParent, ("Parent: Expected %RU32 mixed samples, got %RU32\n", cSamplesParent, cSamplesTotalRead)); 445 445 446 446 /* Check that the samples came out unharmed. Every other sample is interpolated and we ignore it. */ … … 506 506 uint32_t cbBuf = 256; 507 507 char achBuf[256]; 508 uint32_t read, written, mixed;508 uint32_t cSamplesRead, cSamplesWritten, cSamplesMixed; 509 509 510 510 uint32_t cSamplesChild = 8; 511 511 uint32_t cSamplesParent = cSamplesChild; 512 uint32_t cSamples Read;512 uint32_t cSamplesTotalRead; 513 513 int16_t *pSrc16; 514 514 int16_t *pDst16; … … 521 521 AudioMixBufSetVolume(&child, &vol); 522 522 523 RTTESTI_CHECK_RC_OK(AudioMixBufWriteCirc(&child, &samples, sizeof(samples), & written));524 RTTESTI_CHECK_MSG( written == cSamplesChild, ("Child: Expected %RU32 written samples, got %RU32\n", cSamplesChild, written));525 RTTESTI_CHECK_RC_OK(AudioMixBufMixToParent(&child, written, &mixed));526 527 cSamples Read = 0;523 RTTESTI_CHECK_RC_OK(AudioMixBufWriteCirc(&child, &samples, sizeof(samples), &cSamplesWritten)); 524 RTTESTI_CHECK_MSG(cSamplesWritten == cSamplesChild, ("Child: Expected %RU32 written samples, got %RU32\n", cSamplesChild, cSamplesWritten)); 525 RTTESTI_CHECK_RC_OK(AudioMixBufMixToParent(&child, cSamplesWritten, &cSamplesMixed)); 526 527 cSamplesTotalRead = 0; 528 528 for (;;) 529 529 { 530 RTTESTI_CHECK_RC_OK_BREAK(AudioMixBufReadCirc(&parent, achBuf, cbBuf, & read));531 if (! read)530 RTTESTI_CHECK_RC_OK_BREAK(AudioMixBufReadCirc(&parent, achBuf, cbBuf, &cSamplesRead)); 531 if (!cSamplesRead) 532 532 break; 533 cSamples Read += read;534 AudioMixBufFinish(&parent, read);535 } 536 RTTESTI_CHECK_MSG(cSamples Read == cSamplesParent, ("Parent: Expected %RU32 mixed samples, got %RU32\n", cSamplesParent, cSamplesRead));533 cSamplesTotalRead += cSamplesRead; 534 AudioMixBufFinish(&parent, cSamplesRead); 535 } 536 RTTESTI_CHECK_MSG(cSamplesTotalRead == cSamplesParent, ("Parent: Expected %RU32 mixed samples, got %RU32\n", cSamplesParent, cSamplesTotalRead)); 537 537 538 538 /* Check that at 0dB the samples came out unharmed. */ … … 552 552 AudioMixBufSetVolume(&child, &vol); 553 553 554 RTTESTI_CHECK_RC_OK(AudioMixBufWriteCirc(&child, &samples, sizeof(samples), & written));555 RTTESTI_CHECK_MSG( written == cSamplesChild, ("Child: Expected %RU32 written samples, got %RU32\n", cSamplesChild, written));556 RTTESTI_CHECK_RC_OK(AudioMixBufMixToParent(&child, written, &mixed));557 558 cSamples Read = 0;554 RTTESTI_CHECK_RC_OK(AudioMixBufWriteCirc(&child, &samples, sizeof(samples), &cSamplesWritten)); 555 RTTESTI_CHECK_MSG(cSamplesWritten == cSamplesChild, ("Child: Expected %RU32 written samples, got %RU32\n", cSamplesChild, cSamplesWritten)); 556 RTTESTI_CHECK_RC_OK(AudioMixBufMixToParent(&child, cSamplesWritten, &cSamplesMixed)); 557 558 cSamplesTotalRead = 0; 559 559 for (;;) 560 560 { 561 RTTESTI_CHECK_RC_OK_BREAK(AudioMixBufReadCirc(&parent, achBuf, cbBuf, & read));562 if (! read)561 RTTESTI_CHECK_RC_OK_BREAK(AudioMixBufReadCirc(&parent, achBuf, cbBuf, &cSamplesRead)); 562 if (!cSamplesRead) 563 563 break; 564 cSamples Read += read;565 AudioMixBufFinish(&parent, read);566 } 567 RTTESTI_CHECK_MSG(cSamples Read == cSamplesParent, ("Parent: Expected %RU32 mixed samples, got %RU32\n", cSamplesParent, cSamplesRead));564 cSamplesTotalRead += cSamplesRead; 565 AudioMixBufFinish(&parent, cSamplesRead); 566 } 567 RTTESTI_CHECK_MSG(cSamplesTotalRead == cSamplesParent, ("Parent: Expected %RU32 mixed samples, got %RU32\n", cSamplesParent, cSamplesTotalRead)); 568 568 569 569 /* Check that at -6dB the sample values are halved. */
Note:
See TracChangeset
for help on using the changeset viewer.