You can detect whether JMF is available by trying to access one of its classes via Class.forName(...).
What do you mean by "JMF plugin"? JMF is a library for which plugins are available, but it is not a plugin itself. You can
test for the presence of any particular JMF plugin the same way you test for JMF's presence.
Silently installing anything on a computer is nasty;
don't do that. But it's probably unnecessary, too; what kind of application is this - desktop (using Swing), applet/JNLP, something else?