RenderHeads / UnityPlugin-AVProVideo

AVPro Video is a multi-platform Unity plugin for advanced video playback
https://www.renderheads.com/products/avpro-video/
224 stars 27 forks source link

iOS Simulator support #972

Open ZimM-LostPolygon opened 2 years ago

ZimM-LostPolygon commented 2 years ago

Describe the issue It seems like AVProVideo framework doesn't include support for x86_64 and arm64 iOS simulators. This effectively results in only being able to debug the app on real devices, which slows down development significantly.

Is this is a bug? I can see iOS simulator listed as supported in this old manual: https://usermanual.wiki/Document/AVProVideoUserManual.1161305271/view

But I can't find anything else about iOS simulator support in any of changelogs otherwise.

Your Setup (please complete the following information):

To Reproduce

  1. Create a new Unity project, switch to iOS, import AVProVideo
  2. In iOS Player Settings, set Target SDK to Simulator SDK
  3. Attempt to build & run the Xcode project.
  4. Observe the build failure.

Logs

# file AVProVideo

AVProVideo: Mach-O universal binary with 2 architectures: [arm_v7:Mach-O dynamically linked shared library arm_v7] [arm64]
AVProVideo (for architecture armv7):    Mach-O dynamically linked shared library arm_v7
AVProVideo (for architecture arm64):    Mach-O 64-bit dynamically linked shared library arm64

Screenshots image

MorrisRH commented 2 years ago

We had simulator support in version 1.x of the plugin (which is the version the document you pasted is for).

When we started version 2.x the decision was taken to drop OpenGL support and at the time Unity did not support the Metal rendering API in the simulator. Whilst Metal support in the simulator has arrived with Unity 2020.1, further issues with Unity and the simulator have prevented us from being able to implement support (specifically this issue).

A further complication is that we can no longer build a single framework (as we did with version 1.x) with support for both device and simulator due to the arrival of Apple Silicon.

I've tagged this issue as an enhancement and will see what can be done.

ZimM-LostPolygon commented 2 years ago

Thank you. Even if you re-introduced simulator support just for the x86_64 platform like you did for 1.x (which you can still do with a single framework) that would be enough for most cases - after all, Apple Silicon Macs can run x86_64-based simulators, even though under emulation.

InvivoLuke commented 1 year ago

Thanks, @MorrisRH, our team would also benefit greatly being able to run our QA pipelines with iOS Simulator. Consider this my 👍, for re-introducing simulator support!

lourd commented 1 year ago

Hi @MorrisRH and @AndrewRH! We at Spatial are also keenly interested in getting a version of the framework that runs in the simulator. It looks like the Unity issue you linked was resolved in 2021.2. Hopefully that means this is possible to get done in the near term? This would be a really big boost for our team. Please let us know if we can help out in any way!

MetaBenji commented 1 year ago

Hey @MorrisRH and @AndrewRH if there's anything I can do to help with iOS simulator support let me know! Your plugin is fantastic and it would be so helpful to get it working on the iOS simulator!

dw8869 commented 1 year ago

@MorrisRH any update?

MorrisRH commented 5 months ago

Simulator support for iOS and tvOS will be available from v3 onwards. Just need Unity to support the simulator on Apple Silicon.