I'm trying to build the plugin on Linux with the RunUAT BuildPlugin command.
All tried branches (master & dev) and tagged versions (1.7.0 and 1.8.0) fail with the following error:
/home/up4dadmin/MillicastPublisher/MillicastPublisherPacked/HostProject/Plugins/MillicastPublisher/Source/MillicastPublisher/Private/Components/MillicastScreenCapturerComponent.h(23): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
/home/up4dadmin/MillicastPublisher/MillicastPublisherPacked/HostProject/Plugins/MillicastPublisher/Source/MillicastPublisher/Private/Components/MillicastScreenCapturerComponent.h(26): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
/home/up4dadmin/MillicastPublisher/MillicastPublisherPacked/HostProject/Plugins/MillicastPublisher/Source/MillicastPublisher/Private/Components/MillicastScreenCapturerComponent.h(29): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
/home/up4dadmin/MillicastPublisher/MillicastPublisherPacked/HostProject/Plugins/MillicastPublisher/Source/MillicastPublisher/Private/Components/MillicastScreenCapturerComponent.h(41): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
/home/up4dadmin/MillicastPublisher/MillicastPublisherPacked/HostProject/Plugins/MillicastPublisher/Source/MillicastPublisher/Private/Components/MillicastScreenCapturerComponent.h(44): Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
Seems an explicit Category must be specified in MillicastScreenCapturerComponent.h at 23, 26, 29, 41, 44.
Adding , Category = "Millicast Publisher" to these lines solved this problem.
But finally ended up with these errors:
[4/7] Compile Module.MillicastPublisher.cpp
In file included from /home/up4dadmin/MillicastPublisher/MillicastPublisherPacked/HostProject/Plugins/MillicastPublisher/Intermediate/Build/Linux/x64/UnrealEditor/Development/MillicastPublisher/Module.MillicastPublisher.cpp:20:
In file included from /home/up4dadmin/MillicastPublisher/MillicastPublisherPacked/HostProject/Plugins/MillicastPublisher/Source/MillicastPublisher/Private/Media/AudioCapturerBase.cpp:4:
/home/up4dadmin/MillicastPublisher/MillicastPublisherPacked/HostProject/Plugins/MillicastPublisher/Source/MillicastPublisher/Private/Media/AudioSubmixCapturer.h:11:63: error: base class has incomplete type
class AudioSubmixCapturer : public AudioCapturerBase, public ISubmixBufferListener
/mnt/up4d-fs-data-01/UnrealEngine/Engine/Source/Runtime/Engine/Classes/Sound/SoundSubmix.h:25:7: note: forward declaration of 'ISubmixBufferListener'
class ISubmixBufferListener;
^
In file included from /home/up4dadmin/MillicastPublisher/MillicastPublisherPacked/HostProject/Plugins/MillicastPublisher/Intermediate/Build/Linux/x64/UnrealEditor/Development/MillicastPublisher/Module.MillicastPublisher.cpp:20:
In file included from /home/up4dadmin/MillicastPublisher/MillicastPublisherPacked/HostProject/Plugins/MillicastPublisher/Source/MillicastPublisher/Private/Media/AudioCapturerBase.cpp:4:
/home/up4dadmin/MillicastPublisher/MillicastPublisherPacked/HostProject/Plugins/MillicastPublisher/Source/MillicastPublisher/Private/Media/AudioSubmixCapturer.h:28:84: error: only virtual member functions can be marked 'override'
int32 NumSamples, int32 NumChannels, const int32 SampleRate, double AudioClock) override;
^~~~~~~~
In file included from /home/up4dadmin/MillicastPublisher/MillicastPublisherPacked/HostProject/Plugins/MillicastPublisher/Intermediate/Build/Linux/x64/UnrealEditor/Development/MillicastPublisher/Module.MillicastPublisher.cpp:20:
/home/up4dadmin/MillicastPublisher/MillicastPublisherPacked/HostProject/Plugins/MillicastPublisher/Source/MillicastPublisher/Private/Media/AudioCapturerBase.cpp:22:42: error: cannot initialize return object of type 'IMillicastAudioSource *' with an rvalue of type 'AudioSubmixCapturer *'
case EAudioCapturerType::Submix: return new AudioSubmixCapturer;
^~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/up4dadmin/MillicastPublisher/MillicastPublisherPacked/HostProject/Plugins/MillicastPublisher/Intermediate/Build/Linux/x64/UnrealEditor/Development/MillicastPublisher/Module.MillicastPublisher.cpp:22:
/home/up4dadmin/MillicastPublisher/MillicastPublisherPacked/HostProject/Plugins/MillicastPublisher/Source/MillicastPublisher/Private/Media/AudioSubmixCapturer.cpp:63:45: error: cannot initialize a parameter of type 'ISubmixBufferListener *' with an rvalue of type 'Millicast::Publisher::AudioSubmixCapturer *'
AudioDevice->RegisterSubmixBufferListener(this, Submix);
^~~~
/mnt/up4d-fs-data-01/UnrealEngine/Engine/Source/Runtime/Engine/Public/AudioDevice.h:970:78: note: passing argument to parameter 'InSubmixBufferListener' here
ENGINE_API virtual void RegisterSubmixBufferListener(ISubmixBufferListener* InSubmixBufferListener, USoundSubmix* SoundSubmix = nullptr);
^
In file included from /home/up4dadmin/MillicastPublisher/MillicastPublisherPacked/HostProject/Plugins/MillicastPublisher/Intermediate/Build/Linux/x64/UnrealEditor/Development/MillicastPublisher/Module.MillicastPublisher.cpp:22:
/home/up4dadmin/MillicastPublisher/MillicastPublisherPacked/HostProject/Plugins/MillicastPublisher/Source/MillicastPublisher/Private/Media/AudioSubmixCapturer.cpp:65:3: error: cannot initialize object parameter of type 'Millicast::Publisher::AudioCapturerBase' with an expression of type 'Millicast::Publisher::AudioSubmixCapturer'
CreateRtcSourceTrack();
^~~~~~~~~~~~~~~~~~~~
/home/up4dadmin/MillicastPublisher/MillicastPublisherPacked/HostProject/Plugins/MillicastPublisher/Source/MillicastPublisher/Private/Media/AudioSubmixCapturer.cpp:80:48: error: cannot initialize a parameter of type 'ISubmixBufferListener *' with an rvalue of type 'Millicast::Publisher::AudioSubmixCapturer *'
AudioDevice->UnregisterSubmixBufferListener(this, Submix);
^~~~
/mnt/up4d-fs-data-01/UnrealEngine/Engine/Source/Runtime/Engine/Public/AudioDevice.h:976:80: note: passing argument to parameter 'InSubmixBufferListener' here
ENGINE_API virtual void UnregisterSubmixBufferListener(ISubmixBufferListener* InSubmixBufferListener, USoundSubmix* SoundSubmix = nullptr);
^
In file included from /home/up4dadmin/MillicastPublisher/MillicastPublisherPacked/HostProject/Plugins/MillicastPublisher/Intermediate/Build/Linux/x64/UnrealEditor/Development/MillicastPublisher/Module.MillicastPublisher.cpp:22:
/home/up4dadmin/MillicastPublisher/MillicastPublisherPacked/HostProject/Plugins/MillicastPublisher/Source/MillicastPublisher/Private/Media/AudioSubmixCapturer.cpp:105:4: error: no matching member function for call to 'SendAudio'
SendAudio(InAudioData, InNumSamples, InNumChannels);
^~~~~~~~~
/home/up4dadmin/MillicastPublisher/MillicastPublisherPacked/HostProject/Plugins/MillicastPublisher/Source/MillicastPublisher/Private/Media/AudioCapturerBase.cpp:42:25: note: candidate function not viable: no known conversion from 'Millicast::Publisher::AudioSubmixCapturer' to 'Millicast::Publisher::AudioCapturerBase' for object argument
void AudioCapturerBase::SendAudio(const float* InAudioData, int32 InNumSamples, int32 InNumChannels)
^
/home/up4dadmin/MillicastPublisher/MillicastPublisherPacked/HostProject/Plugins/MillicastPublisher/Source/MillicastPublisher/Private/Media/AudioCapturerBase.cpp:61:25: note: candidate function not viable: no known conversion from 'Millicast::Publisher::AudioSubmixCapturer' to 'Millicast::Publisher::AudioCapturerBase' for object argument
void AudioCapturerBase::SendAudio(const int16* InAudioData, int32 InNumSamples, int32 InNumChannels)
^
/home/up4dadmin/MillicastPublisher/MillicastPublisherPacked/HostProject/Plugins/MillicastPublisher/Source/MillicastPublisher/Private/Media/AudioCapturerBase.cpp:77:25: note: candidate function not viable: requires 0 arguments, but 3 were provided
void AudioCapturerBase::SendAudio()
^
Hi there,
I'm trying to build the plugin on Linux with the RunUAT BuildPlugin command. All tried branches (master & dev) and tagged versions (1.7.0 and 1.8.0) fail with the following error:
Seems an explicit Category must be specified in MillicastScreenCapturerComponent.h at 23, 26, 29, 41, 44. Adding
, Category = "Millicast Publisher"
to these lines solved this problem.But finally ended up with these errors:
Can you please look into this??
Cheers