diff options
author | Marco Nelissen <marcone@google.com> | 2014-05-14 11:12:46 -0700 |
---|---|---|
committer | Marco Nelissen <marcone@google.com> | 2014-05-14 15:18:40 -0700 |
commit | 3425fd5a55dd31e261d2f2a9590c762d6d0a6b79 (patch) | |
tree | efd531cb9f1ce0f44e41584f3f6e70d8ea566308 /media/ndk/NdkMediaCodec.cpp | |
parent | 7edda7ac8b86f2493b7df945e9f63da947124288 (diff) | |
download | frameworks_av-3425fd5a55dd31e261d2f2a9590c762d6d0a6b79.zip frameworks_av-3425fd5a55dd31e261d2f2a9590c762d6d0a6b79.tar.gz frameworks_av-3425fd5a55dd31e261d2f2a9590c762d6d0a6b79.tar.bz2 |
Only export necessary symbols
Change-Id: I869d7124c8cc555f4b09801a898f4dd3ecb072ec
Diffstat (limited to 'media/ndk/NdkMediaCodec.cpp')
-rw-r--r-- | media/ndk/NdkMediaCodec.cpp | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/media/ndk/NdkMediaCodec.cpp b/media/ndk/NdkMediaCodec.cpp index ac05920..a7c06d5 100644 --- a/media/ndk/NdkMediaCodec.cpp +++ b/media/ndk/NdkMediaCodec.cpp @@ -159,19 +159,22 @@ static AMediaCodec * createAMediaCodec(const char *name, bool name_is_type, bool return mData; } - +EXPORT AMediaCodec* AMediaCodec_createCodecByName(const char *name) { return createAMediaCodec(name, false, false); } +EXPORT AMediaCodec* AMediaCodec_createDecoderByType(const char *mime_type) { return createAMediaCodec(mime_type, true, false); } +EXPORT AMediaCodec* AMediaCodec_createEncoderByType(const char *name) { return createAMediaCodec(name, true, true); } +EXPORT int AMediaCodec_delete(AMediaCodec *mData) { if (mData->mCodec != NULL) { mData->mCodec->release(); @@ -187,6 +190,7 @@ int AMediaCodec_delete(AMediaCodec *mData) { return OK; } +EXPORT int AMediaCodec_configure( AMediaCodec *mData, const AMediaFormat* format, @@ -205,6 +209,7 @@ int AMediaCodec_configure( crypto ? crypto->mCrypto : NULL, flags)); } +EXPORT int AMediaCodec_start(AMediaCodec *mData) { status_t ret = mData->mCodec->start(); if (ret != OK) { @@ -216,6 +221,7 @@ int AMediaCodec_start(AMediaCodec *mData) { return OK; } +EXPORT int AMediaCodec_stop(AMediaCodec *mData) { int ret = translate_error(mData->mCodec->stop()); @@ -227,10 +233,12 @@ int AMediaCodec_stop(AMediaCodec *mData) { return ret; } +EXPORT int AMediaCodec_flush(AMediaCodec *mData) { return translate_error(mData->mCodec->flush()); } +EXPORT ssize_t AMediaCodec_dequeueInputBuffer(AMediaCodec *mData, int64_t timeoutUs) { size_t idx; status_t ret = mData->mCodec->dequeueInputBuffer(&idx, timeoutUs); @@ -241,6 +249,7 @@ ssize_t AMediaCodec_dequeueInputBuffer(AMediaCodec *mData, int64_t timeoutUs) { return translate_error(ret); } +EXPORT uint8_t* AMediaCodec_getInputBuffer(AMediaCodec *mData, size_t idx, size_t *out_size) { android::Vector<android::sp<android::ABuffer> > abufs; if (mData->mCodec->getInputBuffers(&abufs) == 0) { @@ -258,6 +267,7 @@ uint8_t* AMediaCodec_getInputBuffer(AMediaCodec *mData, size_t idx, size_t *out_ return NULL; } +EXPORT uint8_t* AMediaCodec_getOutputBuffer(AMediaCodec *mData, size_t idx, size_t *out_size) { android::Vector<android::sp<android::ABuffer> > abufs; if (mData->mCodec->getOutputBuffers(&abufs) == 0) { @@ -275,6 +285,7 @@ uint8_t* AMediaCodec_getOutputBuffer(AMediaCodec *mData, size_t idx, size_t *out return NULL; } +EXPORT int AMediaCodec_queueInputBuffer(AMediaCodec *mData, size_t idx, off_t offset, size_t size, uint64_t time, uint32_t flags) { @@ -283,6 +294,7 @@ int AMediaCodec_queueInputBuffer(AMediaCodec *mData, return translate_error(ret); } +EXPORT ssize_t AMediaCodec_dequeueOutputBuffer(AMediaCodec *mData, AMediaCodecBufferInfo *info, int64_t timeoutUs) { size_t idx; @@ -312,12 +324,14 @@ ssize_t AMediaCodec_dequeueOutputBuffer(AMediaCodec *mData, return translate_error(ret); } +EXPORT AMediaFormat* AMediaCodec_getOutputFormat(AMediaCodec *mData) { sp<AMessage> format; mData->mCodec->getOutputFormat(&format); return AMediaFormat_fromMsg(&format); } +EXPORT int AMediaCodec_releaseOutputBuffer(AMediaCodec *mData, size_t idx, bool render) { if (render) { return translate_error(mData->mCodec->renderOutputBufferAndRelease(idx)); @@ -326,6 +340,7 @@ int AMediaCodec_releaseOutputBuffer(AMediaCodec *mData, size_t idx, bool render) } } +EXPORT int AMediaCodec_setNotificationCallback(AMediaCodec *mData, OnCodecEvent callback, void *userdata) { mData->mCallback = callback; mData->mCallbackUserData = userdata; @@ -341,6 +356,7 @@ typedef struct AMediaCodecCryptoInfo { size_t *encryptedbytes; } AMediaCodecCryptoInfo; +EXPORT int AMediaCodec_queueSecureInputBuffer( AMediaCodec* codec, size_t idx, @@ -375,6 +391,7 @@ int AMediaCodec_queueSecureInputBuffer( +EXPORT AMediaCodecCryptoInfo *AMediaCodecCryptoInfo_new( int numsubsamples, uint8_t key[16], @@ -406,15 +423,18 @@ AMediaCodecCryptoInfo *AMediaCodecCryptoInfo_new( } +EXPORT int AMediaCodecCryptoInfo_delete(AMediaCodecCryptoInfo* info) { free(info); return OK; } +EXPORT size_t AMediaCodecCryptoInfo_getNumSubSamples(AMediaCodecCryptoInfo* ci) { return ci->numsubsamples; } +EXPORT int AMediaCodecCryptoInfo_getKey(AMediaCodecCryptoInfo* ci, uint8_t *dst) { if (!dst || !ci) { return AMEDIAERROR_UNSUPPORTED; @@ -423,6 +443,7 @@ int AMediaCodecCryptoInfo_getKey(AMediaCodecCryptoInfo* ci, uint8_t *dst) { return OK; } +EXPORT int AMediaCodecCryptoInfo_getIV(AMediaCodecCryptoInfo* ci, uint8_t *dst) { if (!dst || !ci) { return AMEDIAERROR_UNSUPPORTED; @@ -431,6 +452,7 @@ int AMediaCodecCryptoInfo_getIV(AMediaCodecCryptoInfo* ci, uint8_t *dst) { return OK; } +EXPORT uint32_t AMediaCodecCryptoInfo_getMode(AMediaCodecCryptoInfo* ci) { if (!ci) { return AMEDIAERROR_UNSUPPORTED; @@ -438,6 +460,7 @@ uint32_t AMediaCodecCryptoInfo_getMode(AMediaCodecCryptoInfo* ci) { return ci->mode; } +EXPORT int AMediaCodecCryptoInfo_getClearBytes(AMediaCodecCryptoInfo* ci, size_t *dst) { if (!dst || !ci) { return AMEDIAERROR_UNSUPPORTED; @@ -446,6 +469,7 @@ int AMediaCodecCryptoInfo_getClearBytes(AMediaCodecCryptoInfo* ci, size_t *dst) return OK; } +EXPORT int AMediaCodecCryptoInfo_getEncryptedBytes(AMediaCodecCryptoInfo* ci, size_t *dst) { if (!dst || !ci) { return AMEDIAERROR_UNSUPPORTED; |