Advertisement
Guest User

Untitled

a guest
Feb 23rd, 2019
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.59 KB | None | 0 0
  1. (unsigned)(unsigned char)
  2.  
  3. char* Wav::readHeader(ifstream &file)
  4. {
  5. file.read(this->chunkId, 4);
  6. file.read(reinterpret_cast<char*>(&this->chunkSize), 4);
  7. file.read(this->format, 4);
  8.  
  9. file.read(this->formatId, 4);
  10. file.read(reinterpret_cast<char*>(&this->formatSize), 4);
  11. file.read(reinterpret_cast<char*>(&this->format2), 2);
  12. file.read(reinterpret_cast<char*>(&this->numChannels), 2);
  13. file.read(reinterpret_cast<char*>(&this->sampleRate), 4);
  14. file.read(reinterpret_cast<char*>(&this->byteRate), 4);
  15. file.read(reinterpret_cast<char*>(&this->align), 2);
  16. file.read(reinterpret_cast<char*>(&this->bitsPerSample), 4);
  17.  
  18. char testing[4] = {0};
  19. int testingSize = 0;
  20.  
  21. while(file.read(testing, 4) && (testing[0] != 'd' ||
  22. testing[1] != 'a' ||
  23. testing[2] != 't' ||
  24. testing[3] != 'a'))
  25. {
  26.  
  27. file.read(reinterpret_cast<char*>(&testingSize), 4);
  28. file.seekg(testingSize, std::ios_base::cur);
  29.  
  30. }
  31.  
  32. this->dataId[0] = testing[0];
  33. this->dataId[1] = testing[1];
  34. this->dataId[2] = testing[2];
  35. this->dataId[3] = testing[3];
  36.  
  37.  
  38.  
  39. file.read(reinterpret_cast<char*>(&this->dataSize), 4);
  40.  
  41. this->data = new char[this->dataSize];
  42.  
  43. file.read(data, this->dataSize);
  44.  
  45. for(unsigned i=0; (i < 20); i++)
  46. {
  47. //cout << (unsigned)(unsigned char)data[i] << endl;
  48.  
  49. }
  50.  
  51. return (unsigned)(unsigned char) data;
  52. }
  53.  
  54. unsigned char* data = this->readHeader(file);
  55.  
  56. this->data = new char[this->dataSize];
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement