/JavaRTMP

A pure Java client implementation of the Real Time Messaging Protocol

Primary LanguageJavaMIT LicenseMIT

JavaRTMP

[Build Status] [Test Coverage] [License] [Maven Central]

JavaRTMP is a pure Java client implementation of the Real Time Messaging Protocol licensed via the MIT License and copyrighted by Emily Mabrey. The project is being developed because the available options for accessing RTMP streams via Java are unsatisfactory due to problems such as unfavorable licenses, sparse or nonexistent documentation and unit tests, abandonment of active development, or generally incorrect or incomplete implementations.

Project Goals

  • 100% test coverage of all branches without failing or skipping tests
  • complete documentation of all methods, classes, and packages
  • compliance with the official RTMP and AMF standards
  • better performance than alternatives (such as Flazr or librtmp)
  • a deterministic Maven build which produces obfuscated, minimized and signed binaries
  • automatic distribution of RELEASE project binaries and documentation to Maven Central repository
  • automatic distribution of SNAPSHOT project binaries to the Sonatype OSS repository
  • automatic generation of a project site containing up-to-date reports on the project

How to Contribute

Before making your first contribution, please read the rules and instructions. Once you have familiarized yourself with those standards, please feel free to submit fixes via a pull request or contribute additional information to the project wiki. If you notice an issue please submit a bug report, but please attempt to verify that you are not duplicating an already reported issue.

You can view a list of those recognized for their assistance with the project here. To all those who help make JavaRTMP a reality, from users to contributors, thank you so much!

Project Information

Current information on the project is available at the JavaRTMP project site. As the project is currently working towards an initial release, the information on the site is volatile and subject to change without warning. The travis-ci service verifies the build status of the project whenever the project's GitHub repository is modified; you can view the status of each branch here.