webshim mediaelement / kaltura CE / mediaelement.js as platform for developing advanced player - html5-video

I am trying to develop a custom self-hosted embedable player (Just YT embeds for now, but option for adding media later) with social media buttons, clickable overlays, post-roll options, etc that can be shared in FB timeline cross-browser, etc. I have narrowed down frameworks to:
Mediaelement.js
Kaltura Community Edition
Webshim's mediaelement
I'm new to javascript, so ease of use, user base, and documentation are all important. Any reason why one of these might be a dead-end for my purposes, or why one might be easier to develop for?
Just trying to get perspective at the moment before drilling down on the development details. I am experimenting with mediaelement.js in the meantime.

Well, I think it won't be easy.
You also must have a server side for in order to create your own player.
I know that Kaltura are working on a solution.
But I don't see any better choices.

Related

Developing apps for Xbox One?

I've heard that Xbox One application development is quite similar to Windows 8, but I haven't found much to suggest why, or what differences there are.
Is there any documentation about creating Xbox One applications (not games, apps.. like Netflix, etc), or even how to apply to obtain such information?
I've been trying to find more details myself. It sounds like the ability to develop apps is coming:
http://arstechnica.com/gaming/2013/10/wait-can-the-xbox-one-really-run-generalized-windows-8-apps/
Nothing to announce today, but when I talk about that common core,
you're seeing that common core in action, being able to target other
devices over time that run the Windows 8 engine.
If you want to know about how to get a head start about thinking about
developing for Xbox One, the logical thing to do is [to] go build
Windows 8 applications.
There are some additions in WinRT designed to allow interaction with Kinect:
http://www.oxm.co.uk/59024/features/what-its-actually-like-to-develop-for-xbox-one-microsoft-explains/?page=2
The applications are very similar to Windows 8, like we brought a lot
of the Windows 8 namespace - WinRT can be used for building those
applications, the time it takes to port a Windows 8 application to the
new Xbox? It's super, super easy. There's some things we added to the
platform for handling gestures, for handling voice and handling ten
foot UI paradigms.
Right now it appears the most you can do is try out your app ideas in WinRT and wait until an Xbox One SDK appears.
I've worked on a few of the launch apps for Xbox One. Unfortunately, you cannot get an app on the platform unless you've been invited (at this point in time), however rumour has it that MS may open up the platform a bit more in the next year or two.
All documentation and information regarding the development itself is all under strict NDA, so it's highly unlikely that you'll find any in depth details.
If you're interested, you can always try contacting the Xbox team for more information.
Important update on this topic:
Every Xbox One is now capable of going into developer mode via the Xbox Dev Mode App. Games and more importantly apps can now be developed by anyone.
FAQ on this topic: http://support.xbox.com/en-US/xbox-one/apps/developer-mode-activation-app-faq
Microsoft currently does not have any official documentation for Xbox One Apps, however it seems that if you go here: http://www.xbox.com/en-us/Developers/id You can register to become a developer for the Xbox One and get the development kit so you can develop apps for it.
Main information about developing for the Xbox can be found at http://www.xbox.com/en-US/developers, which includes how to register for an Xbox One development Kit
and the different tools and middleware that can be used to create games/apps for the Xbox. More documentation for the Xbox One will most likely get published by the end of this year.
To add to what I said, I recommend creating apps for the windows phones as it will show Microsoft that you can successfully build apps for their products. If your app gets enough downloads they will probably allow you to create an app for the Xbox One because you already have a track history
You could use Unity because it can use cross-platforms like Xbox, iPad, iPhone, PS4 and more. Also you can create 3D and 2D apps for development and to upload it to the phone you can use Xcode to build and run the unity project on the phone. If you get stuck you can always go to https://unity3d.com.

GWT & MVP in order to deliver BOTH Native (Android+ObjC) & HTML5 Mobile Apps?

So GWT best practices encourages one to use some flavour of MVP, which should in theory allow one to write different native views while sharing the presenter business logic.
This seems to be at the heart of the GWT spin off Google project http://code.google.com/p/j2objc/ which converts the non-UI part of your code to Objective-C, allowing you to write the rest natively in Objective-C.
So my question is: If this really hard part of the puzzle is being solved, how hard would it be to include an HTML5 mobile library (like MGWT or Touch4j [Sencha]) into this MVP pipeline to have the best of all worlds?
Having dabbled with http://code.google.com/p/playn/ , this clearly seems to be the blue-print for having a cross-plaftform build system (native android & html5 & java &...), but that project is geared for single screen drawing and event loop for game dynamics and doesn't allow for keyboard input and other typical mobile goodies.
It seems a shame that if so much of the problem has been solved, that it's not possible to go the extra mile. The answer to this question would be the best plan for actioning a solution, including such nigglies as which MVP structure to choose that would ease accommodation of the various widget libraries (GWTP vs MVP 2.1), and if the best approach is to start with the PlayN code base, and start to hack it.. what are the gotchas? Or if another path is chosen, why that one? and why would it be the best??
Thanx a lot. :-)
It is not clear whether your question is - evaluation options for multi-platform app development or mvp.
You can evaluate additional technology which are used with Sencha and GWT
1) mgwt
2) titanium
3) phonegap
You can also reference - Creating a mobile app using Google App Engine and GWT?
Note: PlayN as you mention is more of gaming platform and not suitable for business app.
MVP is definitely doable... and at times you may feel like its a lot of work, but it pays off in the end. Check out the Touch4j Kitchen Sink, which is written using MVP. You can take that down to the device with Cordova if you wish. The code is on GitHub:
https://github.com/emitrom/touch4jks
The repo is actively being worked on (we are updating ourselves to Touch4j 4.0) so it won't run out the gate, but at least you can see and follow the model :-)
Titanium4j is to Appcelerator's Titanium as Touch4j is to Sencha Touch. You may want to check that out as well. Titanium4j and Touch4j rely on GWT.
Cheers.

Camera compatibility

I have an usb-camera with its drivers and dll with some functions to use this camera in my solutions. I want to use it in any wide-spread applications, to be able just to choose and use it in Skype, for instance. So. I want to develop something that will allow me to use this device as usual web-camera.
I've heard something about such technologies as "Upper-Level Filter Drivers" and "user-mode DirectShow source filter". Looks like it something that can help.
So the question is: what technologies exist for such tasks? What technology should I choose to solve my problem if I have no skills of driver development?
Skype still uses DirectShow for video capture and user mode filter will do the job. Still Skype makes certain unreasonable assumptions that limit compatible source filters, such as if the developers stopped development/testing as soon as they had their favorite USB cam working and ignoring all other devices users might possibly want to attach.
One of the options you were suggested (in Russian - 1, 2) was to develop a kernel mode driver so that your device is visible to apps through standard WDM Video Capture Filter. This is possible and would work, though in my opinion it is a huge overkill.
Fitting custom source filter is not easy because Skype does not like a debugger attached, however driver development is really a completely different story.
The Skype Forum link you refer to is clearly misleading. The poster complains that Skype update broke compatibility with video sources. And response from admin is about audio devices, and is irrelevant.

Current Status of Sproutcore/Ember/Blossom/Sencha and Mobile devices (or alt frameworks)

I've been looking over Sproutcore, Ember and Blossom and other competitive framework efforts (e.g. Sencha) to select for a HTML5 client side application project. The state, information, and documentation from these projects is a bit fragmented and in need of clarity, so I am presenting this to the community.
My project is to be a native-like HTML5 application with desktop level complexity in need of a complete application framework, that will work well on desktops and run with good speed on mobile devices with touch awareness. The widgets should be native-like (not web-like), but customizable so to be unique to the application.
Questions/framework Requirement:
Native vs. Web style Applications. Framework should make it easy to
build native-like user experiences with the ability to make a custom
native feel (not just wholly imitating mac/win/iOS). Some of the text
surrounding Ember indicates it is really meant for web-style apps - which given no
UI layer maybe goes without saying. Frameworks like Sencha, can it easily accommodate custom widgets?
Mobile Appropreatness. Framework should be appropreate for mobile devices and have facilities for touch input and
gestures.Several notes I've seen in my research indicate that Sproutcore and
Blossom aren't very appropreate for mobile, and that Ember is better
geared towards mobile (size?). It isn't clear whether the
touch/mobile libraries are very developed in Sproutcore/Blossom and if they will be supported it the
current state going forward. (and blossom compile to native is not acceptable). On the otherhand, Frameworks like Sencha, do they have the facility to work well on desktop as well as mobile?
Framework Completeness. The framework should be a fairly complete application framework, with desktop-like OO expectations and management for automatically and efficiently syncing, managing, and serializing the data model with the server. Not sure if there is much difference between Ember and Sproutcore, how do other efforts like Sencha stack up?
Your question covers a lot of ground. I will pick some quotes and answer them directly.
My project is to be a native-like HTML5 application with desktop level
complexity in need of a complete application framework
Ember.js specifically bills itself as a "web-style" framework, not a an RIA framework. That said, you can build anything you want, but you would be trailblazing.
Sproutcore bills itself as an RIA framework. You have complete control over the DOM, so if you can do it in the browser, you can do it in Sproutcore.
Ext-Js is also a good application framework for desktops (Sencha Touch is for Mobile). If you like the way its examples look, then its a good choice. You can of course customize the dom and write your own widgets.
Blossom is basically Sproutcore with a canvas based view layer. It just went into beta, so you would definitely be trailblazing if you went with it.
So, you can basically use any of the frameworks you mentioned for the RIA part of your enterprise. I would eliminate Ember.js simply because the framework itself purposes itself for web-style (e.g. twitter) as opposed to RIA (e.g. iCloud) apps, which is not what you want.
The widgets should be native-like (not web-like), but customizable so
to be unique to the application.
All three of your remaining options can do this. If you like Senchas widgets, its a good choice. I don't know if they are native enough for you. That said, with any of the remaining frameworks you can customize the DOM to your heart's content.
Mobile Appropreatness. Framework should be appropreate for mobile devices
This is a tough one. Sencha Touch (which is separate but similar to Ext-Js) is very popular and gets the job done. It is performant too; a non-trivial app ran fine on my original Droid (which surprised me).
Sproutcore is very heavy weight. It has mobile support (i.e. for touch events) but you need to very careful about the dom you create, so as not to overwhelm the browser. I wouldn't choose Sproutcore for mobile, although you could if you are very careful.
and blossom compile to native is not acceptable
That does not seem reasonable to me. To be clear, NONE of these frameworks run natively on mobile devices; they ALL run in the browser. Blossom comes closes as the canvas API is mapped directly to the native API, giving you a truly native app. The only way you could get closer would be to use objective-c/java for iOs and Android.
So basically, at this point your left with Sencha(Ext-Js) and Blossom. Blossom is still in Beta, you would be trailblazing if you tried it. Sencha is established, has great support (Blossom support is good on irc), and a large developer base.
So Sencha is the choice, unless you really want to be cutting edge, and take a little risk.
Troy. Indeed, ember can run with another view layer framework such as jQuery Mobile which can provide a "app-like" look and feel.There is a github project: https://github.com/LuisSala/emberjs-jqm. In my view, if you need very cool animation you can use blossom.If you want to build a app, SC or ember should be OK. I'll choose ember because it 's loosely coupled.

Fireworks or AIR?

I need to write a desktop application that can run on Mac (Windows and Linux soon) that can get data from MySQL and allow users to transfer files from their desktop to the server.
I know I can write a desktop app in AIR, how would Fireworks play into this?
Can AIR connect to MySQL?
Can one FTP files with AIR?
On a second note, can one write such applications as a ring-tone maker, a disk repair/partitioning utility in AIR? I know AIR uses web technology, but what other thigns are possible?
-Jason
Do you mean Adobe Fireworks? I would use Fireworks for the interface design. It also has some customizable assets.
Here is the product page where they have a lot more info on what it's capable of.
http://www.adobe.com/products/fireworks/features/?view=topnew
An AIR application is a desktop version of a Flash Application. So anything you can do in a Flash Application you can do in an AIR application. Flash Apps work with MySQL so you should be able to get an AIR app to work with MySQL.
AIR apps can also access the local file system. For instance you can write an AIR file loader application.
Fireworks is my design tool of preference. If you are working with digital graphics there is little need to look beyond FW to things like Photoshop and Illustrator. All of the CS5 software intro screens were designed in Fireworks. It has the best 32 bit PNG output I have seen and the colors are dead on without that issue from PS changing its output from the authoring environment.
From experience, I would not recommend spending time with AIR. Web apps are the way to go and the investment in a desktop or even mobile specific device app is going to be tough to justify because of programming maintenance costs, version releases and the speed new technology is released.
You could use Fireworks for the creation of images for the UI ( User Interface ) for most parts its okay enough, if you need advanced shadowing and color options you can look into photoshop, but fireworks is just great for the basic graphical stuff.
Im not sure if you question was maybe related to the UI since fireworks itself should have nothing to do with building the Air application.
You can use different solutions to build your air application, maybe off topic but if you have not decided how to build the AIR app I would look into Adobe Flash Builder 4,5, flex and the AIR development library's. Flex is also great to easily change the user interface (CSS) where you could create the images with fireworks :)