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

void Impala::Core::VideoSet::Mpeg7Doc::AddShot ( DOMNode segment  )  [inline, private]

Definition at line 696 of file Mpeg7Doc.h.

References Impala::atof(), Impala::Util::XmlDoc::GetAttributeValue(), Impala::Util::XmlDoc::GetChildNode(), Impala::Util::XmlDoc::GetElementValue(), GetMediaDuration(), GetMediaTimePoint(), GetTemporalDecomposition(), ILOG_DEBUG, mAnnoFileName, mAnnotation, mConfidence, mEndFrame, mKeyframeFrame, mKeyframeName, mOriginalHadKeyframes, mRelevance, mShotName, and mStartFrame.

00697     {
00698         String id = GetAttributeValue(segment, "id");
00699         ILOG_DEBUG("shot id = " << id);
00700         mShotName.push_back(id);
00701         DOMNode* textAnno = GetChildNode(segment, "TextAnnotation", false);
00702         if (textAnno)
00703         {
00704             String rel = GetAttributeValue(textAnno, "relevance");
00705             mRelevance.push_back(atof(rel));
00706             String conf = GetAttributeValue(textAnno, "confidence");
00707             mConfidence.push_back(atof(conf));
00708             String anno;
00709             DOMNode* freeText = GetChildNode(textAnno, "FreeTextAnnotation",
00710                                              false);
00711             if (freeText)
00712             {
00713                 anno = GetElementValue(freeText);
00714             }
00715             else
00716             {
00717                 DOMNode* keyAnno = GetChildNode(textAnno, "KeywordAnnotation",
00718                                                 true);
00719                 DOMNode* keyWord = GetChildNode(keyAnno, "Keyword", true);
00720                 anno = GetElementValue(keyWord);
00721             }
00722             mAnnotation.push_back(anno);
00723             mAnnoFileName = anno;
00724         }
00725         else
00726         {
00727             mAnnoFileName = "";
00728         }
00729         DOMNode* mediaTime = GetChildNode(segment, "MediaTime", true);
00730         long frame = GetMediaTimePoint(mediaTime);
00731         long duration = GetMediaDuration(mediaTime);
00732         mStartFrame.push_back(frame);
00733         mEndFrame.push_back(frame + duration - 1);
00734 
00735         std::vector<String> keyframeNames;
00736         std::vector<int> keyframeFrames;
00737         DOMNode* td = GetChildNode(segment, "TemporalDecomposition", false);
00738         if (td)
00739         {
00740             mOriginalHadKeyframes = true;
00741             GetTemporalDecomposition(td, keyframeNames, keyframeFrames);
00742         }
00743         else
00744         {
00745             mOriginalHadKeyframes = false;
00746             keyframeNames.push_back(id + "_RKF");
00747             keyframeFrames.push_back(frame + duration/2);
00748         }
00749         mKeyframeName.push_back(keyframeNames);
00750         mKeyframeFrame.push_back(keyframeFrames);
00751     }

Here is the call graph for this function:


Generated on Fri Mar 19 11:30:49 2010 for ImpalaSrc by  doxygen 1.5.1