Home || Architecture || Video Search || Visual Search || Scripts || Applications || Important Messages || OGL || Src

virtual void Impala::Application::SDash::VideoPlayerListener::OnNewFrame ( VideoJpgPlayer src,
int  frameNr,
void *  userData 
) [inline, virtual]

Reimplemented from Impala::Visualization::VideoJpgPlayerListener.

Definition at line 39 of file VideoPlayerListener.h.

References Impala::Application::SDash::RegionsOfInterestInfo::GetFrameHeight(), OglGui::View::GetImage(), Impala::Application::SDash::RegionsOfInterestInfo::GetRoisScaled(), mDetectedPersons, mVideoId, mVideos, Impala::Application::SDash::VideoPlayerView::SetFrameNr(), Impala::Application::SDash::VideoPlayerView::SetRegionsOfInterest(), Impala::Application::SDash::VideoPlayerView::SetRoiNr(), and Impala::Application::SDash::VideoPlayerView::SetVideoId().

00040     {
00041         VideoPlayerView* theView = (VideoPlayerView*) userData;
00042 
00043         static const int imageWidth = theView->GetImage()->w;
00044         static const int imageHeight = theView->GetImage()->h;
00045         static const float scale = (float) imageHeight / (float) mDetectedPersons.GetFrameHeight();
00046 
00047         std::vector<RegionsOfInterestInfo::ScaledRegion> regions;
00048         if (!mVideos[mVideoId].IsMovementFrame(frameNr))
00049             regions = mDetectedPersons.GetRoisScaled(mVideoId, frameNr, scale); // SK: correct for frame start nr
00050         //else
00051         //    printf("no roi's displayed for movement frame %i of video %i\n", frameNr, mVideoId);
00052 
00053         // normalize every frame once (and not on every display event!)
00054         int nrOfRegions = regions.size();
00055         for (int i = 0; i < nrOfRegions; i++)
00056         {
00057             RegionsOfInterestInfo::ScaledRegion& region = regions[i];
00058             region.left = region.left / imageWidth;
00059             region.top = region.top / imageHeight;
00060             region.width = region.width / imageWidth;
00061             region.height = region.height / imageHeight;
00062         }
00063 
00064         theView->SetVideoId(mVideoId);
00065         theView->SetFrameNr(frameNr);
00066         theView->SetRegionsOfInterest(regions);
00067         theView->SetRoiNr(-1);
00068     }

Here is the call graph for this function:


Generated on Fri Mar 19 10:50:32 2010 for ImpalaSrc by  doxygen 1.5.1