+ return -1;
+ ts -= getDelta(nearest->first);
+ return 0;
+}
+
+int eMPEGStreamInformation::getPTS(off_t &offset, pts_t &pts)
+{
+ std::map<off_t,pts_t>::iterator before = m_access_points.lower_bound(offset);
+
+ /* usually, we prefer the AP before the given offset. however if there is none, we take any. */
+ if (before != m_access_points.begin())
+ --before;
+
+ if (before == m_access_points.end())
+ {
+ pts = 0;
+ return -1;
+ }
+
+ offset = before->first;
+ pts = before->second - getDelta(offset);
+
+ return 0;