diff options
Diffstat (limited to 'media/libavextensions/stagefright/AVExtensions.h')
-rw-r--r-- | media/libavextensions/stagefright/AVExtensions.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/media/libavextensions/stagefright/AVExtensions.h b/media/libavextensions/stagefright/AVExtensions.h index 9474d19..f14d217 100644 --- a/media/libavextensions/stagefright/AVExtensions.h +++ b/media/libavextensions/stagefright/AVExtensions.h @@ -189,8 +189,31 @@ struct AVUtils { HEVCMuxer() {}; virtual ~HEVCMuxer() {}; friend struct AVUtils; + + private: + struct HEVCParamSet { + HEVCParamSet(uint16_t length, const uint8_t *data) + : mLength(length), mData(data) {} + + uint16_t mLength; + const uint8_t *mData; + }; + + status_t extractNALRBSPData(const uint8_t *data, size_t size, + uint8_t **header, bool *alreadyFilled); + + status_t parserProfileTierLevel(const uint8_t *data, size_t size, + uint8_t **header, bool *alreadyFilled); + + const uint8_t *parseHEVCParamSet(const uint8_t *data, size_t length, + List<HEVCParamSet> ¶mSetList, size_t *paramSetLen); + + size_t parseHEVCCodecSpecificData(const uint8_t *data, size_t size, + List<HEVCParamSet> &vidParamSet, List<HEVCParamSet> &seqParamSet, + List<HEVCParamSet> &picParamSet ); }; + virtual inline HEVCMuxer& HEVCMuxerUtils() { return mHEVCMuxer; } |