Skip to content

KengoTODA/brownie

Repository files navigation

Brownie

Distributed video converter, based on Vert.x v3 and RxJava.

Build Status Coverage Status codebeat badge

Feature

  • Support clustering based on Hazelcast
  • Support royalty-free format (WebM) only
  • Support distributed file systems like AWS S3, Aliyun OOS, HDFS etc.
  • Support multi presets to support many kinds of client
  • Support generating thumbnail
  • Provide Swagger file for generating API client automatically
  • Provide admin console to manage running tasks and stored files
  • Provide Docker container to run brownie cluster
  • Provide recommended Docker Compose configuration for small cluster

How to run

$ mvn clean package
$ java -DBROWNIE_MOUNTED_DIR=/tmp/brownie -jar target/brownie-*.jar

or

$ mvn clean package
$ java -DBROWNIE_MOUNTED_DIR=/tmp/brownie -DBROWNIE_CLUSTER_HOST="localhost" -jar target/brownie-*.jar

or

$ mvn clean package
$ docker-compose build
$ docker-compose up

How to test

$ docker-compose up -d --force-recreate file_storage_db thumbnail_db
$ mvn clean verify

Copyright and license

Copyright 2015-2016 Kengo TODA

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Dependency

This product needs ffmpeg in the PATH.