This repository has been archived on 2021-03-01. You can view files and clone it, but cannot push or open issues or pull requests.
Go to file
2012-07-16 13:11:33 +02:00
m4 Repo initialisation 2012-07-09 07:37:41 +02:00
src Merge branch 'master' of ssh://nemu/prpa 2012-07-16 13:11:33 +02:00
.gitignore Repo initialisation 2012-07-09 07:37:41 +02:00
AUTHORS Repo initialisation 2012-07-09 07:37:41 +02:00
bootstrap Repo initialisation 2012-07-09 07:37:41 +02:00
ChangeLog Repo initialisation 2012-07-09 07:37:41 +02:00
configure.ac New filter color: tends to a given color; sepia is grey + color filter 2012-07-16 10:12:03 +02:00
Makefile.am Added a few other filters, including filters that merge two files. 2012-07-13 18:03:45 +02:00
README Fix line in rotate filter 2012-07-16 12:42:18 +02:00
TODO Proper parsing of the CLI, adding filter according to it; catch some CLI error (unknown filter, no output file given, ...) 2012-07-16 01:39:56 +02:00

PRPA
====

Apply a video-filtering chain with full exploitation of multi-threading.

Usage
-----

./prpa [options] [file...]

Options are one or more of the following:
  -h [ --help ]           produce help message
  -f [ --filter ] arg     apply a filter (see below)
  -i [ --input-file ]     arg file to treat
  -o [ --output ] arg     output file
  -c [ --codec ] arg      output codec
  -d [ --disable ]        disable parallelism

Codecs
------
Codec name are 4-character codes that can be found on this page
http://www.fourcc.org/codecs.php

Codec name *must* match the output file extension.
Exemples are:
-c MP42 -o .avi # MPEG4
-c MP42 -o .mp4 # MPEG4
-c XVID -o .avi # Xvid
-c theo -o .ogg # OGG Theora

Note that MP42 and XVID are two of the quickest output codecs and thus will not
be a bottleneck for the parallelism.

Filter
------

Available filters are:
* grey                Produce black and white ouput.
* reverse             Reverse colors.
* cartoon             Try to apply a "cartoon" effect (VERY SLOW).
* drunk               Simulate alcool abuse.
* count               Count frame per thread (debug?).
* color=B,G,R         Apply the B,G,R color filter.
* sepia               Apply a sepia effect.
* blur[=X]            Blurs the video, X is the strength of the blur effect.
* merge               Merge 2 videos pixel per pixel with a transparent effect.
* interlace           Merge 2 videos, alterning between one pixel of each.
* inlay=B,G,R         Inlay a video into another one at the place of the
                      B, G or R color, trying to replace the whole color, not
                      just the particular value.
* strictinlay=B,G,R   Inlay a video into another one at the place of the
                      precise BGR color asked.

For the merge, interlace, inlay and strict inlay filters, at least two videos
must be passed in the input files list.

Examples
--------

./prpa -f drunk -f sepia -o bar.avi -c MP42 foo.avi
./prpa -f blur=50 -f reverse -o bar.avi -c XVID foo.avi
./prpa -f inlay=1,0,0 -o bar.avi -c XVID foo.avi inlayed.avi
./prpa -f strictinlay=255,137,42 -o bar.avi -c XVID orig.avi inlayed.avi

time ./prpa -f drunk -f sepia -o bar.avi -c MP42 foo.avi
time ./prpa -d -f drunk -f sepia -o bar.avi -c MP42 foo.avi