blob: 8702b7383479b11dba2a070702ef0976971c8c9a [file] [log] [blame]
jbauch4cb3e392016-01-26 13:07:54 -08001/*
kjellander1afca732016-02-07 20:46:45 -08002 * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved.
jbauch4cb3e392016-01-26 13:07:54 -08003 *
kjellander1afca732016-02-07 20:46:45 -08004 * 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.
jbauch4cb3e392016-01-26 13:07:54 -08009 */
10
Steve Anton10542f22019-01-11 09:11:00 -080011#ifndef MEDIA_ENGINE_NULL_WEBRTC_VIDEO_ENGINE_H_
12#define MEDIA_ENGINE_NULL_WEBRTC_VIDEO_ENGINE_H_
jbauch4cb3e392016-01-26 13:07:54 -080013
14#include <vector>
15
Steve Anton10542f22019-01-11 09:11:00 -080016#include "media/base/media_channel.h"
17#include "media/base/media_engine.h"
jbauch4cb3e392016-01-26 13:07:54 -080018
19namespace webrtc {
20
21class Call;
22
23} // namespace webrtc
24
jbauch4cb3e392016-01-26 13:07:54 -080025namespace cricket {
26
27class VideoMediaChannel;
28class WebRtcVideoDecoderFactory;
29class WebRtcVideoEncoderFactory;
30
31// Video engine implementation that does nothing and can be used in
32// CompositeMediaEngine.
Sebastian Jansson84848f22018-11-16 10:40:36 +010033class NullWebRtcVideoEngine : public VideoEngineInterface {
jbauch4cb3e392016-01-26 13:07:54 -080034 public:
Sebastian Jansson84848f22018-11-16 10:40:36 +010035 std::vector<VideoCodec> codecs() const override {
36 return std::vector<VideoCodec>();
37 }
jbauch4cb3e392016-01-26 13:07:54 -080038
Sebastian Jansson84848f22018-11-16 10:40:36 +010039 RtpCapabilities GetCapabilities() const override { return RtpCapabilities(); }
jbauch4cb3e392016-01-26 13:07:54 -080040
Sebastian Jansson84848f22018-11-16 10:40:36 +010041 VideoMediaChannel* CreateMediaChannel(
Benjamin Wrightbfb444c2018-10-15 10:20:24 -070042 webrtc::Call* call,
43 const MediaConfig& config,
44 const VideoOptions& options,
Sebastian Jansson84848f22018-11-16 10:40:36 +010045 const webrtc::CryptoOptions& crypto_options) override {
jbauch4cb3e392016-01-26 13:07:54 -080046 return nullptr;
47 }
jbauch4cb3e392016-01-26 13:07:54 -080048};
49
50} // namespace cricket
51
Steve Anton10542f22019-01-11 09:11:00 -080052#endif // MEDIA_ENGINE_NULL_WEBRTC_VIDEO_ENGINE_H_