Code Monkey home page Code Monkey logo

agora-unreal-sdk-cpp's Introduction

deprecated

The new github repository address is https://github.com/AgoraIO-Extensions/Agora-Unreal-RTC-SDK, if you want to use it, please click.

AgoraVideoCall Sample App

The Agora Video Call is a demo app that will help you integrate Real Time Engagement directly into your Unreal Engine applications using the AgoraPlugin, that wraps Agora Video SDK.

With this sample app, you can:

  • Join / leave channel
  • Mute / unmute audio
  • Enable / disable video
  • Switch camera
  • Setup resolution and frame rate

Developed with Unreal Engine 4.23

There are two implementations of Agora Video Call demo application:

  1. C++ based.
  2. Blueprints based.

Supported Platforms

Windows 64-bit

Mac

iOS

Getting Started IMPORTANT

If you are starting with a blank project, start with C++ template

Agora plugin is implemented as separate module. Download the plugin .zip file here and add the AgoraPlugin folder to the "Plugins" folder inside your Unreal project.

You can simply unzip and drop the entire AgoraPlugin folder inside of Plugins, and you're good to go! The folder structure should like like /Plugins/AgoraPlugin/

Building and Running the App

Open AgoraVideoCall.uproject with Unreal Editor 4.23-4.25. To test Agora functionality, you have to package the project and run as a standalone build, or if testing on iOS use Unreal's "Launch" feature.

To package the project:

Windows

File->Package Project->Windows->Windows(64-bit) then select a folder where you want to package and wait for result. Alt text

Mac

File -> Package Project -> Mac

Alt text

Add the following permissions in the info.plist file for device access:

  1. Right click .app file - select "Show Package Contents"
  2. Go to "Contents->Info.plist"
  3. Click the plus next to "Information Property List" and add:

Privacy - Camera Usage Description

Privacy - Microphone Usage Description

Add AgoraRtcKit.framework to your newly built project

  1. Package the project from Unreal
  2. From inside the Plugins folder of the project, copy the file: AgoraRtcKit.framework from Plugins/AgoraPlugin/Source/ThirdParty/Agora/Mac/Release to
  3. Paste file into your newly built project folder (Packaged project dir)/MacNoEditor/[project_name]/Contents/MacOS/

iOS Packaging

To package the project for iOS, you need to have a Signing Certificate and Provisioning Profile and add it to your project. I would highly recommend going to Project Settings > Platforms > iOS > Build > and check "Automatic Signing" - this saves me a lot of headache.

iOS settings

If you don't have one: follow the instructions from UE4 documentation: iOS Provisioning Go to the Edit->Project Settings->Platforms: iOS, then select the certificate and provisioning profile you created.

If you don't see one of them in the table, click Import Certificate or Import Provision, chose the right file in Finder and click Open.

Then enter a Bundle Identifier: it must be the Bundle Id you used during certificate creation.

iOS Testing

To test your Agora project on your iOS device:

  1. Connect your phone to your computer via USB
  2. Make sure your signing certificates are all up to date and working
  3. In the Unreal "Toolbar" (Save, Compile, Source Control, etc.) click the "Launch" button (to the right of Play) with your device selected in the dropdown

iOS permissions

In the iOS you also need the following permissions:

Privacy - Camera Usage Description

Privacy - Microphone Usage Description

To add them in the info.plist go to the Edit->Project Settings->Platforms: iOS and enter the following line to Additional Plist Data: <key>NSCameraUsageDescription</key><string>AgoraVideoCall</string> <key>NSMicrophoneUsageDescription</key><string>AgoraVideoCall</string>

Now you are ready to package your project for iOS or launch it on iOS device.

Plugin Dependencies

  1. Copy the plugin to [your_project]/Plugins
  2. Add plugin dependency into [your_project]/Source/[project_name]/[project_name].Build.cs, Private Dependencies section

PrivateDependencyModuleNames.AddRange(new string[] { "AgoraPlugin", "AgoraBlueprintable" });

If the version of your Unreal Editor is 4.24 or higher add the following into [your_project]/Source/[project_name]Editor.Target.cs

DefaultBuildSettings = BuildSettingsVersion.V2;

  1. Open Unreal Project, go to Edit->Plugins. Find category Project->Other and make sure plugin is enabled.

Enable Plugin

Connect With Us

agora-unreal-sdk-cpp's People

Contributors

digitallysavvy avatar icywind avatar joel-agora avatar joelthomas362 avatar onesitdown avatar sidsharma27 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

agora-unreal-sdk-cpp's Issues

Meeting with Customer dev to solve Agora + custom engine issue

Issue
When Gathr attempts to open their project in the Unreal Editor using a Mac, they are consistently blocked by an error.

Solution
Provide a fix to the plugin, or instructions Gathr can follow to avoid this blocking issue

More Context
Using a Mac with a blank project does not cause this error. It appears to be related to something involving Gathr's engine settings, plugins, code, etc.

Include PC, Mac, Android, iOS Build Support into Single Plugin

Issue
Currently, the plugin builds are separated into two different branches:

  • Mac, PC, Android
  • iOS

Solution
Include iOS build support into plugin along with the other platforms

Additional context
The iOS separation was caused by fundamental changes to Agora SDK. Support might be needed from Agora team to make this happen

Failed To Load Agora Third Party Plugin

1

On Making a build its shows this message and crashes

Hey Saurabh,

What platform are you using, and what version of Unreal Engine are you using?

Hello Joel,

My bad!! I forgot to package the plugin as well

Thanks for the reply though

Agora Windows Error

Describe the bug
In AgoraService.h, the platform check for IOS is improperly formatted and causes the compile to fail.
This:
#if defined (__APPLE__ && TARGET_OS_IPHONE) #include <Agora/iOS/Include/IAgoraService.h> #else #include <Agora/IAgoraService.h> #endif
Should be:
#if defined (__APPLE__) && (TARGET_OS_IPHONE) #include <Agora/iOS/Include/IAgoraService.h> #else #include <Agora/IAgoraService.h> #endif

To Reproduce
Steps to reproduce the behavior:

  1. Create new UE 4.25 project.
  2. Install Agora plugin.
  3. Open project solution file in Visual Studio 2019.
  4. Compile solution.

Expected behavior
The Agora plugin should not cause any compilation issues.

Screenshots
n/a.

Desktop (please complete the following information):

  • OS: Windows 10
  • UE Version: 4.25.3
  • Agora SDK Version: 3.0.1

Unreal SDK BP Refactor

Blueprint wrapper Doesn't include all functionality
The Blueprint wrapper doesn't reflect Agora's native functionality.
Currently, it has been modified at Nix's discretion for Unreal adaptation.

Solution
The Blueprint wrapper includes functions that have been left out.

Nix Comments
Pure c++ version is not available in blueprints,
blueprints version is available in c++ but its interface is different from native agora SDK.

In the current implementation, we are faced with the fact that sometimes users try to mix approaches.
This use case was not included in the plugin idea and leads to incorrect plugin behavior.
We suggest to merge ั++ module and blueprints module to have a single approach customers should work with.

Actions that should be done:

  • Exclude ั++ module from the plugin, make single interface.
  • Extend blueprints module with pure c++ functions.
  • Add pure blueprint functions such as registerMediaMetadataObserver, registerPacketObserver to UIAgora class, check the rest of the functions that could be missing.
  • Handle IMediaEngine class (currently it is incapsulated into UIAgora class and only registerAudioFrameObserver and registerVideoFrameObserver are available).
  • Find out if the function queryInterface should be added to the plugin.
  • Find the way how to save native sdk interface in the plugin and extend it with simplified blueprint functions.
  • IRtcEngineParameter class functions are currently integrated in the UIAgora class, double check the idea, probably it is possible to leave them in some IRtcEngineParameter heir.
  • Update the documentation.
  • Remake the c++ demo based on a new plugin

enableSoundPositionIndication(true) - Crash when many people are talking at once

Describe the bug
Broadcasting to a voice channel with many instances causes a crash after enabling positional audio.

To Reproduce
Instances will crash randomly/when spikes in volume occur:

  1. Call method enableSoundPositionIndication(true) from rtcEngine
  2. Connect to a voice channel with many instances of game on one device (I reproduced with >10 instances of the game)
  3. Start broadcasting audio (playing music is easiest way to reproduce)
  4. Some instances will crash pointing to agora_rtc_sdk.dll

All instances will crash once microphone is unmuted:

  1. Call method enableSoundPositionIndication(true) from rtcEngine
  2. Mute your input device
  3. Connect to a voice channel with many instances of game on one device (I reproduced with >10 instances of the game)
  4. Start broadcasting audio (playing music is easiest way to reproduce)
  5. Unmute your input device so that other instances receive audio at the same time.
  6. All instances will crash pointing to agora_rtc_sdk.dll

Expected behavior
Positional audio works smoothly and there is no crash

Screenshots
I have reproduced the crash in the editor with Rider for Unreal 2021.2. It points to agora_core_audio_render_thread and the method AgoraRTC::ChENetwork::~ChENetwork(void)
stacktrace

Desktop:

  • OS: Windows 10
  • Version: 19042.1165

Additional context
Been reproduced when joining a single Agora voice channel and also joining multiple Agora channels

Text Chat via StreamMessage

Stream Messages weren't able to be sent to multiple channels
As a user, I can send text chats to one person, but not to people using multiple Agora channels

Solution
Stream Messages are able to be sent through IChannel objects, for the purpose of text chat through multiple Agora channels

Spatial Audio

Agora cannot pass audio frames by specific user
When Gathr devs try to get audio from Agora users, it comes in one giant block of all user audio mixed together.

Solution: Return audio frames by specific Agora UID

The Gathr team resources
Gathr has provided example code, email descriptions and Slack messages providing extra context and support.

[FEATURE] Android support?

I can see that the Unreal Blueprint demo app runs on Android. However this CPP demo app is Windows, Web and IOS only. Looking through the code, I cant see why though as the Unreal project is cross-platform. Or am I missing something?

I can't compile the project successul.

There is an error when I compile the original project.

1>------ Build started: Project: AgoraVideoCall, Configuration: Development_Editor x64 ------ 1>Creating makefile for AgoraVideoCallEditor (no existing makefile) 1>UnrealBuildTool : warning : Library 'agora_rtc_sdk.lib' was not resolvable to a file when used in Module 'Agora', assuming it is a filename and will search library paths for it. This is slow and dependency checking will not work for it. Please update reference to be fully qualified alternatively use PublicSystemLibraryPaths if you do intended to use this slow path to suppress this warning. 1>Parsing headers for AgoraVideoCallEditor 1> Running UnrealHeaderTool "E:\Unreal Plugins\Agora-Unreal-SDK-CPP-master\AgoraVideoCall.uproject" "E:\Unreal Plugins\Agora-Unreal-SDK-CPP-master\Intermediate\Build\Win64\AgoraVideoCallEditor\Development\AgoraVideoCallEditor.uhtmanifest" -LogCmds="loginit warning, logexit warning, logdatabase error" -Unattended -WarningsAsErrors -installed 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(173) : LogCompile: Error: 'EFRAME_RATE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(197) : LogCompile: Error: 'EORIENTATION_MODE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(209) : LogCompile: Error: 'EDEGRADATION_PREFERENCE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(333) : LogCompile: Error: 'ECAPTURER_OUTPUT_PREFERENCE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(373) : LogCompile: Error: 'EAUDIO_PROFILE_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(394) : LogCompile: Error: 'EAUDIO_SCENARIO_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(420) : LogCompile: Error: 'EAUDIO_EQUALIZATION_BAND_FREQUENCY' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(436) : LogCompile: Error: 'EAUDIO_REVERB_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(466) : LogCompile: Error: 'EAUDIO_REVERB_PRESET' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(476) : LogCompile: Error: 'ECLIENT_ROLE_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(488) : LogCompile: Error: 'EPRIORITY_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(506) : LogCompile: Error: 'ERENDER_MODE_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(516) : LogCompile: Error: 'EAUDIO_CODEC_PROFILE_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(540) : LogCompile: Error: 'ERAW_AUDIO_FRAME_OP_MODE_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(554) : LogCompile: Error: 'ESTREAM_FALLBACK_OPTIONS' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(574) : LogCompile: Error: 'EVOICE_CHANGER_PRESET' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(586) : LogCompile: Error: 'EVIDEO_MIRROR_MODE_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(604) : LogCompile: Error: 'EAUDIO_RECORDING_QUALITY_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(616) : LogCompile: Error: 'ELIGHTENING_CONTRAST_LEVEL' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(628) : LogCompile: Error: 'EAUDIO_SAMPLE_RATE_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(639) : LogCompile: Error: 'EVIDEO_CODEC_PROFILE_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(1332) : LogCompile: Error: 'EUSER_OFFLINE_REASON_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(1374) : LogCompile: Error: 'ECHANNEL_PROFILE_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(1396) : LogCompile: Error: 'EVIDEO_FRAME_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(1435) : LogCompile: Error: 'EVIDEO_CONTENT_HINT' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(1447) : LogCompile: Error: 'ELASTMILE_PROBE_RESULT_STATE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(1503) : LogCompile: Error: 'EQUALITY_ADAPT_INDICATION' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(1517) : LogCompile: Error: 'EVIDEO_CODEC_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(1595) : LogCompile: Error: 'EREMOTE_VIDEO_STREAM_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(1747) : LogCompile: Error: 'ELOCAL_AUDIO_STREAM_ERROR' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(1764) : LogCompile: Error: 'ELOCAL_AUDIO_STREAM_STATE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(1793) : LogCompile: Error: 'EREMOTE_AUDIO_STATE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(1830) : LogCompile: Error: 'EREMOTE_AUDIO_STATE_REASON' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(1853) : LogCompile: Error: 'EMEDIA_DEVICE_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(1870) : LogCompile: Error: 'EAUDIO_MIXING_STATE_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(1887) : LogCompile: Error: 'EAUDIO_MIXING_ERROR_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(1904) : LogCompile: Error: 'ELOCAL_VIDEO_STREAM_STATE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(1927) : LogCompile: Error: 'ELOCAL_VIDEO_STREAM_ERROR' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(1952) : LogCompile: Error: 'EREMOTE_VIDEO_STATE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(1987) : LogCompile: Error: 'EREMOTE_VIDEO_STATE_REASON' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(2004) : LogCompile: Error: 'ECHANNEL_MEDIA_RELAY_STATE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(2051) : LogCompile: Error: 'ECHANNEL_MEDIA_RELAY_ERROR' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(2094) : LogCompile: Error: 'ECHANNEL_MEDIA_RELAY_EVENT' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(2122) : LogCompile: Error: 'ERTMP_STREAM_PUBLISH_STATE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(2160) : LogCompile: Error: 'ERTMP_STREAM_PUBLISH_ERROR' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(2186) : LogCompile: Error: 'EAUDIO_ROUTE_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(2229) : LogCompile: Error: 'ECONNECTION_STATE_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(2283) : LogCompile: Error: 'ECONNECTION_CHANGED_REASON_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>E:/Unreal Plugins/Agora-Unreal-SDK-CPP-master/Plugins/AgoraPlugin/Source/AgoraBlueprintable/Public/UECompatibility.h(2309) : LogCompile: Error: 'ENETWORK_TYPE' does not have a 0 entry! (This is a problem when the enum is initalized by default) 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.MakeFile.Targets(46,5): error MSB3075: The command "chcp 65001 >NUL && "D:\Program Files\UE_4.24\Engine\Build\BatchFiles\Build.bat" AgoraVideoCallEditor Win64 Development -Project="E:\Unreal Plugins\Agora-Unreal-SDK-CPP-master\AgoraVideoCall.uproject" -WaitMutex -FromMsBuild" exited with code 5. Please verify that you have sufficient rights to run this command. 1>Done building project "AgoraVideoCall.vcxproj" -- FAILED. ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

I have tried to modify the path of agora_rtc_sdk.lib ,but it doesn't work. Can you give me some help? I use UE4.24, vs2019, win10.
Image_20200609090102

Unreal SDK C++ Refactor

C++ SDK isn't to parity with Agora Native SDK
The C++ SDK currently doesn't reflect Agora's native C++ SDK.
Currently, it has been modified at Nix's discretion for Unreal adaptation.

Solution
The C++ SDK reflects the standard with which Agora has built their C++ SDK, adapted for Unreal code standards, etc.

For Nix
Please include what needs to be changed in C++ wrapper here

PC Platform Support for Unreal 4.25.3

Problem
Unreal updated the engine to 4.25.3, causing errors during PC builds for the plugin and project.
As Unreal automatically updates the engine, this is a blocker for PC users.

Solution

  • Identify what changes to the engine broke the build support, and attach them to this issue so we can understand what happened and avoid this issue in the future if possible.
  • Update the plugin to support Unreal 4.25.3

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.