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

Unified Diff: content_decryption_module.h

Issue 120813004: Drop |data_offset| in cdm::InputBuffer. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/deps/cdm
Patch Set: rebase Created 6 years, 4 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content_decryption_module.h
diff --git a/content_decryption_module.h b/content_decryption_module.h
index 23bef9b1b3011600f25efacc81169f9348886d1b..defe11ded5b3cefc156376efd932ffa92c67c2e6 100644
--- a/content_decryption_module.h
+++ b/content_decryption_module.h
@@ -160,9 +160,10 @@ struct SubsampleEntry {
};
// Represents an input buffer to be decrypted (and possibly decoded). It does
-// own any pointers in this struct.
-struct InputBuffer {
- InputBuffer()
+// not own any pointers in this struct.
+// Deprecated: New CDM implementations should use InputBuffer.
+struct InputBuffer_1 {
+ InputBuffer_1()
: data(NULL),
data_size(0),
data_offset(0),
@@ -191,6 +192,37 @@ struct InputBuffer {
int64_t timestamp; // Presentation timestamp in microseconds.
};
+// Represents an input buffer to be decrypted (and possibly decoded). It does
+// not own any pointers in this struct.
+struct InputBuffer_2 {
+ InputBuffer_2()
+ : data(NULL),
+ data_size(0),
+ key_id(NULL),
+ key_id_size(0),
+ iv(NULL),
+ iv_size(0),
+ subsamples(NULL),
+ num_subsamples(0),
+ timestamp(0) {}
+
+ const uint8_t* data; // Pointer to the beginning of the input data.
+ uint32_t data_size; // Size (in bytes) of |data|.
+
+ const uint8_t* key_id; // Key ID to identify the decryption key.
+ uint32_t key_id_size; // Size (in bytes) of |key_id|.
+
+ const uint8_t* iv; // Initialization vector.
+ uint32_t iv_size; // Size (in bytes) of |iv|.
+
+ const struct SubsampleEntry* subsamples;
+ uint32_t num_subsamples; // Number of subsamples in |subsamples|.
+
+ int64_t timestamp; // Presentation timestamp in microseconds.
+};
+
+typedef InputBuffer_2 InputBuffer;
+
struct AudioDecoderConfig {
enum AudioCodec {
kUnknownAudioCodec = 0,
@@ -466,7 +498,7 @@ class ContentDecryptionModule_4 {
// Returns kDecryptError if any other error happened.
// If the return value is not kSuccess, |decrypted_buffer| should be ignored
// by the caller.
- virtual Status Decrypt(const InputBuffer& encrypted_buffer,
+ virtual Status Decrypt(const InputBuffer_1& encrypted_buffer,
DecryptedBlock* decrypted_buffer) = 0;
// Initializes the CDM audio decoder with |audio_decoder_config|. This
@@ -521,7 +553,7 @@ class ContentDecryptionModule_4 {
// Returns kDecodeError if any decoding error happened.
// If the return value is not kSuccess, |video_frame| should be ignored by
// the caller.
- virtual Status DecryptAndDecodeFrame(const InputBuffer& encrypted_buffer,
+ virtual Status DecryptAndDecodeFrame(const InputBuffer_1& encrypted_buffer,
VideoFrame* video_frame) = 0;
// Decrypts the |encrypted_buffer| and decodes the decrypted buffer into
@@ -540,7 +572,7 @@ class ContentDecryptionModule_4 {
// Returns kDecodeError if any decoding error happened.
// If the return value is not kSuccess, |audio_frames| should be ignored by
// the caller.
- virtual Status DecryptAndDecodeSamples(const InputBuffer& encrypted_buffer,
+ virtual Status DecryptAndDecodeSamples(const InputBuffer_1& encrypted_buffer,
AudioFrames* audio_frames) = 0;
// Called by the host after a platform challenge was initiated via
@@ -630,7 +662,7 @@ class ContentDecryptionModule_5 {
// Returns kDecryptError if any other error happened.
// If the return value is not kSuccess, |decrypted_buffer| should be ignored
// by the caller.
- virtual Status Decrypt(const InputBuffer& encrypted_buffer,
+ virtual Status Decrypt(const InputBuffer_1& encrypted_buffer,
DecryptedBlock* decrypted_buffer) = 0;
// Initializes the CDM audio decoder with |audio_decoder_config|. This
@@ -685,7 +717,7 @@ class ContentDecryptionModule_5 {
// Returns kDecodeError if any decoding error happened.
// If the return value is not kSuccess, |video_frame| should be ignored by
// the caller.
- virtual Status DecryptAndDecodeFrame(const InputBuffer& encrypted_buffer,
+ virtual Status DecryptAndDecodeFrame(const InputBuffer_1& encrypted_buffer,
VideoFrame* video_frame) = 0;
// Decrypts the |encrypted_buffer| and decodes the decrypted buffer into
@@ -704,7 +736,7 @@ class ContentDecryptionModule_5 {
// Returns kDecodeError if any decoding error happened.
// If the return value is not kSuccess, |audio_frames| should be ignored by
// the caller.
- virtual Status DecryptAndDecodeSamples(const InputBuffer& encrypted_buffer,
+ virtual Status DecryptAndDecodeSamples(const InputBuffer_1& encrypted_buffer,
AudioFrames* audio_frames) = 0;
// Called by the host after a platform challenge was initiated via
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698