/[svn]/libgig/trunk/src/DLS.cpp
ViewVC logotype

Diff of /libgig/trunk/src/DLS.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1387 by schoenebeck, Sun Sep 30 18:13:33 2007 UTC revision 1388 by persson, Sun Oct 7 11:10:02 2007 UTC
# Line 487  namespace DLS { Line 487  namespace DLS {
487              SamplerOptions = wsmp->ReadUint32();              SamplerOptions = wsmp->ReadUint32();
488              SampleLoops    = wsmp->ReadUint32();              SampleLoops    = wsmp->ReadUint32();
489          } else { // 'wsmp' chunk missing          } else { // 'wsmp' chunk missing
490              uiHeaderSize   = 0;              uiHeaderSize   = 20;
491              UnityNote      = 60;              UnityNote      = 60;
492              FineTune       = 0; // +- 0 cents              FineTune       = 0; // +- 0 cents
493              Gain           = 0; // 0 dB              Gain           = 0; // 0 dB
# Line 523  namespace DLS { Line 523  namespace DLS {
523      void Sampler::UpdateChunks() {      void Sampler::UpdateChunks() {
524          // make sure 'wsmp' chunk exists          // make sure 'wsmp' chunk exists
525          RIFF::Chunk* wsmp = pParentList->GetSubChunk(CHUNK_ID_WSMP);          RIFF::Chunk* wsmp = pParentList->GetSubChunk(CHUNK_ID_WSMP);
526            int wsmpSize = uiHeaderSize + SampleLoops * 16;
527          if (!wsmp) {          if (!wsmp) {
528              uiHeaderSize = 20;              wsmp = pParentList->AddSubChunk(CHUNK_ID_WSMP, wsmpSize);
529              wsmp = pParentList->AddSubChunk(CHUNK_ID_WSMP, uiHeaderSize + SampleLoops * 16);          } else if (wsmp->GetSize() != wsmpSize) {
530                wsmp->Resize(wsmpSize);
531          }          }
532          uint8_t* pData = (uint8_t*) wsmp->LoadChunkData();          uint8_t* pData = (uint8_t*) wsmp->LoadChunkData();
533          // update headers size          // update headers size

Legend:
Removed from v.1387  
changed lines
  Added in v.1388

  ViewVC Help
Powered by ViewVC