31
Aliomovie® [version 1.2.0] Reference Guide 4/6/11

Aliomovie® - CEA/CEA

  • Upload
    others

  • View
    12

  • Download
    0

Embed Size (px)

Citation preview

Aliomovie®[version 1.2.0]

Reference Guide

4/6/11

Table of Contents

1. ALIOMOVIE DESCRIPTION 5.....................................................................................1. What is Aliomovie? 5.........................................................................................................2. Launching aliomovie 5.......................................................................................................3. Windows shell 5..................................................................................................................4. Ubuntu Linux shell 6..........................................................................................................5. Mac OS X shell 6................................................................................................................

2. SCRIPT FILE SYNTAX 7................................................................................................3. ALIOMOVIE COMMAND-LINE SYNTAX 9..............................................................1. Modifiers 9..........................................................................................................................2. Options 9.............................................................................................................................

4. HOST SPECIFICATIONS 11..........................................................................................1. Supported Operating Systems 11........................................................................................2. Hardware requirements 11..................................................................................................3. Operating System settings 11.............................................................................................1. Linux 12............................................................................................................................2. Mac OS X 12....................................................................................................................3. Windows 12......................................................................................................................

4. Graphic settings 13.............................................................................................................1. ATI driver 13.....................................................................................................................2. NVIDIA driver 14.............................................................................................................

5. MIX SCRIPT REFERENCE 16......................................................................................1. [general] section 16.............................................................................................................2. [input] section 16.................................................................................................................3. [clip_n] sections 17..............................................................................................................4. [output] section 19...............................................................................................................5. [display] section 20..............................................................................................................

6. SAMPLE MIX SCRIPTS 22............................................................................................1. Basic mix file 22.................................................................................................................2. Advanced mix file 22..........................................................................................................

7. PLAY SCRIPT REFERENCE 24....................................................................................1. [general] section 24.............................................................................................................2. [input] section 24.................................................................................................................3. [clip_n] sections 25..............................................................................................................4. [display] section 26..............................................................................................................

8. SAMPLE PLAY SCRIPTS 27..........................................................................................1. Basic play file 27................................................................................................................2. Advanced play file 27.........................................................................................................

9. USING ALIOMOVIE 29..................................................................................................1. Locating files 29.................................................................................................................2. Crop area 29........................................................................................................................3. Locating the Alioscopy display 29.....................................................................................4. Display area 29...................................................................................................................5. Aliomovie messages 30......................................................................................................6. Solving playback problems 30............................................................................................

10. LEGAL INFORMATION 31..........................................................................................

Aliomovie Reference Guide Page 2

Pictures

Picture 1: Command Prompt interface on Windows 7 5..........................................................Picture 2: Terminal application on Ubuntu 10.10 6..................................................................Picture 3: Terminal application on Mac OS X 10.6 6..............................................................Picture 4: Windows volume settings (Windows 7) 13.............................................................Picture 5: ATI's OpenGL settings (Ubuntu Linux) 13..............................................................Picture 6: ATI's OpenGL settings (Windows 7) 14..................................................................Picture 7: NVIDIA's OpenGL settings (Ubuntu Linux) 15.....................................................Picture 8: NVIDIA's OpenGL settings (Windows 7) 15..........................................................Picture 9: Tiled input format 18...............................................................................................

Aliomovie Reference Guide Page 3

Tables

Table 1: mix [general] keys 16..................................................................................................Table 2: mix [input] keys 16......................................................................................................Table 3: mix [clip_n] keys 17....................................................................................................Table 4: allowed mix [clip_n] keys 19.......................................................................................Table 5: mix [output] keys 20....................................................................................................Table 6: mix [display] keys 20...................................................................................................Table 7: play [general] keys 24.................................................................................................Table 8: play [input] keys 24.....................................................................................................Table 9: play [clip_n] keys 25....................................................................................................

Aliomovie Reference Guide Page 4

1. ALIOMOVIE DESCRIPTION

1.1 What is Aliomovie?

Aliomovie® is a program designed by Alioscopy® to:• mix content originating from different sources in a proprietary image format, and optio-

nally to compress the resulting output with near-lossless quality at a fixed compressionratio of 5 to 1. The resulting files have alm extensions (Alioscopy Media).

• play alm files on Alioscopy displays.

1.2 Launching aliomovie

Aliomovie is a CLI (Command-Line Interface) driven program. It requires a command shellto run. Information on CLI programs and on command shells are available at:

• http://en.wikipedia.org/wiki/Command-line_interface• http://en.wikipedia.org/wiki/Shell_(computing)

The following Wikipedia pages provide additional information on using a shell:• For Linux and Mac OS X: http://en.wikipedia.org/wiki/Bash_(Unix_shell)• For Mac OS X: http://en.wikipedia.org/wiki/Apple_Terminal• For Windows: http://en.wikipedia.org/wiki/COMMAND.COM

This open architecture enables aliomovie to be run manually or to be controlled by thirdparty applications, as well as by utilities provided in the Alioscopy Mix and Play Suite®.

1.3 Windows shellWindows Shell is named cmd.exe. It can be launched by choosing Start > Accessories >Command Prompt (Picture 1).

Picture 1: Command Prompt interface on Windows 7

Aliomovie Reference Guide Page 5

1.4 Ubuntu Linux shellThe gnome-terminal application on Ubuntu Linux is a graphical front-end to the bashshell. It can be launched by choosing Applications > Accessories > Terminal (Picture 2).

Picture 2: Terminal application on Ubuntu 10.10

1.5 Mac OS X shellThe Terminal application on Mac OS X is also a graphical front-end to the bash shell. It'savailable in the /Applications/Utilities folder (Picture 3).

Picture 3: Terminal application on Mac OS X 10.6

Aliomovie Reference Guide Page 6

2. SCRIPT FILE SYNTAXBoth mix and play scripts are simple text files, similar to common ini files. Ini files werefirst introduced by Microsoft for storing program settings. A good description of ini filessyntax can be found on Wikipedia at the following address:http://en.wikipedia.org/wiki/INI_fileIni files include sections, whose names are enclosed in brackets [ ], and each section con-tains a set of keys, defined with the following1:name = valueorname = "a multi-words value, enclosed by quotation marks"For example, here is a sample ini file, giving menu prices, in a japanese restaurant:

; A comment line begins with a ; character# A comment line may also begin with a # character

[starters] ; a comment after a section namemiso_soup = 2.00prawn = 5.50 ; a comment after a key

[maki]cucumber = 3.25avocado = 3.50salmon = 3.75prawn = 5.00

[dessert]fruit_salad = 3.75ice_cream = 1.50

There are three sections (bracketed words), named [starters], [maki], and [dessert]. Withineach section, a set of keys are defined, using the syntax name = value. There are 2 differentprawn keys (in both [starters] and [maki] sections). In the example above, all keys have anumeric value (2.00, 5.50…)Both section and key names are case-significant: Neither [General] nor [GENERAL] areequivalent to [general]. Sections used by aliomovie are named [general], [input], [display],[clip] or [clip_n]2, and [output].Depending on their meaning, aliomovie key values may be of different types:

• boolean: a simple yes/no• integer: an integer number, like 2 or -500• decimal: an integer or decimal number, like 3, 0.5 or 25.5• token: a particular word, like 8mixed or 8cams• string: a string between quotation marks, like "this is a string."

1. there can be any number of SPACE characters before and after the = sign)

2. n being a strictly positive integer

Aliomovie Reference Guide Page 7

Script files do not have to end with a mix or play suffix. Aliomovie looks for all suffixesfrom right to left, until it finds a ".mix" or ".play" suffix. Scripts named my_script.mix.txt (ormy_script.play.txt) are valid mix (or play) files.Script files may be written or edited with any text editor:

• On Linux, gedit is available through Applications > Accessories on Ubuntudistributions.

• On Mac OS X, TextEdit, is available in the /Applications folder. Make sure text for-mat is set to "Plain Text" (Format menu) before saving a script file.

• On Windows, Notepad is available through Startup > Applications > Accessories.

Alioscopy also provides a set of utilities in the Alioscopy Mix and Play Suite that enablecreating mix and play files seamlessly, without requiring the use of a text editor.

Here is an example of a short play script file:

[general]version = 1

[clip_1]type = image/almmode = 8mixedfile = "logo_<F4>.png"first = 0last = 99

This script file defines two sections, named [general] and [clip_1].Section [general] defines only one key, named version. This key must always be defined(and set to 1) in all mix and play scripts. Section [clip_1] defines the clip to play.

Aliomovie Reference Guide Page 8

3. ALIOMOVIE COMMAND-LINE SYNTAXAliomovie has the following syntax:

aliomovie [modifiers] [options] script.mixor

aliomovie [modifiers] [options] script.playor

aliomovie

The operation you perform (mixing or playing content) is determined by the extension ofthe attached script file (.mix or .play). Both [modifiers] and [options] are optional.If aliomovie is launched with no parameter then a File Selector dialog is displayed for youto select a mix or play file.Keyboard Shortcuts:Escape = AbortSpacebar = Pause/Resume3

3.1 ModifiersModifiers are special options modifying the behavior of aliomovie. Only two modifiers arecurrently available: -key and -nokey. They are useful in certain working environments, de-pending on how aliomovie is run.Aliomovie will exit when:

1. it has finished playing or mixing content2. an error is encountered3. the user aborts the program

When aliomovie ends because of (1) or (3), it simply exits. When it ends because of (2),you have the option to exit immediately or force the user to press the RETURN key to exit.When you add the -nokey modifier, the program will exit without waiting for the RE-TURN key. The -key modifier makes aliomovie wait for the RETURN key to be pressed.

3.2 OptionsMix and play script files consist of key value pairs. Command line options override keysdefined in mix or play script files. The syntax is:

-section:key value

For example, if a play script named my_logo.play is created to play an animated logo, al-iomovie can be launched with the following command:

aliomovie my_logo.play

3. you cannot Pause/Resume when you are mixing.

Aliomovie Reference Guide Page 9

However, if the display configuration has changed (another screen has been connected tothe computer for instance), aliomovie may display content on the wrong screen. Instead ofmodifying the appropriate key in my_logo.play, it might be easier to override the key valuein the command-line itself:

aliomovie -display:id 2 my_logo.play

You can type as many options as you want in the command-line. When a key is defined inboth the script file and on the command line, the command-line value always prevails.Most of the keys defined in script files may be overiden in the command-line.

Aliomovie Reference Guide Page 10

4. HOST SPECIFICATIONS4.1 Supported Operating Systems

• Linux: Ubuntu Desktop 10.04 or higher, 32-bit and 64-bit. The program is availableas both 32-bit and 64-bit binaries.

• Apple: Mac OS X 10.6.0 or higher. The program is available as a 64-bit binary.• Microsoft: Windows XP-SP3 or higher (Vista, 7), 32-bit and 64-bit. The program is

only available as a 32-bit binary.Although aliomovie might work on older or different operating systems (Windows XP-SP2,Debian GNU/Linux 5.0, …), it hasn't been tested. Moreover, we might not be able to pro-vide support for platforms not listed above.

4.2 Hardware requirementsMixing files is an offline process; it doesn't require a minimum hardware configuration. Ofcourse, the faster the computer (both in terms of CPU and hard-disk speed), the quicker themixing process will be. Aliomovie will use all available CPU power, providing data can beread and written fast enough. During the mixing process, if all cores are working belowtheir full capacity, this might be an indication that hard-disk speed is a bottleneck4.

Playback of alm files (1920*1080@25fps) usually requires a raw CPU power rangingfrom 5.0GHz to 5.2GHz. This implies that a Dualcore CPU running at 2.5GHz (at a mini-mum) should be used. CPU category (notebook, desktop or server) is not a big issue, sincealiomovie tries to make the best possible use of the available CPU L2 cache. Nonetheless, adesktop-class CPU will always provide better results than a notebook-class CPU.Considering the above, we recommend using the following minimum configuration:

• Intel Core 2 Duo CPU running at least at 2.6GHz• 2GB RAM• 7200 RPM disk drive with a SATA interface

Aliomovie is highly CPU-dependent. Since the GPU is generally idle, any graphics boardwith single or dual DVI or HDMI output displaying Full-HD resolution and higher can beused.

4.3 Operating System settings

In order to achieve smooth playback, some simple rules should be applied, whatever OS isused:

• avoid putting alm files on the same physical drive as your System volume.• don't run other applications while playing clips.• make sure the computer is not getting too hot, as this might force the CPU to slow

down.• when using an external hard-disk to play alm files, connect it through SATA, FireWire

or USB-3. USB-2 is too slow for reliable playback.

4. both CPU and hard-disk usage are highly dependent on the input file format (BMP,PNG, JPEG…)

Aliomovie Reference Guide Page 11

• if you intend to play content for long durations (i.e. digital signage), you should consid-er using a SSD (Solid State Drive) for your alm files.

The following sections describe steps specific to each platform.

4.3.1 LinuxOn stock Ubuntu 10.10 installs, you need to install OpenAL and OpenGL drivers. This canbe done using either Synaptic Package Manager located on System > Administration menu,or a shell (apt-get command). Also, disable Compiz window compositing manager (on Sys-tem > Preferences > Appearance menu).By default, Ubuntu's Linux kernel scheduler is biased against multi-threaded applicationsrunning on multi-core CPUs. This can be changed by adding a few lines to the kernel textfile /etc/sysctl.conf5:kernel.sched_migration_cost=100kernel.sched_nr_migrate=4kernel.sched_latency_ns=5000000kernel.sched_domains.cpu#.domain0.imbalance_pct=16

These values are not meant to be optimal on all systems, but should significantly improveplayback.

4.3.2 Mac OS X

Aliomovie has been shown reliably on Mac mini computers. However, since their powersupply is now inside the computer case, they tend to overheat quickly. It is therefore highlyrecommended that you use an external (Firewire connected) hard-disk.

4.3.3 WindowsA/V (antivirus) software should be disabled during playback, since they tend to analyzeevery alm file read by aliomovie, therefore slowing down hard-disk access. Configuringthe antivirus software to exclude alm files from live scanning is another option. Hard-diskcompression and content indexing should also be disabled (Picture 4).

5. you need root access to modify this file.6. # should be replaced by 0, 1, 2…

Aliomovie Reference Guide Page 12

Picture 4: Windows volume settings (Windows 7)

4.4 Graphic settingsAliomovie's display is made through OpenGL. On Mac OS X, OpenGL should work "out ofthe box". On Linux and Windows, make sure you have the latest version. Display resolu-tion should be set to the display's native resolution, and refresh rate should be set to 60Hz.For smooth playback, OpenGL display must be synchronized with the monitor's refreshrate. This is always done on Mac OS X, but should be manually set on both ATI andNVIDIA drivers for Linux or Windows. Also, triple buffering should be disabled, and thenumber of pre-rendered frames should be set to 0 (sections (4.4.1 and 4.4.2).

4.4.1 ATI driver

OpenGL is controlled through the ATI Catalyst Control Center application. We recom-mend the following settings (Pictures 5 and 6):

• Turn off Override application• Wait for vertical refresh to Quality• Turn off Triple buffering (if available)

Picture 5: ATI's OpenGL settings (Ubuntu Linux)

Aliomovie Reference Guide Page 13

Picture 6: ATI's OpenGL settings (Windows 7)

4.4.2 NVIDIA driverOpenGL is controlled through NVIDIA X Server Settings (Linux), or NVIDIA Control Pan-el (Windows). We recommend the following settings (Pictures 7 and 8):

• Turn on Refresh Synchronization• Turn off triple-buffering• Set Pre-rendered frames to 0.

Aliomovie Reference Guide Page 14

Picture 7: NVIDIA's OpenGL settings (Ubuntu Linux)

Picture 8: NVIDIA's OpenGL settings (Windows 7)

On Linux, you should also set the __GL_SYNC_TO_VBLANK environment variable to 1,i.e. add the following line to your ~/.bashrc file:export __GL_SYNC_TO_VBLANK=1

Aliomovie Reference Guide Page 15

5. MIX SCRIPT REFERENCEIn the tables below, the symbols used have the following meaning:

✔ denotes a mandatory key.• denotes an optional key.

Mandatory keys have no default value, since they must always be defined by the user. Onthe contrary, all optional keys have a default value, which may be constant (in most cases)or dependent on other keys values (i.e. the step and the fade keys, in the [clip_n] sections).

5.1 [general] sectionThe [general] section is mandatory in all mix files. It must contain at least the version key.

[general] type kind default script command-lineversion integer ✔ •loglevel token • info • •

Table 1: mix [general] keys

version: must be set to 1.loglevel: defines the amount of information written by the program in the shell window.The following levels are available, in decreasing order of verbosity: debug, info, warning,and error.Here is a sample [general] section:

[general]version = 1 ; mandatory keyloglevel = debug ; write lots of information in the shell

5.2 [input] section[input] section is optional. It may be used when mixing several sources or if a default pathneeds to be set to access content.

[input] type kind default script command-linecount integer • 1 • •path string • "" •audiofile string • "" •audiostart decimal • 0.0 • •

Table 2: mix [input] keys

count: the number of clips to be mixed. This number must be strictly positive.path: the default path prefix where to look for the input files.

Aliomovie Reference Guide Page 16

audiofile: the audio track to insert into alm files. It must be a WAV or AIFF audio file, us-ing one of the following encodings: PCM (8/16/24/32-bit, mono/stereo), aLaw (16-bits,mono/stereo), µLaw (16-bits, mono/stereo).audiostart: time-shift between the audio track and the image sequence. This number is ex-pressed in seconds, and can be positive (the beginning of the audio track is skipped) ornegative (silence is added at the beginning of the audio track).Here is a sample [input] section:

[input]count = 2 ; clip_1 and clip_2 sections must be defined loop = 5 ; play everything 5 times, then exitpath = "C:\Documents and Settings\My Files" ; default path

5.3 [clip_n] sectionsEach [clip_n] section defines a set of consecutive files to mix. Clip sections are numberedfrom 1 (i.e. clip_1, clip_2, clip_3, …) As an exception, a section can be named [clip] insteadof [clip_1], if count = 1 in the [input] section. There must be at least one [clip] (or [clip_1])section in the mix file.

[clip_n] type kind default script command-linename string • •type token/token ✔

mode token ✔ •file string ✔ •first integer ✔7 • •last integer ✔8 • •step integer • 9 • •rate decimal • 25.0 • •revolve boolean • yes10 • •pseudo boolean • no • •camstep integer • 1 • •cropx integer • 0 •cropy integer • 0 •cropw integer • 0 •croph integer • 0 •collimation integer • 0 • •

Table 3: mix [clip_n] keys

7. mandatory except if there is no <Fn> wildcard in the file key. 8. mandatory except if there is no <Fn> wildcard in the file key. 9. +1 if (last > first), -1 if (last < first), 0 if (last = first)10. revolve is used only when mode = 8temporal

Aliomovie Reference Guide Page 17

name: name of the clip sequence. This name is displayed (instead of "clip_n") whenprocessing the clip.type: file format of input files. Value must be image/format, where format can take one ofthe following values: bmp, jpg (or jpeg), png, sgi, and tga. For example, if input files are inTruevision Targa format, type must be set to image/tga.mode: data type of input files. Possible values are 1cam, 8cams, 8mixed, 8temporal, and8tiled.

• 1cam: input content is a single sequence of flat, 2D images.• 8cams: input content involves 8 independent image sequences usually saved in 8 sepa-

rate folders.• 8mixed: input content is a single sequence of previously mixed images. Audio may be

added, if the resulting output is to be compressed in alm format.• 8temporal: input content is a single image sequence, where time parallax can be used as

motion parallax (sometimes improperly called "Pullfrich effect").• 8tiled: input content is a single image sequence tiling 8 separate images in a single

frame, in the following pattern:

CAMERA 1 CAMERA 2 CAMERA 3

CAMERA 4 CAMERA 5 CAMERA 6

CAMERA 7 (BOTTOM)CAMERA 7 (TOP)

CAMERA 8 (TOP)CAMERA 8 (BOTTOM)

Picture 9: Tiled input format

file: location (path) of input files. In order to specify the exact name of all files, two wild-cards are provided: <Fn> and <Cn>, where n is an optional (strictly positive) integerdefining the minimum number of digits to use.For instance, wildcard <F3> means "frame number with at least 3 digits", and wildcard<C2> means "camera number with at least 2 digits". If the integer in the wildcard is omit-ted, only the number of digits required to represent a given number are used (one digit fornumber 7, 5 digits for number 12345).For example, a file key ending with frame_cam<C1>_<F4>.png will define files namedframe_cam1_0000.png, frame_cam2_0000.png, frame_cam3_0000.png… Wildcard <Cn>should only be used if input mode is set to 8cams. All other modes are based on single im-age sequences. Wildcard <Cn> is therefore useless and only wildcard <Fn> is meaningful.Sections 6.1 and 6.2 illustrate <Fn> and <Cn> wildcards usage.first: number of first input file frame (must be a positive integer).last: number of last input file frame (must be a positive integer).

Aliomovie Reference Guide Page 18

step: step increment from first to last frame. This value must be strictly positive if (last >first), and strictly negative if (last < first). Step value is ignored if (first = last), since clip de-fines only one file.rate: frame rate. Bounded between 0.001 and 50.0 frames per second.revolve: this value applies to 8temporal mode only. Defines if the last frames are meant toloop with the first ones. This is mainly required in a turnaround to achieve a perfect loop.pseudo: a boolean value (yes or no). Determines if image sources are provided in standard"orthoscopic" order (from left to right) or reverse "pseudoscopic" order (from right to left).AlioscopyCamera plugins and scripts for CG software use left-to-right ordering. This key isignored if input files are in 1cam or 8mixed mode.camstep: this integer value applies to 8temporal mode only. Defines the interval betweenconsecutive frames mixed together. This value must be strictly positive.cropx: left crop coordinate applied to input files. This value must be a positive integer.cropy: top crop coordinate applied to input files. This value must be a positive integer.cropw: crop width. Special value 0 means "crop left side only". This value must be a posi-tive integer.croph: crop height. Special value 0 means "crop top part only ". This value must be a posi-tive integer.collimation: collimation value (doesn't apply to 8mixed mode). A positive value will"push" entire content inside the screen, while a negative value will "pull" entire contentoutside the screen.

Table 4 summarizes which optional keys apply depending on clip mode.

step revolve camstep pseudo cropx/y/w/h collimation1cam • • •8cams • • • •8temporal • • • • • •8tiled • • • •8mixed • •

Table 4: allowed mix [clip_n] keys

5.4 [output] sectionThe [output] section defines where and how to write mixed image files. It is similar (al-though simpler) to the [clip_n] sections.

[output] type kind default script command-linetype token/token ✔ •mode token ✔ •file string ✔ •first integer • 0 • •width integer • 1920 • •height integer • 1080 • •

Aliomovie Reference Guide Page 19

Table 5: mix [output] keys

type: format of output files. Syntax is similar to type key in [clip_n] sections. Introduces anew alm output image file format: type = image/alm.mode: output date type. The only valid mode for output is 8mixed.file: location (path) of output files. Syntax is similar to the file key in [clip_n] sections, ex-cept that wildcard <Cn> is useless here.first: first output frame number. If omitted, output frames are numbered from 0onwards.width: output frames width. Must be a multiple of 8.height: output frames height.

5.5 [display] sectionThe [display] section is optional. If any [display] key is defined in a mix script (and a validdisplay is found), aliomovie will display a preview of whatever content is currently beingmixed. Preview is refreshed approximately every second. Keys in this section are seldomrequired, apart from setting id = -1 in order to force preview.

[display] type kind default script command-lineid integer • -1 • •format token • bgr32 • •rate decimal • 60.0 • •width integer • 1920 • •height integer • 1080 • •wndx integer • 0 • •wndy integer • 0 • •wndw integer • 0 • •wndh integer • 0 • •

Table 6: mix [display] keys

id: must be a positive integer, or set to -1. Defines which screen aliomovie will display con-tent. When using Mac OS X, display id = 0 is always the one bearing the menu bar. Whenusing Linux or Windows, display id depends on video card and video driver. If id is set to-1, aliomovie will determine which display id it will use (see section 9.3 on page 29).format: picture format. Valid values are rgb24, bgr24, rgb32, and bgr32.rate: display refresh rate. Default is 60.0Hz. This value should remain unchanged.width: strictly positive integer, must be a multiple of 8. Defines the width of the displayused by aliomovie. This value shouldn't need to be changed.height: strictly positive integer. Defines the height of the display used by aliomovie.Changing this value may be useful when using an Alioscopy 3D HD 24" display (1920 x1200) as well as an Alioscopy 3D HD 42" or 47" display (1920 x 1080).

Aliomovie Reference Guide Page 20

wndx: positive integer, left coordinate of the display area, assuming top-left origin. Thisvalue must be a multiple of 8.wndy: positive integer, top coordinate of the display area, assuming top-left origin.wndw: positive integer, width of the display area. If set to zero, display area is extended tillthe right bound of the display. This value must be a multiple of 8.wndh: positive integer, height of the display area. If set to zero, display area is extendedtill the bottom bound of the display.The display area (defined by wndx, wndy, wndw, wndh) must always be fully included inthe chosen display (it can't cross the display boundaries).

Aliomovie Reference Guide Page 21

6. SAMPLE MIX SCRIPTS6.1 Basic mix fileIn this mix file example, input files are in PNG format and are named logo_xx_yyyy.png(xx being the camera number from 01 to 08 and yyyy being the frame number from 0000 to0199).This is a sample script to mix these files and to write the resulting alm compressed files ina folder containing camxx subfolders.

[general]version = 1

[clip_1]type = image/pngmode = 8camsfile = "/Users/john/Documents/logo/cam<C2>/logo_<C2>_<F4>.png"first = 0last = 199

[output]type = image/almmode = mixedfile = "/Users/john/Documents/logo/alm/logo_<F4>.alm"

On Mac OS X, external volumes are mounted in the /Volumes folder. On Linux, they aremounted in the /media folder. On Windows, each volume is defined by a different letter(C:\, D:\, E:\ ...)Input and output file locations defined above are compliant with Mac OS X platforms.When running on a Windows platform, file keys will look like this (the folder separator is \instead of /):

[clip_1]file = "C:\Documents and Settings\logo\cam<C2>\logo_<C2>_<F4>.png"

[output]file = "C:\Documents and Settings\my_logo\alm\logo_<F4>.alm"

Similarly, on Linux and Mac OS X platforms, file keys may look like this:

[clip_1]file = "/home/john/Documents/logo/cam<C2>/logo_<C2>_<F4>.png"

[output]file = "/home/john/Documents/logo/alm/logo_<F4>.alm"

6.2 Advanced mix file

Here is a more advanced script file, sequencing two different input sources:• a single flat frame in BMP format (intro)

Aliomovie Reference Guide Page 22

• "8 cameras" image sequences in PNG format (animation)An audio track is defined in the [input] section. Also, the intro still frame is displayed for 2seconds, while the animation is displayed at 23.98 fps. The resulting clip resolution is1440*800 pixels.

[general]version = 1

[input]count = 2path = "/Users/john-doe/Documents"audiofile = "my_logo/sound.wav"

[clip_1]name = "intro picture"type = image/bmpmode = 1camfile = "intro_pic/intro.bmp"duration = 2.0

[clip_2]name = "logo animation"type = image/pngmode = 8camsfile = "my_logo/cam<C2>/logo_<C2>_<F4>.png"first = 0last = 199rate = 23.98

[output]type = image/almmode = mixedfile = "alm/sequence_<F4>.alm"width = 1440height = 800

Since there are more than one input clips, the [input] section must be explicitly defined inorder to set the number of input clips. Although this is not mandatory, a default path hasalso been defined in this example. Consequently, the three file keys belonging to sections[clip_1], [clip_2], and [output] are now using relative paths. Also, in [clip_1], since no <Fn>wildcard is used in file, first and last keys are also not defined.

Aliomovie Reference Guide Page 23

7. PLAY SCRIPT REFERENCEThe syntax used for play files is very similar to the one applied to mix files. Main differ-ences are:

• [output] section is not needed, since the result of a play operation is displayed instead ofbeing saved on disk.

• most optional keys in [clip_n] sections (pseudo, cropx/cropy/cropw/croph, collimation…)are not available. On the other hand, new play-specific keys (i.e. fade) are introduced.

7.1 [general] sectionLike mix files, play files require a [general] section including at least a version key.

[general] type kind default script command-lineversion integer ✔ •loglevel token • info • •splash boolean • yes • •

Table 7: play [general] keys

version: must be set to 1 (similar to mix files).loglevel: defines the amount of information written by aliomovie in the shell window. Thefollowing levels are available, in decreasing order of verbosity: debug,info, warning, error (similar to mix files).splash: when set to no, the splash screen (Alioscopy logo with a rotating wheel) is notdisplayed when aliomovie is started.

7.2 [input] section[input] section is optional. It is required when several clips are combined in a single playfile, when a default path needs to be defined or when a playlist needs to loop a given num-ber of times only.

[input] type kind default config script command-linecount integer • 1 • •path string • "" • •loop integer • -1 • • •audio boolean • yes • • •

Table 8: play [input] keys

count: number of clips to be played. This integer must be strictly positive.path: default path prefix leading to input files.loop: number of times complete playlist will loop. This integer must be strictly positive,unless value is set to -1 which sets an infinite loop (default).

Aliomovie Reference Guide Page 24

audio: if set to no, audio is switched off. Global setting may be overridden locally for eachclip.

7.3 [clip_n] sectionsA play file requires at least one [clip_n] section. When a single clip is defined, it can benamed either [clip_1] or [clip].

[clip_n] type kind default script command-linetype token/token ✔ •mode token ✔ •file string ✔ •first integer ✔ • •last integer ✔ • •step integer • 11 • •rate decimal • 25.0 • •duration decimal • 1.0 •loop integer • 1 •fade boolean • 12 •audio boolean • yes • •bgcolor decimals • 0.0 •

Table 9: play [clip_n] keys

type: Defines file format of source files. Value must be image/format, where format cantake either one of the following values: bmp, jpg (or jpeg), png, sgi, and tga (similar to mixfiles).mode: defines the data type read by aliomovie. 8mixed is the only valid input mode.file: Defines the name and location of source files. Since the only valid input mode is8mixed, files are located in a single folder and wildcard <Cn> is not relevant (similar tomix files).first: number of first source frame.last: number of last source frame.step: step increment from first to last frame. This value must be strictly positive if (last >first) and strictly negative if (last < first). Step value is ignored if (first = last) since clip de-fines only one file.rate: frame rate during playback. When not specified, aliomovie runs the clip at the ratespecified during the mix.duration: display time of each frame. Bounded between 0.02 and 1000.0 seconds perframe.

11. +1 if (last > first), -1 if (last < first), 0 if (last = first).

12. if the clip contains more than one frame (last != first), fade default value is yes. If onlyone frame is defined, fade default value is no.

Aliomovie Reference Guide Page 25

loop: number of times a clip will loop. Value must be strictly positive. Default value is 1.fade: activates intermediate frame interpolation at display refresh rate (60Hz). If clip con-tains more than one frame, default value is yes. If clip contains only one frame (last = first),default value is no.audio: activates audio. no will shut audio off.bgcolor: background color, when the displayed image is smaller than the display area. Thiscolor can be set as a single decimal value (luminance), or as 3 decimal values betweenparenthesis (for red, green and blue):

bgcolor = 0.75 ; light graybgcolor = (0.5, 1.0, 0.0) ; chartreuse green

7.4 [display] section[display] section is optional. It can be set to define which display aliomovie should use.Keys are similar to those of mix files: id, format, rate, width, height, wndx, wndy, wndw, andwndh have the same syntax.

Aliomovie Reference Guide Page 26

8. SAMPLE PLAY SCRIPTS8.1 Basic play fileWhen run by aliomovie, the following script plays one clip in an infinite loop. Aliomovieexits upon pressing the ESC key.This playlist has two sections only:[general] (in order to set the mandatory version key), and [clip_1].100 frames, named frame_000.alm to frame_099.alm are handled in this example. They arelocated in the folder /Users/john/Documents/Clips/sample/alm/. Since the [input] section isn'tdefined, its key values are automatically set to default (only one clip, infinite loop). A basicplay script therefore requires only 8 lines, among which 5 are constant:

[general]version = 1[clip_1]type = image/almmode = 8mixed

Basic play files only need a path to the source alm files and the first and last frame num-bers to be set.

[general]version = 1

[clip_1]type = image/almmode = 8mixedfile = "/Users/john/Documents/Clips/sample/alm/frame_<F3>.alm"first = 0last = 99

8.2 Advanced play fileThe following play script displays two frames. Each frame displays for 10 seconds. Thereis a one second fade effect between the two frames (starting after 9 seconds). After display-ing the two frames 5 consecutive times, aliomovie exits.[general] section:As always, the [general] section has to be defined, with the version key. The booleansplash key is also set to no, preventing the splash screen from displaying when aliomovie isstarted.[input] section:Since there is more than one clip, the [input] section must be created in order to set thecount key. Optional loop key and path key are also set in this example. Alternately, pathcould also be included in each file key within [clip] sections.[clip_1] and [clip_2] sections:Both sections are identical. Each section defines a single frame clip, played 10 consecutivetimes. Since file has no <Fn> wildcard, there is no need to define first and last keys. Eachframe will therefore be displayed during 10 seconds (1 seconds x 10 times). Since fade is

Aliomovie Reference Guide Page 27

set to yes, there is temporal interpolation between each displayed frame. This will producea smooth, one second fade between the two frames.

[general]version = 1splash = no

[input]count = 2path = "/Users/john-doe/Documents/Clips/"loop = 5

[clip_1]name = "a nice picture"type = image/almmode = mixedfile = "sample/alm/picture_0.alm"duration = 1.0loop = 10fade = yes

[clip_2]name = "another nice picture"type = image/almmode = mixedfile = "sample/alm/picture_1.alm"duration = 1.0loop = 10fade = yes

Aliomovie Reference Guide Page 28

9. USING ALIOMOVIEThe following sections describe with more details some of the concepts used by aliomovie.

9.1 Locating filesA file can be defined using either a relative or an absolute path. A relative path takes theform

• folder1/folder2/file (Linux, Mac OS X) or• folder1\folder2\file (Windows)

where folder can be a name, character '.' (one dot), or characters '..' (two dots).An absolute path takes the following forms:

• /folder1/folder2/file (Linux, Mac OS X) or• X:\folder1\folder2\file (Windows)

Tilde '~' has the special meaning of the user's home directory.When trying to load an image file defined in a clip section by a relative path, aliomovie willlook in the following locations:

• the file key in the [clip] section prefixed by the current directory• the file key prefixed by the path key in the [input] section• the file key prefixed by the script file location

On Linux and Mac OS X, files and folders may use any valid character. On Windows, files(and parent folders) should only use ASCII characters (neither accents nor non Latincharacters).

9.2 Crop areaCropping refers to the removal of the outer parts of an image in order to improve framing,accentuate subject matter or change aspect ratio. See http://en.wikipedia.org/wiki/Cropping.Aliomovie's coordinates origin (0, 0) is top-left based, with x going right and y going down.If cropw (or croph) is 0, no right (or bottom) crop is performed.

9.3 Locating the Alioscopy displayWhen id is set to -1 in the [display] section, the following rules apply:

• only displays whose width and height are at least those defined in width and height keysare considered (width default value is 1920, height default value is 1080).

• the display with the smallest number of pixels (width*height) is chosen.• if several displays have the same number of pixels, the one bearing the highest id is

used.

9.4 Display areaSimilarly to section 9.2, the coordinate origin is top-left based. When wndx, wndy, wndw,wndh are set to their default value (0), display area covers all of the chosen display. Ifwndw (or wndh) is 0, display area is extended to the right (or bottom) of the chosen display.

Aliomovie Reference Guide Page 29

9.5 Aliomovie messagesWhile running, aliomovie displays a number of messages in the shell window. The verbosi-ty of aliomovie can be controlled through the loglevel key (in the [general] section). Errorsmay sometimes occur: typos in mix and play script files, missing files in an image se-quence or wrong display resolution for instance. Whenever aliomovie fails to run properly,reported messages should be read carefully. The syntax of all messages (except the mes-sage "Press RETURN to exit.") is as follow:TYPE[xxx]: message string.... with TYPE being either DEBUG, INFO, WARNING or ERROR, and xxx being the PID(Process ID) of aliomovie.

9.6 Solving playback problemsDuring playback13, three tasks may push the computer to its limits:

• Loading data at 30MB/sec. This high data rate may sometimes choke Windows plat-forms. The following message

WARNING[xxx]: display resynchronization at frame yyy (input underflow).is a hint that hard-disk access might be too slow.

• Uncompressing these 30MB/sec. The following messageWARNING[xxx]: display resynchronization at frame yyy (cpu overflow).is a hint that not enough CPU horsepower is available for aliomovie. If such messages ap-pear after several minutes of normal playback, it may be a hint that the computer isoverheating.

• Displaying frames at the display rate, that is, 60Hz.If you see no particular message on the shell window, but the display is choppy, you mighthave to update and/or tune your video driver. Another way to test your video driver is topause a clip (SPACEBAR), and look for the used CPU. If it is higher than 10%, there isprobably a problem with your display driver configuration.

13. As always, we assume 1920*1080 content played at 25 frames per second.

Aliomovie Reference Guide Page 30

10. LEGAL INFORMATION

Aliomovie® version 1.2.0Copyright © 2009-2011 Alioscopy, all rights reserved.http://www.alioscopy.com

WARNING: This computer program is protected by copyright law and internationaltreaties. Unauthorized reproduction or distribution of this program, or any portion of it,may result in severe civil and criminal penalties, and will be prosecuted under the maxi-mum extent possible under law.

Support contact: Raphaël LEMOINE, [email protected]

Aliomovie Reference Guide Page 31