enum ControllerTransports { TCP, Serial, TransportsCount };\r
enum ControllerProtocols { AMCP, CII, CLOCK, ProtocolsCount };\r
\r
-const TCHAR* Application::versionString_(TEXT("CG 1.8.2.8"));\r
+const TCHAR* Application::versionString_(TEXT("CG 1.8.2.9"));\r
const TCHAR* Application::serviceName_(TEXT("Caspar service"));\r
\r
Application::Application(const tstring& cmdline, HINSTANCE hInstance) : hInstance_(hInstance), logLevel_(2), logDir_(TEXT("log")), \r
memset(dest, 0, size*2);\r
std::for_each(frame_audio_data.begin(), frame_audio_data.end(), [&](const audio::AudioDataChunkPtr& chunk)\r
{\r
- BLUE_UINT16* src = reinterpret_cast<BLUE_UINT16*>(chunk->GetDataPtr());\r
- for(size_t n = 0; n < size; ++n)\r
- dest[n] = static_cast<BLUE_UINT16>(static_cast<BLUE_UINT32>(dest[n])+static_cast<BLUE_UINT32>(src[n]));\r
+ if(chunk->GetLength() == size*2)\r
+ {\r
+ BLUE_UINT16* src = reinterpret_cast<BLUE_UINT16*>(chunk->GetDataPtr());\r
+ for(size_t n = 0; n < size; ++n)\r
+ dest[n] = static_cast<BLUE_UINT16>(static_cast<BLUE_UINT32>(dest[n])+static_cast<BLUE_UINT32>(src[n]));\r
+ }\r
});\r
}\r
\r
pResultFrame = pStrategy_->GetReservedFrame();\r
if(pResultFrame) {\r
utils::image::PreOver(pResultFrame->GetDataPtr(), pVideoFrame->GetDataPtr(), pCGFrame->GetDataPtr(), pResultFrame->GetDataSize());\r
+ pResultFrame->GetAudioData().insert(pResultFrame->GetAudioData().end(), pVideoFrame->GetAudioData().begin(), pVideoFrame->GetAudioData().end());\r
+ pResultFrame->GetAudioData().insert(pResultFrame->GetAudioData().end(), pCGFrame->GetAudioData().begin(), pCGFrame->GetAudioData().end());\r
}\r
}\r
else\r