Changeset 65 for trunk/Utilities/GeneratePcmWavFile/GeneratePcmWavFile.cpp
- Timestamp:
- May 22, 2012, 11:31:40 AM (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Utilities/GeneratePcmWavFile/GeneratePcmWavFile.cpp
r27 r65 239 239 for(SIZE_T nIndex = 0; nIndex < nDataSize; nIndex += pWaveFormatEx->nBlockAlign, nSampleIndex++) 240 240 { 241 #pragma region Per-channel Frequencies and Amplitudes 242 if(FALSE) 243 { 244 const DOUBLE pfSignalFrequencies[5] = { 1000, 1000, 1000, 1000, 1000 }; 245 const DOUBLE pfSignalAmplitudes[5] = { m_fSignalAmplitude, 0, 0, 0, 0 }; 246 SHORT* pnSampleData = (SHORT*) (Properties.pbBuffer + nIndex); 247 for(WORD nChannelIndex = 0; nChannelIndex < pWaveFormatEx->nChannels; nChannelIndex++) 248 { 249 const DOUBLE fSignalPeriod = (DOUBLE) pWaveFormatEx->nSamplesPerSec / pfSignalFrequencies[nChannelIndex]; 250 const DOUBLE fSignalAmplitude = pfSignalAmplitudes[nChannelIndex]; 251 const SHORT nValue = (SHORT) (fSignalAmplitude * sin(2 * M_PI * (ThreadContext.m_nCurrentSampleIndex + nSampleIndex) / fSignalPeriod)); 252 pnSampleData[nChannelIndex] = nValue; 253 } 254 continue; 255 } 256 #pragma endregion 257 #pragma region Stream Time Coefficients 258 #if TRUE && FALSE 259 { 260 COMPILER_MESSAGE("Every 170 seconds: 50 seconds 1.0, 70 seconds 0.0, 50 seconds 1.0"); 261 #pragma region Factor 262 REFERENCE_TIME nTime = ThreadContext.m_nMediaSampleTime + nIndex * (1000 * 10000i64) / pWaveFormatEx->nAvgBytesPerSec; 263 nTime /= 1000 * 10000i64; 264 // NOTE: Every 170 seconds: 50 seconds 1.0, 70 seconds 0.0, 50 seconds 1.0 265 nTime %= 170; 266 const DOUBLE fTimeFactor = (nTime < 50 || nTime >= 120) ? 1.0 : (1.0 / 256); 267 #pragma endregion 268 const SHORT nValue = (SHORT) (m_fSignalAmplitude * sin(2 * M_PI * (ThreadContext.m_nCurrentSampleIndex + nSampleIndex) / m_fSignalPeriod)); 269 SHORT* pnSampleData = (SHORT*) (Properties.pbBuffer + nIndex); 270 for(WORD nChannelIndex = 0; nChannelIndex < pWaveFormatEx->nChannels; nChannelIndex++) 271 pnSampleData[nChannelIndex] = (SHORT) (fTimeFactor * nValue); 272 continue; 273 } 274 #endif // TRUE 275 #pragma endregion 241 276 const SHORT nValue = (SHORT) (m_fSignalAmplitude * sin(2 * M_PI * (ThreadContext.m_nCurrentSampleIndex + nSampleIndex) / m_fSignalPeriod)); 242 277 SHORT* pnSampleData = (SHORT*) (Properties.pbBuffer + nIndex);
Note: See TracChangeset
for help on using the changeset viewer.