diff options
author | James Dong <jdong@google.com> | 2010-11-16 14:04:54 -0800 |
---|---|---|
committer | James Dong <jdong@google.com> | 2010-11-18 14:12:24 -0800 |
commit | c7fc37a3dab9bd1f96713649f351b5990e6316ff (patch) | |
tree | bd8cb4ea7521967152650311b485d2d0e6b3bcf2 /media/libstagefright/WAVExtractor.cpp | |
parent | 17468ee8dbfe5eb0b9a4f72be80cbb92a5134800 (diff) | |
download | frameworks_av-c7fc37a3dab9bd1f96713649f351b5990e6316ff.zip frameworks_av-c7fc37a3dab9bd1f96713649f351b5990e6316ff.tar.gz frameworks_av-c7fc37a3dab9bd1f96713649f351b5990e6316ff.tar.bz2 |
64-bit file size/offset support for media framework
Change-Id: I3452bc2c0f1d990cc67285df2fce1f9f86ff8e10
Diffstat (limited to 'media/libstagefright/WAVExtractor.cpp')
-rw-r--r-- | media/libstagefright/WAVExtractor.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/media/libstagefright/WAVExtractor.cpp b/media/libstagefright/WAVExtractor.cpp index aff06bc..446021c 100644 --- a/media/libstagefright/WAVExtractor.cpp +++ b/media/libstagefright/WAVExtractor.cpp @@ -51,7 +51,7 @@ struct WAVSource : public MediaSource { const sp<MetaData> &meta, uint16_t waveFormat, int32_t bitsPerSample, - off_t offset, size_t size); + off64_t offset, size_t size); virtual status_t start(MetaData *params = NULL); virtual status_t stop(); @@ -72,11 +72,11 @@ private: int32_t mSampleRate; int32_t mNumChannels; int32_t mBitsPerSample; - off_t mOffset; + off64_t mOffset; size_t mSize; bool mStarted; MediaBufferGroup *mGroup; - off_t mCurrentPos; + off64_t mCurrentPos; WAVSource(const WAVSource &); WAVSource &operator=(const WAVSource &); @@ -139,7 +139,7 @@ status_t WAVExtractor::init() { size_t totalSize = U32_LE_AT(&header[4]); - off_t offset = 12; + off64_t offset = 12; size_t remainingSize = totalSize; while (remainingSize >= 8) { uint8_t chunkHeader[8]; @@ -251,7 +251,7 @@ WAVSource::WAVSource( const sp<MetaData> &meta, uint16_t waveFormat, int32_t bitsPerSample, - off_t offset, size_t size) + off64_t offset, size_t size) : mDataSource(dataSource), mMeta(meta), mWaveFormat(waveFormat), @@ -335,7 +335,7 @@ status_t WAVSource::read( mBitsPerSample == 8 ? kMaxFrameSize / 2 : kMaxFrameSize; size_t maxBytesAvailable = - (mCurrentPos - mOffset >= (off_t)mSize) + (mCurrentPos - mOffset >= (off64_t)mSize) ? 0 : mSize - (mCurrentPos - mOffset); if (maxBytesToRead > maxBytesAvailable) { |