Guida di base di FreeJ version 0.11.0
1 febbraio 2012 - La documentazione sull'uso pratico di FreeJ che ho trovato in rete è scarsa quindi mi sono fatto una pagina di appunti. Spero possa essere utile come guida di base 8-)
FreeJ è un programma, open source gratuito, utile a modificare in tempo reale flussi video.
Il programma parte digitando nel terminale:freej [opzionalmente seguito dai parametri e dai files da caricare]
Es: freej -s 640x480 video.ogg # apre video.ogg in una finestra di 640x480px (predefinita 400x300)
Per selezionare un layer si usano i tasti freccia: ▷ e ◁.
Per selezionare e visualizzare un layer si premono i tasti + e -.
Per selezionare un effetto (in un layer già selezionato) si usano i tasti freccia △ e ▽.
Per generare immagini da flussi predefiniti Ctrl+g poi si digita il nome del generatore.
Per aprire un file da inserire in un layer Ctrl+o.
Per manipolare il flusso video Ctrl+a, poi regolare con + e - lo zoom, con a e d la rotazione.
Per i titoli Ctrl+t, inserire il testo. Posizionarlo con Ctrl+a e tasti freccia poi dare Invio.
Per gli effetti video con Ctrl+e, Tab per vedere l'elenco.
Per disattivare gli effetti selezionare l'effetto e premere Spazio.
Per cancellarle gli effetti selezionarli premere Canc.
Per i filtri Ctrl+b. Per disattivarli Ctrl+b e inserire rgb.
Per caricare dinamicamente uno script Ctrl+j ed inserire il percorso.
La documentazione locale dovrebbe essere in /usr/share/doc/freej. (Si può trovare digitando nel terminale locate /doc/freej ).
La documentazione delle API è all'indirizzo http://freej.dyne.org/docs/scripting/.
Gli script (si dovrebbero trovare?) su: www.dyne.org/software/freej si caricano con Ctrl+j.
Un buon tutorial per l'uso di base https://lab.dyne.org/FreejTutorial.
Alcuni video vengono eseguiti a velocità accelerata, conviene premere Invio per fermarli e di nuovo Invio per farli ripartire.
La console interna al programma conserva la "storia"; per richiamare i comandi impartiti premere il tasto △.
Prima di inserire i vari parametri dopo la combinazione di tasti Ctrl+p, premere il tasto Tab.
I parametri indicati come boleani vanno comunque inseriti in formato numerico 1 per "true" e 0 per "false".
Alcuni parametri vanno impostati con valori da 0 a 1 (per esempio per Squareblur valori utili sono nell'ordine di 0.008) altri (come alfa) con valori da 0 a 100 altri da 0 a 256, fare sempre qualche prova con i vari ordini numerici.
Gli spostamenti dei livelli, è meglio effettuarli usando il tastierino numerico che consente lo spostamento di layers (ruotati), rispetto alle loro coordinate locali. In pratica, la pressione dei tasti 7 9 1 3, sposta nelle direzioni parallele o ortogonali ai bordi del layer ruotato; la pressione dei tasti 8 4 6 2, sposta nelle direzioni delle coordinate globali, cioè, in verticale e in orizzontale; il tasto 5 annulla gli spostamenti.
Rendere auto-eseguibile un nostro script. Basta inserire come prima riga #!/usr/bin/freej -j e renderlo esguibile (chmod +x nome_file). Se non funziona controllare il percorso dell'eseguibile freej con: which freej e sostituirlo nella riga #!/usr/bin/freej -j. Eseguendo lo script si aprirà Freej eseguendo il codice del file.
Dopo aver premuto Ctrl+a....
Zoom con i tasti + e -.
Rotazione manuale con i tasti < e >.
Spin zoom con i tasti w and s NON MI FUNGE.
Rotazione automatica continua (lenta) con i tasti a (senso antiorario) e d (senso orario).
, annulla la rotazione
. annulla lo zoom
Spazio o tasto 5 annullano gli spostamenti mantenendo l'eventuale rotazione.
Ctrl+e Tab
3dflippo Frame rotation in 3d-space
B Extracts Blue from Image
G Extracts Green from Image
IIR blur Three types of fast IIR blurring
R Extracts Red from Image
alpha0ps Display and manipulation of the alpha channel
alphagrad Fills alpha channel with a gradient
alphaspot Draws simple shapes into the alpha channel
White Balance Adjust the white balance / color temperature
Baltan delayed alpha smoothed blit of time (sovraimpressione sfasata)
bluescreen0r Color to alpha (blit SRCALPHA)
Brightness Adjusts the brightness of a source image
bw0r Turns image black/white.
c0rners Four corners geometry engine
Cartoon Cartoonify video, do a form of edge detect
K-Means Clustering Clusters of a source image by color and spatial distance
coloradj_RGB Simple color adjustment
Color Distance Calculates the distance between the selected color and the current pixel and
uses that value as new pixel value
Contrast0r Adjusts the contrast of a source image
Curves Adjust luminance or color channel intensity with curve level mapping
Nikon D90 Stairstepping fix Removes the Stairstepping from Nikon D90 videos (720p only) by interpolation
Defish0r Non rectilinear lens mappings
delay0r video delay
Delaygrab delayed frame blitting mapped on a time bitmap (distorsione circolare dal centro)
Distort0r Plasma (distorsione prospettica)
Edgeglow Edgeglow filter (accentua i bordi dei quadretti di compressione)
Equaliz0r Equalizes the intensity histograms
FaceBl0r automatic face blur
opencvfacedetect NON APPLICARE VA KILLATO IL PROGRAMMA
Flippo Flipping in x and y axis
Gamma Adjusts the gamma value of a source image
Glow Creates a Glamorous Glow
hqdn3d High quality 3D denoiser from Mplayer
Hueshift0r Shifts the hue of a source image
Invert0r Inverts all colors of a source image
Lens Correction Allows compensation of lens distortion
LetterB0xed Adds Black Borders at top and bottom for Cinema Look
Levels Adjust luminance or color channel intensity (mostra grafico)
Light Graffiti Creates light graffitis from a video by keeping the brightest spots
Luminance Creates a luminance map of the image
Mask0Mate Creates an square alpha-channel maskNervous
nosync0r broken tv
Perspective Distorts the image for a pseudo perspective
pixeliz0r Pixelize input image
pr0be Measure video values (mostra puntatore e lente)
pr0file 2D video oscilloscope (mostra grafico)
primaries Reduce image to primary colors
RGB-Parade Displays a histogram of R, G and B of the video-data (curve livelli b g r)
Saturat0r Adjusts the saturation of a source image (provare 0.1 o 0.2 0.3)
Scale0Tilt Scales, Tilts and Crops an Image
scanline0r interlaced blak lines
select0r Color based alpha selection
Sharpness Unsharp masking (port from Mplayer)
Sobel Sobel filter (contorni)
SOP/Sat Slope/Offset/Power and Saturation color corrections according to the ASC CDL
(Color Decision List)
Squareblur Variable-size square blur (provare 0.008 0.009)*
TehRoxx0r Something videowall-ish
3 point color balance Adjust color balance with 3 color points
threelay0r dynamic 3 level thresholding (bianco grigio nero)
Threshold0r Thresholds a source image (provare 0.3)
Tint0r Tint a source image with specified color
Transparency Tunes the alpha channel
Twolay0r dynamic thresholding
Vectorscope Displays the vectorscope of the video-data
Vertigo alpha blending with zoomed and rotated images
Vignette Lens vignetting effect, applies natural vignetting
3dflippo Frame rotation in 3d-space
Brightness Adjusts the brightness of a source image (0.5 normale)
bw0r Turns image black/white (scala di grigi)
Cartoon Cartoonify video, do a form of edge detect
Contrast0r Adjusts the contrast of a source image (0.5 normale)
delay0r video delay
Distort0r Plasma (distorsione prospettica circolare)
Equaliz0r Equalizes the intensity histograms
Flippo Flipping in x and y axis (va impostato)
Gamma Adjusts the gamma value of a source image(0.25 normale)
Glow Creates a Glamorous Glow (impostabile blur)
Hueshift0r Shifts the hue of a source image
Invert0r Inverts all colors of a source image
Mask0Mate Creates an square alpha-channel mask
nosync0r broken tv (0.5 spezza a metà)
rotozoom planar z-axis zoomed rotation
Water water drops on a video surface (mettere a 1 almeno rain)
Ctrl+b Tab
RGB ADD SUB MEAN
ABSDIFF MULT MULTNOR DIV
MULTDIV2 MULTDIV4 AND OR
XOR RED GREEN BLUE
REDMASK GREENMASK BLUEMASK NEG
ADDB ADDBH SUBB SHL
SHLB SHR MULB BIN
ALPHA SRCALPHA CHROMAKEY PAST_ADD
PAST_ADDNEG PAST_ABSDIFF
Ctrl+g Tab
Ising0r Macchie bianche su sfondo nero che tendono a chiudersi (con parametri)
Lissajous0r Ellisse bianca con bordo sottile (con parametri)
Nois0r Come filtro grafico "noise"
onecol0r Riempie con un colore dell'immagine
Partik0l Doppia elica animata (con parametri)
Plasma Reticolo di macchie colorate in movimento (con parametri)
test_pat_B Bande verticali colorate (con parametri)
test_pat_C Quadrato riempito da sfumature di colore (con parametri)
test_pat_G Scacchi (con parametri)
test_pat_I Punto bianco centrale (con parametri)
test_pat_L Bande verticali in scala di grigi (con parametri)
test_pat_R Linee verticali fitte con deformazione e zoom (con parametri)
Ising0r Noise animato (con parametri)
NAME
FreeJ - vision mixer
SYNOPSIS
freej [ options ] [ streaming options ] [ layer files and video devices ]
DESCRIPTION
FreeJ is a vision mixer: an instrument for realtime video manipulation used in the fields of dance teather,
veejaying, medical visualisation and TV.
With FreeJ multiple layers can be filtered thru effect chains and then mixed together. The supported layer
inputs are images, movies, live cameras, particle generators, text scrollers and more. All the resulting video
mix can be shown on multiple and remote screens, encoded into a movie and streamed live to the internet.
FreeJ can be controlled locally or remotely, also from multiple places at the same time, using its slick console
interface; can be automated via javascript and operated via MIDI and Joystick.
OPTIONS
-h show commandline help
-v show version information
-D [ num ]
set debug verbosity level to (1 to 3), default is 1
-s [ WxH ]
set resolution to WidthxHeight, default is 400x300
-n start with all layers deactivated
-c start without any interactive text console interface
-j [ javascript.js ]
run the javascript.js script file
-e [ file.ogg ]
set the filename of the local encoded ogg-theora movie (default is: freej.ogg), files already existing
are not overwritten, instead filename-2.ogg is used; if a number is given, the corresponding file
descriptor is used. To start/stop the recording and streaming use ctrl-w while running.
FILES AND DEVICES
FreeJ can run with an infinite number of layers, as much as your CPU can handle. Layer types are recognized from
file extensions.
Supported layers types include:
movies (*.avi|*.asf|*.asf|*.wma|*.wmv|*.mov|*.mpeg)
text (*.txt)
depends from freetype library http://freetype.org
cameras thru the Video4Linux device (/dev/v4l/*)
images (*.png|*.jpg and more)
flash animations (*.swf)
only the vectorial animation is supported (flash v.3), no scripting nor streaming, but that's in FreeJ
anyway ;)
particle generator
can be crated from commandline as layer_gen (or ctrl-g while running) to create a layer that doesn't
needs any input, just draws nice particles
any file type
if not recognized will be threated as a text scrolling layer showing its contents scrolling them
vertically on the screen
EXAMPLES
Scripting examples are available in the documentation, usually found locally in /usr/share/doc/freej and
online on freej.dyne.org/docs/scripting
For example this freej script will start a stream right away:
// create a video encoder object - values [1-100]
// video qlty video bit audio qlty audio bit
encoder =
new VideoEncoder( 10, 64000, 5, 24000);
encoder.stream_host("giss.tv");
encoder.stream_port(8000);
encoder.stream_title("testing new freej");
encoder.stream_username("source");
encoder.stream_password("2t645");
encoder.stream_mountpoint("freej-test.ogg");
register_encoder(encoder);
encoder.start_stream();
// encoder.start_filesave("prova.ogg");
but be sure to actually play something in it: open a camera or movie layer.
Don't stop reading documentation, this manual is not the only source of information.
AUTHORS
Denis "Jaromil" Rojo - author and mantainer
Silvano "Kysucix" Galliani - truetype text layer
A full list of developers and contributors can be found in the AUTHOR file distributed with the source package.
FreeJ development is supported by the Nederlands Instituut voor Mediakunst - Montevideo/Time Based Arts.
This manual page was written and is mantained by Jaromil.
Write to the mailinglist on to contact developers.
COPYING
Permission is granted to copy, distribute and/or modify this manual under the terms of the GNU Free Documentation
License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections.
Permission is granted to make and distribute verbatim copies of this manual page provided the above copyright
notice and this permission notice are preserved on all copies.
AVAILABILITY
The most recent version of FreeJ can be attained from its homepage at http://freej.dyne.org and from the
ftp.dyne.org software repository.
UNIX August 2005 FREEJ(1)
Torna su