Error undefined symbol: webrtc::FakeFrameEncryptor

126 views
Skip to first unread message

Ivan Hutomo

unread,
Aug 1, 2022, 1:57:19 AM8/1/22
to discuss-webrtc
Hi Wi, I tried to set a fake frame encryptor that using FrameEncryptorInterface in peer_connection.cc like below, but when I build I always got some error like this:

Untitled.png

error: undefined symbol:webrtc::FakeFrameEncryptor::FakeFrameEncryptor(unsigned char,unsigned char)

Sorry I am really new to C++ and I could not understand where should I put this FakeFrameEncryptor

I already do this in PeerConnection.cc
#include "api/test/fake_frame_decryptor.h"
#include "api/test/fake_frame_encryptor.h"
#include "api/crypto/frame_decryptor_interface.h"
#include "api/crypto/frame_encryptor_interface.h"

Below is how I attach fake encryptor, I will also attach my peer_connection.cc's and fakeFrameEncryptor file below
if (kind == MediaStreamTrackInterface::kAudioKind) {
auto audio_sender = AudioRtpSender::Create(
worker_thread(), rtc::CreateRandomUuid(), stats_.get(), rtp_manager());
audio_sender->SetMediaChannel(rtp_manager()->voice_media_channel());
new_sender = RtpSenderProxyWithInternal<RtpSenderInternal>::Create(
signaling_thread(), audio_sender);
rtp_manager()->GetAudioTransceiver()->internal()->AddSender(new_sender);
} else if (kind == MediaStreamTrackInterface::kVideoKind) {
// Initiate frame encryptor
rtc::scoped_refptr<FrameEncryptorInterface> fake_frame_encryptor(
new FakeFrameEncryptor());
auto video_sender = VideoRtpSender::Create(
worker_thread(), rtc::CreateRandomUuid(), rtp_manager());
video_sender->SetMediaChannel(rtp_manager()->video_media_channel());

// Set frame encryptor to the sender.
video_sender->SetFrameEncryptor(fake_frame_encryptor);

new_sender = RtpSenderProxyWithInternal<RtpSenderInternal>::Create(
signaling_thread(), video_sender);
rtp_manager()->GetVideoTransceiver()->internal()->AddSender(new_sender);
} else {
RTC_LOG(LS_ERROR) << "CreateSender called with invalid kind: " << kind;
return nullptr;
}
new_sender->internal()->set_stream_ids(stream_ids);

return new_sender;
}

Thank you so much, I really appreciate your time and help

peer_connection.cc
peer_connection.h
fake_frame_encryptor.h
fake_frame_encryptor.cc
Reply all
Reply to author
Forward
0 new messages