Image

  • IO
Generalities

Generic readers/writers
TuttleOFX provides a lot of plugins to read/write almost everything.
For sam-do user, the choice of the best reader/writer to use can be done automatically by the host (using the file extension).
sam do r inputFile // w outputFile

Folders
sam-do can manipulate folders to process the same command on a list of files.
sam do r inputFolder // w outputFolder
By default sam-do manipulates folders with recursivity. Example to disable it:
sam do r inputFolder // w outputFolder ext=jpg --no-recursivity

AudioVideo
Based on avTranscoder, a wrapper around ffmpeg.
The reader/writer can decode/encode the inputs with all the possibilities given by ffmpeg, regarding video and audio.
Note: presets are found by using the environment variable AVPROFILES.

Video examples, with sam-do

Simple case (codec mpeg4)
sam do r input // avwriter output.mov

Rearrange a Quicktime file to facilitating network streaming (see the moov atom and ffmpeg qt-faststart tool)
sam do r input // avwriter output.mov f_mp4_movflags_flag_faststart=1

In DNxHD (36 / 120 / 175x / 185 / 185x)
sam do r input // avwriter output.mov v_preset=dnxhd36

In prores (hq / proxy)
sam do r input // avwriter output.mov v_preset=proreshq

In H264 (lq / hq)
sam do r input // avwriter output.mov v_preset=h264-lq

Audio examples, with sam-do

Simple case (one audio stream)
sam do r input // avwriter output.mov a_filePath_0=inputAudio.wav

Select a stream in the given audio file
sam do r input // avwriter output.mov a_filePath_0=inputAudio.wav a_streamIndex_0=1

Shift audio of 1min (silence before audio)
sam do r input // avwriter output.mov a_filePath_0=inputAudio.wav a_offset_0=60

Encode the given audio to wave 24bits 48KHz mono
sam do r input // avwriter output.mov a_filePath_0=inputAudio.aiff a_preset_0=wave24b48kmono

Get audio from multiple sources
sam do r input // avwriter output.mov a_filePath_0=inputAudioWav.wav a_filePath_1=inputAudioAiff.aiff a_filePath_2=inputMovieWithAudio.mov a_streamIndex_2=1 a_mainPreset=wave16b48kmono


DPX
Based on libdpx.
The writer can encode Digital Picture Exchange (DPX), with ANSI/SMPTE standard (268M-2003).

EXR
Based on OpenEXR.
For the writer, there are several algorithm of compression:
  1. No compression
  2. Run length encoding
  3. ZIP compression
  4. PIZ-based wavelet compression
  5. ...
With sam-do
sam do r input // exrwriter output.exr compression=ZIP


ImageMagick
Based on ImageMagick.

Jpeg
Based on libJpeg.

TurboJpeg
Based on libjpeg-turbo.

Jpeg2000
Based on openjpeg.

OpenImageIO
Based on OpenImageIO.

PNG
Based on libpng.

RAW
Based on libraw.
The reader can be used to decode raw data of input by using the camera parameters:

With sam-do
sam do rawreader input.CR2 interpolation=linear whitebalance=camera exposurepreserve=1 outputcolor=raw highlight=clip filtering=None // w output.exr

  • Generator
Text
With nuke-9

With sam-do
sam do r input // text text="Test" color=1,0,0,0.5 size=120 vAlign=top hAlign=left fontFile=/usr/share/fonts/verdanab.ttf // w output

SeExpr
Based on SeExpr.
With nuke-9

Checkerboard
With nuke-9

Colorbars
With nuke-9


ColorCube
With nuke-9


ColorGradient
With nuke-9


ColorWheel
With nuke-9


Constant
With nuke-9


Ramp
With nuke-9



  • Process
Channel
ChannelShuffle
Component

Color
BasicKeyer
BitDepth
ColorGradation
ColorSpace
ColorSpaceKeyer
ColorSuppress
ColorTransfer
ColorTransform
CTL
Gamma
HistogramKeyer
IdKeyer
Invert
Lut
Normalize

OCIO
With sam-do

DPX logC (alexa) images to sRGB jpg
sam do r sequence.####.dpx  // ocio.lut /path/to/luts/AlexaLogC/LogCToSRGB_1D_10b.csp // w sequence.####.jpg 

DPX logC (alexa) images to pure linear scanlined half EXR half
sam do r sequence.####.dpx // ocio.lut /path/to/luts/AlexaLogC/LogCToNormLin_1D_10b.csp // w sequence.####.exr  

Print
Based on libcaca.

Filter
AnisotropicDiffusion
Blur
Convolution
FloodFill
LocalMaxima
NlmDenoiser
Sobel
Thining

Geometry
Crop
Flip
LensDistort
Move2D
Pinning
PushPixel
Resize
Wrap

Time
TimeShift

Transition
Merge
Fade
  • Display
Viewer
Based on GLUT.
Open a GL view port to display the given image.

Histogram
Analyse the given input, and display information as histograms.

With nuke-9

ColorCubeViewer
Based on GLEW.


Comments