+ + + Downloads are available again (13 Apr 2023) + + +
ANVIL is a free video annotation tool, developed by Michael Kipp.
It offers
multi-layered annotation based on a user-defined coding scheme. During
coding the user can see color-coded elements on multiple tracks in
time-alignment. Some special features are cross-level links,
non-temporal objects, timepoint tracks, coding agreement analysis, 3D viewing
of motion capture data and
a project tool for managing whole corpora of annotation
files. Originally developed for gesture research in 2000, ANVIL is now
being used in many research areas including human-computer
interaction, linguistics, ethology, anthropology, psychotherapy,
embodied agents, computer animation and oceanography.
ANVIL can import data from phonetic tools
like PRAAT which allow precise and
comfortable speech transcription (see my
video tutorial).
Anvil can display waveform and pitch
contour. Anvil's data files are XML-based. Exported tables can be used
for analysis in statistical toolkits like SPSS or Statistica. The coming version
will also be able to import ELAN files. ANVIL is written in Java and
runs on Windows, Macintosh and Unix platforms. The newest version is
ANVIL 5, see the list of Anvil 5 features.
See our publications page for information on how to cite Anvil in your publications and for published related work.
Here's a talk I gave in November 2010 for a scientific audience (CNRS-GDR
Paris) where I explain many of the concepts and features of ANVIL
(switch to full-screen by double-clicking). For a more systematic introduction
watch the ANVIL tutorial videos.
On this page you find a series of short tutorial videos explaining various aspects of
coding videos with ANVIL. Feel free to comment on YouTube and stay tuned for more...
Please note that you can increase the quality of the video by clicking on the
small toothed wheel icon that appears in the lower right corner once you start
playing a video. Select the highest number (e.g. 480p) and go full-screen (rightmost icon).
Basic Concepts (7 mins)
This video explains how different files in ANVIL (video, annotation data and coding scheme) relate to each other.
You can watch this video up front or just come back to this later after having seen some
more hands-on tutorials.
Transcribing speech with PRAAT (7:40 mins)
Very often you need to transcribe the speech of a video word by word (or sentence
by sentence). Anvil is not the ideal tool for this. Therefore, this video
explains how to transcribe the words from an audio file
with the PRAAT software. It does not
show how to import this data. Please open ANVIL's help pages for how
to do this.
Tutorial 1: Your first annotation file (6 mins)
This video shows you the following:
your first annotation file, using an existing coding scheme that comes with Anvil
add new elements to a track
use keyboard shortcuts
save your annotation
Tutorial 2: Coding scheme and track type (6 mins)
This video shows you the following:
look at a coding scheme (= specification file)
color coding
track types: primary and span
Tutorial 3: Changing your coding (7 mins)
This video shows you the following:
modify elements (cut/extend)
group of tracks
changing visibility and size of a track
Tutorial 4: Track types (10 mins)
This video shows you the following:
all track types: primary, point, singleton, span, subdivision
Tutorial 6: Working with a specification file (9 mins)
This video shows you the following:
use existing specification file
add color coding and keyboard shortcuts
ANVIL (since version 5.1) supports the annotation of dialogue acts according to the ISO standard 24617-2 (see Bunt et al. 2010 below). You can annotate dialogue acts using our specification and then export your annotation to DiAML (Dialogue Act Markup Language) format.
To annotate according to this standard in ANVIL you need to
download and use the following specification file: diaml-spec-v0.5.xml
As a default, two participants are specified. You can extend the number of participants for each dialogue by
copy-pasting a line at the very end of the specification file. To export your .anvil annotation file to DiAML format, select the following in ANVIL's main menu:
File > Export > DiAML format.
The DiAML-ANVIL process is described in the following publication:
Bunt, H., J. Alexandersson, J. Carletta, J.-W. Chae, A. Fang, K. Hasida, K. Lee, V. Petukhova, A. Popescu-Belis, L. Romary, C. Soria, and D. Traum (2010). Towards an ISO standard for dialogue act annotation. In: Proceedings of LREC 2010, Malta, pp. 2548–2558.
Anvil 6.0 released (29 Aug 2017)
This can now be considered a stable version and should be preferred over Anvil 5.
Bugfix: previously videos lying on a path that contained spaces or unusual
characters could not be read and the somewhat misleading error message "wrong codec"
appeared. This has now been fixed.
Anvil 6 released as beta (20 May 2017)
Anvil 6 is based on Java 8 and uses JavaFX for video playback. This means that you can use a wider range of codecs. This is what Oracle says about the supported video codecs: " FLV containing VP6 video and MP3 audio; MPEG-4 multimedia container with H.264/AVC (Advanced Video Coding) video compression".
Two new publications online
Pre-prints of two coming publications can be downloaded:
Kipp, M. (2014) ANVIL: A Universal Video Research Tool. In: J. Durand, U. Gut, G. Kristofferson (Hrsg.) Handbook of Corpus Phonology, Oxford University Press.
Download pre-print version (PDF)
Kipp, M. (2012) Multimedia Annotation, Querying and Analysis in ANVIL.
In: M. Maybury (ed.) Multimedia Information Extraction, Chapter 19, IEEE Computer Society Press.
Download pre-print version (PDF)
ANVIL 5
ANVIL 5 has been released since mid 2010. Although still in a beta state, it is very stable and used by most users. Have a look here for new features (compared to version 4) and for newly arriving features in the further releases.
Major new features:
Installer: for Windows and Mac platforms, specific installers make installation easy
Integrated online manual: documentation is now available in the tool itself by pressing the green help button
Specification editor: specifications (= coding scheme) can be created and changed with a graphical editor
3D Motion capture player: motion capture files in BVH format can be viewed with a 3D skeleton and synchronized with video playback
Subdivision track type: this is equivalent to ELAN's subdivision type. In a subdivision track the coder splits an element of the reference track into smaller pieces.
Time point track type: the "PrimaryPoint" track type allows to annotate single time points instead of intervals. This is equivalent to PRAAT's point type.
ELAN Import: ELAN files can be read into Anvil; various conversion strategies are applied to accommodate the differences between the tools (note that ELAN's subdivision type has also been added to Anvil).
Histograms: users can quickly look at the distribution of labels in a specific track, also across annotations (project tool)
Analysis: Anvil 5 offers various useful analysis features that can be applied to a single Anvil file or a whole project
Coding agreement (kappa): automatic computation of agreement between two annotations of the same track (two .anvil files). Computes Cohen's kappa, corrected kappa and simple percentage. Also allows to only look at segmentation agreement.
Transition diagrams: visualization of the probabilities that label A transitions to label B in a particular track, shown as a graph where arrow thickness indicates transition probabilities.
Association analysis: Allows to compute a chi square test on co-occurrences of labels on two different tracks. The user specifies the temporal relation that entities to-be-compared must meet.
Improved search interface (since 5 beta 16): Google-style text search is now the default, together with regular expression search and the old include/exclude list search.
Comparing tracks (since 5 beta 16): One can insert a track from a different annotation (right-click on track name). This allows to compare inter-coder agreement directly.
Minor new features and improvements
Keyboard short-cuts: can be defined by users to speed up annotation
Annotation "ghosting": "ghost" elements indicate where an element can be added
Mac OS adaptation: the functionality was cleaned up with respect to the Mac OS platform
Imporoved project tool layout
Impressum
ANVIL was created by Michael Kipp, professor for interactive media at the University of Applied Sciences Augsburg, Germany.
The following people contributed code to the ANVIL software: Quan Nguyen, Gabriel Manolache.
This website is maintained by:
Michael Kipp
Hochschule Augsburg
An der Hochschule 1
86161 Augsburg, GERMANY
kipp@hs-augsburg.de
How to Download ANVIL
The Anvil software is free for research and educational
purposes. To download it, please write an e-mail with subject
"anvil download" and answer the following questions (please write in
English or German):
Your name
Your research institute
Some words on your research and how Anvil would be used in it
How did you hear of Anvil (Internet, colleague, publication etc.)?
Your computer's operating system (Windows XP/Vista, Linux, Mac)?
Send your e-mail to download@anvil-software.de
This is for us to keep track of where and how Anvil is employed. In
return we will send you the address of the download page and place you
on a mailing list that keeps you informed about any Anvil updates.
See our publications page for information on how to cite Anvil in your publications and for published related work.
Documentation
Note that starting with ANVIL 5, the documentation is in the tool
itself. Start ANVIL and click on "? > ANVIL Help Pages" to open the
online manual.
ANVIL Talk 2010
In Novermber 2010, I gave a talk at the CNRS GDR lab, Paris, where I present ANVIL's basic concepts and a number of interesting new features. Sorry for the image quality, I am trying to obtain a hi-res version. Thanks to Christophe Parisse for inviting me for this talk and for providing the video. You can also download the presentation slides.
Older documentation
Here you can find some older documentation for ANVIL 4
and older (which is still largely valid):
Kipp, M. (2014) ANVIL: A Universal Video Research Tool. In: J. Durand, U. Gut, G. Kristofferson (Eds.) Handbook of Corpus Phonology, Oxford University Press, Chapter 21, pp. 420-436
Download pre-print version (PDF)
Kipp, M. (2012) Multimedia Annotation, Querying and Analysis in ANVIL.
In: M. Maybury (ed.) Multimedia Information Extraction, Chapter 21, John Wiley & Sons, pp: 351-368.
Download pre-print version (PDF)
Kipp, M. (2008) Spatiotemporal Coding in ANVIL. Proceedings of the 6th international conference on Language Resources and Evaluation (LREC-08).
Kipp, M. (2004), Gesture Generation by Imitation - From Human Behavior to Computer Character Animation, Boca Raton, Florida: Dissertation.com. (My published PhD thesis.)
For other related scientific papers, see Michael Kipp's publications
page. To see some examples of how Anvil
is used but also to learn about annotation of speech and gesture in
general we recommend Dan Loehr's PhD thesis Gesture
and Intonation (2004).
New Features
version 4.7.6
File encoding issues: Resolved encoding problems
(e.g. when using "UTF-8"). Now if the .anvil file specifies a
certain encoding in the xml header, this encoding will be
correctly displayed in Anvil. If you want to change the default
file encoding that Anvil uses, go to Edit > Options.. and
select the "File" tab to change the encoding to e.g. UTF-8.
5 Mar 2008
version 4.7.5
PRAAT File import: There have been problems with PRAAT
file import. This was due to encoding problems which are now
resolved. ANVIL now supports reading files encoded in UTF-8,
UTF-16LE, UTF-16BE, UTF-16, US-ASCII and ISO-8859-1.
4 Mar 2008
version 4.7.4
Refresh bug: When cutting/extending elements Anvil now
refreshes immediately (again). Also the "clear active track"
function has been repaired and should now work.
27 Feb 2008
version 4.7.3
SPSS export: Anothter fix of the label file; the
"none" value is now assigned the index 0, all other tokens
receive higher index numbers (previously it was not possible to
discriminate between "none" and the first token in the list).
5 Feb 2008
version 4.7.2
Video size: When adapting video size via the menu, it
applies to all videos (if multiple videos are used).
SPSS export: Fixed export of label file.
28 Jan 2008
version 4.7.1
Manual generation: The automatic coding manual
generation crashed when certain characters were used in
track/group names. This is now fixed.
7 Jan 2008
version 4.7.0
This version has gone through a number of iterations. See the
complete list of "beta" updates below to find all new features of
version 4.7.0
Feature "Float type":
There is a new value type for attributes called "Float" which
allows the store float values (also called real values) in
attributes. In the specification file you define such an
attribute like this:
<attribute name="intensity" valuetype="Float" />
Plugin interface: The plugin interface is up and
running again. See the manual for how to write and register a
plugin. See the plugindoc subdirectory for a javadoc API of the
classes that can be accessed by your plugin. You can find an
example of a working plugin in plugin/MyTool.java (note that the
other two plugins in that directory do not work currently). If
you have any questions or find that some method is missing,
please get back to me.
7 Jan 2008
version 4.7 beta 6
Feature "Spatial annotation configuration": The
spatial annotation described below can now be further
configurated. For instance, you can determine the size and
transparency of the markers and whether markers should be
connected by lines or arrows (or not at all). Here is an example:
Here is a list of what values you can specify in <connections>
type = off | line | arrow
color: Anvil standard color (see manual)
transparency: float value between 0 and 1, for instance 0.3
size: integer value of 1 or bigger (line pixel thickness)
Here is a list of what values you can specify in <markers>
numbering = on | off (whether a number is placed inside
marker)
filled = true | false (whether the marker is just an
outline trace of a circle or a filled dot)
size: integer value of 1 or bigger (radius of the circle in pixels)
color, transparency: see above
Feature "Project tool: multiple tracks export":
The project tool now allows to export several tracks in a
single text file. In the project tool, load a project and
select "Export > Multiple
tracks table". For each annotation (file), each track, each
element there is a row. For each attribute of all tracks there
is a column.
9 Dec 2007
version 4.7 beta 5
Feature "Relative path names": An Anvil annottion
file (extension .anvil) contains two links (to the video and to
the specification) which were formerly stored as absolute
path names which causes problems when you open the annotation on
a different computer where paths are different. Now Anvil
stores relative path names, using the location of the
.anvil file as the reference path. Only if video/specification
are located on a different drive (e.g. different harddisk) Anvil
resorts to absolute path names.
Bugfix "PRAAT Import": Importing PRAAT short text
files is now working again.
3 Dec 2007
version 4.7 beta 4
Feature "Images in coding manual": are now allowed in the automatic coding
manual generation. A picture can be integrated anywhere between
the <doc> ... </doc> tags, using standard
HTML notation:
<img src="mypic.jpg"
/>
Keep all your pictures in a separate directory; Anvil
will ask for this directory on generation and copy all images to
the generated coding manual destination.
Feature "Bookmarks as vertical lines": Bookmarks can be visualized with vertical (blue)
lines. Switch on/off these lines in the "Bookmarks" entry of the
main menu.
Bugfix:Fixed bug that Anvil crashed with multiple videos (when the
slave video was shorter than the master one; the "master" video is
the first one opened, all others are "slaves")
Bugfix: Fixed bug that many options in the main menu "File" were not
accessible.
12 Nov 2007
version 4.7 beta 3
Modification "Spatial Annotation": Note that the syntax has changed
slightly; to define a track for spatial annotation write
Feature "Switching off and zooming tracks": Tracks can now be changed in size and switched
on/off during coding! On the annotation board, simply right-click
on the left panel (where all the track and group names are
located) and choose one of the options in the popup menu. The
popup menu also contains an option to put all tracks in their
original size and switch all on again.
Feature in Project Tool: In the Project Tool, when exporting, you can have
the filename included as a column in the resulting table.
Bugfix: In the previous release, you could not edit newly
created elements.
Bugfix: In spatial annotation, colors are now handled more
consistently.
04 Oct 2007
version 4.7 beta 2
Bugfix: Editing spatial annotations was broken.
11 Sep 2007
version 4.7 beta 1
Move to Java 1.5: ANVIL now required Java 1.5 or higher which
is available for all platforms. The reason is the use of generics
which will be featured in the future plugin interface.
Easier installation: Installation is easier now. You only
have to unpack the ZIP file and are ready to go (no INSTALL.BAT
any more).
Multiple videos: You can load multiple videos which
will be played back synchronously. The first video will be the
MASTER video whose sound will be played (the waveform will also
be taken from this one). All others are so-called SLAVES and can
be added via the main menu under "File > add video"
Spatial annotation: You can annotate points on the
video screen and have them stored in an attribute. Here is an
example of an attribute that can take such input:
<attribute name="trajectory" valuetype="SpatialPoints" />
(this syntax has changed!!! See beta03)
To enable this feature, you have to go to main menu "Edit >
Options..", select the "Graphics" tab and switch on "Allow
video overlay" (restart ANVIL afterwards).
Note that the exact terminology ("SpatialPoints") and
functioning of this feature is subject to change in the
future.
Video player speedup: Some slow-down of the system may have been
caused by the video player. Now ANVIL uses a faster variant
(so-called "heavyweight component"). Note that using the spatial
annotation feature above may cause the old slow-down.
Background waveform loading: The waveform is now computed in the
background during loading so that you do not have to wait for it
when loading your annotation.
Internal restructuring & Plugin interface: Note
that due to drastic changes in ANVIL's internals the plugin
interface will not work any more in its older form. A new plugin
interface will be offered in 1-2 months.
10 Sep 2007
version 4.5.14
New feature: You can change the ISO code in ANVIL
annotation file (first line in a .anvil file) just modify this line
in anvil-config.xml:
<xml-file-encoding
code="ISO-8859-1" />
version 4.5.13
New feature: Made some modifications to the "edit window" - that
is the window that pops up if you create a new annotation element or
if you edit an annotation element. The changes are: (1) you can click
away the comment textbox, (2) the "play" button moved somewhat to
make things more economical, and (3) You can change the layout of the
edit window somewhat.
Details for (3): if you have many input
attributes for one track you can influence the way they are organized
in the edit window. What you can change is the number of input
attributes per column (by default 10 inputs are displayed in one
column, if there are more then the next 10 are organized in another
column etc.). To change this number you must modify the file
"anvil-config.xml" in your Anvil directory. Simply add this line
<edit-window
inputs-per-column="12" >
below the <anvil-config> line.
version 4.5.12
Bugfix: Corrected the FEELTRACE feature - previous version
read data logarithmically and scaled them to min/max. Now data is
displayed linearily between 0 and 100 (outside values are cut).
version 4.5.11
New: relating to the 4.5.10 addition - you can now
determine the position of the zero axis by giving a float number
between 0 and 100 (0=bottom, 100=top) - if you do not specify a value
the default is 50:
New: use can set "use slow graphics" in "Edit >
Options..." - this may remove some graphics problems on some machines
(because hardware is acceleration is thus turned off).
version 4.5.8
New: Graphics on the annotation board got a slight polish (3D shading).
version 4.5.7
New: New import function allows the import of WAVESURFER
files (.lab transcriptions).
version 4.5.5
New: Search interface allows the "*" and "?" search
operators when searching String type attributes. These operators are
so-called wildcards, they are placeholders for arbitrary
characters. The "*" operator is a placeholder for an arbitrary number
of characters whereas "?" only stands for a single character. For
example: searching for "g*e" would return words like "gesture",
"glue", "give". Another example: searching for "?est" would return
elements with "best", "lest", "zest".
version 4.5.4
New: A hot-key for the edit dialog (for adding new
elements e.g.) - you can now use CTRL + ENTER to close the window
(equals "OK"). Also the documentation window (help for a certain
attribute) can now be closed with ESC.
New: Pitch/intensity can now be imported into multiple
tiers (different pitch/intensity files to different tiers), if so
desired.
version 4.5.2
Improved: Handling of image processing on the
AnnotationBoard. Should eliminate a bug that caused Anvil to display
a scrambled AnnotationBoard on some machines (depending on the
hardware!).
Improved: Installation instructions for the Mac. Also, the
start script was improved with a memory hack. Now, the OUT OF MEMORY
error should not occur so often any more on a Mac.
version 4.5
Improved: Overall speed when navigating on the annotation board and playing video.
version 4.1.5
Fixed: Creation of anvil.bat file (now produces quotes
around classpath)
version 4.1.4
Fixed: File extensions can now be upper or lower case or
mixed (beforehand, only lower case extensions were recognized).
version 4.1.3
Improved: Display of the waveform has been optimized
(beforehand the waveform was sometimes displayed too thinly).
version 4.1.2
New Feature: Video stills (single frames) can now be
exported to an image file (jpg or png format).
version 4.1.1
New Feature: The export facility now features the
possibility to specify the decimal separator with numbers (times),
either dot or comma.
version 4.1
New Feature: Extended export facilities - to be found in
Anvil under File > Export: Track to table. In the Project Tool under
Export > Track table.
version 4.0.13
New Feature: When creating a new track element (or editing
an existing one) Anvil allows playback of that section in the
video. A new button is displayed in the edit window for this purpose.
11 Jul 2004: Added new AnvilMac.sh file and new README.txt with improved
installation instructions for the Mac.
version 4.0.12
Unix start script corrected: must be "-mx1024m" instead of "-mx1024mb".
New Feature: Anvil can now operate WITHOUT loaded video
files. You can either erase the line referring to the video path in
existing "anvil" files. Alternatively, you can create new video-free
annotations by: (1) opening a PRAAT textgrid file, (2) specifying the
specification file. Anvil will then create a new annotation based on
the text transcription found in the PRAAT file.
version 4.0.10
Bug fixed: PRAAT files can now contain line feeds in
single entries without causing Anvil to crash.
version 4.0.9
Bug fixed: Anvil crashed with longer videos because the
timestamps greater than 1000 were saved with commas in the US. This
is now fixed.
version 4.0.8
New Feature: Files (avi, anvil, etc.) can be dragged and dropped to Anvil (Main window).
New Feature: Keyboard commands based on the CTRL key can now also be performed with the SHIFT key (e.g. CTRL + ARROWLEFT can now be performed with SHIFT + ARROWLEFT, too). This should make the CTRL key commands accessible to Mac users.
version 4.0.7
Bug 4.0.6/1 fixed.
version 4.0.6
Bug 4.0.6/1: When trying to annotate links in MultiLink or
ReciprocalLink attributes, Anvil does not let you select elements of
all tracks.
Technical Support
If you have a problem or question regarding Anvil, please consult the manual and the online help pages that you can call from Anvil in menu Help -> ANVIL Help Pages. Also, have a look at the Frequently Asked Questions page.
Anvil runs on PCs, Macintosh computers and SPARC
workstations. It runs under the following operating systems:
Windows (95/98/ME/2000/NT/XP), Mac OS X, Linux and Solaris.
If you have a PC, you should have at least 500 MHz and 128 MB RAM
(working memory). Of course, the faster the better and more memory
is better still. Slow computers will take longer loading Anvil
files and the video playback might be less smooth.
As for Macintosh, I only know that Anvil works fine on my Mac mini
(G4 processor, 1.41 GHz, 512 MB RAM). I have no further estimates
for Macintosh or Solaris machines.
If you click on "anvil.bat" and nothing happens, check the
following things:
Make sure that the downloaded file is really *unpacked*. For
Windows XP users: you can look into the file although it is not
unpacked yet. You have to use the "unpack/extract" option from
the options on the left side of the Explorer window.
Problems occur with old versions of
WinZip: if you see that your anvil files have size 0 after unpacking
with WinZip, download the latest version of WinZip and try downloading again
Check whether the directory path to your Anvil system has any
special symbols like �, �, � etc. If so, rename the directory (removing these symbols)
and try again.
If you get an error message in a black window, copy the text and
write me an e-mail with the error message: kipp@dfki.de
If a black window only briefly appears, try starting Anvil from a command
shell and send me the error message. Read how to start Anvil from a
command shell here.
If you cannot start "install.bat", try starting it from a command shell.
Read how to do this here.
Windows: How do I start Anvil from a command
shell?
If you want to see any error messages when starting Anvil you have
to start Anvil ("anvil.bat") from a command shell (the same
applies for the installation program "install.bat"). A command
shell under Windows this is usually a black window that allows
keyboard input like in MS-DOS. To start a shell do the following:
Open the "START" menu and select "Run..."
(alternatively, you can hold down the WINDOWS KEY and press "r")
In the upcoming window, type "command" and click "OK";
the black command shell appears.
Go to the Anvil directory using the "cd" (change directory)
command:
"cd .." will get you to the upper directory
"cd
xx" will get you to directory xx.
"dir" shows you the contents
of the current directory
Start Anvil by typing "anvil" and pressing enter.
(Or type
"install" for the installation program)
You will get an error message that you can send to support@anvil-software.de.
Under Windows one source of problems is the hardware
acceleration of the graphics card. Try to lower it or turn it off
altogether using the following recipe:
Move your mouse on an empty area of your desktop, push right
mouse button, and select "Properties.."
In the upcoming window select the rightmost tab "Settings" and click the button "Advanced" in the lower right corner
In the next upcoming window select the tab "Troubleshoot". You will see a slider for you graphics hardware accelerator. The more you pull it to the left, the less hardware acceleration you use.
Try different positions with Anvil. You have to click "Apply" to actually make the setting. See what happens in Anvil.
There something else that you can try if the above does not
work or if you are a Linux/Mac user. In ANVIL, go to "Edit >
Options.." in the main menu. In the upcoming window, select the
"Graphics" tab and click on the "Use slow graphics" checkbox to
activate it. This turns off hardware acceleration from ANVIL's
side. You have to restart ANVIL for the change to take effect.
What does the error message in the command shell mean?
If you start "install.bat" or "anvil.bat" from a command shell, one
of the following error messages might appear. I am only listing the
first line of the message (list not complete, if your error does not
appear here, write to me under kipp(at)dfki.de):
Exception in thread "main" java.lang.NoClassDefFoundError: javax/media/ControllerListener
This error indicates that your JMF (Java Media Framework) is not properly installed.
Try re-installing it. If that does not help, you have two options. You either manually
modify your CLASSPATH environment variable to include the path to the "jmf.jar" file or
you insert the "jmf.jar" path into the "anvil.bat" file.
A frequent source of error is the AnvilUnix.sh script file
because it sometimes contains a Windows linefeed at the end. Try
this version: AnvilUnix.sh. Or use
the following perl script to remove
it: script by Hannes Pirker (thanks,
Hannes!). Note that this problem should not occur under Anvil 5.
The demo lq-demo2.zip contains a video that does not run under
Linux. The reason is that its codec (Intel Indeo 5.1) is Windows
specific. So to check this out under Linux you would have to
convert the video to another codec (e.g. Cinepak). As soon as I
have time I will change the codec of this demo so that it runs
everywhere...
What is the maximum length of a video for usage in Anvil?
Currently, due to the way graphics in used in Anvil, you can only
use video files up to a certain length (about 10 minutes)
depending on your computer's working memory (so try bigger files
first). This restriction will certainly vanish at some point in
the future. In the meantime, researchers can improvise by cutting
their files to 10 minute chunks. Note that you can still work
quite comfortably with these chunks using Anvil's Project Tool
(included in the distribution).
Note: This is only relevant for versions older than Anvil 5.
Anvil should run on any Mac with OS X. For Anvil 4.0 (or
higher) you need to make sure that Java 1.4 is installed on your
Mac because, originally, Mac OS X was shipped with Java 1.3. In
this case, Java 1.4 can be downloaded. Consult Apple's Java pages for
this.
One source of problems in the past has been the "AnvilMac.sh"
file. Since I am working on a Windows machine, this file may have
an illegal linefeed character at the end. So, if your Mac has
problems with this file, open it in an editor and delete the
linefeed at the end of the file if there is one. Or you can also this
file which should not have the linefeed problem: AnvilUnix.sh
Another "problem" with the Mac is the installation of the Java
Media Framework (JMF). To install JMF on your Mac, go to the JMF
download page and select "Cross-platform Java". Unpack the
downloaded file and move the "jmf.jar" file to the following
directory:
I could unzip the downloaded file with the StuffIt Expander
ver.8.0.2 on Mac OS X 10.4.3, but could not unzip it with the
StuffIt Expander version 7.0.3 on Mac OS X 10.3.9.
Printing annotatations in Anvil or how to make a screen shot.
Unfortunately, printing the annotation board is currently not
possible from Anvil itself, so you have to do screen shots of the
annotation board.
Doing a screen shot on Windows works like this:
Click on the window you want to capture (e.g. the annotation board).
Press the key combination ALT + PRINT (the PRINT key is located right of the F1 - F12 row of keys)
Open MS WORD or a paint software (Photoshop etc.) and press CTRL + V (for "copy")
The screen shot will appear.
If you want to have a screen shot of the whole desktop, use only
the PRINT key (no ALT) in the same way.
On a Mac, hold down SHIFT and CMD and press "4". A
cross-hairs appears and you can click-drag the relevant screen
area. The resulting screen shot will be put on your desktop.
Which video files work under Anvil (codecs)? Get Video test files here!
First a word about the notions of "video file format" and
"codec". The video file format is the overall format for storing
all of the video's data. The two best known file formats are Quicktime
(with file extension .mov) and AVI (file extension .avi).
The method of video compression in a particular video file is
determined by the codec (short for compression/decompression). Both Quicktime and AVI
support various codecs. Examples for
codecs are: Cinepak, Intel Indeo, Sorensen, H.263. Some codecs only run under Windows. The Cinepak codec is the one that should run on all platforms.
Here are two short video files with Cinepak codec
and uncompressed audio that you can use to test your
system.
WINDOWS VISTA NOTE: To use the popular Intel
Indeo codec under Windows Vista (this may also be true for
some XP versions), you have to install the codec. You can download
it from
here: Intel
Indeo codec download
The following two tables show codecs that are known to work for
ANVIL under Windows / Mac OS X (MOV stands for the QuickTime
format). Thanks to Christoph Lauer for his help. Note that it is
possible that more codecs than the listed ones are working! Also
note that Windows users may need to download the respective codec
from the Internet.
For information on how to change the codec of a video file click here.
In the following tables, look at the one for your
operating system (Windows / Mac /Linux / Solaris):
WINDOWS
AVI
Cinepak
AVI
Intel Indeo 5.04
AVI
Intel Indeo 5.1
(my favorite codec!)
AVI
Intel Indeo R3.2
MOV
Cinepak
MOV
Component Video
MOV
H-261
MOV
H-263
MOV
Foto JPEG
MOV
RAW without Compressor
MAC OS X
AVI
Cinepak
AVI
RGB
(big files!)
MOV
Cinepak
MOV
H.263
(good compression!)
MOV
Foto JPEG
I have not tested codec support under Linux / Solaris. But according to
the Sun codec list the following codecs should work under
Linux/Solaris:
Linux / Solaris
AVI
Cinepak
AVI
MJPEG
AVI
RGB
AVI
YUV
MOV
Cinepak
MOV
H.261
MOV
H.263
MOV
JPEG
MOV
RGB
Anvil supports any format/codec supported by JMF 2.1.1 - take a
look at the JMF
format/codec list provided by Sun. Both Quicktime and AVI
formats work (tested)! Note that you must download JMF version
2.1.1 or higher for AVI to work. Note also that your codec
must be supported, too. Everywhere where you find a "D" in the
list, the codec should work (exception: MPEG does not work - see
MPEG question).
How do I convert video files (from MPG to AVI, changing the codec etc.) ?
If you need to change a video file's format (e.g. from AVI to MOV,
or from MPG to AVI) or if you need to change a video's codec (Sorensen, Cinepak, Indeo, H.263 etc.), then you need
a video editing software.
Windows users can either buy a commercial software like Adobe Premiere,
or you simply download the excellent free software VirtualDub. These tools are
developed for cutting and editing movies, so file format or codec
conversion is only a side issue in these tools.
MPEG Streamclip is a
free video conversion tool for Windows and Mac.
For Mac users there is Apple's iMovie which works fine for
conversion.
Note for iMovie users: If you convert to Cinepak you
have to set iMovie to "Big Endian" (default is "Little
Endian"). [Thanks to Madeline Alsmeyer for this hint]
How do I make new codecs (e.g. divX) work with
Anvil?
It is actually possible to make new codecs work for ANVIL. It
is basically a question of how to put the new codec into JMF. Mary
Ellen Foster figured out how to do that and you can find her
instructions below (she did it under LINUX). Neville Mehta gives
instructions for adding a codec under Windows XP.
Adding a codec under LINUX (by Mary Ellen Foster):
First of all, download her version of the start script: AnvilUnix.sh
Step 0: Download and install Anvil and JMF as specified on the
Anvil website
Step 1: Download the latest versions of jffmpeg.jar and
libjffmpeg.so from http://jffmpeg.sourceforge.net/, and put them
into a directory somewhere. We will call this directory
JFFMPEG_HOME in the instructions that follow.
Step 2: Set up JMF to use the new codecs. Basically you need to:
Step 3: Edit AnvilUnix.sh to uncomment the line after the comment
"# If you are using jffmpeg, uncomment the following line and set the path"
and set the path for JFFMPEG_HOME appropriately.
Adding a codec under Windows XP (by Neville Mehta):
Step 3: Add "<path to JMF>/lib/jffmpeg.jar" to the CLASSPATH environment variable in User variables, done through System Properties/Advanced tab/Environment variables.
Step 4: Complete the installation according the the jffmpeg
instructions (involving JMFRegistry)
Although the Java Media Framework (JMF) supports MPEG1 (video
files with extension "mpg"), a vital function is missing from
JMF's support: the frame-wise access to the video file. This is
essential for frame-by-frame stepping and also needed at some
other places in the Anvil code. Therefore, MPEG1 videos are not
accepted by Anvil yet but may be in the future, depending on the
development of JMF.
Big video files can cause problems. "Big" meaning the size of your
video file. For example, if your file is larger than 1 GB you should try
to compress it (use lower quality or a different screen size -
usually 384x288 works well).
To give Anvil more memory, you have to manipulate the "anvil.bat"
file in your Anvil directory. Open "anvil.bat" in an editor
(WordPad or Editor) and insert the magic word "-mx512m" into the
one line that this file consists of. After insertion the line
should look like this (dots stand for omitted rest of line):
java -mx512m -classpath ...
The meaning of the number "512" is working memory (in MB). It can
even exceed the real working memory of your computer because when
in need of more memory your computer will use your harddisk. So
when you run into an "out of memory" error just set this figure
higher and see what happens... (512 is a good starting point)
Up until version 3.5, Anvil get memory problem when: (1) video
files have a length of about 5 minutes or more; exact max. length
depends on system and specification file. (2) Anvil can also run
out of memory when you have opened and closed a number of
annotations. It is a bug that I hope to get rid of in the coming
version.
Problem: The video control buttons (in the main window), the
zoom buttons (annotation board) etc. are missing.
Reason: If you are working under Linux, then you might have
uncompressed the zip file with a program that ignored
capitalization and produced lower case filenames. Check the "img"
subdirectory and find filenames like "fastBwd.jpg" or
"firstElement.jpg". If they are all lower case use a different
program for unpacking (I think "uncompress" works fine).
You need Java 6 to run Anvil on your Mac. If nothing happens
when double-clicking the Anvil.app file, you either do not have
Java 6 installed or, even if you have it, it may not be used by
your Mac.
To update your Java version you click on the apple (main menu)
and select "Software Updates...". Install Java if it is listed.
To select Java 6 as the preferred version, use the Finder to
go to /Applications/Utilities and start "Java Preferences". Here
you can drag and drop Java 6 to the top of the list(s).
If all this does not work, start Anvil from a console (see
next question below how to do it) and send us the error message.
Anvil 5: How do I get console output when starting Anvil on a Mac.
After installing Anvil 5 on a mac, you will have an anvil.app
file and double-clicking it, you will not get console-style
error messages. However, you may want to see error messages.
Here's how to start Anvil with a console window:
Open the context menu over anvil.app (CTRL + mouseclick) and select "show package"
You will see the "contents" of the .app file which is a directory.
In "Contents/MacOS" double-click on "JavaApplicationStub"
You will see a console window with (error) messages, parallel to Anvil opening up. If you had problems with Anvil, send the error messages to support@anvil-software.de