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 suppport? #91

Closed
BoyBouw opened this issue Mar 30, 2020 · 27 comments
Closed

Android suppport? #91

BoyBouw opened this issue Mar 30, 2020 · 27 comments
Labels
enhancement New feature or request waiting for release This issue is already fixed and will be contained in next version
Milestone

Comments

@BoyBouw
Copy link

BoyBouw commented Mar 30, 2020

Does this asset support Android? The asset description implies so ("The WebRTC Package provides browsers and mobile applications with Real-Time Communications (RTC) capabilities"). However, upon trying to build any demo scene, or our own implementation, that uses the WebRTC namespace we get the following error:

The type or namespace name WebRTC does not exist in the namespace Unity

This works fine in the editor, or when building to Windows. Any suggestions, or simply is this not supported? Thanks!

@McPo
Copy link

McPo commented Mar 30, 2020

My understanding is that this project doesn't build on Android. However you can view/receive the stream from a Windows machine on an Android device or Web Browser (Using the relevant WebRTC API/Libraries) as a regular app (Not Unity).

@BoyBouw
Copy link
Author

BoyBouw commented Mar 31, 2020

I think you're correct, but then I would suggest to the authors to communicate this much more clearly. It now seems to be a cross-platform lib, which it is not. A confirmation of the above and a possible roadmap from the author would be greatly appreciated!

@karasusan
Copy link
Collaborator

At the moment, we don't have plans to support RenderStreaming on Android.
We may reconsider this in the future if the demand is strong, so please let us know what you are trying to do.

@karasusan karasusan added the enhancement New feature or request label Mar 31, 2020
@BoyBouw
Copy link
Author

BoyBouw commented Mar 31, 2020

Essentially, we want to communicate simple messages (two-way) and stream video (one-way) between our React Native application and our Android app. The latter is built in Unity, specifically for the Pico 4K 2G VR HMD. One eye-buffer is recorded and streamed to the React-Native application where it is displayed.

As long as we play our implementation (with custom java signaling server) within the editor, or build for windows, everything works as expected. But as soon as we actually build for Android (note that switching platform does not have the same result) we get the error.

The type or namespace name WebRTC does not exist in the namespace Unity

I hope this clears things up.

From what I understand about this comment @karasusan,

At the moment, we don't have plans to support RenderStreaming on Android.

It is possible to communicate simple messages back- and forth? For now, we are unable to build, so we cannot check this on Android.

@orgsofthq
Copy link

orgsofthq commented May 3, 2020

Many Unity apps are already using WebRTC for voice communication and general network data. I'm surprised Android support isn't a priority when many mobile & VR games would hugely benefit from this.

+1 on request, it could change the Unity networking landscape

@lukasrandom
Copy link

We are also in the need of having webrtc support for on mobile platforms like android and ios. In our case we have to stream the unity view from a mobile device to a webapp for remote support.

@karasusan
Copy link
Collaborator

Thanks, everyone. We understood a need exists for supporting mobile platforms.
I will plan the roadmap containing this support.

@sananbintahir
Copy link

Is there any update on android support? We need cross-platform integration with communication and streaming between pc, ios, oculus quest (android), etc

@karasusan karasusan added this to the 2.4.0 milestone Aug 24, 2020
@FullstackJack
Copy link

How do we get involved as a community to help out with the Android portion? We need this to be cross-platform and deployable to all places Unity targets.

@devluz
Copy link

devluz commented Nov 19, 2020

Happy to help as well if there is a way to do it. I am already maintaining my own (very limited) version for the past 5 years for the asset WebRTC Video Chat and moving this to a community maintained version would be great

@karasusan
Copy link
Collaborator

We have a plan to support Android platform as of version 2.4.
This would be released in February.

@nsmith1024
Copy link

Its now Dec 2020, does this work on Android and IOS yet?

@karasusan
Copy link
Collaborator

@nsmith1024
We are working on the iOS platform support and this should be released this month.

@nsmith1024
Copy link

@nsmith1024
We are working on the iOS platform support and this should be released this month.

Awesome, what about Android?

Can your WebRTC encode the video and audio from the phone camera and stream it to YouTube Live?

See this video on YouTube Live and WebRTC

https://www.youtube.com/watch?v=htN-gIPOkP0

@karasusan
Copy link
Collaborator

@nsmith1024
Android support is planned for the next milestone. It might be released in February.

Thanks for sharing the awesome video, I have never seen it.
I think YouTube does not provide an API for live streaming via WebRTC.
You need to use the other software to convert to the RTMP protocol from WebRTC.
https://stackoverflow.com/questions/61003528/how-to-stream-video-from-my-webrtc-to-facebook-rtmp-server-directly

@nsmith1024
Copy link

nsmith1024 commented Dec 15, 2020

@nsmith1024
Android support is planned for the next milestone. It might be released in February.

Thanks for sharing the awesome video, I have never seen it.
I think YouTube does not provide an API for live streaming via WebRTC.
You need to use the other software to convert to the RTMP protocol from WebRTC.
https://stackoverflow.com/questions/61003528/how-to-stream-video-from-my-webrtc-to-facebook-rtmp-server-directly

Thanks for the reply, I found a link to an article mentioning how to use WebRTC with YouTube, maybe its of use?
https://webrtchacks.com/youtube-does-webrtc-heres-how/

So do you think if i stream WebRTC from my phone camera (Unity app) to my own server, and then on my server use ffmpeg to convert the WebRTC stream in real-time to RTMP, sending that to YouTube live that would work? If so do you know how to do it?

I saw this YouTube video that talks about converting WebRTC to RTMP, there is also a GIT

YouTube: https://www.youtube.com/watch?v=ZlQfWs_XTvc

GIT: https://github.com/muxinc/webrtc-rebroadcaster

Tutorial: https://www.meetecho.com/blog/firefox-webrtc-youtube-kinda/

Do you think your Unity version of WebRTC would work with this git package to stream life from Unity IOS to YouTube Live?

@karasusan
Copy link
Collaborator

@nsmith1024
I am not sure the combination works as you expect.
We are preparing to release the version which supports iOS platform so you can try to integrate them.

@karasusan
Copy link
Collaborator

Our team is struggling to develop but the plan is delayed.
Android support is released at the end of March.

@BoyBouw
Copy link
Author

BoyBouw commented Feb 12, 2021

Great to see the progress being made! I hope we'll see this released soon.

As I mentioned above, we ultimately want to stream video (one eye buffer) from the Android app (built in Unity) to a web application. Since render streaming is another package, I was wondering if this update will include the option to also stream video through WebRTC?

@karasusan
Copy link
Collaborator

Great to see the progress being made! I hope we'll see this released soon.

As I mentioned above, we ultimately want to stream video (one eye buffer) from the Android app (built in Unity) to a web application. Since render streaming is another package, I was wondering if this update will include the option to also stream video through WebRTC?

Unity Render Streaming package depends on the WebRTC package. Therefore, we need to update the URS package after the WebRTC package to add Android support.

@BoyBouw
Copy link
Author

BoyBouw commented Feb 15, 2021

Thanks! So to answer my question: As I understand it, this update will not be able to stream video through WebRTC from an android device yet. We'll have to wait for an update on the URS package for that, or choose an alternative.

Please correct me if I'm wrong on the above. If it's correct, however, is there a timeline for the URS android update? I couldn't find it on Github.

@karasusan
Copy link
Collaborator

@BoyBouw
I can not say when it will be released clearly, but I think by May.

@mikeslinkman
Copy link

So I'm a bit confused at this point regarding the status. Is Android support added to the latest 2.4.0 release as indicated in the readme or is it moved back to 2.5.0 and will it be released in June?

@karasusan karasusan removed this from the 2.5.0-exp.1 milestone Mar 29, 2021
@karasusan karasusan added this to the 2.4.0-exp.1 milestone Mar 29, 2021
@karasusan
Copy link
Collaborator

@mikeslinkman
I mistook setting the milestone for this issue.
Android support will be released in April.

@mikeslinkman
Copy link

okay, thanks for clearing that up!

@karasusan karasusan added the waiting for release This issue is already fixed and will be contained in next version label Apr 19, 2021
@sreenaths
Copy link

sreenaths commented Apr 26, 2021

@karasusan 🙏🏽 🙏🏽 🙏🏽 Thank you so much.

@Yusefrahmati
Copy link

@karasusan

Hi, I have a question, this new version in April contain support ARMv7 android architecture?

We need both Android CPU architectures.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request waiting for release This issue is already fixed and will be contained in next version
Projects
None yet
Development

No branches or pull requests