reK - iOS ReplayKit Plugin - Live Streaming and Video Recording

Easily record gameplay footage from your iOS game!
Add live streaming/broadcasting to your iOS game!

NO CODING REQUIRED

Asset Store Link
reK Website
Support, questions, suggestions: rek@rarebyte.com

Record any gameplay footage without performance impacts. Native iOS overlay recording controls are included that are NOT recorded in your video! It is insanely easy to setup (NO CODING REQUIRED!), just drag’n’drop the prefab into your scene. Additionally, the package includes examples for UnityUI and NGUI if you want to record runs.

OVERVIEW

  • Record any gameplay footage without performance impacts

  • Stream/Broadcast gameplay footage to third party services such as Mobcrush

  • Native iOS overlay recording controls (NOT recorded in your video!)

  • Easy integration (no coding required!)

  • Microphone support (for commentaries)

FEATURES

  • Easy integration (drag’n’drop)
  • Native iOS overlay with recording controls (NOT visible in recordings!)
  • Microphone support for commentaries
  • Ready-to-use Unity UI example
  • Ready-to-use NGUI example
  • Edit, save and share videos directly from within the game to other apps or services (Facebook, YouTube, cloud etc.)
  • Choose your preview style (fullscreen, page sheet etc.)
  • Broadcasting: Select a service such as Mobcrush

SHARING

Edit and share recordings easily via the native iOS preview. Save your video or upload directly to YouTube, Facebook, or share with other apps.

PERFORMANCE

reK - iOS ReplayKit Plugin uses Apple’s ReplayKit Framework (iOS 9+), and is therefore the most powerful way to record videos in Unity iOS games.

BROADCASTING/LIVE STREAM

reK - iOS ReplayKit Plugin enables you to stream gameplay footage to streaming services such as Mobcrush (third party app of the service must be installed on the device).

Asset Store Link
reK Website
Support, questions, suggestions: rek@rarebyte.com

Version History
1.4

  • added ReplayKit Live (broadcasting) support
  • added example scene for live streaming/broadcasting
  • added native UI toggling example scene

1.3

  • fixed full bitcode support
  • fixed preview styles (iPad)
  • fixed status bar issue

1.2

  • fixed PreStart/PreStop when using native UI
  • fixed PreStop when using StopRecordingAndShowPreview()
  • native library is now built with bitcode support enabled
  • fixed preview style handling

1.1

  • added iPad preview styles
  • added support for showing the video preview multiple times
  • added callbacks that fire before native calls (PreStart, PreStop etc.)
  • now compatible with all Unity 5.x versions

1.0

  • initial release

Coming up in the next update:

  • Select your preview style (full screen, popover etc.) on iPads - easy set this up directly in Unity (no coding required)
  • Preview can be shown multiple times (e.g. if a player dimisses the preview first, but then decides to save/share the video, this is now possible)

If you are experiencing issues with reK 1.0 and Unity 5.3, please read this.

If you experience issues with full bitcode support, please drop us a line, a fix is coming soon to the Asset Store.

Hello, I have just found this asset, and think that it may be good and useful.

Are the options shown above in the quote already available in the current version?

I have some questions

1 - Does it have a button to replay the video when you end playing a level? Can you and pause and play when you want? I mean to be able to pause and so this way you can be able to make a screenshot.

2 - I want that it will always record the game without having you to click to record, or have an option that you can make it automatic (that it will always record), OR manual (where you can choose when to record)

3 - How is recorded the game? I mean it will record exactly what you have played in the exactly same way? I mean that you will see all the same, OR would be possible to change the camera and point of view of what you played?

4- Can the video be saved in the iPad itself?

5 - Does the recording of the video needs storage space to be recorded? or is it saved to the RAM? or how is made?

6 - How long can the recorded video be done? I mean how many minutes can be recorded without stop, or if this depends on how much memory is available?

Thanks very much for your help

I send my best regards and best wishes

Yes. Concerning the preview style, we just added a fix for an issue with that, and are submitting it to the AssetStore. If you need it faster, please let us know via rek@rarebyte.com.

When you have finished a recording, you can preview your recording. This opens a native iOS preview and edit dialog for your recording, where you can edit (e.g. cut) your video, play it, and move to a certain point in time. You can save the recording to your camera roll, or share it (this depends on what apps you have installed, e.g. Facebook etc.).

This is possible. You can just start the recording via code (or use e.g. a click handler etc.) when you enter a level, and then stop when at the end of the level.

It will record exactly whatever you have on-screen, except the native recording controls (if you use them). It is not possible to change the camera for the recording only.

Sure, on the preview dialog you have an option to save the recording to your camera roll.

Of course the recording needs storage space. This is handled by iOS internally.

You can basically record until you run out of disk space.

Please let me know if you have more questions, cheers!

Hi,

Im having some trouble getting this to build on the cloud. Is anyone else having this issue?

Thanks!!

9827: [xcode] ld: warning: arm64 function not 4-byte aligned: ltmp0 from /BUILD_PATH/…default-ios//temp.5oN9jj/Libraries/libiPhone-lib.a(PLCrashAsyncThread_current-5565F35D16E4818B.o)
9828: [xcode] ld: warning: arm64 function not 4-byte aligned: _Unityplcrash_async_thread_state_current from /BUILD_PATH/…default-ios//temp.5oN9jj/Libraries/libiPhone-lib.a(PLCrashAsyncThread_current-5565F35D16E4818B.o)
9829: [xcode] ld: object contains invalid bitcode: /BUILD_PATH/default-ios//temp.5oN9jj/Libraries/UnityReplayKit/Plugins/iOS/libUnityReplayKitPlugin.a(UnityReplayKitPluginWrapper.o) for architecture arm64

Hi Eric,

do you have full bitcode support enabled for your project?

Hi @charlierby , I haven’t turned it off intentionally, I had assumed bitcode was enabled by default in the latest Unity. I will have to double check that and get back to you…

Eric

We are currently looking into the issue with Unity Cloud Build.

How to get the vedio? I need the vedio path.I can’t find the function.

You cannot directly access the video file as iOS does not allow to do so. You have to open the preview window and then there are options to save or share the video (depends on what you have installed on your device).

Thanks very much.I am in China, I need to share to WeChat, but now iphone does not support.So I want to get the video path to achieve.

It only works if an app supports sharing data from within other apps. In this case, WeChat needs to support the sharing option (just like Facebook, WhatsApp etc.). If that is the case it will be automatically visible in the sharing dialog. Unfortunately, there is no way to access the video directly on iOS.

Oh, thanks.

We have just submitted an udpate. reK 1.4 now supports ReplayKit live broadcasting and live streaming features.

Hi,

Has the video recording been tested on projects using the device camera while recording?
For example, AR applications using Vuforia or ARToolKit where the camera is tracking and overlaying rendering over the device’s camera.

Cheers

Although we have not tested these special cases, from what we know it should work as expected as long as all that you want to record is rendered to the main window (read: inside Unity) of your application.

Hi,

I’m trying to build and run UnityReplayKitExampleUnityUI example on an iPhone 6s. Xcode gives linking errors below. Do I need to add any additional dependencies in my Xcode project?

Undefined symbols for architecture arm64:

OBJC_CLASS$_RPBroadcastActivityViewController”, referenced from:

objc-class-ref in libUnityReplayKitPlugin.a(UnityReplayKitPlugin.o)

ld: symbol(s) not found for architecture arm64

clang: error: linker command failed with exit code 1 (use -v to see invocation)

Are you using the latest Xcode version?