Skip to content

bendodson/moonlight-tvos

 
 

Repository files navigation

#Moonlight tvOS

Moonlight is an open source implementation of NVIDIA's GameStream, as used by the NVIDIA Shield, but built for iOS. Moonlight iOS allows you to stream your full collection of Steam games from your powerful desktop computer to your iOS Device.

There are also versions for Android and PC.

This is a quick and VERY dirty port of the code to get it up and running on the Apple TV 4.

You can find out more on my website at https://bendodson.com/weblog/2016/08/11/moonlight-tvos/.

Demos


GTA V
Mame AppleTV

Dirt 4
Mame AppleTV

Compiling

Xcode 7.2 (tvOS 9.1)

  • Set Build Target for Moonlight tvOS/generic tvOS Device (or real Apple TV)

  • Fix any issues with profiles using the "Fix issues button"

  • You will receive 3 compilation issues due to the following not being available in tvOS

AVQueuedSampleBufferRenderingStatusFailed, AVSampleBufferDisplayLayer

How to work around this issue

  • Look at the 3 errors, expand the first error to show the grey exclamation mark

  • Click the grey exclamation mark to take you directly to the API definition located in AVSampleBufferDisplayLayer.h

We need to change permissions of the Headers directory to make the alterations to compile the code

You can do this via

  • right click AVSampleBufferDisplayLayer.h and show in Finder and navigate up one directory to Headers

  • Or goto Finder and go to the directory /Applications/Xcode.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AVFoundation.framework

  • right click on Header and Get Info

  • Change the Sharing & Permissions so everyone has Read & Write

  • Click the padlock bottom right - enter admin password Change everyone to Read & Write Hit X top left to close window

  • Go back to Xcode and the AVSampleBufferDisplayLayer.h and change the lines

41 Remove __TVOS_PROHIBITED
46 Remove __TVOS_PROHIBITED

The project will now compile and run on your Apple TV 4 !

How to use

  • The App should show you PC when selected
  • Connect your Mifi controller before using the App
  • Select your PC via the remote controller
  • Enter the Pair code on your PC
  • You should now see all games which can be streamed
  • Select a game via remote
  • App will start
  • You should now be able to use your Mifi controller to control the game
  • Remote acts as a mouse controller, use left click on controller to left click mouse

About

GameStream client for tvOS

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 68.9%
  • Objective-C 15.9%
  • C++ 14.6%
  • Other 0.6%