Reland of Loosening the coupling between WebRTC and //third_party/protobuf (patchset #1 id:1 of https://codereview.webrtc.org/2786363002/ )
Reason for revert: Trying to re-land after solving some related issues. There are no changes compared to the original CL. Original issue's description: > Revert of Loosening the coupling between WebRTC and //third_party/protobuf (patchset #16 id:300001 of https://codereview.webrtc.org/2747863003/ ) > > Reason for revert: > I will try to reland next week because it is causing some problems. > > Original issue's description: > > To accommodate some downstream WebRTC users we need to loosen > > the coupling between our code and the //third_party/protobuf. > > > > This includes using typedefs to define strings instead of > > assuming std::string. > > > > After this refactoring it will be possible to link with other > > protobuf implementations than the current one. > > > > We moved the PRESUBMIT check to another CL [1]. The goal of this > > presubmit is to avoid the direct usage of google::protobuf outside > > of the webrtc/base/protobuf_utils.h header file. > > > > [1] - https://codereview.webrtc.org/2753823003/ > > > > BUG=webrtc:7340 > > NOTRY=True > > > > Review-Url: https://codereview.webrtc.org/2747863003 > > Cr-Commit-Position: refs/heads/master@{#17466} > > Committed:16ab93b952> > TBR=kjellander@webrtc.org,henrik.lundin@webrtc.org,kwiberg@webrtc.org,michaelt@webrtc.org,peah@webrtc.org > # Not skipping CQ checks because original CL landed more than 1 days ago. > BUG=webrtc:7340 > > Review-Url: https://codereview.webrtc.org/2786363002 > Cr-Commit-Position: refs/heads/master@{#17483} > Committed:d00aad5eb2TBR=kjellander@webrtc.org,henrik.lundin@webrtc.org,kwiberg@webrtc.org,michaelt@webrtc.org,peah@webrtc.org # Not skipping CQ checks because original CL landed more than 1 days ago. BUG=webrtc:7340 NOTRY=True Review-Url: https://codereview.webrtc.org/2791963003 Cr-Commit-Position: refs/heads/master@{#17584}
This commit is contained in:
@ -100,6 +100,12 @@ config("common_config") {
|
||||
cflags_cc = []
|
||||
defines = []
|
||||
|
||||
if (rtc_enable_protobuf) {
|
||||
defines += [ "WEBRTC_ENABLE_PROTOBUF=1" ]
|
||||
} else {
|
||||
defines += [ "WEBRTC_ENABLE_PROTOBUF=0" ]
|
||||
}
|
||||
|
||||
if (rtc_restrict_logging) {
|
||||
defines += [ "WEBRTC_RESTRICT_LOGGING" ]
|
||||
}
|
||||
|
||||
@ -79,6 +79,17 @@ if (!rtc_build_ssl) {
|
||||
}
|
||||
}
|
||||
|
||||
source_set("protobuf_utils") {
|
||||
sources = [
|
||||
"protobuf_utils.h",
|
||||
]
|
||||
if (rtc_enable_protobuf) {
|
||||
public_deps = [
|
||||
"//third_party/protobuf:protobuf_lite",
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
# The subset of rtc_base approved for use outside of libjingle.
|
||||
rtc_static_library("rtc_base_approved") {
|
||||
defines = []
|
||||
|
||||
@ -9,4 +9,7 @@ specific_include_rules = {
|
||||
"gunit_prod.h": [
|
||||
"+gtest",
|
||||
],
|
||||
"protobuf_utils.h": [
|
||||
"+third_party/protobuf",
|
||||
],
|
||||
}
|
||||
|
||||
36
webrtc/base/protobuf_utils.h
Normal file
36
webrtc/base/protobuf_utils.h
Normal file
@ -0,0 +1,36 @@
|
||||
/*
|
||||
* Copyright (c) 2017 The WebRTC project authors. All Rights Reserved.
|
||||
*
|
||||
* Use of this source code is governed by a BSD-style license
|
||||
* that can be found in the LICENSE file in the root of the source
|
||||
* tree. An additional intellectual property rights grant can be found
|
||||
* in the file PATENTS. All contributing project authors may
|
||||
* be found in the AUTHORS file in the root of the source tree.
|
||||
*/
|
||||
|
||||
#include <string>
|
||||
|
||||
#ifndef WEBRTC_BASE_PROTOBUF_UTILS_H_
|
||||
#define WEBRTC_BASE_PROTOBUF_UTILS_H_
|
||||
|
||||
namespace webrtc {
|
||||
|
||||
using ProtoString = std::string;
|
||||
|
||||
} // namespace webrtc
|
||||
|
||||
#if WEBRTC_ENABLE_PROTOBUF
|
||||
|
||||
#include "third_party/protobuf/src/google/protobuf/message_lite.h"
|
||||
#include "third_party/protobuf/src/google/protobuf/repeated_field.h"
|
||||
|
||||
namespace webrtc {
|
||||
|
||||
using google::protobuf::MessageLite;
|
||||
using google::protobuf::RepeatedPtrField;
|
||||
|
||||
} // namespace webrtc
|
||||
|
||||
#endif // WEBRTC_ENABLE_PROTOBUF
|
||||
|
||||
#endif // WEBRTC_BASE_PROTOBUF_UTILS_H_
|
||||
@ -51,6 +51,7 @@ rtc_static_library("rtc_event_log_impl") {
|
||||
deps = [
|
||||
":rtc_event_log_api",
|
||||
"..:webrtc_common",
|
||||
"../base:protobuf_utils",
|
||||
"../base:rtc_base_approved",
|
||||
"../call:call_interfaces",
|
||||
"../modules/audio_coding:audio_network_adaptor",
|
||||
@ -97,6 +98,7 @@ if (rtc_enable_protobuf) {
|
||||
suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
|
||||
}
|
||||
deps = [
|
||||
"../base:protobuf_utils",
|
||||
"../base:rtc_base_approved",
|
||||
]
|
||||
}
|
||||
|
||||
@ -17,6 +17,7 @@
|
||||
#include "webrtc/base/constructormagic.h"
|
||||
#include "webrtc/base/event.h"
|
||||
#include "webrtc/base/logging.h"
|
||||
#include "webrtc/base/protobuf_utils.h"
|
||||
#include "webrtc/base/swap_queue.h"
|
||||
#include "webrtc/base/thread_checker.h"
|
||||
#include "webrtc/base/timeutils.h"
|
||||
@ -38,7 +39,7 @@
|
||||
#include "webrtc/system_wrappers/include/file_wrapper.h"
|
||||
|
||||
#ifdef ENABLE_RTC_EVENT_LOG
|
||||
// Files generated at build-time by the protobuf compiler.
|
||||
// *.pb.h files are generated at build-time by the protobuf compiler.
|
||||
#ifdef WEBRTC_ANDROID_PLATFORM_BUILD
|
||||
#include "external/webrtc/webrtc/logging/rtc_event_log/rtc_event_log.pb.h"
|
||||
#else
|
||||
@ -584,7 +585,7 @@ bool RtcEventLog::ParseRtcEventLog(const std::string& file_name,
|
||||
if (!dump_file->OpenFile(file_name.c_str(), true)) {
|
||||
return false;
|
||||
}
|
||||
std::string dump_buffer;
|
||||
ProtoString dump_buffer;
|
||||
while ((bytes_read = dump_file->Read(tmp_buffer, sizeof(tmp_buffer))) > 0) {
|
||||
dump_buffer.append(tmp_buffer, bytes_read);
|
||||
}
|
||||
|
||||
@ -13,7 +13,6 @@
|
||||
|
||||
#include <limits>
|
||||
#include <memory>
|
||||
#include <string>
|
||||
#include <utility>
|
||||
#include <vector>
|
||||
|
||||
@ -21,12 +20,13 @@
|
||||
#include "webrtc/base/event.h"
|
||||
#include "webrtc/base/ignore_wundef.h"
|
||||
#include "webrtc/base/platform_thread.h"
|
||||
#include "webrtc/base/protobuf_utils.h"
|
||||
#include "webrtc/base/swap_queue.h"
|
||||
#include "webrtc/logging/rtc_event_log/ringbuffer.h"
|
||||
#include "webrtc/system_wrappers/include/file_wrapper.h"
|
||||
|
||||
#ifdef ENABLE_RTC_EVENT_LOG
|
||||
// Files generated at build-time by the protobuf compiler.
|
||||
// *.ph.h files are generated at build-time by the protobuf compiler.
|
||||
RTC_PUSH_IGNORING_WUNDEF()
|
||||
#ifdef WEBRTC_ANDROID_PLATFORM_BUILD
|
||||
#include "external/webrtc/webrtc/logging/rtc_event_log/rtc_event_log.pb.h"
|
||||
@ -112,7 +112,7 @@ class RtcEventLogHelperThread final {
|
||||
std::unique_ptr<rtclog::Event> most_recent_event_;
|
||||
|
||||
// Temporary space for serializing profobuf data.
|
||||
std::string output_string_;
|
||||
ProtoString output_string_;
|
||||
|
||||
rtc::Event wake_periodically_;
|
||||
rtc::Event wake_from_hibernation_;
|
||||
|
||||
@ -20,6 +20,7 @@
|
||||
|
||||
#include "webrtc/base/checks.h"
|
||||
#include "webrtc/base/logging.h"
|
||||
#include "webrtc/base/protobuf_utils.h"
|
||||
#include "webrtc/call/call.h"
|
||||
#include "webrtc/logging/rtc_event_log/rtc_event_log.h"
|
||||
#include "webrtc/modules/audio_coding/audio_network_adaptor/include/audio_network_adaptor.h"
|
||||
@ -128,7 +129,7 @@ std::pair<uint64_t, bool> ParseVarInt(std::istream& stream) {
|
||||
|
||||
void GetHeaderExtensions(
|
||||
std::vector<RtpExtension>* header_extensions,
|
||||
const google::protobuf::RepeatedPtrField<rtclog::RtpHeaderExtension>&
|
||||
const RepeatedPtrField<rtclog::RtpHeaderExtension>&
|
||||
proto_header_extensions) {
|
||||
header_extensions->clear();
|
||||
for (auto& p : proto_header_extensions) {
|
||||
|
||||
@ -72,6 +72,7 @@ rtc_static_library("builtin_audio_encoder_factory") {
|
||||
]
|
||||
deps = [
|
||||
"../..:webrtc_common",
|
||||
"../../base:protobuf_utils",
|
||||
"../../base:rtc_base_approved",
|
||||
":audio_encoder_factory_interface",
|
||||
] + audio_codec_deps
|
||||
@ -101,6 +102,7 @@ rtc_static_library("rent_a_codec") {
|
||||
deps = [
|
||||
"../../api/audio_codecs:audio_codecs_api",
|
||||
"../..:webrtc_common",
|
||||
"../../base:protobuf_utils",
|
||||
"../../base:rtc_base_approved",
|
||||
"../../system_wrappers",
|
||||
":audio_coding_module_typedefs",
|
||||
@ -109,6 +111,7 @@ rtc_static_library("rent_a_codec") {
|
||||
":isac_fix_c",
|
||||
":neteq_decoder_enum",
|
||||
] + audio_codec_deps
|
||||
|
||||
defines = audio_codec_defines
|
||||
}
|
||||
|
||||
@ -856,6 +859,7 @@ rtc_static_library("webrtc_opus") {
|
||||
":audio_network_adaptor",
|
||||
"../..:webrtc_common",
|
||||
"../../api/audio_codecs:audio_codecs_api",
|
||||
"../../base:protobuf_utils",
|
||||
"../../base:rtc_base_approved",
|
||||
"../../base:rtc_numerics",
|
||||
"../../common_audio",
|
||||
@ -949,6 +953,7 @@ rtc_static_library("audio_network_adaptor") {
|
||||
|
||||
deps = [
|
||||
"../..:webrtc_common",
|
||||
"../../base:protobuf_utils",
|
||||
"../../base:rtc_base_approved",
|
||||
"../../common_audio",
|
||||
"../../logging:rtc_event_log_api",
|
||||
@ -1216,10 +1221,12 @@ if (rtc_include_tests) {
|
||||
":neteq_unittest_tools",
|
||||
":webrtc_opus",
|
||||
"../..:webrtc_common",
|
||||
"../../base:protobuf_utils",
|
||||
"../../base:rtc_base_approved",
|
||||
"../../system_wrappers:system_wrappers",
|
||||
"../../test:test_support",
|
||||
]
|
||||
|
||||
if (!build_with_chromium && is_clang) {
|
||||
# Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
|
||||
suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
|
||||
@ -1354,6 +1361,7 @@ if (rtc_include_tests) {
|
||||
":neteq",
|
||||
":neteq_unittest_tools",
|
||||
"../../api/audio_codecs:audio_codecs_api",
|
||||
"../../base:protobuf_utils",
|
||||
"../../common_audio",
|
||||
"../../test:test_main",
|
||||
"//testing/gtest",
|
||||
@ -2112,6 +2120,7 @@ if (rtc_include_tests) {
|
||||
"../..:webrtc_common",
|
||||
"../../api/audio_codecs:audio_codecs_api",
|
||||
"../../api/audio_codecs:builtin_audio_decoder_factory",
|
||||
"../../base:protobuf_utils",
|
||||
"../../base:rtc_base",
|
||||
"../../base:rtc_base_approved",
|
||||
"../../base:rtc_base_tests_utils",
|
||||
|
||||
@ -195,7 +195,7 @@ ControllerManagerImpl::Config::Config(int min_reordering_time_ms,
|
||||
ControllerManagerImpl::Config::~Config() = default;
|
||||
|
||||
std::unique_ptr<ControllerManager> ControllerManagerImpl::Create(
|
||||
const std::string& config_string,
|
||||
const ProtoString& config_string,
|
||||
size_t num_encoder_channels,
|
||||
rtc::ArrayView<const int> encoder_frame_lengths_ms,
|
||||
int min_encoder_bitrate_bps,
|
||||
|
||||
@ -16,6 +16,7 @@
|
||||
#include <vector>
|
||||
|
||||
#include "webrtc/base/constructormagic.h"
|
||||
#include "webrtc/base/protobuf_utils.h"
|
||||
#include "webrtc/modules/audio_coding/audio_network_adaptor/controller.h"
|
||||
|
||||
namespace webrtc {
|
||||
@ -49,7 +50,7 @@ class ControllerManagerImpl final : public ControllerManager {
|
||||
};
|
||||
|
||||
static std::unique_ptr<ControllerManager> Create(
|
||||
const std::string& config_string,
|
||||
const ProtoString& config_string,
|
||||
size_t num_encoder_channels,
|
||||
rtc::ArrayView<const int> encoder_frame_lengths_ms,
|
||||
int min_encoder_bitrate_bps,
|
||||
|
||||
@ -11,6 +11,7 @@
|
||||
#include <utility>
|
||||
|
||||
#include "webrtc/base/ignore_wundef.h"
|
||||
#include "webrtc/base/protobuf_utils.h"
|
||||
#include "webrtc/modules/audio_coding/audio_network_adaptor/controller_manager.h"
|
||||
#include "webrtc/modules/audio_coding/audio_network_adaptor/mock/mock_controller.h"
|
||||
#include "webrtc/system_wrappers/include/clock.h"
|
||||
@ -273,7 +274,7 @@ constexpr int kInitialFrameLengthMs = 60;
|
||||
constexpr int kMinBitrateBps = 6000;
|
||||
|
||||
ControllerManagerStates CreateControllerManager(
|
||||
const std::string& config_string) {
|
||||
const ProtoString& config_string) {
|
||||
ControllerManagerStates states;
|
||||
states.simulated_clock.reset(new SimulatedClock(kClockInitialTime));
|
||||
constexpr size_t kNumEncoderChannels = 2;
|
||||
@ -345,7 +346,7 @@ TEST(ControllerManagerTest, CreateFromConfigStringAndCheckDefaultOrder) {
|
||||
AddFrameLengthControllerConfig(&config);
|
||||
AddBitrateControllerConfig(&config);
|
||||
|
||||
std::string config_string;
|
||||
ProtoString config_string;
|
||||
config.SerializeToString(&config_string);
|
||||
|
||||
auto states = CreateControllerManager(config_string);
|
||||
@ -376,7 +377,7 @@ TEST(ControllerManagerTest, CreateFromConfigStringAndCheckReordering) {
|
||||
|
||||
AddBitrateControllerConfig(&config);
|
||||
|
||||
std::string config_string;
|
||||
ProtoString config_string;
|
||||
config.SerializeToString(&config_string);
|
||||
|
||||
auto states = CreateControllerManager(config_string);
|
||||
|
||||
@ -12,6 +12,7 @@
|
||||
|
||||
#include "webrtc/base/checks.h"
|
||||
#include "webrtc/base/ignore_wundef.h"
|
||||
#include "webrtc/base/protobuf_utils.h"
|
||||
|
||||
#ifdef WEBRTC_AUDIO_NETWORK_ADAPTOR_DEBUG_DUMP
|
||||
RTC_PUSH_IGNORING_WUNDEF()
|
||||
@ -34,7 +35,7 @@ using audio_network_adaptor::debug_dump::EncoderRuntimeConfig;
|
||||
|
||||
void DumpEventToFile(const Event& event, FileWrapper* dump_file) {
|
||||
RTC_CHECK(dump_file->is_open());
|
||||
std::string dump_data;
|
||||
ProtoString dump_data;
|
||||
event.SerializeToString(&dump_data);
|
||||
int32_t size = event.ByteSize();
|
||||
dump_file->Write(&size, sizeof(size));
|
||||
|
||||
@ -12,7 +12,6 @@
|
||||
#define WEBRTC_MODULES_AUDIO_CODING_AUDIO_NETWORK_ADAPTOR_DEBUG_DUMP_WRITER_H_
|
||||
|
||||
#include <memory>
|
||||
#include <string>
|
||||
|
||||
#include "webrtc/base/constructormagic.h"
|
||||
#include "webrtc/modules/audio_coding/audio_network_adaptor/controller.h"
|
||||
|
||||
@ -18,6 +18,7 @@
|
||||
#include "webrtc/base/checks.h"
|
||||
#include "webrtc/base/logging.h"
|
||||
#include "webrtc/base/numerics/exp_filter.h"
|
||||
#include "webrtc/base/protobuf_utils.h"
|
||||
#include "webrtc/base/safe_conversions.h"
|
||||
#include "webrtc/base/string_to_number.h"
|
||||
#include "webrtc/base/timeutils.h"
|
||||
@ -370,7 +371,7 @@ AudioEncoderOpus::AudioEncoderOpus(
|
||||
audio_network_adaptor_creator_(
|
||||
audio_network_adaptor_creator
|
||||
? std::move(audio_network_adaptor_creator)
|
||||
: [this](const std::string& config_string,
|
||||
: [this](const ProtoString& config_string,
|
||||
RtcEventLog* event_log,
|
||||
const Clock* clock) {
|
||||
return DefaultAudioNetworkAdaptorCreator(config_string,
|
||||
@ -721,7 +722,7 @@ void AudioEncoderOpus::ApplyAudioNetworkAdaptor() {
|
||||
|
||||
std::unique_ptr<AudioNetworkAdaptor>
|
||||
AudioEncoderOpus::DefaultAudioNetworkAdaptorCreator(
|
||||
const std::string& config_string,
|
||||
const ProtoString& config_string,
|
||||
RtcEventLog* event_log,
|
||||
const Clock* clock) const {
|
||||
AudioNetworkAdaptorImpl::Config config;
|
||||
|
||||
@ -19,6 +19,7 @@
|
||||
#include "webrtc/api/audio_codecs/audio_format.h"
|
||||
#include "webrtc/base/constructormagic.h"
|
||||
#include "webrtc/base/optional.h"
|
||||
#include "webrtc/base/protobuf_utils.h"
|
||||
#include "webrtc/common_audio/smoothing_filter.h"
|
||||
#include "webrtc/modules/audio_coding/audio_network_adaptor/include/audio_network_adaptor.h"
|
||||
#include "webrtc/modules/audio_coding/codecs/audio_encoder.h"
|
||||
@ -167,7 +168,7 @@ class AudioEncoderOpus final : public AudioEncoder {
|
||||
|
||||
void ApplyAudioNetworkAdaptor();
|
||||
std::unique_ptr<AudioNetworkAdaptor> DefaultAudioNetworkAdaptorCreator(
|
||||
const std::string& config_string,
|
||||
const ProtoString& config_string,
|
||||
RtcEventLog* event_log,
|
||||
const Clock* clock) const;
|
||||
|
||||
|
||||
@ -25,6 +25,7 @@
|
||||
#include "webrtc/base/ignore_wundef.h"
|
||||
#include "webrtc/base/sha1digest.h"
|
||||
#include "webrtc/base/stringencode.h"
|
||||
#include "webrtc/base/protobuf_utils.h"
|
||||
#include "webrtc/modules/audio_coding/codecs/pcm16b/pcm16b.h"
|
||||
#include "webrtc/modules/audio_coding/neteq/tools/audio_loop.h"
|
||||
#include "webrtc/modules/audio_coding/neteq/tools/rtp_file_source.h"
|
||||
@ -194,7 +195,7 @@ void ResultSink::AddResult(const NetEqNetworkStatistics& stats_raw) {
|
||||
neteq_unittest::NetEqNetworkStatistics stats;
|
||||
Convert(stats_raw, &stats);
|
||||
|
||||
std::string stats_string;
|
||||
ProtoString stats_string;
|
||||
ASSERT_TRUE(stats.SerializeToString(&stats_string));
|
||||
AddMessage(output_fp_, digest_.get(), stats_string);
|
||||
#else
|
||||
@ -207,7 +208,7 @@ void ResultSink::AddResult(const RtcpStatistics& stats_raw) {
|
||||
neteq_unittest::RtcpStatistics stats;
|
||||
Convert(stats_raw, &stats);
|
||||
|
||||
std::string stats_string;
|
||||
ProtoString stats_string;
|
||||
ASSERT_TRUE(stats.SerializeToString(&stats_string));
|
||||
AddMessage(output_fp_, digest_.get(), stats_string);
|
||||
#else
|
||||
|
||||
@ -232,6 +232,7 @@ rtc_static_library("audio_processing") {
|
||||
"../..:webrtc_common",
|
||||
"../../audio/utility:audio_frame_operations",
|
||||
"../../base:gtest_prod",
|
||||
"../../base:protobuf_utils",
|
||||
"../audio_coding:isac",
|
||||
]
|
||||
public_deps = [
|
||||
@ -524,6 +525,7 @@ if (rtc_include_tests) {
|
||||
":audioproc_test_utils",
|
||||
"../..:webrtc_common",
|
||||
"../../base:gtest_prod",
|
||||
"../../base:protobuf_utils",
|
||||
"../../base:rtc_base",
|
||||
"../../base:rtc_base_approved",
|
||||
"../../common_audio:common_audio",
|
||||
@ -655,8 +657,10 @@ if (rtc_include_tests) {
|
||||
deps = [
|
||||
":audio_processing",
|
||||
":audioproc_test_utils",
|
||||
"../../base:protobuf_utils",
|
||||
"//testing/gtest",
|
||||
]
|
||||
|
||||
if (rtc_enable_intelligibility_enhancer) {
|
||||
defines = [ "WEBRTC_INTELLIGIBILITY_ENHANCER=1" ]
|
||||
} else {
|
||||
@ -677,6 +681,7 @@ if (rtc_include_tests) {
|
||||
":audioproc_protobuf_utils",
|
||||
":audioproc_test_utils",
|
||||
"../..:webrtc_common",
|
||||
"../../base:protobuf_utils",
|
||||
"../../base:rtc_base_approved",
|
||||
"../../common_audio",
|
||||
"../../system_wrappers:system_wrappers_default",
|
||||
@ -701,6 +706,7 @@ if (rtc_include_tests) {
|
||||
":audioproc_debug_proto",
|
||||
":audioproc_protobuf_utils",
|
||||
":audioproc_test_utils",
|
||||
"../../base:protobuf_utils",
|
||||
"../../base:rtc_base_approved",
|
||||
"../../common_audio:common_audio",
|
||||
"../../system_wrappers",
|
||||
@ -816,6 +822,7 @@ if (rtc_include_tests) {
|
||||
deps = [
|
||||
":audioproc_debug_proto",
|
||||
"../..:webrtc_common",
|
||||
"../../base:protobuf_utils",
|
||||
"../../base:rtc_base_approved",
|
||||
]
|
||||
}
|
||||
|
||||
@ -1878,11 +1878,11 @@ int AudioProcessingImpl::WriteInitMessage() {
|
||||
audioproc::Init* msg = debug_dump_.capture.event_msg->mutable_init();
|
||||
msg->set_sample_rate(formats_.api_format.input_stream().sample_rate_hz());
|
||||
|
||||
msg->set_num_input_channels(static_cast<google::protobuf::int32>(
|
||||
msg->set_num_input_channels(static_cast<int32_t>(
|
||||
formats_.api_format.input_stream().num_channels()));
|
||||
msg->set_num_output_channels(static_cast<google::protobuf::int32>(
|
||||
msg->set_num_output_channels(static_cast<int32_t>(
|
||||
formats_.api_format.output_stream().num_channels()));
|
||||
msg->set_num_reverse_channels(static_cast<google::protobuf::int32>(
|
||||
msg->set_num_reverse_channels(static_cast<int32_t>(
|
||||
formats_.api_format.reverse_input_stream().num_channels()));
|
||||
msg->set_reverse_sample_rate(
|
||||
formats_.api_format.reverse_input_stream().sample_rate_hz());
|
||||
@ -1952,7 +1952,7 @@ int AudioProcessingImpl::WriteConfigMessage(bool forced) {
|
||||
}
|
||||
config.set_experiments_description(experiments_description);
|
||||
|
||||
std::string serialized_config = config.SerializeAsString();
|
||||
ProtoString serialized_config = config.SerializeAsString();
|
||||
if (!forced &&
|
||||
debug_dump_.capture.last_serialized_config == serialized_config) {
|
||||
return kNoError;
|
||||
|
||||
@ -13,13 +13,13 @@
|
||||
|
||||
#include <list>
|
||||
#include <memory>
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
#include "webrtc/base/criticalsection.h"
|
||||
#include "webrtc/base/function_view.h"
|
||||
#include "webrtc/base/gtest_prod_util.h"
|
||||
#include "webrtc/base/ignore_wundef.h"
|
||||
#include "webrtc/base/protobuf_utils.h"
|
||||
#include "webrtc/base/swap_queue.h"
|
||||
#include "webrtc/base/thread_annotations.h"
|
||||
#include "webrtc/modules/audio_processing/audio_buffer.h"
|
||||
@ -29,7 +29,7 @@
|
||||
#include "webrtc/system_wrappers/include/file_wrapper.h"
|
||||
|
||||
#ifdef WEBRTC_AUDIOPROC_DEBUG_DUMP
|
||||
// Files generated at build-time by the protobuf compiler.
|
||||
// *.pb.h files are generated at build-time by the protobuf compiler.
|
||||
RTC_PUSH_IGNORING_WUNDEF()
|
||||
#ifdef WEBRTC_ANDROID_PLATFORM_BUILD
|
||||
#include "external/webrtc/webrtc/modules/audio_processing/debug.pb.h"
|
||||
@ -200,10 +200,10 @@ class AudioProcessingImpl : public AudioProcessing {
|
||||
ApmDebugDumpThreadState();
|
||||
~ApmDebugDumpThreadState();
|
||||
std::unique_ptr<audioproc::Event> event_msg; // Protobuf message.
|
||||
std::string event_str; // Memory for protobuf serialization.
|
||||
ProtoString event_str; // Memory for protobuf serialization.
|
||||
|
||||
// Serialized string of last saved APM configuration.
|
||||
std::string last_serialized_config;
|
||||
ProtoString last_serialized_config;
|
||||
};
|
||||
|
||||
struct ApmDebugDumpState {
|
||||
|
||||
@ -20,6 +20,7 @@
|
||||
#include "webrtc/base/checks.h"
|
||||
#include "webrtc/base/gtest_prod_util.h"
|
||||
#include "webrtc/base/ignore_wundef.h"
|
||||
#include "webrtc/base/protobuf_utils.h"
|
||||
#include "webrtc/common_audio/include/audio_util.h"
|
||||
#include "webrtc/common_audio/resampler/include/push_resampler.h"
|
||||
#include "webrtc/common_audio/resampler/push_sinc_resampler.h"
|
||||
@ -58,7 +59,7 @@ namespace {
|
||||
// file. This is the typical case. When the file should be updated, it can
|
||||
// be set to true with the command-line switch --write_ref_data.
|
||||
bool write_ref_data = false;
|
||||
const google::protobuf::int32 kChannels[] = {1, 2};
|
||||
const int32_t kChannels[] = {1, 2};
|
||||
const int kSampleRates[] = {8000, 16000, 32000, 48000};
|
||||
|
||||
#if defined(WEBRTC_AUDIOPROC_FIXED_PROFILE)
|
||||
@ -230,7 +231,7 @@ void WriteStatsMessage(const AudioProcessing::Statistic& output,
|
||||
#endif
|
||||
|
||||
void OpenFileAndWriteMessage(const std::string filename,
|
||||
const ::google::protobuf::MessageLite& msg) {
|
||||
const MessageLite& msg) {
|
||||
FILE* file = fopen(filename.c_str(), "wb");
|
||||
ASSERT_TRUE(file != NULL);
|
||||
|
||||
@ -299,8 +300,7 @@ void ClearTempFiles() {
|
||||
remove(kv.second.c_str());
|
||||
}
|
||||
|
||||
void OpenFileAndReadMessage(std::string filename,
|
||||
::google::protobuf::MessageLite* msg) {
|
||||
void OpenFileAndReadMessage(std::string filename, MessageLite* msg) {
|
||||
FILE* file = fopen(filename.c_str(), "rb");
|
||||
ASSERT_TRUE(file != NULL);
|
||||
ReadMessageFromFile(file, msg);
|
||||
|
||||
@ -30,7 +30,7 @@ size_t ReadMessageBytesFromFile(FILE* file, std::unique_ptr<uint8_t[]>* bytes) {
|
||||
}
|
||||
|
||||
// Returns true on success, false on error or end-of-file.
|
||||
bool ReadMessageFromFile(FILE* file, ::google::protobuf::MessageLite* msg) {
|
||||
bool ReadMessageFromFile(FILE* file, MessageLite* msg) {
|
||||
std::unique_ptr<uint8_t[]> bytes;
|
||||
size_t size = ReadMessageBytesFromFile(file, &bytes);
|
||||
if (!size)
|
||||
|
||||
@ -14,6 +14,7 @@
|
||||
#include <memory>
|
||||
|
||||
#include "webrtc/base/ignore_wundef.h"
|
||||
#include "webrtc/base/protobuf_utils.h"
|
||||
|
||||
RTC_PUSH_IGNORING_WUNDEF()
|
||||
#include "webrtc/modules/audio_processing/debug.pb.h"
|
||||
@ -26,7 +27,7 @@ namespace webrtc {
|
||||
size_t ReadMessageBytesFromFile(FILE* file, std::unique_ptr<uint8_t[]>* bytes);
|
||||
|
||||
// Returns true on success, false on error or end-of-file.
|
||||
bool ReadMessageFromFile(FILE* file, ::google::protobuf::MessageLite* msg);
|
||||
bool ReadMessageFromFile(FILE* file, MessageLite* msg);
|
||||
|
||||
} // namespace webrtc
|
||||
|
||||
|
||||
Reference in New Issue
Block a user