Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(972)

Unified Diff: media/base/android/ndk_media_codec_bridge.cc

Issue 2058113002: Add 'cbcs' encryption scheme support in Android media. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: media/base/android/ndk_media_codec_bridge.cc
diff --git a/media/base/android/ndk_media_codec_bridge.cc b/media/base/android/ndk_media_codec_bridge.cc
index c39e0f9ca3e288f403602a9eb7b08c3668e18a0c..c13cf597f560943f07c1e56559765b79d5ee5bb8 100644
--- a/media/base/android/ndk_media_codec_bridge.cc
+++ b/media/base/android/ndk_media_codec_bridge.cc
@@ -136,6 +136,7 @@ MediaCodecStatus NdkMediaCodecBridge::QueueSecureInputBuffer(
const std::vector<char>& iv,
const SubsampleEntry* subsamples,
int subsamples_size,
+ const EncryptionScheme& encryption_scheme,
const base::TimeDelta& presentation_time) {
if (data_size >
base::checked_cast<size_t>(std::numeric_limits<int32_t>::max())) {
@@ -145,6 +146,9 @@ MediaCodecStatus NdkMediaCodecBridge::QueueSecureInputBuffer(
return MEDIA_CODEC_ERROR;
if (data && !FillInputBuffer(index, data, data_size))
return MEDIA_CODEC_ERROR;
+ if (encryption_scheme.mode() != EncryptionScheme::CIPHER_MODE_AES_CTR ||
+ encryption_scheme.pattern().IsInEffect())
+ return MEDIA_CODEC_ERROR;
int new_subsamples_size = subsamples_size == 0 ? 1 : subsamples_size;
std::vector<size_t> clear_data, encrypted_data;

Powered by Google App Engine
This is Rietveld 408576698