diff options
author | Steve Kondik <steve@cyngn.com> | 2015-12-12 21:28:57 -0800 |
---|---|---|
committer | Steve Kondik <steve@cyngn.com> | 2015-12-13 13:16:01 -0800 |
commit | 0c19cf7478f4dc10f2739bf6eefa1887a79b48cf (patch) | |
tree | db6eef718afc558b8036530512beb5f7cd5d8a27 /media/libstagefright/FLACExtractor.cpp | |
parent | 6dde130280d6ead297170211b005cc809e7f7bde (diff) | |
download | frameworks_av-0c19cf7478f4dc10f2739bf6eefa1887a79b48cf.zip frameworks_av-0c19cf7478f4dc10f2739bf6eefa1887a79b48cf.tar.gz frameworks_av-0c19cf7478f4dc10f2739bf6eefa1887a79b48cf.tar.bz2 |
stagefright: Add support for FLAC offloading
* New Qualcomm DSPs support FLAC decoding, but the offload code is
stubbed out in M. Unstub it from what used to be open source.
Change-Id: I03c129c42ebc6909a3392e42a7f96791c8fabd28
Diffstat (limited to 'media/libstagefright/FLACExtractor.cpp')
-rw-r--r-- | media/libstagefright/FLACExtractor.cpp | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/media/libstagefright/FLACExtractor.cpp b/media/libstagefright/FLACExtractor.cpp index 91f0e65..51a502d 100644 --- a/media/libstagefright/FLACExtractor.cpp +++ b/media/libstagefright/FLACExtractor.cpp @@ -32,7 +32,7 @@ #include <media/stagefright/MediaSource.h> #include <media/stagefright/MediaBuffer.h> -#ifdef ENABLE_AV_ENHANCEMENTS +#ifdef FLAC_OFFLOAD_ENABLED #include "QCMediaDefs.h" #include "QCMetaData.h" #endif @@ -93,9 +93,18 @@ public: } // stream properties + unsigned getMinBlockSize() const { + return mStreamInfo.min_blocksize; + } unsigned getMaxBlockSize() const { return mStreamInfo.max_blocksize; } + unsigned getMinFrameSize() const { + return mStreamInfo.min_framesize; + } + unsigned getMaxFrameSize() const { + return mStreamInfo.max_framesize; + } unsigned getSampleRate() const { return mStreamInfo.sample_rate; } @@ -544,6 +553,12 @@ status_t FLACParser::init() mTrackMetadata->setInt64(kKeyDuration, (getTotalSamples() * 1000000LL) / getSampleRate()); mTrackMetadata->setInt32(kKeyBitsPerSample, getBitsPerSample()); +#ifdef FLAC_OFFLOAD_ENABLED + mTrackMetadata->setInt32(kKeyMinBlkSize, getMinBlockSize()); + mTrackMetadata->setInt32(kKeyMaxBlkSize, getMaxBlockSize()); + mTrackMetadata->setInt32(kKeyMinFrmSize, getMinFrameSize()); + mTrackMetadata->setInt32(kKeyMaxFrmSize, getMaxFrameSize()); +#endif } } else { ALOGE("missing STREAMINFO"); |