summaryrefslogtreecommitdiff
path: root/chromium/media/base/decoder.h
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2020-10-29 10:46:47 +0100
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2020-11-02 12:02:10 +0000
commit99677208ff3b216fdfec551fbe548da5520cd6fb (patch)
tree476a4865c10320249360e859d8fdd3e01833b03a /chromium/media/base/decoder.h
parentc30a6232df03e1efbd9f3b226777b07e087a1122 (diff)
downloadqtwebengine-chromium-99677208ff3b216fdfec551fbe548da5520cd6fb.tar.gz
BASELINE: Update Chromium to 86.0.4240.124
Change-Id: Ide0ff151e94cd665ae6521a446995d34a9d1d644 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'chromium/media/base/decoder.h')
-rw-r--r--chromium/media/base/decoder.h44
1 files changed, 44 insertions, 0 deletions
diff --git a/chromium/media/base/decoder.h b/chromium/media/base/decoder.h
new file mode 100644
index 00000000000..3c0d6c3b87a
--- /dev/null
+++ b/chromium/media/base/decoder.h
@@ -0,0 +1,44 @@
+// Copyright 2020 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef MEDIA_BASE_DECODER_H_
+#define MEDIA_BASE_DECODER_H_
+
+#include <string>
+
+#include "base/macros.h"
+#include "media/base/media_export.h"
+
+namespace media {
+
+class MEDIA_EXPORT Decoder {
+ public:
+ virtual ~Decoder();
+
+ // Returns true if the implementation is expected to be implemented by the
+ // platform. The value should be available immediately after construction and
+ // should not change within the lifetime of a decoder instance.
+ virtual bool IsPlatformDecoder() const;
+
+ // Returns true if the implementation supports decoding configs with
+ // encryption.
+ // TODO(crbug.com/1099488): Sometimes it's not possible to give a definitive
+ // yes or no answer unless more context is given. While this doesn't pose any
+ // problems, it does allow incompatible decoders to pass the filtering step in
+ // |DecoderSelector| potentially slowing down the selection process.
+ virtual bool SupportsDecryption() const;
+
+ // Returns the name of the decoder for logging and decoder selection purposes.
+ // This name should be available immediately after construction, and should
+ // also be stable in the sense that the name does not change across multiple
+ // constructions.
+ virtual std::string GetDisplayName() const = 0;
+
+ protected:
+ Decoder();
+};
+
+} // namespace media
+
+#endif // MEDIA_BASE_DECODER_H_