Export symbols needed by the Chromium component build (part 3).

This CL uses RTC_EXPORT (defined in rtc_base/system/rtc_export.h)
to mark WebRTC symbols as visible from a shared library, this doesn't
mean these symbols are part of the public API (please continue to refer
to [1] for info about what is considered public WebRTC API).

Bug: webrtc:9419
Change-Id: I4d4e2ae52ee01de68147fd0f2cfe4c92d600ad94
Reviewed-on: https://webrtc-review.googlesource.com/c/106343
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25207}
This commit is contained in:
Mirko Bonadei
2018-10-16 14:13:50 +02:00
committed by Commit Bot
parent 0753675a3e
commit 276827cbdb
19 changed files with 60 additions and 32 deletions

View File

@ -17,6 +17,7 @@
#include "media/base/codec.h"
#include "modules/video_coding/include/video_codec_interface.h"
#include "rtc_base/system/rtc_export.h"
namespace webrtc {
@ -26,13 +27,13 @@ struct SdpVideoFormat;
// |rtc_use_h264| build flag is true (if false, this function does nothing).
// This function should only be called before or during WebRTC initialization
// and is not thread-safe.
void DisableRtcUseH264();
RTC_EXPORT void DisableRtcUseH264();
// Returns a vector with all supported internal H264 profiles that we can
// negotiate in SDP, in order of preference.
std::vector<SdpVideoFormat> SupportedH264Codecs();
class H264Encoder : public VideoEncoder {
class RTC_EXPORT H264Encoder : public VideoEncoder {
public:
static std::unique_ptr<H264Encoder> Create(const cricket::VideoCodec& codec);
// If H.264 is supported (any implementation).
@ -41,7 +42,7 @@ class H264Encoder : public VideoEncoder {
~H264Encoder() override {}
};
class H264Decoder : public VideoDecoder {
class RTC_EXPORT H264Decoder : public VideoDecoder {
public:
static std::unique_ptr<H264Decoder> Create();
static bool IsSupported();