Live data from Hacker News

Show HN: Run dedicated iOS Simulators in the browser

appetize.io

41–50 of 69 posts

Re: Show HN: Run dedicated iOS Simulators in the browser

#41

This is really cool! The "video" quality is pretty bad though. From what I can see, the app streams base64 encoded JPEGs via WebSockets and draws them in a Canvas. The overhead of sending complete images costs a lot of bandwidth. You may want to look into jsmpeg for live streaming: https://github.com/phoboslab/jsmpeg

We've actually experimented with jsmpeg for this type of thing. The problem we ran into was that jsmpeg seemed to require every frame from ffmpeg. If the browser or network slowed, the feed would fall behind the simulation, leading to several seconds of latency when interacting. We'd love to use it and appreciate your hard work though. Do you have any ideas on how that problem can be solved?

There are two sides to this problem. For jsmpeg (or even in the server), it would be possible to simply wait for the next intra frame (a frame that doesn't require previous frames to decode) on certain conditions and throw away all other frames in between. This will give the decoder and network time to catch up. By default ffmpeg emits one intra frame per second, iirc.

The more difficult part is probably detecting this lag. I'm not sure how this could be done. Maybe the node websocket server (ws) can detect congestion somehow.

Re: Show HN: Run dedicated iOS Simulators in the browser

#42

This is really cool! The "video" quality is pretty bad though. From what I can see, the app streams base64 encoded JPEGs via WebSockets and draws them in a Canvas. The overhead of sending complete images costs a lot of bandwidth. You may want to look into jsmpeg for live streaming: https://github.com/phoboslab/jsmpeg

There's a javascript VNC client that was created during a LinkedIn Intern Hackday that could solve the problem if a different approach is used on the backend. Each instance would need a virtual framebuffer. The js vnc client is a little buggy, but with some cleanup it worked quite well for a similar project that involved making the Android emulator available in a browser.

Re: Show HN: Run dedicated iOS Simulators in the browser

#45
post #20

I'm not sure what problem this solves but it's technically cool.

That was my initial reaction as an iOS developer would have access to Simulators via Xcode.

That said, I could see this as a tool for sharing to a client for demo purposes.

Re: Show HN: Run dedicated iOS Simulators in the browser

#47

Earlier quoted context omitted.

We've actually experimented with jsmpeg for this type of thing. The problem we ran into was that jsmpeg seemed to require every frame from ffmpeg. If the browser or network slowed, the feed would fall behind the simulation, leading to several seconds of latency when interacting. We'd love to use it and appreciate your hard work though. Do you have any ideas on how that problem can be solved?

There are two sides to this problem. For jsmpeg (or even in the server), it would be possible to simply wait for the next intra frame (a frame that doesn't require previous frames to decode) on certain conditions and throw away all other frames in between. This will give the decoder and network time to catch up. By default ffmpeg emits one intra frame per second, iirc. The more difficult part is probably detecting th…

Thanks. Maybe our ffmpeg settings weren't creating intra-frames somehow (or we happened to drop every single one) because the stream would never recover. I'll probably try it again at some point soon. We really want jsmpeg to work.

Re: Show HN: Run dedicated iOS Simulators in the browser

#48
Just having the simulator isn't enough for us Xamarin developers. One big issue with Xamarin is that you need a mac (with xcode installed) on the network in order to do builds. If you could solve that issue along with the having the simulator online then you have my money.

Re: Show HN: Run dedicated iOS Simulators in the browser

#49

Yo, dawg... http://i.imgur.com/Ib0WUeT.png

Developers are all the same, how could I expect to be the only one thinking of this? Anyway, I made it down to the 4th level in appetize.io-ception before the sessions started timing out.

http://i.imgur.com/wCIXQUB.png

Re: Show HN: Run dedicated iOS Simulators in the browser

#50
post #2

Hi, thanks for checking us out. We're happy to answer any questions in the comments. Some of you may be familiar with app.io's demo pages service which was discontinued in August. We loved using their service and we thought it'd be a blast building a replacement. Technologies used: node, socket.io, mongodb, html5 canvas

As previously the Head of BD at App.io, I applaud your efforts! Well done! Quite a few ways you can monetise, good luck! :)
Post reply on HN