diff options
author | James Dong <jdong@google.com> | 2010-08-18 03:32:26 -0700 |
---|---|---|
committer | James Dong <jdong@google.com> | 2010-08-23 10:34:05 -0700 |
commit | 3f51fa78ada0e064d23db5961337280c267cc2c0 (patch) | |
tree | c85bc097a7db110f9fcb9269a100090e3f60e88c /media/libstagefright | |
parent | b80e610b070c2cec98a228a8aec450dc24a5f90a (diff) | |
download | frameworks_base-3f51fa78ada0e064d23db5961337280c267cc2c0.zip frameworks_base-3f51fa78ada0e064d23db5961337280c267cc2c0.tar.gz frameworks_base-3f51fa78ada0e064d23db5961337280c267cc2c0.tar.bz2 |
Runtime dump support for MediaWriter
Change-Id: I10b2c474de612ee4cef4b7c9eae2ee1dd8c2e895
Diffstat (limited to 'media/libstagefright')
-rw-r--r-- | media/libstagefright/MPEG4Writer.cpp | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/media/libstagefright/MPEG4Writer.cpp b/media/libstagefright/MPEG4Writer.cpp index 568037e..e36d9fe 100644 --- a/media/libstagefright/MPEG4Writer.cpp +++ b/media/libstagefright/MPEG4Writer.cpp @@ -60,6 +60,7 @@ public: bool isAudio() const { return mIsAudio; } bool isMPEG4() const { return mIsMPEG4; } void addChunkOffset(off_t offset) { mChunkOffsets.push_back(offset); } + status_t dump(int fd, const Vector<String16>& args) const; private: MPEG4Writer *mOwner; @@ -217,6 +218,37 @@ MPEG4Writer::~MPEG4Writer() { mTracks.clear(); } +status_t MPEG4Writer::dump( + int fd, const Vector<String16>& args) { + const size_t SIZE = 256; + char buffer[SIZE]; + String8 result; + snprintf(buffer, SIZE, " MPEG4Writer %p\n", this); + result.append(buffer); + snprintf(buffer, SIZE, " mStarted: %s\n", mStarted? "true": "false"); + result.append(buffer); + ::write(fd, result.string(), result.size()); + for (List<Track *>::iterator it = mTracks.begin(); + it != mTracks.end(); ++it) { + (*it)->dump(fd, args); + } + return OK; +} + +status_t MPEG4Writer::Track::dump( + int fd, const Vector<String16>& args) const { + const size_t SIZE = 256; + char buffer[SIZE]; + String8 result; + snprintf(buffer, SIZE, " %s track\n", mIsAudio? "Audio": "Video"); + result.append(buffer); + snprintf(buffer, SIZE, " reached EOS: %s\n", + mReachedEOS? "true": "false"); + result.append(buffer); + ::write(fd, result.string(), result.size()); + return OK; +} + status_t MPEG4Writer::addSource(const sp<MediaSource> &source) { Track *track = new Track(this, source); mTracks.push_back(track); |