bool BaseOutStream::Play(double absoluteTimestamp, double length) { if (_pInStream != NULL) { if (!_pInStream->SignalPlay(absoluteTimestamp, length)) { FATAL("Unable to signal play"); return false; } } return SignalPlay(absoluteTimestamp, length); }
bool BaseInStream::Play(double absoluteTimestamp, double length) { if (!SignalPlay(absoluteTimestamp, length)) { FATAL("Unable to signal play"); return false; } LinkedListNode<BaseOutStream *> *pTemp = _pOutStreams; while (pTemp != NULL) { if (!pTemp->info->SignalPlay(absoluteTimestamp, length)) { WARN("Unable to signal play on an outbound stream"); } pTemp = pTemp->pPrev; } return true; }
bool BaseInStream::Play(double dts, double length) { if (!SignalPlay(dts, length)) { FATAL("Unable to signal play"); return false; } LinkedListNode<BaseOutStream *> *pIterator = _pOutStreams; LinkedListNode<BaseOutStream *> *pCurrent = NULL; while (pIterator != NULL) { pCurrent = pIterator; pIterator = pIterator->pPrev; if (!pCurrent->info->SignalPlay(dts, length)) { WARN("Unable to signal play on an outbound stream"); } } return true; }