| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef CDM_CONTENT_DECRYPTION_MODULE_H_ | 5 #ifndef CDM_CONTENT_DECRYPTION_MODULE_H_ |
| 6 #define CDM_CONTENT_DECRYPTION_MODULE_H_ | 6 #define CDM_CONTENT_DECRYPTION_MODULE_H_ |
| 7 | 7 |
| 8 #if defined(_MSC_VER) | 8 #if defined(_MSC_VER) |
| 9 typedef unsigned char uint8_t; | 9 typedef unsigned char uint8_t; |
| 10 typedef unsigned int uint32_t; | 10 typedef unsigned int uint32_t; |
| (...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 144 | 144 |
| 145 uint32_t clear_bytes; | 145 uint32_t clear_bytes; |
| 146 uint32_t cipher_bytes; | 146 uint32_t cipher_bytes; |
| 147 }; | 147 }; |
| 148 | 148 |
| 149 // Represents an input buffer to be decrypted (and possibly decoded). It does | 149 // Represents an input buffer to be decrypted (and possibly decoded). It does |
| 150 // not own any pointers in this struct. If |iv_size| = 0, the data is | 150 // not own any pointers in this struct. If |iv_size| = 0, the data is |
| 151 // unencrypted. | 151 // unencrypted. |
| 152 struct InputBuffer { | 152 struct InputBuffer { |
| 153 InputBuffer() | 153 InputBuffer() |
| 154 : data(NULL), | 154 : data(nullptr), |
| 155 data_size(0), | 155 data_size(0), |
| 156 key_id(NULL), | 156 key_id(nullptr), |
| 157 key_id_size(0), | 157 key_id_size(0), |
| 158 iv(NULL), | 158 iv(nullptr), |
| 159 iv_size(0), | 159 iv_size(0), |
| 160 subsamples(NULL), | 160 subsamples(nullptr), |
| 161 num_subsamples(0), | 161 num_subsamples(0), |
| 162 timestamp(0) {} | 162 timestamp(0) {} |
| 163 | 163 |
| 164 const uint8_t* data; // Pointer to the beginning of the input data. | 164 const uint8_t* data; // Pointer to the beginning of the input data. |
| 165 uint32_t data_size; // Size (in bytes) of |data|. | 165 uint32_t data_size; // Size (in bytes) of |data|. |
| 166 | 166 |
| 167 const uint8_t* key_id; // Key ID to identify the decryption key. | 167 const uint8_t* key_id; // Key ID to identify the decryption key. |
| 168 uint32_t key_id_size; // Size (in bytes) of |key_id|. | 168 uint32_t key_id_size; // Size (in bytes) of |key_id|. |
| 169 | 169 |
| 170 const uint8_t* iv; // Initialization vector. | 170 const uint8_t* iv; // Initialization vector. |
| (...skipping 10 matching lines...) Expand all Loading... |
| 181 kUnknownAudioCodec = 0, | 181 kUnknownAudioCodec = 0, |
| 182 kCodecVorbis, | 182 kCodecVorbis, |
| 183 kCodecAac | 183 kCodecAac |
| 184 }; | 184 }; |
| 185 | 185 |
| 186 AudioDecoderConfig() | 186 AudioDecoderConfig() |
| 187 : codec(kUnknownAudioCodec), | 187 : codec(kUnknownAudioCodec), |
| 188 channel_count(0), | 188 channel_count(0), |
| 189 bits_per_channel(0), | 189 bits_per_channel(0), |
| 190 samples_per_second(0), | 190 samples_per_second(0), |
| 191 extra_data(NULL), | 191 extra_data(nullptr), |
| 192 extra_data_size(0) {} | 192 extra_data_size(0) {} |
| 193 | 193 |
| 194 AudioCodec codec; | 194 AudioCodec codec; |
| 195 int32_t channel_count; | 195 int32_t channel_count; |
| 196 int32_t bits_per_channel; | 196 int32_t bits_per_channel; |
| 197 int32_t samples_per_second; | 197 int32_t samples_per_second; |
| 198 | 198 |
| 199 // Optional byte data required to initialize audio decoders, such as the | 199 // Optional byte data required to initialize audio decoders, such as the |
| 200 // vorbis setup header. | 200 // vorbis setup header. |
| 201 uint8_t* extra_data; | 201 uint8_t* extra_data; |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 245 kH264ProfileHigh, | 245 kH264ProfileHigh, |
| 246 kH264ProfileHigh10, | 246 kH264ProfileHigh10, |
| 247 kH264ProfileHigh422, | 247 kH264ProfileHigh422, |
| 248 kH264ProfileHigh444Predictive | 248 kH264ProfileHigh444Predictive |
| 249 }; | 249 }; |
| 250 | 250 |
| 251 VideoDecoderConfig() | 251 VideoDecoderConfig() |
| 252 : codec(kUnknownVideoCodec), | 252 : codec(kUnknownVideoCodec), |
| 253 profile(kUnknownVideoCodecProfile), | 253 profile(kUnknownVideoCodecProfile), |
| 254 format(kUnknownVideoFormat), | 254 format(kUnknownVideoFormat), |
| 255 extra_data(NULL), | 255 extra_data(nullptr), |
| 256 extra_data_size(0) {} | 256 extra_data_size(0) {} |
| 257 | 257 |
| 258 VideoCodec codec; | 258 VideoCodec codec; |
| 259 VideoCodecProfile profile; | 259 VideoCodecProfile profile; |
| 260 VideoFormat format; | 260 VideoFormat format; |
| 261 | 261 |
| 262 // Width and height of video frame immediately post-decode. Not all pixels | 262 // Width and height of video frame immediately post-decode. Not all pixels |
| 263 // in this region are valid. | 263 // in this region are valid. |
| 264 Size coded_size; | 264 Size coded_size; |
| 265 | 265 |
| (...skipping 21 matching lines...) Expand all Loading... |
| 287 const uint8_t* signed_data_signature; | 287 const uint8_t* signed_data_signature; |
| 288 uint32_t signed_data_signature_length; | 288 uint32_t signed_data_signature_length; |
| 289 | 289 |
| 290 // X.509 device specific certificate for the |service_id| requested. | 290 // X.509 device specific certificate for the |service_id| requested. |
| 291 const uint8_t* platform_key_certificate; | 291 const uint8_t* platform_key_certificate; |
| 292 uint32_t platform_key_certificate_length; | 292 uint32_t platform_key_certificate_length; |
| 293 }; | 293 }; |
| 294 | 294 |
| 295 // Used when passing arrays of binary data. Does not own the referenced data. | 295 // Used when passing arrays of binary data. Does not own the referenced data. |
| 296 struct BinaryData { | 296 struct BinaryData { |
| 297 BinaryData() : data(NULL), length(0) {} | 297 BinaryData() : data(nullptr), length(0) {} |
| 298 const uint8_t* data; | 298 const uint8_t* data; |
| 299 uint32_t length; | 299 uint32_t length; |
| 300 }; | 300 }; |
| 301 | 301 |
| 302 // The current status of the associated key. The valid types are defined in the | 302 // The current status of the associated key. The valid types are defined in the |
| 303 // spec: https://w3c.github.io/encrypted-media/#idl-def-MediaKeyStatus | 303 // spec: https://w3c.github.io/encrypted-media/#idl-def-MediaKeyStatus |
| 304 enum KeyStatus { | 304 enum KeyStatus { |
| 305 kUsable = 0, | 305 kUsable = 0, |
| 306 kInternalError = 1, | 306 kInternalError = 1, |
| 307 kExpired = 2, | 307 kExpired = 2, |
| 308 kOutputRestricted = 3, | 308 kOutputRestricted = 3, |
| 309 kOutputDownscaled = 4, | 309 kOutputDownscaled = 4, |
| 310 kStatusPending = 5, | 310 kStatusPending = 5, |
| 311 kReleased = 6 | 311 kReleased = 6 |
| 312 }; | 312 }; |
| 313 | 313 |
| 314 // Used when passing arrays of key information. Does not own the referenced | 314 // Used when passing arrays of key information. Does not own the referenced |
| 315 // data. |system_code| is an additional error code for unusable keys and | 315 // data. |system_code| is an additional error code for unusable keys and |
| 316 // should be 0 when |status| == kUsable. | 316 // should be 0 when |status| == kUsable. |
| 317 struct KeyInformation { | 317 struct KeyInformation { |
| 318 KeyInformation() | 318 KeyInformation() |
| 319 : key_id(NULL), key_id_size(0), status(kInternalError), system_code(0) {} | 319 : key_id(nullptr), |
| 320 key_id_size(0), |
| 321 status(kInternalError), |
| 322 system_code(0) {} |
| 320 const uint8_t* key_id; | 323 const uint8_t* key_id; |
| 321 uint32_t key_id_size; | 324 uint32_t key_id_size; |
| 322 KeyStatus status; | 325 KeyStatus status; |
| 323 uint32_t system_code; | 326 uint32_t system_code; |
| 324 }; | 327 }; |
| 325 | 328 |
| 326 // Supported output protection methods for use with EnableOutputProtection() and | 329 // Supported output protection methods for use with EnableOutputProtection() and |
| 327 // returned by OnQueryOutputProtectionStatus(). | 330 // returned by OnQueryOutputProtectionStatus(). |
| 328 enum OutputProtectionMethods { | 331 enum OutputProtectionMethods { |
| 329 kProtectionNone = 0, | 332 kProtectionNone = 0, |
| (...skipping 860 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1190 virtual AudioFormat Format() const = 0; | 1193 virtual AudioFormat Format() const = 0; |
| 1191 | 1194 |
| 1192 protected: | 1195 protected: |
| 1193 AudioFrames() {} | 1196 AudioFrames() {} |
| 1194 virtual ~AudioFrames() {} | 1197 virtual ~AudioFrames() {} |
| 1195 }; | 1198 }; |
| 1196 | 1199 |
| 1197 } // namespace cdm | 1200 } // namespace cdm |
| 1198 | 1201 |
| 1199 #endif // CDM_CONTENT_DECRYPTION_MODULE_H_ | 1202 #endif // CDM_CONTENT_DECRYPTION_MODULE_H_ |
| OLD | NEW |