summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/rtsp/APacketSource.h
diff options
context:
space:
mode:
authorAndreas Huber <andih@google.com>2010-08-27 13:29:08 -0700
committerAndreas Huber <andih@google.com>2010-08-27 13:29:08 -0700
commit8d342970108926c4ea355c90d26a2a353ec0fd47 (patch)
tree6ff39167defd677f8a31b3d8887481ad65a88b87 /media/libstagefright/rtsp/APacketSource.h
parentcc6adf524c1bb3bfaa5be464b50b8bcca899761c (diff)
downloadframeworks_av-8d342970108926c4ea355c90d26a2a353ec0fd47.zip
frameworks_av-8d342970108926c4ea355c90d26a2a353ec0fd47.tar.gz
frameworks_av-8d342970108926c4ea355c90d26a2a353ec0fd47.tar.bz2
Better support for rtsp (normal play-)time display. Better seek support, timeout if no packets arrive for too long.
Change-Id: Id491541a6ae501604cda815f8e961a3bfe26db7d related-to-bug: 2556656
Diffstat (limited to 'media/libstagefright/rtsp/APacketSource.h')
-rw-r--r--media/libstagefright/rtsp/APacketSource.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/media/libstagefright/rtsp/APacketSource.h b/media/libstagefright/rtsp/APacketSource.h
index 197af3e..3833ab1 100644
--- a/media/libstagefright/rtsp/APacketSource.h
+++ b/media/libstagefright/rtsp/APacketSource.h
@@ -45,6 +45,11 @@ struct APacketSource : public MediaSource {
void flushQueue();
+ int64_t getNormalPlayTimeUs();
+
+ void setNormalPlayTimeMapping(
+ uint32_t rtpTime, int64_t normalPlayTimeUs);
+
protected:
virtual ~APacketSource();
@@ -58,6 +63,15 @@ private:
List<sp<ABuffer> > mBuffers;
status_t mEOSResult;
+ uint32_t mClockRate;
+
+ uint32_t mRTPTimeBase;
+ int64_t mNormalPlayTimeBaseUs;
+
+ int64_t mLastNormalPlayTimeUs;
+
+ void updateNormalPlayTime_l(const sp<ABuffer> &buffer);
+
DISALLOW_EVIL_CONSTRUCTORS(APacketSource);
};