How to build a skype-like small video chat window (multiscreen)? - ruby-on-rails

I am trying to build a small video chat window which can co-exist on the screen with other application such as internet browser like which is shown in this picture
My main problem is not with WEBRTC but with how to make two applications co-exist on the screen as skype does.
I have some experience with unity , rails and node.js . Is there any chance I can achieve my goal with the above framework?
Or do I have to learn something new like QT?
Please give me some advice, thanks a lot.
p.s. Do I have to build a desktop app for this feature or a website would be able to do the trick?

Unity has decent webcam support which insists that it supports webGL(html5).
You might want to check links below.
https://docs.unity3d.com/ScriptReference/WebCamDevice.html
WebGL webcam update
how to setup(unity question forum)

Related

How to design a multi platform video conference/chat app?

I am a developer who is still learning . I want to design an app which can allow multiple people to have a video conference/chats simultaneously something like zoom . I know i can design native apps like specific for Android as well as iOS but I am still learning Android development and have no idea about iOS code .I searched and found that we can have hybrid apps having React,Node.js or with Angular.js and they work on different platforms .But as I'm a newbie I need suggestions as well as guidance .what I'm expecting in my app are following things :
Should support all video resolutions and audio quality, should
work in low and high network scenarios
Should be low on usage of power/ processor
Should not have any external hardware dependency
Should work on any device
Should have chat option during conference, even the multi
people conference
Should have sign-in and non-sign-in options to join a
conference
Can be browser and/or app based interface
Should have encrypted network communication
Should have audio/ video recording feature
Should have screen/file sharing capabilities
Should allow audio to close captioning during chat
(multilingual)
Should have capabilities to host multiple concurrent
conferences having multiple participants in each conference
I know its a tedious task to involve everything I discussed but I need guidance how to do this .
I have already told my expectation so now I want to know what steps I need to do so ,How to start as well as where to start ,what language/library I should choose ,whether having a hybrid app be a good idea or should I go for native apps .As I have earlier said I am a learner so I am going to learn each and everything to get my project done ,so whether its react or node or angular or whatever experienced developer are going to suggest/guide here .I know my question may look broad or even vague but still I am asking only because I see stack-overflow as a group of supportive accomplished coders .Hope you guys will help me in getting my project done .Thank you !
OK then you have got much work to do. I will point you to some references which should give you a good start. I will try to keep this as short as possible.
As you mentioned, WebRTC is the way to go.
With WebRTC, you can add real-time communication capabilities to your
application that works on top of an open standard. It supports video,
voice, and generic data to be sent between peers, allowing developers
to build powerful voice- and video communication solutions. The
technology is available on all modern browsers as well as on native
clients for all major platforms.
This blog explains how WebRTC functions in details - https://medium.com/#anto.christo.20/understanding-web-real-time-communication-webrtc-d4cec5a43f2f
This blog explains how to build peer2peer video calling in android -
https://medium.com/#anto.christo.20/understanding-web-real-time-communication-webrtc-d4cec5a43f2f
https://webrtc.org/ also contains lot of headstart material including sample code.
Once you have done this you can add other features on top of it.
Now, this will take care of peer2peer but if you want o build a multi-user functionality from scratch there is some extra work required as mentioned in the answer - how to build multi-user video chatting web app using webRTC, node.js and socket.io

codename one augmented reality

I'd like to port a small android app which uses camera and draws some infos on the screen while pointing at a specific location. My intention is to port it on iOS. I've found that codename one could be suitable but I don't know if it supports the use of the camera. Could anyone help me? Thanks.
Codename One still doesn't support some of the more elaborate AR API's introduced by Google/Apple but we do support placing a camera view finder into your app with a new cn1lib: https://github.com/codenameone/CameraKitCodenameOne
Original answer below for reference:
It supports the use of the camera but currently doesn't support AR use cases where you draw on the camera viewfinder. You can do that with native code support but since I understand that this is the main feature of the app its probably not the ideal solution.
If its just a small feature within a large app then native interfaces make sense.

Cam streaming Flash client/widget

I'm looking for a Flash widget that does this: http://i.imgur.com/eRKhvkK.png
That's from a webcam streaming site that does what I need, the four boxes are a screenshot of each step of their widget:
Connecting screen, enable webcam prompt, configure and broadcast with a cam preview, broadcasting window with a cam preview with option to stop broadcast.
It doesn't need to be exactly the same, just something similar. Are there any open-source solutions or packages that offer this that I can use on my website? I'm open to the idea of coding it myself, but I've never touched Flash before, so I'll need help with resources on what I'll need to create such a widget. Preferably there's something out there that does this already, or close to this, that I can modify to meet my needs.
The only thing I found was this: https://github.com/AF83/webcam-streaming -- but it doesn't provide any interface or configuration window, it just starts streaming straight away. I could potentially modify this if there's no other options out there, but I have no idea how to add all of those UI elements, how to hook them together, or what software I need to do so. If this is the only option I have, can you please point me in the right direction in learning how to do that (I use Windows 7 64bit).
Thank you!
I have exactly what you need : an open source publisher in flash with video preview. The source code is on github at https://github.com/MonaSolutions/MonaClients/.
This is our sample and it work with MonaServer installed on our raspberry pi, this is good for testing but for production you will need to install an RTMP or RTMFP server. If you want to use MonaServer you can go to our installation page or download the windows binary from sourceforge : http://sourceforge.net/projects/monaserver/files/MonaServer_Windows_32.zip/download
Then if you want to modify the source code and implement a better-looking client you can use FlashDevelop, it's free and complete.
For information it is also possible to broadcast with WebRTC and HTML5 rather than RTMP/RTMFP and Flash.

Uploading images to web servers

I am in a massive rush and have to decide on a phone platform for tomorrow. Please forgive my lack of research on my own part, I just don't have the time, and would appreciate one of you geniuses to answer my question.
I need to develop an application which will take a picture and upload it to a webserver. Can this be done on a Windows 7 Phone device?
I am a windows .NET developer.
In the past on the older blackberries we had major issues with finding the latest picture taken. So basically my question is, can I build an app with a button to take a picture, and it just works out the box and uploads it without any fuss.
I really have not had the time to research the windows 7 phone API's, and this is urgent.
Thank you so much, I know people who don't research themselves should be shot, but I just don't have the time.
Thank you again.
I need to develop an application which will take a picture and upload it to a webserver. Can this be done on a Windows 7 Phone device?
Yes.
If all you want is to be able to take a photo and not access the camera directly, you can use the CameraCaptureTask which has been around since the beginning. This is much simpler and all of the photo taking functionality is taking care by the built in photo application. The result is just a stream to the photo. Given from your description these seems like the answer for you.
Another option starting in Windows Phone 7.5 (Mango) gives you much more direct access to the camera. Details / sample on MSDN. This is if you want to really make your own camera application from scratch.
Yes, offcourse. .Net is providing built-in classes to interact with the camera, take picture and then you can convert image to byte, and then you have to use a webservice (WCF is recommended usually), whihc will have interact with the database and save the picture in byte form in database. Database which will be used will be Microsoft SQL Server 2005/2008.
This might help you :
Communication of Windows phone and WCF Service

Is it possible to take a picture from a smart phone in the browser and save to database?

I have an application that saves a user's webcam image using a pc/mac browser.
Is there a way to do the same thing using smart phone cameras within the browser?
I'm not really sure where I would begin. A google search didn't give me many leads.
All the best,
You should be able to do this on the iPhone using UIImageJPEGRepresentation.
This questions describes how to do the same thing on Android.
These are examples for two platforms. Are there any other platforms you are looking to develop your application for?

Resources