summaryrefslogtreecommitdiffstats
path: root/media/cdm/aes_decryptor.cc
diff options
context:
space:
mode:
authorxhwang@chromium.org <xhwang@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-01-08 22:23:17 +0000
committerxhwang@chromium.org <xhwang@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-01-08 22:23:17 +0000
commitdcd57350ed464493780247174db6a7c3628c01a2 (patch)
treec0ee4511c106a7825b8894c6620f6fabb3aead9a /media/cdm/aes_decryptor.cc
parent3b10e258f6ebf230e6c0a2c8096346eb002461c6 (diff)
downloadchromium_src-dcd57350ed464493780247174db6a7c3628c01a2.zip
chromium_src-dcd57350ed464493780247174db6a7c3628c01a2.tar.gz
chromium_src-dcd57350ed464493780247174db6a7c3628c01a2.tar.bz2
Drop DecryptConfig::data_offset_.
This CL drops DecryptConfig::data_offset_ and moves the offset parsing code into WebM demuxers. This allows us to remove offset passing/calculation code in several layers of the media pipeline. Background: We used to have HMAC check in encrypted WebM RFC, which requires us to keep the IV together with the encrypted frame, hence the offset. Now the HMAC check is dropped from the RFC so offset is not necessary anymore. BUG=298569 Review URL: https://codereview.chromium.org/119203003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@243672 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/cdm/aes_decryptor.cc')
-rw-r--r--media/cdm/aes_decryptor.cc12
1 files changed, 4 insertions, 8 deletions
diff --git a/media/cdm/aes_decryptor.cc b/media/cdm/aes_decryptor.cc
index de6f834..9f9f080 100644
--- a/media/cdm/aes_decryptor.cc
+++ b/media/cdm/aes_decryptor.cc
@@ -141,11 +141,8 @@ static scoped_refptr<DecoderBuffer> DecryptData(const DecoderBuffer& input,
return NULL;
}
- const int data_offset = input.decrypt_config()->data_offset();
- const char* sample =
- reinterpret_cast<const char*>(input.data() + data_offset);
- DCHECK_GT(input.data_size(), data_offset);
- size_t sample_size = static_cast<size_t>(input.data_size() - data_offset);
+ const char* sample = reinterpret_cast<const char*>(input.data());
+ size_t sample_size = static_cast<size_t>(input.data_size());
DCHECK_GT(sample_size, 0U) << "No sample data to be decrypted.";
if (sample_size == 0)
@@ -333,9 +330,8 @@ void AesDecryptor::Decrypt(StreamType stream_type,
scoped_refptr<DecoderBuffer> decrypted;
// An empty iv string signals that the frame is unencrypted.
if (encrypted->decrypt_config()->iv().empty()) {
- int data_offset = encrypted->decrypt_config()->data_offset();
- decrypted = DecoderBuffer::CopyFrom(encrypted->data() + data_offset,
- encrypted->data_size() - data_offset);
+ decrypted = DecoderBuffer::CopyFrom(encrypted->data(),
+ encrypted->data_size());
} else {
const std::string& key_id = encrypted->decrypt_config()->key_id();
DecryptionKey* key = GetKey(key_id);