From a61d8acda8ad5b3a5ec4971e8d4d5a42be459d35 Mon Sep 17 00:00:00 2001 From: fcolin Date: Thu, 1 Feb 2007 13:06:33 +0000 Subject: Utilisateur : Fcolin Date : 27/02/04 Heure : 15:59 Archivé dans $/Bus/IvyAudioMon Commentaire: (vss 2) --- IvyAudioMon/MeterDlg.cpp | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) (limited to 'IvyAudioMon/MeterDlg.cpp') diff --git a/IvyAudioMon/MeterDlg.cpp b/IvyAudioMon/MeterDlg.cpp index 2962d7b..1039fee 100644 --- a/IvyAudioMon/MeterDlg.cpp +++ b/IvyAudioMon/MeterDlg.cpp @@ -13,6 +13,8 @@ #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif + + const char * CONVSTR( const CString& str ) { #ifdef UNDER_CE @@ -264,18 +266,22 @@ void CALLBACK CMeterDlg::recordCallBack(HWAVEIN hWaveIn, UINT uMsg, DWORD dwInst } void CALLBACK CMeterDlg::recordCB(HWAVEIN hWaveIn, UINT uMsg, DWORD dwInstance, DWORD dwParam1, DWORD dwParam2) { + WAVEHDR *waveHeader = (WAVEHDR*)dwParam1; float lVal =0; switch ( uMsg ) { case WIM_OPEN: - //TRACE("WIM_OPEN\n"); + TRACE("WIM_OPEN\n"); break; case WIM_DATA: - for ( DWORD i = 0; i < WaveHeader.dwBytesRecorded; i++ ) - lVal += ( signed char )WaveHeader.lpData[i]; - lVal /= WaveHeader.dwBytesRecorded ; - lVal += 127; - //TRACE("WIM_DATA %d %d %f\n",WaveHeader.dwBufferLength,WaveHeader.dwBytesRecorded,lVal); + for ( DWORD i = 0; i < waveHeader->dwBytesRecorded; i++ ) + { + //TRACE("WIM_DATA[%d]= %02x\n",i,waveHeader->lpData[i]); + lVal += abs( (float)( unsigned char )waveHeader->lpData[i] - 127.0f) ; + } + lVal /= waveHeader->dwBytesRecorded ; + lVal *= 2; + TRACE("WIM_DATA %d %d %f\n",waveHeader->dwBufferLength,waveHeader->dwBytesRecorded,lVal); nb_buffers++; peekValue = max( peekValue, lVal ); // moyenne sur 1 seconde @@ -307,7 +313,7 @@ void CALLBACK CMeterDlg::recordCB(HWAVEIN hWaveIn, UINT uMsg, DWORD dwInstance, } break; case WIM_CLOSE: - //TRACE("WIM_OPEN\n"); + TRACE("WIM_CLOSE\n"); break; } } -- cgit v1.1