我正在使用AMediaCodec
and AMediaExtractor
,在所有设备上都可以正常工作(我希望:),但是如果我在 Android Q(在我的情况下为 Pixel 2XL)上检查相同的代码,我会收到这样的错误AMEDIA_ERROR_UNSUPPORTED
。
我所做的
bool NativeCodec::createStreamingMediaPlayer(const std::string &filename)
{
AMediaExtractor *ex = AMediaExtractor_new();
media_status_t err =
AMediaExtractor_setDataSource(ex, filename.c_str());; <-- Here media status I got AMEDIA_ERROR_UNSUPPORTED
if (err != AMEDIA_OK)
{
__android_log_print(ANDROID_LOG_ERROR, "ERROR", "ERROR ::: %s", std::to_string(err).c_str());
return false;
}
.....
}
也许这与Android Q中引入的隐私有关,但我没有找到任何有关它的信息......
如何检查这个问题?