diff --git a/media/extractors/flac/Android.bp b/media/extractors/flac/Android.bp index 36756115aa..826c1a0ab7 100644 --- a/media/extractors/flac/Android.bp +++ b/media/extractors/flac/Android.bp @@ -9,6 +9,7 @@ cc_library { ], shared_libs: [ + "libbase", "libbinder_ndk", ], diff --git a/media/extractors/flac/FLACExtractor.cpp b/media/extractors/flac/FLACExtractor.cpp index 5329bd112f..0617e88b84 100644 --- a/media/extractors/flac/FLACExtractor.cpp +++ b/media/extractors/flac/FLACExtractor.cpp @@ -24,6 +24,7 @@ // libFLAC parser #include "FLAC/stream_decoder.h" +#include #include // for AIBinder_getCallingUid #include #include @@ -47,7 +48,8 @@ namespace android { // (Note: duplicated with WAVExtractor.cpp) static inline bool shouldExtractorOutputFloat(int bitsPerSample) { - return bitsPerSample > 16 && AIBinder_getCallingUid() == AID_MEDIA; + return bitsPerSample > 16 && AIBinder_getCallingUid() == AID_MEDIA + && android::base::GetBoolProperty("media.extractor.float", true); } class FLACParser; diff --git a/media/extractors/wav/Android.bp b/media/extractors/wav/Android.bp index 8ce5c3fa79..5d38a81672 100644 --- a/media/extractors/wav/Android.bp +++ b/media/extractors/wav/Android.bp @@ -10,6 +10,7 @@ cc_library { ], shared_libs: [ + "libbase", "libbinder_ndk", ], diff --git a/media/extractors/wav/WAVExtractor.cpp b/media/extractors/wav/WAVExtractor.cpp index 4fa7f271cf..d19447ae2c 100644 --- a/media/extractors/wav/WAVExtractor.cpp +++ b/media/extractors/wav/WAVExtractor.cpp @@ -20,6 +20,7 @@ #include "WAVExtractor.h" +#include #include // for AIBinder_getCallingUid #include #include @@ -43,7 +44,8 @@ namespace android { // (Note: duplicated with FLACExtractor.cpp) static inline bool shouldExtractorOutputFloat(int bitsPerSample) { - return bitsPerSample > 16 && AIBinder_getCallingUid() == AID_MEDIA; + return bitsPerSample > 16 && AIBinder_getCallingUid() == AID_MEDIA + && android::base::GetBoolProperty("media.extractor.float", true); } enum {