Java: cross-platform .flv playback - java

I'm looking for a way to playback .flv files using java. This means I will need a ffmpeg lib that is cross-platform. I've been toying with jmf and fobs4jmf, but I cannot playback in linux because I need a native library (maybe fobs4jmf.so?).
Is there any java lib that allows me to playback .flv besides fobs4jmf? Or fobs4jmf can be used in linux, mac, etc? A pure-java lib would be perfect!
Edit: The player will be deployed as a java web start app (targetting jre6).

I'm probably not reading your question correctly, but I don't understand what you have against fobs4jmf. It seems to support Mac and Linux fine, see http://fobs.sourceforge.net/f4jmf_first.html

i would use a blatant shortcut. use an embedded browser and have it play the file using the browser's flash plugin.
http://www.eclipse.org/swt/snippets/#browser
heres how to embed a browser in your app, and just deliver it content through a really simple embedded web server. im sure you can just pickup a flash app that plays flv's no problem with the help of google.

you probably want a go with javafx in this: http://java.dzone.com/news/video-getting-started-with-jav

Xuggler works on Linux, Mac and Windows. I think it'll do the trick.

Related

Facing Issue While Playing a Video in Linux using VLCJ and JMF

I want to play a video in frame using Java code in LUbuntu.
Till now I have used JMF and VLCJ framework for playing a video, it works absolutely fine on windows but not on Linux (It gives me FATAL error if I use VLCJ even for the same code which runs on windows and JMF doesn't get install on linux-ubuntu).
I have used 32 bit Linux and 1.8 JDK. Is there compatibility issue with Linux drivers and JMF drivers ?
But now I am trying to run via any script that will enable me playing a video on a frame not on browser.
It will be great if you give me proper guidance.
Thank you.
vlcj currently will not work on 32-bit Ubuntu, at least not without some nasty workarounds.
In fact, this will fail even if you do not use vlcj, if you write the code yourself without using vlcj you are guaranteed to see the same failure.
The issue is caused by some combination of Java, VLC, LUA and 32-bit Ubuntu.
Probably the simplest workaround is to delete the VLC LUA scripts, but that will disable some functionality (such as YouTube).
There is a lot of background information here, way too much to reproduce in this answer:
https://github.com/caprica/vlcj/issues/62

Questions regarding Windows/Android development (Java:APK/JAR)

I'm planning to write a software (with GUI and sounds) that should run under Android and Windows 7/8
I guess the best approach for this is to use Java?
I am new to Android and Java development so my questions are:
-So can I use one development platform to create both (APK & JAR), namely Java?
-As far as I understand for Android I need to compile (from same source?) a .APK file and for Windows a .JAR file ?
(The .JAR will run in the Java Runtime that is installed in Windows)
-If I use Java what would be the best IDE, something like Google's Android Studio (will it allow to create .JAR?) or Oracle's JDK (Java SE Development Kit) ?
thank you
I don't think it is possible to write an app that will run on both OS's, since all GUI components are part of different frameworks (Android SDK for Android, SWT/Swing/... on Windows), and not compatible with all OS's.
You best bet is probably a web-based app. You can run it in the browser on dektop and either on a mobile browser on Android, or package it as a fullscreen WebView running your web app. The best part is it would also work on iOS.
You could also write your app for desktop in Swing and then convert it to an Android app, you can find questions on StackOverflow on the subject, such as this one.
Hope this helps ;)

java to access webcam and pen tablet (standalone app vs applet)

i need to develop in java an application that accesses local resources, mainly a webcam, and possibly a wacom bamboo pen tablet. It should take pictures and notes and then post them to a web server.
The ways i can think of are:
use applets
use some kind of standalone app created via JavaFx (or swing or similar)
Which way would you go about it? Are applets considered a viable/secure way to achieve this?
Thanks
I would go the standalone app route. I always turn Java off in my browsers because I can never remember which specific version has security bugs.
If you build it as a desktop app I think you could quite easily convert it to be an applet later on if you wanted.

Java web start on iPad

Can I run Java applications (Java Web Start) on iPad?
Looks like this is not possible, but someone suggested using Cloud Browse (an application I couldn't' find) to run Java.
Any solutions?
UPDATE: Cloud Browser is an application that was available on the App Store but it was removed my Apple. Cloud Browse would process the web site externally and then stream the web site content to your iPad screen (something like video streaming).
No, you cannot run Java programs on the iPad (or any iOS device). Apple's license terms forbid running applications that can execute code downloaded from the Internet (which is what Java Web Start is all about).
No, as staffan said, Webstart will not work. However using CloudBrowse, an applet can work. It looks like the idea behind Cloud Browse is that the browser gets rendered on the server and video of the web page get streamed to your phone. This way, it appears to the user that applets or flash are running on the ipad.
I tried CloudBrowse on my IPAD as I've got a Java Applet that runs inside a brower and wanted it to work on my Ipad.
I found that it works pretty well. The Java Applet has a 3D animation, it's not as smooth as running on Windows/Mac through a normal web-browser, but it's pretty good.
I paid for full version, wasn't that expensive and to me, worth it. Opens up the power of using Applets but within Ipad!
Check it out here ... 3D sailing replay.

How to port web ui to desktop app?

I have seen a lot of people try to make a web ui looks like a desktop ui. However, most of the time i feel web ui is much more interesting than the desktop ui, with the help of javascript toolkit like jquery, gwt-ext etc.
My question is, how to port the web ui to desktop ui? Do I need to embed a javascript engine in java? css engine? html layout engine? That sounds like a lot of work to do.
Any easy way of doing this?
you can embed a web server in your app and you can embed a browser inside your app window. i know eclipse does this pretty well. it uses SWT to do the heavy lifting
http://www.eclipse.org/swt/snippets/#browser
check the Browser section
your web server doesnt even have to be a proper web server, it just has to set the content, and can query / change it on the fly. the javascript on the page can even interact directly with your app.
you should be even able to use crazy web frameworks like
http://echo.nextapp.com/site/
or
http://code.google.com/webtoolkit/
or even run a ruby site through JRUBY
or make really complex apps using the new HTML5 engine [canvas/video tags] (if your client has the new mozilla installed)
Adobe AIR technology solves this exact problem. The code you develop using Flex can be rendered in the Flash player plugin of a browser or the same code can be easily packaged as a Desktop application that runs on the AIR runtime.
Have you seen Appcelerator's Titanium Desktop
This is one of the best solution for you (i think!)
You write the javascript and html code, and the titanium SDK creates the Desktop application of the same
There is support for Python and Ruby.
Must try :
http://www.appcelerator.com/products/titanium-desktop/
if you are a Ruby programmer then you must also see this
http://www.rubyinside.com/bowline-rails-for-the-desktop-2183.html
Prism from Mozilla is made for this goal, exactly. It's out of beta now too, I believe.
Check Google Gears y Adobe AIR
It not 'a lot of work to do', it's a huge amount of work to do - you would in effect be writing you own browser and it'd never come close to the poplar ones out there, simply because you wouldn't get the level of feedback something like Firefox gets.
If you're trying to avoid address bars, menu bars, etc these can be switched off in all the popular browsers and so to the user the appearance would be that it's more application like with only the rich content of the HTML visible.
Sounds like JavaFX would be good for you?
http://en.wikipedia.org/wiki/Javafx
Try XULRunner from Mozilla. If you have developed extensions for Firefox, then this is the exact same thing. XULRunner contains the Gecko engine, so it can render XUL and HTML with CSS, and it supports JavaScript with many useful XUL Components, like file read and write, directory browser and network tools.
Because it supports HTML you can in effect make a webpage and have it run like an application. Also it is cross platform, so it will run on Windows, Mac and Linux, anywhere Firefox runs actually.
There is some information on creating XULRunner applications on the net, but since it's so similar to making Firefox Extensions, you can just google for that. A good Tutorial for getting started is this one.

Categories