blob: b64d90450db2b8d596fb79b2ef3f0251424640b8 [file] [log] [blame]
magjed509e4fe2016-11-18 01:34:11 -08001/*
2 * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved.
3 *
4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
9 */
10
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020011#ifndef MEDIA_ENGINE_INTERNALENCODERFACTORY_H_
12#define MEDIA_ENGINE_INTERNALENCODERFACTORY_H_
magjed509e4fe2016-11-18 01:34:11 -080013
14#include <vector>
15
Zhi Huangaea84f52017-11-16 18:46:27 +000016#include "media/engine/webrtcvideoencoderfactory.h"
magjed509e4fe2016-11-18 01:34:11 -080017
Zhi Huangaea84f52017-11-16 18:46:27 +000018namespace cricket {
magjed509e4fe2016-11-18 01:34:11 -080019
Zhi Huangaea84f52017-11-16 18:46:27 +000020class InternalEncoderFactory : public WebRtcVideoEncoderFactory {
magjed509e4fe2016-11-18 01:34:11 -080021 public:
Zhi Huangaea84f52017-11-16 18:46:27 +000022 InternalEncoderFactory();
23 virtual ~InternalEncoderFactory();
magjed509e4fe2016-11-18 01:34:11 -080024
Zhi Huangaea84f52017-11-16 18:46:27 +000025 // WebRtcVideoEncoderFactory implementation.
26 webrtc::VideoEncoder* CreateVideoEncoder(
27 const cricket::VideoCodec& codec) override;
28 const std::vector<cricket::VideoCodec>& supported_codecs() const override;
29 void DestroyVideoEncoder(webrtc::VideoEncoder* encoder) override;
magjed509e4fe2016-11-18 01:34:11 -080030
Zhi Huangaea84f52017-11-16 18:46:27 +000031 private:
32 std::vector<cricket::VideoCodec> supported_codecs_;
magjed509e4fe2016-11-18 01:34:11 -080033};
34
Zhi Huangaea84f52017-11-16 18:46:27 +000035} // namespace cricket
magjed509e4fe2016-11-18 01:34:11 -080036
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020037#endif // MEDIA_ENGINE_INTERNALENCODERFACTORY_H_