Create a server using: ./data_channel_benchmark --server --port 12345 Start the flow of data from the server to a client using: ./data_channel_benchmark --port 12345 --transfer_size 100 The throughput is reported on the server console. The negotiation does not require a 3rd party server and is done over a gRPC transport. No TURN server is configured, so both peers need to be reachable using STUN only. Bug: webrtc:13288 Change-Id: Iac9a96cf390ab465ea45a46bf0b40950c56dfceb Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/235661 Reviewed-by: Harald Alvestrand <hta@webrtc.org> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org> Commit-Queue: Florent Castelli <orphis@webrtc.org> Cr-Commit-Position: refs/heads/main@{#36206}
63 lines
1.7 KiB
Plaintext
63 lines
1.7 KiB
Plaintext
# Copyright 2021 The Chromium Authors. All rights reserved.
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
# found in the LICENSE file.
|
|
|
|
import("//third_party/grpc/grpc_library.gni")
|
|
import("../../webrtc.gni")
|
|
|
|
grpc_library("signaling_grpc_proto") {
|
|
testonly = true
|
|
sources = [ "peer_connection_signaling.proto" ]
|
|
}
|
|
|
|
rtc_library("signaling_interface") {
|
|
sources = [ "signaling_interface.h" ]
|
|
deps = [ "../../api:libjingle_peerconnection_api" ]
|
|
}
|
|
|
|
rtc_library("grpc_signaling") {
|
|
testonly = true
|
|
sources = [
|
|
"grpc_signaling.cc",
|
|
"grpc_signaling.h",
|
|
]
|
|
deps = [
|
|
":signaling_grpc_proto",
|
|
":signaling_interface",
|
|
"../../api:libjingle_peerconnection_api",
|
|
"../../rtc_base:threading",
|
|
"//third_party/grpc:grpc++",
|
|
]
|
|
|
|
defines = [ "GPR_FORBID_UNREACHABLE_CODE=0" ]
|
|
}
|
|
|
|
rtc_executable("data_channel_benchmark") {
|
|
testonly = true
|
|
sources = [
|
|
"data_channel_benchmark.cc",
|
|
"peer_connection_client.cc",
|
|
"peer_connection_client.h",
|
|
]
|
|
deps = [
|
|
":grpc_signaling",
|
|
":signaling_interface",
|
|
"../../api:create_peerconnection_factory",
|
|
"../../api:libjingle_peerconnection_api",
|
|
"../../api:rtc_error",
|
|
"../../api:scoped_refptr",
|
|
"../../api/audio_codecs:builtin_audio_decoder_factory",
|
|
"../../api/audio_codecs:builtin_audio_encoder_factory",
|
|
"../../api/video_codecs:builtin_video_decoder_factory",
|
|
"../../api/video_codecs:builtin_video_encoder_factory",
|
|
"../../rtc_base",
|
|
"../../rtc_base:logging",
|
|
"../../rtc_base:refcount",
|
|
"../../rtc_base:threading",
|
|
"../../system_wrappers:field_trial",
|
|
"//third_party/abseil-cpp/absl/cleanup:cleanup",
|
|
"//third_party/abseil-cpp/absl/flags:flag",
|
|
"//third_party/abseil-cpp/absl/flags:parse",
|
|
]
|
|
}
|