blob: 909fa0ff2f53175b465e2235d9b39974e94be19d [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
11#ifndef WEBRTC_MEDIA_ENGINE_INTERNALENCODERFACTORY_H_
12#define WEBRTC_MEDIA_ENGINE_INTERNALENCODERFACTORY_H_
13
14#include <vector>
15
16#include "webrtc/media/engine/webrtcvideoencoderfactory.h"
17
18namespace cricket {
19
20class InternalEncoderFactory : public WebRtcVideoEncoderFactory {
21 public:
22 InternalEncoderFactory();
23 virtual ~InternalEncoderFactory();
24
25 // 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;
30
31 private:
32 // Disable overloaded virtual function warning. TODO(magjed): Remove once
33 // http://crbug/webrtc/6402 is fixed.
34 using WebRtcVideoEncoderFactory::CreateVideoEncoder;
35
36 std::vector<cricket::VideoCodec> supported_codecs_;
37};
38
39} // namespace cricket
40
41#endif // WEBRTC_MEDIA_ENGINE_INTERNALENCODERFACTORY_H_