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 MEDIA_BASE_DECRYPTOR_H_ | 5 #ifndef MEDIA_BASE_DECRYPTOR_H_ |
6 #define MEDIA_BASE_DECRYPTOR_H_ | 6 #define MEDIA_BASE_DECRYPTOR_H_ |
7 | 7 |
8 #include <list> | 8 #include <list> |
9 | 9 |
10 #include "base/callback.h" | 10 #include "base/callback.h" |
(...skipping 15 matching lines...) Expand all Loading... |
26 // implementations must be thread safe when methods are called this way. | 26 // implementations must be thread safe when methods are called this way. |
27 // Depending on the implementation callbacks may be fired synchronously or | 27 // Depending on the implementation callbacks may be fired synchronously or |
28 // asynchronously. | 28 // asynchronously. |
29 class MEDIA_EXPORT Decryptor { | 29 class MEDIA_EXPORT Decryptor { |
30 public: | 30 public: |
31 enum Status { | 31 enum Status { |
32 kSuccess, // Decryption successfully completed. Decrypted buffer ready. | 32 kSuccess, // Decryption successfully completed. Decrypted buffer ready. |
33 kNoKey, // No key is available to decrypt. | 33 kNoKey, // No key is available to decrypt. |
34 kNeedMoreData, // Decoder needs more data to produce a frame. | 34 kNeedMoreData, // Decoder needs more data to produce a frame. |
35 kError, // Key is available but an error occurred during decryption. | 35 kError, // Key is available but an error occurred during decryption. |
36 STATUS_MAX = kError | 36 kStatusMax = kError |
37 }; | 37 }; |
38 | 38 |
39 // TODO(xhwang): Unify this with DemuxerStream::Type. | 39 // TODO(xhwang): Unify this with DemuxerStream::Type. |
40 enum StreamType { kAudio, kVideo, STREAM_TYPE_MAX = kVideo }; | 40 enum StreamType { kAudio, kVideo, kStreamTypeMax = kVideo }; |
41 | 41 |
42 Decryptor(); | 42 Decryptor(); |
43 virtual ~Decryptor(); | 43 virtual ~Decryptor(); |
44 | 44 |
45 // Indicates that a new key has been added to the MediaKeys object associated | 45 // Indicates that a new key has been added to the MediaKeys object associated |
46 // with the Decryptor. | 46 // with the Decryptor. |
47 typedef base::Callback<void()> NewKeyCB; | 47 typedef base::Callback<void()> NewKeyCB; |
48 | 48 |
49 // Registers a NewKeyCB which should be called when a new key is added to the | 49 // Registers a NewKeyCB which should be called when a new key is added to the |
50 // decryptor. Only one NewKeyCB can be registered for one |stream_type|. | 50 // decryptor. Only one NewKeyCB can be registered for one |stream_type|. |
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
155 // The decoder can be reinitialized after it is uninitialized. | 155 // The decoder can be reinitialized after it is uninitialized. |
156 virtual void DeinitializeDecoder(StreamType stream_type) = 0; | 156 virtual void DeinitializeDecoder(StreamType stream_type) = 0; |
157 | 157 |
158 private: | 158 private: |
159 DISALLOW_COPY_AND_ASSIGN(Decryptor); | 159 DISALLOW_COPY_AND_ASSIGN(Decryptor); |
160 }; | 160 }; |
161 | 161 |
162 } // namespace media | 162 } // namespace media |
163 | 163 |
164 #endif // MEDIA_BASE_DECRYPTOR_H_ | 164 #endif // MEDIA_BASE_DECRYPTOR_H_ |
OLD | NEW |