JMF abstracts the media it works with into DataSources (for media being read into JMF) and DataSinks (for data being exported out).
A Manager class offers static methods that are the primary point-of-contact with JMF for applications.