Skip to content

Commit c687927

Browse files
committed
Added x unicode char to collate results script.
1 parent 91f2af8 commit c687927

12 files changed

+325
-150
lines changed

.github/workflows/peerconnection-test.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,7 @@ jobs:
151151
152152
- name: Replace Peer Connection Test Results in README
153153
run: |
154-
# Read the new content from DPeerConnection_test_results.md
154+
# Read the new content from PeerConnection_test_results.md
155155
new_content="$(<PeerConnection_test_results.md)"
156156
157157
# Use awk to replace content between the markers

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ Additional libraries/applications that currently have a Server implementation ar
2424
- [gstreamer](https://gstreamer.freedesktop.org/) `master` branch, commit ID `637b0d8dc25b660d3b05370e60a95249a5228a39` 20 Aug 2021 (gst-build commit ID `ebcca1e5ead27cab1eafc028332b1984c84b10b2` 26 Mar 2021).
2525
- [janus](https://janus.conf.meetecho.com/) version `0.10.7`, commit ID `04229be3eeceb28dbc57a70a57928aab223895a5`.
2626
- [kurento](https://www.kurento.org/) version `6.16.1~1.g907a859`.
27-
- [libwebrtc](https://webrtc.googlesource.com/src/) `m90` branch, commit ID `a4da76a880d31f012038ac721ac4abc7ea3ffa2d`, commit date `Fri Apr 9 21:03:39 2021 -0700`.
27+
- [libwebrtc](https://webrtc.googlesource.com/src/) `m132` branch, commit ID `f632fe9be9ce5cef5fcbfd42995271cb3fbb077d`, commit date `Tue Dec 10 09:27:33 2024 +0100`.
2828

2929
## Interoperability Tests
3030

libwebrtc/Dockerfile

+7-7
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,15 @@ COPY --from=builder /src/webrtc-checkout/src /src/webrtc-checkout/src
1414
WORKDIR /src/libwebrtc-webrtc-echo
1515
COPY ["CMakeLists.txt", "fake_audio_capture_module.*", "HttpSimpleServer.*", "json.hpp", "libwebrtc-webrtc-echo.cpp", "PcFactory.*", "PcObserver.*", "./"]
1616
WORKDIR /src/libwebrtc-webrtc-echo/build
17-
#RUN cmake .. && make VERBOSE=1 && cp libwebrtc-webrtc-echo /
17+
RUN cmake .. && make VERBOSE=1 && cp libwebrtc-webrtc-echo /
1818

19-
#FROM ubuntu:latest as final
19+
FROM ubuntu:latest as final
2020

2121
# Install packages with the required runtime libraries.
22-
#RUN apt update && DEBIAN_FRONTEND="noninteractive" apt install -y \
23-
# libevent-dev libx11-dev libglib2.0-dev libatomic1 --no-install-recommends
22+
RUN apt update && DEBIAN_FRONTEND="noninteractive" apt install -y \
23+
libevent-dev libx11-dev libglib2.0-dev libatomic1 --no-install-recommends
2424

25-
#COPY --from=appbuilder /libwebrtc-webrtc-echo /libwebrtc-webrtc-echo
25+
COPY --from=appbuilder /libwebrtc-webrtc-echo /libwebrtc-webrtc-echo
2626

27-
#EXPOSE 8080
28-
#ENTRYPOINT ["/libwebrtc-webrtc-echo"]
27+
EXPOSE 8080
28+
ENTRYPOINT ["/libwebrtc-webrtc-echo"]

libwebrtc/PcFactory.cpp

+3-13
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@
3838
#include <api/video_codecs/video_encoder_factory.h>
3939
#include <media/engine/webrtc_media_engine.h>
4040
#include "api/enable_media.h"
41+
#include "fake_audio_capture_module.h"
4142

4243
#include <iostream>
4344
#include <sstream>
@@ -53,11 +54,6 @@ PcFactory::PcFactory() :
5354
SignalingThread = rtc::Thread::Create();
5455
SignalingThread->Start();
5556

56-
_networkThread = rtc::Thread::CreateWithSocketServer();
57-
_networkThread->Start();
58-
_workerThread = rtc::Thread::Create();
59-
_workerThread->Start();
60-
6157
webrtc::AudioProcessing::Config apmConfig;
6258
apmConfig.gain_controller1.enabled = false;
6359
apmConfig.gain_controller2.enabled = false;
@@ -66,17 +62,11 @@ PcFactory::PcFactory() :
6662
webrtc::PeerConnectionFactoryDependencies _pcf_deps;
6763
_pcf_deps.task_queue_factory = webrtc::CreateDefaultTaskQueueFactory();
6864
_pcf_deps.signaling_thread = SignalingThread.get();
69-
_pcf_deps.network_thread = _networkThread.get();
70-
_pcf_deps.worker_thread = _workerThread.get();
7165
_pcf_deps.event_log_factory = std::make_unique<webrtc::RtcEventLogFactory>(_pcf_deps.task_queue_factory.get());
7266
_pcf_deps.audio_encoder_factory = webrtc::CreateBuiltinAudioEncoderFactory();
7367
_pcf_deps.audio_decoder_factory = webrtc::CreateBuiltinAudioDecoderFactory();
74-
//_pcf_deps.adm = rtc::scoped_refptr<webrtc::AudioDeviceModule>(FakeAudioCaptureModule::Create());
75-
76-
webrtc::AudioProcessing::Config config;
77-
config.gain_controller1.enabled = false;
78-
config.gain_controller2.enabled = false;
79-
_pcf_deps.audio_processing = std::move(apm);
68+
_pcf_deps.adm = rtc::scoped_refptr<webrtc::AudioDeviceModule>(FakeAudioCaptureModule::Create());
69+
_pcf_deps.audio_processing = apm; // Gets moved in EnableMedia.
8070

8171
webrtc::EnableMedia(_pcf_deps);
8272

libwebrtc/PcFactory.h

+10-5
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@
2828
#include "call/call_config.h"
2929
#include "pc/media_factory.h"
3030
#include "rtc_base/checks.h"
31-
//#include <pc/test/fake_audio_capture_module.h>
3231

3332
#include <condition_variable>
3433
#include <memory>
@@ -40,11 +39,17 @@ class PcFactory {
4039
PcFactory();
4140
~PcFactory();
4241
std::string CreatePeerConnection(const char* buffer, int length);
42+
43+
/* The thread logic is now tricky. I was not able to get even a basic peer connection
44+
* example working on Windows in debug mode due to the failing thread checks, see
45+
* https://groups.google.com/u/2/g/discuss-webrtc/c/HG9hzDP2djA
46+
// From peer_connection_interface.h line 1632
47+
// If `network_thread` or `worker_thread` are null, the PeerConnectionFactory
48+
// will create the necessary thread internally. If `signaling_thread` is null,
49+
// the PeerConnectionFactory will use the thread on which this method is called
50+
// as the signaling thread, wrapping it in an rtc::Thread object if needed.
51+
*/
4352
std::unique_ptr<rtc::Thread> SignalingThread;
44-
std::unique_ptr<rtc::Thread> _networkThread;
45-
std::unique_ptr<rtc::Thread> _workerThread;
46-
//rtc::scoped_refptr<webrtc::AudioDeviceModule> _fakeAudioCapture;
47-
//rtc::scoped_refptr<webrtc::AudioDeviceModule> _fakeAudioModule;
4853

4954
private:
5055
rtc::scoped_refptr<webrtc::PeerConnectionFactoryInterface> _peerConnectionFactory;

libwebrtc/README.md

+4-2
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ If the build fails:
1010

1111
2. `docker run -it --init --rm libwebrtc-builder:m132`
1212

13-
## Building end application docker image
13+
## Building echo application docker image
1414

1515
The application image. It builds the application on an instance of the builder image and then copies the binary to a new ubuntu image and installs the required shared library packages.
1616

@@ -22,7 +22,7 @@ If the build fails:
2222

2323
2. `docker run -it --init --rm libwebrtc-webrtc-echo:m132`
2424

25-
## Running docker image
25+
## Running echo application docker image
2626

2727
`docker run -it --init --rm -p 8080:8080 libwebrtc-webrtc-echo:m132`
2828

@@ -55,6 +55,8 @@ src> ninja -C out/Default
5555

5656
Update Dec 2024 for version m132.
5757

58+
NOTE: Only the clang build chain is now supported for the libwebrtc build. To use webrtc.lib with Visual Studio the clang build chain can be installed via the Visual Studio Installer and then selected as the option in the project settings.
59+
5860
Install the Google depot tools as per https://webrtc.googlesource.com/src/+/main/docs/native-code/development/prerequisite-sw/.
5961

6062
In the webrtc-checkout directory, e.g. c:\dev\webrtc-checkout:

0 commit comments

Comments
 (0)