I am developing project using GWT2.5 and I need to use the User’s webcam to capture
images/video.
How it is possible in GWT?
GWT 2.5 comes with a new library called Elemental, it is thought as a wrapper of the browser API. It just works with chrome, but in a future it could support more browsers.
If you are confortable supporting in your app chrome for this feature, you can take a look to this example. The source code of the demo is in googlecode.
If you wanted to support other browsers, you could take the elemental classes as base and modify them to match other browsers.
Here is a video introducing elemental during the google I/O 2012
A GWT based API to capture webcam snapshots from the browser. This API is a GWT wrapper for the jpegcam JavaScript library.
Samples and Source code.
Hope that helps.
Related
I have two questions. If you can, please answer...
Could you show an example, where used plugin by object element in HTML?
Previously we could add video for flash player by using object, but now that doesn't used. Can you show an example, where used any resource for any plugin?
The simple answer is that browser plugins are a dead technology.
The term generally refers to applications implementing NPAPI (the "Netscape Plugin Application Programming Interface"), originally implemented by the Netscape browser (predecessor of today's Firefox) and then copied by other browsers. It essentially gives complete control over part of the web page to an external program, which makes it very flexible, but very hard to make secure and stable.
In 2015, Google Chrome removed support for NPAPI, using a new API to support Adobe Flash; Firefox blocked any plugin other than Flash in 2017. In 2021, Adobe ended support for Flash, and pushed out an update automatically uninstalling it from user's computers, so these exceptions are no longer needed.
I have an app that functions perfectly outside of Tide. The app uses Flowplayer to load and play a video using HTML5. It appears that when Flowplayer insert the video tag and sets the src attributes, the path is prefaced by the namespace (application id) used in my app configuration. Is there a way to disable this?
Everything in my app is inside the resources folder so there is no need to include the application name in the path.
Thanks,
H
#Ward Where we left TideSDK, unfortunately it did not have support for audio/video tags in HTML5. The HTML parser within the webkit in that code does not handle this properly. We decided more than a year ago to put our energy into a broader effort for mobile, web, and desktop called TideKit that is due to be released shortly. http://youtu.be/aE7gN-d0GhU
HTML5 support is state-of-the-art including audio/video so embedding is just as easy as using the tags. Working with anything HTML5 or creating apps with native capabilities and UI will be easier and better than ever. TideKit will launch with a CLI and an app to connect with our build service to optimize build's based for your app's requirements (and where you want it to go). Any code you have in TideSDK can be migrated easily.
My team is writing an HTML5 app that uses the appcache and localstorage heavily. Our target platform is ipad and android tablets (and design time we work extensively in desktop browsers, though that's not necessarily a must-have).
Now we want to add some offline-available features that will be beyond what the browser-based storage can support-- namely a library of video & binary content that will be bigger than the appcache can handle.
Without the major mobile browsers implementing the html5 filesystem api, it seems very much like some kind of native app approach will be required (PLEASE correct me if I'm wrong here... I'd love to be wrong on this!). So, I'd love to hear opinions/experiences folks have had. We're noodling around with a few different ideas involving one or more of the following:
Compiling in phonegap + using their file apis
Using the Dropbox sdk (which would also require some kind of native support, not sure if phonegap would work)
writing per-platform custom native apps that host webkit controls, then providing the majority of functionality with our existing, cross-platform html5 app (basically we'd be writing a per-platform custom browser using the standard webkit controls).
Note that I'm a fan of #3 because I feel like we could release a relatively stable shell but then preserve the html5 cross-platform goodness & ease of distribution of our app. However, I don't know if this approach works (and/or if Apple frowns upon this type of approach-- seems like a bit of an App Store loophole).
Very interested to hear what you've tried and/or heard about.
This might be a completely stupid idea but, if you're looking for a cheap way to get extra storage, why not just use an html or js file to contain the data? You could even, for whatever reason, store it as a 64-bit data uri and run the media natively. I think you could even save data to it by just manipulating the manifest to be reflective. It'd take a bit of tom foolery, but it should work.
If you use approach 1 you will be well positioned to move to a web app once the major browsers support the File API. You see the File API in PhoneGap is based on the W3C spec that the browsers will implement.
2, I started working on a Dropbox plugin for PhoneGap Android but I need some "spare time" to finish it.
3, Apple will probably reject your app if it is just a wrapper around your web site. They've done that in the past.
Simon
I know that Blackberry has added new API's on OS5-6 that allow HTML5 code to access native features & widgets. Is it possible to make blackberry beep, ring, vibrate or sing (play mp3) to alert user of an event through an HTML page.
There is a java class called net.rim.device.api.system.Alert that might be accessible, but I don't know how to reach it with html/js.
Are you creating an app with embedded browser wrapped in native shell? Then you can access almost all native features (the one which are exposed) using javascript extensions.
If it's purely a web app or webworks application, you should be able to find all native features that can be accessed from the browser at
BlackBerry® WebWorks™ API Reference
You still will be using Javascript Extensions.
I want to make a single web application avoiding any flash code. This application must contain videoconference, and I want to implement it in pure HTML5. It is possible? I know about websockets, but don't know really if videoconference can be implemented through them with a relative performance (at least, 24fps + sound at a right resolution, minimum 640x480), and both endpoints being web apps (both endpoints should use browser).
Thanks in advance
Anyone following up this question - on Feb 4th, 2013 they produced the solution with WEBRTC in Chrome and Firefox. For examples see https://hacks.mozilla.org/2013/02/hello-chrome-its-firefox-calling/ or http://www.html5rocks.com/en/tutorials/webrtc/basics/ or https://code.google.com/p/sipservlets/wiki/HTML5WebRTCVideoApplication
You can't really use HTML5 video for live streaming at the moment, and it doesn't have support for web cams yet.
Ericsson has modyfied a WebKit browser and is showing how this can be done with hopfully upcoming HTML5 Stream API. See Beyond HTML5 - Implementing and stream management in WebKit
It is impossible to capture web-cam images/microphone feed just through JavaScript (although there are plug-ins which let you handle output through flash), so it would be necessary for you to have some kind of application/plug-in installed.
The speed part is just for the client to worry. I mean, web sockets will be as fast as the connection permits.
You should do some research about web workers, since they would be very useful for speeding up your application (you could have microphone interface, web-cam interface and UI all with their particular worker, thus never blocking the application or rendering it unresponsive).
EDIT: the aforementioned jQuery plug-in works through the use of <canvas>.
As Jonas said, according to the situations now, we can't build video conference with HTML5. There are many limitations with browsers also. As there is no common video codec supported by all browsers. And live-streaming is also properly supported by safari only(using HTML5 video tag). As per my experience we can't build live-streaming on windows with any browser properly.
But if you wanna get some information about live streaming see https://developer.apple.com/library/archive/documentation/NetworkingInternet/Conceptual/StreamingMediaGuide/Introduction/Introduction.html
you can use this source to test your live-streaming examples
"http://xfunoonx.api.channel.livestream.com/3.0/playlist.m3u8"
This content will work only with safari on Mac.