Apple Vision Pro visionos target_os gn support for custom WebRTC build

1,403 views
Skip to first unread message

Erik

unread,
Aug 10, 2023, 2:16:13 PM8/10/23
to discuss-webrtc
Hello,
 as you know apple released Xcode-Beta with access to Vision Pro Mixed reality headset simulator access.

I would like to ask you if there is planned support for WebRTC build for this specific platform visionos. We are doing our own WebRTC build, and current pipeline with gn and ninja are supporting gn target_os="ios". Is there any plan to extend this target_os for visionos also?

I am asking this, because of when I do want to load WebRTC framework as output from Ninja build I can not build a project because of incorrect target_os/platform which in this case is ios.

Any help or guideline will be appreciated.

Regards,
 Erik

高峻峰

unread,
Sep 13, 2023, 3:26:58 AM9/13/23
to discuss-webrtc
I have the same problem, may I ask if you have any progress?

Erik

unread,
Sep 21, 2023, 6:52:58 AM9/21/23
to discuss-webrtc
Hi 高峻峰,
 no progress yet, we are working on ti and we will let you know if something new will popup regarding webrtc for visionos

Muhammad Usman Bashir

unread,
Sep 22, 2023, 7:40:59 AM9/22/23
to discuss-webrtc
Hello Erik, I've had the opportunity to work with various smart glasses platforms, including ThirdEye Gen X2, Pico Neo 4 Headset, and Magic Leap 2 Pro. I can confirm that I've been able to successfully compile WebRTC and establish WebRTC calls on these platforms. The process generally involves some platform-specific adjustments, but the core WebRTC library has proven to be quite adaptable. Reference point

If you're facing issues with the target_os being incorrect, you might consider creating a custom build configuration that overrides the default target_os settings. This would be a temporary workaround until there's official support for vision-os. You can post console log from vision-os, that would help to understand what is causing issue.

aravindh balaji

unread,
Nov 9, 2023, 2:41:51 AM11/9/23
to discuss-webrtc
Hi Mihammad Usman Bashir,
I have been trying with the custom-build configuration for visionOS and tvOS also, but I'm stuck in some dependency issues - framework_objc after completely adding new target_os, target_environment and other things. It's not able to find framework_objc for the new target_os. Can you point me in the right direction for building WebRTC with custom-build configurations? A reference changeset which needs to be done in the native webrtc repo for build generation would be helpful. 

Seto Kaiba

unread,
Jan 1, 2024, 9:06:54 AMJan 1
to discuss-webrtc
Does anyone find a way to use webrtc with visionos yet?

Seto Kaiba

unread,
Jan 6, 2024, 8:24:45 AMJan 6
to discuss-webrtc
The system mentioned by you is some kind of Android variant. Some it's easy to tweak it to adjust to them. But the visionos is more different than the ios.

Christoph

unread,
Mar 22, 2024, 7:13:26 PMMar 22
to discuss-webrtc
I started porting it myself. So far it was relatively easy and I can already run it in the simulator. It is very similar to the ios build with a few changes to compiler flags and objective c code. 
I do not have a test device though. It would be great if someone can help testing

Seto Kaiba

unread,
Mar 24, 2024, 5:28:23 PMMar 24
to discuss-webrtc
Hi, Christoph.
It seems that the dpeot_tools submodule is missing in your repo.
The commit is not available to the official depot_tools repo.
Did you forget to upload it? Could you please upload it?
Thank you.

Seto Kaiba

unread,
Mar 24, 2024, 5:28:53 PMMar 24
to discuss-webrtc
OK. It seems the problem is in myside. I can checked out the submodule depot_tools in my another computer.

But my this computer can't. I'll check it myself. Thank you.

Cloning into 'G:/Seto/GitHub/because-why-not/webrtc_visionpro_workspace/depot_tools'...
remote: INVALID_ARGUMENT: Request contains an invalid argument
remote: [type.googleapis.com/google.rpc.LocalizedMessage]
remote: locale: "en-US"
remote: message: "Invalid authentication credentials. Please generate a new identifier: https://chromium.googlesource.com/new-password"
remote:
remote: [type.googleapis.com/google.rpc.RequestInfo]
remote: request_id: "1dcf5c7f7ef941f2adbfd0624925c937"
fatal: unable to access 'https://chromium.googlesource.com/chromium/tools/depot_tools.git/': The requested URL returned error: 400
fatal: clone of 'https://chromium.googlesource.com/chromium/tools/depot_tools.git' into submodule path 'G:/Seto/GitHub/because-why-not/webrtc_visionpro_workspace/depot_tools' failed
Failed to clone 'depot_tools'. Retry scheduled
Cloning into 'G:/Seto/GitHub/because-why-not/webrtc_visionpro_workspace/depot_tools'...
remote: INVALID_ARGUMENT: Request contains an invalid argument
remote: [type.googleapis.com/google.rpc.LocalizedMessage]
remote: locale: "en-US"
remote: message: "Invalid authentication credentials. Please generate a new identifier: https://chromium.googlesource.com/new-password"
remote:
remote: [type.googleapis.com/google.rpc.RequestInfo]
remote: request_id: "f44e1b9750fa4465a2c707a47242dcd6"
fatal: unable to access 'https://chromium.googlesource.com/chromium/tools/depot_tools.git/': The requested URL returned error: 400
fatal: clone of 'https://chromium.googlesource.com/chromium/tools/depot_tools.git' into submodule path 'G:/Seto/GitHub/because-why-not/webrtc_visionpro_workspace/depot_tools' failed
Failed to clone 'depot_tools' a second time, aborting
Done

On Saturday, March 23, 2024 at 7:13:26 AM UTC+8 Christoph wrote:

Seto Kaiba

unread,
Mar 24, 2024, 5:28:56 PMMar 24
to discuss-webrtc
Thank you. I solved it. It seems that a chrome-internal.googlesource.com crendential is added by other sdk or project. And now it's ok.

On Saturday, March 23, 2024 at 7:13:26 AM UTC+8 Christoph wrote:
Reply all
Reply to author
Forward
0 new messages