Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Android target level 32 support #191

Conversation

hybridherbst
Copy link

This PR fixes #190 and potentially also #166.

It adds a minimal .java plugin with a discovery listener and calls NsdManager.discoverServices for the NDI-specific UDP and TCP services on Android >= 31.

@FireDragonGameStudio
Copy link

@hybridherbst Tried to get it running and tested your changes on my Google Pixel 8 Pro with Android 14 and I can't choose any NDI sources, when the app is running within the same WLAN on my notebook and my smartphone. Even adapted the update from #186. May Android 14 be the villain here?

@cieraej
Copy link

cieraej commented Feb 1, 2024

Hi,

I am having this issue. My NDI streams are being now being detected (thanks to this PR) but not playing as they were on previous builds.... I suspect it's a permissions issue. Do you have the Android Manifest so I can compare?

It's truly overkill what I've added but this is what I've tried:

  • Added Library: <uses-library android:name="org.apache.http.legacy" android:required="false" />
  • Added Permissions:
    • <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
    • <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    • <uses-permission android:name="android.permission.INTERNET" />
    • <uses-permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE" />
    • <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    • <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />

@eeease
Copy link

eeease commented Feb 12, 2024

Hi @hybridherbst , thanks for your work on this!

I'm currently in a similar boat as @cieraej.
Using Unity + Klak NDI + Android 32 build on Quest 2.
I'm using VLC to playback via NDI from my Windows PC, on the same network as my Quest.

I can still see NDI streams in the dropdown, but once I select one, my Quest tanks and eventually crashes. In previous versions, making a selection correctly displays on the sample scene canvas.

Any chance you can share your Android manifest? At this point I'm convinced I'm either missing a permission or not waking the DNS provider or something.

Thanks!

@hybridherbst
Copy link
Author

@NoArtistAvailable if you have a moment could you post the relevant parts of the manifest here to help others trying to get it to work?

@tomsuperman
Copy link

tomsuperman commented Jun 5, 2024

I did solve the Android 14 issue by downloading the latest SDK from NDI website, and replaced the libndi.so file from arm64-v8a folder to KlakNDI\jp.keijiro.klak.ndi\Plugin\Android folder

@keijiro
Copy link
Owner

keijiro commented Jun 12, 2024

This change is no longer needed with NDI SDK 6.0.

@keijiro keijiro closed this Jun 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

No streams found on Android target API level 32
6 participants