Loading media/ndk/fuzzer/NdkMediaCodecFuzzerBase.h +5 −0 Original line number Original line Diff line number Diff line Loading @@ -46,6 +46,11 @@ class NdkMediaCodecFuzzerBase { AMediaCodec* createCodec(bool isEncoder, bool isCodecForClient); AMediaCodec* createCodec(bool isEncoder, bool isCodecForClient); AMediaFormat* getCodecFormat() { return mFormat; }; AMediaFormat* getCodecFormat() { return mFormat; }; void setFdp(FuzzedDataProvider* fdp) { mFdp = fdp; } void setFdp(FuzzedDataProvider* fdp) { mFdp = fdp; } ~NdkMediaCodecFuzzerBase() { if (mFormat) { AMediaFormat_delete(mFormat); } } private: private: AMediaCodec* createAMediaCodecByname(bool isEncoder, bool isCodecForClient); AMediaCodec* createAMediaCodecByname(bool isEncoder, bool isCodecForClient); Loading media/ndk/fuzzer/ndk_sync_codec_fuzzer.cpp +1 −5 Original line number Original line Diff line number Diff line Loading @@ -41,14 +41,13 @@ class NdkSyncCodecFuzzer : public NdkMediaCodecFuzzerBase { void NdkSyncCodecFuzzer::invokekSyncCodecAPIs(bool isEncoder) { void NdkSyncCodecFuzzer::invokekSyncCodecAPIs(bool isEncoder) { ANativeWindow* nativeWindow = nullptr; ANativeWindow* nativeWindow = nullptr; AMediaFormat* format = getCodecFormat(); int32_t numOfFrames = mFdp.ConsumeIntegralInRange<size_t>(kMinIterations, kMaxIterations); int32_t numOfFrames = mFdp.ConsumeIntegralInRange<size_t>(kMinIterations, kMaxIterations); int32_t count = 0; int32_t count = 0; while (++count <= numOfFrames) { while (++count <= numOfFrames) { int32_t ndkcodecAPI = mFdp.ConsumeIntegralInRange<size_t>(kMinAPICase, kMaxNdkCodecAPIs); int32_t ndkcodecAPI = mFdp.ConsumeIntegralInRange<size_t>(kMinAPICase, kMaxNdkCodecAPIs); switch (ndkcodecAPI) { switch (ndkcodecAPI) { case 0: { // configure the codec case 0: { // configure the codec AMediaCodec_configure(mCodec, format, nativeWindow, nullptr /* crypto */, AMediaCodec_configure(mCodec, getCodecFormat(), nativeWindow, nullptr /* crypto */, (isEncoder ? AMEDIACODEC_CONFIGURE_FLAG_ENCODE : 0)); (isEncoder ? AMEDIACODEC_CONFIGURE_FLAG_ENCODE : 0)); break; break; } } Loading Loading @@ -119,9 +118,6 @@ void NdkSyncCodecFuzzer::invokekSyncCodecAPIs(bool isEncoder) { if (nativeWindow) { if (nativeWindow) { ANativeWindow_release(nativeWindow); ANativeWindow_release(nativeWindow); } } if (format) { AMediaFormat_delete(format); } } } void NdkSyncCodecFuzzer::invokeSyncCodeConfigAPI() { void NdkSyncCodecFuzzer::invokeSyncCodeConfigAPI() { Loading Loading
media/ndk/fuzzer/NdkMediaCodecFuzzerBase.h +5 −0 Original line number Original line Diff line number Diff line Loading @@ -46,6 +46,11 @@ class NdkMediaCodecFuzzerBase { AMediaCodec* createCodec(bool isEncoder, bool isCodecForClient); AMediaCodec* createCodec(bool isEncoder, bool isCodecForClient); AMediaFormat* getCodecFormat() { return mFormat; }; AMediaFormat* getCodecFormat() { return mFormat; }; void setFdp(FuzzedDataProvider* fdp) { mFdp = fdp; } void setFdp(FuzzedDataProvider* fdp) { mFdp = fdp; } ~NdkMediaCodecFuzzerBase() { if (mFormat) { AMediaFormat_delete(mFormat); } } private: private: AMediaCodec* createAMediaCodecByname(bool isEncoder, bool isCodecForClient); AMediaCodec* createAMediaCodecByname(bool isEncoder, bool isCodecForClient); Loading
media/ndk/fuzzer/ndk_sync_codec_fuzzer.cpp +1 −5 Original line number Original line Diff line number Diff line Loading @@ -41,14 +41,13 @@ class NdkSyncCodecFuzzer : public NdkMediaCodecFuzzerBase { void NdkSyncCodecFuzzer::invokekSyncCodecAPIs(bool isEncoder) { void NdkSyncCodecFuzzer::invokekSyncCodecAPIs(bool isEncoder) { ANativeWindow* nativeWindow = nullptr; ANativeWindow* nativeWindow = nullptr; AMediaFormat* format = getCodecFormat(); int32_t numOfFrames = mFdp.ConsumeIntegralInRange<size_t>(kMinIterations, kMaxIterations); int32_t numOfFrames = mFdp.ConsumeIntegralInRange<size_t>(kMinIterations, kMaxIterations); int32_t count = 0; int32_t count = 0; while (++count <= numOfFrames) { while (++count <= numOfFrames) { int32_t ndkcodecAPI = mFdp.ConsumeIntegralInRange<size_t>(kMinAPICase, kMaxNdkCodecAPIs); int32_t ndkcodecAPI = mFdp.ConsumeIntegralInRange<size_t>(kMinAPICase, kMaxNdkCodecAPIs); switch (ndkcodecAPI) { switch (ndkcodecAPI) { case 0: { // configure the codec case 0: { // configure the codec AMediaCodec_configure(mCodec, format, nativeWindow, nullptr /* crypto */, AMediaCodec_configure(mCodec, getCodecFormat(), nativeWindow, nullptr /* crypto */, (isEncoder ? AMEDIACODEC_CONFIGURE_FLAG_ENCODE : 0)); (isEncoder ? AMEDIACODEC_CONFIGURE_FLAG_ENCODE : 0)); break; break; } } Loading Loading @@ -119,9 +118,6 @@ void NdkSyncCodecFuzzer::invokekSyncCodecAPIs(bool isEncoder) { if (nativeWindow) { if (nativeWindow) { ANativeWindow_release(nativeWindow); ANativeWindow_release(nativeWindow); } } if (format) { AMediaFormat_delete(format); } } } void NdkSyncCodecFuzzer::invokeSyncCodeConfigAPI() { void NdkSyncCodecFuzzer::invokeSyncCodeConfigAPI() { Loading