millicast / millicast-player-unreal-engine-plugin

Millicast Player plugin for Unreal Engine
Other
19 stars 15 forks source link

MillicastPlayer plugin for Unreal Engine

This plugin enable to play real time stream from Millicast in your Unreal Engine game. You can configure your credentials and configure your game logic using unreal object and then render the video in a texture2D.

Supported Codecs

Installation

You can install the plugin from the source code. Follow these steps :

It will prompt you, saying if you want to re-build MillicastPlayer plugin, say yes. You are now in the editor and can build your game using MillicastPlayer.

Note: After you package your game, it is possible that you will get an error when launching the game :

"Plugin MillicastPlayer could not be load because module MillicastPlayer has not been found"

And then the game fails to launch. That is because Unreal has excluded the plugin. If that is the case, create an empty C++ class in your project. This will force Unreal to include the plugin. Then, re-package the game, launch it, and it should be fixed.

Installation steps for Mac or H264 playback

If you want to run the plugin on Mac, or have H264 decoding support, you will need to use our webrtc library instead of the Unreal one. You need to add it directly into your project, in the plugin ThirdParty.

Download the ThirdParty.zip file that you can find in the release assets of the latest github release.

Then, extract it and move the ThirdParty folder into the Source folder of the plugins. After that, you should be able to build and run the plugin using our WebRTC library.

Installation steps for Android

Installs needed for Android:

Java JDK

SDK

After extraction, you will have to copy the ndk folder path and set it in Unreal Engine Project Settings

Setup the Environment Variables

Unreal Engine Project Settings

Navigate to the Unreal Engine and open Project Settings, go to the Android SDK tab and set the paths.

Next go to the Android tab inside Project Settings and set the following:

in the Destribution Signing you must have key.keystore file and to make this file follow steps:

The Key will be now created, go to C:\Path\To\Java\jdk1.8.0_202\bin folder to get the file copy the key.keystore file and paste it in ProjectRootFolder/Build/Android/

Back at the Project settings in the Unreal Engine editor inside Distribution Signing:

Setup for iOS

Log into Developer Account you will have to create the Provisioning Profile. Log into your account and go to Certificated, Identifiers & Profiles, next create a new certificate and choose iOS Distribution and click continue.

Now you will be required to provide the Certificate Signing Request.

To do that on your Mac search for Keychain Access and inside Certificate Assistant select Create a Certificate For Someone Else as a Certificate Authority.

Write out the information required and enable checkbox Saved to desk.

Now back at the Apple site you can click Choose file and select the certificate signing request that you just created, after that click continue.

On the next page click Download. You will need to upload this to the Unreal Engine Project Settings.

Now go back to the main panel on the Developer account and select the Identifiers Tab.

Add new Identifier, select App, next give it a Description and App ID Prefix (You will need Description and App ID Prefix later in the Unreal Engine). After that click next and Register

Provisioning Profile

Navigate to the Profiles tab from the main page in the Developer account.

Setup inside Unreal Engine

Outside the Unreal Engine

For the Plugin to work correctly you will also have to copy the certificate to your content folder.

Documentation

You can find the documentation for the plugin here: https://docs.millicast.com/docs/millicast-player-plugin