Fix FullScreen crash in Webapp
[platform/framework/web/chromium-efl.git] / media / remoting / device_capability_checker.h
1 // Copyright 2022 The Chromium Authors
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef MEDIA_REMOTING_DEVICE_CAPABILITY_CHECKER_H_
6 #define MEDIA_REMOTING_DEVICE_CAPABILITY_CHECKER_H_
7
8 #include <string>
9
10 namespace media {
11 enum class AudioCodec;
12 enum class VideoCodec;
13
14 namespace remoting {
15 // Return true if the Cast receiver device is known to support media remoting
16 // according to its `model_name`.  Note that this does not include all Cast
17 // receivers that support remoting.
18 bool IsKnownToSupportRemoting(const std::string& model_name);
19
20 // Return true if the Cast receiver with `model_name` is compatible to render
21 // `video_codec`.
22 bool IsVideoCodecCompatible(const std::string& model_name,
23                             media::VideoCodec video_codec);
24
25 // Return true if the Cast receiver with `model_name` is compatible to render
26 // `audio_codec`.
27 bool IsAudioCodecCompatible(const std::string& model_name,
28                             media::AudioCodec audio_codec);
29
30 // Custom codec parsing function for media remoting.
31 media::VideoCodec ParseVideoCodec(const std::string& codec_str);
32 media::AudioCodec ParseAudioCodec(const std::string& codec_str);
33
34 }  // namespace remoting
35 }  // namespace media
36
37 #endif  // MEDIA_REMOTING_DEVICE_CAPABILITY_CHECKER_H_