diff options
author | Andreas Huber <andih@google.com> | 2012-05-10 16:43:19 -0700 |
---|---|---|
committer | Andreas Huber <andih@google.com> | 2012-05-11 10:12:45 -0700 |
commit | eb61431af13741aa8b7e57a39f69bba5a6c190dc (patch) | |
tree | 160d4951d23a4ee5cb7d7880df3afb923dad4eb6 /include | |
parent | 240d8a84dec9f9482257a8037457a1d63193b7ff (diff) | |
download | frameworks_av-eb61431af13741aa8b7e57a39f69bba5a6c190dc.zip frameworks_av-eb61431af13741aa8b7e57a39f69bba5a6c190dc.tar.gz frameworks_av-eb61431af13741aa8b7e57a39f69bba5a6c190dc.tar.bz2 |
Increase AAC software decoder's buffer count. Refactor how clients
of ACodec get notified about codec buffers and buffer ids.
Change-Id: I962f873262dae7aa7b43f5f68a6d60268282f91e
related-to-bug: 6478823
Diffstat (limited to 'include')
-rw-r--r-- | include/media/stagefright/ACodec.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/include/media/stagefright/ACodec.h b/include/media/stagefright/ACodec.h index dd18e95..23e3110 100644 --- a/include/media/stagefright/ACodec.h +++ b/include/media/stagefright/ACodec.h @@ -56,6 +56,23 @@ struct ACodec : public AHierarchicalStateMachine { void initiateConfigureComponent(const sp<AMessage> &msg); void initiateStart(); + struct PortDescription : public RefBase { + size_t countBuffers(); + IOMX::buffer_id bufferIDAt(size_t index) const; + sp<ABuffer> bufferAt(size_t index) const; + + private: + friend struct ACodec; + + Vector<IOMX::buffer_id> mBufferIDs; + Vector<sp<ABuffer> > mBuffers; + + PortDescription(); + void addBuffer(IOMX::buffer_id id, const sp<ABuffer> &buffer); + + DISALLOW_EVIL_CONSTRUCTORS(PortDescription); + }; + protected: virtual ~ACodec(); |