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.
5 #ifndef MEDIA_REMOTING_DEVICE_CAPABILITY_CHECKER_H_
6 #define MEDIA_REMOTING_DEVICE_CAPABILITY_CHECKER_H_
11 enum class AudioCodec;
12 enum class VideoCodec;
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);
20 // Return true if the Cast receiver with `model_name` is compatible to render
22 bool IsVideoCodecCompatible(const std::string& model_name,
23 media::VideoCodec video_codec);
25 // Return true if the Cast receiver with `model_name` is compatible to render
27 bool IsAudioCodecCompatible(const std::string& model_name,
28 media::AudioCodec audio_codec);
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);
34 } // namespace remoting
37 #endif // MEDIA_REMOTING_DEVICE_CAPABILITY_CHECKER_H_