Skip to content
This repository has been archived by the owner on Sep 9, 2024. It is now read-only.

Attempt at fixing packaging and other issues #419

Merged
merged 6 commits into from
Oct 9, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ permissions:
packages: write

env:
PLUGIN_VERSION: "1.2.0"
PLUGIN_VERSION: "1.2.2"
CPP_SDK_VERSION: "2.6.1"
CPP_SDK_URL: "https://github.com/DolbyIO/comms-sdk-cpp/releases/download"
PLUGIN_SOURCE_DIR: "DolbyIO"
Expand Down
34 changes: 34 additions & 0 deletions DolbyIO/Config/FilterPlugin.ini
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,37 @@
; /README.txt
; /Extras/...
; /Binaries/ThirdParty/*.dll
; MacOS
/sdk-release/include/...
/sdk-release/lib/libcac_dvdnr.dylib
/sdk-release/lib/libdlb_vidseg_c_api.dylib
/sdk-release/lib/libdolbyio_comms_media.dylib
/sdk-release/lib/libdolbyio_comms_sdk.dylib
/sdk-release/lib/libdvclient.dylib
/sdk-release/lib/libdvdnr.dylib
/sdk-release/lib/libopencv_core.4.5.dylib
/sdk-release/lib/libopencv_imgcodecs.4.5.dylib
/sdk-release/lib/libopencv_imgproc.4.5.dylib
/sdk-release/lib/libvideo_processor.dylib
/sdk-release/lib/model.dnr
/sdk-release/lib/video_processor.model
; Linux
/sdk-release-ubuntu-20.04-clang10-libc++10/include/...
/sdk-release-ubuntu-20.04-clang10-libc++10/lib/libavcodec.so.59
/sdk-release-ubuntu-20.04-clang10-libc++10/lib/libavformat.so.59
/sdk-release-ubuntu-20.04-clang10-libc++10/lib/libavutil.so.57
/sdk-release-ubuntu-20.04-clang10-libc++10/lib/libcac_dvdnr.so
/sdk-release-ubuntu-20.04-clang10-libc++10/lib/libdolbyio_comms_media.so
/sdk-release-ubuntu-20.04-clang10-libc++10/lib/libdolbyio_comms_sdk.so
/sdk-release-ubuntu-20.04-clang10-libc++10/lib/libdvclient.so
/sdk-release-ubuntu-20.04-clang10-libc++10/lib/model.dnr
; Windows
/sdk-release/include/...
/sdk-release/bin/*.dll
/sdk-release/bin/model.dnr
/sdk-release/bin/video_processor.model
/sdk-release/lib/dolbyio_comms_media.lib
/sdk-release/lib/dolbyio_comms_sdk.lib
/sdk-release/lib/video_processor.lib
; Android
/sdk-release-android/...
2 changes: 1 addition & 1 deletion DolbyIO/DolbyIO.uplugin
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"FileVersion": 3,
"Version": 1,
"VersionName": "1.2.0",
"VersionName": "1.2.2",
"FriendlyName": "Dolby.io Virtual Worlds",
"Description": "Plugin integrating Dolby.io Communications.",
"Category": "Communications",
Expand Down
5 changes: 3 additions & 2 deletions DolbyIO/Source/DolbyIO.Build.cs
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ public DolbyIO(ReadOnlyTargetRules Target) : base(Target)

string[] Dlls = new string[] { "avutil-57.dll",
"avcodec-59.dll",
"avformat-59.dll",
"dvclient.dll",
"dolbyio_comms_media.dll",
"dolbyio_comms_sdk.dll",
Expand Down Expand Up @@ -69,12 +70,12 @@ public DolbyIO(ReadOnlyTargetRules Target) : base(Target)
{
RuntimeDependencies.Add(Lib);
}
RuntimeDependencies.Add(Path.Combine(LibDir, "libdlb_vidseg_c_api.dylib"));
RuntimeDependencies.Add(Path.Combine(LibDir, "libdvclient.dylib"));
RuntimeDependencies.Add(Path.Combine(LibDir, "libdvdnr.dylib"));
RuntimeDependencies.Add(Path.Combine(LibDir, "libopencv_core.4.5.dylib"));
RuntimeDependencies.Add(Path.Combine(LibDir, "libopencv_imgcodecs.4.5.dylib"));
RuntimeDependencies.Add(Path.Combine(LibDir, "libopencv_imgproc.4.5.dylib"));
RuntimeDependencies.Add(Path.Combine(LibDir, "libdvdnr.dylib"));
RuntimeDependencies.Add(Path.Combine(LibDir, "libdlb_vidseg_c_api.dylib"));
RuntimeDependencies.Add(Path.Combine(LibDir, "model.dnr"));
RuntimeDependencies.Add(Path.Combine(LibDir, "video_processor.model"));
}
Expand Down
28 changes: 17 additions & 11 deletions DolbyIO/Source/Private/DolbyIOModule.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,11 @@ class FDolbyIOModule final : public IModuleInterface
[](std::size_t Count, std::size_t Al) { return ::operator new(Count, static_cast<std::align_val_t>(Al)); },
::operator delete,
[](void* Ptr, std::size_t Al) { ::operator delete(Ptr, static_cast<std::align_val_t>(Al)); }};
// Add this here as I am not sure how Windows paths are interpreted (do I need the backslash)
BaseDir = FPaths::Combine(BaseDir, TEXT("bin"));
LoadDll(BaseDir, "avutil-57.dll");
LoadDll(BaseDir, "avcodec-59.dll");
LoadDll(BaseDir, "avformat-59.dll");
LoadDll(BaseDir, "dvclient.dll");
LoadDll(BaseDir, "dolbyio_comms_media.dll");
LoadDll(BaseDir, "dolbyio_comms_sdk.dll");
Expand All @@ -39,19 +41,23 @@ class FDolbyIOModule final : public IModuleInterface
LoadDll(BaseDir, "video_processor.dll");
dolbyio::comms::plugin::video_processor::set_app_allocator(Allocator);
#elif PLATFORM_MAC
BaseDir = FPaths::Combine(BaseDir, TEXT("lib"));
LoadDll(BaseDir, "libdolbyio_comms_media.dylib");
LoadDll(BaseDir, "libdolbyio_comms_sdk.dylib");
LoadDll(BaseDir, "libvideo_processor.dylib");
LoadDll(BaseDir, "lib/libdvclient.dylib");
LoadDll(BaseDir, "lib/libdolbyio_comms_media.dylib");
LoadDll(BaseDir, "lib/libdolbyio_comms_sdk.dylib");
LoadDll(BaseDir, "lib/libopencv_core.4.5.dylib");
LoadDll(BaseDir, "lib/libopencv_imgproc.4.5.dylib");
LoadDll(BaseDir, "lib/libopencv_imgcodecs.4.5.dylib");
LoadDll(BaseDir, "lib/libdlb_vidseg_c_api.dylib");
LoadDll(BaseDir, "lib/libdvdnr.dylib");
LoadDll(BaseDir, "lib/libvideo_processor.dylib");
#elif PLATFORM_LINUX
BaseDir += "-ubuntu-20.04-clang10-libc++10";
BaseDir = FPaths::Combine(BaseDir, TEXT("lib"));
LoadDll(BaseDir, "libavutil.so.57");
LoadDll(BaseDir, "libavcodec.so.59");
LoadDll(BaseDir, "libavformat.so.59");
LoadDll(BaseDir, "libdvclient.so");
LoadDll(BaseDir, "libdolbyio_comms_media.so");
LoadDll(BaseDir, "libdolbyio_comms_sdk.so");
LoadDll(BaseDir, "lib/libavutil.so.57");
LoadDll(BaseDir, "lib/libavcodec.so.59");
LoadDll(BaseDir, "lib/libavformat.so.59");
LoadDll(BaseDir, "lib/libdvclient.so");
LoadDll(BaseDir, "lib/libdolbyio_comms_media.so");
LoadDll(BaseDir, "lib/libdolbyio_comms_sdk.so");
#endif
}

Expand Down
2 changes: 1 addition & 1 deletion DolbyIO/Source/Private/Subsystem/DolbyIOScreenshare.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,7 @@ void UDolbyIOSubsystem::GetCurrentScreenshareSource()
void UDolbyIOSubsystem::Handle(const screen_share_error& Event)
{
DLB_UE_LOG_BASE(Warning, "Received screen_share_error event source=%s type=%s description=%s force_stopped=%d",
*ToString(Event.source), Event.type, *ToFString(Event.description), Event.force_stopped);
*ToString(Event.source), *ToString(Event.type), *ToFString(Event.description), Event.force_stopped);
if (Event.force_stopped)
{
StopScreenshare();
Expand Down
12 changes: 12 additions & 0 deletions DolbyIO/Source/Private/Utils/DolbyIOConversions.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,18 @@ namespace DolbyIO
*(ToFText(Source.title).ToString()));
}

FString ToString(dolbyio::comms::screen_share_error::error_type err_type) {
switch (err_type) {
case dolbyio::comms::screen_share_error::error_type::continuos_temporary:
return "Continuous but temporary";
case dolbyio::comms::screen_share_error::error_type::permanent:
return "Permanent";
default:
return "";
}
}


EDolbyIOParticipantStatus ToEDolbyIOParticipantStatus(std::optional<participant_status> Status)
{
if (Status)
Expand Down
1 change: 1 addition & 0 deletions DolbyIO/Source/Private/Utils/DolbyIOConversions.h
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ namespace DolbyIO
FString ToString(enum dolbyio::comms::audio_device::direction Direction);
FString ToString(const dolbyio::comms::camera_device& Device);
FString ToString(const dolbyio::comms::screen_share_source& Source);
FString ToString(dolbyio::comms::screen_share_error::error_type err_type);

EDolbyIOParticipantStatus ToEDolbyIOParticipantStatus(std::optional<dolbyio::comms::participant_status> Status);
FDolbyIOParticipantInfo ToFDolbyIOParticipantInfo(const dolbyio::comms::participant_info& Info);
Expand Down
24 changes: 17 additions & 7 deletions docs/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.