JFLVStream - Java FLV Pseudostreaming package
What is Pseudostreaming?Unlike a full-fledged streaming server which uses streaming protocols such as RTMP, pseudostreaming (also referred to as "HTTP streaming" or "progressive download") serves a video stream over standard HTTP. However, in order to allow video players to seek to any part of the video stream (or more precisely, to any key-frame), it can provide appropriate request parameters to which the server can respond with a dynamically generated video file that contains only the requested part of the video stream, and can thus be played as a regular video file without requiring further support for streaming. The advantage of pseudostreaming is that it is trivial to set up as compared to a full streaming server solution, and answers most simple streaming requirements.
What is the Java FLV Pseudostreaming package?The Java FLV Pseudostreaming package is an open-source implementation of a server-side Flash video (FLV) file pseudostreamer. It can be used directly from a standard Servlet, or integrated into a custom standalone server.
How do I use the Java FLV Pseudostreaming package?The Java FLV Pseudostreaming package is written in pure Java, and thus requires no special installation. Just add the jar file to your classpath, or place it in any of the usual servlet container directories.
This package can be used trivially from any standard Servlet container, such as Tomcat. Create and configure a new servlet, and in its implementation create an instance of the FLVPseudoStreamer class and delegate the processing to its service method. If you require further customization, you can use the implementation of this method as an example and have your servlet implement the servlet-related handling on its own.
Alternatively, if you do not wish to use servlets, you can use the underlying FLVPseudoStream methods directly to configure its behavior and stream the video to any given OutputStream.
See the FLVPseudoStream class javadocs for further details.
As for the client side, there are various flash players around that support pseudostreaming - see their respective documentations for instructions and examples of how to set them up to access your servlet or standalone server.
What's New?In version 1.1:
- Fixed checking for file existence outside base dir.
- Fixed exception thrown when file is shorter than header length.
- Fixed busy loop when specified file length is longer than actual file.
- Migrated to Maven build system, directory structure and artifact conventions.
- Added OSGi headers to jar manifest.
- Fixed javadoc errors when building with JDK 8.
In version 1.0:
- This is the first release of the Java FLV Pseudostreaming package.
LicenseThe Java FLV Pseudostreaming Package is provided under the GNU General Public License agreement.
For non-GPL commercial licensing please contact the author.
DonateIf you like it, why not give something back?
ContactYou can contact the author via e-mail at:
Please write in with any bugs, suggestions, fixes, contributions, or just to drop a good word and let me know you've found the Java FLV Pseudostreaming Package useful and you'd like it to keep being maintained.
For updates and additional information, you can always visit the website at: