Telegram-Android/TMessagesProj/jni/voip/tgcalls/CodecSelectHelper.h

36 lines
812 B
C
Raw Normal View History

2020-08-14 18:58:22 +02:00
#ifndef TGCALLS_CODEC_SELECT_HELPER_H
#define TGCALLS_CODEC_SELECT_HELPER_H
#include "Message.h"
#include "media/base/codec.h"
namespace tgcalls {
2020-08-22 01:59:49 +02:00
class PlatformContext;
2020-08-14 18:58:22 +02:00
struct CommonFormats {
std::vector<webrtc::SdpVideoFormat> list;
int myEncoderIndex = -1;
};
struct CommonCodecs {
std::vector<cricket::VideoCodec> list;
int myEncoderIndex = -1;
};
VideoFormatsMessage ComposeSupportedFormats(
std::vector<webrtc::SdpVideoFormat> encoders,
2020-08-15 23:06:36 +02:00
std::vector<webrtc::SdpVideoFormat> decoders,
2020-08-22 01:59:49 +02:00
const std::vector<std::string> &preferredCodecs,
std::shared_ptr<PlatformContext> platformContext);
2020-08-14 18:58:22 +02:00
CommonFormats ComputeCommonFormats(
const VideoFormatsMessage &my,
VideoFormatsMessage theirs);
CommonCodecs AssignPayloadTypesAndDefaultCodecs(CommonFormats &&formats);
} // namespace tgcalls
#endif