int WriteWavHeader(char* buff, WAVEFORMAT* p)
{
unsigned long* pU =(unsigned long*)buff;
memset((unsigned char*)pU, 0, 44);
*pU++ = 1179011410; //RIFF
*pU++ = 0xffffffff;//File Length
*pU++ = 1163280727;//WAVE
*pU++ = 544501094; //fmt
*pU++ = sizeof(WAVEFORMAT);//Size of fmt
memcpy((unsigned char*)pU,p,sizeof(WAVEFORMAT));
pU+=4;//Increamenting Wave format size 16 byte
*pU++ = 1635017060;//data
*pU++ = 0xffffffcf;// data chunk size
return 44;
}
Could you add some #defines for those magic numbers and add
a comment about where you find them (docs) and what they
mean.
m_pWriteList = new CHXSimpleList();
m_pWriteList is never deleted.
IHXScheduler* m_pScheduler;
Your class inherits from CHXAudioDevice. CHXAudioDevice
already
has a member var called m_pScheduler. Please rename this or
remove and verify no leaks occur.
HX_RESULT CAudioOutBrew::_Imp_CheckFormat( const
HXAudioFormat* pFormat )
{
return HXR_OK;
}
Does Brew audio device actually support *EVERY* format?
Returning
HXR_OK from this function will make the core use the native
format
of the clip regardless of what it is. This function is what
is used
to negotiate the format of the PCM data that is sent to the
audio
device.
INT32 Exhausted();
Is that actually used anywhere? Do we need it?
uint32 _HXBrewPCMRenderer::GetCurrentTime()
{
return GetTickCount() - m_uistart;
}
Is there no way to compute the current time via bytes
played
or some other mechanism that comes from the audio data
itself
and not the system clock? The problem is that for LONG
duration
clips, the audio and video *will* get out of sync using the
system time. If this is only supporting audio playback,
then
it isn't a big deal but you should keep it in mind.
rest looks good.
--greg.
Gurpreet wrote:
> Synopsis:
> Multiple changes in audio/device for supporting brew
audio device code for
> BREW SDK 3.1.5
>
> Overview:
> Adding support & code for Brew Audio Device
>
> Files Added:
> audiodevicepubplatformbrewcbrewpcm.h
> audiodevicepubplatformbrewaudBrew.h
> audiodeviceplatformbrewcbrewpcm.cpp
> audiodeviceplatformbrewaudBrew.cpp
>
> Files Modified:
> audio/device/hxaudev.cpp
>
> Image Size and Heap Use impact (Client -Only):
> None.
>
> Platforms and Profiles Affected:
> platform : brew-3.1.5-vc7-emulator (new SystemID)
> profile : helix-client-brewext-wins (new profile)
>
> Distribution Libraries Affected:
> None
>
> Distribution library impact and planned action:
> None
>
> Platforms and Profiles Build Verified:
>
> BIF branch -> hxclient_3_1_0_atlas_restricted
> Target(s) -> client_brewext (new target)
> Profile -> helix-client-brewext-wins (new
profile)
> System ID -> brew-3.1.5-vc7-emulator (new
SystemID)
>
> Branch:
> hxclient_3_1_0_atlas
>
> Files Attached:
> audio_device.txt
>
> Thanks & Best Regards
> Gurpreet
>
>
>
------------------------------------------------------------
------------
>
> _______________________________________________
> Audio-dev mailing list
> Audio-dev helixcommunity.org
> http://lists.helixcommunity.org/mailman/listinfo/audio
-dev
_______________________________________________
Audio-dev mailing list
Audio-dev helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/audio
-dev
|