Android NDK MediaDrm API を使用して、PlayReady でビデオ アクセス ユニットを復号化しています。
特定の API 呼び出しが無期限にハングすることがわかりました。これらの呼び出しはすべて、次の順序で成功します。
AMediaDrm_createByUUID()
AMediaDrm_openSession()
AMediaDrm_getKeyRequest()
AMediaDrm_provideKeyResponse()
ただし、AMediaDrm_provideKeyResponse()
呼び出しの後、AMediaDrm_closeSession()
またはへの呼び出しAMediaDrm_decrypt()
は永久にハングします。両方のケースの逆アセンブルを見ると、次のように自分自身にジャンプする行でスタックします。
0xf2ea9dec: jmp 0xf2ea9dec
AMediaDrm_closeSession()
AMediaDrm_openSession()
またはの直後に呼び出されたときに機能しAMediaDrm_getKeyRequest()
ます。
以前にこの問題を経験した人はいますか? 私が間違っているかもしれない何かがありますAMediaDrm_provideKeyResponse()
か?