changeset 1523:f73a4e8c7040

Merge from branch 3.0-integration
author Chris Cannam
date Tue, 10 Jan 2017 16:21:32 +0000
parents a0a37ed3c07a (current diff) f016667b4adb (diff)
children 0f42e0ec6f4c
files
diffstat 51 files changed, 14001 insertions(+), 8603 deletions(-) [+]
line wrap: on
line diff
--- a/.hgsub	Tue Jan 10 16:10:33 2017 +0000
+++ b/.hgsub	Tue Jan 10 16:21:32 2017 +0000
@@ -1,5 +1,13 @@
+vamp-plugin-sdk = https://code.soundsoftware.ac.uk/hg/vamp-plugin-sdk
 svcore = https://code.soundsoftware.ac.uk/hg/svcore
 svgui = https://code.soundsoftware.ac.uk/hg/svgui
 svapp = https://code.soundsoftware.ac.uk/hg/svapp
 dataquay = https://bitbucket.org/breakfastquay/dataquay
+bqvec = https://bitbucket.org/breakfastquay/bqvec
+bqfft = https://bitbucket.org/breakfastquay/bqfft
+bqresample = https://bitbucket.org/breakfastquay/bqresample
+bqaudioio = https://bitbucket.org/breakfastquay/bqaudioio
 sv-dependency-builds = https://code.soundsoftware.ac.uk/hg/sv-dependency-builds
+icons/scalable = https://code.soundsoftware.ac.uk/hg/sv-iconset
+checker = https://code.soundsoftware.ac.uk/hg/vamp-plugin-load-checker
+piper-cpp = https://code.soundsoftware.ac.uk/hg/piper-cpp
--- a/.hgsubstate	Tue Jan 10 16:10:33 2017 +0000
+++ b/.hgsubstate	Tue Jan 10 16:21:32 2017 +0000
@@ -1,5 +1,13 @@
-2777e3578cf15fd0e579dc6ca9cdfe0d93d400f2 dataquay
-55ece8862b6d3a54aad271a53f9c1615e5d3bcf8 sv-dependency-builds
-d65ce7e553469e65be564a2168f42d45ba1135a3 svapp
-59ae7e04f7e982f08be31c3d635dcee358c50861 svcore
-e8102ff5573b5d89c54da4a92b9c7fbd1a27962b svgui
+4542e34b7d8cc86a4b12651d692dcdb63f45e9e5 bqaudioio
+fec5b1dfb6cd59c632f4aa412e3458f49e36367d bqfft
+482d0362594bce1e5347295a188c5a81cf2ab0fd bqresample
+ede817a08bd1e9835348a6477530bd3253fb379c bqvec
+e791c14261313d50166bee9baf57d243dd5d4c12 checker
+3768bdde6fdf866aa63fff5bde8d9fa64a8979ef dataquay
+3d2cde3b1ab3d39c7f9e542250c288a9da0f6850 icons/scalable
+3257ddb6fff110cc88f3ffeaeefa0f29d5eb3b6f piper-cpp
+95867ba8caa86f69fdd57366dbfe2f977dd9cb5d sv-dependency-builds
+1a8a8980f39a8e735c90837a4c2260248aafe7f1 svapp
+1bf38a4b91c4cfd7a77de73fa77a6723f80fe211 svcore
+be42a33a3db6c11559166b65c30bcd7248a46c9f svgui
+ea8e56f0796afebe78e9e678f4b674c1d7fb279e vamp-plugin-sdk
--- a/CHANGELOG	Tue Jan 10 16:10:33 2017 +0000
+++ b/CHANGELOG	Tue Jan 10 16:21:32 2017 +0000
@@ -1,4 +1,64 @@
-Changes in Sonic Visualiser 2.5 since the previous release 2.4.1:
+
+Changes in Sonic Visualiser 3.0 (Jan 2017) since the previous release 2.5:
+
+ - Add ability to record audio, and ability to change the audio device
+   for playback or recording in the preferences
+
+ - Add complete support for high-resolution (Hi-DPI or retina)
+   displays, including for layer data rendering as well as UI controls
+   and icons. This makes the biggest difference when using a retina
+   Mac, on which previous versions did not render layer data at retina
+   resolution, but it also improves scaling and rendering of UI
+   elements on Hi-DPI displays on Windows and Linux
+
+ - Add ability to open, display, and analyse very long audio files (of
+   more than 2^32 sample frames)
+
+ - Add ability to export scalable (SVG) image files
+
+ - Run plugins in a separate process, so that if a plugin crashes, it
+   no longer brings down Sonic Visualiser with it. In every other
+   respect the behaviour should be unchanged
+
+ - Scan plugins on startup in a separate process, and report on any
+   that crash or won't load
+
+ - Change mp3 file loading so as to compensate for encoder/decoder
+   delay and padding (using "gapless playback" logic). While this is a
+   real improvement, unfortunately it does mean that the initial
+   padding in mp3 file load has changed from previous versions, which
+   may mean some sessions saved in previous versions are no longer
+   correctly aligned. It's not a great idea to use mp3 as a file
+   format of record, because of differences like this between
+   decoders. The previous behaviour is still available as a preference.
+
+ - Add new Hybrid normalisation type for spectrogram and colour 3d
+   plot layers. This normalises each column to its peak value and then
+   scales the normalised values by the log of the peak in order to
+   restore some distinction in scale between columns with different
+   levels. It can provide quite visually clear results.
+
+ - Add function to subdivide time instant layers into regular
+   intervals (and its inverse)
+
+ - Add new preference for default colour scales
+
+ - Switch to using combined level/pan controls in layer property boxes
+   and for the main volume control
+
+ - Make CSV file reader better able to handle files with varying
+   numbers of columns
+
+ - Fix a number of problems on Windows with loading and saving some
+   file formats to filenames not representable in system codepage
+
+ - Add "What's New" dialog
+
+ - Finally switch the Windows built to 64-bit by default (with
+   adapters to run either 32- or 64-bit plugins)
+
+
+Changes in Sonic Visualiser 2.5 (Oct 2015) since the previous release 2.4.1:
 
  - Add unit-converter dialog, for converting between various pitch and
    timing units
@@ -13,11 +73,13 @@
 
  - Fix failure to export last instant in a time-instant layer
 
-Changes in Sonic Visualiser 2.4.1 since the previous release 2.4:
+
+Changes in Sonic Visualiser 2.4.1 (Oct 2014) since the previous release 2.4:
 
  - Fix a crash when rendering certain colour 3d plot layers
 
-Changes in Sonic Visualiser 2.4 since the previous release 2.3:
+
+Changes in Sonic Visualiser 2.4 (Sep 2014) since the previous release 2.3:
 
  - Add support for left/right scrolling using a two-finger touchpad
    gesture (where available)
@@ -71,7 +133,7 @@
    platforms.
 
 
-Changes in Sonic Visualiser 2.3 since the previous release 2.2:
+Changes in Sonic Visualiser 2.3 (Dec 2013) since the previous release 2.2:
 
  - Add a startup welcome dialog that also explains what SV makes
    network connections for and allows user to forbid them
@@ -97,7 +159,7 @@
    build
 
 
-Changes in Sonic Visualiser 2.2 since the previous release 2.1:
+Changes in Sonic Visualiser 2.2 (July 2013) since the previous release 2.1:
 
  - Build with support for hidpi ("retina") text on OS/X
 
@@ -114,7 +176,7 @@
    a new session is started
 
 
-Changes in Sonic Visualiser 2.1 since the previous release 2.0.1:
+Changes in Sonic Visualiser 2.1 (May 2013) since the previous release 2.0.1:
 
  - Fix incorrect handling of FixedSampleRate outputs (Vamp SDK fix)
 
@@ -132,7 +194,7 @@
  - Fix incorrect samplerate in reading m4a files on OS/X
 
 
-Changes in Sonic Visualiser 2.0 since the previous release 1.9:
+Changes in Sonic Visualiser 2.0 (July 2012) since the previous release 1.9:
 
  - Support 64-bit builds on OS/X (using CoreAudio instead of
    obsolete QuickTime audio file reader)
@@ -144,7 +206,7 @@
  - Add a fullscreen mode on the F11 key
 
 
-Changes in Sonic Visualiser 1.9 since the previous release 1.8:
+Changes in Sonic Visualiser 1.9 (Oct 2011) since the previous release 1.8:
 
  - Add session templates; save session as template; apply template to
    session
@@ -155,7 +217,7 @@
  - Various bug fixes.
 
 
-Changes in Sonic Visualiser 1.8 since the previous release 1.7.2:
+Changes in Sonic Visualiser 1.8 (Apr 2011) since the previous release 1.7.2:
 
  - Sonic Visualiser now registers as a file type handler on OS/X,
  providing better integration with the desktop generally (Dan Stowell)
@@ -185,7 +247,7 @@
  - A Czech translation is now included (thanks to Pavel Fric).
 
 
-Changes in Sonic Visualiser 1.7.2 since the previous release 1.7.1:
+Changes in Sonic Visualiser 1.7.2 (May 2010) since the previous release 1.7.1:
 
  - The time-value layer now has an origin line and an option to
  show derivatives (change from one point to the next) rather than
@@ -198,7 +260,7 @@
  fixed
 
 
-Changes in Sonic Visualiser 1.7.1 since the previous release 1.7:
+Changes in Sonic Visualiser 1.7.1 (Oct 2009) since the previous release 1.7:
 
  - The RDF importer does a better job of assigning labels to layers,
  layers to panes, and values to labelled regions
@@ -215,7 +277,7 @@
  - The Russian translation has been updated (thanks Alexandre)
 
 
-Changes in Sonic Visualiser 1.7 since the previous release 1.6:
+Changes in Sonic Visualiser 1.7 (Sep 2009) since the previous release 1.6:
 
  - A new "Insert Item At Selection" function on the Edit menu
  can be used to create Note and Region layer items whose time
@@ -230,7 +292,7 @@
 
  - Time values throughout the display may optionally be shown in
  seconds and frames at various frame rates
- 
+
  - A crash on exit in Windows has been fixed
 
  - A very unobtrusive user survey is now included
@@ -238,7 +300,7 @@
  - Various other bug fixes.
 
 
-Changes in Sonic Visualiser 1.6 since the previous release 1.5:
+Changes in Sonic Visualiser 1.6 (Jun 2009) since the previous release 1.5:
 
  - The Colour 3D Plot layer now supports logarithmic vertical
  scale and linear interpolation options.
@@ -252,7 +314,7 @@
  - Various other bug fixes.
 
 
-Changes in Sonic Visualiser 1.5 since the previous version 1.4:
+Changes in Sonic Visualiser 1.5 (Mar 2009) since the previous release 1.4:
 
  - You can now insert time instants, time values, and notes using
  a MIDI device during playback.  If a time value or note layer is
@@ -293,7 +355,7 @@
  been fixed.
 
 
-New features in Sonic Visualiser 1.4 since the previous version 1.3:
+Changes in Sonic Visualiser 1.4 (Dec 2008) since the previous release 1.3:
 
  - SV now has a Region layer type, used for display of features with
  durations.  It also supports Vamp v2.0 plugins that provide durations
@@ -323,7 +385,7 @@
  - Several crashes and other bugs have been fixed.
 
 
-Changes in Sonic Visualiser 1.3 since the previous version 1.2:
+Changes in Sonic Visualiser 1.3 (Jul 2008) since the previous release 1.2:
 
  - There is a new spreadsheet-style data viewer and editor for
  viewing and editing the data in some types of annotation layer.
@@ -342,7 +404,7 @@
  - Several other bug fixes.
 
 
-New features in Sonic Visualiser 1.2, since the previous version 1.0:
+Changes in Sonic Visualiser 1.2 (Feb 2008) since the previous release 1.0:
 
  - SV now supports time-alignment of multiple performances of a work
  loaded at the same time.  This option is enabled when the MATCH Vamp
--- a/README	Tue Jan 10 16:10:33 2017 +0000
+++ b/README	Tue Jan 10 16:21:32 2017 +0000
@@ -46,7 +46,7 @@
 Christian Landone, Mathieu Barthet, Dan Stowell, Jesus Corral Garcia,
 Matthias Mauch, and Craig Sapp.
 
-Code copyright 2005-2007 Chris Cannam and copyright 2006-2014 Queen
+Code copyright 2005-2007 Chris Cannam and copyright 2006-2017 Queen
 Mary, University of London, except where indicated in the individual
 source files.
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/base.pri	Tue Jan 10 16:21:32 2017 +0000
@@ -0,0 +1,67 @@
+
+SV_INCLUDEPATH = \
+        . \
+	bqvec \
+	bqvec/bqvec \
+	bqfft \
+	bqresample \
+	bqaudioio \
+	bqaudioio/bqaudioio \
+	piper-cpp \
+	checker \
+	checker/checker \
+	dataquay \
+	dataquay/dataquay \
+	svcore \
+	svcore/data \
+	svcore/plugin/api/alsa \
+	svgui \
+	svapp \
+	vamp-plugin-sdk
+
+DEPENDPATH += $$SV_INCLUDEPATH
+INCLUDEPATH += $$SV_INCLUDEPATH
+
+# Platform defines for RtMidi
+linux*:   DEFINES += __LINUX_ALSASEQ__
+macx*:    DEFINES += __MACOSX_CORE__
+win*:     DEFINES += __WINDOWS_MM__
+solaris*: DEFINES += __RTMIDI_DUMMY_ONLY__
+
+# Defines for Dataquay
+DEFINES += USE_SORD
+
+CONFIG += qt thread warn_on stl rtti exceptions c++11
+
+include(bq-files.pri)
+include(vamp-plugin-sdk-files.pri)
+include(svcore/files.pri)
+
+DATAQUAY_SOURCES=$$fromfile(dataquay/lib.pro, SOURCES)
+DATAQUAY_HEADERS=$$fromfile(dataquay/lib.pro, HEADERS)
+
+CHECKER_SOURCES=$$fromfile(checker/checker.pri, SOURCES)
+CHECKER_HEADERS=$$fromfile(checker/checker.pri, HEADERS)
+                 
+CLIENT_HEADERS=$$fromfile(piper-cpp/vamp-client/client.pro, HEADERS)
+
+for (file, BQ_SOURCES)       { SOURCES += $$file }
+for (file, BQ_HEADERS)       { HEADERS += $$file }
+
+for (file, VAMP_SOURCES)     { SOURCES += $$file }
+for (file, VAMP_HEADERS)     { HEADERS += $$file }
+
+for (file, DATAQUAY_SOURCES) { SOURCES += $$sprintf("dataquay/%1", $$file) }
+for (file, DATAQUAY_HEADERS) { HEADERS += $$sprintf("dataquay/%1", $$file) }
+
+for (file, CHECKER_SOURCES)  { SOURCES += $$sprintf("checker/%1",  $$file) }
+for (file, CHECKER_HEADERS)  { HEADERS += $$sprintf("checker/%1",  $$file) }
+
+for (file, SVCORE_SOURCES)   { SOURCES += $$sprintf("svcore/%1", $$file) }
+for (file, SVCORE_HEADERS)   { HEADERS += $$sprintf("svcore/%1", $$file) }
+             
+for (file, CLIENT_HEADERS) {
+    HEADERS += $$sprintf("piper-cpp/vamp-client/%1",  $$file)
+}
+    
+SOURCES += piper-cpp/vamp-capnp/piper-capnp.cpp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/bq-files.pri	Tue Jan 10 16:21:32 2017 +0000
@@ -0,0 +1,40 @@
+
+BQ_HEADERS += \
+	bqvec/bqvec/Allocators.h \
+	bqvec/bqvec/Barrier.h \
+	bqvec/bqvec/ComplexTypes.h \
+	bqvec/bqvec/Restrict.h \
+	bqvec/bqvec/RingBuffer.h \
+	bqvec/bqvec/VectorOpsComplex.h \
+	bqvec/bqvec/VectorOps.h \
+	bqvec/pommier/neon_mathfun.h \
+	bqvec/pommier/sse_mathfun.h \
+        bqfft/bqfft/FFT.h \
+	bqresample/bqresample/Resampler.h \
+	bqresample/speex/speex_resampler.h \
+	bqaudioio/bqaudioio/ApplicationPlaybackSource.h \
+	bqaudioio/bqaudioio/ApplicationRecordTarget.h \
+	bqaudioio/bqaudioio/AudioFactory.h \
+	bqaudioio/bqaudioio/ResamplerWrapper.h \
+	bqaudioio/bqaudioio/SystemAudioIO.h \
+	bqaudioio/bqaudioio/SystemPlaybackTarget.h \
+	bqaudioio/bqaudioio/SystemRecordSource.h \
+	bqaudioio/src/DynamicJACK.h \
+	bqaudioio/src/JACKAudioIO.h \
+	bqaudioio/src/PortAudioIO.h \
+	bqaudioio/src/PulseAudioIO.h
+
+BQ_SOURCES += \
+	bqvec/src/Allocators.cpp \
+	bqvec/src/Barrier.cpp \
+	bqvec/src/VectorOpsComplex.cpp \
+        bqfft/src/FFT.cpp \
+	bqresample/src/Resampler.cpp \
+	bqaudioio/src/AudioFactory.cpp \
+	bqaudioio/src/JACKAudioIO.cpp \
+	bqaudioio/src/PortAudioIO.cpp \
+	bqaudioio/src/PulseAudioIO.cpp \
+	bqaudioio/src/ResamplerWrapper.cpp \
+	bqaudioio/src/SystemPlaybackTarget.cpp \
+	bqaudioio/src/SystemRecordSource.cpp
+
--- a/config.pri.in	Tue Jan 10 16:10:33 2017 +0000
+++ b/config.pri.in	Tue Jan 10 16:21:32 2017 +0000
@@ -11,10 +11,12 @@
 QMAKE_CXXFLAGS += @CXXFLAGS@
 QMAKE_LFLAGS += @LDFLAGS@
 
-linux*:LIBS += -lasound
+linux*:LIBS += -lasound -ldl
 
 macx*:DEFINES += HAVE_COREAUDIO
 macx*:LIBS += -framework CoreAudio -framework CoreMidi -framework AudioUnit -framework AudioToolbox -framework CoreFoundation -framework CoreServices
 
 LIBS += @LIBS@
 
+DEFINES += HAVE_PIPER HAVE_PLUGIN_CHECKER_HELPER HAVE_POSIX_MEMALIGN
+
--- a/configure	Tue Jan 10 16:10:33 2017 +0000
+++ b/configure	Tue Jan 10 16:21:32 2017 +0000
@@ -620,10 +620,8 @@
 # include <unistd.h>
 #endif"
 
-enable_option_checking=no
 ac_subst_vars='LTLIBOBJS
 LIBOBJS
-subdirs
 QMAKE_CONFIG
 HAVES
 CXXFLAGS_MINIMAL
@@ -648,22 +646,22 @@
 libpulse_CFLAGS
 JACK_LIBS
 JACK_CFLAGS
-portaudio_2_0_LIBS
-portaudio_2_0_CFLAGS
+portaudio_LIBS
+portaudio_CFLAGS
 liblo_LIBS
 liblo_CFLAGS
+kj_LIBS
+kj_CFLAGS
+capnp_LIBS
+capnp_CFLAGS
 serd_LIBS
 serd_CFLAGS
 sord_LIBS
 sord_CFLAGS
 rubberband_LIBS
 rubberband_CFLAGS
-vamphostsdk_LIBS
-vamphostsdk_CFLAGS
-vamp_LIBS
-vamp_CFLAGS
-samplerate_LIBS
-samplerate_CFLAGS
+libsamplerate_LIBS
+libsamplerate_CFLAGS
 sndfile_LIBS
 sndfile_CFLAGS
 fftw3f_LIBS
@@ -760,22 +758,22 @@
 fftw3f_LIBS
 sndfile_CFLAGS
 sndfile_LIBS
-samplerate_CFLAGS
-samplerate_LIBS
-vamp_CFLAGS
-vamp_LIBS
-vamphostsdk_CFLAGS
-vamphostsdk_LIBS
+libsamplerate_CFLAGS
+libsamplerate_LIBS
 rubberband_CFLAGS
 rubberband_LIBS
 sord_CFLAGS
 sord_LIBS
 serd_CFLAGS
 serd_LIBS
+capnp_CFLAGS
+capnp_LIBS
+kj_CFLAGS
+kj_LIBS
 liblo_CFLAGS
 liblo_LIBS
-portaudio_2_0_CFLAGS
-portaudio_2_0_LIBS
+portaudio_CFLAGS
+portaudio_LIBS
 JACK_CFLAGS
 JACK_LIBS
 libpulse_CFLAGS
@@ -792,7 +790,7 @@
 id3tag_LIBS
 X11_CFLAGS
 X11_LIBS'
-ac_subdirs_all='svcore svgui svapp'
+
 
 # Initialize some variables set by options.
 ac_init_help=
@@ -1429,16 +1427,10 @@
               C compiler flags for sndfile, overriding pkg-config
   sndfile_LIBS
               linker flags for sndfile, overriding pkg-config
-  samplerate_CFLAGS
-              C compiler flags for samplerate, overriding pkg-config
-  samplerate_LIBS
-              linker flags for samplerate, overriding pkg-config
-  vamp_CFLAGS C compiler flags for vamp, overriding pkg-config
-  vamp_LIBS   linker flags for vamp, overriding pkg-config
-  vamphostsdk_CFLAGS
-              C compiler flags for vamphostsdk, overriding pkg-config
-  vamphostsdk_LIBS
-              linker flags for vamphostsdk, overriding pkg-config
+  libsamplerate_CFLAGS
+              C compiler flags for libsamplerate, overriding pkg-config
+  libsamplerate_LIBS
+              linker flags for libsamplerate, overriding pkg-config
   rubberband_CFLAGS
               C compiler flags for rubberband, overriding pkg-config
   rubberband_LIBS
@@ -1447,13 +1439,18 @@
   sord_LIBS   linker flags for sord, overriding pkg-config
   serd_CFLAGS C compiler flags for serd, overriding pkg-config
   serd_LIBS   linker flags for serd, overriding pkg-config
+  capnp_CFLAGS
+              C compiler flags for capnp, overriding pkg-config
+  capnp_LIBS  linker flags for capnp, overriding pkg-config
+  kj_CFLAGS   C compiler flags for kj, overriding pkg-config
+  kj_LIBS     linker flags for kj, overriding pkg-config
   liblo_CFLAGS
               C compiler flags for liblo, overriding pkg-config
   liblo_LIBS  linker flags for liblo, overriding pkg-config
-  portaudio_2_0_CFLAGS
-              C compiler flags for portaudio_2_0, overriding pkg-config
-  portaudio_2_0_LIBS
-              linker flags for portaudio_2_0, overriding pkg-config
+  portaudio_CFLAGS
+              C compiler flags for portaudio, overriding pkg-config
+  portaudio_LIBS
+              linker flags for portaudio, overriding pkg-config
   JACK_CFLAGS C compiler flags for JACK, overriding pkg-config
   JACK_LIBS   linker flags for JACK, overriding pkg-config
   libpulse_CFLAGS
@@ -4420,7 +4417,7 @@
 
 
 SV_DEFINES_DEBUG="-DDEBUG -DBUILD_DEBUG -DWANT_TIMING"
-SV_DEFINES_RELEASE="-DNDEBUG -DBUILD_RELEASE -DNO_TIMING"
+SV_DEFINES_RELEASE="-DNDEBUG -DBUILD_RELEASE -DNO_TIMING -DNO_HIT_COUNTS"
 SV_DEFINES_MINIMAL="$SV_DEFINES_RELEASE"
 
 # Now we have: USER_CXXFLAGS contains any flags the user set
@@ -4435,7 +4432,7 @@
 if test "x$GCC" = "xyes"; then
    	CXXFLAGS_ANY="-Wall -Wextra -Woverloaded-virtual -Wformat-nonliteral -Wformat-security -Winit-self -Wswitch-enum -Wconversion -pipe"
         CXXFLAGS_DEBUG="$CXXFLAGS_ANY -g -Werror"
-   	CXXFLAGS_RELEASE="$CXXFLAGS_ANY -g0 -O2"
+   	CXXFLAGS_RELEASE="$CXXFLAGS_ANY -g0 -O3 -ffast-math"
    	CXXFLAGS_MINIMAL="$CXXFLAGS_ANY -g0 -O0"
 fi
 
@@ -5087,18 +5084,18 @@
 fi
 
 
-SV_MODULE_MODULE=samplerate
+SV_MODULE_MODULE=libsamplerate
 SV_MODULE_VERSION_TEST="samplerate >= 0.1.2"
 SV_MODULE_HEADER=samplerate.h
 SV_MODULE_LIB=samplerate
 SV_MODULE_FUNC=src_new
-SV_MODULE_HAVE=HAVE_$(echo samplerate | tr 'a-z' 'A-Z')
+SV_MODULE_HAVE=HAVE_$(echo libsamplerate | tr 'a-z' 'A-Z')
 SV_MODULE_FAILED=1
-if test -n "$samplerate_LIBS" ; then
+if test -n "$libsamplerate_LIBS" ; then
    { $as_echo "$as_me:${as_lineno-$LINENO}: User set ${SV_MODULE_MODULE}_LIBS explicitly, skipping test for $SV_MODULE_MODULE" >&5
 $as_echo "$as_me: User set ${SV_MODULE_MODULE}_LIBS explicitly, skipping test for $SV_MODULE_MODULE" >&6;}
-   CXXFLAGS="$CXXFLAGS $samplerate_CFLAGS"
-   LIBS="$LIBS $samplerate_LIBS"
+   CXXFLAGS="$CXXFLAGS $libsamplerate_CFLAGS"
+   LIBS="$LIBS $libsamplerate_LIBS"
    SV_MODULE_FAILED=""
 fi
 if test -z "$SV_MODULE_VERSION_TEST" ; then
@@ -5107,11 +5104,11 @@
 if test -n "$SV_MODULE_FAILED" && test -n "$PKG_CONFIG"; then
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for samplerate" >&5
-$as_echo_n "checking for samplerate... " >&6; }
-
-if test -n "$samplerate_CFLAGS"; then
-    pkg_cv_samplerate_CFLAGS="$samplerate_CFLAGS"
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for libsamplerate" >&5
+$as_echo_n "checking for libsamplerate... " >&6; }
+
+if test -n "$libsamplerate_CFLAGS"; then
+    pkg_cv_libsamplerate_CFLAGS="$libsamplerate_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
     { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$SV_MODULE_VERSION_TEST\""; } >&5
@@ -5119,7 +5116,7 @@
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_samplerate_CFLAGS=`$PKG_CONFIG --cflags "$SV_MODULE_VERSION_TEST" 2>/dev/null`
+  pkg_cv_libsamplerate_CFLAGS=`$PKG_CONFIG --cflags "$SV_MODULE_VERSION_TEST" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
@@ -5127,8 +5124,8 @@
  else
     pkg_failed=untried
 fi
-if test -n "$samplerate_LIBS"; then
-    pkg_cv_samplerate_LIBS="$samplerate_LIBS"
+if test -n "$libsamplerate_LIBS"; then
+    pkg_cv_libsamplerate_LIBS="$libsamplerate_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
     { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$SV_MODULE_VERSION_TEST\""; } >&5
@@ -5136,7 +5133,7 @@
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_samplerate_LIBS=`$PKG_CONFIG --libs "$SV_MODULE_VERSION_TEST" 2>/dev/null`
+  pkg_cv_libsamplerate_LIBS=`$PKG_CONFIG --libs "$SV_MODULE_VERSION_TEST" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
@@ -5157,12 +5154,12 @@
         _pkg_short_errors_supported=no
 fi
         if test $_pkg_short_errors_supported = yes; then
-	        samplerate_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
+	        libsamplerate_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
         else
-	        samplerate_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
+	        libsamplerate_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
         fi
 	# Put the nasty error message in config.log where it belongs
-	echo "$samplerate_PKG_ERRORS" >&5
+	echo "$libsamplerate_PKG_ERRORS" >&5
 
 	{ $as_echo "$as_me:${as_lineno-$LINENO}: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&5
 $as_echo "$as_me: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&6;}
@@ -5172,11 +5169,11 @@
 	{ $as_echo "$as_me:${as_lineno-$LINENO}: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&5
 $as_echo "$as_me: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&6;}
 else
-	samplerate_CFLAGS=$pkg_cv_samplerate_CFLAGS
-	samplerate_LIBS=$pkg_cv_samplerate_LIBS
+	libsamplerate_CFLAGS=$pkg_cv_libsamplerate_CFLAGS
+	libsamplerate_LIBS=$pkg_cv_libsamplerate_LIBS
         { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	HAVES="$HAVES $SV_MODULE_HAVE";CXXFLAGS="$CXXFLAGS $samplerate_CFLAGS";LIBS="$LIBS $samplerate_LIBS";SV_MODULE_FAILED=""
+	HAVES="$HAVES $SV_MODULE_HAVE";CXXFLAGS="$CXXFLAGS $libsamplerate_CFLAGS";LIBS="$LIBS $libsamplerate_LIBS";SV_MODULE_FAILED=""
 fi
 fi
 if test -n "$SV_MODULE_FAILED"; then
@@ -5238,18 +5235,18 @@
 fi
 
 
-SV_MODULE_MODULE=vamp
-SV_MODULE_VERSION_TEST="vamp >= 2.1"
-SV_MODULE_HEADER=vamp/vamp.h
-SV_MODULE_LIB=
-SV_MODULE_FUNC=
-SV_MODULE_HAVE=HAVE_$(echo vamp | tr 'a-z' 'A-Z')
+SV_MODULE_MODULE=rubberband
+SV_MODULE_VERSION_TEST="rubberband"
+SV_MODULE_HEADER=rubberband/RubberBandStretcher.h
+SV_MODULE_LIB=rubberband
+SV_MODULE_FUNC=rubberband_new
+SV_MODULE_HAVE=HAVE_$(echo rubberband | tr 'a-z' 'A-Z')
 SV_MODULE_FAILED=1
-if test -n "$vamp_LIBS" ; then
+if test -n "$rubberband_LIBS" ; then
    { $as_echo "$as_me:${as_lineno-$LINENO}: User set ${SV_MODULE_MODULE}_LIBS explicitly, skipping test for $SV_MODULE_MODULE" >&5
 $as_echo "$as_me: User set ${SV_MODULE_MODULE}_LIBS explicitly, skipping test for $SV_MODULE_MODULE" >&6;}
-   CXXFLAGS="$CXXFLAGS $vamp_CFLAGS"
-   LIBS="$LIBS $vamp_LIBS"
+   CXXFLAGS="$CXXFLAGS $rubberband_CFLAGS"
+   LIBS="$LIBS $rubberband_LIBS"
    SV_MODULE_FAILED=""
 fi
 if test -z "$SV_MODULE_VERSION_TEST" ; then
@@ -5258,11 +5255,11 @@
 if test -n "$SV_MODULE_FAILED" && test -n "$PKG_CONFIG"; then
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for vamp" >&5
-$as_echo_n "checking for vamp... " >&6; }
-
-if test -n "$vamp_CFLAGS"; then
-    pkg_cv_vamp_CFLAGS="$vamp_CFLAGS"
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for rubberband" >&5
+$as_echo_n "checking for rubberband... " >&6; }
+
+if test -n "$rubberband_CFLAGS"; then
+    pkg_cv_rubberband_CFLAGS="$rubberband_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
     { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$SV_MODULE_VERSION_TEST\""; } >&5
@@ -5270,7 +5267,7 @@
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_vamp_CFLAGS=`$PKG_CONFIG --cflags "$SV_MODULE_VERSION_TEST" 2>/dev/null`
+  pkg_cv_rubberband_CFLAGS=`$PKG_CONFIG --cflags "$SV_MODULE_VERSION_TEST" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
@@ -5278,8 +5275,8 @@
  else
     pkg_failed=untried
 fi
-if test -n "$vamp_LIBS"; then
-    pkg_cv_vamp_LIBS="$vamp_LIBS"
+if test -n "$rubberband_LIBS"; then
+    pkg_cv_rubberband_LIBS="$rubberband_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
     { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$SV_MODULE_VERSION_TEST\""; } >&5
@@ -5287,7 +5284,7 @@
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_vamp_LIBS=`$PKG_CONFIG --libs "$SV_MODULE_VERSION_TEST" 2>/dev/null`
+  pkg_cv_rubberband_LIBS=`$PKG_CONFIG --libs "$SV_MODULE_VERSION_TEST" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
@@ -5308,12 +5305,12 @@
         _pkg_short_errors_supported=no
 fi
         if test $_pkg_short_errors_supported = yes; then
-	        vamp_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
+	        rubberband_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
         else
-	        vamp_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
+	        rubberband_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
         fi
 	# Put the nasty error message in config.log where it belongs
-	echo "$vamp_PKG_ERRORS" >&5
+	echo "$rubberband_PKG_ERRORS" >&5
 
 	{ $as_echo "$as_me:${as_lineno-$LINENO}: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&5
 $as_echo "$as_me: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&6;}
@@ -5323,11 +5320,11 @@
 	{ $as_echo "$as_me:${as_lineno-$LINENO}: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&5
 $as_echo "$as_me: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&6;}
 else
-	vamp_CFLAGS=$pkg_cv_vamp_CFLAGS
-	vamp_LIBS=$pkg_cv_vamp_LIBS
+	rubberband_CFLAGS=$pkg_cv_rubberband_CFLAGS
+	rubberband_LIBS=$pkg_cv_rubberband_LIBS
         { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	HAVES="$HAVES $SV_MODULE_HAVE";CXXFLAGS="$CXXFLAGS $vamp_CFLAGS";LIBS="$LIBS $vamp_LIBS";SV_MODULE_FAILED=""
+	HAVES="$HAVES $SV_MODULE_HAVE";CXXFLAGS="$CXXFLAGS $rubberband_CFLAGS";LIBS="$LIBS $rubberband_LIBS";SV_MODULE_FAILED=""
 fi
 fi
 if test -n "$SV_MODULE_FAILED"; then
@@ -5389,18 +5386,18 @@
 fi
 
 
-SV_MODULE_MODULE=vamphostsdk
-SV_MODULE_VERSION_TEST="vamp-hostsdk >= 2.5"
-SV_MODULE_HEADER=vamp-hostsdk/PluginLoader.h
-SV_MODULE_LIB=vamp-hostsdk
-SV_MODULE_FUNC=libvamphostsdk_v_2_5_present
-SV_MODULE_HAVE=HAVE_$(echo vamphostsdk | tr 'a-z' 'A-Z')
+SV_MODULE_MODULE=sord
+SV_MODULE_VERSION_TEST="sord-0 >= 0.5"
+SV_MODULE_HEADER=sord/sord.h
+SV_MODULE_LIB=sord-0
+SV_MODULE_FUNC=sord_world_new
+SV_MODULE_HAVE=HAVE_$(echo sord | tr 'a-z' 'A-Z')
 SV_MODULE_FAILED=1
-if test -n "$vamphostsdk_LIBS" ; then
+if test -n "$sord_LIBS" ; then
    { $as_echo "$as_me:${as_lineno-$LINENO}: User set ${SV_MODULE_MODULE}_LIBS explicitly, skipping test for $SV_MODULE_MODULE" >&5
 $as_echo "$as_me: User set ${SV_MODULE_MODULE}_LIBS explicitly, skipping test for $SV_MODULE_MODULE" >&6;}
-   CXXFLAGS="$CXXFLAGS $vamphostsdk_CFLAGS"
-   LIBS="$LIBS $vamphostsdk_LIBS"
+   CXXFLAGS="$CXXFLAGS $sord_CFLAGS"
+   LIBS="$LIBS $sord_LIBS"
    SV_MODULE_FAILED=""
 fi
 if test -z "$SV_MODULE_VERSION_TEST" ; then
@@ -5409,11 +5406,11 @@
 if test -n "$SV_MODULE_FAILED" && test -n "$PKG_CONFIG"; then
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for vamphostsdk" >&5
-$as_echo_n "checking for vamphostsdk... " >&6; }
-
-if test -n "$vamphostsdk_CFLAGS"; then
-    pkg_cv_vamphostsdk_CFLAGS="$vamphostsdk_CFLAGS"
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sord" >&5
+$as_echo_n "checking for sord... " >&6; }
+
+if test -n "$sord_CFLAGS"; then
+    pkg_cv_sord_CFLAGS="$sord_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
     { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$SV_MODULE_VERSION_TEST\""; } >&5
@@ -5421,7 +5418,7 @@
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_vamphostsdk_CFLAGS=`$PKG_CONFIG --cflags "$SV_MODULE_VERSION_TEST" 2>/dev/null`
+  pkg_cv_sord_CFLAGS=`$PKG_CONFIG --cflags "$SV_MODULE_VERSION_TEST" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
@@ -5429,8 +5426,8 @@
  else
     pkg_failed=untried
 fi
-if test -n "$vamphostsdk_LIBS"; then
-    pkg_cv_vamphostsdk_LIBS="$vamphostsdk_LIBS"
+if test -n "$sord_LIBS"; then
+    pkg_cv_sord_LIBS="$sord_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
     { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$SV_MODULE_VERSION_TEST\""; } >&5
@@ -5438,7 +5435,7 @@
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_vamphostsdk_LIBS=`$PKG_CONFIG --libs "$SV_MODULE_VERSION_TEST" 2>/dev/null`
+  pkg_cv_sord_LIBS=`$PKG_CONFIG --libs "$SV_MODULE_VERSION_TEST" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
@@ -5459,12 +5456,12 @@
         _pkg_short_errors_supported=no
 fi
         if test $_pkg_short_errors_supported = yes; then
-	        vamphostsdk_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
+	        sord_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
         else
-	        vamphostsdk_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
+	        sord_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
         fi
 	# Put the nasty error message in config.log where it belongs
-	echo "$vamphostsdk_PKG_ERRORS" >&5
+	echo "$sord_PKG_ERRORS" >&5
 
 	{ $as_echo "$as_me:${as_lineno-$LINENO}: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&5
 $as_echo "$as_me: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&6;}
@@ -5474,11 +5471,11 @@
 	{ $as_echo "$as_me:${as_lineno-$LINENO}: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&5
 $as_echo "$as_me: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&6;}
 else
-	vamphostsdk_CFLAGS=$pkg_cv_vamphostsdk_CFLAGS
-	vamphostsdk_LIBS=$pkg_cv_vamphostsdk_LIBS
+	sord_CFLAGS=$pkg_cv_sord_CFLAGS
+	sord_LIBS=$pkg_cv_sord_LIBS
         { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	HAVES="$HAVES $SV_MODULE_HAVE";CXXFLAGS="$CXXFLAGS $vamphostsdk_CFLAGS";LIBS="$LIBS $vamphostsdk_LIBS";SV_MODULE_FAILED=""
+	HAVES="$HAVES $SV_MODULE_HAVE";CXXFLAGS="$CXXFLAGS $sord_CFLAGS";LIBS="$LIBS $sord_LIBS";SV_MODULE_FAILED=""
 fi
 fi
 if test -n "$SV_MODULE_FAILED"; then
@@ -5540,18 +5537,18 @@
 fi
 
 
-SV_MODULE_MODULE=rubberband
-SV_MODULE_VERSION_TEST="rubberband"
-SV_MODULE_HEADER=rubberband/RubberBandStretcher.h
-SV_MODULE_LIB=rubberband
-SV_MODULE_FUNC=rubberband_new
-SV_MODULE_HAVE=HAVE_$(echo rubberband | tr 'a-z' 'A-Z')
+SV_MODULE_MODULE=serd
+SV_MODULE_VERSION_TEST="serd-0 >= 0.5"
+SV_MODULE_HEADER=serd/serd.h
+SV_MODULE_LIB=serd-0
+SV_MODULE_FUNC=serd_reader_read_file
+SV_MODULE_HAVE=HAVE_$(echo serd | tr 'a-z' 'A-Z')
 SV_MODULE_FAILED=1
-if test -n "$rubberband_LIBS" ; then
+if test -n "$serd_LIBS" ; then
    { $as_echo "$as_me:${as_lineno-$LINENO}: User set ${SV_MODULE_MODULE}_LIBS explicitly, skipping test for $SV_MODULE_MODULE" >&5
 $as_echo "$as_me: User set ${SV_MODULE_MODULE}_LIBS explicitly, skipping test for $SV_MODULE_MODULE" >&6;}
-   CXXFLAGS="$CXXFLAGS $rubberband_CFLAGS"
-   LIBS="$LIBS $rubberband_LIBS"
+   CXXFLAGS="$CXXFLAGS $serd_CFLAGS"
+   LIBS="$LIBS $serd_LIBS"
    SV_MODULE_FAILED=""
 fi
 if test -z "$SV_MODULE_VERSION_TEST" ; then
@@ -5560,11 +5557,11 @@
 if test -n "$SV_MODULE_FAILED" && test -n "$PKG_CONFIG"; then
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for rubberband" >&5
-$as_echo_n "checking for rubberband... " >&6; }
-
-if test -n "$rubberband_CFLAGS"; then
-    pkg_cv_rubberband_CFLAGS="$rubberband_CFLAGS"
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for serd" >&5
+$as_echo_n "checking for serd... " >&6; }
+
+if test -n "$serd_CFLAGS"; then
+    pkg_cv_serd_CFLAGS="$serd_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
     { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$SV_MODULE_VERSION_TEST\""; } >&5
@@ -5572,7 +5569,7 @@
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_rubberband_CFLAGS=`$PKG_CONFIG --cflags "$SV_MODULE_VERSION_TEST" 2>/dev/null`
+  pkg_cv_serd_CFLAGS=`$PKG_CONFIG --cflags "$SV_MODULE_VERSION_TEST" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
@@ -5580,8 +5577,8 @@
  else
     pkg_failed=untried
 fi
-if test -n "$rubberband_LIBS"; then
-    pkg_cv_rubberband_LIBS="$rubberband_LIBS"
+if test -n "$serd_LIBS"; then
+    pkg_cv_serd_LIBS="$serd_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
     { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$SV_MODULE_VERSION_TEST\""; } >&5
@@ -5589,7 +5586,7 @@
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_rubberband_LIBS=`$PKG_CONFIG --libs "$SV_MODULE_VERSION_TEST" 2>/dev/null`
+  pkg_cv_serd_LIBS=`$PKG_CONFIG --libs "$SV_MODULE_VERSION_TEST" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
@@ -5610,12 +5607,12 @@
         _pkg_short_errors_supported=no
 fi
         if test $_pkg_short_errors_supported = yes; then
-	        rubberband_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
+	        serd_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
         else
-	        rubberband_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
+	        serd_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
         fi
 	# Put the nasty error message in config.log where it belongs
-	echo "$rubberband_PKG_ERRORS" >&5
+	echo "$serd_PKG_ERRORS" >&5
 
 	{ $as_echo "$as_me:${as_lineno-$LINENO}: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&5
 $as_echo "$as_me: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&6;}
@@ -5625,11 +5622,11 @@
 	{ $as_echo "$as_me:${as_lineno-$LINENO}: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&5
 $as_echo "$as_me: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&6;}
 else
-	rubberband_CFLAGS=$pkg_cv_rubberband_CFLAGS
-	rubberband_LIBS=$pkg_cv_rubberband_LIBS
+	serd_CFLAGS=$pkg_cv_serd_CFLAGS
+	serd_LIBS=$pkg_cv_serd_LIBS
         { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	HAVES="$HAVES $SV_MODULE_HAVE";CXXFLAGS="$CXXFLAGS $rubberband_CFLAGS";LIBS="$LIBS $rubberband_LIBS";SV_MODULE_FAILED=""
+	HAVES="$HAVES $SV_MODULE_HAVE";CXXFLAGS="$CXXFLAGS $serd_CFLAGS";LIBS="$LIBS $serd_LIBS";SV_MODULE_FAILED=""
 fi
 fi
 if test -n "$SV_MODULE_FAILED"; then
@@ -5691,18 +5688,18 @@
 fi
 
 
-SV_MODULE_MODULE=sord
-SV_MODULE_VERSION_TEST="sord-0 >= 0.5"
-SV_MODULE_HEADER=sord/sord.h
-SV_MODULE_LIB=sord-0
-SV_MODULE_FUNC=sord_world_new
-SV_MODULE_HAVE=HAVE_$(echo sord | tr 'a-z' 'A-Z')
+SV_MODULE_MODULE=capnp
+SV_MODULE_VERSION_TEST="capnp >= 0.6"
+SV_MODULE_HEADER=capnp/common.h
+SV_MODULE_LIB=capnp
+SV_MODULE_FUNC=
+SV_MODULE_HAVE=HAVE_$(echo capnp | tr 'a-z' 'A-Z')
 SV_MODULE_FAILED=1
-if test -n "$sord_LIBS" ; then
+if test -n "$capnp_LIBS" ; then
    { $as_echo "$as_me:${as_lineno-$LINENO}: User set ${SV_MODULE_MODULE}_LIBS explicitly, skipping test for $SV_MODULE_MODULE" >&5
 $as_echo "$as_me: User set ${SV_MODULE_MODULE}_LIBS explicitly, skipping test for $SV_MODULE_MODULE" >&6;}
-   CXXFLAGS="$CXXFLAGS $sord_CFLAGS"
-   LIBS="$LIBS $sord_LIBS"
+   CXXFLAGS="$CXXFLAGS $capnp_CFLAGS"
+   LIBS="$LIBS $capnp_LIBS"
    SV_MODULE_FAILED=""
 fi
 if test -z "$SV_MODULE_VERSION_TEST" ; then
@@ -5711,11 +5708,11 @@
 if test -n "$SV_MODULE_FAILED" && test -n "$PKG_CONFIG"; then
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sord" >&5
-$as_echo_n "checking for sord... " >&6; }
-
-if test -n "$sord_CFLAGS"; then
-    pkg_cv_sord_CFLAGS="$sord_CFLAGS"
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for capnp" >&5
+$as_echo_n "checking for capnp... " >&6; }
+
+if test -n "$capnp_CFLAGS"; then
+    pkg_cv_capnp_CFLAGS="$capnp_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
     { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$SV_MODULE_VERSION_TEST\""; } >&5
@@ -5723,7 +5720,7 @@
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_sord_CFLAGS=`$PKG_CONFIG --cflags "$SV_MODULE_VERSION_TEST" 2>/dev/null`
+  pkg_cv_capnp_CFLAGS=`$PKG_CONFIG --cflags "$SV_MODULE_VERSION_TEST" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
@@ -5731,8 +5728,8 @@
  else
     pkg_failed=untried
 fi
-if test -n "$sord_LIBS"; then
-    pkg_cv_sord_LIBS="$sord_LIBS"
+if test -n "$capnp_LIBS"; then
+    pkg_cv_capnp_LIBS="$capnp_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
     { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$SV_MODULE_VERSION_TEST\""; } >&5
@@ -5740,7 +5737,7 @@
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_sord_LIBS=`$PKG_CONFIG --libs "$SV_MODULE_VERSION_TEST" 2>/dev/null`
+  pkg_cv_capnp_LIBS=`$PKG_CONFIG --libs "$SV_MODULE_VERSION_TEST" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
@@ -5761,12 +5758,12 @@
         _pkg_short_errors_supported=no
 fi
         if test $_pkg_short_errors_supported = yes; then
-	        sord_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
+	        capnp_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
         else
-	        sord_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
+	        capnp_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
         fi
 	# Put the nasty error message in config.log where it belongs
-	echo "$sord_PKG_ERRORS" >&5
+	echo "$capnp_PKG_ERRORS" >&5
 
 	{ $as_echo "$as_me:${as_lineno-$LINENO}: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&5
 $as_echo "$as_me: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&6;}
@@ -5776,11 +5773,11 @@
 	{ $as_echo "$as_me:${as_lineno-$LINENO}: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&5
 $as_echo "$as_me: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&6;}
 else
-	sord_CFLAGS=$pkg_cv_sord_CFLAGS
-	sord_LIBS=$pkg_cv_sord_LIBS
+	capnp_CFLAGS=$pkg_cv_capnp_CFLAGS
+	capnp_LIBS=$pkg_cv_capnp_LIBS
         { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	HAVES="$HAVES $SV_MODULE_HAVE";CXXFLAGS="$CXXFLAGS $sord_CFLAGS";LIBS="$LIBS $sord_LIBS";SV_MODULE_FAILED=""
+	HAVES="$HAVES $SV_MODULE_HAVE";CXXFLAGS="$CXXFLAGS $capnp_CFLAGS";LIBS="$LIBS $capnp_LIBS";SV_MODULE_FAILED=""
 fi
 fi
 if test -n "$SV_MODULE_FAILED"; then
@@ -5842,18 +5839,18 @@
 fi
 
 
-SV_MODULE_MODULE=serd
-SV_MODULE_VERSION_TEST="serd-0 >= 0.5"
-SV_MODULE_HEADER=serd/serd.h
-SV_MODULE_LIB=serd-0
-SV_MODULE_FUNC=serd_reader_read_file
-SV_MODULE_HAVE=HAVE_$(echo serd | tr 'a-z' 'A-Z')
+SV_MODULE_MODULE=kj
+SV_MODULE_VERSION_TEST="kj >= 0.6"
+SV_MODULE_HEADER=kj/common.h
+SV_MODULE_LIB=kj
+SV_MODULE_FUNC=
+SV_MODULE_HAVE=HAVE_$(echo kj | tr 'a-z' 'A-Z')
 SV_MODULE_FAILED=1
-if test -n "$serd_LIBS" ; then
+if test -n "$kj_LIBS" ; then
    { $as_echo "$as_me:${as_lineno-$LINENO}: User set ${SV_MODULE_MODULE}_LIBS explicitly, skipping test for $SV_MODULE_MODULE" >&5
 $as_echo "$as_me: User set ${SV_MODULE_MODULE}_LIBS explicitly, skipping test for $SV_MODULE_MODULE" >&6;}
-   CXXFLAGS="$CXXFLAGS $serd_CFLAGS"
-   LIBS="$LIBS $serd_LIBS"
+   CXXFLAGS="$CXXFLAGS $kj_CFLAGS"
+   LIBS="$LIBS $kj_LIBS"
    SV_MODULE_FAILED=""
 fi
 if test -z "$SV_MODULE_VERSION_TEST" ; then
@@ -5862,11 +5859,11 @@
 if test -n "$SV_MODULE_FAILED" && test -n "$PKG_CONFIG"; then
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for serd" >&5
-$as_echo_n "checking for serd... " >&6; }
-
-if test -n "$serd_CFLAGS"; then
-    pkg_cv_serd_CFLAGS="$serd_CFLAGS"
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for kj" >&5
+$as_echo_n "checking for kj... " >&6; }
+
+if test -n "$kj_CFLAGS"; then
+    pkg_cv_kj_CFLAGS="$kj_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
     { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$SV_MODULE_VERSION_TEST\""; } >&5
@@ -5874,7 +5871,7 @@
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_serd_CFLAGS=`$PKG_CONFIG --cflags "$SV_MODULE_VERSION_TEST" 2>/dev/null`
+  pkg_cv_kj_CFLAGS=`$PKG_CONFIG --cflags "$SV_MODULE_VERSION_TEST" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
@@ -5882,8 +5879,8 @@
  else
     pkg_failed=untried
 fi
-if test -n "$serd_LIBS"; then
-    pkg_cv_serd_LIBS="$serd_LIBS"
+if test -n "$kj_LIBS"; then
+    pkg_cv_kj_LIBS="$kj_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
     { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$SV_MODULE_VERSION_TEST\""; } >&5
@@ -5891,7 +5888,7 @@
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_serd_LIBS=`$PKG_CONFIG --libs "$SV_MODULE_VERSION_TEST" 2>/dev/null`
+  pkg_cv_kj_LIBS=`$PKG_CONFIG --libs "$SV_MODULE_VERSION_TEST" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
@@ -5912,12 +5909,12 @@
         _pkg_short_errors_supported=no
 fi
         if test $_pkg_short_errors_supported = yes; then
-	        serd_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
+	        kj_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
         else
-	        serd_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
+	        kj_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
         fi
 	# Put the nasty error message in config.log where it belongs
-	echo "$serd_PKG_ERRORS" >&5
+	echo "$kj_PKG_ERRORS" >&5
 
 	{ $as_echo "$as_me:${as_lineno-$LINENO}: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&5
 $as_echo "$as_me: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&6;}
@@ -5927,11 +5924,11 @@
 	{ $as_echo "$as_me:${as_lineno-$LINENO}: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&5
 $as_echo "$as_me: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&6;}
 else
-	serd_CFLAGS=$pkg_cv_serd_CFLAGS
-	serd_LIBS=$pkg_cv_serd_LIBS
+	kj_CFLAGS=$pkg_cv_kj_CFLAGS
+	kj_LIBS=$pkg_cv_kj_LIBS
         { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	HAVES="$HAVES $SV_MODULE_HAVE";CXXFLAGS="$CXXFLAGS $serd_CFLAGS";LIBS="$LIBS $serd_LIBS";SV_MODULE_FAILED=""
+	HAVES="$HAVES $SV_MODULE_HAVE";CXXFLAGS="$CXXFLAGS $kj_CFLAGS";LIBS="$LIBS $kj_LIBS";SV_MODULE_FAILED=""
 fi
 fi
 if test -n "$SV_MODULE_FAILED"; then
@@ -6149,18 +6146,18 @@
 fi
 
 
-SV_MODULE_MODULE=portaudio_2_0
+SV_MODULE_MODULE=portaudio
 SV_MODULE_VERSION_TEST="portaudio-2.0 >= 19"
 SV_MODULE_HEADER=portaudio.h
 SV_MODULE_LIB=portaudio
 SV_MODULE_FUNC=Pa_IsFormatSupported
-SV_MODULE_HAVE=HAVE_$(echo portaudio_2_0 | tr 'a-z' 'A-Z')
+SV_MODULE_HAVE=HAVE_$(echo portaudio | tr 'a-z' 'A-Z')
 SV_MODULE_FAILED=1
-if test -n "$portaudio_2_0_LIBS" ; then
+if test -n "$portaudio_LIBS" ; then
    { $as_echo "$as_me:${as_lineno-$LINENO}: User set ${SV_MODULE_MODULE}_LIBS explicitly, skipping test for $SV_MODULE_MODULE" >&5
 $as_echo "$as_me: User set ${SV_MODULE_MODULE}_LIBS explicitly, skipping test for $SV_MODULE_MODULE" >&6;}
-   CXXFLAGS="$CXXFLAGS $portaudio_2_0_CFLAGS"
-   LIBS="$LIBS $portaudio_2_0_LIBS"
+   CXXFLAGS="$CXXFLAGS $portaudio_CFLAGS"
+   LIBS="$LIBS $portaudio_LIBS"
    SV_MODULE_FAILED=""
 fi
 if test -z "$SV_MODULE_VERSION_TEST" ; then
@@ -6169,11 +6166,11 @@
 if test -n "$SV_MODULE_FAILED" && test -n "$PKG_CONFIG"; then
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for portaudio_2_0" >&5
-$as_echo_n "checking for portaudio_2_0... " >&6; }
-
-if test -n "$portaudio_2_0_CFLAGS"; then
-    pkg_cv_portaudio_2_0_CFLAGS="$portaudio_2_0_CFLAGS"
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for portaudio" >&5
+$as_echo_n "checking for portaudio... " >&6; }
+
+if test -n "$portaudio_CFLAGS"; then
+    pkg_cv_portaudio_CFLAGS="$portaudio_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
     { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$SV_MODULE_VERSION_TEST\""; } >&5
@@ -6181,7 +6178,7 @@
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_portaudio_2_0_CFLAGS=`$PKG_CONFIG --cflags "$SV_MODULE_VERSION_TEST" 2>/dev/null`
+  pkg_cv_portaudio_CFLAGS=`$PKG_CONFIG --cflags "$SV_MODULE_VERSION_TEST" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
@@ -6189,8 +6186,8 @@
  else
     pkg_failed=untried
 fi
-if test -n "$portaudio_2_0_LIBS"; then
-    pkg_cv_portaudio_2_0_LIBS="$portaudio_2_0_LIBS"
+if test -n "$portaudio_LIBS"; then
+    pkg_cv_portaudio_LIBS="$portaudio_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
     { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$SV_MODULE_VERSION_TEST\""; } >&5
@@ -6198,7 +6195,7 @@
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_portaudio_2_0_LIBS=`$PKG_CONFIG --libs "$SV_MODULE_VERSION_TEST" 2>/dev/null`
+  pkg_cv_portaudio_LIBS=`$PKG_CONFIG --libs "$SV_MODULE_VERSION_TEST" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
@@ -6219,12 +6216,12 @@
         _pkg_short_errors_supported=no
 fi
         if test $_pkg_short_errors_supported = yes; then
-	        portaudio_2_0_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
+	        portaudio_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
         else
-	        portaudio_2_0_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
+	        portaudio_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
         fi
 	# Put the nasty error message in config.log where it belongs
-	echo "$portaudio_2_0_PKG_ERRORS" >&5
+	echo "$portaudio_PKG_ERRORS" >&5
 
 	{ $as_echo "$as_me:${as_lineno-$LINENO}: Failed to find optional module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&5
 $as_echo "$as_me: Failed to find optional module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&6;}
@@ -6234,11 +6231,11 @@
 	{ $as_echo "$as_me:${as_lineno-$LINENO}: Failed to find optional module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&5
 $as_echo "$as_me: Failed to find optional module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&6;}
 else
-	portaudio_2_0_CFLAGS=$pkg_cv_portaudio_2_0_CFLAGS
-	portaudio_2_0_LIBS=$pkg_cv_portaudio_2_0_LIBS
+	portaudio_CFLAGS=$pkg_cv_portaudio_CFLAGS
+	portaudio_LIBS=$pkg_cv_portaudio_LIBS
         { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-	HAVES="$HAVES $SV_MODULE_HAVE";CXXFLAGS="$CXXFLAGS $portaudio_2_0_CFLAGS";LIBS="$LIBS $portaudio_2_0_LIBS";SV_MODULE_FAILED=""
+	HAVES="$HAVES $SV_MODULE_HAVE";CXXFLAGS="$CXXFLAGS $portaudio_CFLAGS";LIBS="$LIBS $portaudio_LIBS";SV_MODULE_FAILED=""
 fi
 fi
 if test -n "$SV_MODULE_FAILED"; then
@@ -7564,10 +7561,6 @@
 
 
 
-
-
-subdirs="$subdirs svcore svgui svapp"
-
 ac_config_files="$ac_config_files config.pri"
 
 
@@ -8734,151 +8727,6 @@
   # would make configure fail if this is the last instruction.
   $ac_cs_success || as_fn_exit 1
 fi
-
-#
-# CONFIG_SUBDIRS section.
-#
-if test "$no_recursion" != yes; then
-
-  # Remove --cache-file, --srcdir, and --disable-option-checking arguments
-  # so they do not pile up.
-  ac_sub_configure_args=
-  ac_prev=
-  eval "set x $ac_configure_args"
-  shift
-  for ac_arg
-  do
-    if test -n "$ac_prev"; then
-      ac_prev=
-      continue
-    fi
-    case $ac_arg in
-    -cache-file | --cache-file | --cache-fil | --cache-fi \
-    | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
-      ac_prev=cache_file ;;
-    -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
-    | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* \
-    | --c=*)
-      ;;
-    --config-cache | -C)
-      ;;
-    -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
-      ac_prev=srcdir ;;
-    -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
-      ;;
-    -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
-      ac_prev=prefix ;;
-    -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
-      ;;
-    --disable-option-checking)
-      ;;
-    *)
-      case $ac_arg in
-      *\'*) ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
-      esac
-      as_fn_append ac_sub_configure_args " '$ac_arg'" ;;
-    esac
-  done
-
-  # Always prepend --prefix to ensure using the same prefix
-  # in subdir configurations.
-  ac_arg="--prefix=$prefix"
-  case $ac_arg in
-  *\'*) ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
-  esac
-  ac_sub_configure_args="'$ac_arg' $ac_sub_configure_args"
-
-  # Pass --silent
-  if test "$silent" = yes; then
-    ac_sub_configure_args="--silent $ac_sub_configure_args"
-  fi
-
-  # Always prepend --disable-option-checking to silence warnings, since
-  # different subdirs can have different --enable and --with options.
-  ac_sub_configure_args="--disable-option-checking $ac_sub_configure_args"
-
-  ac_popdir=`pwd`
-  for ac_dir in : $subdirs; do test "x$ac_dir" = x: && continue
-
-    # Do not complain, so a configure script can configure whichever
-    # parts of a large source tree are present.
-    test -d "$srcdir/$ac_dir" || continue
-
-    ac_msg="=== configuring in $ac_dir (`pwd`/$ac_dir)"
-    $as_echo "$as_me:${as_lineno-$LINENO}: $ac_msg" >&5
-    $as_echo "$ac_msg" >&6
-    as_dir="$ac_dir"; as_fn_mkdir_p
-    ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
-  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
-  # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
-  case $ac_top_builddir_sub in
-  "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
-  *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;
-  esac ;;
-esac
-ac_abs_top_builddir=$ac_pwd
-ac_abs_builddir=$ac_pwd$ac_dir_suffix
-# for backward compatibility:
-ac_top_builddir=$ac_top_build_prefix
-
-case $srcdir in
-  .)  # We are building in place.
-    ac_srcdir=.
-    ac_top_srcdir=$ac_top_builddir_sub
-    ac_abs_top_srcdir=$ac_pwd ;;
-  [\\/]* | ?:[\\/]* )  # Absolute name.
-    ac_srcdir=$srcdir$ac_dir_suffix;
-    ac_top_srcdir=$srcdir
-    ac_abs_top_srcdir=$srcdir ;;
-  *) # Relative name.
-    ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
-    ac_top_srcdir=$ac_top_build_prefix$srcdir
-    ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
-esac
-ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
-
-
-    cd "$ac_dir"
-
-    # Check for guested configure; otherwise get Cygnus style configure.
-    if test -f "$ac_srcdir/configure.gnu"; then
-      ac_sub_configure=$ac_srcdir/configure.gnu
-    elif test -f "$ac_srcdir/configure"; then
-      ac_sub_configure=$ac_srcdir/configure
-    elif test -f "$ac_srcdir/configure.in"; then
-      # This should be Cygnus configure.
-      ac_sub_configure=$ac_aux_dir/configure
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: no configuration information is in $ac_dir" >&5
-$as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2;}
-      ac_sub_configure=
-    fi
-
-    # The recursion is here.
-    if test -n "$ac_sub_configure"; then
-      # Make the cache file name correct relative to the subdirectory.
-      case $cache_file in
-      [\\/]* | ?:[\\/]* ) ac_sub_cache_file=$cache_file ;;
-      *) # Relative name.
-	ac_sub_cache_file=$ac_top_build_prefix$cache_file ;;
-      esac
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: running $SHELL $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir" >&5
-$as_echo "$as_me: running $SHELL $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir" >&6;}
-      # The eval makes quoting arguments work.
-      eval "\$SHELL \"\$ac_sub_configure\" $ac_sub_configure_args \
-	   --cache-file=\"\$ac_sub_cache_file\" --srcdir=\"\$ac_srcdir\"" ||
-	as_fn_error $? "$ac_sub_configure failed for $ac_dir" "$LINENO" 5
-    fi
-
-    cd "$ac_popdir"
-  done
-fi
 if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
   { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
 $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
--- a/configure.ac	Tue Jan 10 16:10:33 2017 +0000
+++ b/configure.ac	Tue Jan 10 16:21:32 2017 +0000
@@ -40,7 +40,7 @@
 SV_CHECK_QT
 
 SV_DEFINES_DEBUG="-DDEBUG -DBUILD_DEBUG -DWANT_TIMING"
-SV_DEFINES_RELEASE="-DNDEBUG -DBUILD_RELEASE -DNO_TIMING"
+SV_DEFINES_RELEASE="-DNDEBUG -DBUILD_RELEASE -DNO_TIMING -DNO_HIT_COUNTS"
 SV_DEFINES_MINIMAL="$SV_DEFINES_RELEASE"
 
 # Now we have: USER_CXXFLAGS contains any flags the user set
@@ -55,7 +55,7 @@
 if test "x$GCC" = "xyes"; then
    	CXXFLAGS_ANY="-Wall -Wextra -Woverloaded-virtual -Wformat-nonliteral -Wformat-security -Winit-self -Wswitch-enum -Wconversion -pipe"
         CXXFLAGS_DEBUG="$CXXFLAGS_ANY -g -Werror"
-   	CXXFLAGS_RELEASE="$CXXFLAGS_ANY -g0 -O2"
+   	CXXFLAGS_RELEASE="$CXXFLAGS_ANY -g0 -O3 -ffast-math"
    	CXXFLAGS_MINIMAL="$CXXFLAGS_ANY -g0 -O0"
 fi
 
@@ -82,15 +82,15 @@
 SV_MODULE_REQUIRED([fftw3],[fftw3 >= 3.0.0],[fftw3.h],[fftw3],[fftw_execute])
 SV_MODULE_REQUIRED([fftw3f],[fftw3f >= 3.0.0],[fftw3.h],[fftw3f],[fftwf_execute])
 SV_MODULE_REQUIRED([sndfile],[sndfile >= 1.0.16],[sndfile.h],[sndfile],[sf_open])
-SV_MODULE_REQUIRED([samplerate],[samplerate >= 0.1.2],[samplerate.h],[samplerate],[src_new])
-SV_MODULE_REQUIRED([vamp],[vamp >= 2.1],[vamp/vamp.h],[],[])
-SV_MODULE_REQUIRED([vamphostsdk],[vamp-hostsdk >= 2.5],[vamp-hostsdk/PluginLoader.h],[vamp-hostsdk],[libvamphostsdk_v_2_5_present])
+SV_MODULE_REQUIRED([libsamplerate],[samplerate >= 0.1.2],[samplerate.h],[samplerate],[src_new])
 SV_MODULE_REQUIRED([rubberband],[rubberband],[rubberband/RubberBandStretcher.h],[rubberband],[rubberband_new])
 SV_MODULE_REQUIRED([sord],[sord-0 >= 0.5],[sord/sord.h],[sord-0],[sord_world_new])
 SV_MODULE_REQUIRED([serd],[serd-0 >= 0.5],[serd/serd.h],[serd-0],[serd_reader_read_file])
+SV_MODULE_REQUIRED([capnp],[capnp >= 0.6],[capnp/common.h],[capnp],[])
+SV_MODULE_REQUIRED([kj],[kj >= 0.6],[kj/common.h],[kj],[])
 
 SV_MODULE_OPTIONAL([liblo],[],[lo/lo.h],[lo],[lo_address_new])
-SV_MODULE_OPTIONAL([portaudio_2_0],[portaudio-2.0 >= 19],[portaudio.h],[portaudio],[Pa_IsFormatSupported])
+SV_MODULE_OPTIONAL([portaudio],[portaudio-2.0 >= 19],[portaudio.h],[portaudio],[Pa_IsFormatSupported])
 SV_MODULE_OPTIONAL([JACK],[jack >= 0.100],[jack/jack.h],[jack],[jack_client_open])
 SV_MODULE_OPTIONAL([libpulse],[libpulse >= 0.9],[pulse/pulseaudio.h],[pulse],[pa_stream_new])
 SV_MODULE_OPTIONAL([lrdf],[lrdf >= 0.2],[lrdf.h],[lrdf],[lrdf_init])
@@ -120,7 +120,6 @@
 
 AC_SUBST(QMAKE_CONFIG)
 
-AC_CONFIG_SUBDIRS([svcore svgui svapp])
 AC_CONFIG_FILES([config.pri])
 
 AC_OUTPUT
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/convert.pro	Tue Jan 10 16:21:32 2017 +0000
@@ -0,0 +1,48 @@
+
+TEMPLATE = app
+
+CONFIG += stl c++11 exceptions console warn_on
+
+CONFIG -= qt
+
+exists(config.pri) {
+    include(config.pri)
+}
+
+!exists(config.pri) {
+    include(noconfig.pri)
+
+    macx*: LIBS -= -framework CoreAudio -framework CoreMidi -framework AudioUnit -framework AudioToolbox -framework CoreFoundation -framework CoreServices -framework Accelerate -lbz2 -lz
+}
+
+# Can't support this flag with the JSON11 and basen modules as they stand
+QMAKE_CXXFLAGS -= -Werror
+
+# Using the "console" CONFIG flag above should ensure this happens for
+# normal Windows builds, but this may be necessary when cross-compiling
+win32-x-g++: QMAKE_LFLAGS += -Wl,-subsystem,console
+
+macx*: CONFIG -= app_bundle
+
+linux*: LIBS += -ldl
+
+TARGET = piper-convert
+
+OBJECTS_DIR = o
+MOC_DIR = o
+
+INCLUDEPATH += piper-cpp vamp-plugin-sdk
+
+include(vamp-plugin-sdk-files.pri)
+
+for (file, VAMP_SOURCES) { SOURCES += $$file }
+for (file, VAMP_HEADERS) { HEADERS += $$file }
+
+HEADERS += \
+        piper-cpp/vamp-capnp/piper.capnp.h \
+        piper-cpp/vamp-capnp/VampnProto.h
+
+SOURCES += \
+        piper-cpp/vamp-capnp/piper-capnp.cpp \
+        piper-cpp/json11/json11.cpp \
+        piper-cpp/vamp-server/convert.cpp
--- a/deploy/osx/copy-qt.sh	Tue Jan 10 16:10:33 2017 +0000
+++ b/deploy/osx/copy-qt.sh	Tue Jan 10 16:21:32 2017 +0000
@@ -1,5 +1,7 @@
 #!/bin/bash
 
+set -eu
+
 app="$1"
 if [ -z "$app" ]; then
 	echo "Usage: $0 <appname>"
@@ -7,9 +9,9 @@
 	exit 2
 fi
 
-frameworks="QtCore QtNetwork QtGui QtXml QtWidgets QtPrintSupport QtDBus"
+frameworks="QtCore QtNetwork QtGui QtXml QtSvg QtWidgets QtPrintSupport QtDBus"
 
-plugins="dds gif icns ico jp2 jpeg mng tga tiff wbmp webp cocoa minimal offscreen"
+plugins="dds gif icns ico jpeg tga tiff wbmp webp cocoa minimal offscreen"
 
 qtdir=$(grep "Command:" Makefile | head -1 | awk '{ print $3; }' | sed s,/bin/.*,,)
 
@@ -27,6 +29,12 @@
 echo
 echo "Copying frameworks..."
 for fwk in $frameworks; do
+    if [ ! -d "$qtdir/lib/$fwk.framework" ]; then
+	if [ "$fwk" = "QtDBus" ]; then
+	    echo "QtDBus.framework not found, assuming Qt was built without DBus support"
+	    continue
+	fi
+    fi
     cp -v "$qtdir/lib/$fwk.framework/$fwk" "$fdir" || exit 2
 done
 
--- a/deploy/osx/deploy.sh	Tue Jan 10 16:10:33 2017 +0000
+++ b/deploy/osx/deploy.sh	Tue Jan 10 16:21:32 2017 +0000
@@ -21,10 +21,11 @@
 set -u
 
 version=`perl -p -e 's/^[^"]*"([^"]*)".*$/$1/' version.h`
-case "$version" in
+stem=${version%%-*}
+case "$stem" in
     [0-9].[0-9]) bundleVersion="$version".0 ;;
     [0-9].[0-9].[0-9]) bundleVersion="$version" ;;
-    *) echo "Error: Version $version is neither two- nor three-part number" ;;
+    *) echo "Error: Version stem $stem (of version $version) is neither two- nor three-part number" ;;
 esac
 
 echo
@@ -44,6 +45,14 @@
 cp deploy/osx/qt.conf "$source"/Contents/Resources/qt.conf
 
 echo
+echo "Copying in plugin load checker."
+cp checker/vamp-plugin-load-checker "$source"/Contents/MacOS/
+
+echo
+echo "Copying in plugin server."
+cp piper-vamp-simple-server "$source"/Contents/MacOS/
+
+echo
 echo "Writing version $bundleVersion in to bundle."
 echo "(This should be a three-part number: major.minor.point)"
 
@@ -67,8 +76,13 @@
 
 echo "Done"
 
+echo
+echo "Code-signing volume..."
+
 deploy/osx/sign.sh "$volume" || exit 1
 
+echo "Done"
+
 echo
 echo "Making dmg..."
 
--- a/deploy/osx/paths.sh	Tue Jan 10 16:10:33 2017 +0000
+++ b/deploy/osx/paths.sh	Tue Jan 10 16:21:32 2017 +0000
@@ -11,7 +11,7 @@
 
 set -u
 
-frameworks="QtCore QtNetwork QtGui QtXml QtWidgets QtPrintSupport QtDBus"
+frameworks="QtCore QtNetwork QtGui QtXml QtSvg QtWidgets QtPrintSupport QtDBus"
 
 echo
 echo "I expect you to have already copied these frameworks from the Qt installation to"
@@ -30,24 +30,29 @@
 done
 
 for fwk in $frameworks; do
-        find "$app.app" -type f -print | while read x; do
-                current=$(otool -L "$x" | grep "$fwk" | grep amework | grep -v ':$' | awk '{ print $1; }')
-                [ -z "$current" ] && continue
-                echo "$x has $current"
-                relative=$(echo "$x" | sed -e "s,$app.app/Contents/,," \
-                        -e 's,[^/]*/,../,g' -e 's,/[^/]*$,/Frameworks/'"$fwk"',' )
-                echo "replacing with relative path $relative"
-                install_name_tool -change "$current" "@loader_path/$relative" "$x"
-        done
+    find "$app.app" -type f -print | while read x; do
+	if [ -x "$x" ]; then
+            current=$(otool -L "$x" | grep "$fwk" | grep amework | grep -v ':$' | awk '{ print $1; }')
+            [ -z "$current" ] && continue
+            echo "$x has $current"
+            relative=$(echo "$x" | sed -e "s,$app.app/Contents/,," \
+				       -e 's,[^/]*/,../,g' \
+				       -e 's,/[^/]*$,/Frameworks/'"$fwk"',' )
+            echo "replacing with relative path $relative"
+            install_name_tool -change "$current" "@loader_path/$relative" "$x"
+	fi
+    done
 done
 
 find "$app.app" -type f -print | while read x; do
-    qtdep=$(otool -L "$x" | grep Qt | grep amework | grep -v ':$' | grep -v '@loader_path' | awk '{ print $1; }')
-    if [ -n "$qtdep" ]; then
-	echo
-	echo "ERROR: File $x depends on Qt framework(s) not apparently present in the bundle:"
-	echo $qtdep
-	exit 1
+    if [ -x "$x" ]; then
+	qtdep=$(otool -L "$x" | grep Qt | grep amework | grep -v ':$' | grep -v '@loader_path' | awk '{ print $1; }')
+	if [ -n "$qtdep" ]; then
+	    echo
+	    echo "ERROR: File $x depends on Qt framework(s) not apparently present in the bundle:"
+	    echo $qtdep
+	    exit 1
+	fi
     fi
 done
 
--- a/deploy/osx/sign.sh	Tue Jan 10 16:10:33 2017 +0000
+++ b/deploy/osx/sign.sh	Tue Jan 10 16:21:32 2017 +0000
@@ -1,5 +1,7 @@
 #!/bin/bash 
 
+set -eu
+
 # Execute this from the top-level directory of the project (the one
 # that contains the .app bundle).  Supply the name of the .app bundle
 # as argument
@@ -11,12 +13,16 @@
 	exit 2
 fi
 for app in "$dir"/*.app; do
-    find "$app" -name Qt\* -print | while read fr; do
-	codesign -s "Developer ID Application: Chris Cannam" -fv "$fr"
-    done
-    find "$app" -name \*.dylib -print | while read fr; do
-	codesign -s "Developer ID Application: Chris Cannam" -fv "$fr"
-    done
+    codesign -s "Developer ID Application: Chris Cannam" -fv --deep "$app"
+#    find "$app" -name Qt\* -print | while read fr; do
+#	codesign -s "Developer ID Application: Chris Cannam" -fv "$fr"
+#    done
+#    find "$app" -name \*.dylib -print | while read fr; do
+#	codesign -s "Developer ID Application: Chris Cannam" -fv "$fr"
+#    done
+#    find "$app/Contents/MacOS" -type f -print | while read fr; do
+#	codesign -s "Developer ID Application: Chris Cannam" -fv "$fr"
+#    done
     codesign -s "Developer ID Application: Chris Cannam" -fv \
          --requirements '=designated =>  identifier "org.sonicvisualiser.SonicVisualiser" and ( (anchor apple generic and    certificate leaf[field.1.2.840.113635.100.6.1.9] ) or (anchor apple generic and    certificate 1[field.1.2.840.113635.100.6.2.6]  and    certificate leaf[field.1.2.840.113635.100.6.1.13] and    certificate leaf[subject.OU] = "M2H8666U82"))' \
          "$app"
--- a/deploy/src/archive.sh	Tue Jan 10 16:10:33 2017 +0000
+++ b/deploy/src/archive.sh	Tue Jan 10 16:21:32 2017 +0000
@@ -1,10 +1,27 @@
 #!/bin/bash
 
+set -eu
+
 tag=`hg tags | grep '^sv_v' | head -1 | awk '{ print $1; }'`
 
-v=`echo "$tag" |sed 's/sv_v//'`
+v=`echo "$tag" | sed 's/sv_v//' | sed 's/_.*$//'`
 
-echo "Packaging up version $v from tag $tag..."
+echo
+echo -n "Packaging up version $v from tag $tag... "
 
 hg archive -r"$tag" --subrepos --exclude sv-dependency-builds /tmp/sonic-visualiser-"$v".tar.gz
 
+echo Done
+echo
+
+# Test that the appropriate version of the docs exist on the website
+
+doc_url="http://sonicvisualiser.org/doc/reference/$v/en/"
+doc_status=$(curl -sL -w "%{http_code}" "$doc_url" -o /dev/null)
+
+if [ "$doc_status" = "404" ]; then
+    echo "*** WARNING: Documentation URL returns a 404:"
+    echo "***          $doc_url"
+    echo "***          Please fix this before release!"
+    echo
+fi
--- a/deploy/win32/README-Vamp.txt	Tue Jan 10 16:10:33 2017 +0000
+++ b/deploy/win32/README-Vamp.txt	Tue Jan 10 16:21:32 2017 +0000
@@ -1,5 +1,5 @@
 
 To add Vamp audio analysis plugins to the Transform menu in
-Sonic Visualiser, unpack them into this directory.
+Sonic Visualiser, unpack and copy them into this directory.
 
 See http://vamp-plugins.org/ for more information.
--- a/deploy/win32/build.cmd	Tue Jan 10 16:10:33 2017 +0000
+++ b/deploy/win32/build.cmd	Tue Jan 10 16:21:32 2017 +0000
@@ -5,7 +5,7 @@
 )
 DEL sonic-visualiser.msi
 %WIXPATH%\candle.exe -v sonic-visualiser.wxs
-%WIXPATH%\light.exe -b ..\.. -ext WixUIExtension -v sonic-visualiser.wixobj
+%WIXPATH%\light.exe -b ..\..\..\build-sonic-visualiser-Desktop_Qt_5_7_0_MinGW_32bit-Release -ext WixUIExtension -v sonic-visualiser.wixobj
 PAUSE
 DEL sonic-visualiser.wixobj
 DEL sonic-visualiser.wixpdb
--- a/deploy/win32/sonic-visualiser.wxs	Tue Jan 10 16:10:33 2017 +0000
+++ b/deploy/win32/sonic-visualiser.wxs	Tue Jan 10 16:21:32 2017 +0000
@@ -5,15 +5,15 @@
       Id="*"
       Language="1033"
       Codepage="1252" 
-      Version="2.5.0"
+      Version="3.0.0"
       UpgradeCode="D476941E-65F3-4962-9E72-B40FAAE5DBD0"
       Manufacturer="Queen Mary, University of London">
     
     <Package
         Id="*"
         Keywords="Installer"
-        Description="Sonic Visualiser Installer" 
-        Comments="Copyright (c) 2014 Queen Mary, University of London and others."
+        Description="Sonic Visualiser 32-bit Installer" 
+        Comments="Copyright (c) 2017 Queen Mary, University of London and others."
         Manufacturer="Queen Mary, University of London" 
         InstallerVersion="100" 
         Languages="1033" 
@@ -26,174 +26,180 @@
     <Property Id="DiskPrompt" Value="Sonic Visualiser Installation [1]"/>
 
     <Directory Id="TARGETDIR" Name="SourceDir">
+
       <Directory Id="ProgramFilesFolder" Name="PFiles">
         <Directory Id="VampPlugins" Name="Vamp Plugins">
-            <Component
-                Id="VampPlugins"
-                Guid="E68E4E0B-3C63-49bd-AD2D-44431EABDA6A">
-                <File
-                    Id="VampREADME"
-                    Name="README.txt"
-                    DiskId="1"
-                    Source="deploy\win32\README-Vamp.txt"/>
-            </Component>
+          <Component
+              Id="VampPlugins"
+              Guid="E68E4E0B-3C63-49bd-AD2D-44431EABDA6A">
+            <File
+                Id="VampREADME"
+                Name="README.txt"
+                Source="..\sonic-visualiser\deploy\win32\README-Vamp.txt"/>
+          </Component>
         </Directory>
         <Directory Id="APPLICATIONFOLDER" Name="Sonic Visualiser">
-            
-            <Component
-                Id="MainExecutable"
-                Guid="2C02DFB7-3CDF-4F73-B9D1-846326EE417D">
+          
+          <Component
+              Id="MainExecutable"
+              Guid="2C02DFB7-3CDF-4F73-B9D1-846326EE417D">
 
-              <File
-                  Id="SVExecutable"
-                  Name="Sonic Visualiser.exe"
-                  DiskId="1"
-                  Source="release\Sonic Visualiser.exe"
-                  KeyPath="yes">
+            <File
+                Id="SVExecutable"
+                Name="Sonic Visualiser.exe"
+                Source="release\Sonic Visualiser.exe"
+                KeyPath="yes">
 
-                <Shortcut
-                    Id="SVStartEntry"
-                    Directory="ProgramMenuDir"
-                    Name="Sonic Visualiser"
-                    WorkingDirectory="APPLICATIONFOLDER"
-                    Icon="winicon.ico"
-                    IconIndex="0"
-                    Advertise="yes"/>
+              <Shortcut
+                  Id="SVStartEntry"
+                  Directory="ProgramMenuDir"
+                  Name="Sonic Visualiser"
+                  WorkingDirectory="APPLICATIONFOLDER"
+                  Icon="winicon.ico"
+                  IconIndex="0"
+                  Advertise="yes"/>
 
-                <Shortcut
-                    Id="SVDesktop"
-                    Directory="DesktopFolder"
-                    Name="Sonic Visualiser"
-                    WorkingDirectory="APPLICATIONFOLDER"
-                    Icon="winicon.ico"
-                    IconIndex="0"
-                    Advertise="yes"/>
-              </File>
+              <Shortcut
+                  Id="SVDesktop"
+                  Directory="DesktopFolder"
+                  Name="Sonic Visualiser"
+                  WorkingDirectory="APPLICATIONFOLDER"
+                  Icon="winicon.ico"
+                  IconIndex="0"
+                  Advertise="yes"/>
+            </File>
 
-              <File
-                  Id="COPYING"
-                  Name="COPYING"
-                  DiskId="1"
-                  Source="COPYING"/>
-              <File
-                  Id="README"
-                  Name="README"
-                  DiskId="1"
-                  Source="README"/>
-              <File
-                  Id="CHANGELOG"
-                  Name="CHANGELOG"
-                  DiskId="1"
-                  Source="CHANGELOG"/>
+            <File
+                Id="COPYING"
+                Name="COPYING.txt"
+                Source="..\sonic-visualiser\COPYING"/>
+            <File
+                Id="README"
+                Name="README.txt"
+                Source="..\sonic-visualiser\README"/>
+            <File
+                Id="CHANGELOG"
+                Name="CHANGELOG.txt"
+                Source="..\sonic-visualiser\CHANGELOG"/>
 
-              <File
-                  Id="winicon.ico"
-                  Name="sv-winicon.ico"
-                  DiskId="1"
-                  Source="icons/sv-winicon.ico"/>
-            </Component>
-            
-            <Component
+            <File
+                Id="winicon.ico"
+                Name="sv-winicon.ico"
+                Source="..\sonic-visualiser\icons/sv-winicon.ico"/>
+          </Component>
+          
+          <Component
               Id="SVFileAssociation"
               Guid="DC6B3DD1-46DE-47FC-90FB-D8ACD5D1A88A">
-              
-              <ProgId 
+            
+            <ProgId 
                 Id='SonicVisualiser.svfile' 
                 Description='Sonic Visualiser project file'
                 Icon="SVExecutable">
-                <Extension 
+              <Extension 
                   Id='sv' 
                   ContentType='application/sonicvisualiser'>
-                  <Verb 
+                <Verb 
                     Id='open' 
                     Command='Open' 
                     TargetFile='SVExecutable' 
                     Argument='"%1"' />
-                </Extension>
-              </ProgId>
-              
+              </Extension>
+            </ProgId>
+            
+          </Component>
+          
+          <Component
+              Id="Qt5"
+              Guid="316341D4-B7B2-411D-BCCE-879A11D5709F">
+            <File
+                Id="QtCore"
+                Name="Qt5Core.dll"
+                Source="release\Qt5Core.dll"
+		KeyPath="yes"/>
+            <File
+                Id="QtGui"
+                Name="Qt5Gui.dll"
+                Source="release\Qt5Gui.dll"/>
+            <File
+                Id="QtNetwork"
+                Name="Qt5Network.dll"
+                Source="release\Qt5Network.dll"/>
+            <File
+                Id="QtWidgets"
+                Name="Qt5Widgets.dll"
+                Source="release\Qt5Widgets.dll"/>
+            <File
+                Id="QtXml"
+                Name="Qt5Xml.dll"
+                Source="release\Qt5Xml.dll"/>
+            <File
+                Id="QtSvg"
+                Name="Qt5Svg.dll"
+                Source="release\Qt5Svg.dll"/>
+            <File
+                Id="libgcc"
+                Name="libgcc_s_dw2-1.dll"
+                Source="release\libgcc_s_dw2-1.dll"/>
+            <File
+                Id="libstdcplusplus"
+                Name="libstdc++-6.dll"
+                Source="release\libstdc++-6.dll"/>
+            <File
+                Id="libwinpthread"
+                Name="libwinpthread-1.dll"
+                Source="release\libwinpthread-1.dll"/>
+          </Component>
+	  
+	  <Directory Id="Platforms" Name="platforms">
+            <Component
+                Id="Qt5PlatformPlugins"
+                Guid="1EDCEA4B-C83F-430B-B09D-CB113DFD4E77">
+	      <File
+                  Id="qminimal"
+                  Name="qminimal.dll"
+                  Source="release\qminimal.dll"/>
+	      <File
+                  Id="qwindows"
+                  Name="qwindows.dll"
+                  Source="release\qwindows.dll"/>
             </Component>
-            
-            <Component
-                Id="Qt5"
-                Guid="316341D4-B7B2-411D-BCCE-879A11D5709F">
-              <File
-                  Id="QtCore"
-                  Name="Qt5Core.dll"
-                  DiskId="1"
-                  Source="release\Qt5Core.dll"
-		  KeyPath="yes"/>
-              <File
-                  Id="QtGui"
-                  Name="Qt5Gui.dll"
-                  DiskId="1"
-                  Source="release\Qt5Gui.dll"/>
-              <File
-                  Id="QtNetwork"
-                  Name="Qt5Network.dll"
-                  DiskId="1"
-                  Source="release\Qt5Network.dll"/>
-              <File
-                  Id="QtWidgets"
-                  Name="Qt5Widgets.dll"
-                  DiskId="1"
-                  Source="release\Qt5Widgets.dll"/>
-              <File
-                  Id="QtXml"
-                  Name="Qt5Xml.dll"
-                  DiskId="1"
-                  Source="release\Qt5Xml.dll"/>
-              <File
-                  Id="icudt53"
-                  Name="icudt53.dll"
-                  DiskId="1"
-                  Source="release\icudt53.dll"/>
-              <File
-                  Id="icuin53"
-                  Name="icuin53.dll"
-                  DiskId="1"
-                  Source="release\icuin53.dll"/>
-              <File
-                  Id="icuuc53"
-                  Name="icuuc53.dll"
-                  DiskId="1"
-                  Source="release\icuuc53.dll"/>
-              <File
-                  Id="libgcc"
+	  </Directory>
+
+	  <Directory Id="Helpers" Name="helpers">
+            <Component Id="Piper"
+                       Guid="17F2AAFF-7B7B-4F20-B345-DEF0A54A84B1">
+	      <File
+		  Id="piperconv"
+		  Name="piper-convert.exe"
+		  Source="release\piper-convert.exe"/>
+	      <File
+		  Id="piper"
+		  Name="piper-vamp-simple-server.exe"
+		  Source="release\piper-vamp-simple-server.exe"/>
+	      <File
+                  Id="libgcc32"
                   Name="libgcc_s_dw2-1.dll"
-                  DiskId="1"
                   Source="release\libgcc_s_dw2-1.dll"/>
-              <File
-                  Id="libstdcplusplus"
+	      <File
+                  Id="libstdcplusplus32"
                   Name="libstdc++-6.dll"
-                  DiskId="1"
                   Source="release\libstdc++-6.dll"/>
-              <File
-                  Id="libwinpthread"
+	      <File
+                  Id="libwinpthread32"
                   Name="libwinpthread-1.dll"
-                  DiskId="1"
                   Source="release\libwinpthread-1.dll"/>
-            </Component>
-	    
-	    <Directory Id="Platforms" Name="platforms">
-              <Component
-                  Id="Qt5PlatformPlugins"
-                  Guid="1EDCEA4B-C83F-430B-B09D-CB113DFD4E77">
-		<File
-                    Id="qminimal"
-                    Name="qminimal.dll"
-                    DiskId="1"
-                    Source="release\qminimal.dll"/>
-		<File
-                    Id="qwindows"
-                    Name="qwindows.dll"
-                    DiskId="1"
-                    Source="release\qwindows.dll"/>
-              </Component>
-	    </Directory>
-
-        </Directory>
-      </Directory>
+	    </Component>
+            <Component Id="Checker"
+                       Guid="DB09B035-0594-4876-B494-4D25CED43601">
+	      <File
+		  Id="checker"
+		  Name="vamp-plugin-load-checker.exe"
+		  Source="release\vamp-plugin-load-checker.exe"/>
+	    </Component>
+	  </Directory> <!-- helpers -->
+        </Directory> <!-- sv --> 
+      </Directory> <!-- pfiles -->
       
       <Directory Id="ProgramMenuFolder" Name="Programs">
         <Directory Id="ProgramMenuDir" Name="Sonic Visualiser">
@@ -209,18 +215,20 @@
     </Directory>
 
     <Feature 
-      Id="Complete"
-      Title="Required files"
-      Description="Installs the required files for running Sonic Visualiser."
-      AllowAdvertise="no"
-      Absent="disallow"
-      ConfigurableDirectory="APPLICATIONFOLDER"
-      Level="1">
+        Id="Complete"
+        Title="Required files"
+        Description="Installs the required files for running Sonic Visualiser."
+        AllowAdvertise="no"
+        Absent="disallow"
+        ConfigurableDirectory="APPLICATIONFOLDER"
+        Level="1">
       <ComponentRef Id="VampPlugins"/>
       <ComponentRef Id="MainExecutable"/>
       <ComponentRef Id="SVFileAssociation"/>
       <ComponentRef Id="Qt5"/>
       <ComponentRef Id="Qt5PlatformPlugins"/>
+      <ComponentRef Id="Piper"/>
+      <ComponentRef Id="Checker"/>
       <ComponentRef Id="ProgramMenuDir"/>
     </Feature>
 
@@ -235,9 +243,9 @@
     <Property Id="WixAppFolder" Value="WixPerMachineFolder" />
     <WixVariable Id="WixUILicenseRtf" Value="License.rtf" />
     
-    <Icon Id="winicon.ico" SourceFile="icons/sv-winicon.ico"/>
+    <Icon Id="winicon.ico" SourceFile="..\sonic-visualiser\icons\sv-winicon.ico"/>
     <Property Id="ARPPRODUCTICON" Value="winicon.ico" />
-        
+    
   </Product>
 </Wix>
 
Binary file deploy/win64/License.rtf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/deploy/win64/README-Vamp.txt	Tue Jan 10 16:21:32 2017 +0000
@@ -0,0 +1,5 @@
+
+To add Vamp audio analysis plugins to the Transform menu in
+Sonic Visualiser, unpack and copy them into this directory.
+
+See http://vamp-plugins.org/ for more information.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/deploy/win64/README-Vamp32.txt	Tue Jan 10 16:21:32 2017 +0000
@@ -0,0 +1,5 @@
+
+To add 32-bit Vamp audio analysis plugins to the Transform menu in
+Sonic Visualiser, unpack and copy them into this directory.
+
+See http://vamp-plugins.org/ for more information.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/deploy/win64/build.cmd	Tue Jan 10 16:21:32 2017 +0000
@@ -0,0 +1,11 @@
+@ECHO OFF
+SET WIXPATH="C:\Program Files (x86)\WiX Toolset v3.9\bin"
+IF NOT EXIST %WIXPATH% (
+    SET WIXPATH="C:\Program Files\WiX Toolset v3.9\bin"
+)
+DEL sonic-visualiser.msi
+%WIXPATH%\candle.exe -v sonic-visualiser.wxs
+%WIXPATH%\light.exe -b ..\..\..\build-sonic-visualiser-Desktop_Qt_5_7_0_MSVC2015_64bit-Release -ext WixUIExtension -v sonic-visualiser.wixobj
+PAUSE
+DEL sonic-visualiser.wixobj
+DEL sonic-visualiser.wixpdb
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/deploy/win64/sonic-visualiser.wxs	Tue Jan 10 16:21:32 2017 +0000
@@ -0,0 +1,295 @@
+<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
+
+  <Product
+      Name="Sonic Visualiser" 
+      Id="*"
+      Language="1033"
+      Codepage="1252" 
+      Version="3.0.0"
+      UpgradeCode="D476941E-65F3-4962-9E72-B40FAAE5DBD0"
+      Manufacturer="Queen Mary, University of London">
+    
+    <Package
+        Id="*"
+        Keywords="Installer"
+        Description="Sonic Visualiser 64-bit Installer" 
+        Comments="Copyright (c) 2017 Queen Mary, University of London and others."
+        Manufacturer="Queen Mary, University of London" 
+        InstallerVersion="200"
+        Languages="1033" 
+        Compressed="yes" 
+        Platform="x64"
+        SummaryCodepage="1252"/>
+
+    <MajorUpgrade DowngradeErrorMessage="A later version of Sonic Visualiser is already installed. Setup will now exit."/>
+
+    <Media Id="1" Cabinet="SonicVisualiser.cab" EmbedCab="yes" DiskPrompt="CD-ROM #1"/>
+    <Property Id="DiskPrompt" Value="Sonic Visualiser Installation [1]"/>
+
+    <Directory Id="TARGETDIR" Name="SourceDir">
+
+      <Directory Id="ProgramFiles64Folder" Name="PFiles64">
+        <Directory Id="VampPlugins" Name="Vamp Plugins">
+          <Component Win64="yes"
+              Id="VampPlugins"
+              Guid="528C7D7E-5A06-4E7D-89BB-7C16431DF82F">
+            <File
+                Id="VampREADME"
+                Name="README.txt"
+                Source="..\sonic-visualiser\deploy\win64\README-Vamp.txt"/>
+          </Component>
+        </Directory>
+
+        <Directory Id="APPLICATIONFOLDER" Name="Sonic Visualiser">
+          <Component Win64="yes"
+              Id="MainExecutable"
+              Guid="65E1EBDF-4C8F-47B8-BCD6-981667F5946D">
+
+            <File
+                Id="SVExecutable"
+                Name="Sonic Visualiser.exe"
+                Source="release\Sonic Visualiser.exe"
+                KeyPath="yes">
+
+              <Shortcut
+                  Id="SVStartEntry"
+                  Directory="ProgramMenuDir"
+                  Name="Sonic Visualiser"
+                  WorkingDirectory="APPLICATIONFOLDER"
+                  Icon="winicon.ico"
+                  IconIndex="0"
+                  Advertise="yes"/>
+
+              <Shortcut
+                  Id="SVDesktop"
+                  Directory="DesktopFolder"
+                  Name="Sonic Visualiser"
+                  WorkingDirectory="APPLICATIONFOLDER"
+                  Icon="winicon.ico"
+                  IconIndex="0"
+                  Advertise="yes"/>
+            </File>
+
+            <File
+                Id="COPYING"
+                Name="COPYING.txt"
+                Source="..\sonic-visualiser\COPYING"/>
+            <File
+                Id="README"
+                Name="README.txt"
+                Source="..\sonic-visualiser\README"/>
+            <File
+                Id="CHANGELOG"
+                Name="CHANGELOG.txt"
+                Source="..\sonic-visualiser\CHANGELOG"/>
+
+            <File
+                Id="winicon.ico"
+                Name="sv-winicon.ico"
+                Source="..\sonic-visualiser\icons\sv-winicon.ico"/>
+          </Component>
+          
+          <Component Win64="yes"
+	      Id="SVFileAssociation"
+	      Guid="F07C5CC1-0209-4C1A-8D52-C40B50A2B964">
+            
+            <ProgId 
+                Id='SonicVisualiser.svfile' 
+                Description='Sonic Visualiser project file'
+                Icon="SVExecutable">
+              <Extension 
+                  Id='sv' 
+                  ContentType='application/sonicvisualiser'>
+                <Verb 
+                    Id='open' 
+                    Command='Open' 
+                    TargetFile='SVExecutable' 
+                    Argument='"%1"' />
+              </Extension>
+            </ProgId>
+            
+          </Component>
+          
+          <Component Win64="yes"
+              Id="Qt5"
+              Guid="5495ED5E-939A-4BE8-9000-D55F2A7A2E90">
+            <File
+                Id="QtCore"
+                Name="Qt5Core.dll"
+                Source="release\Qt5Core.dll"
+		KeyPath="yes"/>
+            <File
+                Id="QtGui"
+                Name="Qt5Gui.dll"
+                Source="release\Qt5Gui.dll"/>
+            <File
+                Id="QtNetwork"
+                Name="Qt5Network.dll"
+                Source="release\Qt5Network.dll"/>
+            <File
+                Id="QtWidgets"
+                Name="Qt5Widgets.dll"
+                Source="release\Qt5Widgets.dll"/>
+            <File
+                Id="QtXml"
+                Name="Qt5Xml.dll"
+                Source="release\Qt5Xml.dll"/>
+            <File
+                Id="QtSvg"
+                Name="Qt5Svg.dll"
+                Source="release\Qt5Svg.dll"/>
+          </Component>
+
+          <Component Win64="yes"
+                     Id="Sndfile"
+                     Guid="04533516-6460-4155-A0D4-E9BA4D31E95C">
+            <File
+                Id="libsndfile"
+                Name="libsndfile-1.dll"
+                Source="..\sonic-visualiser\sv-dependency-builds\win64-msvc\lib\libsndfile-1.dll"
+                KeyPath="yes"/>
+          </Component>
+
+          <Component Win64="yes"
+               Id="VCRuntime"
+               Guid="251D9513-BBD2-47CF-BE78-EF79446F7683">
+               <File
+                   Id="concrt140"
+                   Name="concrt140.dll"
+                   Source="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\redist\x64\Microsoft.VC140.CRT\concrt140.DLL"
+                   KeyPath="yes"/>
+               <File
+                   Id="msvcp140"
+                   Name="msvcp140.dll"
+                   Source="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\redist\x64\Microsoft.VC140.CRT\msvcp140.DLL"/>
+               <File
+                   Id="vccorlib140"
+                   Name="vccorlib140.dll"
+                   Source="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\redist\x64\Microsoft.VC140.CRT\vccorlib140.DLL"/>
+               <File
+                   Id="vcruntime140"
+                   Name="vcruntime140.dll"
+                   Source="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\redist\x64\Microsoft.VC140.CRT\vcruntime140.DLL"/>
+          </Component>
+
+	  <Directory Id="Platforms" Name="platforms">
+            <Component Win64="yes"
+                Id="Qt5PlatformPlugins"
+                Guid="1FFB773E-6D6D-4C0E-832B-F0FFEA959CA5">
+	      <File
+                  Id="qminimal"
+                  Name="qminimal.dll"
+                  Source="release\qminimal.dll"/>
+	      <File
+                  Id="qwindows"
+                  Name="qwindows.dll"
+                  Source="release\qwindows.dll"/>
+            </Component>
+	  </Directory>
+
+	  <Directory Id="Helpers" Name="helpers">
+            <Component Win64="yes"
+                Id="Piper64"
+                Guid="6385BD86-A5D3-4C77-AD41-B2DCA5B34E48">
+	      <File
+		  Id="piperconv64"
+		  Name="piper-convert.exe"
+		  Source="release\piper-convert.exe"/>
+	      <File
+		  Id="piper64"
+		  Name="piper-vamp-simple-server.exe"
+		  Source="release\piper-vamp-simple-server.exe"/>
+	    </Component>
+            <Component
+                Id="Piper32"
+                Guid="F27A00A8-DD03-45B0-A13C-8CD8CC6F7386">
+	      <File
+		  Id="piper32"
+		  Name="piper-vamp-simple-server-32.exe"
+		  Source="release\piper-vamp-simple-server-32.exe"/>
+	      <File
+                  Id="libgcc32"
+                  Name="libgcc_s_dw2-1.dll"
+                  Source="release\libgcc_s_dw2-1.dll"/>
+	      <File
+                  Id="libstdcplusplus32"
+                  Name="libstdc++-6.dll"
+                  Source="release\libstdc++-6.dll"/>
+	      <File
+                  Id="libwinpthread32"
+                  Name="libwinpthread-1.dll"
+                  Source="release\libwinpthread-1.dll"/>
+	    </Component>
+            <Component Win64="yes"
+                Id="Checker64"
+                Guid="19A400D9-D5B2-4CB5-AF84-7C1DEA11D7B5">
+	      <File
+		  Id="checker64"
+		  Name="vamp-plugin-load-checker.exe"
+		  Source="release\vamp-plugin-load-checker.exe"/>
+	    </Component>
+            <Component
+                Id="Checker32"
+                Guid="4F3FDFEC-23BD-4F2F-9B8F-9C8387FDEC21">
+	      <File
+		  Id="checker32"
+		  Name="vamp-plugin-load-checker-32.exe"
+		  Source="release\vamp-plugin-load-checker-32.exe"/>
+	    </Component>
+	    
+	  </Directory> <!-- helpers -->
+	</Directory> <!-- sv -->
+      </Directory> <!-- pfiles64 -->
+
+      <Directory Id="ProgramMenuFolder" Name="Programs">
+        <Directory Id="ProgramMenuDir" Name="Sonic Visualiser">
+          <Component Id="ProgramMenuDir" Guid="C1980FF3-D135-46F8-8542-F937748721E6">
+            <RemoveFolder Id="ProgramMenuDir" On="uninstall"/>
+            <RegistryValue Root="HKMU" Key="Software\[Manufacturer]\[ProductName]" Type="string" Value="" KeyPath="yes"/>
+          </Component>
+        </Directory>
+      </Directory>
+
+      <Directory Id="DesktopFolder" Name="Desktop"/>
+
+    </Directory>
+
+    <Feature 
+	Id="Complete"
+	Title="Required files"
+	Description="Installs the required files for running Sonic Visualiser."
+	AllowAdvertise="no"
+	Absent="disallow"
+	ConfigurableDirectory="APPLICATIONFOLDER"
+	Level="1">
+      <ComponentRef Id="VampPlugins"/>
+      <ComponentRef Id="MainExecutable"/>
+      <ComponentRef Id="SVFileAssociation"/>
+      <ComponentRef Id="Sndfile"/>
+      <ComponentRef Id="Qt5"/>
+      <ComponentRef Id="VCRuntime"/>
+      <ComponentRef Id="Qt5PlatformPlugins"/>
+      <ComponentRef Id="Piper64"/>
+      <ComponentRef Id="Piper32"/>
+      <ComponentRef Id="Checker64"/>
+      <ComponentRef Id="Checker32"/>
+      <ComponentRef Id="ProgramMenuDir"/>
+    </Feature>
+
+    <UI>
+      <UIRef Id="WixUI_InstallDir" />
+      <UIRef Id="WixUI_ErrorProgressText" />
+    </UI>
+
+    <Property Id="WIXUI_INSTALLDIR" Value="APPLICATIONFOLDER" />
+    <Property Id="WIXUI_DONTVALIDATEPATH" Value="1" />
+    <Property Id="ApplicationFolderName" Value="Sonic Visualiser" />
+    <Property Id="WixAppFolder" Value="WixPerMachineFolder" />
+    <WixVariable Id="WixUILicenseRtf" Value="License.rtf" />
+    
+    <Icon Id="winicon.ico" SourceFile="..\sonic-visualiser\icons\sv-winicon.ico"/>
+    <Property Id="ARPPRODUCTICON" Value="winicon.ico" />
+    
+  </Product>
+</Wix>
+
Binary file i18n/sonic-visualiser_cs_CZ.qm has changed
--- a/i18n/sonic-visualiser_cs_CZ.ts	Tue Jan 10 16:10:33 2017 +0000
+++ b/i18n/sonic-visualiser_cs_CZ.ts	Tue Jan 10 16:21:32 2017 +0000
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!DOCTYPE TS>
-<TS version="2.0" language="cs_CZ">
+<TS version="2.1" language="cs_CZ">
 <context>
     <name>ActivityLog</name>
     <message>
@@ -38,6 +38,13 @@
     </message>
 </context>
 <context>
+    <name>AlignmentView</name>
+    <message>
+        <source>AlignmentView</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>AudioCallbackPlaySource</name>
     <message>
         <source>Stop at %1</source>
@@ -82,28 +89,32 @@
         <source>New value for %1, from %2 to %3 %4:</source>
         <translation>Nová hodnota pro %1, od %2 do %3 %4:</translation>
     </message>
+    <message>
+        <source>%1: %2</source>
+        <translation type="unfinished">%1: %2</translation>
+    </message>
 </context>
 <context>
     <name>AudioTargetFactory</name>
     <message>
         <source>Core Audio Device</source>
-        <translation>Jaderné zvukové zařízení</translation>
+        <translation type="vanished">Jaderné zvukové zařízení</translation>
     </message>
     <message>
         <source>(auto)</source>
-        <translation>(auto)</translation>
+        <translation type="vanished">(auto)</translation>
     </message>
     <message>
         <source>Default Soundcard Device</source>
-        <translation>Výchozí zařízení zvukové karty</translation>
+        <translation type="vanished">Výchozí zařízení zvukové karty</translation>
     </message>
     <message>
         <source>PulseAudio Server</source>
-        <translation>Server PulseAudio</translation>
+        <translation type="vanished">Server PulseAudio</translation>
     </message>
     <message>
         <source>JACK Audio Connection Kit</source>
-        <translation>Spojovací sada pro zvuk JACK</translation>
+        <translation type="vanished">Spojovací sada pro zvuk JACK</translation>
     </message>
 </context>
 <context>
@@ -253,6 +264,14 @@
         <source>&lt;ignore&gt;</source>
         <translation>&lt;nevšímat si&gt;</translation>
     </message>
+    <message>
+        <source>Pitch</source>
+        <translation type="unfinished">Výška tónu</translation>
+    </message>
+    <message>
+        <source>Explicitly, in milliseconds</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>Colour3DPlotLayer</name>
@@ -286,11 +305,11 @@
     </message>
     <message>
         <source>Normalize Columns</source>
-        <translation>Normalizovat sloupce</translation>
+        <translation type="vanished">Normalizovat sloupce</translation>
     </message>
     <message>
         <source>Normalize Visible Area</source>
-        <translation>Normalizovat viditelnou oblast</translation>
+        <translation type="vanished">Normalizovat viditelnou oblast</translation>
     </message>
     <message>
         <source>Colour</source>
@@ -328,60 +347,103 @@
         <source>Invert Vertical Scale</source>
         <translation>Obrátit svislou stupnici</translation>
     </message>
+    <message>
+        <source>Normalization</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>None</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Col</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>View</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Hybrid</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>ColourComboBox</name>
+    <message>
+        <source>Name New Colour</source>
+        <translation type="unfinished">Pojmenovat novou barvu</translation>
+    </message>
+    <message>
+        <source>Enter a name for the new colour:</source>
+        <translation type="unfinished">Zadejte název pro novou barvu:</translation>
+    </message>
+    <message>
+        <source>Prefer black background for this colour</source>
+        <translation type="unfinished">Upřednostňovat černé pozadí pro tuto barvu</translation>
+    </message>
+    <message>
+        <source>Add New Colour...</source>
+        <translation type="unfinished">Přidat novou barvu...</translation>
+    </message>
 </context>
 <context>
     <name>ColourMapper</name>
     <message>
         <source>Black on White</source>
-        <translation>Černá na bílé</translation>
+        <translation type="vanished">Černá na bílé</translation>
     </message>
     <message>
         <source>Yellow on Black</source>
-        <translation>Žlutá na černé</translation>
+        <translation type="vanished">Žlutá na černé</translation>
     </message>
     <message>
         <source>Banded</source>
-        <translation>Pruhovaný</translation>
+        <translation type="vanished">Pruhovaný</translation>
     </message>
     <message>
         <source>&lt;unknown&gt;</source>
-        <translation>&lt;neznámý&gt;</translation>
+        <translation type="vanished">&lt;neznámý&gt;</translation>
     </message>
     <message>
         <source>Sunset</source>
-        <translation>Západ slunce</translation>
+        <translation type="vanished">Západ slunce</translation>
     </message>
     <message>
         <source>Fruit Salad</source>
-        <translation>Ovocný salát</translation>
+        <translation type="vanished">Ovocný salát</translation>
     </message>
     <message>
         <source>Red on Blue</source>
-        <translation>Červená na modré</translation>
+        <translation type="vanished">Červená na modré</translation>
     </message>
     <message>
         <source>Printer</source>
-        <translation>Tiskárna</translation>
+        <translation type="vanished">Tiskárna</translation>
     </message>
     <message>
         <source>Blue on Black</source>
-        <translation>Modrá na černé</translation>
+        <translation type="vanished">Modrá na černé</translation>
     </message>
     <message>
         <source>Default</source>
-        <translation>Výchozí</translation>
+        <translation type="vanished">Výchozí</translation>
     </message>
     <message>
         <source>High Gain</source>
-        <translation>Zesílení výšek</translation>
+        <translation type="vanished">Zesílení výšek</translation>
     </message>
     <message>
         <source>Highlight</source>
-        <translation>Zvýraznění</translation>
+        <translation type="vanished">Zvýraznění</translation>
     </message>
     <message>
         <source>White on Black</source>
-        <translation>Bílá na černé</translation>
+        <translation type="vanished">Bílá na černé</translation>
+    </message>
+    <message>
+        <source>Green</source>
+        <translation type="obsolete">Zelená</translation>
     </message>
 </context>
 <context>
@@ -443,6 +505,13 @@
     </message>
 </context>
 <context>
+    <name>DecodingWavFileReader</name>
+    <message>
+        <source>Decoding %1...</source>
+        <translation type="unfinished">Dekóduje se %1...</translation>
+    </message>
+</context>
+<context>
     <name>Dense3DModelPeakCache</name>
     <message>
         <source>Dense 3-D Peak Cache</source>
@@ -557,6 +626,10 @@
         <source>Transform was configured for version %1 of plugin &quot;%2&quot;, but the plugin being used is version %3</source>
         <translation>Proměna byla nastavena pro verzi %1 přídavného modulu &quot;%2&quot;, ale používaný přídavný modul je ve verzi %3</translation>
     </message>
+    <message>
+        <source>Transforms supplied to a single FeatureExtractionModelTransformer instance must be similar in every respect except plugin output</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>FileSource</name>
@@ -566,7 +639,7 @@
     </message>
     <message>
         <source>Login failed</source>
-        <translation>Přihlášení se nezdařilo</translation>
+        <translation type="vanished">Přihlášení se nezdařilo</translation>
     </message>
     <message>
         <source>Download cancelled</source>
@@ -582,7 +655,7 @@
     </message>
     <message>
         <source>FTP download aborted</source>
-        <translation>FTP stahování zrušeno</translation>
+        <translation type="vanished">FTP stahování zrušeno</translation>
     </message>
     <message>
         <source>Downloading %1...</source>
@@ -590,11 +663,189 @@
     </message>
     <message>
         <source>Failed to connect to FTP server</source>
-        <translation>Připojení k FTP serveru se nezdařilo</translation>
+        <translation type="vanished">Připojení k FTP serveru se nezdařilo</translation>
     </message>
     <message>
         <source>Failed to change to correct directory</source>
-        <translation>Změna na správný adresář se nepodařila</translation>
+        <translation type="vanished">Změna na správný adresář se nepodařila</translation>
+    </message>
+</context>
+<context>
+    <name>FlexiNoteLayer</name>
+    <message>
+        <source>New Point</source>
+        <translation type="unfinished">Nový bod</translation>
+    </message>
+    <message>
+        <source>Vertical Scale</source>
+        <translation type="unfinished">Svislá stupnice</translation>
+    </message>
+    <message>
+        <source>Scale Units</source>
+        <translation type="unfinished">Jednotky stupnice</translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished">Stupnice</translation>
+    </message>
+    <message>
+        <source>Auto-Align</source>
+        <translation type="unfinished">Automatické zarovnání</translation>
+    </message>
+    <message>
+        <source>Linear</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Log</source>
+        <translation type="unfinished">Zápis</translation>
+    </message>
+    <message>
+        <source>MIDI Notes</source>
+        <translation type="unfinished">Noty MIDI</translation>
+    </message>
+    <message>
+        <source>In progress</source>
+        <translation type="unfinished">Probíhá</translation>
+    </message>
+    <message>
+        <source>No local points</source>
+        <translation type="unfinished">Žádné místní body</translation>
+    </message>
+    <message>
+        <source>%1 (%2, %3 Hz)</source>
+        <translation type="unfinished">%1 (%2, %3 Hz)</translation>
+    </message>
+    <message>
+        <source>%1 Hz (%2, %3)</source>
+        <translation type="unfinished">%1 Hz (%2, %3)</translation>
+    </message>
+    <message>
+        <source>%1 %2</source>
+        <translation type="unfinished">%1 %2</translation>
+    </message>
+    <message>
+        <source>Time:	%1
+Pitch:	%2
+Duration:	%3
+No label</source>
+        <translation type="unfinished">Čas:	%1
+Výška:	%2
+Doba trvání:	%3
+Žádný štítek</translation>
+    </message>
+    <message>
+        <source>Time:	%1
+Pitch:	%2
+Duration:	%3
+Label:	%4</source>
+        <translation type="unfinished">Čas:	%1
+Výška:	%2
+Doba trvání:	%3
+Štítek:	%4</translation>
+    </message>
+    <message>
+        <source>Draw Point</source>
+        <translation type="unfinished">Nakreslit bod</translation>
+    </message>
+    <message>
+        <source>Erase Point</source>
+        <translation type="unfinished">Vymazat bod</translation>
+    </message>
+    <message>
+        <source>Drag Point</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Edit Point</source>
+        <translation type="unfinished">Upravit bod</translation>
+    </message>
+    <message>
+        <source>Relocate Point</source>
+        <translation type="unfinished">Přemístit bod</translation>
+    </message>
+    <message>
+        <source>Change Point Value</source>
+        <translation type="unfinished">Změnit hodnotu bodu</translation>
+    </message>
+    <message>
+        <source>Add Point</source>
+        <translation type="unfinished">Přidat bod</translation>
+    </message>
+    <message>
+        <source>Snap Notes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Merge Notes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Drag Selection</source>
+        <translation type="unfinished">Táhnout výběr</translation>
+    </message>
+    <message>
+        <source>Resize Selection</source>
+        <translation type="unfinished">Změnit velikost výběru</translation>
+    </message>
+    <message>
+        <source>Delete Selected Points</source>
+        <translation type="unfinished">Smazat vybrané body</translation>
+    </message>
+    <message>
+        <source>Re-align pasted items?</source>
+        <translation type="unfinished">Zarovnat vložené položky znovu?</translation>
+    </message>
+    <message>
+        <source>The items you are pasting came from a layer with different source material from this one.  Do you want to re-align them in time, to match the source material for this layer?</source>
+        <translation type="unfinished">Položky, které vkládáte, přišly z vrstvy s odlišným zdrojovým materiálem, než má tento. Chcete je zarovnat znovu v čase, aby se hodily ke zdrojovému materiálu pro tuto vrstvu?</translation>
+    </message>
+    <message>
+        <source>Paste</source>
+        <translation type="unfinished">Vložit</translation>
+    </message>
+    <message>
+        <source>Record FlexiNote</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>FlexiNoteModel</name>
+    <message>
+        <source>FlexiNote</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Time</source>
+        <translation type="unfinished">Čas</translation>
+    </message>
+    <message>
+        <source>Frame</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Pitch</source>
+        <translation type="unfinished">Výška tónu</translation>
+    </message>
+    <message>
+        <source>Duration</source>
+        <translation type="unfinished">Doba trvání</translation>
+    </message>
+    <message>
+        <source>Level</source>
+        <translation type="unfinished">Úroveň</translation>
+    </message>
+    <message>
+        <source>Label</source>
+        <translation type="unfinished">Štítek</translation>
+    </message>
+    <message>
+        <source>Unknown</source>
+        <translation type="unfinished">Neznámý</translation>
+    </message>
+    <message>
+        <source>Edit Data</source>
+        <translation type="unfinished">Upravit data</translation>
     </message>
 </context>
 <context>
@@ -799,7 +1050,7 @@
         <source>Sonic Visualiser session files (*.sv)
 RDF files (%1)
 All files (*.*)</source>
-        <translation>Soubory se sezením programu Sonic Visualiser (*.sv)
+        <translation type="vanished">Soubory se sezením programu Sonic Visualiser (*.sv)
 Soubory RDF (%1)
 Všechny soubory (*.*)</translation>
     </message>
@@ -834,7 +1085,7 @@
 Layer files (%2)
 RDF files (%3)
 All files (*.*)</source>
-        <translation>Všechny podporované soubory (*.sv %1 %2 %3)
+        <translation type="vanished">Všechny podporované soubory (*.sv %1 %2 %3)
 Soubory XML Sonic Visualiser Layer (*.svl)
 Zvukové soubory (%1)
 Soubory Layer (%2)
@@ -913,7 +1164,7 @@
 Audio files (%2)
 RDF files (%1)
 All files (*.*)</source>
-        <translation>Všechny podporované soubory (%1 %2)
+        <translation type="vanished">Všechny podporované soubory (%1 %2)
 Soubory XML Sonic Visualiser Layer (*.svl)
 Zvukové soubory (%2)
 Soubory RDF (%1)
@@ -948,7 +1199,7 @@
     <message>
         <source>Sonic Visualiser session files (*.sv)
 All files (*.*)</source>
-        <translation>Soubory se sezením programu Sonic Visualiser (*.sv)
+        <translation type="vanished">Soubory se sezením programu Sonic Visualiser (*.sv)
 Všechny soubory (*.*)</translation>
     </message>
     <message>
@@ -961,6 +1212,90 @@
         <translation>Zvukové soubory WAV (*.wav)
 Všechny soubory (*.*)</translation>
     </message>
+    <message>
+        <source>%1 session files (*.%1)
+RDF files (%3)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All supported files (%1 %2)
+Comma-separated data files (*.csv)
+Sonic Visualiser Layer XML files (*.svl)
+Space-separated .lab files (*.lab)
+RDF files (%2)
+MIDI files (*.mid)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All supported files (%1 %2)
+Comma-separated data files (*.csv)
+Sonic Visualiser Layer XML files (*.svl)
+Space-separated .lab files (*.lab)
+RDF files (%2)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All supported files (*.sv %1 %2)
+%3 session files (*.%4)
+Audio files (%2)
+RDF files (%1)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Comma-separated data files (*.csv)
+Space-separated .lab files (*.lab)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>All supported files (*.sv %1 %2 %3)
+%4 session files (*.%5)
+Audio files (%1)
+Layer files (%2)
+RDF files (%3)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>%1 session files (*.%2)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Comma-separated data files (*.csv)
+Sonic Visualiser Layer XML files (*.svl)
+RDF/Turtle files (%1)
+MIDI files (*.mid)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Comma-separated data files (*.csv)
+Sonic Visualiser Layer XML files (*.svl)
+RDF/Turtle files (%1)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Comma-separated data files (*.csv)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Scalable Vector Graphics files (*.svg)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>ItemEditDialog</name>
@@ -1029,7 +1364,11 @@
     </message>
     <message>
         <source>Sonic Visualiser: Key and Mouse Reference</source>
-        <translation>Sonic Visualiser: Odkaz na klávesy a myš</translation>
+        <translation type="vanished">Sonic Visualiser: Odkaz na klávesy a myš</translation>
+    </message>
+    <message>
+        <source>%1: Key and Mouse Reference</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
@@ -1109,6 +1448,14 @@
         <source>Cyclical counter</source>
         <translation>Cyklické počítadlo</translation>
     </message>
+    <message>
+        <source>Subdivide Points</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Winnow Points</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>Layer</name>
@@ -1118,7 +1465,7 @@
     </message>
     <message>
         <source>Layer</source>
-        <translation>Vrstva</translation>
+        <translation type="vanished">Vrstva</translation>
     </message>
     <message>
         <source>Notes</source>
@@ -1172,6 +1519,14 @@
         <source>Delete Measurement</source>
         <translation>Smazat měření</translation>
     </message>
+    <message>
+        <source>Flexible Notes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Unknown Layer</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>LayerTreeDialog</name>
@@ -1208,6 +1563,20 @@
     </message>
 </context>
 <context>
+    <name>LevelPanToolButton</name>
+    <message>
+        <source>Click to adjust level and pan</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>LevelPanWidget</name>
+    <message>
+        <source>Drag vertically to adjust level, horizontally to adjust pan</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>MIDIFileImportDialog</name>
     <message>
         <source>&lt;b&gt;Select track to import&lt;/b&gt;&lt;p&gt;You can only import this file as a single annotation layer, but the file contains more than one track, or notes on more than one channel.&lt;p&gt;Please select the track or merged tracks you wish to import:</source>
@@ -1783,7 +2152,7 @@
     </message>
     <message>
         <source>&lt;br&gt;With Rubber Band &amp;copy; Chris Cannam</source>
-        <translation>&lt;br&gt;Gumička (Rubber Band) &amp;copy; Chris Cannam</translation>
+        <translation type="vanished">&lt;br&gt;Gumička (Rubber Band) &amp;copy; Chris Cannam</translation>
     </message>
     <message>
         <source>Erase items from layer</source>
@@ -1819,7 +2188,7 @@
     </message>
     <message>
         <source>&lt;b&gt;Alignment calculation failed&lt;/b&gt;&lt;p&gt;Failed to calculate an audio alignment using transform &quot;%1&quot;:&lt;p&gt;%2</source>
-        <translation>&lt;b&gt;Spočítání zarovnání se nezdařilo&lt;/b&gt;&lt;p&gt;Zarovnání zvuku se spočítat s pomocí &quot;%1&quot; nepodařilo:&lt;p&gt;%2</translation>
+        <translation type="vanished">&lt;b&gt;Spočítání zarovnání se nezdařilo&lt;/b&gt;&lt;p&gt;Zarovnání zvuku se spočítat s pomocí &quot;%1&quot; nepodařilo:&lt;p&gt;%2</translation>
     </message>
     <message>
         <source>Show Acti&amp;vity Log</source>
@@ -1907,7 +2276,7 @@
     </message>
     <message>
         <source>Playback speed: %1%2%</source>
-        <translation>Rychlost přehrávání: %1%2%</translation>
+        <translation type="vanished">Rychlost přehrávání: %1%2%</translation>
     </message>
     <message>
         <source>Restore &amp;Default Zoom</source>
@@ -2079,7 +2448,7 @@
     </message>
     <message>
         <source>Adjust the master playback level</source>
-        <translation>Přizpůsobit hlavní úroveň přehrávání</translation>
+        <translation type="vanished">Přizpůsobit hlavní úroveň přehrávání</translation>
     </message>
     <message>
         <source>&lt;p&gt;Sonic Visualiser is a program for viewing and exploring audio data for semantic music analysis and annotation.&lt;br&gt;&lt;a href=&quot;http://www.sonicvisualiser.org/&quot;&gt;http://www.sonicvisualiser.org/&lt;/a&gt;&lt;/p&gt;</source>
@@ -2115,7 +2484,7 @@
     </message>
     <message>
         <source>&lt;b&gt;Layer generation failed&lt;/b&gt;&lt;p&gt;Failed to generate derived layer.&lt;p&gt;The layer transform &quot;%1&quot; failed:&lt;p&gt;%2</source>
-        <translation>&lt;b&gt;Vytvoření vrstvy se nezdařilo&lt;/b&gt;&lt;p&gt;Nepodařilo se vytvořit odvozenou vrstvu.&lt;p&gt;Proměna vrstvy &quot;%1&quot; se nezdařila:&lt;p&gt;%2</translation>
+        <translation type="vanished">&lt;b&gt;Vytvoření vrstvy se nezdařilo&lt;/b&gt;&lt;p&gt;Nepodařilo se vytvořit odvozenou vrstvu.&lt;p&gt;Proměna vrstvy &quot;%1&quot; se nezdařila:&lt;p&gt;%2</translation>
     </message>
     <message>
         <source>&lt;br&gt;With MAD mp3 decoder &amp;copy; Underbit Technologies Inc</source>
@@ -2171,11 +2540,11 @@
     </message>
     <message>
         <source>&lt;b&gt;File open failed&lt;/b&gt;&lt;p&gt;Session file &quot;%1&quot; could not be opened</source>
-        <translation>&lt;b&gt;Soubor se nepodařilo otevřít&lt;/b&gt;&lt;p&gt;Soubor se sezením &quot;%1&quot; se nepodařilo otevřít</translation>
+        <translation type="vanished">&lt;b&gt;Soubor se nepodařilo otevřít&lt;/b&gt;&lt;p&gt;Soubor se sezením &quot;%1&quot; se nepodařilo otevřít</translation>
     </message>
     <message>
         <source>&lt;br&gt;With Rubber Band v%1 &amp;copy; Chris Cannam</source>
-        <translation>&lt;br&gt;Gumička (Rubber Band) v%1 &amp;copy; Chris Cannam</translation>
+        <translation type="vanished">&lt;br&gt;Gumička (Rubber Band) v%1 &amp;copy; Chris Cannam</translation>
     </message>
     <message>
         <source>Show centre indicator, frame times and scale</source>
@@ -2199,7 +2568,7 @@
     </message>
     <message>
         <source>Playback Speedup</source>
-        <translation>Zvýšení rychlosti přehrávání</translation>
+        <translation type="vanished">Zvýšení rychlosti přehrávání</translation>
     </message>
     <message>
         <source>Zoom &amp;Out</source>
@@ -2343,7 +2712,7 @@
     </message>
     <message>
         <source>With Qt v%1 &amp;copy; Nokia Corporation</source>
-        <translation>S Qt v%1 &amp;copy; Nokia Corporation</translation>
+        <translation type="vanished">S Qt v%1 &amp;copy; Nokia Corporation</translation>
     </message>
     <message>
         <source>Add a new layer showing a time ruler</source>
@@ -2615,7 +2984,7 @@
     </message>
     <message>
         <source>Ctrl+Shift+Enter</source>
-        <translation>Ctrl+Shift+Enter</translation>
+        <translation type="vanished">Ctrl+Shift+Enter</translation>
     </message>
     <message>
         <source>Audio processing overload</source>
@@ -2703,7 +3072,7 @@
     </message>
     <message>
         <source>Export Annotation Layer...</source>
-        <translation>Vyvést poznámkovou vrstvu...</translation>
+        <translation type="vanished">Vyvést poznámkovou vrstvu...</translation>
     </message>
     <message>
         <source>&amp;Export Audio File...</source>
@@ -2755,7 +3124,7 @@
     </message>
     <message>
         <source>&lt;b&gt;Layer generation failed&lt;/b&gt;&lt;p&gt;Failed to generate a derived layer.&lt;p&gt;The layer transform &quot;%1&quot; failed.&lt;p&gt;No error information is available.</source>
-        <translation>&lt;b&gt;Vytvoření vrstvy se nezdařilo&lt;/b&gt;&lt;p&gt;Nepodařilo se vytvořit odvozenou vrstvu.&lt;p&gt;Proměna vrstvy &quot;%1&quot; se nezdařila.&lt;p&gt;Nejsou dostupné žádné informace o chybě.</translation>
+        <translation type="vanished">&lt;b&gt;Vytvoření vrstvy se nezdařilo&lt;/b&gt;&lt;p&gt;Nepodařilo se vytvořit odvozenou vrstvu.&lt;p&gt;Proměna vrstvy &quot;%1&quot; se nezdařila.&lt;p&gt;Nejsou dostupné žádné informace o chybě.</translation>
     </message>
     <message>
         <source>Editing</source>
@@ -3035,7 +3404,7 @@
     </message>
     <message>
         <source>&lt;p&gt;&lt;small&gt;%1 : %2 configuration&lt;/small&gt;&lt;/p&gt;</source>
-        <translation>&lt;p&gt;&lt;small&gt;%1 : %2 nastavení&lt;/small&gt;&lt;/p&gt;</translation>
+        <translation type="vanished">&lt;p&gt;&lt;small&gt;%1 : %2 nastavení&lt;/small&gt;&lt;/p&gt;</translation>
     </message>
     <message>
         <source>&lt;b&gt;Template file exists&lt;/b&gt;&lt;p&gt;The template &quot;%1&quot; already exists.&lt;br&gt;Overwrite it?</source>
@@ -3103,7 +3472,7 @@
     </message>
     <message>
         <source>&lt;br&gt;With Vamp plugin support (API v%1, host SDK v%2) &amp;copy; Chris Cannam</source>
-        <translation>&lt;br&gt;Podpora pro přídavné moduly Vamp (API v%1, host SDK v%2) &amp;copy; Chris Cannam</translation>
+        <translation type="vanished">&lt;br&gt;Podpora pro přídavné moduly Vamp (API v%1, host SDK v%2) &amp;copy; Chris Cannam</translation>
     </message>
     <message>
         <source>Unclassified</source>
@@ -3151,7 +3520,7 @@
     </message>
     <message>
         <source>&lt;h3&gt;Newer version available&lt;/h3&gt;&lt;p&gt;You are using version %1 of Sonic Visualiser, but version %3 is now available.&lt;/p&gt;&lt;p&gt;Please see the &lt;a href=&quot;http://sonicvisualiser.org/&quot;&gt;Sonic Visualiser website&lt;/a&gt; for more information.&lt;/p&gt;</source>
-        <translation>&lt;h3&gt;Je dostupná novější verze&lt;/h3&gt;&lt;p&gt;Používáte verzi %1 programu Sonic Visualiser, ale nyní je dostupná verze %3.&lt;/p&gt;&lt;p&gt;Podívejte se, prosím, na stránky &lt;a href=&quot;http://sonicvisualiser.org/&quot;&gt;projektu Sonic Visualiser&lt;/a&gt;, abyste získal více informací.&lt;/p&gt;</translation>
+        <translation type="vanished">&lt;h3&gt;Je dostupná novější verze&lt;/h3&gt;&lt;p&gt;Používáte verzi %1 programu Sonic Visualiser, ale nyní je dostupná verze %3.&lt;/p&gt;&lt;p&gt;Podívejte se, prosím, na stránky &lt;a href=&quot;http://sonicvisualiser.org/&quot;&gt;projektu Sonic Visualiser&lt;/a&gt;, abyste získal více informací.&lt;/p&gt;</translation>
     </message>
     <message>
         <source>Edit Toolbar</source>
@@ -3263,7 +3632,7 @@
     </message>
     <message>
         <source>%1: %1</source>
-        <translation>%1: %1</translation>
+        <translation type="vanished">%1: %1</translation>
     </message>
     <message>
         <source>&lt;br&gt;With Serd and Sord RDF parser and store &amp;copy; David Robillard</source>
@@ -3271,11 +3640,7 @@
     </message>
     <message>
         <source>&lt;br&gt;With Dataquay Qt/RDF library &amp;copy; Chris Cannam</source>
-        <translation>&lt;br&gt;Knihovna Dataquay Qt/RDF &amp;copy; Chris Cannam</translation>
-    </message>
-    <message>
-        <source>&amp;Export Audio Data...</source>
-        <translation>&amp;Vyvést zvuková data...</translation>
+        <translation type="vanished">&lt;br&gt;Knihovna Dataquay Qt/RDF &amp;copy; Chris Cannam</translation>
     </message>
     <message>
         <source>Export audio from selection into a data file</source>
@@ -3289,6 +3654,318 @@
         <source>Export the whole file</source>
         <translation>Vyvést celý soubor</translation>
     </message>
+    <message>
+        <source>Playback Speed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Export Audio Data...</source>
+        <translation>&amp;Vyvést zvuková data...</translation>
+    </message>
+    <message>
+        <source>Export Annotation La&amp;yer...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Ctrl+Y</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Browse Recorded Audio Folder</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Open the Recorded Audio folder in the system file browser</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Ctrl+Shift+Return</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Show &amp;Unit Converter</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Open a window of pitch and timing conversion utilities</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Switch to Previous Layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>{</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Make the previous layer in the pane current</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Switch to Next Layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>}</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Make the next layer in the pane current</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Record</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Ctrl+Space</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Record a new audio file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Navigate Tool Mouse Actions</source>
+        <translation type="unfinished">Činnosti nástroje pro navádění prováděné myší</translation>
+    </message>
+    <message>
+        <source>Click left button and drag to move around</source>
+        <translation type="unfinished">Klepněte levým tlačítkem a táhněte pro přesouvání se</translation>
+    </message>
+    <message>
+        <source>Zoom to Area</source>
+        <translation type="unfinished">Přiblížit oblast</translation>
+    </message>
+    <message>
+        <source>Shift-click left button and drag to zoom to a rectangular area</source>
+        <translation type="unfinished">Shift-klepněte levým tlačítkem a táhněte pro přiblížení obdélníkové oblasti</translation>
+    </message>
+    <message>
+        <source>Relocate</source>
+        <translation type="unfinished">Přemístit</translation>
+    </message>
+    <message>
+        <source>Double-Click Left</source>
+        <translation type="unfinished">Dvakrát klepněte levým</translation>
+    </message>
+    <message>
+        <source>Double-click left button to jump to clicked location</source>
+        <translation type="unfinished">Dvakrát klepněte levým tlačítkem pro skok na klepnuté místo</translation>
+    </message>
+    <message>
+        <source>Double-click left button on an item to edit it</source>
+        <translation type="unfinished">Dvakrát klepněte levým tlačítkem na položce pro její upravení</translation>
+    </message>
+    <message>
+        <source>Select Tool Mouse Actions</source>
+        <translation type="unfinished">Činnosti nástroje výběru prováděné myší</translation>
+    </message>
+    <message>
+        <source>Click left button and drag to select region; drag region edge to resize</source>
+        <translation type="unfinished">Klepněte levým tlačítkem a táhněte pro výběr oblasti; táhněte za okraj oblasti pro změnu její velikosti</translation>
+    </message>
+    <message>
+        <source>Multi Select</source>
+        <translation type="unfinished">Vícenásobný výběr</translation>
+    </message>
+    <message>
+        <source>Cmd-click left button and drag to select an additional region</source>
+        <translation type="unfinished">Ctrl-klepněte levým tlačítkem a táhněte pro výběr další oblasti</translation>
+    </message>
+    <message>
+        <source>Ctrl-click left button and drag to select an additional region</source>
+        <translation type="unfinished">Ctrl-klepněte levým tlačítkem a táhněte pro výběr další oblasti</translation>
+    </message>
+    <message>
+        <source>Fine Select</source>
+        <translation type="unfinished">Citlivý výběr</translation>
+    </message>
+    <message>
+        <source>Shift-click left button and drag to select without snapping to items or grid</source>
+        <translation type="unfinished">Shift-klepněte levým tlačítkem a táhněte pro výběr bez zapadávání k položkám nebo mřížce</translation>
+    </message>
+    <message>
+        <source>Edit Tool Mouse Actions</source>
+        <translation type="unfinished">Činnosti nástroje úprav prováděné myší</translation>
+    </message>
+    <message>
+        <source>Move</source>
+        <translation type="unfinished">Posunout</translation>
+    </message>
+    <message>
+        <source>Click left button on an item or selected region and drag to move</source>
+        <translation type="unfinished">Klepněte levým tlačítkem na položku nebo vybranou oblast a táhněte pro její přesun</translation>
+    </message>
+    <message>
+        <source>Draw Tool Mouse Actions</source>
+        <translation type="unfinished">Činnosti nástroje kreslení prováděné myší</translation>
+    </message>
+    <message>
+        <source>Click left button and drag to create new item</source>
+        <translation type="unfinished">Klepněte levým tlačítkem a táhněte pro vytvoření nové položky</translation>
+    </message>
+    <message>
+        <source>Erase Tool Mouse Actions</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Click left button on an item to remove it from the layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Measure Tool Mouse Actions</source>
+        <translation type="unfinished">Činnosti nástroje měření prováděné myší</translation>
+    </message>
+    <message>
+        <source>Measure Area</source>
+        <translation type="unfinished">Oblast měření</translation>
+    </message>
+    <message>
+        <source>Click left button and drag to measure a rectangular area</source>
+        <translation type="unfinished">Klepněte levým tlačítkem a táhněte pro změření obdélníkové oblasti</translation>
+    </message>
+    <message>
+        <source>Measure Item</source>
+        <translation type="unfinished">Položka měření</translation>
+    </message>
+    <message>
+        <source>Click left button and drag to measure extents of an item or shape</source>
+        <translation type="unfinished">Klepněte levým tlačítkem a táhněte pro změření rozsahu položky nebo tvaru</translation>
+    </message>
+    <message>
+        <source>1. %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>%1. %2</source>
+        <translation type="unfinished">%1: %2 {1.?}</translation>
+    </message>
+    <message>
+        <source>Multiplex all of the above</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Playback speed: %1% (%2x slower)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Playback speed: %1% (%2x faster)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Problems loading plugins</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;b&gt;Layer generation failed&lt;/b&gt;&lt;p&gt;Failed to generate derived layer.&lt;p&gt;The layer transform %1failed:&lt;p&gt;%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;b&gt;Layer generation failed&lt;/b&gt;&lt;p&gt;Failed to generate a derived layer.&lt;p&gt;The layer transform %1failed.&lt;p&gt;No error information is available.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;h3&gt;Newer version available&lt;/h3&gt;&lt;p&gt;You are using version %1 of Sonic Visualiser, but version %2 is now available.&lt;/p&gt;&lt;p&gt;Please see the &lt;a href=&quot;http://sonicvisualiser.org/&quot;&gt;Sonic Visualiser website&lt;/a&gt; for more information.&lt;/p&gt;</source>
+        <translation type="unfinished">&lt;h3&gt;Je dostupná novější verze&lt;/h3&gt;&lt;p&gt;Používáte verzi %1 programu Sonic Visualiser, ale nyní je dostupná verze %3.&lt;/p&gt;&lt;p&gt;Podívejte se, prosím, na stránky &lt;a href=&quot;http://sonicvisualiser.org/&quot;&gt;projektu Sonic Visualiser&lt;/a&gt;, abyste získal více informací.&lt;/p&gt; {3&gt;?} {3&gt;?} {1 ?} {2 ?}</translation>
+    </message>
+    <message>
+        <source>Export SVG File...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Export a single pane to a scalable SVG image file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Subdivide Selected Instants...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add new instants at regular intervals between the selected instants</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Winnow Selected Instants...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Remove subdivisions, leaving only every Nth instant</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Export the whole pane</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Export the visible area only</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Which region of the current pane do you want to export as a scalable SVG image?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Failed to save SVG file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Failed to save SVG file %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Subdivide instants</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Number of subdivisions:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Winnow instants</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Remove all instants apart from multiples of:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;b&gt;Alignment calculation failed&lt;/b&gt;&lt;p&gt;Failed to calculate an audio alignment:&lt;p&gt;%1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Adjust the master playback level and pan</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;p&gt;&lt;small&gt;%1 : %2 configuration, %3-bit build&lt;/small&gt;&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>With Qt v%1 &amp;copy; The Qt Company</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;br&gt;With Rubber Band Library v%1 &amp;copy; Particular Programs Ltd</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;br&gt;With Rubber Band Library &amp;copy; Particular Programs Ltd</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;br&gt;With Vamp plugin support (API v%1, host SDK v%2) &amp;copy; Chris Cannam and QMUL</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;br&gt;With Dataquay Qt/RDF library &amp;copy; Particular Programs Ltd</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;br&gt;With Cap&apos;n Proto serialisation &amp;copy; Sandstorm Development Group</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>MainWindowBase</name>
@@ -3446,6 +4123,14 @@
         <source>&lt;b&gt;Failed to import RDF&lt;/b&gt;&lt;p&gt;Importing data from RDF document at &quot;%1&quot; failed: %2&lt;/p&gt;</source>
         <translation>&lt;b&gt;Nepodařilo se zavést RDF&lt;/b&gt;&lt;p&gt;Zavedení dat z dokumentu RDF na &quot;%1&quot; se nepodařilo: %2&lt;/p&gt;</translation>
     </message>
+    <message>
+        <source>Import Recorded Audio</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Recording: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>ModelDataTableDialog</name>
@@ -3541,6 +4226,21 @@
     </message>
 </context>
 <context>
+    <name>NetworkPermissionTester</name>
+    <message>
+        <source>Welcome to Sonic Visualiser</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;h2&gt;Welcome to Sonic Visualiser!&lt;/h2&gt;&lt;p&gt;&lt;img src=&quot;:icons/qm-logo-smaller.png&quot; style=&quot;float:right&quot;&gt;Sonic Visualiser is a program for viewing and exploring audio data for semantic music analysis and annotation.&lt;/p&gt;&lt;p&gt;Developed in the Centre for Digital Music at Queen Mary, University of London, Sonic Visualiser is provided free as open source software under the GNU General Public License.&lt;/p&gt;&lt;p&gt;&lt;hr&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Before we go on...&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Sonic Visualiser would like to make networking connections and open a network port.&lt;/p&gt;&lt;p&gt;This is to:&lt;/p&gt;&lt;ul&gt;&lt;li&gt; Find information about available and installed plugins;&lt;/li&gt;&lt;li&gt; Support the use of Open Sound Control, where configured; and&lt;/li&gt;&lt;li&gt; Tell you when updates are available.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;No personal information will be sent, no tracking is carried out, and all requests happen in the background without interrupting your work.&lt;/p&gt;&lt;p&gt;We recommend that you allow this, because it makes Sonic Visualiser more useful. But if you do not wish to do so, please un-check the box below.&lt;br&gt;&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Allow this</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>NoteLayer</name>
     <message>
         <source>Log</source>
@@ -3740,15 +4440,15 @@
     </message>
     <message>
         <source>Draw</source>
-        <translation>Nakreslit</translation>
+        <translation type="vanished">Nakreslit</translation>
     </message>
     <message>
         <source>Edit</source>
-        <translation>Upravit</translation>
+        <translation type="vanished">Upravit</translation>
     </message>
     <message>
         <source>Left</source>
-        <translation>Levé</translation>
+        <translation type="vanished">Levé</translation>
     </message>
     <message>
         <source>Menu</source>
@@ -3756,7 +4456,7 @@
     </message>
     <message>
         <source>Move</source>
-        <translation>Posunout</translation>
+        <translation type="vanished">Posunout</translation>
     </message>
     <message>
         <source>Zoom</source>
@@ -3764,7 +4464,7 @@
     </message>
     <message>
         <source>Click left button and drag to measure a rectangular area</source>
-        <translation>Klepněte levým tlačítkem a táhněte pro změření obdélníkové oblasti</translation>
+        <translation type="vanished">Klepněte levým tlačítkem a táhněte pro změření obdélníkové oblasti</translation>
     </message>
     <message>
         <source>Double-Click Middle</source>
@@ -3772,11 +4472,11 @@
     </message>
     <message>
         <source>Edit Tool Mouse Actions</source>
-        <translation>Činnosti nástroje úprav prováděné myší</translation>
+        <translation type="vanished">Činnosti nástroje úprav prováděné myší</translation>
     </message>
     <message>
         <source>Draw Tool Mouse Actions</source>
-        <translation>Činnosti nástroje kreslení prováděné myší</translation>
+        <translation type="vanished">Činnosti nástroje kreslení prováděné myší</translation>
     </message>
     <message>
         <source>Right</source>
@@ -3792,7 +4492,7 @@
     </message>
     <message>
         <source>Multi Select</source>
-        <translation>Vícenásobný výběr</translation>
+        <translation type="vanished">Vícenásobný výběr</translation>
     </message>
     <message>
         <source>Zoom In</source>
@@ -3804,7 +4504,7 @@
     </message>
     <message>
         <source>Shift-click left button and drag to zoom to a rectangular area</source>
-        <translation>Shift-klepněte levým tlačítkem a táhněte pro přiblížení obdélníkové oblasti</translation>
+        <translation type="vanished">Shift-klepněte levým tlačítkem a táhněte pro přiblížení obdélníkové oblasti</translation>
     </message>
     <message>
         <source>%1 / %2Hz%3</source>
@@ -3832,7 +4532,7 @@
     </message>
     <message>
         <source>Double-click left button on an item to edit it</source>
-        <translation>Dvakrát klepněte levým tlačítkem na položce pro její upravení</translation>
+        <translation type="vanished">Dvakrát klepněte levým tlačítkem na položce pro její upravení</translation>
     </message>
     <message>
         <source>Scroll rapidly left or right in time axis</source>
@@ -3852,11 +4552,11 @@
     </message>
     <message>
         <source>Select</source>
-        <translation>Vybrat</translation>
+        <translation type="vanished">Vybrat</translation>
     </message>
     <message>
         <source>Fine Select</source>
-        <translation>Citlivý výběr</translation>
+        <translation type="vanished">Citlivý výběr</translation>
     </message>
     <message>
         <source>Zoom in or out in time axis</source>
@@ -3864,7 +4564,7 @@
     </message>
     <message>
         <source>Click left button and drag to measure extents of an item or shape</source>
-        <translation>Klepněte levým tlačítkem a táhněte pro změření rozsahu položky nebo tvaru</translation>
+        <translation type="vanished">Klepněte levým tlačítkem a táhněte pro změření rozsahu položky nebo tvaru</translation>
     </message>
     <message>
         <source>Zoom Out</source>
@@ -3892,7 +4592,7 @@
     </message>
     <message>
         <source>Click left button on an item or selected region and drag to move</source>
-        <translation>Klepněte levým tlačítkem na položku nebo vybranou oblast a táhněte pro její přesun</translation>
+        <translation type="vanished">Klepněte levým tlačítkem na položku nebo vybranou oblast a táhněte pro její přesun</translation>
     </message>
     <message>
         <source>Click and drag to select a range; hold Shift to avoid snapping to items; hold Ctrl for multi-select; middle-click and drag to navigate</source>
@@ -3912,11 +4612,11 @@
     </message>
     <message>
         <source>Click left button and drag to move around</source>
-        <translation>Klepněte levým tlačítkem a táhněte pro přesouvání se</translation>
+        <translation type="vanished">Klepněte levým tlačítkem a táhněte pro přesouvání se</translation>
     </message>
     <message>
         <source>Select Tool Mouse Actions</source>
-        <translation>Činnosti nástroje výběru prováděné myší</translation>
+        <translation type="vanished">Činnosti nástroje výběru prováděné myší</translation>
     </message>
     <message>
         <source>Unaligned</source>
@@ -3944,7 +4644,7 @@
     </message>
     <message>
         <source>Ctrl+Left</source>
-        <translation>Ctrl+šipka vlevo</translation>
+        <translation type="vanished">Ctrl+šipka vlevo</translation>
     </message>
     <message>
         <source>Click and drag to move the selection boundary</source>
@@ -3952,11 +4652,11 @@
     </message>
     <message>
         <source>Measure Tool Mouse Actions</source>
-        <translation>Činnosti nástroje měření prováděné myší</translation>
+        <translation type="vanished">Činnosti nástroje měření prováděné myší</translation>
     </message>
     <message>
         <source>Ctrl-click left button and drag to select an additional region</source>
-        <translation>Ctrl-klepněte levým tlačítkem a táhněte pro výběr další oblasti</translation>
+        <translation type="vanished">Ctrl-klepněte levým tlačítkem a táhněte pro výběr další oblasti</translation>
     </message>
     <message>
         <source>Zoom in or out in the vertical axis</source>
@@ -3980,7 +4680,7 @@
     </message>
     <message>
         <source>Double-Click Left</source>
-        <translation>Dvakrát klepněte levým</translation>
+        <translation type="vanished">Dvakrát klepněte levým</translation>
     </message>
     <message>
         <source>Wheel Down</source>
@@ -3988,7 +4688,7 @@
     </message>
     <message>
         <source>Shift-click left button and drag to select without snapping to items or grid</source>
-        <translation>Shift-klepněte levým tlačítkem a táhněte pro výběr bez zapadávání k položkám nebo mřížce</translation>
+        <translation type="vanished">Shift-klepněte levým tlačítkem a táhněte pro výběr bez zapadávání k položkám nebo mřížce</translation>
     </message>
     <message>
         <source>Relocate</source>
@@ -4000,7 +4700,7 @@
     </message>
     <message>
         <source>Navigate Tool Mouse Actions</source>
-        <translation>Činnosti nástroje pro navádění prováděné myší</translation>
+        <translation type="vanished">Činnosti nástroje pro navádění prováděné myší</translation>
     </message>
     <message>
         <source>Reference</source>
@@ -4012,19 +4712,19 @@
     </message>
     <message>
         <source>Zoom to Area</source>
-        <translation>Přiblížit oblast</translation>
+        <translation type="vanished">Přiblížit oblast</translation>
     </message>
     <message>
         <source>Measure Area</source>
-        <translation>Oblast měření</translation>
+        <translation type="vanished">Oblast měření</translation>
     </message>
     <message>
         <source>Measure Item</source>
-        <translation>Položka měření</translation>
+        <translation type="vanished">Položka měření</translation>
     </message>
     <message>
         <source>Shift+Left</source>
-        <translation>Shift+šipka vlevo</translation>
+        <translation type="vanished">Shift+šipka vlevo</translation>
     </message>
     <message>
         <source>Click and drag to adjust the horizontal zoom level</source>
@@ -4032,7 +4732,7 @@
     </message>
     <message>
         <source>Click left button and drag to select region; drag region edge to resize</source>
-        <translation>Klepněte levým tlačítkem a táhněte pro výběr oblasti; táhněte za okraj oblasti pro změnu její velikosti</translation>
+        <translation type="vanished">Klepněte levým tlačítkem a táhněte pro výběr oblasti; táhněte za okraj oblasti pro změnu její velikosti</translation>
     </message>
     <message>
         <source>Wheel Up</source>
@@ -4060,11 +4760,11 @@
     </message>
     <message>
         <source>Double-click left button to jump to clicked location</source>
-        <translation>Dvakrát klepněte levým tlačítkem pro skok na klepnuté místo</translation>
+        <translation type="vanished">Dvakrát klepněte levým tlačítkem pro skok na klepnuté místo</translation>
     </message>
     <message>
         <source>Click left button and drag to create new item</source>
-        <translation>Klepněte levým tlačítkem a táhněte pro vytvoření nové položky</translation>
+        <translation type="vanished">Klepněte levým tlačítkem a táhněte pro vytvoření nové položky</translation>
     </message>
     <message>
         <source>New vertical display range, from %1 to %2 %4:</source>
@@ -4072,7 +4772,7 @@
     </message>
     <message>
         <source>Cmd-click left button and drag to select an additional region</source>
-        <translation>Ctrl-klepněte levým tlačítkem a táhněte pro výběr další oblasti</translation>
+        <translation type="vanished">Ctrl-klepněte levým tlačítkem a táhněte pro výběr další oblasti</translation>
     </message>
     <message>
         <source>Click and drag to select a range; hold Shift to avoid snapping to items; hold Cmd for multi-select; middle-click and drag to navigate</source>
@@ -4099,7 +4799,7 @@
     </message>
     <message>
         <source>Change Playback Plugin</source>
-        <translation>Změnit přídavný modul přehrávání</translation>
+        <translation type="vanished">Změnit přídavný modul přehrávání</translation>
     </message>
     <message>
         <source>Change Playback Pan</source>
@@ -4107,7 +4807,11 @@
     </message>
     <message>
         <source>Configure Playback Plugin</source>
-        <translation>Nastavit přídavný modul přehrávání</translation>
+        <translation type="vanished">Nastavit přídavný modul přehrávání</translation>
+    </message>
+    <message>
+        <source>Change Playback Sample</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
@@ -4371,7 +5075,7 @@
     </message>
     <message>
         <source>Time display format</source>
-        <translation>Formát zobrazení času</translation>
+        <translation type="vanished">Formát zobrazení času</translation>
     </message>
     <message>
         <source>Show boxes for all panes</source>
@@ -4397,6 +5101,46 @@
         <source>4 x Oversampling with interpolation</source>
         <translation>4 x převzorkování s interpolací</translation>
     </message>
+    <message>
+        <source>Normalise audio signal when reading from audio file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Single fixed sample rate to resample all files to</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Time display precision</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Use hours:minutes:seconds format</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Label middle C as</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>C0 - middle of octave scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>C3 - common MIDI sequencer convention</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>C4 - ASA American standard</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>C5 - used in Cakewalk and others</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Load mp3 files in gapless mode</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PreferencesDialog</name>
@@ -4440,7 +5184,7 @@
     </message>
     <message>
         <source>Default session template for audio files:</source>
-        <translation>Výchozí předloha sezení pro zvukové soubory:</translation>
+        <translation type="vanished">Výchozí předloha sezení pro zvukové soubory:</translation>
     </message>
     <message>
         <source>Anal&amp;ysis</source>
@@ -4468,11 +5212,11 @@
     </message>
     <message>
         <source>&amp;General</source>
-        <translation>&amp;Obecné</translation>
+        <translation type="vanished">&amp;Obecné</translation>
     </message>
     <message>
         <source>Playback audio device:</source>
-        <translation>Zvukové zařízení pro přehrávání:</translation>
+        <translation type="vanished">Zvukové zařízení pro přehrávání:</translation>
     </message>
     <message>
         <source>Follow system locale</source>
@@ -4498,6 +5242,74 @@
         <source>User interface language</source>
         <translation>Jazyk uživatelského rozhraní</translation>
     </message>
+    <message>
+        <source>Allow network usage</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Draw layers at Retina resolution:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Default spectrogram colour:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Default melodic spectrogram colour:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Default colour 3D plot colour:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Green</source>
+        <translation type="unfinished">Zelená</translation>
+    </message>
+    <message>
+        <source>(auto)</source>
+        <translation type="unfinished">(auto)</translation>
+    </message>
+    <message>
+        <source>Overview waveform colour:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Run Vamp plugins in separate process:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Default session template when loading audio files:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>(Use &quot;%1&quot; in the File menu to add to these.)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Export Session as Template...</source>
+        <translation type="unfinished">Vyvést předlohu jako sezení...</translation>
+    </message>
+    <message>
+        <source>Audio service:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Audio playback device:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Audio record device:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>A&amp;udio I/O</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&amp;Other</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>ProgressDialog</name>
@@ -4510,11 +5322,11 @@
     <name>PropertyBox</name>
     <message>
         <source>dB</source>
-        <translation>dB</translation>
+        <translation type="vanished">dB</translation>
     </message>
     <message>
         <source>Play</source>
-        <translation>Přehrát</translation>
+        <translation type="vanished">Přehrát</translation>
     </message>
     <message>
         <source>Show</source>
@@ -4538,11 +5350,11 @@
     </message>
     <message>
         <source>Playback Pan / Balance</source>
-        <translation>Vyvážení přehrávání/rovnováha</translation>
+        <translation type="vanished">Vyvážení přehrávání/rovnováha</translation>
     </message>
     <message>
         <source>Prefer black background for this colour</source>
-        <translation>Upřednostňovat černé pozadí pro tuto barvu</translation>
+        <translation type="vanished">Upřednostňovat černé pozadí pro tuto barvu</translation>
     </message>
     <message>
         <source>Toggle Visibility of %1</source>
@@ -4554,19 +5366,35 @@
     </message>
     <message>
         <source>Add New Colour...</source>
-        <translation>Přidat novou barvu...</translation>
+        <translation type="vanished">Přidat novou barvu...</translation>
     </message>
     <message>
         <source>Name New Colour</source>
-        <translation>Pojmenovat novou barvu</translation>
+        <translation type="vanished">Pojmenovat novou barvu</translation>
     </message>
     <message>
         <source>Enter a name for the new colour:</source>
-        <translation>Zadejte název pro novou barvu:</translation>
+        <translation type="vanished">Zadejte název pro novou barvu:</translation>
     </message>
     <message>
         <source>Playback Gain</source>
-        <translation>Zesílení přehrávání</translation>
+        <translation type="vanished">Zesílení přehrávání</translation>
+    </message>
+    <message>
+        <source>Set playback clip:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Click to toggle playback</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Adjust playback level and pan of %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Change sound used for playback (currently &quot;%1&quot;)</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
@@ -4675,10 +5503,97 @@
     </message>
 </context>
 <context>
+    <name>QObject</name>
+    <message>
+        <source>External plugin host executable does not appear to be installed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Could not start external plugin host</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>External plugin host exited unexpectedly while listing plugins</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>External plugin host invocation failed: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;b&gt;Failed to scan for plugins&lt;/b&gt;&lt;p&gt;Failed to scan for plugins at startup. Possibly the plugin checker helper program was not correctly installed alongside %1?&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;b&gt;Did not scan for plugins&lt;/b&gt;&lt;p&gt;Apparently no scan for plugins was attempted (internal error?)&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;b&gt;Failed to load plugins&lt;/b&gt;&lt;p&gt;Failed to load one or more plugin libraries:&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;p&gt;These plugins may be incompatible with the system, and will be ignored during this run of %1.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;unknown&gt;</source>
+        <translation type="unfinished">&lt;neznámý&gt;</translation>
+    </message>
+    <message>
+        <source>Green</source>
+        <translation type="unfinished">Zelená</translation>
+    </message>
+    <message>
+        <source>White on Black</source>
+        <translation type="unfinished">Bílá na černé</translation>
+    </message>
+    <message>
+        <source>Black on White</source>
+        <translation type="unfinished">Černá na bílé</translation>
+    </message>
+    <message>
+        <source>Cherry</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Wasp</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Ice</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Sunset</source>
+        <translation type="unfinished">Západ slunce</translation>
+    </message>
+    <message>
+        <source>Fruit Salad</source>
+        <translation type="unfinished">Ovocný salát</translation>
+    </message>
+    <message>
+        <source>Banded</source>
+        <translation type="unfinished">Pruhovaný</translation>
+    </message>
+    <message>
+        <source>Highlight</source>
+        <translation type="unfinished">Zvýraznění</translation>
+    </message>
+    <message>
+        <source>Printer</source>
+        <translation type="unfinished">Tiskárna</translation>
+    </message>
+    <message>
+        <source>High Gain</source>
+        <translation type="unfinished">Zesílení výšek</translation>
+    </message>
+</context>
+<context>
     <name>QuickTimeFileReader</name>
     <message>
         <source>Decoding %1...</source>
-        <translation>Dekóduje se %1...</translation>
+        <translation type="vanished">Dekóduje se %1...</translation>
     </message>
 </context>
 <context>
@@ -4711,6 +5626,13 @@
     </message>
 </context>
 <context>
+    <name>ReadOnlyWaveFileModel</name>
+    <message>
+        <source>Wave File</source>
+        <translation type="unfinished">Soubor Wave</translation>
+    </message>
+</context>
+<context>
     <name>RegionLayer</name>
     <message>
         <source>Log</source>
@@ -4883,7 +5805,7 @@
     <name>ResamplingWavFileReader</name>
     <message>
         <source>Resampling %1...</source>
-        <translation>Převzorkovává se %1...</translation>
+        <translation type="vanished">Převzorkovává se %1...</translation>
     </message>
 </context>
 <context>
@@ -5156,7 +6078,7 @@
     </message>
     <message>
         <source>-Inf</source>
-        <translation>-Inf</translation>
+        <translation type="vanished">-Inf</translation>
     </message>
     <message>
         <source>25 %</source>
@@ -5248,7 +6170,7 @@
     </message>
     <message>
         <source>Normalize Columns</source>
-        <translation>Normalizovat sloupce</translation>
+        <translation type="vanished">Normalizovat sloupce</translation>
     </message>
     <message>
         <source>Time:	%1 - %2
@@ -5304,7 +6226,7 @@
     </message>
     <message>
         <source>Normalize Visible Area</source>
-        <translation>Normalizovat viditelnou oblast</translation>
+        <translation type="vanished">Normalizovat viditelnou oblast</translation>
     </message>
     <message>
         <source>Colour</source>
@@ -5350,7 +6272,7 @@
     </message>
     <message>
         <source>Smoothing</source>
-        <translation>Vyhlazování</translation>
+        <translation type="vanished">Vyhlazování</translation>
     </message>
     <message>
         <source>dB:	%1</source>
@@ -5436,6 +6358,22 @@
         <source>Max Frequency</source>
         <translation>Největší kmitočet</translation>
     </message>
+    <message>
+        <source>Normalization</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Col</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>View</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Hybrid</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>SpectrumLayer</name>
@@ -5445,7 +6383,7 @@
     </message>
     <message>
         <source>-Inf</source>
-        <translation>-Inf</translation>
+        <translation type="vanished">-Inf</translation>
     </message>
     <message>
         <source>25 %</source>
@@ -5547,11 +6485,11 @@
     <name>Surveyer</name>
     <message>
         <source>No, thanks</source>
-        <translation type="obsolete">Ne, děkuji</translation>
+        <translation type="unfinished">Ne, děkuji</translation>
     </message>
     <message>
         <source>Yes! Take me to the survey</source>
-        <translation type="obsolete">Ano! Vezmi mě do průzkumu</translation>
+        <translation type="unfinished">Ano! Vezmi mě do průzkumu</translation>
     </message>
 </context>
 <context>
@@ -5838,7 +6776,7 @@
         <source>Time:	%1
 Value:	%2%3
 Label:	%4</source>
-        <translation>Čas:	%1
+        <translation type="vanished">Čas:	%1
 Hodnota:	%2%3
 Štítek:	%4</translation>
     </message>
@@ -5908,7 +6846,7 @@
         <source>Time:	%1
 Value:	%2%3
 No label</source>
-        <translation>Čas:	%1
+        <translation type="vanished">Čas:	%1
 Hodnota:	%2%3
 Žádný štítek</translation>
     </message>
@@ -5952,6 +6890,42 @@
         <source>Draw Segment Division Lines</source>
         <translation>Kreslit čáry rozdělující části</translation>
     </message>
+    <message>
+        <source>Discrete Curves</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>%1 Hz (%2, %3)</source>
+        <translation type="unfinished">%1 Hz (%2, %3)</translation>
+    </message>
+    <message>
+        <source>%1 %2</source>
+        <translation type="unfinished">%1 %2</translation>
+    </message>
+    <message>
+        <source>%1</source>
+        <translation type="unfinished">%1</translation>
+    </message>
+    <message>
+        <source>Time:	%1
+Value:	%2
+No label</source>
+        <translation type="unfinished">Čas:	%1
+Hodnota:	%2%3
+Žádný štítek {1
+?} {2
+?}</translation>
+    </message>
+    <message>
+        <source>Time:	%1
+Value:	%2
+Label:	%4</source>
+        <translation type="unfinished">Čas:	%1
+Hodnota:	%2%3
+Štítek:	%4 {1
+?} {2
+?}</translation>
+    </message>
 </context>
 <context>
     <name>TipDialog</name>
@@ -6074,6 +7048,10 @@
         <source>Effects Data</source>
         <translation>Efektová data</translation>
     </message>
+    <message>
+        <source>Failed to list Vamp plugins: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>TransformFinder</name>
@@ -6179,6 +7157,62 @@
     </message>
 </context>
 <context>
+    <name>UnitConverter</name>
+    <message>
+        <source>Pitch</source>
+        <translation type="unfinished">Výška tónu</translation>
+    </message>
+    <message>
+        <source> cents</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>In 12-tone Equal Temperament:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>=</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Piano note</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>in octave</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>MIDI pitch</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Note that only pitches in the range 0 to 127 are valid in the MIDI protocol.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Tempo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Beat period</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>at</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>With concert-A tuning frequency at %1 Hz, and middle C residing in octave %2.
+(These can be changed in the application preferences.)</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>View</name>
     <message>
         <source>Off</source>
@@ -6228,6 +7262,10 @@
         <source>Alignment</source>
         <translation>Zarovnání</translation>
     </message>
+    <message>
+        <source>Exported image from %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>ViewManager</name>
@@ -6315,12 +7353,16 @@
             <numerusform>Zvětšení na %n vzorků na pixel</numerusform>
         </translation>
     </message>
+    <message>
+        <source>Enter NoteEdit mode</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>WaveFileModel</name>
     <message>
         <source>Wave File</source>
-        <translation>Soubor Wave</translation>
+        <translation type="vanished">Soubor Wave</translation>
     </message>
 </context>
 <context>
@@ -6335,7 +7377,7 @@
     </message>
     <message>
         <source>-Inf</source>
-        <translation>-Inf</translation>
+        <translation type="vanished">-Inf</translation>
     </message>
     <message>
         <source>Gain</source>
Binary file i18n/sonic-visualiser_en_GB.qm has changed
--- a/i18n/sonic-visualiser_en_GB.ts	Tue Jan 10 16:10:33 2017 +0000
+++ b/i18n/sonic-visualiser_en_GB.ts	Tue Jan 10 16:21:32 2017 +0000
@@ -1,20 +1,20 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!DOCTYPE TS>
-<TS version="2.0" language="en">
+<TS version="2.1" language="en">
 <context>
     <name>ActivityLog</name>
     <message>
-        <location filename="../../svgui/widgets/ActivityLog.cpp" line="30"/>
+        <location filename="../svgui/widgets/ActivityLog.cpp" line="37"/>
         <source>Activity Log</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ActivityLog.cpp" line="35"/>
+        <location filename="../svgui/widgets/ActivityLog.cpp" line="42"/>
         <source>&lt;p&gt;Activity Log lists your interactions and other events within %1.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ActivityLog.cpp" line="63"/>
+        <location filename="../svgui/widgets/ActivityLog.cpp" line="77"/>
         <source>%1: %2</source>
         <translation type="unfinished"></translation>
     </message>
@@ -22,7 +22,7 @@
 <context>
     <name>AddLayerCommand</name>
     <message>
-        <location filename="../../svapp/framework/Document.cpp" line="956"/>
+        <location filename="../svapp/framework/Document.cpp" line="1108"/>
         <source>Add %1 Layer</source>
         <translation type="unfinished"></translation>
     </message>
@@ -30,7 +30,7 @@
 <context>
     <name>AggregateWaveModel</name>
     <message>
-        <location filename="../../svcore/data/model/AggregateWaveModel.h" line="45"/>
+        <location filename="../svcore/data/model/AggregateWaveModel.h" line="45"/>
         <source>Aggregate Wave</source>
         <translation type="unfinished"></translation>
     </message>
@@ -38,25 +38,33 @@
 <context>
     <name>AlignmentModel</name>
     <message>
-        <location filename="../../svcore/data/model/AlignmentModel.h" line="47"/>
+        <location filename="../svcore/data/model/AlignmentModel.h" line="46"/>
         <source>Alignment</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
+    <name>AlignmentView</name>
+    <message>
+        <location filename="../svgui/view/AlignmentView.cpp" line="31"/>
+        <source>AlignmentView</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>AudioCallbackPlaySource</name>
     <message>
-        <location filename="../../svapp/audioio/AudioCallbackPlaySource.cpp" line="459"/>
+        <location filename="../svapp/audio/AudioCallbackPlaySource.cpp" line="517"/>
         <source>Play from %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/audioio/AudioCallbackPlaySource.cpp" line="482"/>
+        <location filename="../svapp/audio/AudioCallbackPlaySource.cpp" line="540"/>
         <source>Stop at %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/audioio/AudioCallbackPlaySource.cpp" line="1071"/>
+        <location filename="../svapp/audio/AudioCallbackPlaySource.cpp" line="1076"/>
         <source>Change time-stretch factor to %1</source>
         <translation type="unfinished"></translation>
     </message>
@@ -64,140 +72,117 @@
 <context>
     <name>AudioDial</name>
     <message>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="416"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="419"/>
+        <source>%1: %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="429"/>
         <source>%1: %2%3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="418"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="431"/>
         <source>%2%3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="481"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="495"/>
         <source>New value for %1, from %2 to %3 %4:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="484"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="498"/>
         <source>New value for %1, from %2 to %3:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="489"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="503"/>
         <source>Enter a new value from %1 to %2 %3:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="492"/>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="516"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="506"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="530"/>
         <source>Enter a new value from %1 to %2:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="499"/>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="515"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="513"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="529"/>
         <source>Enter new value</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
-    <name>AudioTargetFactory</name>
-    <message>
-        <location filename="../../svapp/audioio/AudioTargetFactory.cpp" line="72"/>
-        <source>(auto)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svapp/audioio/AudioTargetFactory.cpp" line="76"/>
-        <source>JACK Audio Connection Kit</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svapp/audioio/AudioTargetFactory.cpp" line="80"/>
-        <source>PulseAudio Server</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svapp/audioio/AudioTargetFactory.cpp" line="84"/>
-        <source>Core Audio Device</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svapp/audioio/AudioTargetFactory.cpp" line="88"/>
-        <source>Default Soundcard Device</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
     <name>BZipFileDevice</name>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="49"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="51"/>
         <source>File is already open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="54"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="56"/>
         <source>Append mode not supported</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="60"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="62"/>
         <source>File access mode not specified</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="66"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="68"/>
         <source>Read and write modes both specified</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="75"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="77"/>
         <source>Failed to open file for writing</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="86"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="88"/>
         <source>Failed to open bzip2 stream for writing</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="102"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="104"/>
         <source>Failed to open file for reading</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="113"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="115"/>
         <source>Failed to open bzip2 stream for reading</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="127"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="129"/>
         <source>Internal error (open for neither read nor write)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="136"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="138"/>
         <source>File not open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="148"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="150"/>
         <source>bzip2 stream write close error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="160"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="162"/>
         <source>bzip2 stream read close error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="169"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="171"/>
         <source>Internal error (close for neither read nor write)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="186"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="188"/>
         <source>bzip2 stream read error</source>
         <translation type="unfinished"></translation>
     </message>
@@ -205,7 +190,7 @@
 <context>
     <name>BundleCommand</name>
     <message numerus="yes">
-        <location filename="../../svcore/base/Command.cpp" line="98"/>
+        <location filename="../svcore/base/Command.cpp" line="98"/>
         <source>%1 (%n change(s))</source>
         <translation type="unfinished">
             <numerusform>%1 (%n change)</numerusform>
@@ -216,7 +201,8 @@
 <context>
     <name>CSVFileWriter</name>
     <message>
-        <location filename="../../svcore/data/fileio/CSVFileWriter.cpp" line="62"/>
+        <location filename="../svcore/data/fileio/CSVFileWriter.cpp" line="67"/>
+        <location filename="../svcore/data/fileio/CSVFileWriter.cpp" line="92"/>
         <source>Failed to open file %1 for writing</source>
         <translation type="unfinished"></translation>
     </message>
@@ -224,88 +210,98 @@
 <context>
     <name>CSVFormatDialog</name>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="40"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="45"/>
         <source>Select Data Format</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="46"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="51"/>
         <source>Please select the correct data format for this file.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="78"/>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="88"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="83"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="93"/>
         <source>&lt;ignore&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="79"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="84"/>
         <source>Values</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="82"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="87"/>
         <source>(%1 more)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="89"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="94"/>
         <source>Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="90"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="95"/>
         <source>End time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="91"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="96"/>
         <source>Duration</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="92"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="97"/>
         <source>Value</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="93"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="98"/>
+        <source>Pitch</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="99"/>
         <source>Label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="111"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="121"/>
         <source>Timing is specified:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="114"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="126"/>
         <source>Explicitly, in seconds</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="115"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="127"/>
+        <source>Explicitly, in milliseconds</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="128"/>
         <source>Explicitly, in audio sample frames</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="116"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="129"/>
         <source>Implicitly: rows are equally spaced in time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="124"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="156"/>
         <source>Audio sample rate (Hz):</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="147"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="179"/>
         <source>Frame increment between rows:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="215"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="249"/>
         <source>Data will be displayed in a %1 layer.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -313,91 +309,114 @@
 <context>
     <name>Colour3DPlotLayer</name>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="170"/>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="216"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="251"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="292"/>
         <source>Colour</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="171"/>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="211"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="252"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="287"/>
         <source>Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="172"/>
         <source>Normalize Columns</source>
-        <translation type="unfinished">Normalise Columns</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="173"/>
+        <translation type="obsolete">Normalise Columns</translation>
+    </message>
+    <message>
         <source>Normalize Visible Area</source>
-        <translation type="unfinished">Normalise Visible Area</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="174"/>
+        <translation type="obsolete">Normalise Visible Area</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="253"/>
+        <source>Normalization</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="254"/>
         <source>Invert Vertical Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="175"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="255"/>
         <source>Gain</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="176"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="256"/>
         <source>Always Opaque</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="177"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="257"/>
         <source>Smooth</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="178"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="258"/>
         <source>Bin Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="213"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="289"/>
         <source>Bins</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="309"/>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="318"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="384"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="403"/>
         <source>Linear</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="310"/>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="319"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="385"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="404"/>
         <source>Log</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="311"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="386"/>
         <source>+/-1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="312"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="387"/>
         <source>Absolute</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="322"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="393"/>
+        <source>None</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="394"/>
+        <source>Col</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="395"/>
+        <source>View</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="396"/>
+        <source>Hybrid</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="407"/>
         <source>&lt;unknown&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="329"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="430"/>
         <source>dB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="698"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="824"/>
         <source>Time:	%1 - %2
 Bin:	%3
 Value:	%4</source>
@@ -405,139 +424,92 @@
     </message>
 </context>
 <context>
-    <name>ColourMapper</name>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="48"/>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="66"/>
-        <source>&lt;unknown&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="52"/>
-        <source>Default</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="53"/>
-        <source>White on Black</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="54"/>
-        <source>Black on White</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="55"/>
-        <source>Red on Blue</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="56"/>
-        <source>Yellow on Black</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="57"/>
-        <source>Blue on Black</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="58"/>
-        <source>Sunset</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="59"/>
-        <source>Fruit Salad</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="60"/>
-        <source>Banded</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="61"/>
-        <source>Highlight</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="62"/>
-        <source>Printer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="63"/>
-        <source>High Gain</source>
+    <name>ColourComboBox</name>
+    <message>
+        <location filename="../svgui/widgets/ColourComboBox.cpp" line="59"/>
+        <source>Name New Colour</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/ColourComboBox.cpp" line="60"/>
+        <source>Enter a name for the new colour:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/ColourComboBox.cpp" line="62"/>
+        <source>Prefer black background for this colour</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/ColourComboBox.cpp" line="94"/>
+        <source>Add New Colour...</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>CommandHistory</name>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="56"/>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="61"/>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="64"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="67"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="70"/>
         <source>&amp;Undo</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="57"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="63"/>
         <source>Ctrl+Z</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="58"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="64"/>
         <source>Undo the last editing operation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="69"/>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="74"/>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="77"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="75"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="80"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="83"/>
         <source>Re&amp;do</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="70"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="76"/>
         <source>Ctrl+Shift+Z</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="71"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="77"/>
         <source>Redo the last operation that was undone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="341"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="357"/>
         <source>Undo %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="367"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="383"/>
         <source>Redo %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="500"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="516"/>
         <source>Nothing to undo</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="500"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="516"/>
         <source>Nothing to redo</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="516"/>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="538"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="532"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="554"/>
         <source>&amp;Undo %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="516"/>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="539"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="532"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="555"/>
         <source>Re&amp;do %1</source>
         <translation type="unfinished"></translation>
     </message>
@@ -545,7 +517,15 @@
 <context>
     <name>CoreAudioFileReader</name>
     <message>
-        <location filename="../../svcore/data/fileio/CoreAudioFileReader.cpp" line="156"/>
+        <location filename="../svcore/data/fileio/CoreAudioFileReader.cpp" line="162"/>
+        <source>Decoding %1...</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>DecodingWavFileReader</name>
+    <message>
+        <location filename="../svcore/data/fileio/DecodingWavFileReader.cpp" line="68"/>
         <source>Decoding %1...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -553,7 +533,7 @@
 <context>
     <name>Dense3DModelPeakCache</name>
     <message>
-        <location filename="../../svcore/data/model/Dense3DModelPeakCache.h" line="86"/>
+        <location filename="../svcore/data/model/Dense3DModelPeakCache.h" line="88"/>
         <source>Dense 3-D Peak Cache</source>
         <translation type="unfinished"></translation>
     </message>
@@ -561,17 +541,17 @@
 <context>
     <name>DenseThreeDimensionalModel</name>
     <message>
-        <location filename="../../svcore/data/model/DenseThreeDimensionalModel.h" line="110"/>
+        <location filename="../svcore/data/model/DenseThreeDimensionalModel.h" line="121"/>
         <source>Dense 3-D</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/DenseThreeDimensionalModel.h" line="127"/>
+        <location filename="../svcore/data/model/DenseThreeDimensionalModel.h" line="138"/>
         <source>Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/DenseThreeDimensionalModel.h" line="128"/>
+        <location filename="../svcore/data/model/DenseThreeDimensionalModel.h" line="139"/>
         <source>Frame</source>
         <translation type="unfinished"></translation>
     </message>
@@ -579,7 +559,7 @@
 <context>
     <name>DenseTimeValueModel</name>
     <message>
-        <location filename="../../svcore/data/model/DenseTimeValueModel.h" line="89"/>
+        <location filename="../svcore/data/model/DenseTimeValueModel.h" line="89"/>
         <source>Dense Time-Value</source>
         <translation type="unfinished"></translation>
     </message>
@@ -587,12 +567,12 @@
 <context>
     <name>Document</name>
     <message>
-        <location filename="../../svapp/framework/Document.cpp" line="270"/>
+        <location filename="../svapp/framework/Document.cpp" line="419"/>
         <source>Set main model to %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/Document.cpp" line="272"/>
+        <location filename="../svapp/framework/Document.cpp" line="421"/>
         <source>Clear main model</source>
         <translation type="unfinished"></translation>
     </message>
@@ -600,7 +580,7 @@
 <context>
     <name>EditableDenseThreeDimensionalModel</name>
     <message>
-        <location filename="../../svcore/data/model/EditableDenseThreeDimensionalModel.h" line="139"/>
+        <location filename="../svcore/data/model/EditableDenseThreeDimensionalModel.h" line="189"/>
         <source>Editable Dense 3-D</source>
         <translation type="unfinished"></translation>
     </message>
@@ -608,12 +588,12 @@
 <context>
     <name>FFTModel</name>
     <message>
-        <location filename="../../svcore/data/model/FFTModel.h" line="188"/>
+        <location filename="../svcore/data/model/FFTModel.h" line="141"/>
         <source>FFT</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/FFTModel.cpp" line="203"/>
+        <location filename="../svcore/data/model/FFTModel.cpp" line="94"/>
         <source>%1 Hz</source>
         <translation type="unfinished"></translation>
     </message>
@@ -621,22 +601,22 @@
 <context>
     <name>Fader</name>
     <message>
-        <location filename="../../svgui/widgets/Fader.cpp" line="141"/>
+        <location filename="../svgui/widgets/Fader.cpp" line="143"/>
         <source>Enter new fader level</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Fader.cpp" line="142"/>
+        <location filename="../svgui/widgets/Fader.cpp" line="144"/>
         <source>New fader level, from %1 to %2 dBFS:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Fader.cpp" line="217"/>
+        <location filename="../svgui/widgets/Fader.cpp" line="219"/>
         <source>Level: Off</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Fader.cpp" line="219"/>
+        <location filename="../svgui/widgets/Fader.cpp" line="221"/>
         <source>Level: %1%2.%3%4 dB</source>
         <translation type="unfinished"></translation>
     </message>
@@ -644,48 +624,53 @@
 <context>
     <name>FeatureExtractionModelTransformer</name>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="54"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="87"/>
+        <source>Transforms supplied to a single FeatureExtractionModelTransformer instance must be similar in every respect except plugin output</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="100"/>
         <source>No factory available for feature extraction plugin id &quot;%1&quot; (unknown plugin type, or internal error?)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="60"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="106"/>
         <source>Input model for feature extraction plugin &quot;%1&quot; is of wrong type (internal error?)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="66"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="115"/>
         <source>Failed to instantiate plugin &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="81"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="130"/>
         <source>Cannot provide enough channels to feature extraction plugin &quot;%1&quot; (plugin min is %2, max %3; input model has %4)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="112"/>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="127"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="168"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="187"/>
         <source>Failed to initialise feature extraction plugin &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="117"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="175"/>
         <source>Feature extraction plugin &quot;%1&quot; rejected the given step and block sizes (%2 and %3); using plugin defaults (%4 and %5) instead</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="135"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="197"/>
         <source>Transform was configured for version %1 of plugin &quot;%2&quot;, but the plugin being used is version %3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="150"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="212"/>
         <source>Plugin &quot;%1&quot; has no outputs</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="165"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="230"/>
         <source>Plugin &quot;%1&quot; has no output named &quot;%2&quot;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -693,57 +678,255 @@
 <context>
     <name>FileSource</name>
     <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="102"/>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="181"/>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="214"/>
+        <location filename="../svcore/data/fileio/FileSource.cpp" line="122"/>
+        <location filename="../svcore/data/fileio/FileSource.cpp" line="204"/>
+        <location filename="../svcore/data/fileio/FileSource.cpp" line="237"/>
         <source>Unsupported scheme in URL</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="424"/>
+        <location filename="../svcore/data/fileio/FileSource.cpp" line="450"/>
         <source>Downloading %1...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="764"/>
-        <source>Failed to connect to FTP server</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="766"/>
-        <source>Login failed</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="768"/>
-        <source>Failed to change to correct directory</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="770"/>
-        <source>FTP download aborted</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="790"/>
+        <location filename="../svcore/data/fileio/FileSource.cpp" line="744"/>
         <source>Download cancelled</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="821"/>
+        <location filename="../svcore/data/fileio/FileSource.cpp" line="772"/>
         <source>Failed to create local file %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="824"/>
+        <location filename="../svcore/data/fileio/FileSource.cpp" line="775"/>
         <source>File contains no data!</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
+    <name>FlexiNoteLayer</name>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="72"/>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="73"/>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="974"/>
+        <source>New Point</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="110"/>
+        <source>Vertical Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="111"/>
+        <source>Scale Units</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="127"/>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="176"/>
+        <source>Auto-Align</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="177"/>
+        <source>Linear</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="178"/>
+        <source>Log</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="179"/>
+        <source>MIDI Notes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="521"/>
+        <source>In progress</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="523"/>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="547"/>
+        <source>No local points</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="561"/>
+        <source>%1 (%2, %3 Hz)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="568"/>
+        <source>%1 Hz (%2, %3)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="574"/>
+        <source>%1 %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="581"/>
+        <source>Time:	%1
+Pitch:	%2
+Duration:	%3
+No label</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="586"/>
+        <source>Time:	%1
+Pitch:	%2
+Duration:	%3
+Label:	%4</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="979"/>
+        <source>Draw Point</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1055"/>
+        <source>Erase Point</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1136"/>
+        <source>Drag Point</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1218"/>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1291"/>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1611"/>
+        <source>Edit Point</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1220"/>
+        <source>Relocate Point</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1223"/>
+        <source>Change Point Value</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1355"/>
+        <source>Add Point</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1395"/>
+        <source>Snap Notes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1444"/>
+        <source>Merge Notes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1627"/>
+        <source>Drag Selection</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1652"/>
+        <source>Resize Selection</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1691"/>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1713"/>
+        <source>Delete Selected Points</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1762"/>
+        <source>Re-align pasted items?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1763"/>
+        <source>The items you are pasting came from a layer with different source material from this one.  Do you want to re-align them in time, to match the source material for this layer?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1777"/>
+        <source>Paste</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1848"/>
+        <source>Record FlexiNote</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>FlexiNoteModel</name>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="136"/>
+        <source>FlexiNote</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="171"/>
+        <source>Time</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="172"/>
+        <source>Frame</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="173"/>
+        <source>Pitch</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="174"/>
+        <source>Duration</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="175"/>
+        <source>Level</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="176"/>
+        <source>Label</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="177"/>
+        <source>Unknown</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="207"/>
+        <source>Edit Data</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>I</name>
     <message>
-        <location filename="../../svcore/data/model/IntervalModel.h" line="103"/>
+        <location filename="../svcore/data/model/IntervalModel.h" line="103"/>
         <source>Edit Data</source>
         <translation type="unfinished"></translation>
     </message>
@@ -751,52 +934,52 @@
 <context>
     <name>ImageDialog</name>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="49"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="49"/>
         <source>Image</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="56"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="56"/>
         <source>Label:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="63"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="63"/>
         <source>File or URL:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="73"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="73"/>
         <source>Browse...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="79"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="79"/>
         <source>Preview</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="187"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="187"/>
         <source>Unsupported scheme in URL</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="188"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="188"/>
         <source>The URL scheme &quot;%1&quot; is not supported</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="192"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="192"/>
         <source>Opening image URL...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="196"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="196"/>
         <source>File download failed</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="197"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="197"/>
         <source>Failed to download URL &quot;%1&quot;: %2</source>
         <translation type="unfinished"></translation>
     </message>
@@ -804,58 +987,58 @@
 <context>
     <name>ImageLayer</name>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="182"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="182"/>
         <source>In progress</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="606"/>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="711"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="602"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="707"/>
         <source>Select image</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="678"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="674"/>
         <source>Move Image</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="735"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="731"/>
         <source>Drag Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="760"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="756"/>
         <source>Resize Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="794"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="790"/>
         <source>Delete Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="837"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="833"/>
         <source>Re-align pasted items?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="838"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="834"/>
         <source>The items you are pasting came from a layer with different source material from this one.  Do you want to re-align them in time, to match the source material for this layer?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="852"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="848"/>
         <source>Paste</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="884"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="880"/>
         <source>New Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="915"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="911"/>
         <source>Opening image URL...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -863,38 +1046,38 @@
 <context>
     <name>ImageModel</name>
     <message>
-        <location filename="../../svcore/data/model/ImageModel.h" line="96"/>
-        <location filename="../../svcore/data/model/ImageModel.h" line="154"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="96"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="154"/>
         <source>Image</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/ImageModel.h" line="124"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="124"/>
         <source>Edit Image</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/ImageModel.h" line="152"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="152"/>
         <source>Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/ImageModel.h" line="153"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="153"/>
         <source>Frame</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/ImageModel.h" line="155"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="155"/>
         <source>Label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/ImageModel.h" line="156"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="156"/>
         <source>Unknown</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/ImageModel.h" line="187"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="187"/>
         <source>Edit Data</source>
         <translation type="unfinished"></translation>
     </message>
@@ -902,38 +1085,31 @@
 <context>
     <name>InteractiveFileFinder</name>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="52"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="192"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="65"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="237"/>
         <source>Select file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="53"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="193"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="66"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="238"/>
         <source>All files (*.*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="59"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="199"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="72"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="244"/>
         <source>Select a session file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="60"/>
-        <source>Sonic Visualiser session files (*.sv)
-RDF files (%1)
-All files (*.*)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="66"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="82"/>
         <source>Audio files (%1)
 All files (*.*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="72"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="88"/>
         <source>All supported files (%1 %2)
 Sonic Visualiser Layer XML files (*.svl)
 Comma-separated data files (*.csv)
@@ -945,7 +1121,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="79"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="95"/>
         <source>All supported files (%1 %2)
 Sonic Visualiser Layer XML files (*.svl)
 Comma-separated data files (*.csv)
@@ -956,24 +1132,121 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="86"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="133"/>
+        <source>Image files (%1)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="192"/>
+        <source>File does not exist</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="193"/>
+        <source>&lt;b&gt;File not found&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; does not exist</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="198"/>
+        <source>File is not readable</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="199"/>
+        <source>&lt;b&gt;File is not readable&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; can not be read</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="204"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="401"/>
+        <source>Directory selected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="205"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="402"/>
+        <source>&lt;b&gt;Directory selected&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; is a directory</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="210"/>
+        <source>Non-file selected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="211"/>
+        <source>&lt;b&gt;Not a file&lt;/b&gt;&lt;p&gt;Path &quot;%1&quot; is not a file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="216"/>
+        <source>File is empty</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="217"/>
+        <source>&lt;b&gt;File is empty&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; is empty</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="73"/>
+        <source>%1 session files (*.%1)
+RDF files (%3)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="102"/>
+        <source>All supported files (%1 %2)
+Comma-separated data files (*.csv)
+Sonic Visualiser Layer XML files (*.svl)
+Space-separated .lab files (*.lab)
+RDF files (%2)
+MIDI files (*.mid)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="109"/>
+        <source>All supported files (%1 %2)
+Comma-separated data files (*.csv)
+Sonic Visualiser Layer XML files (*.svl)
+Space-separated .lab files (*.lab)
+RDF files (%2)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="116"/>
         <source>All supported files (*.sv %1 %2)
-Sonic Visualiser session files (*.sv)
+%3 session files (*.%4)
 Audio files (%2)
 RDF files (%1)
 All files (*.*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="101"/>
-        <source>Image files (%1)
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="139"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="293"/>
+        <source>Scalable Vector Graphics files (*.svg)
 All files (*.*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="107"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="144"/>
+        <source>Comma-separated data files (*.csv)
+Space-separated .lab files (*.lab)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="149"/>
         <source>All supported files (*.sv %1 %2 %3)
-Sonic Visualiser session files (*.sv)
+%4 session files (*.%5)
 Audio files (%1)
 Layer files (%2)
 RDF files (%3)
@@ -981,79 +1254,31 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="148"/>
-        <source>File does not exist</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="149"/>
-        <source>&lt;b&gt;File not found&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; does not exist</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="154"/>
-        <source>File is not readable</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="155"/>
-        <source>&lt;b&gt;File is not readable&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; can not be read</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="160"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="312"/>
-        <source>Directory selected</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="161"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="313"/>
-        <source>&lt;b&gt;Directory selected&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; is a directory</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="166"/>
-        <source>Non-file selected</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="167"/>
-        <source>&lt;b&gt;Not a file&lt;/b&gt;&lt;p&gt;Path &quot;%1&quot; is not a file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="172"/>
-        <source>File is empty</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="173"/>
-        <source>&lt;b&gt;File is empty&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; is empty</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="200"/>
-        <source>Sonic Visualiser session files (*.sv)
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="245"/>
+        <source>%1 session files (*.%2)
 All files (*.*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="206"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="212"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="218"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="228"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="252"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="258"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="264"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="270"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="276"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="286"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="292"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="298"/>
         <source>Select a file to export to</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="207"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="253"/>
         <source>WAV audio files (*.wav)
 All files (*.*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="213"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="259"/>
         <source>Sonic Visualiser Layer XML files (*.svl)
 Comma-separated data files (*.csv)
 RDF/Turtle files (%1)
@@ -1063,7 +1288,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="219"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="265"/>
         <source>Sonic Visualiser Layer XML files (*.svl)
 Comma-separated data files (*.csv)
 RDF/Turtle files (%1)
@@ -1072,71 +1297,97 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="229"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="271"/>
+        <source>Comma-separated data files (*.csv)
+Sonic Visualiser Layer XML files (*.svl)
+RDF/Turtle files (%1)
+MIDI files (*.mid)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="277"/>
+        <source>Comma-separated data files (*.csv)
+Sonic Visualiser Layer XML files (*.svl)
+RDF/Turtle files (%1)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="287"/>
         <source>Portable Network Graphics files (*.png)
 All files (*.*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="318"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="299"/>
+        <source>Comma-separated data files (*.csv)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="407"/>
         <source>File exists</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="319"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="408"/>
         <source>&lt;b&gt;File exists&lt;/b&gt;&lt;p&gt;The file &quot;%1&quot; already exists.
 Do you want to overwrite it?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="451"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="560"/>
         <source>&lt;b&gt;File not found&lt;/b&gt;&lt;p&gt;Audio file &quot;%1&quot; could not be opened.
 Do you want to locate it?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="453"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="562"/>
         <source>&lt;b&gt;File not found&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; could not be opened.
 Do you want to locate it?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="463"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="572"/>
         <source>Failed to open file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="465"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="574"/>
         <source>Locate file...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="466"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="575"/>
         <source>Use URL...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="467"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="576"/>
         <source>Cancel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="486"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="595"/>
         <source>Use URL</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="487"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="596"/>
         <source>Please enter the URL to use for this file:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="495"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="604"/>
         <source>Failed to open location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="496"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="605"/>
         <source>&lt;b&gt;Failed to open location&lt;/b&gt;&lt;p&gt;URL &quot;%1&quot; could not be opened</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1144,65 +1395,65 @@
 <context>
     <name>ItemEditDialog</name>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="58"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="61"/>
         <source>Timing</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="69"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="72"/>
         <source>Time:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="73"/>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="104"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="76"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="107"/>
         <source> frames</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="82"/>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="113"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="85"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="116"/>
         <source> sec</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="89"/>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="120"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="92"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="123"/>
         <source> usec</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="100"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="103"/>
         <source>Duration:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="132"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="135"/>
         <source>Properties</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="145"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="148"/>
         <source>Value:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="161"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="164"/>
         <source>Text:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="180"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="183"/>
         <source>OK</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="181"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="184"/>
         <source>Reset</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="182"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="185"/>
         <source>Cancel</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1210,41 +1461,41 @@
 <context>
     <name>KeyReference</name>
     <message>
-        <location filename="../../svgui/widgets/KeyReference.cpp" line="61"/>
-        <location filename="../../svgui/widgets/KeyReference.cpp" line="92"/>
+        <location filename="../svgui/widgets/KeyReference.cpp" line="62"/>
+        <location filename="../svgui/widgets/KeyReference.cpp" line="100"/>
         <source>&amp;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/KeyReference.cpp" line="145"/>
+        <location filename="../svgui/widgets/KeyReference.cpp" line="159"/>
         <source>&lt;i&gt;or&lt;/i&gt;&amp;nbsp;&lt;b&gt;%1&lt;/b&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/KeyReference.cpp" line="147"/>
+        <location filename="../svgui/widgets/KeyReference.cpp" line="161"/>
         <source>&lt;/b&gt;&amp;nbsp;(%1)&lt;b&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/KeyReference.cpp" line="162"/>
-        <source>Sonic Visualiser: Key and Mouse Reference</source>
+        <location filename="../svgui/widgets/KeyReference.cpp" line="176"/>
+        <source>%1: Key and Mouse Reference</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>LabelCounterInputDialog</name>
     <message>
-        <location filename="../../svgui/widgets/LabelCounterInputDialog.cpp" line="29"/>
+        <location filename="../svgui/widgets/LabelCounterInputDialog.cpp" line="29"/>
         <source>Set Counters</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LabelCounterInputDialog.cpp" line="33"/>
+        <location filename="../svgui/widgets/LabelCounterInputDialog.cpp" line="33"/>
         <source>Fine counter (beats):</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LabelCounterInputDialog.cpp" line="36"/>
+        <location filename="../svgui/widgets/LabelCounterInputDialog.cpp" line="36"/>
         <source>Coarse counter (bars):</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1252,157 +1503,173 @@
 <context>
     <name>Labeller</name>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="89"/>
+        <location filename="../svcore/data/model/Labeller.h" line="89"/>
         <source>No numbering</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="91"/>
+        <location filename="../svcore/data/model/Labeller.h" line="91"/>
         <source>Simple counter</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="93"/>
+        <location filename="../svcore/data/model/Labeller.h" line="93"/>
         <source>Cyclical counter</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="95"/>
+        <location filename="../svcore/data/model/Labeller.h" line="95"/>
         <source>Cyclical two-level counter (bar/beat)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="97"/>
+        <location filename="../svcore/data/model/Labeller.h" line="97"/>
         <source>Audio sample frame number</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="99"/>
+        <location filename="../svcore/data/model/Labeller.h" line="99"/>
         <source>Time in seconds</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="101"/>
+        <location filename="../svcore/data/model/Labeller.h" line="101"/>
         <source>Duration to the following item</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="103"/>
+        <location filename="../svcore/data/model/Labeller.h" line="103"/>
         <source>Tempo (bpm) based on duration to following item</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="105"/>
+        <location filename="../svcore/data/model/Labeller.h" line="105"/>
         <source>Duration since the previous item</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="107"/>
+        <location filename="../svcore/data/model/Labeller.h" line="107"/>
         <source>Tempo (bpm) based on duration since previous item</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="109"/>
+        <location filename="../svcore/data/model/Labeller.h" line="109"/>
         <source>Same as the nearest previous item</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="111"/>
+        <location filename="../svcore/data/model/Labeller.h" line="111"/>
         <source>Value extracted from the item&apos;s label (where possible)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="153"/>
+        <location filename="../svcore/data/model/Labeller.h" line="159"/>
+        <location filename="../svcore/data/model/Labeller.h" line="259"/>
         <source>%1.%2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="157"/>
+        <location filename="../svcore/data/model/Labeller.h" line="163"/>
         <source>%1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="176"/>
+        <location filename="../svcore/data/model/Labeller.h" line="185"/>
         <source>Label Points</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../svcore/data/model/Labeller.h" line="232"/>
+        <source>Subdivide Points</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/Labeller.h" line="276"/>
+        <source>Winnow Points</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>Layer</name>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="70"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="72"/>
         <source>Waveform</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="71"/>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="87"/>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="91"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="73"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="90"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="94"/>
         <source>Spectrogram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="72"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="74"/>
         <source>Ruler</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="73"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="75"/>
         <source>Time Instants</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="74"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="76"/>
         <source>Time Values</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="75"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="77"/>
         <source>Notes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="76"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="78"/>
+        <source>Flexible Notes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="79"/>
         <source>Regions</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="77"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="80"/>
         <source>Text</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="78"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="81"/>
         <source>Images</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="79"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="82"/>
         <source>Colour 3D Plot</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="80"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="83"/>
         <source>Spectrum</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="81"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="84"/>
         <source>Time Slice</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="96"/>
-        <source>Layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/Layer.cpp" line="340"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="99"/>
+        <source>Unknown Layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/Layer.cpp" line="340"/>
         <source>Make Measurement</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Layer.cpp" line="358"/>
+        <location filename="../svgui/layer/Layer.cpp" line="358"/>
         <source>Delete Measurement</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1410,17 +1677,17 @@
 <context>
     <name>LayerTreeDialog</name>
     <message>
-        <location filename="../../svgui/widgets/LayerTreeDialog.cpp" line="34"/>
+        <location filename="../svgui/widgets/LayerTreeDialog.cpp" line="34"/>
         <source>Layer Summary</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LayerTreeDialog.cpp" line="40"/>
+        <location filename="../svgui/widgets/LayerTreeDialog.cpp" line="40"/>
         <source>Audio Data Sources</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LayerTreeDialog.cpp" line="61"/>
+        <location filename="../svgui/widgets/LayerTreeDialog.cpp" line="65"/>
         <source>Panes and Layers</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1428,50 +1695,66 @@
 <context>
     <name>LayerTreeModel</name>
     <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="514"/>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="514"/>
         <source>Layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="515"/>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="515"/>
         <source>Shown</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="516"/>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="516"/>
         <source>Played</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="517"/>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="517"/>
         <source>Model</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
+    <name>LevelPanToolButton</name>
+    <message>
+        <location filename="../svgui/widgets/LevelPanToolButton.cpp" line="52"/>
+        <source>Click to adjust level and pan</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>LevelPanWidget</name>
+    <message>
+        <location filename="../svgui/widgets/LevelPanWidget.cpp" line="45"/>
+        <source>Drag vertically to adjust level, horizontally to adjust pan</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>MIDIFileImportDialog</name>
     <message>
-        <location filename="../../svgui/widgets/MIDIFileImportDialog.cpp" line="32"/>
+        <location filename="../svgui/widgets/MIDIFileImportDialog.cpp" line="32"/>
         <source>Merge all tracks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/MIDIFileImportDialog.cpp" line="33"/>
+        <location filename="../svgui/widgets/MIDIFileImportDialog.cpp" line="33"/>
         <source>Merge all non-percussion tracks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/MIDIFileImportDialog.cpp" line="50"/>
+        <location filename="../svgui/widgets/MIDIFileImportDialog.cpp" line="50"/>
         <source>Select track or tracks to import</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/MIDIFileImportDialog.cpp" line="51"/>
+        <location filename="../svgui/widgets/MIDIFileImportDialog.cpp" line="51"/>
         <source>&lt;b&gt;Select track to import&lt;/b&gt;&lt;p&gt;You can only import this file as a single annotation layer, but the file contains more than one track, or notes on more than one channel.&lt;p&gt;Please select the track or merged tracks you wish to import:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/MIDIFileImportDialog.cpp" line="70"/>
+        <location filename="../svgui/widgets/MIDIFileImportDialog.cpp" line="70"/>
         <source>Error in MIDI file import</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1479,89 +1762,89 @@
 <context>
     <name>MIDIFileReader</name>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="112"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="113"/>
         <source>Wrong length for long data in MIDI stream (%1, should be %2)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="127"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="128"/>
         <source>Wrong length for int data in MIDI stream (%1, should be %2)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="144"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="145"/>
         <source>getMIDIByte called but no MIDI file open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="148"/>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="177"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="149"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="178"/>
         <source>End of MIDI file encountered while reading</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="152"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="153"/>
         <source>Attempt to get more bytes than expected on Track</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="161"/>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="197"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="162"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="198"/>
         <source>Attempt to read past MIDI file end</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="173"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="174"/>
         <source>getMIDIBytes called but no MIDI file open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="181"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="182"/>
         <source>Attempt to get more bytes than available on Track (%1, only have %2)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="214"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="215"/>
         <source>getNumberFromMIDIBytes called but no MIDI file open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="248"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="249"/>
         <source>skipToNextTrack called but no MIDI file open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="479"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="482"/>
         <source>Invalid event code %1 found</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="494"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="497"/>
         <source>Running status used for first event in track</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="812"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="808"/>
         <source>MIDI file &quot;%1&quot; has no notes in any track</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="835"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="831"/>
         <source> - uses GM percussion channel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="839"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="835"/>
         <source>Track %1 (%2)%3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="843"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="839"/>
         <source>Track %1 (untitled)%3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="1028"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="1024"/>
         <source>%1 - vel %2</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1569,7 +1852,7 @@
 <context>
     <name>MIDIInput</name>
     <message>
-        <location filename="../../svcore/data/midi/MIDIInput.cpp" line="30"/>
+        <location filename="../svcore/data/midi/MIDIInput.cpp" line="30"/>
         <source>Input</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1577,7 +1860,7 @@
 <context>
     <name>MP3FileReader</name>
     <message>
-        <location filename="../../svcore/data/fileio/MP3FileReader.cpp" line="115"/>
+        <location filename="../svcore/data/fileio/MP3FileReader.cpp" line="145"/>
         <source>Decoding %1...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1585,2387 +1868,2716 @@
 <context>
     <name>MainWindow</name>
     <message>
-        <location filename="../main/MainWindow.cpp" line="178"/>
+        <location filename="../main/MainWindow.cpp" line="186"/>
         <source>Black</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="179"/>
+        <location filename="../main/MainWindow.cpp" line="187"/>
         <source>Red</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="180"/>
+        <location filename="../main/MainWindow.cpp" line="188"/>
         <source>Blue</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="181"/>
-        <location filename="../main/MainWindow.cpp" line="227"/>
-        <location filename="../main/MainWindow.cpp" line="3336"/>
+        <location filename="../main/MainWindow.cpp" line="189"/>
+        <location filename="../main/MainWindow.cpp" line="3585"/>
         <source>Green</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="182"/>
+        <location filename="../main/MainWindow.cpp" line="190"/>
         <source>Purple</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="183"/>
+        <location filename="../main/MainWindow.cpp" line="191"/>
         <source>Orange</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="184"/>
+        <location filename="../main/MainWindow.cpp" line="192"/>
         <source>White</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="185"/>
+        <location filename="../main/MainWindow.cpp" line="193"/>
         <source>Bright Red</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="186"/>
+        <location filename="../main/MainWindow.cpp" line="194"/>
         <source>Bright Blue</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="187"/>
-        <location filename="../main/MainWindow.cpp" line="224"/>
-        <location filename="../main/MainWindow.cpp" line="3333"/>
+        <location filename="../main/MainWindow.cpp" line="195"/>
+        <location filename="../main/MainWindow.cpp" line="3587"/>
         <source>Bright Green</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="188"/>
+        <location filename="../main/MainWindow.cpp" line="196"/>
         <source>Bright Purple</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="189"/>
+        <location filename="../main/MainWindow.cpp" line="197"/>
         <source>Bright Orange</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
+        <location filename="../main/MainWindow.cpp" line="396"/>
+        <location filename="../main/MainWindow.cpp" line="1107"/>
+        <location filename="../main/MainWindow.cpp" line="1114"/>
+        <source>&amp;Layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="385"/>
+        <location filename="../main/MainWindow.cpp" line="1517"/>
+        <source>&amp;Transform</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="466"/>
+        <source>&amp;File</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="468"/>
+        <source>File Toolbar</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="470"/>
+        <source>File and Session Management</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="475"/>
+        <source>&amp;New Session</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="476"/>
+        <source>Ctrl+N</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="485"/>
+        <source>Ctrl+O</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="484"/>
+        <source>&amp;Open...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="486"/>
+        <source>Open a session file, audio file, or layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="524"/>
+        <source>&amp;Save Session</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="525"/>
+        <source>Ctrl+S</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="534"/>
+        <source>Save Session &amp;As...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="535"/>
+        <source>Ctrl+Shift+S</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="495"/>
+        <source>Ctrl+I</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="559"/>
+        <source>&amp;Export Audio File...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="560"/>
+        <source>Export selection as an audio file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="573"/>
+        <source>Import Annotation &amp;Layer...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="574"/>
+        <source>Ctrl+L</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="575"/>
+        <source>Import layer data from an existing file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="583"/>
+        <source>Export layer data to a file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="591"/>
+        <source>Export Image File...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="592"/>
+        <source>Export a single pane to an image file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="508"/>
+        <source>Open Lo&amp;cation...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../main/MainWindow.cpp" line="242"/>
-        <source>Playback Speedup</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="356"/>
-        <location filename="../main/MainWindow.cpp" line="1030"/>
-        <location filename="../main/MainWindow.cpp" line="1037"/>
-        <source>&amp;Layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="345"/>
-        <location filename="../main/MainWindow.cpp" line="1432"/>
-        <source>&amp;Transform</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="426"/>
-        <source>&amp;File</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="428"/>
-        <source>File Toolbar</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="430"/>
-        <source>File and Session Management</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="436"/>
-        <source>&amp;New Session</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="437"/>
-        <source>Ctrl+N</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="447"/>
-        <source>Ctrl+O</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="446"/>
-        <source>&amp;Open...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="448"/>
-        <source>Open a session file, audio file, or layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="486"/>
-        <source>&amp;Save Session</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="487"/>
-        <source>Ctrl+S</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="497"/>
-        <source>Save Session &amp;As...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="498"/>
-        <source>Ctrl+Shift+S</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="456"/>
-        <source>Ctrl+I</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="522"/>
-        <source>&amp;Export Audio File...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="523"/>
-        <source>Export selection as an audio file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="536"/>
-        <source>Import Annotation &amp;Layer...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="537"/>
-        <source>Ctrl+L</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="538"/>
-        <source>Import layer data from an existing file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="544"/>
-        <source>Export Annotation Layer...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="545"/>
-        <source>Export layer data to a file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="552"/>
-        <source>Export Image File...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="553"/>
-        <source>Export a single pane to an image file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="469"/>
-        <source>Open Lo&amp;cation...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="470"/>
+        <source>Playback Speed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="509"/>
         <source>Ctrl+Shift+O</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="471"/>
+        <location filename="../main/MainWindow.cpp" line="510"/>
         <source>Open or import a file from a remote URL</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
+        <location filename="../main/MainWindow.cpp" line="565"/>
+        <source>Export Audio Data...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="634"/>
+        <source>&amp;Preferences...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="635"/>
+        <source>Adjust the application preferences</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="641"/>
+        <source>&amp;Quit</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="642"/>
+        <source>Ctrl+Q</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="654"/>
+        <source>&amp;Edit</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="658"/>
+        <source>Editing</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="665"/>
+        <source>Cu&amp;t</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="666"/>
+        <source>Ctrl+X</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="667"/>
+        <source>Cut the selection from the current layer to the clipboard</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="675"/>
+        <source>&amp;Copy</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="676"/>
+        <source>Ctrl+C</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="677"/>
+        <source>Copy the selection from the current layer to the clipboard</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="685"/>
+        <source>&amp;Paste</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="686"/>
+        <source>Ctrl+V</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="687"/>
+        <source>Paste from the clipboard to the current layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="694"/>
+        <source>Paste at Playback Position</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="695"/>
+        <source>Ctrl+Shift+V</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="696"/>
+        <source>Paste from the clipboard to the current layer, placing the first item at the playback position</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="703"/>
+        <location filename="../main/MainWindow.cpp" line="2381"/>
+        <source>&amp;Delete Selected Items</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="704"/>
+        <source>Del</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="705"/>
+        <location filename="../main/MainWindow.cpp" line="2382"/>
+        <source>Delete items in current selection from the current layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="715"/>
+        <source>Selection</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="717"/>
+        <source>Select &amp;All</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="718"/>
+        <source>Ctrl+A</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="719"/>
+        <source>Select the whole duration of the current session</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="726"/>
+        <source>Select &amp;Visible Range</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="727"/>
+        <source>Ctrl+Shift+A</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="728"/>
+        <source>Select the time range corresponding to the current window width</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="734"/>
+        <source>Select to &amp;Start</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="735"/>
+        <location filename="../main/MainWindow.cpp" line="2197"/>
+        <location filename="../main/MainWindow.cpp" line="2232"/>
+        <location filename="../main/MainWindow.cpp" line="2312"/>
+        <source>Shift+Left</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="736"/>
+        <source>Select from the start of the session to the current playback position</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="742"/>
+        <source>Select to &amp;End</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="743"/>
+        <source>Shift+Right</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="744"/>
+        <source>Select from the current playback position to the end of the session</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="750"/>
+        <source>C&amp;lear Selection</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="751"/>
+        <source>Esc</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="752"/>
+        <source>Clear the selection</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="761"/>
+        <source>Tapping Time Instants</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="763"/>
+        <source>&amp;Insert Instant at Playback Position</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="764"/>
+        <source>Enter</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="765"/>
+        <source>Insert a new time instant at the current playback position, in a new layer if necessary</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="772"/>
+        <source>;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="777"/>
+        <source>Insert Instants at Selection &amp;Boundaries</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="778"/>
+        <source>Shift+Enter</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="779"/>
+        <source>Insert new time instants at the start and end of the current selected regions, in a new layer if necessary</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="785"/>
+        <source>Insert Item at Selection</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="787"/>
+        <source>Insert a new note or region item corresponding to the current selection</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="795"/>
+        <source>Number New Instants with</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="815"/>
+        <source>Cycle size</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="836"/>
+        <source>Reset Numbering Counters</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="837"/>
+        <source>Reset to 1 all the counters used for counter-based labelling</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="842"/>
+        <source>Set Numbering Counters...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="843"/>
+        <source>Set the counters used for counter-based labelling</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="847"/>
+        <source>Renumber Selected Instants</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="848"/>
+        <source>Renumber the selected instants using the current labelling scheme</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="878"/>
+        <source>Panning and Navigation</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="880"/>
+        <source>&amp;View</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="882"/>
+        <source>Scroll &amp;Left</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="883"/>
+        <location filename="../main/MainWindow.cpp" line="2194"/>
+        <location filename="../main/MainWindow.cpp" line="2220"/>
+        <location filename="../main/MainWindow.cpp" line="2250"/>
+        <location filename="../main/MainWindow.cpp" line="2271"/>
+        <location filename="../main/MainWindow.cpp" line="2289"/>
+        <location filename="../main/MainWindow.cpp" line="2306"/>
+        <source>Left</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="884"/>
+        <source>Scroll the current pane to the left</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="890"/>
+        <source>Scroll &amp;Right</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="891"/>
+        <source>Right</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="892"/>
+        <source>Scroll the current pane to the right</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="898"/>
+        <source>&amp;Jump Left</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="899"/>
+        <location filename="../main/MainWindow.cpp" line="2224"/>
+        <location filename="../main/MainWindow.cpp" line="2228"/>
+        <source>Ctrl+Left</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="900"/>
+        <source>Scroll the current pane a big step to the left</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="906"/>
+        <source>J&amp;ump Right</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="907"/>
+        <source>Ctrl+Right</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="908"/>
+        <source>Scroll the current pane a big step to the right</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="914"/>
+        <source>Peek Left</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="915"/>
+        <source>Alt+Left</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="916"/>
+        <source>Scroll the current pane to the left without moving the playback cursor or other panes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="922"/>
+        <source>Peek Right</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="923"/>
+        <source>Alt+Right</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="924"/>
+        <source>Scroll the current pane to the right without moving the playback cursor or other panes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="932"/>
+        <source>Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="935"/>
+        <source>Zoom &amp;In</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="936"/>
+        <source>Up</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="937"/>
+        <source>Increase the zoom level</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="944"/>
+        <source>Zoom &amp;Out</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="945"/>
+        <source>Down</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="946"/>
+        <source>Decrease the zoom level</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="952"/>
+        <source>Restore &amp;Default Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="953"/>
+        <source>Restore the zoom level to the default</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="959"/>
+        <source>Zoom to &amp;Fit</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="960"/>
+        <source>F</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="961"/>
+        <source>Zoom to show the whole file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="969"/>
+        <source>Display Features</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="971"/>
+        <source>Show &amp;Centre Line</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="972"/>
+        <source>&apos;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="973"/>
+        <source>Show or hide the centre line</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="980"/>
+        <source>Toggle All Time Rulers</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="993"/>
+        <source>Show &amp;No Overlays</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="994"/>
+        <source>0</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1003"/>
+        <source>Show &amp;Minimal Overlays</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1004"/>
+        <source>9</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1014"/>
+        <source>8</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1013"/>
+        <source>Show &amp;All Overlays</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="566"/>
+        <source>Export audio from selection into a data file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="581"/>
+        <source>Export Annotation La&amp;yer...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../main/MainWindow.cpp" line="582"/>
-        <source>&amp;Preferences...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="583"/>
-        <source>Adjust the application preferences</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="589"/>
-        <source>&amp;Quit</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="590"/>
-        <source>Ctrl+Q</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="602"/>
-        <source>&amp;Edit</source>
+        <source>Ctrl+Y</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="597"/>
+        <source>Export SVG File...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="598"/>
+        <source>Export a single pane to a scalable SVG image file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="605"/>
+        <source>Browse Recorded Audio Folder</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../main/MainWindow.cpp" line="606"/>
-        <source>Editing</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="613"/>
-        <source>Cu&amp;t</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="614"/>
-        <source>Ctrl+X</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="615"/>
-        <source>Cut the selection from the current layer to the clipboard</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="623"/>
-        <source>&amp;Copy</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="624"/>
-        <source>Ctrl+C</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="625"/>
-        <source>Copy the selection from the current layer to the clipboard</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="633"/>
-        <source>&amp;Paste</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="634"/>
-        <source>Ctrl+V</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="635"/>
-        <source>Paste from the clipboard to the current layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="642"/>
-        <source>Paste at Playback Position</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="643"/>
-        <source>Ctrl+Shift+V</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="644"/>
-        <source>Paste from the clipboard to the current layer, placing the first item at the playback position</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="651"/>
+        <source>Open the Recorded Audio folder in the system file browser</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="786"/>
+        <source>Ctrl+Shift+Return</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="856"/>
+        <source>Subdivide Selected Instants...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="857"/>
+        <source>Add new instants at regular intervals between the selected instants</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="862"/>
+        <source>Winnow Selected Instants...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="863"/>
+        <source>Remove subdivisions, leaving only every Nth instant</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="981"/>
+        <source>#</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="982"/>
+        <source>Show or hide all time rulers</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="995"/>
+        <source>Hide times, layer names, and scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1005"/>
+        <source>Show times and basic scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1015"/>
+        <source>Show times, layer names, and scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1025"/>
+        <source>Show &amp;Zoom Wheels</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1026"/>
+        <source>Z</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1027"/>
+        <source>Show thumbwheels for zooming horizontally and vertically</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1034"/>
+        <source>Show Property Bo&amp;xes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1035"/>
+        <source>X</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1036"/>
+        <source>Show the layer property boxes at the side of the main window</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1043"/>
+        <source>Show Status &amp;Bar</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1044"/>
+        <source>Show context help information in the status bar at the bottom of the window</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1061"/>
+        <source>Show La&amp;yer Summary</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1062"/>
+        <source>Y</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1063"/>
+        <source>Open a window displaying the hierarchy of panes and layers in this session</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1068"/>
+        <source>Show Acti&amp;vity Log</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1069"/>
+        <source>Open a window listing interactions and other events</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1073"/>
+        <source>Show &amp;Unit Converter</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1074"/>
+        <source>Open a window of pitch and timing conversion utilities</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1083"/>
+        <source>Go Full-Screen</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1084"/>
+        <source>F11</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1085"/>
+        <source>Expand the pane area to the whole screen</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1099"/>
+        <source>&amp;Pane</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1123"/>
+        <source>Managing Panes and Layers</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1125"/>
+        <source>Add &amp;New Pane</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1126"/>
+        <source>N</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1127"/>
+        <source>Add a new pane containing only a time ruler</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1153"/>
+        <source>Add New %1 Layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1154"/>
+        <source>Add a new empty layer of type %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1160"/>
+        <source>T</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1217"/>
+        <source>Add &amp;Waveform</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1219"/>
+        <source>W</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1220"/>
+        <source>Add a new pane showing a waveform view</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1222"/>
+        <source>Shift+W</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1223"/>
+        <source>Add a new layer showing a waveform view</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1230"/>
+        <source>Add Spectro&amp;gram</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1232"/>
+        <source>G</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1233"/>
+        <source>Add a new pane showing a spectrogram</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1235"/>
+        <source>Shift+G</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1236"/>
+        <source>Add a new layer showing a spectrogram</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1242"/>
+        <source>Add &amp;Melodic Range Spectrogram</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1244"/>
+        <source>M</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1245"/>
+        <source>Add a new pane showing a spectrogram set up for an overview of note pitches</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1247"/>
+        <source>Shift+M</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1248"/>
+        <source>Add a new layer showing a spectrogram set up for an overview of note pitches</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1254"/>
+        <source>Add Pea&amp;k Frequency Spectrogram</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1256"/>
+        <source>K</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1257"/>
+        <source>Add a new pane showing a spectrogram set up for tracking frequencies</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1259"/>
+        <source>Shift+K</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1260"/>
+        <source>Add a new layer showing a spectrogram set up for tracking frequencies</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1266"/>
+        <source>Add Spectr&amp;um</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1268"/>
+        <source>U</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1269"/>
+        <source>Add a new pane showing a frequency spectrum</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1271"/>
+        <source>Shift+U</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1272"/>
+        <source>Add a new layer showing a frequency spectrum</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1342"/>
+        <source>&amp;All Channels Mixed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1344"/>
+        <source>&amp;All Channels</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1347"/>
+        <source>Channel &amp;%1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1351"/>
+        <location filename="../main/MainWindow.cpp" line="3559"/>
+        <source>%1: %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1410"/>
+        <source>Switch to Previous Pane</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1411"/>
+        <source>[</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1412"/>
+        <source>Make the next pane up in the pane stack current</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1418"/>
+        <source>Switch to Next Pane</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1419"/>
+        <source>]</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1420"/>
+        <source>Make the next pane down in the pane stack current</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1428"/>
+        <source>&amp;Delete Pane</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1429"/>
+        <source>Ctrl+Shift+D</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1430"/>
+        <source>Delete the currently active pane</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1438"/>
+        <source>Add &amp;Time Ruler</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1439"/>
+        <source>Add a new layer showing a time ruler</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1447"/>
+        <source>Add &amp;Existing Layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1451"/>
+        <source>Add S&amp;lice of Layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1459"/>
+        <source>Switch to Previous Layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1460"/>
+        <source>{</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1461"/>
+        <source>Make the previous layer in the pane current</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1467"/>
+        <source>Switch to Next Layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1468"/>
+        <source>}</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1469"/>
+        <source>Make the next layer in the pane current</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1478"/>
+        <source>&amp;Rename Layer...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1479"/>
+        <source>R</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1480"/>
+        <source>Rename the currently active layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1486"/>
+        <source>Edit Layer Data</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1487"/>
+        <source>E</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1488"/>
+        <source>Edit the currently active layer as a data grid</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1494"/>
+        <source>&amp;Delete Layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1495"/>
+        <source>Ctrl+D</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1496"/>
+        <source>Delete the currently active layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1540"/>
+        <source>&amp;Recent Transforms</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1557"/>
+        <source>%1 by Category</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1572"/>
+        <location filename="../main/MainWindow.cpp" line="1660"/>
+        <source>Unclassified</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1603"/>
+        <source>%1 by Plugin Name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1611"/>
+        <source>%1 by Maker</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1625"/>
+        <location filename="../main/MainWindow.cpp" line="1663"/>
+        <source>Unknown</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1626"/>
+        <location filename="../main/MainWindow.cpp" line="1664"/>
+        <source> [\(&lt;].*$</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1679"/>
+        <location filename="../main/MainWindow.cpp" line="1705"/>
+        <source>%1...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1744"/>
+        <source>Find a Transform...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1745"/>
+        <source>Search for a transform from the installed plugins, by name or description</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1746"/>
+        <source>Ctrl+M</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1759"/>
+        <source>&amp;Help</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1762"/>
+        <source>Help</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1769"/>
+        <source>&amp;Help Reference</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1770"/>
+        <source>F1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1776"/>
+        <source>&amp;Key and Mouse Reference</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1777"/>
+        <source>F2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1806"/>
+        <source>Ctrl+R</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1808"/>
+        <source>Re-open</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1810"/>
+        <source>Re-open the current or most recently opened file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1821"/>
+        <source>Standard Waveform</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1857"/>
+        <source>Choose Default Template...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1882"/>
+        <source>Ctrl+T</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1884"/>
+        <source>Repeat Transform</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1886"/>
+        <source>Re-select the most recently run transform</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1976"/>
+        <source>Playback and Transport Controls</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1980"/>
+        <source>Play&amp;back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1983"/>
+        <source>Playback</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1985"/>
+        <source>Playback Toolbar</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1988"/>
+        <source>Rewind to Start</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1989"/>
+        <source>Home</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1990"/>
+        <source>Rewind to the start</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1994"/>
+        <location filename="../main/MainWindow.cpp" line="2399"/>
+        <location filename="../main/MainWindow.cpp" line="2400"/>
+        <source>Rewind</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1995"/>
+        <source>PgUp</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1996"/>
+        <source>Rewind to the previous time instant or time ruler notch</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2000"/>
+        <source>Rewind to Similar Point</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2001"/>
+        <source>Shift+PgUp</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2002"/>
+        <source>Rewind to the previous similarly valued time instant</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2007"/>
+        <source>Play / Pause</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2009"/>
+        <source>Space</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2010"/>
+        <source>Start or stop playback from the current position</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2019"/>
+        <location filename="../main/MainWindow.cpp" line="2397"/>
+        <source>Fast Forward</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2020"/>
+        <source>PgDown</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2021"/>
+        <source>Fast-forward to the next time instant or time ruler notch</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2025"/>
+        <source>Fast Forward to Similar Point</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2026"/>
+        <source>Shift+PgDown</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2027"/>
+        <source>Fast-forward to the next similarly valued time instant</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2032"/>
+        <source>Fast Forward to End</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2033"/>
+        <source>End</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2034"/>
+        <source>Fast-forward to the end</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2039"/>
+        <source>Record</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2041"/>
+        <source>Ctrl+Space</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2042"/>
+        <source>Record a new audio file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2049"/>
+        <source>Play Mode Toolbar</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2052"/>
+        <source>Constrain Playback to Selection</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2055"/>
+        <source>s</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2056"/>
+        <source>Constrain playback to the selected regions</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2063"/>
+        <source>Loop Playback</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2066"/>
+        <source>l</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2067"/>
+        <source>Loop playback</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2074"/>
+        <source>Solo Current Pane</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2078"/>
+        <source>o</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2079"/>
+        <source>Solo the current pane during playback</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2088"/>
+        <source>Align File Timelines</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2091"/>
+        <source>Treat multiple audio files as versions of the same work, and align their timelines</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2146"/>
+        <source>Speed Up</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2147"/>
+        <source>Ctrl+PgUp</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2148"/>
+        <source>Time-stretch playback to speed it up without changing pitch</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2152"/>
+        <source>Slow Down</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2153"/>
+        <source>Ctrl+PgDown</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2154"/>
+        <source>Time-stretch playback to slow it down without changing pitch</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2158"/>
+        <source>Restore Normal Speed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2159"/>
+        <source>Ctrl+Home</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2160"/>
+        <source>Restore non-time-stretched playback</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2172"/>
+        <source>Edit Toolbar</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2178"/>
+        <location filename="../main/MainWindow.cpp" line="2206"/>
+        <location filename="../main/MainWindow.cpp" line="2235"/>
+        <location filename="../main/MainWindow.cpp" line="2256"/>
+        <location filename="../main/MainWindow.cpp" line="2274"/>
+        <location filename="../main/MainWindow.cpp" line="2292"/>
+        <source>Tool Selection</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2975"/>
+        <source>Export the whole pane</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2976"/>
+        <source>Export the visible area only</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2986"/>
+        <source>Which region of the current pane do you want to export as a scalable SVG image?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="3014"/>
+        <source>Failed to save SVG file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="3015"/>
+        <source>Failed to save SVG file %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4064"/>
+        <source>Playback speed: %1% (%2x slower)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4070"/>
+        <source>Playback speed: %1% (%2x faster)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4525"/>
+        <source>Subdivide instants</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4526"/>
+        <source>Number of subdivisions:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4547"/>
+        <source>Winnow instants</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4548"/>
+        <source>Remove all instants apart from multiples of:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4574"/>
+        <source>&lt;b&gt;Layer generation failed&lt;/b&gt;&lt;p&gt;Failed to generate derived layer.&lt;p&gt;The layer transform %1failed:&lt;p&gt;%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4581"/>
+        <source>&lt;b&gt;Layer generation failed&lt;/b&gt;&lt;p&gt;Failed to generate a derived layer.&lt;p&gt;The layer transform %1failed.&lt;p&gt;No error information is available.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4637"/>
+        <source>&lt;b&gt;Alignment calculation failed&lt;/b&gt;&lt;p&gt;Failed to calculate an audio alignment:&lt;p&gt;%1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4722"/>
+        <source>Adjust the master playback level and pan</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4771"/>
+        <source>&lt;p&gt;&lt;small&gt;%1 : %2 configuration, %3-bit build&lt;/small&gt;&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4778"/>
+        <source>With Qt v%1 &amp;copy; The Qt Company</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4834"/>
+        <source>&lt;br&gt;With Rubber Band Library v%1 &amp;copy; Particular Programs Ltd</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4836"/>
+        <source>&lt;br&gt;With Rubber Band Library &amp;copy; Particular Programs Ltd</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4839"/>
+        <source>&lt;br&gt;With Vamp plugin support (API v%1, host SDK v%2) &amp;copy; Chris Cannam and QMUL</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4848"/>
+        <source>&lt;br&gt;With Dataquay Qt/RDF library &amp;copy; Particular Programs Ltd</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4849"/>
+        <source>&lt;br&gt;With Cap&apos;n Proto serialisation &amp;copy; Sandstorm Development Group</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4896"/>
+        <source>&lt;h3&gt;Newer version available&lt;/h3&gt;&lt;p&gt;You are using version %1 of Sonic Visualiser, but version %2 is now available.&lt;/p&gt;&lt;p&gt;Please see the &lt;a href=&quot;http://sonicvisualiser.org/&quot;&gt;Sonic Visualiser website&lt;/a&gt; for more information.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2175"/>
+        <source>Tools Toolbar</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2180"/>
+        <location filename="../main/MainWindow.cpp" line="2184"/>
+        <location filename="../main/MainWindow.cpp" line="2194"/>
+        <source>Navigate</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2183"/>
+        <source>1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2208"/>
+        <location filename="../main/MainWindow.cpp" line="2220"/>
+        <source>Select</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2210"/>
+        <source>2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2211"/>
+        <source>Select ranges</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2203"/>
+        <location filename="../main/MainWindow.cpp" line="2237"/>
+        <location filename="../main/MainWindow.cpp" line="2253"/>
+        <source>Edit</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2192"/>
+        <source>Navigate Tool Mouse Actions</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2195"/>
+        <source>Click left button and drag to move around</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2197"/>
+        <location filename="../main/MainWindow.cpp" line="2312"/>
+        <source>Zoom to Area</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2198"/>
+        <location filename="../main/MainWindow.cpp" line="2313"/>
+        <source>Shift-click left button and drag to zoom to a rectangular area</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../main/MainWindow.cpp" line="2200"/>
-        <source>&amp;Delete Selected Items</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="652"/>
-        <source>Del</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="653"/>
+        <source>Relocate</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2200"/>
+        <location filename="../main/MainWindow.cpp" line="2203"/>
+        <location filename="../main/MainWindow.cpp" line="2253"/>
+        <location filename="../main/MainWindow.cpp" line="2309"/>
+        <source>Double-Click Left</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../main/MainWindow.cpp" line="2201"/>
-        <source>Delete items in current selection from the current layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="663"/>
-        <source>Selection</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="665"/>
-        <source>Select &amp;All</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="666"/>
-        <source>Ctrl+A</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="667"/>
-        <source>Select the whole duration of the current session</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="674"/>
-        <source>Select &amp;Visible Range</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="675"/>
-        <source>Ctrl+Shift+A</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="676"/>
-        <source>Select the time range corresponding to the current window width</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="682"/>
-        <source>Select to &amp;Start</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="683"/>
-        <source>Shift+Left</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="684"/>
-        <source>Select from the start of the session to the current playback position</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="690"/>
-        <source>Select to &amp;End</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="691"/>
-        <source>Shift+Right</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="692"/>
-        <source>Select from the current playback position to the end of the session</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="698"/>
-        <source>C&amp;lear Selection</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="699"/>
-        <source>Esc</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="700"/>
-        <source>Clear the selection</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="709"/>
-        <source>Tapping Time Instants</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="711"/>
-        <source>&amp;Insert Instant at Playback Position</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="712"/>
-        <source>Enter</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="713"/>
-        <source>Insert a new time instant at the current playback position, in a new layer if necessary</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="720"/>
-        <source>;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="725"/>
-        <source>Insert Instants at Selection &amp;Boundaries</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="726"/>
-        <source>Shift+Enter</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="727"/>
-        <source>Insert new time instants at the start and end of the current selected regions, in a new layer if necessary</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="733"/>
-        <source>Insert Item at Selection</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="734"/>
-        <source>Ctrl+Shift+Enter</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="735"/>
-        <source>Insert a new note or region item corresponding to the current selection</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="743"/>
-        <source>Number New Instants with</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="763"/>
-        <source>Cycle size</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="784"/>
-        <source>Reset Numbering Counters</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="785"/>
-        <source>Reset to 1 all the counters used for counter-based labelling</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="790"/>
-        <source>Set Numbering Counters...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="791"/>
-        <source>Set the counters used for counter-based labelling</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="795"/>
-        <source>Renumber Selected Instants</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="796"/>
-        <source>Renumber the selected instants using the current labelling scheme</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="812"/>
-        <source>Panning and Navigation</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="814"/>
-        <source>&amp;View</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="816"/>
-        <source>Scroll &amp;Left</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="817"/>
-        <source>Left</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="818"/>
-        <source>Scroll the current pane to the left</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="824"/>
-        <source>Scroll &amp;Right</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="825"/>
-        <source>Right</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="826"/>
-        <source>Scroll the current pane to the right</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="832"/>
-        <source>&amp;Jump Left</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="833"/>
-        <source>Ctrl+Left</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="834"/>
-        <source>Scroll the current pane a big step to the left</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="840"/>
-        <source>J&amp;ump Right</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="841"/>
-        <source>Ctrl+Right</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="842"/>
-        <source>Scroll the current pane a big step to the right</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="848"/>
-        <source>Peek Left</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="849"/>
-        <source>Alt+Left</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="850"/>
-        <source>Scroll the current pane to the left without moving the playback cursor or other panes</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="856"/>
-        <source>Peek Right</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="857"/>
-        <source>Alt+Right</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="858"/>
-        <source>Scroll the current pane to the right without moving the playback cursor or other panes</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="866"/>
-        <source>Zoom</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="869"/>
-        <source>Zoom &amp;In</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="870"/>
-        <source>Up</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="871"/>
-        <source>Increase the zoom level</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="878"/>
-        <source>Zoom &amp;Out</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="879"/>
-        <source>Down</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="880"/>
-        <source>Decrease the zoom level</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="886"/>
-        <source>Restore &amp;Default Zoom</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="887"/>
-        <source>Restore the zoom level to the default</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="893"/>
-        <source>Zoom to &amp;Fit</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="894"/>
-        <source>F</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="895"/>
-        <source>Zoom to show the whole file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="903"/>
-        <source>Display Features</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="905"/>
-        <source>Show &amp;Centre Line</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="906"/>
-        <source>&apos;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="907"/>
-        <source>Show or hide the centre line</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="914"/>
-        <source>Toggle All Time Rulers</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="925"/>
-        <source>Show &amp;No Overlays</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="926"/>
-        <source>0</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="935"/>
-        <source>Show &amp;Minimal Overlays</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="936"/>
-        <source>9</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="946"/>
-        <source>8</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="945"/>
-        <source>Show &amp;All Overlays</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="528"/>
-        <source>&amp;Export Audio Data...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="529"/>
-        <source>Export audio from selection into a data file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="915"/>
-        <source>#</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="916"/>
-        <source>Show or hide all time rulers</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="927"/>
-        <source>Hide times, layer names, and scale</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="937"/>
-        <source>Show times and basic scale</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="947"/>
-        <source>Show times, layer names, and scale</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="957"/>
-        <source>Show &amp;Zoom Wheels</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="958"/>
-        <source>Z</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="959"/>
-        <source>Show thumbwheels for zooming horizontally and vertically</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="966"/>
-        <source>Show Property Bo&amp;xes</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="967"/>
-        <source>X</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="968"/>
-        <source>Show the layer property boxes at the side of the main window</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="975"/>
-        <source>Show Status &amp;Bar</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="976"/>
-        <source>Show context help information in the status bar at the bottom of the window</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="993"/>
-        <source>Show La&amp;yer Summary</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="994"/>
-        <source>Y</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="995"/>
-        <source>Open a window displaying the hierarchy of panes and layers in this session</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1000"/>
-        <source>Show Acti&amp;vity Log</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1001"/>
-        <source>Open a window listing interactions and other events</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1007"/>
-        <source>Go Full-Screen</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1008"/>
-        <source>F11</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1009"/>
-        <source>Expand the pane area to the whole screen</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1022"/>
-        <source>&amp;Pane</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1046"/>
-        <source>Managing Panes and Layers</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1048"/>
-        <source>Add &amp;New Pane</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1049"/>
-        <source>N</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1050"/>
-        <source>Add a new pane containing only a time ruler</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1076"/>
-        <source>Add New %1 Layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1077"/>
-        <source>Add a new empty layer of type %1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1083"/>
-        <source>T</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1133"/>
-        <source>Add &amp;Waveform</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1135"/>
-        <source>W</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1136"/>
-        <source>Add a new pane showing a waveform view</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1138"/>
-        <source>Shift+W</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1139"/>
-        <source>Add a new layer showing a waveform view</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1146"/>
-        <source>Add Spectro&amp;gram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1148"/>
-        <source>G</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1149"/>
-        <source>Add a new pane showing a spectrogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1151"/>
-        <source>Shift+G</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1152"/>
-        <source>Add a new layer showing a spectrogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1158"/>
-        <source>Add &amp;Melodic Range Spectrogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1160"/>
-        <source>M</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1161"/>
-        <source>Add a new pane showing a spectrogram set up for an overview of note pitches</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1163"/>
-        <source>Shift+M</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1164"/>
-        <source>Add a new layer showing a spectrogram set up for an overview of note pitches</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1170"/>
-        <source>Add Pea&amp;k Frequency Spectrogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1172"/>
-        <source>K</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1173"/>
-        <source>Add a new pane showing a spectrogram set up for tracking frequencies</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1175"/>
-        <source>Shift+K</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1176"/>
-        <source>Add a new layer showing a spectrogram set up for tracking frequencies</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1182"/>
-        <source>Add Spectr&amp;um</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1184"/>
-        <source>U</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1185"/>
-        <source>Add a new pane showing a frequency spectrum</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1187"/>
-        <source>Shift+U</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1188"/>
-        <source>Add a new layer showing a frequency spectrum</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1258"/>
-        <source>&amp;All Channels Mixed</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1260"/>
-        <source>&amp;All Channels</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1263"/>
-        <source>Channel &amp;%1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1267"/>
-        <source>%1: %2</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1326"/>
-        <source>Switch to Previous Pane</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1327"/>
-        <source>[</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1328"/>
-        <source>Make the next pane up in the pane stack current</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1334"/>
-        <source>Switch to Next Pane</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1335"/>
-        <source>]</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1336"/>
-        <source>Make the next pane down in the pane stack current</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1344"/>
-        <source>&amp;Delete Pane</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1345"/>
-        <source>Ctrl+Shift+D</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1346"/>
-        <source>Delete the currently active pane</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1354"/>
-        <source>Add &amp;Time Ruler</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1355"/>
-        <source>Add a new layer showing a time ruler</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1363"/>
-        <source>Add &amp;Existing Layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1367"/>
-        <source>Add S&amp;lice of Layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1395"/>
-        <source>&amp;Rename Layer...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1396"/>
-        <source>R</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1397"/>
-        <source>Rename the currently active layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1403"/>
-        <source>Edit Layer Data</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1404"/>
-        <source>E</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1405"/>
-        <source>Edit the currently active layer as a data grid</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1411"/>
-        <source>&amp;Delete Layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1412"/>
-        <source>Ctrl+D</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1413"/>
-        <source>Delete the currently active layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1450"/>
-        <source>&amp;Recent Transforms</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1467"/>
-        <source>%1 by Category</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1482"/>
-        <location filename="../main/MainWindow.cpp" line="1570"/>
-        <source>Unclassified</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1513"/>
-        <source>%1 by Plugin Name</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1521"/>
-        <source>%1 by Maker</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1535"/>
-        <location filename="../main/MainWindow.cpp" line="1573"/>
-        <source>Unknown</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1536"/>
-        <location filename="../main/MainWindow.cpp" line="1574"/>
-        <source> [\(&lt;].*$</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1589"/>
-        <location filename="../main/MainWindow.cpp" line="1615"/>
-        <source>%1...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1654"/>
-        <source>Find a Transform...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1655"/>
-        <source>Search for a transform from the installed plugins, by name or description</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1656"/>
-        <source>Ctrl+M</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1669"/>
-        <source>&amp;Help</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1672"/>
-        <source>Help</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1679"/>
-        <source>&amp;Help Reference</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1680"/>
-        <source>F1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1686"/>
-        <source>&amp;Key and Mouse Reference</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1687"/>
-        <source>F2</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1713"/>
-        <source>Ctrl+R</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1715"/>
-        <source>Re-open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1717"/>
-        <source>Re-open the current or most recently opened file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1728"/>
-        <source>Standard Waveform</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1764"/>
-        <source>Choose Default Template...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1789"/>
-        <source>Ctrl+T</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1791"/>
-        <source>Repeat Transform</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1793"/>
-        <source>Re-select the most recently run transform</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1883"/>
-        <source>Playback and Transport Controls</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1887"/>
-        <source>Play&amp;back</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1890"/>
-        <source>Playback</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1892"/>
-        <source>Playback Toolbar</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1895"/>
-        <source>Rewind to Start</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1896"/>
-        <source>Home</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1897"/>
-        <source>Rewind to the start</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1901"/>
+        <source>Double-click left button to jump to clicked location</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2204"/>
+        <location filename="../main/MainWindow.cpp" line="2254"/>
+        <source>Double-click left button on an item to edit it</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../main/MainWindow.cpp" line="2218"/>
-        <location filename="../main/MainWindow.cpp" line="2219"/>
-        <source>Rewind</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1902"/>
-        <source>PgUp</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1903"/>
-        <source>Rewind to the previous time instant or time ruler notch</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1907"/>
-        <source>Rewind to Similar Point</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1908"/>
-        <source>Shift+PgUp</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1909"/>
-        <source>Rewind to the previous similarly valued time instant</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1914"/>
-        <source>Play / Pause</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1916"/>
-        <source>Space</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1917"/>
-        <source>Start or stop playback from the current position</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1926"/>
-        <location filename="../main/MainWindow.cpp" line="2216"/>
-        <source>Fast Forward</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1927"/>
-        <source>PgDown</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1928"/>
-        <source>Fast-forward to the next time instant or time ruler notch</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1932"/>
-        <source>Fast Forward to Similar Point</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1933"/>
-        <source>Shift+PgDown</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1934"/>
-        <source>Fast-forward to the next similarly valued time instant</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1939"/>
-        <source>Fast Forward to End</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1940"/>
-        <source>End</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1941"/>
-        <source>Fast-forward to the end</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1945"/>
-        <source>Play Mode Toolbar</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1948"/>
-        <source>Constrain Playback to Selection</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1951"/>
-        <source>s</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1952"/>
-        <source>Constrain playback to the selected regions</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1959"/>
-        <source>Loop Playback</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1962"/>
-        <source>l</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1963"/>
-        <source>Loop playback</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1970"/>
-        <source>Solo Current Pane</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1974"/>
-        <source>o</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1975"/>
-        <source>Solo the current pane during playback</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1984"/>
-        <source>Align File Timelines</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1987"/>
-        <source>Treat multiple audio files as versions of the same work, and align their timelines</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2035"/>
-        <source>Speed Up</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2036"/>
-        <source>Ctrl+PgUp</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2037"/>
-        <source>Time-stretch playback to speed it up without changing pitch</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2041"/>
-        <source>Slow Down</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2042"/>
-        <source>Ctrl+PgDown</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2043"/>
-        <source>Time-stretch playback to slow it down without changing pitch</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2047"/>
-        <source>Restore Normal Speed</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2048"/>
-        <source>Ctrl+Home</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2049"/>
-        <source>Restore non-time-stretched playback</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2061"/>
-        <source>Edit Toolbar</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2064"/>
-        <source>Tool Selection</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2066"/>
-        <source>Tools Toolbar</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2070"/>
-        <location filename="../main/MainWindow.cpp" line="2074"/>
-        <source>Navigate</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2073"/>
-        <source>1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2082"/>
-        <source>Select</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2084"/>
-        <source>2</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2085"/>
-        <source>Select ranges</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2092"/>
-        <source>Edit</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2094"/>
+        <source>Select Tool Mouse Actions</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2221"/>
+        <source>Click left button and drag to select region; drag region edge to resize</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2224"/>
+        <location filename="../main/MainWindow.cpp" line="2228"/>
+        <source>Multi Select</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2225"/>
+        <source>Cmd-click left button and drag to select an additional region</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2229"/>
+        <source>Ctrl-click left button and drag to select an additional region</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2232"/>
+        <source>Fine Select</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2233"/>
+        <source>Shift-click left button and drag to select without snapping to items or grid</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2239"/>
         <source>3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2095"/>
+        <location filename="../main/MainWindow.cpp" line="2240"/>
         <source>Edit items in layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2103"/>
+        <location filename="../main/MainWindow.cpp" line="2248"/>
+        <source>Edit Tool Mouse Actions</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2250"/>
+        <source>Move</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2251"/>
+        <source>Click left button on an item or selected region and drag to move</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2258"/>
+        <location filename="../main/MainWindow.cpp" line="2271"/>
         <source>Draw</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2105"/>
+        <location filename="../main/MainWindow.cpp" line="2260"/>
         <source>4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2106"/>
+        <location filename="../main/MainWindow.cpp" line="2261"/>
         <source>Draw new items in layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2114"/>
+        <location filename="../main/MainWindow.cpp" line="2269"/>
+        <source>Draw Tool Mouse Actions</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2272"/>
+        <source>Click left button and drag to create new item</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2276"/>
+        <location filename="../main/MainWindow.cpp" line="2289"/>
         <source>Erase</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2116"/>
+        <location filename="../main/MainWindow.cpp" line="2278"/>
         <source>5</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2117"/>
+        <location filename="../main/MainWindow.cpp" line="2279"/>
         <source>Erase items from layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2124"/>
+        <location filename="../main/MainWindow.cpp" line="2287"/>
+        <source>Erase Tool Mouse Actions</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2290"/>
+        <source>Click left button on an item to remove it from the layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2293"/>
         <source>Measure</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2126"/>
+        <location filename="../main/MainWindow.cpp" line="2295"/>
         <source>6</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2127"/>
+        <location filename="../main/MainWindow.cpp" line="2296"/>
         <source>Make measurements in layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2196"/>
+        <location filename="../main/MainWindow.cpp" line="2304"/>
+        <source>Measure Tool Mouse Actions</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2306"/>
+        <source>Measure Area</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2307"/>
+        <source>Click left button and drag to measure a rectangular area</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2309"/>
+        <source>Measure Item</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2310"/>
+        <source>Click left button and drag to measure extents of an item or shape</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2377"/>
         <source>&amp;Delete Current Measurement</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2197"/>
+        <location filename="../main/MainWindow.cpp" line="2378"/>
         <source>Delete the measurement currently under the mouse pointer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2206"/>
+        <location filename="../main/MainWindow.cpp" line="2387"/>
         <source>Fast Forward to Next Instant</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2207"/>
+        <location filename="../main/MainWindow.cpp" line="2388"/>
         <source>Fast forward to the next time instant in the current layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2208"/>
+        <location filename="../main/MainWindow.cpp" line="2389"/>
         <source>Rewind to Previous Instant</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2209"/>
+        <location filename="../main/MainWindow.cpp" line="2390"/>
         <source>Rewind to the previous time instant in the current layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2211"/>
+        <location filename="../main/MainWindow.cpp" line="2392"/>
         <source>Fast Forward to Next Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2212"/>
+        <location filename="../main/MainWindow.cpp" line="2393"/>
         <source>Fast forward to the next point in the current layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2213"/>
+        <location filename="../main/MainWindow.cpp" line="2394"/>
         <source>Rewind to Previous Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2214"/>
+        <location filename="../main/MainWindow.cpp" line="2395"/>
         <source>Rewind to the previous point in the current layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2217"/>
+        <location filename="../main/MainWindow.cpp" line="2398"/>
         <source>Fast forward</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2228"/>
+        <location filename="../main/MainWindow.cpp" line="2409"/>
         <source>No audio file loaded.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2239"/>
+        <location filename="../main/MainWindow.cpp" line="2422"/>
         <source>%1Hz (resampling to %2Hz)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2310"/>
-        <location filename="../main/MainWindow.cpp" line="2324"/>
-        <location filename="../main/MainWindow.cpp" line="2338"/>
+        <location filename="../main/MainWindow.cpp" line="2493"/>
+        <location filename="../main/MainWindow.cpp" line="2507"/>
+        <location filename="../main/MainWindow.cpp" line="2521"/>
+        <location filename="../main/MainWindow.cpp" line="2758"/>
+        <location filename="../main/MainWindow.cpp" line="2763"/>
+        <location filename="../main/MainWindow.cpp" line="3138"/>
+        <location filename="../main/MainWindow.cpp" line="3142"/>
+        <source>Failed to open file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2494"/>
+        <location filename="../main/MainWindow.cpp" line="2508"/>
+        <location filename="../main/MainWindow.cpp" line="2522"/>
+        <source>&lt;b&gt;File open failed&lt;/b&gt;&lt;p&gt;Audio file &quot;%1&quot; could not be opened</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2570"/>
+        <source>1. %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../main/MainWindow.cpp" line="2577"/>
-        <location filename="../main/MainWindow.cpp" line="2582"/>
-        <location filename="../main/MainWindow.cpp" line="2878"/>
-        <location filename="../main/MainWindow.cpp" line="2898"/>
-        <location filename="../main/MainWindow.cpp" line="2902"/>
-        <source>Failed to open file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2311"/>
-        <location filename="../main/MainWindow.cpp" line="2325"/>
-        <location filename="../main/MainWindow.cpp" line="2339"/>
-        <source>&lt;b&gt;File open failed&lt;/b&gt;&lt;p&gt;Audio file &quot;%1&quot; could not be opened</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2407"/>
+        <source>%1. %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2590"/>
         <source>Select audio file to export</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2408"/>
+        <location filename="../main/MainWindow.cpp" line="2591"/>
         <source>Which audio file do you want to export from?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2441"/>
+        <location filename="../main/MainWindow.cpp" line="2624"/>
         <source>Export the selected region only</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2442"/>
+        <location filename="../main/MainWindow.cpp" line="2625"/>
         <source>Export the whole audio file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2446"/>
-        <location filename="../main/MainWindow.cpp" line="2466"/>
-        <location filename="../main/MainWindow.cpp" line="2731"/>
+        <location filename="../main/MainWindow.cpp" line="2629"/>
+        <location filename="../main/MainWindow.cpp" line="2647"/>
+        <location filename="../main/MainWindow.cpp" line="2911"/>
+        <location filename="../main/MainWindow.cpp" line="2985"/>
         <source>Select region to export</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2447"/>
+        <location filename="../main/MainWindow.cpp" line="2630"/>
         <source>Which region from the original audio file do you want to export?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2462"/>
+        <location filename="../main/MainWindow.cpp" line="2643"/>
         <source>Export the selected regions into separate files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2467"/>
+        <location filename="../main/MainWindow.cpp" line="2648"/>
         <source>Multiple regions of the original audio file are selected.
 What do you want to export?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2498"/>
+        <location filename="../main/MainWindow.cpp" line="2679"/>
         <source>Fragment file %1 already exists, aborting</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2542"/>
+        <location filename="../main/MainWindow.cpp" line="2723"/>
         <source>Export multiple audio files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2544"/>
+        <location filename="../main/MainWindow.cpp" line="2725"/>
         <source>Export audio to &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2548"/>
-        <location filename="../main/MainWindow.cpp" line="2675"/>
+        <location filename="../main/MainWindow.cpp" line="2729"/>
+        <location filename="../main/MainWindow.cpp" line="2857"/>
         <source>Failed to write file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2578"/>
+        <location filename="../main/MainWindow.cpp" line="2759"/>
         <source>&lt;b&gt;File open failed&lt;/b&gt;&lt;p&gt;Layer file %1 could not be opened.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2583"/>
-        <location filename="../main/MainWindow.cpp" line="2903"/>
-        <location filename="../main/MainWindow.cpp" line="2935"/>
-        <location filename="../main/MainWindow.cpp" line="2963"/>
-        <location filename="../main/MainWindow.cpp" line="3095"/>
+        <location filename="../main/MainWindow.cpp" line="2764"/>
+        <location filename="../main/MainWindow.cpp" line="3143"/>
+        <location filename="../main/MainWindow.cpp" line="3175"/>
+        <location filename="../main/MainWindow.cpp" line="3208"/>
+        <location filename="../main/MainWindow.cpp" line="3340"/>
         <source>&lt;b&gt;Audio required&lt;/b&gt;&lt;p&gt;Unable to load layer data from &quot;%1&quot; without an audio file.&lt;br&gt;Please load at least one audio file before importing annotations.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2654"/>
+        <location filename="../main/MainWindow.cpp" line="2836"/>
         <source>Sorry, cannot export this layer type to RDF (supported types are: region, note, text, time instants, time values)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3002"/>
+        <location filename="../main/MainWindow.cpp" line="3247"/>
         <source>Enter template name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3007"/>
+        <location filename="../main/MainWindow.cpp" line="3252"/>
         <source>Please enter a name for the saved template:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3011"/>
+        <location filename="../main/MainWindow.cpp" line="3256"/>
         <source>Set as default template for future audio files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3031"/>
+        <location filename="../main/MainWindow.cpp" line="3276"/>
         <source>Template file exists</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3032"/>
+        <location filename="../main/MainWindow.cpp" line="3277"/>
         <source>&lt;b&gt;Template file exists&lt;/b&gt;&lt;p&gt;The template &quot;%1&quot; already exists.&lt;br&gt;Overwrite it?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3314"/>
-        <source>%1: %1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4286"/>
+        <location filename="../main/MainWindow.cpp" line="4743"/>
         <source>http://www.sonicvisualiser.org/doc/reference/%1/en/</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4391"/>
+        <location filename="../main/MainWindow.cpp" line="4847"/>
         <source>&lt;br&gt;With Serd and Sord RDF parser and store &amp;copy; David Robillard</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4392"/>
-        <source>&lt;br&gt;With Dataquay Qt/RDF library &amp;copy; Chris Cannam</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4439"/>
+        <location filename="../main/MainWindow.cpp" line="4895"/>
         <source>Newer version available</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4440"/>
-        <source>&lt;h3&gt;Newer version available&lt;/h3&gt;&lt;p&gt;You are using version %1 of Sonic Visualiser, but version %3 is now available.&lt;/p&gt;&lt;p&gt;Please see the &lt;a href=&quot;http://sonicvisualiser.org/&quot;&gt;Sonic Visualiser website&lt;/a&gt; for more information.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2618"/>
+        <location filename="../main/MainWindow.cpp" line="2799"/>
         <source>Failed to open file %1 for writing</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="438"/>
+        <location filename="../main/MainWindow.cpp" line="477"/>
         <source>Abandon the current %1 session and start a new one</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="455"/>
+        <location filename="../main/MainWindow.cpp" line="494"/>
         <source>&amp;Import More Audio...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="457"/>
+        <location filename="../main/MainWindow.cpp" line="496"/>
         <source>Import an extra audio file into a new pane</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="464"/>
+        <location filename="../main/MainWindow.cpp" line="503"/>
         <source>Replace &amp;Main Audio...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="465"/>
+        <location filename="../main/MainWindow.cpp" line="504"/>
         <source>Replace the main audio file of the session with a different file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="476"/>
+        <location filename="../main/MainWindow.cpp" line="515"/>
         <source>Open &amp;Recent</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="488"/>
+        <location filename="../main/MainWindow.cpp" line="526"/>
         <source>Save the current session into a %1 session file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="499"/>
+        <location filename="../main/MainWindow.cpp" line="536"/>
         <source>Save the current session into a new %1 session file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="560"/>
+        <location filename="../main/MainWindow.cpp" line="612"/>
         <source>Apply Session Template</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="569"/>
+        <location filename="../main/MainWindow.cpp" line="621"/>
         <source>Export Session as Template...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="576"/>
+        <location filename="../main/MainWindow.cpp" line="628"/>
         <source>Manage Exported Templates</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="591"/>
+        <location filename="../main/MainWindow.cpp" line="643"/>
         <source>Exit %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1681"/>
+        <location filename="../main/MainWindow.cpp" line="1771"/>
         <source>Open the %1 reference manual</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1688"/>
+        <location filename="../main/MainWindow.cpp" line="1778"/>
         <source>Open a window showing the keystrokes you can use in %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1693"/>
+        <location filename="../main/MainWindow.cpp" line="1783"/>
         <source>%1 on the &amp;Web</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1694"/>
+        <location filename="../main/MainWindow.cpp" line="1784"/>
         <source>Open the %1 website</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1698"/>
+        <location filename="../main/MainWindow.cpp" line="1788"/>
         <source>&amp;About %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1699"/>
+        <location filename="../main/MainWindow.cpp" line="1789"/>
         <source>Show information about %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2461"/>
+        <location filename="../main/MainWindow.cpp" line="2642"/>
         <source>Export the selected regions into a single file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2463"/>
+        <location filename="../main/MainWindow.cpp" line="2644"/>
         <source>Export the whole file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2642"/>
+        <location filename="../main/MainWindow.cpp" line="2824"/>
         <source>Can&apos;t export non-note layers to MIDI</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2678"/>
+        <location filename="../main/MainWindow.cpp" line="2860"/>
         <source>Export layer to &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2713"/>
+        <location filename="../main/MainWindow.cpp" line="2893"/>
         <source>Export the whole pane (%1x%2 pixels)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2715"/>
+        <location filename="../main/MainWindow.cpp" line="2895"/>
         <source>Export the visible area only (%1x%2 pixels)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2718"/>
+        <location filename="../main/MainWindow.cpp" line="2898"/>
         <source>Export the selection extent (%1x%2 pixels)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2721"/>
+        <location filename="../main/MainWindow.cpp" line="2901"/>
+        <location filename="../main/MainWindow.cpp" line="2977"/>
         <source>Export the selection extent</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2732"/>
+        <location filename="../main/MainWindow.cpp" line="2912"/>
         <source>Which region of the current pane do you want to export as an image?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2740"/>
+        <location filename="../main/MainWindow.cpp" line="2920"/>
         <source>Note: the whole pane is too wide to be exported as a single image.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2765"/>
+        <location filename="../main/MainWindow.cpp" line="2945"/>
         <source>Failed to save image file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2766"/>
+        <location filename="../main/MainWindow.cpp" line="2946"/>
         <source>Failed to save image file %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2879"/>
-        <source>&lt;b&gt;File open failed&lt;/b&gt;&lt;p&gt;Session file &quot;%1&quot; could not be opened</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2899"/>
+        <location filename="../main/MainWindow.cpp" line="3139"/>
         <source>&lt;b&gt;File open failed&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; could not be opened</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2916"/>
+        <location filename="../main/MainWindow.cpp" line="3156"/>
         <source>Open Location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2917"/>
+        <location filename="../main/MainWindow.cpp" line="3157"/>
         <source>Please enter the URL of the location to open:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2930"/>
-        <location filename="../main/MainWindow.cpp" line="2934"/>
-        <location filename="../main/MainWindow.cpp" line="2958"/>
-        <location filename="../main/MainWindow.cpp" line="2962"/>
+        <location filename="../main/MainWindow.cpp" line="3170"/>
+        <location filename="../main/MainWindow.cpp" line="3174"/>
+        <location filename="../main/MainWindow.cpp" line="3203"/>
+        <location filename="../main/MainWindow.cpp" line="3207"/>
         <source>Failed to open location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2931"/>
+        <location filename="../main/MainWindow.cpp" line="3171"/>
         <source>&lt;b&gt;Open failed&lt;/b&gt;&lt;p&gt;URL &quot;%1&quot; could not be opened</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2959"/>
+        <location filename="../main/MainWindow.cpp" line="3204"/>
         <source>&lt;b&gt;Open failed&lt;/b&gt;&lt;p&gt;File or URL &quot;%1&quot; could not be opened</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3089"/>
-        <location filename="../main/MainWindow.cpp" line="3094"/>
+        <location filename="../main/MainWindow.cpp" line="3334"/>
+        <location filename="../main/MainWindow.cpp" line="3339"/>
         <source>Failed to open dropped URL</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3090"/>
+        <location filename="../main/MainWindow.cpp" line="3335"/>
         <source>&lt;b&gt;Open failed&lt;/b&gt;&lt;p&gt;Dropped URL &quot;%1&quot; could not be opened</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3205"/>
+        <location filename="../main/MainWindow.cpp" line="3450"/>
         <source>Export image to &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3226"/>
+        <location filename="../main/MainWindow.cpp" line="3471"/>
         <source>Session modified</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3227"/>
+        <location filename="../main/MainWindow.cpp" line="3472"/>
         <source>&lt;b&gt;Session modified&lt;/b&gt;&lt;p&gt;The current session has been modified.&lt;br&gt;Do you want to save it?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3260"/>
+        <location filename="../main/MainWindow.cpp" line="3505"/>
         <source>Close the current session and create a new one</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3261"/>
+        <location filename="../main/MainWindow.cpp" line="3506"/>
         <source>Add this data to the current session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3265"/>
+        <location filename="../main/MainWindow.cpp" line="3510"/>
         <source>Select target for import</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3266"/>
+        <location filename="../main/MainWindow.cpp" line="3511"/>
         <source>&lt;b&gt;Select a target for import&lt;/b&gt;&lt;p&gt;This RDF document refers to one or more audio files.&lt;br&gt;You already have an audio waveform loaded.&lt;br&gt;What would you like to do with the new data?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3288"/>
-        <location filename="../main/MainWindow.cpp" line="3311"/>
+        <location filename="../main/MainWindow.cpp" line="3533"/>
+        <location filename="../main/MainWindow.cpp" line="3556"/>
         <source>Failed to save file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3289"/>
-        <location filename="../main/MainWindow.cpp" line="3312"/>
+        <location filename="../main/MainWindow.cpp" line="3534"/>
+        <location filename="../main/MainWindow.cpp" line="3557"/>
         <source>&lt;b&gt;Save failed&lt;/b&gt;&lt;p&gt;Session file &quot;%1&quot; could not be saved.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3321"/>
+        <location filename="../main/MainWindow.cpp" line="3566"/>
         <source>Save session as &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3673"/>
+        <location filename="../main/MainWindow.cpp" line="3915"/>
+        <source>Multiplex all of the above</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="3964"/>
         <source>Rename Layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3674"/>
+        <location filename="../main/MainWindow.cpp" line="3965"/>
         <source>New name for this layer:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3765"/>
+        <location filename="../main/MainWindow.cpp" line="4060"/>
         <source>Playback speed: Normal</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3767"/>
-        <source>Playback speed: %1%2%</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="3863"/>
+        <location filename="../main/MainWindow.cpp" line="4189"/>
         <source>Selection: %1 to %2 (duration %3)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3866"/>
+        <location filename="../main/MainWindow.cpp" line="4192"/>
         <source>Visible: %1 to %2 (duration %3)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3914"/>
+        <location filename="../main/MainWindow.cpp" line="4242"/>
         <source>Sample rate mismatch</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3915"/>
+        <location filename="../main/MainWindow.cpp" line="4243"/>
         <source>&lt;b&gt;Wrong sample rate&lt;/b&gt;&lt;p&gt;The sample rate of this audio file (%1 Hz) does not match
 the current playback rate (%2 Hz).&lt;p&gt;The file will play at the wrong speed and pitch.&lt;p&gt;Change the &lt;i&gt;Resample mismatching files on import&lt;/i&gt; option under &lt;i&gt;File&lt;/i&gt; -&gt; &lt;i&gt;Preferences&lt;/i&gt; if you want to alter this behaviour.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3926"/>
-        <location filename="../main/MainWindow.cpp" line="3936"/>
+        <location filename="../main/MainWindow.cpp" line="4254"/>
+        <location filename="../main/MainWindow.cpp" line="4264"/>
         <source>Audio processing overload</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3927"/>
+        <location filename="../main/MainWindow.cpp" line="4255"/>
         <source>&lt;b&gt;Overloaded&lt;/b&gt;&lt;p&gt;Audio effects plugin auditioning has been disabled due to a processing overload.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3937"/>
+        <location filename="../main/MainWindow.cpp" line="4265"/>
         <source>&lt;b&gt;Overloaded&lt;/b&gt;&lt;p&gt;Audio playback speed processing has been reduced to a single channel, due to a processing overload.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4007"/>
+        <location filename="../main/MainWindow.cpp" line="4285"/>
+        <source>Problems loading plugins</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4364"/>
         <source>Add Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4108"/>
+        <location filename="../main/MainWindow.cpp" line="4505"/>
         <source>Reset Counters</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4127"/>
-        <location filename="../main/MainWindow.cpp" line="4134"/>
+        <location filename="../main/MainWindow.cpp" line="4573"/>
+        <location filename="../main/MainWindow.cpp" line="4580"/>
         <source>Failed to generate layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4128"/>
-        <source>&lt;b&gt;Layer generation failed&lt;/b&gt;&lt;p&gt;Failed to generate derived layer.&lt;p&gt;The layer transform &quot;%1&quot; failed:&lt;p&gt;%2</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4135"/>
-        <source>&lt;b&gt;Layer generation failed&lt;/b&gt;&lt;p&gt;Failed to generate a derived layer.&lt;p&gt;The layer transform &quot;%1&quot; failed.&lt;p&gt;No error information is available.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4147"/>
-        <location filename="../main/MainWindow.cpp" line="4181"/>
+        <location filename="../main/MainWindow.cpp" line="4593"/>
+        <location filename="../main/MainWindow.cpp" line="4628"/>
         <source>Warning</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4160"/>
-        <location filename="../main/MainWindow.cpp" line="4167"/>
+        <location filename="../main/MainWindow.cpp" line="4606"/>
+        <location filename="../main/MainWindow.cpp" line="4613"/>
         <source>Failed to regenerate layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4161"/>
+        <location filename="../main/MainWindow.cpp" line="4607"/>
         <source>&lt;b&gt;Layer generation failed&lt;/b&gt;&lt;p&gt;Failed to regenerate derived layer &quot;%1&quot; using new data model as input.&lt;p&gt;The layer transform &quot;%2&quot; failed:&lt;p&gt;%3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4168"/>
+        <location filename="../main/MainWindow.cpp" line="4614"/>
         <source>&lt;b&gt;Layer generation failed&lt;/b&gt;&lt;p&gt;Failed to regenerate derived layer &quot;%1&quot; using new data model as input.&lt;p&gt;The layer transform &quot;%2&quot; failed.&lt;p&gt;No error information is available.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4181"/>
+        <location filename="../main/MainWindow.cpp" line="4628"/>
         <source>&lt;b&gt;Warning when regenerating layer&lt;/b&gt;&lt;p&gt;When regenerating the derived layer &quot;%1&quot; using new data model as input:&lt;p&gt;%2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4191"/>
+        <location filename="../main/MainWindow.cpp" line="4636"/>
         <source>Failed to calculate alignment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4192"/>
-        <source>&lt;b&gt;Alignment calculation failed&lt;/b&gt;&lt;p&gt;Failed to calculate an audio alignment using transform &quot;%1&quot;:&lt;p&gt;%2</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4265"/>
-        <source>Adjust the master playback level</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4267"/>
+        <location filename="../main/MainWindow.cpp" line="4724"/>
         <source>Adjust the master playback speed</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4280"/>
+        <location filename="../main/MainWindow.cpp" line="4737"/>
         <source>http://www.sonicvisualiser.org/</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4300"/>
+        <location filename="../main/MainWindow.cpp" line="4757"/>
         <source>Release %1 : Revision %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4302"/>
+        <location filename="../main/MainWindow.cpp" line="4759"/>
         <source>Release %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4306"/>
+        <location filename="../main/MainWindow.cpp" line="4763"/>
         <source>Unreleased : Revision %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4312"/>
+        <location filename="../main/MainWindow.cpp" line="4769"/>
         <source>&lt;h3&gt;About Sonic Visualiser&lt;/h3&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4313"/>
+        <location filename="../main/MainWindow.cpp" line="4770"/>
         <source>&lt;p&gt;Sonic Visualiser is a program for viewing and exploring audio data for semantic music analysis and annotation.&lt;br&gt;&lt;a href=&quot;http://www.sonicvisualiser.org/&quot;&gt;http://www.sonicvisualiser.org/&lt;/a&gt;&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4314"/>
-        <source>&lt;p&gt;&lt;small&gt;%1 : %2 configuration&lt;/small&gt;&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4316"/>
+        <location filename="../main/MainWindow.cpp" line="4773"/>
         <source>Debug</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4316"/>
+        <location filename="../main/MainWindow.cpp" line="4773"/>
         <source>Release</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4320"/>
-        <source>With Qt v%1 &amp;copy; Nokia Corporation</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4324"/>
+        <location filename="../main/MainWindow.cpp" line="4782"/>
         <source>&lt;br&gt;With JACK audio output library v%1 &amp;copy; Paul Davis and Jack O&apos;Quin</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4326"/>
+        <location filename="../main/MainWindow.cpp" line="4784"/>
         <source>&lt;br&gt;With JACK audio output library &amp;copy; Paul Davis and Jack O&apos;Quin</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4330"/>
+        <location filename="../main/MainWindow.cpp" line="4788"/>
         <source>&lt;br&gt;With PortAudio audio output library &amp;copy; Ross Bencina and Phil Burk</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4334"/>
+        <location filename="../main/MainWindow.cpp" line="4792"/>
         <source>&lt;br&gt;With PulseAudio audio output library v%1 &amp;copy; Lennart Poettering and Pierre Ossman</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4336"/>
+        <location filename="../main/MainWindow.cpp" line="4794"/>
         <source>&lt;br&gt;With PulseAudio audio output library &amp;copy; Lennart Poettering and Pierre Ossman</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4341"/>
+        <location filename="../main/MainWindow.cpp" line="4799"/>
         <source>&lt;br&gt;With Ogg file decoder (oggz v%1, fishsound v%2) &amp;copy; CSIRO Australia</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4343"/>
+        <location filename="../main/MainWindow.cpp" line="4801"/>
         <source>&lt;br&gt;With Ogg file decoder &amp;copy; CSIRO Australia</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4348"/>
+        <location filename="../main/MainWindow.cpp" line="4806"/>
         <source>&lt;br&gt;With MAD mp3 decoder v%1 &amp;copy; Underbit Technologies Inc</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4350"/>
+        <location filename="../main/MainWindow.cpp" line="4808"/>
         <source>&lt;br&gt;With MAD mp3 decoder &amp;copy; Underbit Technologies Inc</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4355"/>
+        <location filename="../main/MainWindow.cpp" line="4813"/>
         <source>&lt;br&gt;With libsamplerate v%1 &amp;copy; Erik de Castro Lopo</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4357"/>
+        <location filename="../main/MainWindow.cpp" line="4815"/>
         <source>&lt;br&gt;With libsamplerate &amp;copy; Erik de Castro Lopo</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4362"/>
+        <location filename="../main/MainWindow.cpp" line="4820"/>
         <source>&lt;br&gt;With libsndfile v%1 &amp;copy; Erik de Castro Lopo</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4364"/>
+        <location filename="../main/MainWindow.cpp" line="4822"/>
         <source>&lt;br&gt;With libsndfile &amp;copy; Erik de Castro Lopo</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4369"/>
+        <location filename="../main/MainWindow.cpp" line="4827"/>
         <source>&lt;br&gt;With FFTW3 v%1 &amp;copy; Matteo Frigo and MIT</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4371"/>
+        <location filename="../main/MainWindow.cpp" line="4829"/>
         <source>&lt;br&gt;With FFTW3 &amp;copy; Matteo Frigo and MIT</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4376"/>
-        <source>&lt;br&gt;With Rubber Band v%1 &amp;copy; Chris Cannam</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4378"/>
-        <source>&lt;br&gt;With Rubber Band &amp;copy; Chris Cannam</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4382"/>
-        <source>&lt;br&gt;With Vamp plugin support (API v%1, host SDK v%2) &amp;copy; Chris Cannam</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4384"/>
+        <location filename="../main/MainWindow.cpp" line="4840"/>
         <source>&lt;br&gt;With LADSPA plugin support (API v%1) &amp;copy; Richard Furse, Paul Davis, Stefan Westerfeld</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4385"/>
+        <location filename="../main/MainWindow.cpp" line="4841"/>
         <source>&lt;br&gt;With DSSI plugin support (API v%1) &amp;copy; Chris Cannam, Steve Harris, Sean Bolton</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4387"/>
+        <location filename="../main/MainWindow.cpp" line="4843"/>
         <source>&lt;br&gt;With Redland RDF datastore v%1 &amp;copy; Dave Beckett and the University of Bristol</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4389"/>
+        <location filename="../main/MainWindow.cpp" line="4845"/>
         <source>&lt;br&gt;With Redland RDF datastore &amp;copy; Dave Beckett and the University of Bristol</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4394"/>
+        <location filename="../main/MainWindow.cpp" line="4850"/>
         <source>&lt;br&gt;With RtMidi &amp;copy; Gary P. Scavone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4398"/>
+        <location filename="../main/MainWindow.cpp" line="4854"/>
         <source>&lt;br&gt;With liblo Lite OSC library v%1 &amp;copy; Steve Harris</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4400"/>
+        <location filename="../main/MainWindow.cpp" line="4856"/>
         <source>&lt;br&gt;With liblo Lite OSC library &amp;copy; Steve Harris</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4404"/>
+        <location filename="../main/MainWindow.cpp" line="4860"/>
         <source>&lt;/small&gt;&lt;p&gt;&lt;small&gt;The OSC URL for this instance is: &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4411"/>
+        <location filename="../main/MainWindow.cpp" line="4867"/>
         <source>With </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4411"/>
+        <location filename="../main/MainWindow.cpp" line="4867"/>
         <source>Using </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4423"/>
+        <location filename="../main/MainWindow.cpp" line="4879"/>
         <source>About Sonic Visualiser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/OSCHandler.cpp" line="318"/>
+        <location filename="../main/OSCHandler.cpp" line="320"/>
         <source>Add %1 Pane</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3973,208 +4585,221 @@
 <context>
     <name>MainWindowBase</name>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="481"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="661"/>
         <source>%1 (modified)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="496"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="676"/>
         <source> (modified)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="694"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="874"/>
         <source>Cut</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="765"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="945"/>
         <source>Paste</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="869"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="892"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="982"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1001"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1051"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1074"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1164"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1183"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1202"/>
         <source>Add Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="923"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1105"/>
         <source>Add Point at %1 s</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="966"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1148"/>
         <source>Add Item at %1 s</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1042"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1294"/>
         <source>Opening file or URL...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1169"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1435"/>
         <source>Select target for import</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1268"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1687"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1814"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1537"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2006"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2136"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2939"/>
         <source>%1: %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1275"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1544"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2946"/>
         <source>%1: %2 [%3]</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1290"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1331"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1559"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1600"/>
         <source>Import &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1385"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1656"/>
         <source>Opening playlist...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1831"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1855"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2155"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2181"/>
         <source>Importing from RDF...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1590"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1906"/>
         <source>Opening session...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1163"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1429"/>
         <source>Close the current session and start a new one</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1164"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1430"/>
         <source>Replace the main audio file in this session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1165"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1431"/>
         <source>Add the audio file to this session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1170"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1436"/>
         <source>&lt;b&gt;Select a target for import&lt;/b&gt;&lt;p&gt;You already have an audio file loaded.&lt;br&gt;What would you like to do with the new audio file?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1249"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1518"/>
         <source>Import audio file &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1471"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1742"/>
         <source>Import layer XML file &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1505"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1776"/>
         <source>Import MIDI file &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1672"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1770"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1991"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2090"/>
         <source>SV XML file read error:
 %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1685"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2004"/>
         <source>Import session file &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1782"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2102"/>
         <source>Open session template &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1846"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1859"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2172"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2185"/>
         <source>Failed to import RDF</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1847"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2173"/>
         <source>&lt;b&gt;Failed to import RDF&lt;/b&gt;&lt;p&gt;Importing data from RDF document at &quot;%1&quot; failed: %2&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1860"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2186"/>
         <source>&lt;b&gt;Failed to import RDF&lt;/b&gt;&lt;p&gt;No suitable data models found for import from RDF document at &quot;%1&quot;&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1864"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2190"/>
         <source>Import RDF document &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1992"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1997"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2358"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2363"/>
         <source>Couldn&apos;t open audio device</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1993"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2359"/>
         <source>&lt;b&gt;No audio available&lt;/b&gt;&lt;p&gt;Could not open an audio device for playback.&lt;p&gt;Automatic audio device detection failed. Audio playback will not be available during this session.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1998"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2364"/>
         <source>&lt;b&gt;No audio available&lt;/b&gt;&lt;p&gt;Failed to open your preferred audio device (&quot;%1&quot;).&lt;p&gt;Audio playback will not be available during this session.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2079"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2092"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2129"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="3571"/>
+        <source>Recording: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2481"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2494"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2532"/>
         <source>Failed to write file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2080"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2093"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2130"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2482"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2495"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2533"/>
         <source>&lt;b&gt;Save failed&lt;/b&gt;&lt;p&gt;Failed to write to file &quot;%1&quot;: %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2678"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2959"/>
+        <source>Import Recorded Audio</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="3254"/>
         <source>Add Pane</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2723"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="3300"/>
         <source>Remove Pane</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2746"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="3127"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="3323"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="3740"/>
         <source>Delete Pane</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2960"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="3559"/>
         <source>Playing: %1 of %2 (%3 remaining)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -4182,77 +4807,77 @@
 <context>
     <name>ModelDataTableDialog</name>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="45"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="45"/>
         <source>Data Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="49"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="49"/>
         <source>Playback Toolbar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="51"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="51"/>
         <source>Play Mode Toolbar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="55"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="55"/>
         <source>Track Playback</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="56"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="56"/>
         <source>Toggle tracking of playback position</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="62"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="62"/>
         <source>Edit Toolbar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="64"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="64"/>
         <source>Insert New Item</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="65"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="65"/>
         <source>Insert</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="66"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="66"/>
         <source>Insert a new item</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="70"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="70"/>
         <source>Delete Selected Items</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="71"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="71"/>
         <source>Delete</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="72"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="72"/>
         <source>Delete the selected item or items</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="96"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="96"/>
         <source>Data in Layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="107"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="107"/>
         <source>Find:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="108"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="108"/>
         <source> </source>
         <translation type="unfinished"></translation>
     </message>
@@ -4260,22 +4885,22 @@
 <context>
     <name>ModelMetadataModel</name>
     <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="227"/>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="227"/>
         <source>Type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="228"/>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="228"/>
         <source>Name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="229"/>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="229"/>
         <source>Maker</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="230"/>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="230"/>
         <source>Source</source>
         <translation type="unfinished"></translation>
     </message>
@@ -4283,88 +4908,106 @@
 <context>
     <name>ModelTransformerFactory</name>
     <message>
-        <location filename="../../svcore/transform/ModelTransformerFactory.cpp" line="76"/>
+        <location filename="../svcore/transform/ModelTransformerFactory.cpp" line="78"/>
         <source>%1 &lt;%2&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/ModelTransformerFactory.cpp" line="217"/>
+        <location filename="../svcore/transform/ModelTransformerFactory.cpp" line="238"/>
         <source>%1: %2</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
+    <name>NetworkPermissionTester</name>
+    <message>
+        <location filename="../main/NetworkPermissionTester.cpp" line="44"/>
+        <source>Welcome to Sonic Visualiser</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/NetworkPermissionTester.cpp" line="53"/>
+        <source>&lt;h2&gt;Welcome to Sonic Visualiser!&lt;/h2&gt;&lt;p&gt;&lt;img src=&quot;:icons/qm-logo-smaller.png&quot; style=&quot;float:right&quot;&gt;Sonic Visualiser is a program for viewing and exploring audio data for semantic music analysis and annotation.&lt;/p&gt;&lt;p&gt;Developed in the Centre for Digital Music at Queen Mary, University of London, Sonic Visualiser is provided free as open source software under the GNU General Public License.&lt;/p&gt;&lt;p&gt;&lt;hr&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Before we go on...&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Sonic Visualiser would like to make networking connections and open a network port.&lt;/p&gt;&lt;p&gt;This is to:&lt;/p&gt;&lt;ul&gt;&lt;li&gt; Find information about available and installed plugins;&lt;/li&gt;&lt;li&gt; Support the use of Open Sound Control, where configured; and&lt;/li&gt;&lt;li&gt; Tell you when updates are available.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;No personal information will be sent, no tracking is carried out, and all requests happen in the background without interrupting your work.&lt;/p&gt;&lt;p&gt;We recommend that you allow this, because it makes Sonic Visualiser more useful. But if you do not wish to do so, please un-check the box below.&lt;br&gt;&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/NetworkPermissionTester.cpp" line="69"/>
+        <source>Allow this</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>NoteLayer</name>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="45"/>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="46"/>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="807"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="57"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="58"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="898"/>
         <source>New Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="83"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="95"/>
         <source>Vertical Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="84"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="96"/>
         <source>Scale Units</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="100"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="112"/>
         <source>Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="142"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="161"/>
         <source>Auto-Align</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="143"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="162"/>
         <source>Linear</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="144"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="163"/>
         <source>Log</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="145"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="164"/>
         <source>MIDI Notes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="447"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="474"/>
         <source>In progress</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="449"/>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="472"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="476"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="499"/>
         <source>No local points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="486"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="513"/>
         <source>%1 (%2, %3 Hz)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="493"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="520"/>
         <source>%1 Hz (%2, %3)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="499"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="526"/>
         <source>%1 %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="506"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="533"/>
         <source>Time:	%1
 Pitch:	%2
 Duration:	%3
@@ -4372,7 +5015,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="511"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="538"/>
         <source>Time:	%1
 Pitch:	%2
 Duration:	%3
@@ -4380,68 +5023,68 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="812"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="903"/>
         <source>Draw Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="888"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="979"/>
         <source>Erase Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="940"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1031"/>
         <source>Drag Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="961"/>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1009"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1052"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1100"/>
         <source>Edit Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="963"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1054"/>
         <source>Relocate Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="966"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1057"/>
         <source>Change Point Value</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1025"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1116"/>
         <source>Drag Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1050"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1141"/>
         <source>Resize Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1089"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1180"/>
         <source>Delete Selected Points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1135"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1226"/>
         <source>Re-align pasted items?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1136"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1227"/>
         <source>The items you are pasting came from a layer with different source material from this one.  Do you want to re-align them in time, to match the source material for this layer?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1150"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1241"/>
         <source>Paste</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1221"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1312"/>
         <source>Record Note</source>
         <translation type="unfinished"></translation>
     </message>
@@ -4449,47 +5092,47 @@
 <context>
     <name>NoteModel</name>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="126"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="129"/>
         <source>Note</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="166"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="164"/>
         <source>Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="167"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="165"/>
         <source>Frame</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="168"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="166"/>
         <source>Pitch</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="169"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="167"/>
         <source>Duration</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="170"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="168"/>
         <source>Level</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="171"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="169"/>
         <source>Label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="172"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="170"/>
         <source>Unknown</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="202"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="200"/>
         <source>Edit Data</source>
         <translation type="unfinished"></translation>
     </message>
@@ -4497,7 +5140,7 @@
 <context>
     <name>OggVorbisFileReader</name>
     <message>
-        <location filename="../../svcore/data/fileio/OggVorbisFileReader.cpp" line="76"/>
+        <location filename="../svcore/data/fileio/OggVorbisFileReader.cpp" line="82"/>
         <source>Decoding %1...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -4505,12 +5148,12 @@
 <context>
     <name>Overview</name>
     <message>
-        <location filename="../../svgui/view/Overview.cpp" line="32"/>
+        <location filename="../svgui/view/Overview.cpp" line="33"/>
         <source>Overview</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Overview.cpp" line="278"/>
+        <location filename="../svgui/view/Overview.cpp" line="359"/>
         <source>Click and drag to navigate; double-click to jump</source>
         <translation type="unfinished"></translation>
     </message>
@@ -4518,465 +5161,300 @@
 <context>
     <name>Pane</name>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="128"/>
+        <location filename="../svgui/view/Pane.cpp" line="143"/>
         <source>Horizontal Zoom</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="154"/>
+        <location filename="../svgui/view/Pane.cpp" line="169"/>
         <source>Vertical Zoom</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="175"/>
+        <location filename="../svgui/view/Pane.cpp" line="190"/>
         <source>Reset zoom to default</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="657"/>
+        <location filename="../svgui/view/Pane.cpp" line="680"/>
         <source>Some lengthy prefix:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="787"/>
+        <location filename="../svgui/view/Pane.cpp" line="845"/>
         <source>Reference</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="789"/>
-        <location filename="../../svgui/view/Pane.cpp" line="793"/>
+        <location filename="../svgui/view/Pane.cpp" line="847"/>
+        <location filename="../svgui/view/Pane.cpp" line="851"/>
         <source>Unaligned</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="795"/>
+        <location filename="../svgui/view/Pane.cpp" line="853"/>
         <source>Aligning: %1%</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="797"/>
+        <location filename="../svgui/view/Pane.cpp" line="855"/>
         <source>Aligned</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="839"/>
+        <location filename="../svgui/view/Pane.cpp" line="897"/>
         <source>%1 - %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="949"/>
-        <location filename="../../svgui/view/Pane.cpp" line="965"/>
+        <location filename="../svgui/view/Pane.cpp" line="1007"/>
+        <location filename="../svgui/view/Pane.cpp" line="1023"/>
         <source>+%1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1015"/>
+        <location filename="../svgui/view/Pane.cpp" line="1072"/>
         <source>(R)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1018"/>
+        <location filename="../svgui/view/Pane.cpp" line="1070"/>
         <source>(X)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1022"/>
+        <location filename="../svgui/view/Pane.cpp" line="1076"/>
         <source>%1 / %2Hz%3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1209"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1215"/>
+        <location filename="../svgui/view/Pane.cpp" line="1260"/>
+        <location filename="../svgui/view/Pane.cpp" line="1266"/>
         <source>Zoom</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1210"/>
+        <location filename="../svgui/view/Pane.cpp" line="1261"/>
         <source>Zoom In</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1210"/>
+        <location filename="../svgui/view/Pane.cpp" line="1261"/>
         <source>Wheel Up</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1211"/>
+        <location filename="../svgui/view/Pane.cpp" line="1262"/>
         <source>Zoom Out</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1211"/>
+        <location filename="../svgui/view/Pane.cpp" line="1262"/>
         <source>Wheel Down</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1213"/>
+        <location filename="../svgui/view/Pane.cpp" line="1264"/>
         <source>General Pane Mouse Actions</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1215"/>
+        <location filename="../svgui/view/Pane.cpp" line="1266"/>
         <source>Wheel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1216"/>
+        <location filename="../svgui/view/Pane.cpp" line="1267"/>
         <source>Zoom in or out in time axis</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1217"/>
+        <location filename="../svgui/view/Pane.cpp" line="1268"/>
         <source>Scroll</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1217"/>
+        <location filename="../svgui/view/Pane.cpp" line="1268"/>
         <source>Ctrl+Wheel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1218"/>
+        <location filename="../svgui/view/Pane.cpp" line="1269"/>
         <source>Scroll rapidly left or right in time axis</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1219"/>
+        <location filename="../svgui/view/Pane.cpp" line="1270"/>
         <source>Zoom Vertically</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1219"/>
+        <location filename="../svgui/view/Pane.cpp" line="1270"/>
         <source>Shift+Wheel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1220"/>
+        <location filename="../svgui/view/Pane.cpp" line="1271"/>
         <source>Zoom in or out in the vertical axis</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1221"/>
+        <location filename="../svgui/view/Pane.cpp" line="1272"/>
         <source>Scroll Vertically</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1221"/>
+        <location filename="../svgui/view/Pane.cpp" line="1272"/>
         <source>Alt+Wheel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1222"/>
+        <location filename="../svgui/view/Pane.cpp" line="1273"/>
         <source>Scroll up or down in the vertical axis</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1223"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1232"/>
+        <location filename="../svgui/view/Pane.cpp" line="1274"/>
         <source>Navigate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1223"/>
+        <location filename="../svgui/view/Pane.cpp" line="1274"/>
         <source>Middle</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1224"/>
+        <location filename="../svgui/view/Pane.cpp" line="1275"/>
         <source>Click middle button and drag to navigate with any tool</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1225"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1236"/>
+        <location filename="../svgui/view/Pane.cpp" line="1276"/>
         <source>Relocate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1225"/>
+        <location filename="../svgui/view/Pane.cpp" line="1276"/>
         <source>Double-Click Middle</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1226"/>
+        <location filename="../svgui/view/Pane.cpp" line="1277"/>
         <source>Double-click middle button to relocate with any tool</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1227"/>
+        <location filename="../svgui/view/Pane.cpp" line="1278"/>
         <source>Menu</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1227"/>
+        <location filename="../svgui/view/Pane.cpp" line="1278"/>
         <source>Right</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1228"/>
+        <location filename="../svgui/view/Pane.cpp" line="1279"/>
         <source>Show pane context menu</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1230"/>
-        <source>Navigate Tool Mouse Actions</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1232"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1242"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1254"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1260"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1264"/>
-        <source>Left</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1233"/>
-        <source>Click left button and drag to move around</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1234"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1268"/>
-        <source>Zoom to Area</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1234"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1250"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1268"/>
-        <source>Shift+Left</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1235"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1269"/>
-        <source>Shift-click left button and drag to zoom to a rectangular area</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1236"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1238"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1256"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1266"/>
-        <source>Double-Click Left</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1237"/>
-        <source>Double-click left button to jump to clicked location</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1238"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1256"/>
-        <source>Edit</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1239"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1257"/>
-        <source>Double-click left button on an item to edit it</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1241"/>
-        <source>Select Tool Mouse Actions</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1242"/>
-        <source>Select</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1243"/>
-        <source>Click left button and drag to select region; drag region edge to resize</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1244"/>
-        <source>Multi Select</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1244"/>
-        <source>Ctrl+Left</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1246"/>
-        <source>Cmd-click left button and drag to select an additional region</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1248"/>
-        <source>Ctrl-click left button and drag to select an additional region</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1250"/>
-        <source>Fine Select</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1251"/>
-        <source>Shift-click left button and drag to select without snapping to items or grid</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1253"/>
-        <source>Edit Tool Mouse Actions</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1254"/>
-        <source>Move</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1255"/>
-        <source>Click left button on an item or selected region and drag to move</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1259"/>
-        <source>Draw Tool Mouse Actions</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1260"/>
-        <source>Draw</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1261"/>
-        <source>Click left button and drag to create new item</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1263"/>
-        <source>Measure Tool Mouse Actions</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1264"/>
-        <source>Measure Area</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1265"/>
-        <source>Click left button and drag to measure a rectangular area</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1266"/>
-        <source>Measure Item</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1267"/>
-        <source>Click left button and drag to measure extents of an item or shape</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2234"/>
+        <location filename="../svgui/view/Pane.cpp" line="2515"/>
         <source>Enter new range</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2235"/>
+        <location filename="../svgui/view/Pane.cpp" line="2516"/>
         <source>New vertical display range, from %1 to %2 %4:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2354"/>
+        <location filename="../svgui/view/Pane.cpp" line="2638"/>
         <source>Drag Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2361"/>
+        <location filename="../svgui/view/Pane.cpp" line="2645"/>
         <source>Resize Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2520"/>
+        <location filename="../svgui/view/Pane.cpp" line="2809"/>
         <source>Click and drag to navigate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2531"/>
+        <location filename="../svgui/view/Pane.cpp" line="2820"/>
         <source>Click and drag to select a range; hold Shift to avoid snapping to items; hold Cmd for multi-select; middle-click and drag to navigate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2533"/>
+        <location filename="../svgui/view/Pane.cpp" line="2822"/>
         <source>Click and drag to select a range; hold Cmd for multi-select; middle-click and drag to navigate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2537"/>
+        <location filename="../svgui/view/Pane.cpp" line="2826"/>
         <source>Click and drag to select a range; hold Shift to avoid snapping to items; hold Ctrl for multi-select; middle-click and drag to navigate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2539"/>
+        <location filename="../svgui/view/Pane.cpp" line="2828"/>
         <source>Click and drag to select a range; hold Ctrl for multi-select; middle-click and drag to navigate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2548"/>
+        <location filename="../svgui/view/Pane.cpp" line="2837"/>
         <source>Click and drag to move the selection boundary</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2553"/>
+        <location filename="../svgui/view/Pane.cpp" line="2842"/>
         <source>Click and drag to select a range; hold Shift to avoid snapping to items; middle-click to navigate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2555"/>
+        <location filename="../svgui/view/Pane.cpp" line="2844"/>
         <source>Click and drag to select a range; middle-click and drag to navigate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2563"/>
+        <location filename="../svgui/view/Pane.cpp" line="2852"/>
         <source>Click to add a new item in the active layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2570"/>
+        <location filename="../svgui/view/Pane.cpp" line="2859"/>
         <source>Click to erase an item from the active layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2577"/>
+        <location filename="../svgui/view/Pane.cpp" line="2866"/>
         <source>Click and drag an item in the active layer to move it; hold Shift to override initial resistance</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2582"/>
+        <location filename="../svgui/view/Pane.cpp" line="2871"/>
         <source>Click and drag to move all items in the selected range</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2598"/>
+        <location filename="../svgui/view/Pane.cpp" line="2887"/>
         <source>Click and drag to adjust the visible range of the vertical scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2600"/>
+        <location filename="../svgui/view/Pane.cpp" line="2889"/>
         <source>Click and drag to adjust the vertical zoom level</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2602"/>
+        <location filename="../svgui/view/Pane.cpp" line="2891"/>
         <source>Click and drag to adjust the horizontal zoom level</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2604"/>
+        <location filename="../svgui/view/Pane.cpp" line="2893"/>
         <source>Reset horizontal and vertical zoom levels to their defaults</source>
         <translation type="unfinished"></translation>
     </message>
@@ -4984,45 +5462,40 @@
 <context>
     <name>PlayParameterRepository</name>
     <message>
-        <location filename="../../svcore/base/PlayParameterRepository.cpp" line="206"/>
+        <location filename="../svcore/base/PlayParameterRepository.cpp" line="182"/>
         <source>Adjust Playback Parameters</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PlayParameterRepository.cpp" line="211"/>
+        <location filename="../svcore/base/PlayParameterRepository.cpp" line="187"/>
         <source>Change Playback Mute State</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PlayParameterRepository.cpp" line="216"/>
+        <location filename="../svcore/base/PlayParameterRepository.cpp" line="192"/>
         <source>Change Playback Gain</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PlayParameterRepository.cpp" line="221"/>
+        <location filename="../svcore/base/PlayParameterRepository.cpp" line="197"/>
         <source>Change Playback Pan</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PlayParameterRepository.cpp" line="226"/>
-        <source>Change Playback Plugin</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svcore/base/PlayParameterRepository.cpp" line="231"/>
-        <source>Configure Playback Plugin</source>
+        <location filename="../svcore/base/PlayParameterRepository.cpp" line="202"/>
+        <source>Change Playback Sample</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>PluginParameterBox</name>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterBox.cpp" line="61"/>
+        <location filename="../svgui/widgets/PluginParameterBox.cpp" line="61"/>
         <source>This plugin has no adjustable parameters.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterBox.cpp" line="82"/>
+        <location filename="../svgui/widgets/PluginParameterBox.cpp" line="82"/>
         <source>Program</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5030,127 +5503,127 @@
 <context>
     <name>PluginParameterDialog</name>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="54"/>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="191"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="56"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="193"/>
         <source>Plugin Parameters</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="102"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="104"/>
         <source>Name:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="125"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="127"/>
         <source>Version:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="138"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="140"/>
         <source>Maker:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="144"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="146"/>
         <source>Copyright:  </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="156"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="158"/>
         <source>Output:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="175"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="177"/>
         <source>Input Material</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="184"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="186"/>
         <source>Restrict to selection extents</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="217"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="219"/>
         <source>Channels</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="223"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="225"/>
         <source>Processing</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="233"/>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="604"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="235"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="606"/>
         <source>Advanced &gt;&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="322"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="324"/>
         <source>Channel mismatch</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="323"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="325"/>
         <source>This plugin requires at least %1 input channels, but only %2 %3 available.  The plugin probably will not work correctly.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="323"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="325"/>
         <source>are</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="323"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="325"/>
         <source>is</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="340"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="342"/>
         <source>This plugin accepts no more than %1 input channels,
 but %2 are available.  Only the first %3 will be used.
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="347"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="349"/>
         <source>This plugin only has a single channel input,
 but the source has %1 channels.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="350"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="352"/>
         <source>Use mean of source channels</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="352"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="354"/>
         <source>Use channel %1 only</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="404"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="406"/>
         <source>Window size:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="406"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="408"/>
         <source>Audio frames per block:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="431"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="433"/>
         <source>Window increment:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="455"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="457"/>
         <source>Window shape:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="599"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="601"/>
         <source>Advanced &lt;&lt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5158,214 +5631,259 @@
 <context>
     <name>Preferences</name>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="106"/>
+        <location filename="../svcore/base/Preferences.cpp" line="121"/>
         <source>Spectrogram y-axis interpolation:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="109"/>
+        <location filename="../svcore/base/Preferences.cpp" line="124"/>
         <source>Spectrogram x-axis interpolation:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="112"/>
+        <location filename="../svcore/base/Preferences.cpp" line="127"/>
         <source>Frequency of concert A</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="115"/>
+        <location filename="../svcore/base/Preferences.cpp" line="130"/>
         <source>Property box layout</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="118"/>
+        <location filename="../svcore/base/Preferences.cpp" line="133"/>
         <source>Spectral analysis window shape</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="121"/>
+        <location filename="../svcore/base/Preferences.cpp" line="136"/>
         <source>Playback resampler type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="124"/>
+        <location filename="../svcore/base/Preferences.cpp" line="139"/>
+        <source>Normalise audio signal when reading from audio file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="142"/>
         <source>Omit temporaries from Recent Files menu</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="127"/>
+        <location filename="../svcore/base/Preferences.cpp" line="145"/>
         <source>Resample mismatching files on import</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="130"/>
+        <location filename="../svcore/base/Preferences.cpp" line="148"/>
+        <source>Load mp3 files in gapless mode</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="151"/>
+        <source>Single fixed sample rate to resample all files to</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="154"/>
         <source>Location for cache file directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="133"/>
+        <location filename="../svcore/base/Preferences.cpp" line="157"/>
         <source>Background colour preference</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="136"/>
-        <source>Time display format</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="139"/>
+        <location filename="../svcore/base/Preferences.cpp" line="160"/>
+        <source>Time display precision</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="163"/>
+        <source>Use hours:minutes:seconds format</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="166"/>
+        <source>Label middle C as</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="169"/>
         <source>Font size for text overlays</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="142"/>
+        <location filename="../svcore/base/Preferences.cpp" line="172"/>
         <source>Show splash screen on startup</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="270"/>
+        <location filename="../svcore/base/Preferences.cpp" line="329"/>
         <source>Show boxes for all panes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="271"/>
+        <location filename="../svcore/base/Preferences.cpp" line="330"/>
         <source>Show box for current pane only</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="275"/>
+        <location filename="../svcore/base/Preferences.cpp" line="334"/>
         <source>Rectangular</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="276"/>
+        <location filename="../svcore/base/Preferences.cpp" line="335"/>
         <source>Triangular</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="277"/>
+        <location filename="../svcore/base/Preferences.cpp" line="336"/>
         <source>Hamming</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="278"/>
+        <location filename="../svcore/base/Preferences.cpp" line="337"/>
         <source>Hann</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="279"/>
+        <location filename="../svcore/base/Preferences.cpp" line="338"/>
         <source>Blackman</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="280"/>
+        <location filename="../svcore/base/Preferences.cpp" line="339"/>
         <source>Gaussian</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="281"/>
+        <location filename="../svcore/base/Preferences.cpp" line="340"/>
         <source>Parzen</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="282"/>
+        <location filename="../svcore/base/Preferences.cpp" line="341"/>
         <source>Nuttall</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="283"/>
+        <location filename="../svcore/base/Preferences.cpp" line="342"/>
         <source>Blackman-Harris</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="288"/>
+        <location filename="../svcore/base/Preferences.cpp" line="347"/>
         <source>Fastest</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="289"/>
+        <location filename="../svcore/base/Preferences.cpp" line="348"/>
         <source>Standard</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="290"/>
+        <location filename="../svcore/base/Preferences.cpp" line="349"/>
         <source>Highest quality</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="295"/>
-        <location filename="../../svcore/base/Preferences.cpp" line="303"/>
+        <location filename="../svcore/base/Preferences.cpp" line="354"/>
+        <location filename="../svcore/base/Preferences.cpp" line="362"/>
         <source>None</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="296"/>
-        <location filename="../../svcore/base/Preferences.cpp" line="304"/>
+        <location filename="../svcore/base/Preferences.cpp" line="355"/>
+        <location filename="../svcore/base/Preferences.cpp" line="363"/>
         <source>Linear interpolation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="297"/>
+        <location filename="../svcore/base/Preferences.cpp" line="356"/>
         <source>4 x Oversampling</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="298"/>
+        <location filename="../svcore/base/Preferences.cpp" line="357"/>
         <source>4 x Oversampling with interpolation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="309"/>
+        <location filename="../svcore/base/Preferences.cpp" line="368"/>
         <source>Follow desktop theme</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="310"/>
+        <location filename="../svcore/base/Preferences.cpp" line="369"/>
         <source>Dark background</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="311"/>
+        <location filename="../svcore/base/Preferences.cpp" line="370"/>
         <source>Light background</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="316"/>
+        <location filename="../svcore/base/Preferences.cpp" line="375"/>
         <source>Standard (to millisecond)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="317"/>
+        <location filename="../svcore/base/Preferences.cpp" line="376"/>
         <source>High resolution (to microsecond)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="318"/>
+        <location filename="../svcore/base/Preferences.cpp" line="377"/>
         <source>24 FPS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="319"/>
+        <location filename="../svcore/base/Preferences.cpp" line="378"/>
         <source>25 FPS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="320"/>
+        <location filename="../svcore/base/Preferences.cpp" line="379"/>
         <source>30 FPS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="321"/>
+        <location filename="../svcore/base/Preferences.cpp" line="380"/>
         <source>50 FPS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="322"/>
+        <location filename="../svcore/base/Preferences.cpp" line="381"/>
         <source>60 FPS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="332"/>
+        <location filename="../svcore/base/Preferences.cpp" line="386"/>
+        <source>C0 - middle of octave scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="387"/>
+        <source>C3 - common MIDI sequencer convention</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="388"/>
+        <source>C4 - ASA American standard</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="389"/>
+        <source>C5 - used in Cakewalk and others</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="399"/>
         <source>Preferences</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5373,132 +5891,207 @@
 <context>
     <name>PreferencesDialog</name>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="50"/>
+        <location filename="../main/PreferencesDialog.cpp" line="63"/>
         <source>Sonic Visualiser: Application Preferences</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="64"/>
+        <location filename="../main/PreferencesDialog.cpp" line="77"/>
         <source>Apply</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="179"/>
+        <location filename="../main/PreferencesDialog.cpp" line="151"/>
+        <source>Green</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="238"/>
+        <location filename="../main/PreferencesDialog.cpp" line="654"/>
+        <location filename="../main/PreferencesDialog.cpp" line="669"/>
+        <source>(auto)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="272"/>
         <source>&lt;home directory&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="215"/>
+        <location filename="../main/PreferencesDialog.cpp" line="322"/>
         <source>Follow system locale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="229"/>
+        <location filename="../main/PreferencesDialog.cpp" line="336"/>
         <source>Russian</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="230"/>
+        <location filename="../main/PreferencesDialog.cpp" line="337"/>
         <source>British English</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="231"/>
+        <location filename="../main/PreferencesDialog.cpp" line="338"/>
         <source>American English</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="232"/>
+        <location filename="../main/PreferencesDialog.cpp" line="339"/>
         <source>Czech</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="277"/>
-        <location filename="../main/PreferencesDialog.cpp" line="281"/>
-        <location filename="../main/PreferencesDialog.cpp" line="288"/>
-        <location filename="../main/PreferencesDialog.cpp" line="296"/>
-        <location filename="../main/PreferencesDialog.cpp" line="313"/>
-        <location filename="../main/PreferencesDialog.cpp" line="319"/>
-        <location filename="../main/PreferencesDialog.cpp" line="325"/>
-        <location filename="../main/PreferencesDialog.cpp" line="330"/>
-        <location filename="../main/PreferencesDialog.cpp" line="335"/>
-        <location filename="../main/PreferencesDialog.cpp" line="352"/>
-        <location filename="../main/PreferencesDialog.cpp" line="367"/>
+        <location filename="../main/PreferencesDialog.cpp" line="406"/>
+        <location filename="../main/PreferencesDialog.cpp" line="428"/>
+        <location filename="../main/PreferencesDialog.cpp" line="434"/>
+        <location filename="../main/PreferencesDialog.cpp" line="439"/>
+        <location filename="../main/PreferencesDialog.cpp" line="444"/>
+        <location filename="../main/PreferencesDialog.cpp" line="461"/>
+        <location filename="../main/PreferencesDialog.cpp" line="466"/>
+        <location filename="../main/PreferencesDialog.cpp" line="481"/>
+        <location filename="../main/PreferencesDialog.cpp" line="565"/>
+        <location filename="../main/PreferencesDialog.cpp" line="570"/>
+        <location filename="../main/PreferencesDialog.cpp" line="587"/>
+        <location filename="../main/PreferencesDialog.cpp" line="591"/>
+        <location filename="../main/PreferencesDialog.cpp" line="595"/>
+        <location filename="../main/PreferencesDialog.cpp" line="600"/>
         <source>%1:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="277"/>
+        <location filename="../main/PreferencesDialog.cpp" line="423"/>
+        <source>Overview waveform colour:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="489"/>
+        <source>Run Vamp plugins in separate process:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="505"/>
+        <source>Default session template when loading audio files:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="512"/>
+        <source>(Use &quot;%1&quot; in the File menu to add to these.)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="513"/>
+        <source>Export Session as Template...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="555"/>
+        <source>Audio service:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="559"/>
+        <source>Audio playback device:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="562"/>
+        <source>Audio record device:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="578"/>
+        <source>A&amp;udio I/O</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="587"/>
         <source>User interface language</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="293"/>
-        <source>Playback audio device:</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/PreferencesDialog.cpp" line="304"/>
-        <source>&amp;General</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/PreferencesDialog.cpp" line="343"/>
+        <location filename="../main/PreferencesDialog.cpp" line="591"/>
+        <source>Allow network usage</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="401"/>
+        <source>Draw layers at Retina resolution:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="411"/>
+        <source>Default spectrogram colour:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="415"/>
+        <source>Default melodic spectrogram colour:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="419"/>
+        <source>Default colour 3D plot colour:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="452"/>
         <source>&amp;Appearance</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="377"/>
+        <location filename="../main/PreferencesDialog.cpp" line="496"/>
         <source>Anal&amp;ysis</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="386"/>
-        <source>Default session template for audio files:</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/PreferencesDialog.cpp" line="397"/>
+        <location filename="../main/PreferencesDialog.cpp" line="520"/>
         <source>Standard Waveform</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="422"/>
+        <location filename="../main/PreferencesDialog.cpp" line="545"/>
         <source>Session &amp;Template</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="427"/>
+        <location filename="../main/PreferencesDialog.cpp" line="610"/>
+        <source>&amp;Other</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="615"/>
         <source>OK</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="428"/>
+        <location filename="../main/PreferencesDialog.cpp" line="616"/>
         <source>Cancel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="544"/>
+        <location filename="../main/PreferencesDialog.cpp" line="862"/>
         <source>Select a directory to create cache subdirectory in</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="621"/>
+        <location filename="../main/PreferencesDialog.cpp" line="994"/>
         <source>Preferences</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="622"/>
+        <location filename="../main/PreferencesDialog.cpp" line="995"/>
         <source>&lt;b&gt;Restart required&lt;/b&gt;&lt;p&gt;One or more of the application preferences you have changed may not take full effect until Sonic Visualiser is restarted.&lt;/p&gt;&lt;p&gt;Please exit and restart the application now if you want these changes to take effect immediately.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="643"/>
+        <location filename="../main/PreferencesDialog.cpp" line="1026"/>
         <source>Preferences Changed</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="644"/>
+        <location filename="../main/PreferencesDialog.cpp" line="1027"/>
         <source>Some preferences have been changed but not applied.
 Apply them before closing?</source>
         <translation type="unfinished"></translation>
@@ -5507,7 +6100,7 @@
 <context>
     <name>ProgressDialog</name>
     <message>
-        <location filename="../../svgui/widgets/ProgressDialog.cpp" line="28"/>
+        <location filename="../svgui/widgets/ProgressDialog.cpp" line="28"/>
         <source>Cancel</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5515,78 +6108,57 @@
 <context>
     <name>PropertyBox</name>
     <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="155"/>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="219"/>
         <source>Show</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="172"/>
-        <source>Play</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="210"/>
-        <source>Playback Gain</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="212"/>
-        <source>dB</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="236"/>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="238"/>
-        <source>Playback Pan / Balance</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="468"/>
-        <source>Add New Colour...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="654"/>
-        <source>Name New Colour</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="655"/>
-        <source>Enter a name for the new colour:</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="657"/>
-        <source>Prefer black background for this colour</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="829"/>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="169"/>
+        <source>Click to toggle playback</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="741"/>
+        <source>Set playback clip:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="802"/>
+        <source>Adjust playback level and pan of %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="812"/>
+        <source>Change sound used for playback (currently &quot;%1&quot;)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="826"/>
         <source> (current value: %1%2)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="831"/>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="828"/>
         <source> (current value: %1)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="836"/>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="833"/>
         <source>Toggle Visibility of %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="838"/>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="835"/>
         <source>Toggle Playback of %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="842"/>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="839"/>
         <source>Toggle %1 property of %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="845"/>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="842"/>
         <source>Adjust %1 property of %2%3</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5594,37 +6166,37 @@
 <context>
     <name>PropertyContainer</name>
     <message>
-        <location filename="../../svcore/base/PropertyContainer.cpp" line="151"/>
+        <location filename="../svcore/base/PropertyContainer.cpp" line="157"/>
         <source>yes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PropertyContainer.cpp" line="152"/>
+        <location filename="../svcore/base/PropertyContainer.cpp" line="158"/>
         <source>on</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PropertyContainer.cpp" line="153"/>
+        <location filename="../svcore/base/PropertyContainer.cpp" line="159"/>
         <source>true</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PropertyContainer.cpp" line="155"/>
+        <location filename="../svcore/base/PropertyContainer.cpp" line="161"/>
         <source>no</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PropertyContainer.cpp" line="156"/>
+        <location filename="../svcore/base/PropertyContainer.cpp" line="162"/>
         <source>off</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PropertyContainer.cpp" line="157"/>
+        <location filename="../svcore/base/PropertyContainer.cpp" line="163"/>
         <source>false</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PropertyContainer.cpp" line="244"/>
+        <location filename="../svcore/base/PropertyContainer.cpp" line="251"/>
         <source>Set %1 Property</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5632,12 +6204,12 @@
 <context>
     <name>PropertyStack</name>
     <message>
-        <location filename="../../svgui/widgets/PropertyStack.cpp" line="242"/>
+        <location filename="../svgui/widgets/PropertyStack.cpp" line="242"/>
         <source>Change Layer Visibility</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PropertyStack.cpp" line="259"/>
+        <location filename="../svgui/widgets/PropertyStack.cpp" line="259"/>
         <source>Click to change the current active layer</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5645,7 +6217,7 @@
 <context>
     <name>QApplication</name>
     <message>
-        <location filename="../main/main.cpp" line="269"/>
+        <location filename="../main/main.cpp" line="261"/>
         <source>
 Sonic Visualiser is a program for viewing and exploring audio data
 for semantic music analysis and annotation.
@@ -5661,7 +6233,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/main.cpp" line="279"/>
+        <location filename="../main/main.cpp" line="271"/>
         <source>Sonic Visualiser</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5696,22 +6268,20 @@
 <context>
     <name>QFile</name>
     <message>
-        <location filename="../../svcore/data/fileio/CSVFileReader.cpp" line="47"/>
-        <location filename="../../svcore/data/fileio/MatchFileReader.cpp" line="73"/>
-        <location filename="../../svcore/data/fileio/PlaylistFileReader.cpp" line="69"/>
+        <location filename="../svcore/data/fileio/CSVFileReader.cpp" line="52"/>
+        <location filename="../svcore/data/fileio/PlaylistFileReader.cpp" line="69"/>
         <source>File &quot;%1&quot; does not exist</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/CSVFileReader.cpp" line="49"/>
-        <location filename="../../svcore/data/fileio/MatchFileReader.cpp" line="75"/>
-        <location filename="../../svcore/data/fileio/PlaylistFileReader.cpp" line="72"/>
+        <location filename="../svcore/data/fileio/CSVFileReader.cpp" line="54"/>
+        <location filename="../svcore/data/fileio/PlaylistFileReader.cpp" line="72"/>
         <source>Failed to open file &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/PlaylistFileReader.cpp" line="31"/>
-        <location filename="../../svcore/data/fileio/PlaylistFileReader.cpp" line="43"/>
+        <location filename="../svcore/data/fileio/PlaylistFileReader.cpp" line="31"/>
+        <location filename="../svcore/data/fileio/PlaylistFileReader.cpp" line="43"/>
         <source>File or URL &quot;%1&quot; could not be retrieved</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5719,44 +6289,145 @@
 <context>
     <name>QMessageBox</name>
     <message>
-        <location filename="../main/main.cpp" line="532"/>
-        <location filename="../main/main.cpp" line="537"/>
+        <location filename="../main/main.cpp" line="534"/>
+        <location filename="../main/main.cpp" line="539"/>
         <source>Failed to open file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/main.cpp" line="533"/>
+        <location filename="../main/main.cpp" line="535"/>
         <source>File or URL &quot;%1&quot; could not be opened</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/main.cpp" line="538"/>
+        <location filename="../main/main.cpp" line="540"/>
         <source>&lt;b&gt;Audio required&lt;/b&gt;&lt;p&gt;Please load at least one audio file before importing annotation data</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
-    <name>QuickTimeFileReader</name>
-    <message>
-        <location filename="../../svcore/data/fileio/QuickTimeFileReader.cpp" line="225"/>
-        <source>Decoding %1...</source>
+    <name>QObject</name>
+    <message>
+        <location filename="../svcore/plugin/PiperVampPluginFactory.cpp" line="93"/>
+        <source>External plugin host executable does not appear to be installed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/plugin/PiperVampPluginFactory.cpp" line="221"/>
+        <source>Could not start external plugin host</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/plugin/PiperVampPluginFactory.cpp" line="237"/>
+        <source>External plugin host exited unexpectedly while listing plugins</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/plugin/PiperVampPluginFactory.cpp" line="241"/>
+        <source>External plugin host invocation failed: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/plugin/PluginScan.cpp" line="191"/>
+        <source>&lt;b&gt;Failed to scan for plugins&lt;/b&gt;&lt;p&gt;Failed to scan for plugins at startup. Possibly the plugin checker helper program was not correctly installed alongside %1?&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/plugin/PluginScan.cpp" line="198"/>
+        <source>&lt;b&gt;Did not scan for plugins&lt;/b&gt;&lt;p&gt;Apparently no scan for plugins was attempted (internal error?)&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/plugin/PluginScan.cpp" line="211"/>
+        <source>&lt;b&gt;Failed to load plugins&lt;/b&gt;&lt;p&gt;Failed to load one or more plugin libraries:&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/plugin/PluginScan.cpp" line="214"/>
+        <source>&lt;p&gt;These plugins may be incompatible with the system, and will be ignored during this run of %1.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="89"/>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="107"/>
+        <source>&lt;unknown&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="93"/>
+        <source>Green</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="94"/>
+        <source>White on Black</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="95"/>
+        <source>Black on White</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="96"/>
+        <source>Cherry</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="97"/>
+        <source>Wasp</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="98"/>
+        <source>Ice</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="99"/>
+        <source>Sunset</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="100"/>
+        <source>Fruit Salad</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="101"/>
+        <source>Banded</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="102"/>
+        <source>Highlight</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="103"/>
+        <source>Printer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="104"/>
+        <source>High Gain</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>RDFImporter</name>
     <message>
-        <location filename="../../svcore/rdf/RDFImporter.cpp" line="272"/>
+        <location filename="../svcore/rdf/RDFImporter.cpp" line="270"/>
         <source>Importing audio referenced in RDF...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/rdf/RDFImporter.cpp" line="296"/>
+        <location filename="../svcore/rdf/RDFImporter.cpp" line="294"/>
         <source>Importing dense signal data from RDF...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/rdf/RDFImporter.cpp" line="490"/>
+        <location filename="../svcore/rdf/RDFImporter.cpp" line="488"/>
         <source>Importing event data from RDF...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5764,7 +6435,7 @@
 <context>
     <name>RangeInputDialog</name>
     <message>
-        <location filename="../../svgui/widgets/RangeInputDialog.cpp" line="48"/>
+        <location filename="../svgui/widgets/RangeInputDialog.cpp" line="48"/>
         <source> to </source>
         <translation type="unfinished"></translation>
     </message>
@@ -5772,87 +6443,95 @@
 <context>
     <name>RangeSummarisableTimeValueModel</name>
     <message>
-        <location filename="../../svcore/data/model/RangeSummarisableTimeValueModel.h" line="124"/>
+        <location filename="../svcore/data/model/RangeSummarisableTimeValueModel.h" line="102"/>
         <source>Range-Summarisable Time-Value</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
+    <name>ReadOnlyWaveFileModel</name>
+    <message>
+        <location filename="../svcore/data/model/ReadOnlyWaveFileModel.h" line="79"/>
+        <source>Wave File</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>RegionLayer</name>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="43"/>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="44"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="55"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="56"/>
         <source>New Region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="89"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="101"/>
         <source>Vertical Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="90"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="102"/>
         <source>Scale Units</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="91"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="103"/>
         <source>Plot Type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="109"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="121"/>
         <source>Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="170"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="182"/>
         <source>Bars</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="171"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="183"/>
         <source>Segmentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="177"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="189"/>
         <source>Auto-Align</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="178"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="190"/>
         <source>Equal Spaced</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="179"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="191"/>
         <source>Linear</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="180"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="192"/>
         <source>Log</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="385"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="397"/>
         <source>In progress</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="387"/>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="413"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="399"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="425"/>
         <source>No local points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="422"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="434"/>
         <source>%1 %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="427"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="439"/>
         <source>Time:	%1
 Value:	%2
 Duration:	%3
@@ -5860,7 +6539,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="432"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="444"/>
         <source>Time:	%1
 Value:	%2
 Duration:	%3
@@ -5868,63 +6547,63 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1043"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1140"/>
         <source>Draw Region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1125"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1222"/>
         <source>Erase Region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1185"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1282"/>
         <source>Drag Region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1206"/>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1253"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1303"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1350"/>
         <source>Edit Region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1208"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1305"/>
         <source>Relocate Region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1211"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1308"/>
         <source>Change Point Value</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1270"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1367"/>
         <source>Drag Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1296"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1393"/>
         <source>Resize Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1336"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1433"/>
         <source>Delete Selected Points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1383"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1480"/>
         <source>Re-align pasted items?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1384"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1481"/>
         <source>The items you are pasting came from a layer with different source material from this one.  Do you want to re-align them in time, to match the source material for this layer?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1398"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1495"/>
         <source>Paste</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5932,42 +6611,42 @@
 <context>
     <name>RegionModel</name>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="125"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="125"/>
         <source>Region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="153"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="153"/>
         <source>Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="154"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="154"/>
         <source>Frame</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="155"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="155"/>
         <source>Value</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="156"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="156"/>
         <source>Duration</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="157"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="157"/>
         <source>Label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="158"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="158"/>
         <source>Unknown</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="187"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="187"/>
         <source>Edit Data</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5975,29 +6654,21 @@
 <context>
     <name>RemoveLayerCommand</name>
     <message>
-        <location filename="../../svapp/framework/Document.cpp" line="1016"/>
+        <location filename="../svapp/framework/Document.cpp" line="1169"/>
         <source>Delete %1 Layer</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
-    <name>ResamplingWavFileReader</name>
-    <message>
-        <location filename="../../svcore/data/fileio/ResamplingWavFileReader.cpp" line="63"/>
-        <source>Resampling %1...</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
     <name>SVFileReader</name>
     <message>
-        <location filename="../../svapp/framework/SVFileReader.cpp" line="318"/>
-        <location filename="../../svapp/framework/SVFileReader.cpp" line="322"/>
+        <location filename="../svapp/framework/SVFileReader.cpp" line="324"/>
+        <location filename="../svapp/framework/SVFileReader.cpp" line="328"/>
         <source>(derived model in SV-XML)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/SVFileReader.cpp" line="463"/>
+        <location filename="../svapp/framework/SVFileReader.cpp" line="469"/>
         <source>Opening file or URL...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6005,12 +6676,12 @@
 <context>
     <name>SingleColourLayer</name>
     <message>
-        <location filename="../../svgui/layer/SingleColourLayer.cpp" line="62"/>
+        <location filename="../svgui/layer/SingleColourLayer.cpp" line="70"/>
         <source>Colour</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SingleColourLayer.cpp" line="114"/>
+        <location filename="../svgui/layer/SingleColourLayer.cpp" line="122"/>
         <source>&lt;unknown&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6018,13 +6689,13 @@
 <context>
     <name>SliceLayer</name>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="146"/>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="153"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="146"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="153"/>
         <source>%1 - %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="158"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="158"/>
         <source>Time:	%1 - %2
 Range:	%3 samples (%4)
 Bin:	%5
@@ -6032,139 +6703,139 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="164"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="164"/>
         <source>First</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="165"/>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="717"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="165"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="720"/>
         <source>Mean</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="165"/>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="718"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="165"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="721"/>
         <source>Peak</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="172"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="172"/>
         <source>Time:	%1 - %2
 Range:	%3 samples (%4)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="507"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="510"/>
         <source>0dB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="508"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="511"/>
         <source>-Inf</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="539"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="542"/>
         <source>x10</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="564"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="567"/>
         <source>Plot Type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="565"/>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="602"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="568"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="605"/>
         <source>Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="566"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="569"/>
         <source>Normalize</source>
         <translation type="unfinished">Normalise</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="567"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="570"/>
         <source>Threshold</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="568"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="571"/>
         <source>Gain</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="569"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="572"/>
         <source>Sampling Mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="707"/>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="733"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="710"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="736"/>
         <source>Linear</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="708"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="711"/>
         <source>Meter</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="735"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="738"/>
         <source>Rev Log</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="745"/>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="748"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="748"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="751"/>
         <source>dB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="716"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="719"/>
         <source>Any</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="570"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="573"/>
         <source>Bin Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="604"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="607"/>
         <source>Bins</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="709"/>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="734"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="712"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="737"/>
         <source>Log</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="710"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="713"/>
         <source>Absolute</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="724"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="727"/>
         <source>Lines</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="725"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="728"/>
         <source>Steps</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="726"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="729"/>
         <source>Blocks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="727"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="730"/>
         <source>Colours</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6172,22 +6843,22 @@
 <context>
     <name>SparseModel</name>
     <message>
-        <location filename="../../svcore/data/model/SparseModel.h" line="143"/>
+        <location filename="../svcore/data/model/SparseModel.h" line="154"/>
         <source>Sparse</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseModel.h" line="328"/>
+        <location filename="../svcore/data/model/SparseModel.h" line="361"/>
         <source>Edit Data</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseModel.h" line="344"/>
+        <location filename="../svcore/data/model/SparseModel.h" line="377"/>
         <source>Insert Data Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseModel.h" line="355"/>
+        <location filename="../svcore/data/model/SparseModel.h" line="390"/>
         <source>Delete Data Point</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6195,7 +6866,7 @@
 <context>
     <name>SparseModel::AddPointCommand</name>
     <message>
-        <location filename="../../svcore/data/model/SparseModel.h" line="172"/>
+        <location filename="../svcore/data/model/SparseModel.h" line="205"/>
         <source>Add Point</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6203,7 +6874,7 @@
 <context>
     <name>SparseModel::DeletePointCommand</name>
     <message>
-        <location filename="../../svcore/data/model/SparseModel.h" line="197"/>
+        <location filename="../svcore/data/model/SparseModel.h" line="230"/>
         <source>Delete Point</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6211,7 +6882,7 @@
 <context>
     <name>SparseModel::RelabelCommand</name>
     <message>
-        <location filename="../../svcore/data/model/SparseModel.h" line="254"/>
+        <location filename="../svcore/data/model/SparseModel.h" line="287"/>
         <source>Re-Label Point</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6219,32 +6890,32 @@
 <context>
     <name>SparseOneDimensionalModel</name>
     <message>
-        <location filename="../../svcore/data/model/SparseOneDimensionalModel.h" line="113"/>
+        <location filename="../svcore/data/model/SparseOneDimensionalModel.h" line="110"/>
         <source>Sparse 1-D</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseOneDimensionalModel.h" line="127"/>
+        <location filename="../svcore/data/model/SparseOneDimensionalModel.h" line="124"/>
         <source>Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseOneDimensionalModel.h" line="128"/>
+        <location filename="../svcore/data/model/SparseOneDimensionalModel.h" line="125"/>
         <source>Frame</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseOneDimensionalModel.h" line="129"/>
+        <location filename="../svcore/data/model/SparseOneDimensionalModel.h" line="126"/>
         <source>Label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseOneDimensionalModel.h" line="130"/>
+        <location filename="../svcore/data/model/SparseOneDimensionalModel.h" line="127"/>
         <source>Unknown</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseOneDimensionalModel.h" line="160"/>
+        <location filename="../svcore/data/model/SparseOneDimensionalModel.h" line="157"/>
         <source>Edit Data</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6252,37 +6923,37 @@
 <context>
     <name>SparseTimeValueModel</name>
     <message>
-        <location filename="../../svcore/data/model/SparseTimeValueModel.h" line="102"/>
+        <location filename="../svcore/data/model/SparseTimeValueModel.h" line="111"/>
         <source>Sparse Time-Value</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseTimeValueModel.h" line="116"/>
+        <location filename="../svcore/data/model/SparseTimeValueModel.h" line="128"/>
         <source>Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseTimeValueModel.h" line="117"/>
+        <location filename="../svcore/data/model/SparseTimeValueModel.h" line="129"/>
         <source>Frame</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseTimeValueModel.h" line="118"/>
+        <location filename="../svcore/data/model/SparseTimeValueModel.h" line="130"/>
         <source>Value</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseTimeValueModel.h" line="119"/>
+        <location filename="../svcore/data/model/SparseTimeValueModel.h" line="131"/>
         <source>Label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseTimeValueModel.h" line="120"/>
+        <location filename="../svcore/data/model/SparseTimeValueModel.h" line="132"/>
         <source>Unknown</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseTimeValueModel.h" line="153"/>
+        <location filename="../svcore/data/model/SparseTimeValueModel.h" line="165"/>
         <source>Edit Data</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6290,7 +6961,7 @@
 <context>
     <name>SparseValueModel</name>
     <message>
-        <location filename="../../svcore/data/model/SparseValueModel.h" line="56"/>
+        <location filename="../svcore/data/model/SparseValueModel.h" line="56"/>
         <source>Sparse Value</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6298,363 +6969,370 @@
 <context>
     <name>SpectrogramLayer</name>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="172"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="219"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="231"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="271"/>
         <source>Colour</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="173"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="232"/>
         <source>Colour Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="174"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="233"/>
         <source>Window Size</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="175"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="234"/>
         <source>Window Overlap</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="176"/>
         <source>Normalize Columns</source>
-        <translation type="unfinished">Normalise Columns</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="177"/>
+        <translation type="obsolete">Normalise Columns</translation>
+    </message>
+    <message>
         <source>Normalize Visible Area</source>
-        <translation type="unfinished">Normalise Visible Area</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="178"/>
+        <translation type="obsolete">Normalise Visible Area</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="235"/>
+        <source>Normalization</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="236"/>
         <source>Bin Display</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="179"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="237"/>
         <source>Threshold</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="180"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="238"/>
         <source>Gain</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="181"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="239"/>
         <source>Colour Rotation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="182"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="240"/>
         <source>Min Frequency</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="183"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="241"/>
         <source>Max Frequency</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="184"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="242"/>
         <source>Frequency Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="185"/>
-        <source>Smoothing</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="213"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="266"/>
         <source>Bins</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="216"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="268"/>
         <source>Window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="223"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="274"/>
         <source>Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="393"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="451"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="435"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="499"/>
         <source>Linear</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="394"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="436"/>
         <source>Meter</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="395"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="437"/>
         <source>dBV^2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="396"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="438"/>
         <source>dBV</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="397"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="439"/>
         <source>Phase</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="406"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="415"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="445"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="458"/>
         <source>None</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="407"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="446"/>
+        <source>Col</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="447"/>
+        <source>View</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="448"/>
+        <source>Hybrid</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="459"/>
         <source>25 %</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="408"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="460"/>
         <source>50 %</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="409"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="461"/>
         <source>75 %</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="410"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="462"/>
         <source>87.5 %</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="411"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="463"/>
         <source>93.75 %</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="421"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="469"/>
         <source>No min</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="422"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="470"/>
         <source>10 Hz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="423"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="471"/>
         <source>20 Hz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="424"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="472"/>
         <source>40 Hz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="425"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="473"/>
         <source>100 Hz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="426"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="474"/>
         <source>250 Hz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="427"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="436"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="475"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="484"/>
         <source>500 Hz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="428"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="437"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="476"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="485"/>
         <source>1 KHz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="429"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="440"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="477"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="488"/>
         <source>4 KHz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="430"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="478"/>
         <source>10 KHz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="438"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="486"/>
         <source>1.5 KHz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="439"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="487"/>
         <source>2 KHz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="441"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="489"/>
         <source>6 KHz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="442"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="490"/>
         <source>8 KHz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="443"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="491"/>
         <source>12 KHz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="444"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="492"/>
         <source>16 KHz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="445"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="493"/>
         <source>No max</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="452"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="500"/>
         <source>Log</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="458"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="506"/>
         <source>All Bins</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="459"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="507"/>
         <source>Peak Bins</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="460"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="508"/>
         <source>Frequencies</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="463"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="511"/>
         <source>&lt;unknown&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="470"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="473"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="534"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="537"/>
         <source>dB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="1667"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1358"/>
         <source>FFT cache failed</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="1668"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1359"/>
         <source>Failed to create the FFT model for this spectrogram.
 There may be insufficient memory or disc space to continue.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3175"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1911"/>
         <source>Peak Frequency:	%1 - %2 Hz
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3178"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1914"/>
         <source>Peak Frequency:	%1 Hz
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3186"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1922"/>
         <source>Peak Pitch:	%3 - %4
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3188"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1924"/>
         <source>Peak Pitch:	%2
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3199"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1935"/>
         <source>Time:	%1 - %2
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3203"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1939"/>
         <source>Time:	%1
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3208"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1944"/>
         <source>%1Bin Frequency:	%2 - %3 Hz
 %4Bin Pitch:	%5 - %6
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3216"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1952"/>
         <source>%1Bin Frequency:	%2 Hz
 %3Bin Pitch:	%4
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3229"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3234"/>
-        <source>-Inf</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3239"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1975"/>
         <source>dB:	%1 - %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3241"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1977"/>
         <source>dB:	%1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3244"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1980"/>
         <source>
 Phase:	%1 - %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3246"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1982"/>
         <source>
 Phase:	%1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3276"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="2012"/>
         <source>43Hz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3423"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="2085"/>
         <source>%1Hz</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6662,90 +7340,84 @@
 <context>
     <name>SpectrumLayer</name>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="146"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="143"/>
         <source>Window Size</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="147"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="144"/>
         <source>Window Overlap</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="148"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="145"/>
         <source>Show Peak Frequencies</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="172"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="169"/>
         <source>Window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="173"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="170"/>
         <source>Bins</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="228"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="225"/>
         <source>None</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="229"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="226"/>
         <source>25 %</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="230"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="227"/>
         <source>50 %</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="231"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="228"/>
         <source>75 %</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="232"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="229"/>
         <source>87.5 %</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="233"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="230"/>
         <source>93.75 %</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="591"/>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="603"/>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="624"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="588"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="600"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="621"/>
         <source>%1 - %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="596"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="593"/>
         <source>%1 - %2 Hz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="598"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="595"/>
         <source>%1 Hz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="614"/>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="619"/>
-        <source>-Inf</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="626"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="623"/>
         <source>%1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="632"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="629"/>
         <source>%1
 Bin:	%2 (%3)
 %4 value:	%5
@@ -6753,22 +7425,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="636"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="633"/>
         <source>First</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="637"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="634"/>
         <source>Mean</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="637"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="634"/>
         <source>Peak</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="641"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="638"/>
         <source>%1
 Bin:	%2 (%3)
 Value:	%4
@@ -6779,106 +7451,119 @@
 <context>
     <name>SubdividingMenu</name>
     <message>
-        <location filename="../../svgui/widgets/SubdividingMenu.cpp" line="115"/>
+        <location filename="../svgui/widgets/SubdividingMenu.cpp" line="117"/>
         <source>%1 - %2</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
+    <name>Surveyer</name>
+    <message>
+        <location filename="../main/Surveyer.cpp" line="97"/>
+        <source>Yes! Take me to the survey</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/Surveyer.cpp" line="98"/>
+        <source>No, thanks</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>TextLayer</name>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="39"/>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="40"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="39"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="40"/>
         <source>Empty Label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="135"/>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="373"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="135"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="373"/>
         <source>&lt;no text&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="195"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="195"/>
         <source>In progress</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="208"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="208"/>
         <source>Time:	%1
 Height:	%2
 Label:	%3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="465"/>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="611"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="465"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="611"/>
         <source>Enter label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="466"/>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="612"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="466"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="612"/>
         <source>Please enter a new label:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="514"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="514"/>
         <source>Erase Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="563"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="563"/>
         <source>Drag Label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="584"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="584"/>
         <source>Move Label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="586"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="586"/>
         <source>Move Label Horizontally</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="589"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="589"/>
         <source>Move Label Vertically</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="629"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="629"/>
         <source>Drag Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="654"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="654"/>
         <source>Resize Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="688"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="688"/>
         <source>Delete Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="731"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="731"/>
         <source>Re-align pasted items?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="732"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="732"/>
         <source>The items you are pasting came from a layer with different source material from this one.  Do you want to re-align them in time, to match the source material for this layer?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="746"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="746"/>
         <source>Paste</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="791"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="791"/>
         <source>New Point</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6886,37 +7571,37 @@
 <context>
     <name>TextModel</name>
     <message>
-        <location filename="../../svcore/data/model/TextModel.h" line="103"/>
+        <location filename="../svcore/data/model/TextModel.h" line="103"/>
         <source>Text</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/TextModel.h" line="117"/>
+        <location filename="../svcore/data/model/TextModel.h" line="117"/>
         <source>Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/TextModel.h" line="118"/>
+        <location filename="../svcore/data/model/TextModel.h" line="118"/>
         <source>Frame</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/TextModel.h" line="119"/>
+        <location filename="../svcore/data/model/TextModel.h" line="119"/>
         <source>Height</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/TextModel.h" line="120"/>
+        <location filename="../svcore/data/model/TextModel.h" line="120"/>
         <source>Label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/TextModel.h" line="121"/>
+        <location filename="../svcore/data/model/TextModel.h" line="121"/>
         <source>Unknown</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/TextModel.h" line="152"/>
+        <location filename="../svcore/data/model/TextModel.h" line="152"/>
         <source>Edit Data</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6924,39 +7609,39 @@
 <context>
     <name>Thumbwheel</name>
     <message>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="232"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="232"/>
         <source>%1: %2%3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="234"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="234"/>
         <source>%2%3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="344"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="344"/>
         <source>New value for %1, from %2 to %3 %4:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="347"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="347"/>
         <source>New value for %1, from %2 to %3:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="352"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="352"/>
         <source>Enter a new value from %1 to %2 %3:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="355"/>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="379"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="355"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="379"/>
         <source>Enter a new value from %1 to %2:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="362"/>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="378"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="362"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="378"/>
         <source>Enter new value</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6964,105 +7649,105 @@
 <context>
     <name>TimeInstantLayer</name>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="44"/>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="481"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="46"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="483"/>
         <source>New Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="84"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="86"/>
         <source>Plot Type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="124"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="126"/>
         <source>Instants</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="125"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="127"/>
         <source>Segmentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="226"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="228"/>
         <source>In progress</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="228"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="230"/>
         <source>No local points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="239"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="241"/>
         <source>Time:	%1
 No label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="242"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="244"/>
         <source>Time:	%1
 Label:	%2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="485"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="487"/>
         <source>Draw Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="515"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="517"/>
         <source>Add Point at %1 s</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="560"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="562"/>
         <source>Erase Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="606"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="608"/>
         <source>Drag Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="622"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="624"/>
         <source>Move Point to %1 s</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="658"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="660"/>
         <source>Edit Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="675"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="677"/>
         <source>Drag Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="701"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="703"/>
         <source>Resize Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="736"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="738"/>
         <source>Delete Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="779"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="781"/>
         <source>Re-align pasted instants?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="780"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="782"/>
         <source>The instants you are pasting came from a layer with different source material from this one.  Do you want to re-align them in time, to match the source material for this layer?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="794"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="796"/>
         <source>Paste</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7070,207 +7755,227 @@
 <context>
     <name>TimeValueLayer</name>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="51"/>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="52"/>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1285"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="59"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="60"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1352"/>
         <source>New Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="105"/>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="141"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="113"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="149"/>
         <source>Plot Type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="106"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="114"/>
         <source>Vertical Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="107"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="115"/>
         <source>Scale Units</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="108"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="116"/>
         <source>Draw Segment Division Lines</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="109"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="117"/>
         <source>Show Derivative</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="137"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="145"/>
         <source>Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="215"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="230"/>
         <source>Points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="216"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="231"/>
         <source>Stems</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="217"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="232"/>
         <source>Connected Points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="218"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="233"/>
         <source>Lines</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="219"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="234"/>
         <source>Curve</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="220"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="235"/>
         <source>Segmentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="225"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="236"/>
+        <source>Discrete Curves</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="241"/>
         <source>Auto-Align</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="226"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="242"/>
         <source>Linear</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="227"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="243"/>
         <source>Log</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="228"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="244"/>
         <source>+/-1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="556"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="601"/>
         <source>In progress</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="558"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="603"/>
         <source>No local points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="571"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="616"/>
+        <source>%1 Hz (%2, %3)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="621"/>
+        <source>%1 %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="623"/>
+        <source>%1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="629"/>
         <source>Time:	%1
-Value:	%2%3
+Value:	%2
 No label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="576"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="633"/>
         <source>Time:	%1
-Value:	%2%3
+Value:	%2
 Label:	%4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1292"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1359"/>
         <source>Draw Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1410"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1477"/>
         <source>Erase Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1459"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1526"/>
         <source>Drag Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1482"/>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1527"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1549"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1594"/>
         <source>Edit Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1484"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1551"/>
         <source>Relocate Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1487"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1554"/>
         <source>Change Point Value</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1544"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1611"/>
         <source>Drag Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1570"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1637"/>
         <source>Resize Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1605"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1672"/>
         <source>Delete Selected Points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1652"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1719"/>
         <source>Re-align pasted items?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1653"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1720"/>
         <source>The items you are pasting came from a layer with different source material from this one.  Do you want to re-align them in time, to match the source material for this layer?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1667"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1734"/>
         <source>Paste</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1723"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1789"/>
         <source>The items you are pasting do not have values.
 What values do you want to use for these items?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1725"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1791"/>
         <source>Some of the items you are pasting do not have values.
 What values do you want to use for these items?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1735"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1801"/>
         <source>Zero for all items</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1744"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1810"/>
         <source>Choose value calculation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1765"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1834"/>
         <source>Select cycle size</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1766"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1835"/>
         <source>Cycle size:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7278,27 +7983,27 @@
 <context>
     <name>TipDialog</name>
     <message>
-        <location filename="../../svgui/widgets/TipDialog.cpp" line="35"/>
+        <location filename="../svgui/widgets/TipDialog.cpp" line="35"/>
         <source>Tip of the Day</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TipDialog.cpp" line="65"/>
+        <location filename="../svgui/widgets/TipDialog.cpp" line="65"/>
         <source>Show tip on startup</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TipDialog.cpp" line="71"/>
+        <location filename="../svgui/widgets/TipDialog.cpp" line="71"/>
         <source>&lt;&lt; Previous</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TipDialog.cpp" line="75"/>
+        <location filename="../svgui/widgets/TipDialog.cpp" line="75"/>
         <source>Next &gt;&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TipDialog.cpp" line="79"/>
+        <location filename="../svgui/widgets/TipDialog.cpp" line="79"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7306,136 +8011,141 @@
 <context>
     <name>TransformFactory</name>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="386"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="387"/>
         <source> [\(&lt;].*$</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="445"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="539"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="445"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="536"/>
         <source>&lt;unknown maker&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="451"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="714"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="451"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="712"/>
         <source>Extract features using &quot;%1&quot; plugin (from %2)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="454"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="717"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="454"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="715"/>
         <source>Extract features using &quot;%1&quot; output of &quot;%2&quot; plugin (from %3)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="459"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="722"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="459"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="720"/>
         <source>%1 using &quot;%2&quot; plugin (from %3)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="462"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="725"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="462"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="723"/>
         <source>%1 using &quot;%2&quot; output of &quot;%3&quot; plugin (from %4)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="320"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="321"/>
         <source>Analysis</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="323"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="324"/>
         <source>Generator</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="324"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="326"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="325"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="327"/>
         <source>Other</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="555"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="707"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="552"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="705"/>
         <source>%1: %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="565"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="562"/>
         <source>%1: Output %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="577"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="574"/>
         <source>Extract &quot;%1&quot; data output from &quot;%2&quot; effect plugin (from %3)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="582"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="579"/>
         <source>Extract data output %1 from &quot;%2&quot; effect plugin (from %3)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="322"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="323"/>
         <source>Effects Data</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="321"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="322"/>
         <source>Effects</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="609"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="412"/>
+        <source>Failed to list Vamp plugins: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="606"/>
         <source>Transform audio signal with &quot;%1&quot; effect plugin (from %2)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="615"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="612"/>
         <source>Generate audio signal using &quot;%1&quot; plugin (from %2)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1133"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1171"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1153"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1191"/>
         <source>Plugin type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1135"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1173"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1155"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1193"/>
         <source>Category</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1136"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1174"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1156"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1194"/>
         <source>System Identifier</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1137"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1175"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1157"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1195"/>
         <source>Name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1138"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1176"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1158"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1196"/>
         <source>Description</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1139"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1177"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1159"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1197"/>
         <source>Maker</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1140"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1178"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1160"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1198"/>
         <source>Units</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7443,64 +8153,64 @@
 <context>
     <name>TransformFinder</name>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="38"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="38"/>
         <source>Find a Transform</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="44"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="44"/>
         <source>Find:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="77"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="77"/>
         <source>&lt;br&gt;&amp;nbsp;&amp;nbsp;No results found</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="85"/>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="86"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="85"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="86"/>
         <source>Up</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="90"/>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="91"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="90"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="91"/>
         <source>Down</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="137"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="137"/>
         <source>&lt;p&gt;Type some text into the search box to search the descriptions of:&lt;ul&gt;&lt;li&gt;All currently installed &lt;a href=&quot;http://www.vamp-plugins.org/&quot;&gt;Vamp&lt;/a&gt; audio feature extraction plugins&lt;/li&gt;&lt;li&gt;All currently installed &lt;a href=&quot;http://www.ladspa.org/&quot;&gt;LADSPA&lt;/a&gt; audio effects plugins&lt;/li&gt;&lt;li&gt;Vamp plugins that are not currently installed but that have descriptions published via the semantic web&lt;/li&gt;&lt;/ul&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="140"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="140"/>
         <source>&lt;b&gt;Unable to retrieve published descriptions from network!&lt;/b&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="143"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="143"/>
         <source>&lt;b&gt;No plugins are currently installed!&lt;/b&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="151"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="151"/>
         <source>&lt;p&gt;%1&lt;br&gt;Perhaps the network connection is down, services are responding too slowly, or a processing problem has occurred.&lt;br&gt;Only the descriptions of installed plugins will be searched.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="157"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="157"/>
         <source>&lt;p&gt;%1&lt;br&gt;Only the published descriptions of Vamp feature extraction plugins will be searched.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="161"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="161"/>
         <source>&lt;p&gt;%1&lt;br&gt;%2&lt;br&gt;Perhaps the network connection is down, or services are responding too slowly.&lt;br&gt;No search results will be available.</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="227"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="227"/>
         <source>Found %n description(s) containing &lt;b&gt;%1&lt;/b&gt;, showing the first %2 only</source>
         <translation type="unfinished">
             <numerusform>Found %n description containing &lt;b&gt;%1&lt;/b&gt;, showing the first %2 only</numerusform>
@@ -7508,7 +8218,7 @@
         </translation>
     </message>
     <message numerus="yes">
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="231"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="231"/>
         <source>Found %n description(s) containing &lt;b&gt;%1&lt;/b&gt;</source>
         <translation type="unfinished">
             <numerusform>Found %n description containing &lt;b&gt;%1&lt;/b&gt;</numerusform>
@@ -7516,216 +8226,296 @@
         </translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="257"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="257"/>
         <source>&lt;i&gt; (not installed)&lt;/i&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="261"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="261"/>
         <source>%1%2&lt;br&gt;&lt;small&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="272"/>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="303"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="272"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="303"/>
         <source>&lt;/small&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="275"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="275"/>
         <source>&lt;b&gt;%1&lt;/b&gt;%2&lt;br&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="281"/>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="284"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="281"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="284"/>
         <source>&lt;small&gt;%1&lt;/small&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="288"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="288"/>
         <source>&lt;small&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="290"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="290"/>
         <source>&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;mdash; Plugin type: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="294"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="294"/>
         <source>&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;mdash; Category: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="297"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="297"/>
         <source>&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;mdash; System identifier: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="300"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="300"/>
         <source>&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;mdash; More information: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
+    <name>UnitConverter</name>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="50"/>
+        <source>Pitch</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="87"/>
+        <source> cents</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="96"/>
+        <source>In 12-tone Equal Temperament:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="105"/>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="208"/>
+        <source>=</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="107"/>
+        <source>+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="110"/>
+        <source>Piano note</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="112"/>
+        <source>in octave</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="117"/>
+        <source>MIDI pitch</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="133"/>
+        <source>Note that only pitches in the range 0 to 127 are valid in the MIDI protocol.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="140"/>
+        <source>Tempo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="206"/>
+        <source>Beat period</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="212"/>
+        <source>at</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="275"/>
+        <source>With concert-A tuning frequency at %1 Hz, and middle C residing in octave %2.
+(These can be changed in the application preferences.)</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>View</name>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="91"/>
+        <location filename="../svgui/view/View.cpp" line="98"/>
         <source>Global Scroll</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="92"/>
+        <location filename="../svgui/view/View.cpp" line="99"/>
         <source>Global Zoom</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="93"/>
+        <location filename="../svgui/view/View.cpp" line="100"/>
         <source>Follow Playback</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="132"/>
+        <location filename="../svgui/view/View.cpp" line="143"/>
         <source>Scroll</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="133"/>
+        <location filename="../svgui/view/View.cpp" line="144"/>
         <source>Page</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="134"/>
+        <location filename="../svgui/view/View.cpp" line="145"/>
         <source>Off</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="137"/>
+        <location filename="../svgui/view/View.cpp" line="148"/>
         <source>&lt;unknown&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="1445"/>
+        <location filename="../svgui/view/View.cpp" line="1533"/>
         <source>Layer rendering error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="1466"/>
+        <location filename="../svgui/view/View.cpp" line="1555"/>
         <source>Alignment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="2242"/>
+        <location filename="../svgui/view/View.cpp" line="2383"/>
         <source>Waiting for layers to be ready...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="2243"/>
-        <location filename="../../svgui/view/View.cpp" line="2272"/>
+        <location filename="../svgui/view/View.cpp" line="2384"/>
+        <location filename="../svgui/view/View.cpp" line="2413"/>
         <source>Cancel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="2271"/>
+        <location filename="../svgui/view/View.cpp" line="2412"/>
         <source>Rendering image...</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../svgui/view/View.cpp" line="2529"/>
+        <source>Exported image from %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>ViewManager</name>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="338"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="381"/>
         <source>Clear Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="339"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="382"/>
         <source>Select Multiple Regions</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="340"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="383"/>
         <source>Select Region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="357"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="400"/>
         <source>Enter Navigate mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="358"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="401"/>
         <source>Enter Select mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="359"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="402"/>
         <source>Enter Edit mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="360"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="403"/>
         <source>Enter Draw mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="361"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="404"/>
         <source>Enter Erase mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="362"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="405"/>
         <source>Enter Measure mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="376"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="406"/>
+        <source>Enter NoteEdit mode</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/view/ViewManager.cpp" line="442"/>
         <source>Switch on Loop mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="377"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="443"/>
         <source>Switch off Loop mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="391"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="457"/>
         <source>Switch on Play Selection mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="392"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="458"/>
         <source>Switch off Play Selection mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="406"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="472"/>
         <source>Switch on Play Solo mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="407"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="473"/>
         <source>Switch off Play Solo mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="421"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="487"/>
         <source>Switch on Alignment mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="422"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="488"/>
         <source>Switch off Alignment mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="524"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="591"/>
         <source>Scroll to %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../../svgui/view/ViewManager.cpp" line="586"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="652"/>
         <source>Zoom to %n sample(s) per pixel</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -7733,139 +8523,124 @@
         </translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="596"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="662"/>
         <source>Change overlay level</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
-    <name>WaveFileModel</name>
-    <message>
-        <location filename="../../svcore/data/model/WaveFileModel.h" line="83"/>
-        <source>Wave File</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
     <name>WaveformLayer</name>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="104"/>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="133"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="109"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="138"/>
         <source>Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="105"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="110"/>
         <source>Gain</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="106"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="111"/>
         <source>Normalize Visible Area</source>
         <translation type="unfinished">Normalise Visible Area</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="107"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="112"/>
         <source>Channels</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="194"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="199"/>
         <source>Linear</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="195"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="200"/>
         <source>Meter</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="196"/>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="214"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="201"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="219"/>
         <source>dB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="202"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="207"/>
         <source>Separate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="203"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="208"/>
         <source>Mean</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="204"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="209"/>
         <source>Butterfly</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="953"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="984"/>
         <source>Time:	%1 - %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="957"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="988"/>
         <source>Time:	%1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="978"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1009"/>
         <source>Level:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="980"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1011"/>
         <source>Left:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="981"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1012"/>
         <source>Right:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="982"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1013"/>
         <source>Channel %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1005"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1036"/>
         <source>
 %1	%2 - %3 (%4 dB peak)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1008"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1039"/>
         <source>
 %1	%2 (%3 dB peak)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1175"/>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1228"/>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1238"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1206"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1259"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1269"/>
         <source>0dB</source>
         <translation type="unfinished"></translation>
     </message>
-    <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1176"/>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1230"/>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1240"/>
-        <source>-Inf</source>
-        <translation type="unfinished"></translation>
-    </message>
 </context>
 <context>
     <name>WindowShapePreview</name>
     <message>
-        <location filename="../../svgui/widgets/WindowShapePreview.cpp" line="118"/>
+        <location filename="../svgui/widgets/WindowShapePreview.cpp" line="120"/>
         <source>V / time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/WindowShapePreview.cpp" line="202"/>
+        <location filename="../svgui/widgets/WindowShapePreview.cpp" line="202"/>
         <source>dB / freq</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7873,7 +8648,7 @@
 <context>
     <name>WritableWaveFileModel</name>
     <message>
-        <location filename="../../svcore/data/model/WritableWaveFileModel.h" line="82"/>
+        <location filename="../svcore/data/model/WritableWaveFileModel.h" line="124"/>
         <source>Writable Wave File</source>
         <translation type="unfinished"></translation>
     </message>
Binary file i18n/sonic-visualiser_en_US.qm has changed
--- a/i18n/sonic-visualiser_en_US.ts	Tue Jan 10 16:10:33 2017 +0000
+++ b/i18n/sonic-visualiser_en_US.ts	Tue Jan 10 16:21:32 2017 +0000
@@ -1,20 +1,20 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!DOCTYPE TS>
-<TS version="2.0" language="en">
+<TS version="2.1" language="en">
 <context>
     <name>ActivityLog</name>
     <message>
-        <location filename="../../svgui/widgets/ActivityLog.cpp" line="30"/>
+        <location filename="../svgui/widgets/ActivityLog.cpp" line="37"/>
         <source>Activity Log</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ActivityLog.cpp" line="35"/>
+        <location filename="../svgui/widgets/ActivityLog.cpp" line="42"/>
         <source>&lt;p&gt;Activity Log lists your interactions and other events within %1.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ActivityLog.cpp" line="63"/>
+        <location filename="../svgui/widgets/ActivityLog.cpp" line="77"/>
         <source>%1: %2</source>
         <translation type="unfinished"></translation>
     </message>
@@ -22,7 +22,7 @@
 <context>
     <name>AddLayerCommand</name>
     <message>
-        <location filename="../../svapp/framework/Document.cpp" line="956"/>
+        <location filename="../svapp/framework/Document.cpp" line="1108"/>
         <source>Add %1 Layer</source>
         <translation type="unfinished"></translation>
     </message>
@@ -30,7 +30,7 @@
 <context>
     <name>AggregateWaveModel</name>
     <message>
-        <location filename="../../svcore/data/model/AggregateWaveModel.h" line="45"/>
+        <location filename="../svcore/data/model/AggregateWaveModel.h" line="45"/>
         <source>Aggregate Wave</source>
         <translation type="unfinished"></translation>
     </message>
@@ -38,25 +38,33 @@
 <context>
     <name>AlignmentModel</name>
     <message>
-        <location filename="../../svcore/data/model/AlignmentModel.h" line="47"/>
+        <location filename="../svcore/data/model/AlignmentModel.h" line="46"/>
         <source>Alignment</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
+    <name>AlignmentView</name>
+    <message>
+        <location filename="../svgui/view/AlignmentView.cpp" line="31"/>
+        <source>AlignmentView</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>AudioCallbackPlaySource</name>
     <message>
-        <location filename="../../svapp/audioio/AudioCallbackPlaySource.cpp" line="459"/>
+        <location filename="../svapp/audio/AudioCallbackPlaySource.cpp" line="517"/>
         <source>Play from %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/audioio/AudioCallbackPlaySource.cpp" line="482"/>
+        <location filename="../svapp/audio/AudioCallbackPlaySource.cpp" line="540"/>
         <source>Stop at %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/audioio/AudioCallbackPlaySource.cpp" line="1071"/>
+        <location filename="../svapp/audio/AudioCallbackPlaySource.cpp" line="1076"/>
         <source>Change time-stretch factor to %1</source>
         <translation type="unfinished"></translation>
     </message>
@@ -64,140 +72,117 @@
 <context>
     <name>AudioDial</name>
     <message>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="416"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="419"/>
+        <source>%1: %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="429"/>
         <source>%1: %2%3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="418"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="431"/>
         <source>%2%3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="481"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="495"/>
         <source>New value for %1, from %2 to %3 %4:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="484"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="498"/>
         <source>New value for %1, from %2 to %3:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="489"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="503"/>
         <source>Enter a new value from %1 to %2 %3:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="492"/>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="516"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="506"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="530"/>
         <source>Enter a new value from %1 to %2:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="499"/>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="515"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="513"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="529"/>
         <source>Enter new value</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
-    <name>AudioTargetFactory</name>
-    <message>
-        <location filename="../../svapp/audioio/AudioTargetFactory.cpp" line="72"/>
-        <source>(auto)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svapp/audioio/AudioTargetFactory.cpp" line="76"/>
-        <source>JACK Audio Connection Kit</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svapp/audioio/AudioTargetFactory.cpp" line="80"/>
-        <source>PulseAudio Server</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svapp/audioio/AudioTargetFactory.cpp" line="84"/>
-        <source>Core Audio Device</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svapp/audioio/AudioTargetFactory.cpp" line="88"/>
-        <source>Default Soundcard Device</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
     <name>BZipFileDevice</name>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="49"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="51"/>
         <source>File is already open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="54"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="56"/>
         <source>Append mode not supported</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="60"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="62"/>
         <source>File access mode not specified</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="66"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="68"/>
         <source>Read and write modes both specified</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="75"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="77"/>
         <source>Failed to open file for writing</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="86"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="88"/>
         <source>Failed to open bzip2 stream for writing</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="102"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="104"/>
         <source>Failed to open file for reading</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="113"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="115"/>
         <source>Failed to open bzip2 stream for reading</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="127"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="129"/>
         <source>Internal error (open for neither read nor write)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="136"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="138"/>
         <source>File not open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="148"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="150"/>
         <source>bzip2 stream write close error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="160"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="162"/>
         <source>bzip2 stream read close error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="169"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="171"/>
         <source>Internal error (close for neither read nor write)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="186"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="188"/>
         <source>bzip2 stream read error</source>
         <translation type="unfinished"></translation>
     </message>
@@ -205,7 +190,7 @@
 <context>
     <name>BundleCommand</name>
     <message numerus="yes">
-        <location filename="../../svcore/base/Command.cpp" line="98"/>
+        <location filename="../svcore/base/Command.cpp" line="98"/>
         <source>%1 (%n change(s))</source>
         <translation type="unfinished">
             <numerusform>%1 (%n change)</numerusform>
@@ -216,7 +201,8 @@
 <context>
     <name>CSVFileWriter</name>
     <message>
-        <location filename="../../svcore/data/fileio/CSVFileWriter.cpp" line="62"/>
+        <location filename="../svcore/data/fileio/CSVFileWriter.cpp" line="67"/>
+        <location filename="../svcore/data/fileio/CSVFileWriter.cpp" line="92"/>
         <source>Failed to open file %1 for writing</source>
         <translation type="unfinished"></translation>
     </message>
@@ -224,88 +210,98 @@
 <context>
     <name>CSVFormatDialog</name>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="40"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="45"/>
         <source>Select Data Format</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="46"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="51"/>
         <source>Please select the correct data format for this file.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="78"/>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="88"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="83"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="93"/>
         <source>&lt;ignore&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="79"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="84"/>
         <source>Values</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="82"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="87"/>
         <source>(%1 more)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="89"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="94"/>
         <source>Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="90"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="95"/>
         <source>End time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="91"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="96"/>
         <source>Duration</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="92"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="97"/>
         <source>Value</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="93"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="98"/>
+        <source>Pitch</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="99"/>
         <source>Label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="111"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="121"/>
         <source>Timing is specified:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="114"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="126"/>
         <source>Explicitly, in seconds</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="115"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="127"/>
+        <source>Explicitly, in milliseconds</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="128"/>
         <source>Explicitly, in audio sample frames</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="116"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="129"/>
         <source>Implicitly: rows are equally spaced in time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="124"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="156"/>
         <source>Audio sample rate (Hz):</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="147"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="179"/>
         <source>Frame increment between rows:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="215"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="249"/>
         <source>Data will be displayed in a %1 layer.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -313,91 +309,106 @@
 <context>
     <name>Colour3DPlotLayer</name>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="170"/>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="216"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="251"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="292"/>
         <source>Colour</source>
         <translation type="unfinished">Color</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="171"/>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="211"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="252"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="287"/>
         <source>Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="172"/>
-        <source>Normalize Columns</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="173"/>
-        <source>Normalize Visible Area</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="174"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="253"/>
+        <source>Normalization</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="254"/>
         <source>Invert Vertical Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="175"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="255"/>
         <source>Gain</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="176"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="256"/>
         <source>Always Opaque</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="177"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="257"/>
         <source>Smooth</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="178"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="258"/>
         <source>Bin Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="213"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="289"/>
         <source>Bins</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="309"/>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="318"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="384"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="403"/>
         <source>Linear</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="310"/>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="319"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="385"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="404"/>
         <source>Log</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="311"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="386"/>
         <source>+/-1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="312"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="387"/>
         <source>Absolute</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="322"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="393"/>
+        <source>None</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="394"/>
+        <source>Col</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="395"/>
+        <source>View</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="396"/>
+        <source>Hybrid</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="407"/>
         <source>&lt;unknown&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="329"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="430"/>
         <source>dB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="698"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="824"/>
         <source>Time:	%1 - %2
 Bin:	%3
 Value:	%4</source>
@@ -405,139 +416,92 @@
     </message>
 </context>
 <context>
-    <name>ColourMapper</name>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="48"/>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="66"/>
-        <source>&lt;unknown&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="52"/>
-        <source>Default</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="53"/>
-        <source>White on Black</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="54"/>
-        <source>Black on White</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="55"/>
-        <source>Red on Blue</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="56"/>
-        <source>Yellow on Black</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="57"/>
-        <source>Blue on Black</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="58"/>
-        <source>Sunset</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="59"/>
-        <source>Fruit Salad</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="60"/>
-        <source>Banded</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="61"/>
-        <source>Highlight</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="62"/>
-        <source>Printer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="63"/>
-        <source>High Gain</source>
-        <translation type="unfinished"></translation>
+    <name>ColourComboBox</name>
+    <message>
+        <location filename="../svgui/widgets/ColourComboBox.cpp" line="59"/>
+        <source>Name New Colour</source>
+        <translation type="unfinished">Name New Color</translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/ColourComboBox.cpp" line="60"/>
+        <source>Enter a name for the new colour:</source>
+        <translation type="unfinished">Enter a name for the new color:</translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/ColourComboBox.cpp" line="62"/>
+        <source>Prefer black background for this colour</source>
+        <translation type="unfinished">Prefer black background for this color</translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/ColourComboBox.cpp" line="94"/>
+        <source>Add New Colour...</source>
+        <translation type="unfinished">Add New Color...</translation>
     </message>
 </context>
 <context>
     <name>CommandHistory</name>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="56"/>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="61"/>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="64"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="67"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="70"/>
         <source>&amp;Undo</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="57"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="63"/>
         <source>Ctrl+Z</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="58"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="64"/>
         <source>Undo the last editing operation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="69"/>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="74"/>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="77"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="75"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="80"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="83"/>
         <source>Re&amp;do</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="70"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="76"/>
         <source>Ctrl+Shift+Z</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="71"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="77"/>
         <source>Redo the last operation that was undone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="341"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="357"/>
         <source>Undo %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="367"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="383"/>
         <source>Redo %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="500"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="516"/>
         <source>Nothing to undo</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="500"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="516"/>
         <source>Nothing to redo</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="516"/>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="538"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="532"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="554"/>
         <source>&amp;Undo %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="516"/>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="539"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="532"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="555"/>
         <source>Re&amp;do %1</source>
         <translation type="unfinished"></translation>
     </message>
@@ -545,7 +509,15 @@
 <context>
     <name>CoreAudioFileReader</name>
     <message>
-        <location filename="../../svcore/data/fileio/CoreAudioFileReader.cpp" line="156"/>
+        <location filename="../svcore/data/fileio/CoreAudioFileReader.cpp" line="162"/>
+        <source>Decoding %1...</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>DecodingWavFileReader</name>
+    <message>
+        <location filename="../svcore/data/fileio/DecodingWavFileReader.cpp" line="68"/>
         <source>Decoding %1...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -553,7 +525,7 @@
 <context>
     <name>Dense3DModelPeakCache</name>
     <message>
-        <location filename="../../svcore/data/model/Dense3DModelPeakCache.h" line="86"/>
+        <location filename="../svcore/data/model/Dense3DModelPeakCache.h" line="88"/>
         <source>Dense 3-D Peak Cache</source>
         <translation type="unfinished"></translation>
     </message>
@@ -561,17 +533,17 @@
 <context>
     <name>DenseThreeDimensionalModel</name>
     <message>
-        <location filename="../../svcore/data/model/DenseThreeDimensionalModel.h" line="110"/>
+        <location filename="../svcore/data/model/DenseThreeDimensionalModel.h" line="121"/>
         <source>Dense 3-D</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/DenseThreeDimensionalModel.h" line="127"/>
+        <location filename="../svcore/data/model/DenseThreeDimensionalModel.h" line="138"/>
         <source>Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/DenseThreeDimensionalModel.h" line="128"/>
+        <location filename="../svcore/data/model/DenseThreeDimensionalModel.h" line="139"/>
         <source>Frame</source>
         <translation type="unfinished"></translation>
     </message>
@@ -579,7 +551,7 @@
 <context>
     <name>DenseTimeValueModel</name>
     <message>
-        <location filename="../../svcore/data/model/DenseTimeValueModel.h" line="89"/>
+        <location filename="../svcore/data/model/DenseTimeValueModel.h" line="89"/>
         <source>Dense Time-Value</source>
         <translation type="unfinished"></translation>
     </message>
@@ -587,12 +559,12 @@
 <context>
     <name>Document</name>
     <message>
-        <location filename="../../svapp/framework/Document.cpp" line="270"/>
+        <location filename="../svapp/framework/Document.cpp" line="419"/>
         <source>Set main model to %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/Document.cpp" line="272"/>
+        <location filename="../svapp/framework/Document.cpp" line="421"/>
         <source>Clear main model</source>
         <translation type="unfinished"></translation>
     </message>
@@ -600,7 +572,7 @@
 <context>
     <name>EditableDenseThreeDimensionalModel</name>
     <message>
-        <location filename="../../svcore/data/model/EditableDenseThreeDimensionalModel.h" line="139"/>
+        <location filename="../svcore/data/model/EditableDenseThreeDimensionalModel.h" line="189"/>
         <source>Editable Dense 3-D</source>
         <translation type="unfinished"></translation>
     </message>
@@ -608,12 +580,12 @@
 <context>
     <name>FFTModel</name>
     <message>
-        <location filename="../../svcore/data/model/FFTModel.h" line="188"/>
+        <location filename="../svcore/data/model/FFTModel.h" line="141"/>
         <source>FFT</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/FFTModel.cpp" line="203"/>
+        <location filename="../svcore/data/model/FFTModel.cpp" line="94"/>
         <source>%1 Hz</source>
         <translation type="unfinished"></translation>
     </message>
@@ -621,22 +593,22 @@
 <context>
     <name>Fader</name>
     <message>
-        <location filename="../../svgui/widgets/Fader.cpp" line="141"/>
+        <location filename="../svgui/widgets/Fader.cpp" line="143"/>
         <source>Enter new fader level</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Fader.cpp" line="142"/>
+        <location filename="../svgui/widgets/Fader.cpp" line="144"/>
         <source>New fader level, from %1 to %2 dBFS:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Fader.cpp" line="217"/>
+        <location filename="../svgui/widgets/Fader.cpp" line="219"/>
         <source>Level: Off</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Fader.cpp" line="219"/>
+        <location filename="../svgui/widgets/Fader.cpp" line="221"/>
         <source>Level: %1%2.%3%4 dB</source>
         <translation type="unfinished"></translation>
     </message>
@@ -644,48 +616,53 @@
 <context>
     <name>FeatureExtractionModelTransformer</name>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="54"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="87"/>
+        <source>Transforms supplied to a single FeatureExtractionModelTransformer instance must be similar in every respect except plugin output</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="100"/>
         <source>No factory available for feature extraction plugin id &quot;%1&quot; (unknown plugin type, or internal error?)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="60"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="106"/>
         <source>Input model for feature extraction plugin &quot;%1&quot; is of wrong type (internal error?)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="66"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="115"/>
         <source>Failed to instantiate plugin &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="81"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="130"/>
         <source>Cannot provide enough channels to feature extraction plugin &quot;%1&quot; (plugin min is %2, max %3; input model has %4)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="112"/>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="127"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="168"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="187"/>
         <source>Failed to initialise feature extraction plugin &quot;%1&quot;</source>
         <translation type="unfinished">Failed to initialize feature extraction plugin &quot;%1&quot;</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="117"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="175"/>
         <source>Feature extraction plugin &quot;%1&quot; rejected the given step and block sizes (%2 and %3); using plugin defaults (%4 and %5) instead</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="135"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="197"/>
         <source>Transform was configured for version %1 of plugin &quot;%2&quot;, but the plugin being used is version %3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="150"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="212"/>
         <source>Plugin &quot;%1&quot; has no outputs</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="165"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="230"/>
         <source>Plugin &quot;%1&quot; has no output named &quot;%2&quot;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -693,57 +670,255 @@
 <context>
     <name>FileSource</name>
     <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="102"/>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="181"/>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="214"/>
+        <location filename="../svcore/data/fileio/FileSource.cpp" line="122"/>
+        <location filename="../svcore/data/fileio/FileSource.cpp" line="204"/>
+        <location filename="../svcore/data/fileio/FileSource.cpp" line="237"/>
         <source>Unsupported scheme in URL</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="424"/>
+        <location filename="../svcore/data/fileio/FileSource.cpp" line="450"/>
         <source>Downloading %1...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="764"/>
-        <source>Failed to connect to FTP server</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="766"/>
-        <source>Login failed</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="768"/>
-        <source>Failed to change to correct directory</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="770"/>
-        <source>FTP download aborted</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="790"/>
+        <location filename="../svcore/data/fileio/FileSource.cpp" line="744"/>
         <source>Download cancelled</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="821"/>
+        <location filename="../svcore/data/fileio/FileSource.cpp" line="772"/>
         <source>Failed to create local file %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="824"/>
+        <location filename="../svcore/data/fileio/FileSource.cpp" line="775"/>
         <source>File contains no data!</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
+    <name>FlexiNoteLayer</name>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="72"/>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="73"/>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="974"/>
+        <source>New Point</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="110"/>
+        <source>Vertical Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="111"/>
+        <source>Scale Units</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="127"/>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="176"/>
+        <source>Auto-Align</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="177"/>
+        <source>Linear</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="178"/>
+        <source>Log</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="179"/>
+        <source>MIDI Notes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="521"/>
+        <source>In progress</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="523"/>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="547"/>
+        <source>No local points</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="561"/>
+        <source>%1 (%2, %3 Hz)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="568"/>
+        <source>%1 Hz (%2, %3)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="574"/>
+        <source>%1 %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="581"/>
+        <source>Time:	%1
+Pitch:	%2
+Duration:	%3
+No label</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="586"/>
+        <source>Time:	%1
+Pitch:	%2
+Duration:	%3
+Label:	%4</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="979"/>
+        <source>Draw Point</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1055"/>
+        <source>Erase Point</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1136"/>
+        <source>Drag Point</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1218"/>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1291"/>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1611"/>
+        <source>Edit Point</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1220"/>
+        <source>Relocate Point</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1223"/>
+        <source>Change Point Value</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1355"/>
+        <source>Add Point</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1395"/>
+        <source>Snap Notes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1444"/>
+        <source>Merge Notes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1627"/>
+        <source>Drag Selection</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1652"/>
+        <source>Resize Selection</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1691"/>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1713"/>
+        <source>Delete Selected Points</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1762"/>
+        <source>Re-align pasted items?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1763"/>
+        <source>The items you are pasting came from a layer with different source material from this one.  Do you want to re-align them in time, to match the source material for this layer?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1777"/>
+        <source>Paste</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1848"/>
+        <source>Record FlexiNote</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>FlexiNoteModel</name>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="136"/>
+        <source>FlexiNote</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="171"/>
+        <source>Time</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="172"/>
+        <source>Frame</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="173"/>
+        <source>Pitch</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="174"/>
+        <source>Duration</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="175"/>
+        <source>Level</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="176"/>
+        <source>Label</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="177"/>
+        <source>Unknown</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="207"/>
+        <source>Edit Data</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>I</name>
     <message>
-        <location filename="../../svcore/data/model/IntervalModel.h" line="103"/>
+        <location filename="../svcore/data/model/IntervalModel.h" line="103"/>
         <source>Edit Data</source>
         <translation type="unfinished"></translation>
     </message>
@@ -751,52 +926,52 @@
 <context>
     <name>ImageDialog</name>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="49"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="49"/>
         <source>Image</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="56"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="56"/>
         <source>Label:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="63"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="63"/>
         <source>File or URL:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="73"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="73"/>
         <source>Browse...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="79"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="79"/>
         <source>Preview</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="187"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="187"/>
         <source>Unsupported scheme in URL</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="188"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="188"/>
         <source>The URL scheme &quot;%1&quot; is not supported</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="192"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="192"/>
         <source>Opening image URL...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="196"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="196"/>
         <source>File download failed</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="197"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="197"/>
         <source>Failed to download URL &quot;%1&quot;: %2</source>
         <translation type="unfinished"></translation>
     </message>
@@ -804,58 +979,58 @@
 <context>
     <name>ImageLayer</name>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="182"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="182"/>
         <source>In progress</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="606"/>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="711"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="602"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="707"/>
         <source>Select image</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="678"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="674"/>
         <source>Move Image</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="735"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="731"/>
         <source>Drag Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="760"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="756"/>
         <source>Resize Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="794"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="790"/>
         <source>Delete Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="837"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="833"/>
         <source>Re-align pasted items?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="838"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="834"/>
         <source>The items you are pasting came from a layer with different source material from this one.  Do you want to re-align them in time, to match the source material for this layer?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="852"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="848"/>
         <source>Paste</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="884"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="880"/>
         <source>New Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="915"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="911"/>
         <source>Opening image URL...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -863,38 +1038,38 @@
 <context>
     <name>ImageModel</name>
     <message>
-        <location filename="../../svcore/data/model/ImageModel.h" line="96"/>
-        <location filename="../../svcore/data/model/ImageModel.h" line="154"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="96"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="154"/>
         <source>Image</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/ImageModel.h" line="124"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="124"/>
         <source>Edit Image</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/ImageModel.h" line="152"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="152"/>
         <source>Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/ImageModel.h" line="153"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="153"/>
         <source>Frame</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/ImageModel.h" line="155"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="155"/>
         <source>Label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/ImageModel.h" line="156"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="156"/>
         <source>Unknown</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/ImageModel.h" line="187"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="187"/>
         <source>Edit Data</source>
         <translation type="unfinished"></translation>
     </message>
@@ -902,38 +1077,31 @@
 <context>
     <name>InteractiveFileFinder</name>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="52"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="192"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="65"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="237"/>
         <source>Select file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="53"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="193"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="66"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="238"/>
         <source>All files (*.*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="59"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="199"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="72"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="244"/>
         <source>Select a session file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="60"/>
-        <source>Sonic Visualiser session files (*.sv)
-RDF files (%1)
-All files (*.*)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="66"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="82"/>
         <source>Audio files (%1)
 All files (*.*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="72"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="88"/>
         <source>All supported files (%1 %2)
 Sonic Visualiser Layer XML files (*.svl)
 Comma-separated data files (*.csv)
@@ -945,7 +1113,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="79"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="95"/>
         <source>All supported files (%1 %2)
 Sonic Visualiser Layer XML files (*.svl)
 Comma-separated data files (*.csv)
@@ -956,24 +1124,121 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="86"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="133"/>
+        <source>Image files (%1)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="192"/>
+        <source>File does not exist</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="193"/>
+        <source>&lt;b&gt;File not found&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; does not exist</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="198"/>
+        <source>File is not readable</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="199"/>
+        <source>&lt;b&gt;File is not readable&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; can not be read</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="204"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="401"/>
+        <source>Directory selected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="205"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="402"/>
+        <source>&lt;b&gt;Directory selected&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; is a directory</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="210"/>
+        <source>Non-file selected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="211"/>
+        <source>&lt;b&gt;Not a file&lt;/b&gt;&lt;p&gt;Path &quot;%1&quot; is not a file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="216"/>
+        <source>File is empty</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="217"/>
+        <source>&lt;b&gt;File is empty&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; is empty</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="73"/>
+        <source>%1 session files (*.%1)
+RDF files (%3)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="102"/>
+        <source>All supported files (%1 %2)
+Comma-separated data files (*.csv)
+Sonic Visualiser Layer XML files (*.svl)
+Space-separated .lab files (*.lab)
+RDF files (%2)
+MIDI files (*.mid)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="109"/>
+        <source>All supported files (%1 %2)
+Comma-separated data files (*.csv)
+Sonic Visualiser Layer XML files (*.svl)
+Space-separated .lab files (*.lab)
+RDF files (%2)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="116"/>
         <source>All supported files (*.sv %1 %2)
-Sonic Visualiser session files (*.sv)
+%3 session files (*.%4)
 Audio files (%2)
 RDF files (%1)
 All files (*.*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="101"/>
-        <source>Image files (%1)
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="139"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="293"/>
+        <source>Scalable Vector Graphics files (*.svg)
 All files (*.*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="107"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="144"/>
+        <source>Comma-separated data files (*.csv)
+Space-separated .lab files (*.lab)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="149"/>
         <source>All supported files (*.sv %1 %2 %3)
-Sonic Visualiser session files (*.sv)
+%4 session files (*.%5)
 Audio files (%1)
 Layer files (%2)
 RDF files (%3)
@@ -981,79 +1246,31 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="148"/>
-        <source>File does not exist</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="149"/>
-        <source>&lt;b&gt;File not found&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; does not exist</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="154"/>
-        <source>File is not readable</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="155"/>
-        <source>&lt;b&gt;File is not readable&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; can not be read</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="160"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="312"/>
-        <source>Directory selected</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="161"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="313"/>
-        <source>&lt;b&gt;Directory selected&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; is a directory</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="166"/>
-        <source>Non-file selected</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="167"/>
-        <source>&lt;b&gt;Not a file&lt;/b&gt;&lt;p&gt;Path &quot;%1&quot; is not a file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="172"/>
-        <source>File is empty</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="173"/>
-        <source>&lt;b&gt;File is empty&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; is empty</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="200"/>
-        <source>Sonic Visualiser session files (*.sv)
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="245"/>
+        <source>%1 session files (*.%2)
 All files (*.*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="206"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="212"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="218"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="228"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="252"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="258"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="264"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="270"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="276"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="286"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="292"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="298"/>
         <source>Select a file to export to</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="207"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="253"/>
         <source>WAV audio files (*.wav)
 All files (*.*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="213"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="259"/>
         <source>Sonic Visualiser Layer XML files (*.svl)
 Comma-separated data files (*.csv)
 RDF/Turtle files (%1)
@@ -1063,7 +1280,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="219"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="265"/>
         <source>Sonic Visualiser Layer XML files (*.svl)
 Comma-separated data files (*.csv)
 RDF/Turtle files (%1)
@@ -1072,71 +1289,97 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="229"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="271"/>
+        <source>Comma-separated data files (*.csv)
+Sonic Visualiser Layer XML files (*.svl)
+RDF/Turtle files (%1)
+MIDI files (*.mid)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="277"/>
+        <source>Comma-separated data files (*.csv)
+Sonic Visualiser Layer XML files (*.svl)
+RDF/Turtle files (%1)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="287"/>
         <source>Portable Network Graphics files (*.png)
 All files (*.*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="318"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="299"/>
+        <source>Comma-separated data files (*.csv)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="407"/>
         <source>File exists</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="319"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="408"/>
         <source>&lt;b&gt;File exists&lt;/b&gt;&lt;p&gt;The file &quot;%1&quot; already exists.
 Do you want to overwrite it?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="451"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="560"/>
         <source>&lt;b&gt;File not found&lt;/b&gt;&lt;p&gt;Audio file &quot;%1&quot; could not be opened.
 Do you want to locate it?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="453"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="562"/>
         <source>&lt;b&gt;File not found&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; could not be opened.
 Do you want to locate it?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="463"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="572"/>
         <source>Failed to open file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="465"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="574"/>
         <source>Locate file...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="466"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="575"/>
         <source>Use URL...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="467"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="576"/>
         <source>Cancel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="486"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="595"/>
         <source>Use URL</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="487"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="596"/>
         <source>Please enter the URL to use for this file:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="495"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="604"/>
         <source>Failed to open location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="496"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="605"/>
         <source>&lt;b&gt;Failed to open location&lt;/b&gt;&lt;p&gt;URL &quot;%1&quot; could not be opened</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1144,65 +1387,65 @@
 <context>
     <name>ItemEditDialog</name>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="58"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="61"/>
         <source>Timing</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="69"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="72"/>
         <source>Time:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="73"/>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="104"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="76"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="107"/>
         <source> frames</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="82"/>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="113"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="85"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="116"/>
         <source> sec</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="89"/>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="120"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="92"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="123"/>
         <source> usec</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="100"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="103"/>
         <source>Duration:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="132"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="135"/>
         <source>Properties</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="145"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="148"/>
         <source>Value:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="161"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="164"/>
         <source>Text:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="180"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="183"/>
         <source>OK</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="181"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="184"/>
         <source>Reset</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="182"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="185"/>
         <source>Cancel</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1210,41 +1453,41 @@
 <context>
     <name>KeyReference</name>
     <message>
-        <location filename="../../svgui/widgets/KeyReference.cpp" line="61"/>
-        <location filename="../../svgui/widgets/KeyReference.cpp" line="92"/>
+        <location filename="../svgui/widgets/KeyReference.cpp" line="62"/>
+        <location filename="../svgui/widgets/KeyReference.cpp" line="100"/>
         <source>&amp;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/KeyReference.cpp" line="145"/>
+        <location filename="../svgui/widgets/KeyReference.cpp" line="159"/>
         <source>&lt;i&gt;or&lt;/i&gt;&amp;nbsp;&lt;b&gt;%1&lt;/b&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/KeyReference.cpp" line="147"/>
+        <location filename="../svgui/widgets/KeyReference.cpp" line="161"/>
         <source>&lt;/b&gt;&amp;nbsp;(%1)&lt;b&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/KeyReference.cpp" line="162"/>
-        <source>Sonic Visualiser: Key and Mouse Reference</source>
+        <location filename="../svgui/widgets/KeyReference.cpp" line="176"/>
+        <source>%1: Key and Mouse Reference</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>LabelCounterInputDialog</name>
     <message>
-        <location filename="../../svgui/widgets/LabelCounterInputDialog.cpp" line="29"/>
+        <location filename="../svgui/widgets/LabelCounterInputDialog.cpp" line="29"/>
         <source>Set Counters</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LabelCounterInputDialog.cpp" line="33"/>
+        <location filename="../svgui/widgets/LabelCounterInputDialog.cpp" line="33"/>
         <source>Fine counter (beats):</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LabelCounterInputDialog.cpp" line="36"/>
+        <location filename="../svgui/widgets/LabelCounterInputDialog.cpp" line="36"/>
         <source>Coarse counter (bars):</source>
         <translation type="unfinished">Coarse counter (measures):</translation>
     </message>
@@ -1252,157 +1495,173 @@
 <context>
     <name>Labeller</name>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="89"/>
+        <location filename="../svcore/data/model/Labeller.h" line="89"/>
         <source>No numbering</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="91"/>
+        <location filename="../svcore/data/model/Labeller.h" line="91"/>
         <source>Simple counter</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="93"/>
+        <location filename="../svcore/data/model/Labeller.h" line="93"/>
         <source>Cyclical counter</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="95"/>
+        <location filename="../svcore/data/model/Labeller.h" line="95"/>
         <source>Cyclical two-level counter (bar/beat)</source>
         <translation type="unfinished">Cyclical two-level counter (measure/beat)</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="97"/>
+        <location filename="../svcore/data/model/Labeller.h" line="97"/>
         <source>Audio sample frame number</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="99"/>
+        <location filename="../svcore/data/model/Labeller.h" line="99"/>
         <source>Time in seconds</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="101"/>
+        <location filename="../svcore/data/model/Labeller.h" line="101"/>
         <source>Duration to the following item</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="103"/>
+        <location filename="../svcore/data/model/Labeller.h" line="103"/>
         <source>Tempo (bpm) based on duration to following item</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="105"/>
+        <location filename="../svcore/data/model/Labeller.h" line="105"/>
         <source>Duration since the previous item</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="107"/>
+        <location filename="../svcore/data/model/Labeller.h" line="107"/>
         <source>Tempo (bpm) based on duration since previous item</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="109"/>
+        <location filename="../svcore/data/model/Labeller.h" line="109"/>
         <source>Same as the nearest previous item</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="111"/>
+        <location filename="../svcore/data/model/Labeller.h" line="111"/>
         <source>Value extracted from the item&apos;s label (where possible)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="153"/>
+        <location filename="../svcore/data/model/Labeller.h" line="159"/>
+        <location filename="../svcore/data/model/Labeller.h" line="259"/>
         <source>%1.%2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="157"/>
+        <location filename="../svcore/data/model/Labeller.h" line="163"/>
         <source>%1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="176"/>
+        <location filename="../svcore/data/model/Labeller.h" line="185"/>
         <source>Label Points</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../svcore/data/model/Labeller.h" line="232"/>
+        <source>Subdivide Points</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/Labeller.h" line="276"/>
+        <source>Winnow Points</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>Layer</name>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="70"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="72"/>
         <source>Waveform</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="71"/>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="87"/>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="91"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="73"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="90"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="94"/>
         <source>Spectrogram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="72"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="74"/>
         <source>Ruler</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="73"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="75"/>
         <source>Time Instants</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="74"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="76"/>
         <source>Time Values</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="75"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="77"/>
         <source>Notes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="76"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="78"/>
+        <source>Flexible Notes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="79"/>
         <source>Regions</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="77"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="80"/>
         <source>Text</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="78"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="81"/>
         <source>Images</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="79"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="82"/>
         <source>Colour 3D Plot</source>
         <translation type="unfinished">Color 3D Plot</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="80"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="83"/>
         <source>Spectrum</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="81"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="84"/>
         <source>Time Slice</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="96"/>
-        <source>Layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/Layer.cpp" line="340"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="99"/>
+        <source>Unknown Layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/Layer.cpp" line="340"/>
         <source>Make Measurement</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Layer.cpp" line="358"/>
+        <location filename="../svgui/layer/Layer.cpp" line="358"/>
         <source>Delete Measurement</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1410,17 +1669,17 @@
 <context>
     <name>LayerTreeDialog</name>
     <message>
-        <location filename="../../svgui/widgets/LayerTreeDialog.cpp" line="34"/>
+        <location filename="../svgui/widgets/LayerTreeDialog.cpp" line="34"/>
         <source>Layer Summary</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LayerTreeDialog.cpp" line="40"/>
+        <location filename="../svgui/widgets/LayerTreeDialog.cpp" line="40"/>
         <source>Audio Data Sources</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LayerTreeDialog.cpp" line="61"/>
+        <location filename="../svgui/widgets/LayerTreeDialog.cpp" line="65"/>
         <source>Panes and Layers</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1428,50 +1687,66 @@
 <context>
     <name>LayerTreeModel</name>
     <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="514"/>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="514"/>
         <source>Layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="515"/>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="515"/>
         <source>Shown</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="516"/>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="516"/>
         <source>Played</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="517"/>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="517"/>
         <source>Model</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
+    <name>LevelPanToolButton</name>
+    <message>
+        <location filename="../svgui/widgets/LevelPanToolButton.cpp" line="52"/>
+        <source>Click to adjust level and pan</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>LevelPanWidget</name>
+    <message>
+        <location filename="../svgui/widgets/LevelPanWidget.cpp" line="45"/>
+        <source>Drag vertically to adjust level, horizontally to adjust pan</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>MIDIFileImportDialog</name>
     <message>
-        <location filename="../../svgui/widgets/MIDIFileImportDialog.cpp" line="32"/>
+        <location filename="../svgui/widgets/MIDIFileImportDialog.cpp" line="32"/>
         <source>Merge all tracks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/MIDIFileImportDialog.cpp" line="33"/>
+        <location filename="../svgui/widgets/MIDIFileImportDialog.cpp" line="33"/>
         <source>Merge all non-percussion tracks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/MIDIFileImportDialog.cpp" line="50"/>
+        <location filename="../svgui/widgets/MIDIFileImportDialog.cpp" line="50"/>
         <source>Select track or tracks to import</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/MIDIFileImportDialog.cpp" line="51"/>
+        <location filename="../svgui/widgets/MIDIFileImportDialog.cpp" line="51"/>
         <source>&lt;b&gt;Select track to import&lt;/b&gt;&lt;p&gt;You can only import this file as a single annotation layer, but the file contains more than one track, or notes on more than one channel.&lt;p&gt;Please select the track or merged tracks you wish to import:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/MIDIFileImportDialog.cpp" line="70"/>
+        <location filename="../svgui/widgets/MIDIFileImportDialog.cpp" line="70"/>
         <source>Error in MIDI file import</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1479,89 +1754,89 @@
 <context>
     <name>MIDIFileReader</name>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="112"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="113"/>
         <source>Wrong length for long data in MIDI stream (%1, should be %2)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="127"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="128"/>
         <source>Wrong length for int data in MIDI stream (%1, should be %2)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="144"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="145"/>
         <source>getMIDIByte called but no MIDI file open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="148"/>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="177"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="149"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="178"/>
         <source>End of MIDI file encountered while reading</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="152"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="153"/>
         <source>Attempt to get more bytes than expected on Track</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="161"/>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="197"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="162"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="198"/>
         <source>Attempt to read past MIDI file end</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="173"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="174"/>
         <source>getMIDIBytes called but no MIDI file open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="181"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="182"/>
         <source>Attempt to get more bytes than available on Track (%1, only have %2)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="214"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="215"/>
         <source>getNumberFromMIDIBytes called but no MIDI file open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="248"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="249"/>
         <source>skipToNextTrack called but no MIDI file open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="479"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="482"/>
         <source>Invalid event code %1 found</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="494"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="497"/>
         <source>Running status used for first event in track</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="812"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="808"/>
         <source>MIDI file &quot;%1&quot; has no notes in any track</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="835"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="831"/>
         <source> - uses GM percussion channel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="839"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="835"/>
         <source>Track %1 (%2)%3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="843"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="839"/>
         <source>Track %1 (untitled)%3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="1028"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="1024"/>
         <source>%1 - vel %2</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1569,7 +1844,7 @@
 <context>
     <name>MIDIInput</name>
     <message>
-        <location filename="../../svcore/data/midi/MIDIInput.cpp" line="30"/>
+        <location filename="../svcore/data/midi/MIDIInput.cpp" line="30"/>
         <source>Input</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1577,7 +1852,7 @@
 <context>
     <name>MP3FileReader</name>
     <message>
-        <location filename="../../svcore/data/fileio/MP3FileReader.cpp" line="115"/>
+        <location filename="../svcore/data/fileio/MP3FileReader.cpp" line="145"/>
         <source>Decoding %1...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1585,686 +1860,690 @@
 <context>
     <name>MainWindow</name>
     <message>
-        <location filename="../main/MainWindow.cpp" line="178"/>
+        <location filename="../main/MainWindow.cpp" line="186"/>
         <source>Black</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="179"/>
+        <location filename="../main/MainWindow.cpp" line="187"/>
         <source>Red</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="180"/>
+        <location filename="../main/MainWindow.cpp" line="188"/>
         <source>Blue</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="181"/>
-        <location filename="../main/MainWindow.cpp" line="227"/>
-        <location filename="../main/MainWindow.cpp" line="3336"/>
+        <location filename="../main/MainWindow.cpp" line="189"/>
+        <location filename="../main/MainWindow.cpp" line="3585"/>
         <source>Green</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="182"/>
+        <location filename="../main/MainWindow.cpp" line="190"/>
         <source>Purple</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="183"/>
+        <location filename="../main/MainWindow.cpp" line="191"/>
         <source>Orange</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="184"/>
+        <location filename="../main/MainWindow.cpp" line="192"/>
         <source>White</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="185"/>
+        <location filename="../main/MainWindow.cpp" line="193"/>
         <source>Bright Red</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="186"/>
+        <location filename="../main/MainWindow.cpp" line="194"/>
         <source>Bright Blue</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="187"/>
-        <location filename="../main/MainWindow.cpp" line="224"/>
-        <location filename="../main/MainWindow.cpp" line="3333"/>
+        <location filename="../main/MainWindow.cpp" line="195"/>
+        <location filename="../main/MainWindow.cpp" line="3587"/>
         <source>Bright Green</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="188"/>
+        <location filename="../main/MainWindow.cpp" line="196"/>
         <source>Bright Purple</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="189"/>
+        <location filename="../main/MainWindow.cpp" line="197"/>
         <source>Bright Orange</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
+        <location filename="../main/MainWindow.cpp" line="396"/>
+        <location filename="../main/MainWindow.cpp" line="1107"/>
+        <location filename="../main/MainWindow.cpp" line="1114"/>
+        <source>&amp;Layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="385"/>
+        <location filename="../main/MainWindow.cpp" line="1517"/>
+        <source>&amp;Transform</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="466"/>
+        <source>&amp;File</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="468"/>
+        <source>File Toolbar</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="470"/>
+        <source>File and Session Management</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="475"/>
+        <source>&amp;New Session</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="476"/>
+        <source>Ctrl+N</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="485"/>
+        <source>Ctrl+O</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="484"/>
+        <source>&amp;Open...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="486"/>
+        <source>Open a session file, audio file, or layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="524"/>
+        <source>&amp;Save Session</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="525"/>
+        <source>Ctrl+S</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="534"/>
+        <source>Save Session &amp;As...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="535"/>
+        <source>Ctrl+Shift+S</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="495"/>
+        <source>Ctrl+I</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="559"/>
+        <source>&amp;Export Audio File...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="560"/>
+        <source>Export selection as an audio file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="573"/>
+        <source>Import Annotation &amp;Layer...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="574"/>
+        <source>Ctrl+L</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="575"/>
+        <source>Import layer data from an existing file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="583"/>
+        <source>Export layer data to a file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="591"/>
+        <source>Export Image File...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="592"/>
+        <source>Export a single pane to an image file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="508"/>
+        <source>Open Lo&amp;cation...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../main/MainWindow.cpp" line="242"/>
-        <source>Playback Speedup</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="356"/>
-        <location filename="../main/MainWindow.cpp" line="1030"/>
-        <location filename="../main/MainWindow.cpp" line="1037"/>
-        <source>&amp;Layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="345"/>
-        <location filename="../main/MainWindow.cpp" line="1432"/>
-        <source>&amp;Transform</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="426"/>
-        <source>&amp;File</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="428"/>
-        <source>File Toolbar</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="430"/>
-        <source>File and Session Management</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="436"/>
-        <source>&amp;New Session</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="437"/>
-        <source>Ctrl+N</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="447"/>
-        <source>Ctrl+O</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="446"/>
-        <source>&amp;Open...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="448"/>
-        <source>Open a session file, audio file, or layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="486"/>
-        <source>&amp;Save Session</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="487"/>
-        <source>Ctrl+S</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="497"/>
-        <source>Save Session &amp;As...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="498"/>
-        <source>Ctrl+Shift+S</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="456"/>
-        <source>Ctrl+I</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="522"/>
-        <source>&amp;Export Audio File...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="523"/>
-        <source>Export selection as an audio file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="536"/>
-        <source>Import Annotation &amp;Layer...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="537"/>
-        <source>Ctrl+L</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="538"/>
-        <source>Import layer data from an existing file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="544"/>
-        <source>Export Annotation Layer...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="545"/>
-        <source>Export layer data to a file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="552"/>
-        <source>Export Image File...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="553"/>
-        <source>Export a single pane to an image file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="469"/>
-        <source>Open Lo&amp;cation...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="470"/>
+        <source>Playback Speed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="509"/>
         <source>Ctrl+Shift+O</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="471"/>
+        <location filename="../main/MainWindow.cpp" line="510"/>
         <source>Open or import a file from a remote URL</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="582"/>
+        <location filename="../main/MainWindow.cpp" line="565"/>
+        <source>Export Audio Data...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="634"/>
         <source>&amp;Preferences...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="583"/>
+        <location filename="../main/MainWindow.cpp" line="635"/>
         <source>Adjust the application preferences</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="589"/>
+        <location filename="../main/MainWindow.cpp" line="641"/>
         <source>&amp;Quit</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="590"/>
+        <location filename="../main/MainWindow.cpp" line="642"/>
         <source>Ctrl+Q</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="602"/>
+        <location filename="../main/MainWindow.cpp" line="654"/>
         <source>&amp;Edit</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="606"/>
+        <location filename="../main/MainWindow.cpp" line="658"/>
         <source>Editing</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="613"/>
+        <location filename="../main/MainWindow.cpp" line="665"/>
         <source>Cu&amp;t</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="614"/>
+        <location filename="../main/MainWindow.cpp" line="666"/>
         <source>Ctrl+X</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="615"/>
+        <location filename="../main/MainWindow.cpp" line="667"/>
         <source>Cut the selection from the current layer to the clipboard</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="623"/>
+        <location filename="../main/MainWindow.cpp" line="675"/>
         <source>&amp;Copy</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="624"/>
+        <location filename="../main/MainWindow.cpp" line="676"/>
         <source>Ctrl+C</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="625"/>
+        <location filename="../main/MainWindow.cpp" line="677"/>
         <source>Copy the selection from the current layer to the clipboard</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="633"/>
+        <location filename="../main/MainWindow.cpp" line="685"/>
         <source>&amp;Paste</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="634"/>
+        <location filename="../main/MainWindow.cpp" line="686"/>
         <source>Ctrl+V</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="635"/>
+        <location filename="../main/MainWindow.cpp" line="687"/>
         <source>Paste from the clipboard to the current layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="642"/>
+        <location filename="../main/MainWindow.cpp" line="694"/>
         <source>Paste at Playback Position</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="643"/>
+        <location filename="../main/MainWindow.cpp" line="695"/>
         <source>Ctrl+Shift+V</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="644"/>
+        <location filename="../main/MainWindow.cpp" line="696"/>
         <source>Paste from the clipboard to the current layer, placing the first item at the playback position</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="651"/>
-        <location filename="../main/MainWindow.cpp" line="2200"/>
+        <location filename="../main/MainWindow.cpp" line="703"/>
+        <location filename="../main/MainWindow.cpp" line="2381"/>
         <source>&amp;Delete Selected Items</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="652"/>
+        <location filename="../main/MainWindow.cpp" line="704"/>
         <source>Del</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="653"/>
-        <location filename="../main/MainWindow.cpp" line="2201"/>
+        <location filename="../main/MainWindow.cpp" line="705"/>
+        <location filename="../main/MainWindow.cpp" line="2382"/>
         <source>Delete items in current selection from the current layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="663"/>
+        <location filename="../main/MainWindow.cpp" line="715"/>
         <source>Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="665"/>
+        <location filename="../main/MainWindow.cpp" line="717"/>
         <source>Select &amp;All</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="666"/>
+        <location filename="../main/MainWindow.cpp" line="718"/>
         <source>Ctrl+A</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="667"/>
+        <location filename="../main/MainWindow.cpp" line="719"/>
         <source>Select the whole duration of the current session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="674"/>
+        <location filename="../main/MainWindow.cpp" line="726"/>
         <source>Select &amp;Visible Range</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="675"/>
+        <location filename="../main/MainWindow.cpp" line="727"/>
         <source>Ctrl+Shift+A</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="676"/>
+        <location filename="../main/MainWindow.cpp" line="728"/>
         <source>Select the time range corresponding to the current window width</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="682"/>
+        <location filename="../main/MainWindow.cpp" line="734"/>
         <source>Select to &amp;Start</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="683"/>
+        <location filename="../main/MainWindow.cpp" line="735"/>
+        <location filename="../main/MainWindow.cpp" line="2197"/>
+        <location filename="../main/MainWindow.cpp" line="2232"/>
+        <location filename="../main/MainWindow.cpp" line="2312"/>
         <source>Shift+Left</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="684"/>
+        <location filename="../main/MainWindow.cpp" line="736"/>
         <source>Select from the start of the session to the current playback position</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="690"/>
+        <location filename="../main/MainWindow.cpp" line="742"/>
         <source>Select to &amp;End</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="691"/>
+        <location filename="../main/MainWindow.cpp" line="743"/>
         <source>Shift+Right</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="692"/>
+        <location filename="../main/MainWindow.cpp" line="744"/>
         <source>Select from the current playback position to the end of the session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="698"/>
+        <location filename="../main/MainWindow.cpp" line="750"/>
         <source>C&amp;lear Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="699"/>
+        <location filename="../main/MainWindow.cpp" line="751"/>
         <source>Esc</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="700"/>
+        <location filename="../main/MainWindow.cpp" line="752"/>
         <source>Clear the selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="709"/>
+        <location filename="../main/MainWindow.cpp" line="761"/>
         <source>Tapping Time Instants</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="711"/>
+        <location filename="../main/MainWindow.cpp" line="763"/>
         <source>&amp;Insert Instant at Playback Position</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="712"/>
+        <location filename="../main/MainWindow.cpp" line="764"/>
         <source>Enter</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="713"/>
+        <location filename="../main/MainWindow.cpp" line="765"/>
         <source>Insert a new time instant at the current playback position, in a new layer if necessary</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="720"/>
+        <location filename="../main/MainWindow.cpp" line="772"/>
         <source>;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="725"/>
+        <location filename="../main/MainWindow.cpp" line="777"/>
         <source>Insert Instants at Selection &amp;Boundaries</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="726"/>
+        <location filename="../main/MainWindow.cpp" line="778"/>
         <source>Shift+Enter</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="727"/>
+        <location filename="../main/MainWindow.cpp" line="779"/>
         <source>Insert new time instants at the start and end of the current selected regions, in a new layer if necessary</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="733"/>
+        <location filename="../main/MainWindow.cpp" line="785"/>
         <source>Insert Item at Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="734"/>
-        <source>Ctrl+Shift+Enter</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="735"/>
+        <location filename="../main/MainWindow.cpp" line="787"/>
         <source>Insert a new note or region item corresponding to the current selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="743"/>
+        <location filename="../main/MainWindow.cpp" line="795"/>
         <source>Number New Instants with</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="763"/>
+        <location filename="../main/MainWindow.cpp" line="815"/>
         <source>Cycle size</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="784"/>
+        <location filename="../main/MainWindow.cpp" line="836"/>
         <source>Reset Numbering Counters</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="785"/>
+        <location filename="../main/MainWindow.cpp" line="837"/>
         <source>Reset to 1 all the counters used for counter-based labelling</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="790"/>
+        <location filename="../main/MainWindow.cpp" line="842"/>
         <source>Set Numbering Counters...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="791"/>
+        <location filename="../main/MainWindow.cpp" line="843"/>
         <source>Set the counters used for counter-based labelling</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="795"/>
+        <location filename="../main/MainWindow.cpp" line="847"/>
         <source>Renumber Selected Instants</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="796"/>
+        <location filename="../main/MainWindow.cpp" line="848"/>
         <source>Renumber the selected instants using the current labelling scheme</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="812"/>
+        <location filename="../main/MainWindow.cpp" line="878"/>
         <source>Panning and Navigation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="814"/>
+        <location filename="../main/MainWindow.cpp" line="880"/>
         <source>&amp;View</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="816"/>
+        <location filename="../main/MainWindow.cpp" line="882"/>
         <source>Scroll &amp;Left</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="817"/>
+        <location filename="../main/MainWindow.cpp" line="883"/>
+        <location filename="../main/MainWindow.cpp" line="2194"/>
+        <location filename="../main/MainWindow.cpp" line="2220"/>
+        <location filename="../main/MainWindow.cpp" line="2250"/>
+        <location filename="../main/MainWindow.cpp" line="2271"/>
+        <location filename="../main/MainWindow.cpp" line="2289"/>
+        <location filename="../main/MainWindow.cpp" line="2306"/>
         <source>Left</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="818"/>
+        <location filename="../main/MainWindow.cpp" line="884"/>
         <source>Scroll the current pane to the left</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="824"/>
+        <location filename="../main/MainWindow.cpp" line="890"/>
         <source>Scroll &amp;Right</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="825"/>
+        <location filename="../main/MainWindow.cpp" line="891"/>
         <source>Right</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="826"/>
+        <location filename="../main/MainWindow.cpp" line="892"/>
         <source>Scroll the current pane to the right</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="832"/>
+        <location filename="../main/MainWindow.cpp" line="898"/>
         <source>&amp;Jump Left</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="833"/>
+        <location filename="../main/MainWindow.cpp" line="899"/>
+        <location filename="../main/MainWindow.cpp" line="2224"/>
+        <location filename="../main/MainWindow.cpp" line="2228"/>
         <source>Ctrl+Left</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="834"/>
+        <location filename="../main/MainWindow.cpp" line="900"/>
         <source>Scroll the current pane a big step to the left</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="840"/>
+        <location filename="../main/MainWindow.cpp" line="906"/>
         <source>J&amp;ump Right</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="841"/>
+        <location filename="../main/MainWindow.cpp" line="907"/>
         <source>Ctrl+Right</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="842"/>
+        <location filename="../main/MainWindow.cpp" line="908"/>
         <source>Scroll the current pane a big step to the right</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="848"/>
+        <location filename="../main/MainWindow.cpp" line="914"/>
         <source>Peek Left</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="849"/>
+        <location filename="../main/MainWindow.cpp" line="915"/>
         <source>Alt+Left</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="850"/>
+        <location filename="../main/MainWindow.cpp" line="916"/>
         <source>Scroll the current pane to the left without moving the playback cursor or other panes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="856"/>
+        <location filename="../main/MainWindow.cpp" line="922"/>
         <source>Peek Right</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="857"/>
+        <location filename="../main/MainWindow.cpp" line="923"/>
         <source>Alt+Right</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="858"/>
+        <location filename="../main/MainWindow.cpp" line="924"/>
         <source>Scroll the current pane to the right without moving the playback cursor or other panes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="866"/>
+        <location filename="../main/MainWindow.cpp" line="932"/>
         <source>Zoom</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="869"/>
+        <location filename="../main/MainWindow.cpp" line="935"/>
         <source>Zoom &amp;In</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="870"/>
+        <location filename="../main/MainWindow.cpp" line="936"/>
         <source>Up</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="871"/>
+        <location filename="../main/MainWindow.cpp" line="937"/>
         <source>Increase the zoom level</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="878"/>
+        <location filename="../main/MainWindow.cpp" line="944"/>
         <source>Zoom &amp;Out</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="879"/>
+        <location filename="../main/MainWindow.cpp" line="945"/>
         <source>Down</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="880"/>
+        <location filename="../main/MainWindow.cpp" line="946"/>
         <source>Decrease the zoom level</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="886"/>
+        <location filename="../main/MainWindow.cpp" line="952"/>
         <source>Restore &amp;Default Zoom</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="887"/>
+        <location filename="../main/MainWindow.cpp" line="953"/>
         <source>Restore the zoom level to the default</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="893"/>
+        <location filename="../main/MainWindow.cpp" line="959"/>
         <source>Zoom to &amp;Fit</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="894"/>
+        <location filename="../main/MainWindow.cpp" line="960"/>
         <source>F</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="895"/>
+        <location filename="../main/MainWindow.cpp" line="961"/>
         <source>Zoom to show the whole file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="903"/>
+        <location filename="../main/MainWindow.cpp" line="969"/>
         <source>Display Features</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="905"/>
+        <location filename="../main/MainWindow.cpp" line="971"/>
         <source>Show &amp;Centre Line</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="906"/>
+        <location filename="../main/MainWindow.cpp" line="972"/>
         <source>&apos;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="907"/>
+        <location filename="../main/MainWindow.cpp" line="973"/>
         <source>Show or hide the centre line</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="914"/>
+        <location filename="../main/MainWindow.cpp" line="980"/>
         <source>Toggle All Time Rulers</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="925"/>
+        <location filename="../main/MainWindow.cpp" line="993"/>
         <source>Show &amp;No Overlays</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="926"/>
+        <location filename="../main/MainWindow.cpp" line="994"/>
         <source>0</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2273,12 +2552,12 @@
         <translation type="obsolete">Hide center indicator, frame times, layer names and scale</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="935"/>
+        <location filename="../main/MainWindow.cpp" line="1003"/>
         <source>Show &amp;Minimal Overlays</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="936"/>
+        <location filename="../main/MainWindow.cpp" line="1004"/>
         <source>9</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2287,7 +2566,7 @@
         <translation type="obsolete">Show center indicator only</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="946"/>
+        <location filename="../main/MainWindow.cpp" line="1014"/>
         <source>8</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2296,1688 +2575,2013 @@
         <translation type="obsolete">Show center indicator, frame times and scale</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="945"/>
+        <location filename="../main/MainWindow.cpp" line="1013"/>
         <source>Show &amp;All Overlays</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="915"/>
+        <location filename="../main/MainWindow.cpp" line="981"/>
         <source>#</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="528"/>
-        <source>&amp;Export Audio Data...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="529"/>
+        <location filename="../main/MainWindow.cpp" line="566"/>
         <source>Export audio from selection into a data file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="916"/>
+        <location filename="../main/MainWindow.cpp" line="581"/>
+        <source>Export Annotation La&amp;yer...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="582"/>
+        <source>Ctrl+Y</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="597"/>
+        <source>Export SVG File...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="598"/>
+        <source>Export a single pane to a scalable SVG image file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="605"/>
+        <source>Browse Recorded Audio Folder</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="606"/>
+        <source>Open the Recorded Audio folder in the system file browser</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="786"/>
+        <source>Ctrl+Shift+Return</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="856"/>
+        <source>Subdivide Selected Instants...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="857"/>
+        <source>Add new instants at regular intervals between the selected instants</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="862"/>
+        <source>Winnow Selected Instants...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="863"/>
+        <source>Remove subdivisions, leaving only every Nth instant</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="982"/>
         <source>Show or hide all time rulers</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="927"/>
+        <location filename="../main/MainWindow.cpp" line="995"/>
         <source>Hide times, layer names, and scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="937"/>
+        <location filename="../main/MainWindow.cpp" line="1005"/>
         <source>Show times and basic scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="947"/>
+        <location filename="../main/MainWindow.cpp" line="1015"/>
         <source>Show times, layer names, and scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="957"/>
+        <location filename="../main/MainWindow.cpp" line="1025"/>
         <source>Show &amp;Zoom Wheels</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="958"/>
+        <location filename="../main/MainWindow.cpp" line="1026"/>
         <source>Z</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="959"/>
+        <location filename="../main/MainWindow.cpp" line="1027"/>
         <source>Show thumbwheels for zooming horizontally and vertically</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="966"/>
+        <location filename="../main/MainWindow.cpp" line="1034"/>
         <source>Show Property Bo&amp;xes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="967"/>
+        <location filename="../main/MainWindow.cpp" line="1035"/>
         <source>X</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="968"/>
+        <location filename="../main/MainWindow.cpp" line="1036"/>
         <source>Show the layer property boxes at the side of the main window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="975"/>
+        <location filename="../main/MainWindow.cpp" line="1043"/>
         <source>Show Status &amp;Bar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="976"/>
+        <location filename="../main/MainWindow.cpp" line="1044"/>
         <source>Show context help information in the status bar at the bottom of the window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="993"/>
+        <location filename="../main/MainWindow.cpp" line="1061"/>
         <source>Show La&amp;yer Summary</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="994"/>
+        <location filename="../main/MainWindow.cpp" line="1062"/>
         <source>Y</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="995"/>
+        <location filename="../main/MainWindow.cpp" line="1063"/>
         <source>Open a window displaying the hierarchy of panes and layers in this session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1000"/>
+        <location filename="../main/MainWindow.cpp" line="1068"/>
         <source>Show Acti&amp;vity Log</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1001"/>
+        <location filename="../main/MainWindow.cpp" line="1069"/>
         <source>Open a window listing interactions and other events</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1007"/>
+        <location filename="../main/MainWindow.cpp" line="1073"/>
+        <source>Show &amp;Unit Converter</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1074"/>
+        <source>Open a window of pitch and timing conversion utilities</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1083"/>
         <source>Go Full-Screen</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1008"/>
+        <location filename="../main/MainWindow.cpp" line="1084"/>
         <source>F11</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1009"/>
+        <location filename="../main/MainWindow.cpp" line="1085"/>
         <source>Expand the pane area to the whole screen</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1022"/>
+        <location filename="../main/MainWindow.cpp" line="1099"/>
         <source>&amp;Pane</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1046"/>
+        <location filename="../main/MainWindow.cpp" line="1123"/>
         <source>Managing Panes and Layers</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1048"/>
+        <location filename="../main/MainWindow.cpp" line="1125"/>
         <source>Add &amp;New Pane</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1049"/>
+        <location filename="../main/MainWindow.cpp" line="1126"/>
         <source>N</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1050"/>
+        <location filename="../main/MainWindow.cpp" line="1127"/>
         <source>Add a new pane containing only a time ruler</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1076"/>
+        <location filename="../main/MainWindow.cpp" line="1153"/>
         <source>Add New %1 Layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1077"/>
+        <location filename="../main/MainWindow.cpp" line="1154"/>
         <source>Add a new empty layer of type %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1083"/>
+        <location filename="../main/MainWindow.cpp" line="1160"/>
         <source>T</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1133"/>
+        <location filename="../main/MainWindow.cpp" line="1217"/>
         <source>Add &amp;Waveform</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1135"/>
+        <location filename="../main/MainWindow.cpp" line="1219"/>
         <source>W</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1136"/>
+        <location filename="../main/MainWindow.cpp" line="1220"/>
         <source>Add a new pane showing a waveform view</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1138"/>
+        <location filename="../main/MainWindow.cpp" line="1222"/>
         <source>Shift+W</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1139"/>
+        <location filename="../main/MainWindow.cpp" line="1223"/>
         <source>Add a new layer showing a waveform view</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1146"/>
+        <location filename="../main/MainWindow.cpp" line="1230"/>
         <source>Add Spectro&amp;gram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1148"/>
+        <location filename="../main/MainWindow.cpp" line="1232"/>
         <source>G</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1149"/>
+        <location filename="../main/MainWindow.cpp" line="1233"/>
         <source>Add a new pane showing a spectrogram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1151"/>
+        <location filename="../main/MainWindow.cpp" line="1235"/>
         <source>Shift+G</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1152"/>
+        <location filename="../main/MainWindow.cpp" line="1236"/>
         <source>Add a new layer showing a spectrogram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1158"/>
+        <location filename="../main/MainWindow.cpp" line="1242"/>
         <source>Add &amp;Melodic Range Spectrogram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1160"/>
+        <location filename="../main/MainWindow.cpp" line="1244"/>
         <source>M</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1161"/>
+        <location filename="../main/MainWindow.cpp" line="1245"/>
         <source>Add a new pane showing a spectrogram set up for an overview of note pitches</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1163"/>
+        <location filename="../main/MainWindow.cpp" line="1247"/>
         <source>Shift+M</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1164"/>
+        <location filename="../main/MainWindow.cpp" line="1248"/>
         <source>Add a new layer showing a spectrogram set up for an overview of note pitches</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1170"/>
+        <location filename="../main/MainWindow.cpp" line="1254"/>
         <source>Add Pea&amp;k Frequency Spectrogram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1172"/>
+        <location filename="../main/MainWindow.cpp" line="1256"/>
         <source>K</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1173"/>
+        <location filename="../main/MainWindow.cpp" line="1257"/>
         <source>Add a new pane showing a spectrogram set up for tracking frequencies</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1175"/>
+        <location filename="../main/MainWindow.cpp" line="1259"/>
         <source>Shift+K</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1176"/>
+        <location filename="../main/MainWindow.cpp" line="1260"/>
         <source>Add a new layer showing a spectrogram set up for tracking frequencies</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1182"/>
+        <location filename="../main/MainWindow.cpp" line="1266"/>
         <source>Add Spectr&amp;um</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1184"/>
+        <location filename="../main/MainWindow.cpp" line="1268"/>
         <source>U</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1185"/>
+        <location filename="../main/MainWindow.cpp" line="1269"/>
         <source>Add a new pane showing a frequency spectrum</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1187"/>
+        <location filename="../main/MainWindow.cpp" line="1271"/>
         <source>Shift+U</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1188"/>
+        <location filename="../main/MainWindow.cpp" line="1272"/>
         <source>Add a new layer showing a frequency spectrum</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1258"/>
+        <location filename="../main/MainWindow.cpp" line="1342"/>
         <source>&amp;All Channels Mixed</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1260"/>
+        <location filename="../main/MainWindow.cpp" line="1344"/>
         <source>&amp;All Channels</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1263"/>
+        <location filename="../main/MainWindow.cpp" line="1347"/>
         <source>Channel &amp;%1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1267"/>
+        <location filename="../main/MainWindow.cpp" line="1351"/>
+        <location filename="../main/MainWindow.cpp" line="3559"/>
         <source>%1: %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1326"/>
+        <location filename="../main/MainWindow.cpp" line="1410"/>
         <source>Switch to Previous Pane</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1327"/>
+        <location filename="../main/MainWindow.cpp" line="1411"/>
         <source>[</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1328"/>
+        <location filename="../main/MainWindow.cpp" line="1412"/>
         <source>Make the next pane up in the pane stack current</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1334"/>
+        <location filename="../main/MainWindow.cpp" line="1418"/>
         <source>Switch to Next Pane</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1335"/>
+        <location filename="../main/MainWindow.cpp" line="1419"/>
         <source>]</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1336"/>
+        <location filename="../main/MainWindow.cpp" line="1420"/>
         <source>Make the next pane down in the pane stack current</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1344"/>
+        <location filename="../main/MainWindow.cpp" line="1428"/>
         <source>&amp;Delete Pane</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1345"/>
+        <location filename="../main/MainWindow.cpp" line="1429"/>
         <source>Ctrl+Shift+D</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1346"/>
+        <location filename="../main/MainWindow.cpp" line="1430"/>
         <source>Delete the currently active pane</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1354"/>
+        <location filename="../main/MainWindow.cpp" line="1438"/>
         <source>Add &amp;Time Ruler</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1355"/>
+        <location filename="../main/MainWindow.cpp" line="1439"/>
         <source>Add a new layer showing a time ruler</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1363"/>
+        <location filename="../main/MainWindow.cpp" line="1447"/>
         <source>Add &amp;Existing Layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1367"/>
+        <location filename="../main/MainWindow.cpp" line="1451"/>
         <source>Add S&amp;lice of Layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1395"/>
+        <location filename="../main/MainWindow.cpp" line="1459"/>
+        <source>Switch to Previous Layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1460"/>
+        <source>{</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1461"/>
+        <source>Make the previous layer in the pane current</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1467"/>
+        <source>Switch to Next Layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1468"/>
+        <source>}</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1469"/>
+        <source>Make the next layer in the pane current</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1478"/>
         <source>&amp;Rename Layer...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1396"/>
+        <location filename="../main/MainWindow.cpp" line="1479"/>
         <source>R</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1397"/>
+        <location filename="../main/MainWindow.cpp" line="1480"/>
         <source>Rename the currently active layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1403"/>
+        <location filename="../main/MainWindow.cpp" line="1486"/>
         <source>Edit Layer Data</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1404"/>
+        <location filename="../main/MainWindow.cpp" line="1487"/>
         <source>E</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1405"/>
+        <location filename="../main/MainWindow.cpp" line="1488"/>
         <source>Edit the currently active layer as a data grid</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1411"/>
+        <location filename="../main/MainWindow.cpp" line="1494"/>
         <source>&amp;Delete Layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1412"/>
+        <location filename="../main/MainWindow.cpp" line="1495"/>
         <source>Ctrl+D</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1413"/>
+        <location filename="../main/MainWindow.cpp" line="1496"/>
         <source>Delete the currently active layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1450"/>
+        <location filename="../main/MainWindow.cpp" line="1540"/>
         <source>&amp;Recent Transforms</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1467"/>
+        <location filename="../main/MainWindow.cpp" line="1557"/>
         <source>%1 by Category</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1482"/>
-        <location filename="../main/MainWindow.cpp" line="1570"/>
+        <location filename="../main/MainWindow.cpp" line="1572"/>
+        <location filename="../main/MainWindow.cpp" line="1660"/>
         <source>Unclassified</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1513"/>
+        <location filename="../main/MainWindow.cpp" line="1603"/>
         <source>%1 by Plugin Name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1521"/>
+        <location filename="../main/MainWindow.cpp" line="1611"/>
         <source>%1 by Maker</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1535"/>
-        <location filename="../main/MainWindow.cpp" line="1573"/>
+        <location filename="../main/MainWindow.cpp" line="1625"/>
+        <location filename="../main/MainWindow.cpp" line="1663"/>
         <source>Unknown</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1536"/>
-        <location filename="../main/MainWindow.cpp" line="1574"/>
+        <location filename="../main/MainWindow.cpp" line="1626"/>
+        <location filename="../main/MainWindow.cpp" line="1664"/>
         <source> [\(&lt;].*$</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1589"/>
-        <location filename="../main/MainWindow.cpp" line="1615"/>
+        <location filename="../main/MainWindow.cpp" line="1679"/>
+        <location filename="../main/MainWindow.cpp" line="1705"/>
         <source>%1...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1654"/>
+        <location filename="../main/MainWindow.cpp" line="1744"/>
         <source>Find a Transform...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1655"/>
+        <location filename="../main/MainWindow.cpp" line="1745"/>
         <source>Search for a transform from the installed plugins, by name or description</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1656"/>
+        <location filename="../main/MainWindow.cpp" line="1746"/>
         <source>Ctrl+M</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1669"/>
+        <location filename="../main/MainWindow.cpp" line="1759"/>
         <source>&amp;Help</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1672"/>
+        <location filename="../main/MainWindow.cpp" line="1762"/>
         <source>Help</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1679"/>
+        <location filename="../main/MainWindow.cpp" line="1769"/>
         <source>&amp;Help Reference</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1680"/>
+        <location filename="../main/MainWindow.cpp" line="1770"/>
         <source>F1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1686"/>
+        <location filename="../main/MainWindow.cpp" line="1776"/>
         <source>&amp;Key and Mouse Reference</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1687"/>
+        <location filename="../main/MainWindow.cpp" line="1777"/>
         <source>F2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1713"/>
+        <location filename="../main/MainWindow.cpp" line="1806"/>
         <source>Ctrl+R</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1715"/>
+        <location filename="../main/MainWindow.cpp" line="1808"/>
         <source>Re-open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1717"/>
+        <location filename="../main/MainWindow.cpp" line="1810"/>
         <source>Re-open the current or most recently opened file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1728"/>
+        <location filename="../main/MainWindow.cpp" line="1821"/>
         <source>Standard Waveform</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1764"/>
+        <location filename="../main/MainWindow.cpp" line="1857"/>
         <source>Choose Default Template...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1789"/>
+        <location filename="../main/MainWindow.cpp" line="1882"/>
         <source>Ctrl+T</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1791"/>
+        <location filename="../main/MainWindow.cpp" line="1884"/>
         <source>Repeat Transform</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1793"/>
+        <location filename="../main/MainWindow.cpp" line="1886"/>
         <source>Re-select the most recently run transform</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1883"/>
+        <location filename="../main/MainWindow.cpp" line="1976"/>
         <source>Playback and Transport Controls</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1887"/>
+        <location filename="../main/MainWindow.cpp" line="1980"/>
         <source>Play&amp;back</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1890"/>
+        <location filename="../main/MainWindow.cpp" line="1983"/>
         <source>Playback</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1892"/>
+        <location filename="../main/MainWindow.cpp" line="1985"/>
         <source>Playback Toolbar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1895"/>
+        <location filename="../main/MainWindow.cpp" line="1988"/>
         <source>Rewind to Start</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1896"/>
+        <location filename="../main/MainWindow.cpp" line="1989"/>
         <source>Home</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1897"/>
+        <location filename="../main/MainWindow.cpp" line="1990"/>
         <source>Rewind to the start</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1901"/>
+        <location filename="../main/MainWindow.cpp" line="1994"/>
+        <location filename="../main/MainWindow.cpp" line="2399"/>
+        <location filename="../main/MainWindow.cpp" line="2400"/>
+        <source>Rewind</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1995"/>
+        <source>PgUp</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1996"/>
+        <source>Rewind to the previous time instant or time ruler notch</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2000"/>
+        <source>Rewind to Similar Point</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2001"/>
+        <source>Shift+PgUp</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2002"/>
+        <source>Rewind to the previous similarly valued time instant</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2007"/>
+        <source>Play / Pause</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2009"/>
+        <source>Space</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2010"/>
+        <source>Start or stop playback from the current position</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2019"/>
+        <location filename="../main/MainWindow.cpp" line="2397"/>
+        <source>Fast Forward</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2020"/>
+        <source>PgDown</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2021"/>
+        <source>Fast-forward to the next time instant or time ruler notch</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2025"/>
+        <source>Fast Forward to Similar Point</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2026"/>
+        <source>Shift+PgDown</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2027"/>
+        <source>Fast-forward to the next similarly valued time instant</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2032"/>
+        <source>Fast Forward to End</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2033"/>
+        <source>End</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2034"/>
+        <source>Fast-forward to the end</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2039"/>
+        <source>Record</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2041"/>
+        <source>Ctrl+Space</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2042"/>
+        <source>Record a new audio file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2049"/>
+        <source>Play Mode Toolbar</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2052"/>
+        <source>Constrain Playback to Selection</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2055"/>
+        <source>s</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2056"/>
+        <source>Constrain playback to the selected regions</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2063"/>
+        <source>Loop Playback</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2066"/>
+        <source>l</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2067"/>
+        <source>Loop playback</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2074"/>
+        <source>Solo Current Pane</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2078"/>
+        <source>o</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2079"/>
+        <source>Solo the current pane during playback</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2088"/>
+        <source>Align File Timelines</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2091"/>
+        <source>Treat multiple audio files as versions of the same work, and align their timelines</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2146"/>
+        <source>Speed Up</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2147"/>
+        <source>Ctrl+PgUp</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2148"/>
+        <source>Time-stretch playback to speed it up without changing pitch</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2152"/>
+        <source>Slow Down</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2153"/>
+        <source>Ctrl+PgDown</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2154"/>
+        <source>Time-stretch playback to slow it down without changing pitch</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2158"/>
+        <source>Restore Normal Speed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2159"/>
+        <source>Ctrl+Home</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2160"/>
+        <source>Restore non-time-stretched playback</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2172"/>
+        <source>Edit Toolbar</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2178"/>
+        <location filename="../main/MainWindow.cpp" line="2206"/>
+        <location filename="../main/MainWindow.cpp" line="2235"/>
+        <location filename="../main/MainWindow.cpp" line="2256"/>
+        <location filename="../main/MainWindow.cpp" line="2274"/>
+        <location filename="../main/MainWindow.cpp" line="2292"/>
+        <source>Tool Selection</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2975"/>
+        <source>Export the whole pane</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2976"/>
+        <source>Export the visible area only</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2986"/>
+        <source>Which region of the current pane do you want to export as a scalable SVG image?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="3014"/>
+        <source>Failed to save SVG file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="3015"/>
+        <source>Failed to save SVG file %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4064"/>
+        <source>Playback speed: %1% (%2x slower)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4070"/>
+        <source>Playback speed: %1% (%2x faster)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4525"/>
+        <source>Subdivide instants</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4526"/>
+        <source>Number of subdivisions:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4547"/>
+        <source>Winnow instants</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4548"/>
+        <source>Remove all instants apart from multiples of:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4574"/>
+        <source>&lt;b&gt;Layer generation failed&lt;/b&gt;&lt;p&gt;Failed to generate derived layer.&lt;p&gt;The layer transform %1failed:&lt;p&gt;%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4581"/>
+        <source>&lt;b&gt;Layer generation failed&lt;/b&gt;&lt;p&gt;Failed to generate a derived layer.&lt;p&gt;The layer transform %1failed.&lt;p&gt;No error information is available.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4637"/>
+        <source>&lt;b&gt;Alignment calculation failed&lt;/b&gt;&lt;p&gt;Failed to calculate an audio alignment:&lt;p&gt;%1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4722"/>
+        <source>Adjust the master playback level and pan</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4771"/>
+        <source>&lt;p&gt;&lt;small&gt;%1 : %2 configuration, %3-bit build&lt;/small&gt;&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4778"/>
+        <source>With Qt v%1 &amp;copy; The Qt Company</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4834"/>
+        <source>&lt;br&gt;With Rubber Band Library v%1 &amp;copy; Particular Programs Ltd</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4836"/>
+        <source>&lt;br&gt;With Rubber Band Library &amp;copy; Particular Programs Ltd</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4839"/>
+        <source>&lt;br&gt;With Vamp plugin support (API v%1, host SDK v%2) &amp;copy; Chris Cannam and QMUL</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4848"/>
+        <source>&lt;br&gt;With Dataquay Qt/RDF library &amp;copy; Particular Programs Ltd</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4849"/>
+        <source>&lt;br&gt;With Cap&apos;n Proto serialisation &amp;copy; Sandstorm Development Group</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4896"/>
+        <source>&lt;h3&gt;Newer version available&lt;/h3&gt;&lt;p&gt;You are using version %1 of Sonic Visualiser, but version %2 is now available.&lt;/p&gt;&lt;p&gt;Please see the &lt;a href=&quot;http://sonicvisualiser.org/&quot;&gt;Sonic Visualiser website&lt;/a&gt; for more information.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2175"/>
+        <source>Tools Toolbar</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2180"/>
+        <location filename="../main/MainWindow.cpp" line="2184"/>
+        <location filename="../main/MainWindow.cpp" line="2194"/>
+        <source>Navigate</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2183"/>
+        <source>1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2208"/>
+        <location filename="../main/MainWindow.cpp" line="2220"/>
+        <source>Select</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2210"/>
+        <source>2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2211"/>
+        <source>Select ranges</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2203"/>
+        <location filename="../main/MainWindow.cpp" line="2237"/>
+        <location filename="../main/MainWindow.cpp" line="2253"/>
+        <source>Edit</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2192"/>
+        <source>Navigate Tool Mouse Actions</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2195"/>
+        <source>Click left button and drag to move around</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2197"/>
+        <location filename="../main/MainWindow.cpp" line="2312"/>
+        <source>Zoom to Area</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2198"/>
+        <location filename="../main/MainWindow.cpp" line="2313"/>
+        <source>Shift-click left button and drag to zoom to a rectangular area</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2200"/>
+        <source>Relocate</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2200"/>
+        <location filename="../main/MainWindow.cpp" line="2203"/>
+        <location filename="../main/MainWindow.cpp" line="2253"/>
+        <location filename="../main/MainWindow.cpp" line="2309"/>
+        <source>Double-Click Left</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2201"/>
+        <source>Double-click left button to jump to clicked location</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2204"/>
+        <location filename="../main/MainWindow.cpp" line="2254"/>
+        <source>Double-click left button on an item to edit it</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../main/MainWindow.cpp" line="2218"/>
-        <location filename="../main/MainWindow.cpp" line="2219"/>
-        <source>Rewind</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1902"/>
-        <source>PgUp</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1903"/>
-        <source>Rewind to the previous time instant or time ruler notch</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1907"/>
-        <source>Rewind to Similar Point</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1908"/>
-        <source>Shift+PgUp</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1909"/>
-        <source>Rewind to the previous similarly valued time instant</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1914"/>
-        <source>Play / Pause</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1916"/>
-        <source>Space</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1917"/>
-        <source>Start or stop playback from the current position</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1926"/>
-        <location filename="../main/MainWindow.cpp" line="2216"/>
-        <source>Fast Forward</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1927"/>
-        <source>PgDown</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1928"/>
-        <source>Fast-forward to the next time instant or time ruler notch</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1932"/>
-        <source>Fast Forward to Similar Point</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1933"/>
-        <source>Shift+PgDown</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1934"/>
-        <source>Fast-forward to the next similarly valued time instant</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1939"/>
-        <source>Fast Forward to End</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1940"/>
-        <source>End</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1941"/>
-        <source>Fast-forward to the end</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1945"/>
-        <source>Play Mode Toolbar</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1948"/>
-        <source>Constrain Playback to Selection</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1951"/>
-        <source>s</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1952"/>
-        <source>Constrain playback to the selected regions</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1959"/>
-        <source>Loop Playback</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1962"/>
-        <source>l</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1963"/>
-        <source>Loop playback</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1970"/>
-        <source>Solo Current Pane</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1974"/>
-        <source>o</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1975"/>
-        <source>Solo the current pane during playback</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1984"/>
-        <source>Align File Timelines</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1987"/>
-        <source>Treat multiple audio files as versions of the same work, and align their timelines</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2035"/>
-        <source>Speed Up</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2036"/>
-        <source>Ctrl+PgUp</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2037"/>
-        <source>Time-stretch playback to speed it up without changing pitch</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2041"/>
-        <source>Slow Down</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2042"/>
-        <source>Ctrl+PgDown</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2043"/>
-        <source>Time-stretch playback to slow it down without changing pitch</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2047"/>
-        <source>Restore Normal Speed</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2048"/>
-        <source>Ctrl+Home</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2049"/>
-        <source>Restore non-time-stretched playback</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2061"/>
-        <source>Edit Toolbar</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2064"/>
-        <source>Tool Selection</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2066"/>
-        <source>Tools Toolbar</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2070"/>
-        <location filename="../main/MainWindow.cpp" line="2074"/>
-        <source>Navigate</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2073"/>
-        <source>1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2082"/>
-        <source>Select</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2084"/>
-        <source>2</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2085"/>
-        <source>Select ranges</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2092"/>
-        <source>Edit</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2094"/>
+        <source>Select Tool Mouse Actions</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2221"/>
+        <source>Click left button and drag to select region; drag region edge to resize</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2224"/>
+        <location filename="../main/MainWindow.cpp" line="2228"/>
+        <source>Multi Select</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2225"/>
+        <source>Cmd-click left button and drag to select an additional region</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2229"/>
+        <source>Ctrl-click left button and drag to select an additional region</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2232"/>
+        <source>Fine Select</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2233"/>
+        <source>Shift-click left button and drag to select without snapping to items or grid</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2239"/>
         <source>3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2095"/>
+        <location filename="../main/MainWindow.cpp" line="2240"/>
         <source>Edit items in layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2103"/>
+        <location filename="../main/MainWindow.cpp" line="2248"/>
+        <source>Edit Tool Mouse Actions</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2250"/>
+        <source>Move</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2251"/>
+        <source>Click left button on an item or selected region and drag to move</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2258"/>
+        <location filename="../main/MainWindow.cpp" line="2271"/>
         <source>Draw</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2105"/>
+        <location filename="../main/MainWindow.cpp" line="2260"/>
         <source>4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2106"/>
+        <location filename="../main/MainWindow.cpp" line="2261"/>
         <source>Draw new items in layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2114"/>
+        <location filename="../main/MainWindow.cpp" line="2269"/>
+        <source>Draw Tool Mouse Actions</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2272"/>
+        <source>Click left button and drag to create new item</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2276"/>
+        <location filename="../main/MainWindow.cpp" line="2289"/>
         <source>Erase</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2116"/>
+        <location filename="../main/MainWindow.cpp" line="2278"/>
         <source>5</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2117"/>
+        <location filename="../main/MainWindow.cpp" line="2279"/>
         <source>Erase items from layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2124"/>
+        <location filename="../main/MainWindow.cpp" line="2287"/>
+        <source>Erase Tool Mouse Actions</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2290"/>
+        <source>Click left button on an item to remove it from the layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2293"/>
         <source>Measure</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2126"/>
+        <location filename="../main/MainWindow.cpp" line="2295"/>
         <source>6</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2127"/>
+        <location filename="../main/MainWindow.cpp" line="2296"/>
         <source>Make measurements in layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2196"/>
+        <location filename="../main/MainWindow.cpp" line="2304"/>
+        <source>Measure Tool Mouse Actions</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2306"/>
+        <source>Measure Area</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2307"/>
+        <source>Click left button and drag to measure a rectangular area</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2309"/>
+        <source>Measure Item</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2310"/>
+        <source>Click left button and drag to measure extents of an item or shape</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2377"/>
         <source>&amp;Delete Current Measurement</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2197"/>
+        <location filename="../main/MainWindow.cpp" line="2378"/>
         <source>Delete the measurement currently under the mouse pointer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2206"/>
+        <location filename="../main/MainWindow.cpp" line="2387"/>
         <source>Fast Forward to Next Instant</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2207"/>
+        <location filename="../main/MainWindow.cpp" line="2388"/>
         <source>Fast forward to the next time instant in the current layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2208"/>
+        <location filename="../main/MainWindow.cpp" line="2389"/>
         <source>Rewind to Previous Instant</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2209"/>
+        <location filename="../main/MainWindow.cpp" line="2390"/>
         <source>Rewind to the previous time instant in the current layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2211"/>
+        <location filename="../main/MainWindow.cpp" line="2392"/>
         <source>Fast Forward to Next Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2212"/>
+        <location filename="../main/MainWindow.cpp" line="2393"/>
         <source>Fast forward to the next point in the current layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2213"/>
+        <location filename="../main/MainWindow.cpp" line="2394"/>
         <source>Rewind to Previous Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2214"/>
+        <location filename="../main/MainWindow.cpp" line="2395"/>
         <source>Rewind to the previous point in the current layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2217"/>
+        <location filename="../main/MainWindow.cpp" line="2398"/>
         <source>Fast forward</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2228"/>
+        <location filename="../main/MainWindow.cpp" line="2409"/>
         <source>No audio file loaded.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2239"/>
+        <location filename="../main/MainWindow.cpp" line="2422"/>
         <source>%1Hz (resampling to %2Hz)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2310"/>
-        <location filename="../main/MainWindow.cpp" line="2324"/>
-        <location filename="../main/MainWindow.cpp" line="2338"/>
+        <location filename="../main/MainWindow.cpp" line="2493"/>
+        <location filename="../main/MainWindow.cpp" line="2507"/>
+        <location filename="../main/MainWindow.cpp" line="2521"/>
+        <location filename="../main/MainWindow.cpp" line="2758"/>
+        <location filename="../main/MainWindow.cpp" line="2763"/>
+        <location filename="../main/MainWindow.cpp" line="3138"/>
+        <location filename="../main/MainWindow.cpp" line="3142"/>
+        <source>Failed to open file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2494"/>
+        <location filename="../main/MainWindow.cpp" line="2508"/>
+        <location filename="../main/MainWindow.cpp" line="2522"/>
+        <source>&lt;b&gt;File open failed&lt;/b&gt;&lt;p&gt;Audio file &quot;%1&quot; could not be opened</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2570"/>
+        <source>1. %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../main/MainWindow.cpp" line="2577"/>
-        <location filename="../main/MainWindow.cpp" line="2582"/>
-        <location filename="../main/MainWindow.cpp" line="2878"/>
-        <location filename="../main/MainWindow.cpp" line="2898"/>
-        <location filename="../main/MainWindow.cpp" line="2902"/>
-        <source>Failed to open file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2311"/>
-        <location filename="../main/MainWindow.cpp" line="2325"/>
-        <location filename="../main/MainWindow.cpp" line="2339"/>
-        <source>&lt;b&gt;File open failed&lt;/b&gt;&lt;p&gt;Audio file &quot;%1&quot; could not be opened</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2407"/>
+        <source>%1. %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2590"/>
         <source>Select audio file to export</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2408"/>
+        <location filename="../main/MainWindow.cpp" line="2591"/>
         <source>Which audio file do you want to export from?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2441"/>
+        <location filename="../main/MainWindow.cpp" line="2624"/>
         <source>Export the selected region only</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2442"/>
+        <location filename="../main/MainWindow.cpp" line="2625"/>
         <source>Export the whole audio file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2446"/>
-        <location filename="../main/MainWindow.cpp" line="2466"/>
-        <location filename="../main/MainWindow.cpp" line="2731"/>
+        <location filename="../main/MainWindow.cpp" line="2629"/>
+        <location filename="../main/MainWindow.cpp" line="2647"/>
+        <location filename="../main/MainWindow.cpp" line="2911"/>
+        <location filename="../main/MainWindow.cpp" line="2985"/>
         <source>Select region to export</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2447"/>
+        <location filename="../main/MainWindow.cpp" line="2630"/>
         <source>Which region from the original audio file do you want to export?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2462"/>
+        <location filename="../main/MainWindow.cpp" line="2643"/>
         <source>Export the selected regions into separate files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2467"/>
+        <location filename="../main/MainWindow.cpp" line="2648"/>
         <source>Multiple regions of the original audio file are selected.
 What do you want to export?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2498"/>
+        <location filename="../main/MainWindow.cpp" line="2679"/>
         <source>Fragment file %1 already exists, aborting</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2542"/>
+        <location filename="../main/MainWindow.cpp" line="2723"/>
         <source>Export multiple audio files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2544"/>
+        <location filename="../main/MainWindow.cpp" line="2725"/>
         <source>Export audio to &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2548"/>
-        <location filename="../main/MainWindow.cpp" line="2675"/>
+        <location filename="../main/MainWindow.cpp" line="2729"/>
+        <location filename="../main/MainWindow.cpp" line="2857"/>
         <source>Failed to write file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2578"/>
+        <location filename="../main/MainWindow.cpp" line="2759"/>
         <source>&lt;b&gt;File open failed&lt;/b&gt;&lt;p&gt;Layer file %1 could not be opened.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2583"/>
-        <location filename="../main/MainWindow.cpp" line="2903"/>
-        <location filename="../main/MainWindow.cpp" line="2935"/>
-        <location filename="../main/MainWindow.cpp" line="2963"/>
-        <location filename="../main/MainWindow.cpp" line="3095"/>
+        <location filename="../main/MainWindow.cpp" line="2764"/>
+        <location filename="../main/MainWindow.cpp" line="3143"/>
+        <location filename="../main/MainWindow.cpp" line="3175"/>
+        <location filename="../main/MainWindow.cpp" line="3208"/>
+        <location filename="../main/MainWindow.cpp" line="3340"/>
         <source>&lt;b&gt;Audio required&lt;/b&gt;&lt;p&gt;Unable to load layer data from &quot;%1&quot; without an audio file.&lt;br&gt;Please load at least one audio file before importing annotations.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2654"/>
+        <location filename="../main/MainWindow.cpp" line="2836"/>
         <source>Sorry, cannot export this layer type to RDF (supported types are: region, note, text, time instants, time values)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3002"/>
+        <location filename="../main/MainWindow.cpp" line="3247"/>
         <source>Enter template name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3007"/>
+        <location filename="../main/MainWindow.cpp" line="3252"/>
         <source>Please enter a name for the saved template:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3011"/>
+        <location filename="../main/MainWindow.cpp" line="3256"/>
         <source>Set as default template for future audio files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3031"/>
+        <location filename="../main/MainWindow.cpp" line="3276"/>
         <source>Template file exists</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3032"/>
+        <location filename="../main/MainWindow.cpp" line="3277"/>
         <source>&lt;b&gt;Template file exists&lt;/b&gt;&lt;p&gt;The template &quot;%1&quot; already exists.&lt;br&gt;Overwrite it?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3314"/>
-        <source>%1: %1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4286"/>
+        <location filename="../main/MainWindow.cpp" line="4743"/>
         <source>http://www.sonicvisualiser.org/doc/reference/%1/en/</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4391"/>
+        <location filename="../main/MainWindow.cpp" line="4847"/>
         <source>&lt;br&gt;With Serd and Sord RDF parser and store &amp;copy; David Robillard</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4392"/>
-        <source>&lt;br&gt;With Dataquay Qt/RDF library &amp;copy; Chris Cannam</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4439"/>
+        <location filename="../main/MainWindow.cpp" line="4895"/>
         <source>Newer version available</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4440"/>
-        <source>&lt;h3&gt;Newer version available&lt;/h3&gt;&lt;p&gt;You are using version %1 of Sonic Visualiser, but version %3 is now available.&lt;/p&gt;&lt;p&gt;Please see the &lt;a href=&quot;http://sonicvisualiser.org/&quot;&gt;Sonic Visualiser website&lt;/a&gt; for more information.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2618"/>
+        <location filename="../main/MainWindow.cpp" line="2799"/>
         <source>Failed to open file %1 for writing</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="438"/>
+        <location filename="../main/MainWindow.cpp" line="477"/>
         <source>Abandon the current %1 session and start a new one</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="455"/>
+        <location filename="../main/MainWindow.cpp" line="494"/>
         <source>&amp;Import More Audio...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="457"/>
+        <location filename="../main/MainWindow.cpp" line="496"/>
         <source>Import an extra audio file into a new pane</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="464"/>
+        <location filename="../main/MainWindow.cpp" line="503"/>
         <source>Replace &amp;Main Audio...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="465"/>
+        <location filename="../main/MainWindow.cpp" line="504"/>
         <source>Replace the main audio file of the session with a different file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="476"/>
+        <location filename="../main/MainWindow.cpp" line="515"/>
         <source>Open &amp;Recent</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="488"/>
+        <location filename="../main/MainWindow.cpp" line="526"/>
         <source>Save the current session into a %1 session file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="499"/>
+        <location filename="../main/MainWindow.cpp" line="536"/>
         <source>Save the current session into a new %1 session file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="560"/>
+        <location filename="../main/MainWindow.cpp" line="612"/>
         <source>Apply Session Template</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="569"/>
+        <location filename="../main/MainWindow.cpp" line="621"/>
         <source>Export Session as Template...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="576"/>
+        <location filename="../main/MainWindow.cpp" line="628"/>
         <source>Manage Exported Templates</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="591"/>
+        <location filename="../main/MainWindow.cpp" line="643"/>
         <source>Exit %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1681"/>
+        <location filename="../main/MainWindow.cpp" line="1771"/>
         <source>Open the %1 reference manual</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1688"/>
+        <location filename="../main/MainWindow.cpp" line="1778"/>
         <source>Open a window showing the keystrokes you can use in %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1693"/>
+        <location filename="../main/MainWindow.cpp" line="1783"/>
         <source>%1 on the &amp;Web</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1694"/>
+        <location filename="../main/MainWindow.cpp" line="1784"/>
         <source>Open the %1 website</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1698"/>
+        <location filename="../main/MainWindow.cpp" line="1788"/>
         <source>&amp;About %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1699"/>
+        <location filename="../main/MainWindow.cpp" line="1789"/>
         <source>Show information about %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2461"/>
+        <location filename="../main/MainWindow.cpp" line="2642"/>
         <source>Export the selected regions into a single file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2463"/>
+        <location filename="../main/MainWindow.cpp" line="2644"/>
         <source>Export the whole file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2642"/>
+        <location filename="../main/MainWindow.cpp" line="2824"/>
         <source>Can&apos;t export non-note layers to MIDI</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2678"/>
+        <location filename="../main/MainWindow.cpp" line="2860"/>
         <source>Export layer to &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2713"/>
+        <location filename="../main/MainWindow.cpp" line="2893"/>
         <source>Export the whole pane (%1x%2 pixels)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2715"/>
+        <location filename="../main/MainWindow.cpp" line="2895"/>
         <source>Export the visible area only (%1x%2 pixels)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2718"/>
+        <location filename="../main/MainWindow.cpp" line="2898"/>
         <source>Export the selection extent (%1x%2 pixels)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2721"/>
+        <location filename="../main/MainWindow.cpp" line="2901"/>
+        <location filename="../main/MainWindow.cpp" line="2977"/>
         <source>Export the selection extent</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2732"/>
+        <location filename="../main/MainWindow.cpp" line="2912"/>
         <source>Which region of the current pane do you want to export as an image?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2740"/>
+        <location filename="../main/MainWindow.cpp" line="2920"/>
         <source>Note: the whole pane is too wide to be exported as a single image.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2765"/>
+        <location filename="../main/MainWindow.cpp" line="2945"/>
         <source>Failed to save image file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2766"/>
+        <location filename="../main/MainWindow.cpp" line="2946"/>
         <source>Failed to save image file %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2879"/>
-        <source>&lt;b&gt;File open failed&lt;/b&gt;&lt;p&gt;Session file &quot;%1&quot; could not be opened</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2899"/>
+        <location filename="../main/MainWindow.cpp" line="3139"/>
         <source>&lt;b&gt;File open failed&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; could not be opened</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2916"/>
+        <location filename="../main/MainWindow.cpp" line="3156"/>
         <source>Open Location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2917"/>
+        <location filename="../main/MainWindow.cpp" line="3157"/>
         <source>Please enter the URL of the location to open:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2930"/>
-        <location filename="../main/MainWindow.cpp" line="2934"/>
-        <location filename="../main/MainWindow.cpp" line="2958"/>
-        <location filename="../main/MainWindow.cpp" line="2962"/>
+        <location filename="../main/MainWindow.cpp" line="3170"/>
+        <location filename="../main/MainWindow.cpp" line="3174"/>
+        <location filename="../main/MainWindow.cpp" line="3203"/>
+        <location filename="../main/MainWindow.cpp" line="3207"/>
         <source>Failed to open location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2931"/>
+        <location filename="../main/MainWindow.cpp" line="3171"/>
         <source>&lt;b&gt;Open failed&lt;/b&gt;&lt;p&gt;URL &quot;%1&quot; could not be opened</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2959"/>
+        <location filename="../main/MainWindow.cpp" line="3204"/>
         <source>&lt;b&gt;Open failed&lt;/b&gt;&lt;p&gt;File or URL &quot;%1&quot; could not be opened</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3089"/>
-        <location filename="../main/MainWindow.cpp" line="3094"/>
+        <location filename="../main/MainWindow.cpp" line="3334"/>
+        <location filename="../main/MainWindow.cpp" line="3339"/>
         <source>Failed to open dropped URL</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3090"/>
+        <location filename="../main/MainWindow.cpp" line="3335"/>
         <source>&lt;b&gt;Open failed&lt;/b&gt;&lt;p&gt;Dropped URL &quot;%1&quot; could not be opened</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3205"/>
+        <location filename="../main/MainWindow.cpp" line="3450"/>
         <source>Export image to &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3226"/>
+        <location filename="../main/MainWindow.cpp" line="3471"/>
         <source>Session modified</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3227"/>
+        <location filename="../main/MainWindow.cpp" line="3472"/>
         <source>&lt;b&gt;Session modified&lt;/b&gt;&lt;p&gt;The current session has been modified.&lt;br&gt;Do you want to save it?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3260"/>
+        <location filename="../main/MainWindow.cpp" line="3505"/>
         <source>Close the current session and create a new one</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3261"/>
+        <location filename="../main/MainWindow.cpp" line="3506"/>
         <source>Add this data to the current session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3265"/>
+        <location filename="../main/MainWindow.cpp" line="3510"/>
         <source>Select target for import</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3266"/>
+        <location filename="../main/MainWindow.cpp" line="3511"/>
         <source>&lt;b&gt;Select a target for import&lt;/b&gt;&lt;p&gt;This RDF document refers to one or more audio files.&lt;br&gt;You already have an audio waveform loaded.&lt;br&gt;What would you like to do with the new data?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3288"/>
-        <location filename="../main/MainWindow.cpp" line="3311"/>
+        <location filename="../main/MainWindow.cpp" line="3533"/>
+        <location filename="../main/MainWindow.cpp" line="3556"/>
         <source>Failed to save file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3289"/>
-        <location filename="../main/MainWindow.cpp" line="3312"/>
+        <location filename="../main/MainWindow.cpp" line="3534"/>
+        <location filename="../main/MainWindow.cpp" line="3557"/>
         <source>&lt;b&gt;Save failed&lt;/b&gt;&lt;p&gt;Session file &quot;%1&quot; could not be saved.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3321"/>
+        <location filename="../main/MainWindow.cpp" line="3566"/>
         <source>Save session as &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3673"/>
+        <location filename="../main/MainWindow.cpp" line="3915"/>
+        <source>Multiplex all of the above</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="3964"/>
         <source>Rename Layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3674"/>
+        <location filename="../main/MainWindow.cpp" line="3965"/>
         <source>New name for this layer:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3765"/>
+        <location filename="../main/MainWindow.cpp" line="4060"/>
         <source>Playback speed: Normal</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3767"/>
-        <source>Playback speed: %1%2%</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="3863"/>
+        <location filename="../main/MainWindow.cpp" line="4189"/>
         <source>Selection: %1 to %2 (duration %3)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3866"/>
+        <location filename="../main/MainWindow.cpp" line="4192"/>
         <source>Visible: %1 to %2 (duration %3)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3914"/>
+        <location filename="../main/MainWindow.cpp" line="4242"/>
         <source>Sample rate mismatch</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3915"/>
+        <location filename="../main/MainWindow.cpp" line="4243"/>
         <source>&lt;b&gt;Wrong sample rate&lt;/b&gt;&lt;p&gt;The sample rate of this audio file (%1 Hz) does not match
 the current playback rate (%2 Hz).&lt;p&gt;The file will play at the wrong speed and pitch.&lt;p&gt;Change the &lt;i&gt;Resample mismatching files on import&lt;/i&gt; option under &lt;i&gt;File&lt;/i&gt; -&gt; &lt;i&gt;Preferences&lt;/i&gt; if you want to alter this behaviour.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3926"/>
-        <location filename="../main/MainWindow.cpp" line="3936"/>
+        <location filename="../main/MainWindow.cpp" line="4254"/>
+        <location filename="../main/MainWindow.cpp" line="4264"/>
         <source>Audio processing overload</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3927"/>
+        <location filename="../main/MainWindow.cpp" line="4255"/>
         <source>&lt;b&gt;Overloaded&lt;/b&gt;&lt;p&gt;Audio effects plugin auditioning has been disabled due to a processing overload.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3937"/>
+        <location filename="../main/MainWindow.cpp" line="4265"/>
         <source>&lt;b&gt;Overloaded&lt;/b&gt;&lt;p&gt;Audio playback speed processing has been reduced to a single channel, due to a processing overload.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4007"/>
+        <location filename="../main/MainWindow.cpp" line="4285"/>
+        <source>Problems loading plugins</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4364"/>
         <source>Add Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4108"/>
+        <location filename="../main/MainWindow.cpp" line="4505"/>
         <source>Reset Counters</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4127"/>
-        <location filename="../main/MainWindow.cpp" line="4134"/>
+        <location filename="../main/MainWindow.cpp" line="4573"/>
+        <location filename="../main/MainWindow.cpp" line="4580"/>
         <source>Failed to generate layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4128"/>
-        <source>&lt;b&gt;Layer generation failed&lt;/b&gt;&lt;p&gt;Failed to generate derived layer.&lt;p&gt;The layer transform &quot;%1&quot; failed:&lt;p&gt;%2</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4135"/>
-        <source>&lt;b&gt;Layer generation failed&lt;/b&gt;&lt;p&gt;Failed to generate a derived layer.&lt;p&gt;The layer transform &quot;%1&quot; failed.&lt;p&gt;No error information is available.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4147"/>
-        <location filename="../main/MainWindow.cpp" line="4181"/>
+        <location filename="../main/MainWindow.cpp" line="4593"/>
+        <location filename="../main/MainWindow.cpp" line="4628"/>
         <source>Warning</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4160"/>
-        <location filename="../main/MainWindow.cpp" line="4167"/>
+        <location filename="../main/MainWindow.cpp" line="4606"/>
+        <location filename="../main/MainWindow.cpp" line="4613"/>
         <source>Failed to regenerate layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4161"/>
+        <location filename="../main/MainWindow.cpp" line="4607"/>
         <source>&lt;b&gt;Layer generation failed&lt;/b&gt;&lt;p&gt;Failed to regenerate derived layer &quot;%1&quot; using new data model as input.&lt;p&gt;The layer transform &quot;%2&quot; failed:&lt;p&gt;%3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4168"/>
+        <location filename="../main/MainWindow.cpp" line="4614"/>
         <source>&lt;b&gt;Layer generation failed&lt;/b&gt;&lt;p&gt;Failed to regenerate derived layer &quot;%1&quot; using new data model as input.&lt;p&gt;The layer transform &quot;%2&quot; failed.&lt;p&gt;No error information is available.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4181"/>
+        <location filename="../main/MainWindow.cpp" line="4628"/>
         <source>&lt;b&gt;Warning when regenerating layer&lt;/b&gt;&lt;p&gt;When regenerating the derived layer &quot;%1&quot; using new data model as input:&lt;p&gt;%2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4191"/>
+        <location filename="../main/MainWindow.cpp" line="4636"/>
         <source>Failed to calculate alignment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4192"/>
-        <source>&lt;b&gt;Alignment calculation failed&lt;/b&gt;&lt;p&gt;Failed to calculate an audio alignment using transform &quot;%1&quot;:&lt;p&gt;%2</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4265"/>
-        <source>Adjust the master playback level</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4267"/>
+        <location filename="../main/MainWindow.cpp" line="4724"/>
         <source>Adjust the master playback speed</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4280"/>
+        <location filename="../main/MainWindow.cpp" line="4737"/>
         <source>http://www.sonicvisualiser.org/</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4300"/>
+        <location filename="../main/MainWindow.cpp" line="4757"/>
         <source>Release %1 : Revision %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4302"/>
+        <location filename="../main/MainWindow.cpp" line="4759"/>
         <source>Release %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4306"/>
+        <location filename="../main/MainWindow.cpp" line="4763"/>
         <source>Unreleased : Revision %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4312"/>
+        <location filename="../main/MainWindow.cpp" line="4769"/>
         <source>&lt;h3&gt;About Sonic Visualiser&lt;/h3&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4313"/>
+        <location filename="../main/MainWindow.cpp" line="4770"/>
         <source>&lt;p&gt;Sonic Visualiser is a program for viewing and exploring audio data for semantic music analysis and annotation.&lt;br&gt;&lt;a href=&quot;http://www.sonicvisualiser.org/&quot;&gt;http://www.sonicvisualiser.org/&lt;/a&gt;&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4314"/>
-        <source>&lt;p&gt;&lt;small&gt;%1 : %2 configuration&lt;/small&gt;&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4316"/>
+        <location filename="../main/MainWindow.cpp" line="4773"/>
         <source>Debug</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4316"/>
+        <location filename="../main/MainWindow.cpp" line="4773"/>
         <source>Release</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4320"/>
-        <source>With Qt v%1 &amp;copy; Nokia Corporation</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4324"/>
+        <location filename="../main/MainWindow.cpp" line="4782"/>
         <source>&lt;br&gt;With JACK audio output library v%1 &amp;copy; Paul Davis and Jack O&apos;Quin</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4326"/>
+        <location filename="../main/MainWindow.cpp" line="4784"/>
         <source>&lt;br&gt;With JACK audio output library &amp;copy; Paul Davis and Jack O&apos;Quin</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4330"/>
+        <location filename="../main/MainWindow.cpp" line="4788"/>
         <source>&lt;br&gt;With PortAudio audio output library &amp;copy; Ross Bencina and Phil Burk</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4334"/>
+        <location filename="../main/MainWindow.cpp" line="4792"/>
         <source>&lt;br&gt;With PulseAudio audio output library v%1 &amp;copy; Lennart Poettering and Pierre Ossman</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4336"/>
+        <location filename="../main/MainWindow.cpp" line="4794"/>
         <source>&lt;br&gt;With PulseAudio audio output library &amp;copy; Lennart Poettering and Pierre Ossman</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4341"/>
+        <location filename="../main/MainWindow.cpp" line="4799"/>
         <source>&lt;br&gt;With Ogg file decoder (oggz v%1, fishsound v%2) &amp;copy; CSIRO Australia</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4343"/>
+        <location filename="../main/MainWindow.cpp" line="4801"/>
         <source>&lt;br&gt;With Ogg file decoder &amp;copy; CSIRO Australia</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4348"/>
+        <location filename="../main/MainWindow.cpp" line="4806"/>
         <source>&lt;br&gt;With MAD mp3 decoder v%1 &amp;copy; Underbit Technologies Inc</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4350"/>
+        <location filename="../main/MainWindow.cpp" line="4808"/>
         <source>&lt;br&gt;With MAD mp3 decoder &amp;copy; Underbit Technologies Inc</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4355"/>
+        <location filename="../main/MainWindow.cpp" line="4813"/>
         <source>&lt;br&gt;With libsamplerate v%1 &amp;copy; Erik de Castro Lopo</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4357"/>
+        <location filename="../main/MainWindow.cpp" line="4815"/>
         <source>&lt;br&gt;With libsamplerate &amp;copy; Erik de Castro Lopo</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4362"/>
+        <location filename="../main/MainWindow.cpp" line="4820"/>
         <source>&lt;br&gt;With libsndfile v%1 &amp;copy; Erik de Castro Lopo</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4364"/>
+        <location filename="../main/MainWindow.cpp" line="4822"/>
         <source>&lt;br&gt;With libsndfile &amp;copy; Erik de Castro Lopo</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4369"/>
+        <location filename="../main/MainWindow.cpp" line="4827"/>
         <source>&lt;br&gt;With FFTW3 v%1 &amp;copy; Matteo Frigo and MIT</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4371"/>
+        <location filename="../main/MainWindow.cpp" line="4829"/>
         <source>&lt;br&gt;With FFTW3 &amp;copy; Matteo Frigo and MIT</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4376"/>
-        <source>&lt;br&gt;With Rubber Band v%1 &amp;copy; Chris Cannam</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4378"/>
-        <source>&lt;br&gt;With Rubber Band &amp;copy; Chris Cannam</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4382"/>
-        <source>&lt;br&gt;With Vamp plugin support (API v%1, host SDK v%2) &amp;copy; Chris Cannam</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4384"/>
+        <location filename="../main/MainWindow.cpp" line="4840"/>
         <source>&lt;br&gt;With LADSPA plugin support (API v%1) &amp;copy; Richard Furse, Paul Davis, Stefan Westerfeld</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4385"/>
+        <location filename="../main/MainWindow.cpp" line="4841"/>
         <source>&lt;br&gt;With DSSI plugin support (API v%1) &amp;copy; Chris Cannam, Steve Harris, Sean Bolton</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4387"/>
+        <location filename="../main/MainWindow.cpp" line="4843"/>
         <source>&lt;br&gt;With Redland RDF datastore v%1 &amp;copy; Dave Beckett and the University of Bristol</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4389"/>
+        <location filename="../main/MainWindow.cpp" line="4845"/>
         <source>&lt;br&gt;With Redland RDF datastore &amp;copy; Dave Beckett and the University of Bristol</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4394"/>
+        <location filename="../main/MainWindow.cpp" line="4850"/>
         <source>&lt;br&gt;With RtMidi &amp;copy; Gary P. Scavone</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4398"/>
+        <location filename="../main/MainWindow.cpp" line="4854"/>
         <source>&lt;br&gt;With liblo Lite OSC library v%1 &amp;copy; Steve Harris</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4400"/>
+        <location filename="../main/MainWindow.cpp" line="4856"/>
         <source>&lt;br&gt;With liblo Lite OSC library &amp;copy; Steve Harris</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4404"/>
+        <location filename="../main/MainWindow.cpp" line="4860"/>
         <source>&lt;/small&gt;&lt;p&gt;&lt;small&gt;The OSC URL for this instance is: &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4411"/>
+        <location filename="../main/MainWindow.cpp" line="4867"/>
         <source>With </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4411"/>
+        <location filename="../main/MainWindow.cpp" line="4867"/>
         <source>Using </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4423"/>
+        <location filename="../main/MainWindow.cpp" line="4879"/>
         <source>About Sonic Visualiser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/OSCHandler.cpp" line="318"/>
+        <location filename="../main/OSCHandler.cpp" line="320"/>
         <source>Add %1 Pane</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3985,208 +4589,221 @@
 <context>
     <name>MainWindowBase</name>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="481"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="661"/>
         <source>%1 (modified)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="496"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="676"/>
         <source> (modified)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="694"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="874"/>
         <source>Cut</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="765"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="945"/>
         <source>Paste</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="869"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="892"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="982"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1001"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1051"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1074"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1164"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1183"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1202"/>
         <source>Add Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="923"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1105"/>
         <source>Add Point at %1 s</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="966"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1148"/>
         <source>Add Item at %1 s</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1042"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1294"/>
         <source>Opening file or URL...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1169"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1435"/>
         <source>Select target for import</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1268"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1687"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1814"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1537"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2006"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2136"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2939"/>
         <source>%1: %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1275"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1544"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2946"/>
         <source>%1: %2 [%3]</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1290"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1331"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1559"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1600"/>
         <source>Import &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1385"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1656"/>
         <source>Opening playlist...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1831"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1855"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2155"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2181"/>
         <source>Importing from RDF...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1590"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1906"/>
         <source>Opening session...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1163"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1429"/>
         <source>Close the current session and start a new one</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1164"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1430"/>
         <source>Replace the main audio file in this session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1165"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1431"/>
         <source>Add the audio file to this session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1170"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1436"/>
         <source>&lt;b&gt;Select a target for import&lt;/b&gt;&lt;p&gt;You already have an audio file loaded.&lt;br&gt;What would you like to do with the new audio file?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1249"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1518"/>
         <source>Import audio file &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1471"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1742"/>
         <source>Import layer XML file &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1505"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1776"/>
         <source>Import MIDI file &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1672"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1770"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1991"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2090"/>
         <source>SV XML file read error:
 %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1685"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2004"/>
         <source>Import session file &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1782"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2102"/>
         <source>Open session template &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1846"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1859"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2172"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2185"/>
         <source>Failed to import RDF</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1847"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2173"/>
         <source>&lt;b&gt;Failed to import RDF&lt;/b&gt;&lt;p&gt;Importing data from RDF document at &quot;%1&quot; failed: %2&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1860"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2186"/>
         <source>&lt;b&gt;Failed to import RDF&lt;/b&gt;&lt;p&gt;No suitable data models found for import from RDF document at &quot;%1&quot;&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1864"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2190"/>
         <source>Import RDF document &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1992"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1997"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2358"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2363"/>
         <source>Couldn&apos;t open audio device</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1993"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2359"/>
         <source>&lt;b&gt;No audio available&lt;/b&gt;&lt;p&gt;Could not open an audio device for playback.&lt;p&gt;Automatic audio device detection failed. Audio playback will not be available during this session.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1998"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2364"/>
         <source>&lt;b&gt;No audio available&lt;/b&gt;&lt;p&gt;Failed to open your preferred audio device (&quot;%1&quot;).&lt;p&gt;Audio playback will not be available during this session.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2079"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2092"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2129"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="3571"/>
+        <source>Recording: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2481"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2494"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2532"/>
         <source>Failed to write file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2080"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2093"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2130"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2482"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2495"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2533"/>
         <source>&lt;b&gt;Save failed&lt;/b&gt;&lt;p&gt;Failed to write to file &quot;%1&quot;: %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2678"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2959"/>
+        <source>Import Recorded Audio</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="3254"/>
         <source>Add Pane</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2723"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="3300"/>
         <source>Remove Pane</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2746"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="3127"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="3323"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="3740"/>
         <source>Delete Pane</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2960"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="3559"/>
         <source>Playing: %1 of %2 (%3 remaining)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -4194,77 +4811,77 @@
 <context>
     <name>ModelDataTableDialog</name>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="45"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="45"/>
         <source>Data Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="49"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="49"/>
         <source>Playback Toolbar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="51"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="51"/>
         <source>Play Mode Toolbar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="55"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="55"/>
         <source>Track Playback</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="56"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="56"/>
         <source>Toggle tracking of playback position</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="62"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="62"/>
         <source>Edit Toolbar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="64"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="64"/>
         <source>Insert New Item</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="65"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="65"/>
         <source>Insert</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="66"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="66"/>
         <source>Insert a new item</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="70"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="70"/>
         <source>Delete Selected Items</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="71"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="71"/>
         <source>Delete</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="72"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="72"/>
         <source>Delete the selected item or items</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="96"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="96"/>
         <source>Data in Layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="107"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="107"/>
         <source>Find:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="108"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="108"/>
         <source> </source>
         <translation type="unfinished"></translation>
     </message>
@@ -4272,22 +4889,22 @@
 <context>
     <name>ModelMetadataModel</name>
     <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="227"/>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="227"/>
         <source>Type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="228"/>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="228"/>
         <source>Name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="229"/>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="229"/>
         <source>Maker</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="230"/>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="230"/>
         <source>Source</source>
         <translation type="unfinished"></translation>
     </message>
@@ -4295,88 +4912,106 @@
 <context>
     <name>ModelTransformerFactory</name>
     <message>
-        <location filename="../../svcore/transform/ModelTransformerFactory.cpp" line="76"/>
+        <location filename="../svcore/transform/ModelTransformerFactory.cpp" line="78"/>
         <source>%1 &lt;%2&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/ModelTransformerFactory.cpp" line="217"/>
+        <location filename="../svcore/transform/ModelTransformerFactory.cpp" line="238"/>
         <source>%1: %2</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
+    <name>NetworkPermissionTester</name>
+    <message>
+        <location filename="../main/NetworkPermissionTester.cpp" line="44"/>
+        <source>Welcome to Sonic Visualiser</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/NetworkPermissionTester.cpp" line="53"/>
+        <source>&lt;h2&gt;Welcome to Sonic Visualiser!&lt;/h2&gt;&lt;p&gt;&lt;img src=&quot;:icons/qm-logo-smaller.png&quot; style=&quot;float:right&quot;&gt;Sonic Visualiser is a program for viewing and exploring audio data for semantic music analysis and annotation.&lt;/p&gt;&lt;p&gt;Developed in the Centre for Digital Music at Queen Mary, University of London, Sonic Visualiser is provided free as open source software under the GNU General Public License.&lt;/p&gt;&lt;p&gt;&lt;hr&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Before we go on...&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Sonic Visualiser would like to make networking connections and open a network port.&lt;/p&gt;&lt;p&gt;This is to:&lt;/p&gt;&lt;ul&gt;&lt;li&gt; Find information about available and installed plugins;&lt;/li&gt;&lt;li&gt; Support the use of Open Sound Control, where configured; and&lt;/li&gt;&lt;li&gt; Tell you when updates are available.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;No personal information will be sent, no tracking is carried out, and all requests happen in the background without interrupting your work.&lt;/p&gt;&lt;p&gt;We recommend that you allow this, because it makes Sonic Visualiser more useful. But if you do not wish to do so, please un-check the box below.&lt;br&gt;&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/NetworkPermissionTester.cpp" line="69"/>
+        <source>Allow this</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>NoteLayer</name>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="45"/>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="46"/>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="807"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="57"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="58"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="898"/>
         <source>New Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="83"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="95"/>
         <source>Vertical Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="84"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="96"/>
         <source>Scale Units</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="100"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="112"/>
         <source>Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="142"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="161"/>
         <source>Auto-Align</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="143"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="162"/>
         <source>Linear</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="144"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="163"/>
         <source>Log</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="145"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="164"/>
         <source>MIDI Notes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="447"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="474"/>
         <source>In progress</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="449"/>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="472"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="476"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="499"/>
         <source>No local points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="486"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="513"/>
         <source>%1 (%2, %3 Hz)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="493"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="520"/>
         <source>%1 Hz (%2, %3)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="499"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="526"/>
         <source>%1 %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="506"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="533"/>
         <source>Time:	%1
 Pitch:	%2
 Duration:	%3
@@ -4384,7 +5019,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="511"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="538"/>
         <source>Time:	%1
 Pitch:	%2
 Duration:	%3
@@ -4392,68 +5027,68 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="812"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="903"/>
         <source>Draw Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="888"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="979"/>
         <source>Erase Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="940"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1031"/>
         <source>Drag Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="961"/>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1009"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1052"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1100"/>
         <source>Edit Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="963"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1054"/>
         <source>Relocate Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="966"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1057"/>
         <source>Change Point Value</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1025"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1116"/>
         <source>Drag Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1050"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1141"/>
         <source>Resize Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1089"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1180"/>
         <source>Delete Selected Points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1135"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1226"/>
         <source>Re-align pasted items?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1136"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1227"/>
         <source>The items you are pasting came from a layer with different source material from this one.  Do you want to re-align them in time, to match the source material for this layer?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1150"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1241"/>
         <source>Paste</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1221"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1312"/>
         <source>Record Note</source>
         <translation type="unfinished"></translation>
     </message>
@@ -4461,47 +5096,47 @@
 <context>
     <name>NoteModel</name>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="126"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="129"/>
         <source>Note</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="166"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="164"/>
         <source>Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="167"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="165"/>
         <source>Frame</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="168"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="166"/>
         <source>Pitch</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="169"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="167"/>
         <source>Duration</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="170"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="168"/>
         <source>Level</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="171"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="169"/>
         <source>Label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="172"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="170"/>
         <source>Unknown</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="202"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="200"/>
         <source>Edit Data</source>
         <translation type="unfinished"></translation>
     </message>
@@ -4509,7 +5144,7 @@
 <context>
     <name>OggVorbisFileReader</name>
     <message>
-        <location filename="../../svcore/data/fileio/OggVorbisFileReader.cpp" line="76"/>
+        <location filename="../svcore/data/fileio/OggVorbisFileReader.cpp" line="82"/>
         <source>Decoding %1...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -4517,12 +5152,12 @@
 <context>
     <name>Overview</name>
     <message>
-        <location filename="../../svgui/view/Overview.cpp" line="32"/>
+        <location filename="../svgui/view/Overview.cpp" line="33"/>
         <source>Overview</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Overview.cpp" line="278"/>
+        <location filename="../svgui/view/Overview.cpp" line="359"/>
         <source>Click and drag to navigate; double-click to jump</source>
         <translation type="unfinished"></translation>
     </message>
@@ -4530,465 +5165,300 @@
 <context>
     <name>Pane</name>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="128"/>
+        <location filename="../svgui/view/Pane.cpp" line="143"/>
         <source>Horizontal Zoom</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="154"/>
+        <location filename="../svgui/view/Pane.cpp" line="169"/>
         <source>Vertical Zoom</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="175"/>
+        <location filename="../svgui/view/Pane.cpp" line="190"/>
         <source>Reset zoom to default</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="657"/>
+        <location filename="../svgui/view/Pane.cpp" line="680"/>
         <source>Some lengthy prefix:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="787"/>
+        <location filename="../svgui/view/Pane.cpp" line="845"/>
         <source>Reference</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="789"/>
-        <location filename="../../svgui/view/Pane.cpp" line="793"/>
+        <location filename="../svgui/view/Pane.cpp" line="847"/>
+        <location filename="../svgui/view/Pane.cpp" line="851"/>
         <source>Unaligned</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="795"/>
+        <location filename="../svgui/view/Pane.cpp" line="853"/>
         <source>Aligning: %1%</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="797"/>
+        <location filename="../svgui/view/Pane.cpp" line="855"/>
         <source>Aligned</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="839"/>
+        <location filename="../svgui/view/Pane.cpp" line="897"/>
         <source>%1 - %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="949"/>
-        <location filename="../../svgui/view/Pane.cpp" line="965"/>
+        <location filename="../svgui/view/Pane.cpp" line="1007"/>
+        <location filename="../svgui/view/Pane.cpp" line="1023"/>
         <source>+%1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1015"/>
+        <location filename="../svgui/view/Pane.cpp" line="1072"/>
         <source>(R)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1018"/>
+        <location filename="../svgui/view/Pane.cpp" line="1070"/>
         <source>(X)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1022"/>
+        <location filename="../svgui/view/Pane.cpp" line="1076"/>
         <source>%1 / %2Hz%3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1209"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1215"/>
+        <location filename="../svgui/view/Pane.cpp" line="1260"/>
+        <location filename="../svgui/view/Pane.cpp" line="1266"/>
         <source>Zoom</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1210"/>
+        <location filename="../svgui/view/Pane.cpp" line="1261"/>
         <source>Zoom In</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1210"/>
+        <location filename="../svgui/view/Pane.cpp" line="1261"/>
         <source>Wheel Up</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1211"/>
+        <location filename="../svgui/view/Pane.cpp" line="1262"/>
         <source>Zoom Out</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1211"/>
+        <location filename="../svgui/view/Pane.cpp" line="1262"/>
         <source>Wheel Down</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1213"/>
+        <location filename="../svgui/view/Pane.cpp" line="1264"/>
         <source>General Pane Mouse Actions</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1215"/>
+        <location filename="../svgui/view/Pane.cpp" line="1266"/>
         <source>Wheel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1216"/>
+        <location filename="../svgui/view/Pane.cpp" line="1267"/>
         <source>Zoom in or out in time axis</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1217"/>
+        <location filename="../svgui/view/Pane.cpp" line="1268"/>
         <source>Scroll</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1217"/>
+        <location filename="../svgui/view/Pane.cpp" line="1268"/>
         <source>Ctrl+Wheel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1218"/>
+        <location filename="../svgui/view/Pane.cpp" line="1269"/>
         <source>Scroll rapidly left or right in time axis</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1219"/>
+        <location filename="../svgui/view/Pane.cpp" line="1270"/>
         <source>Zoom Vertically</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1219"/>
+        <location filename="../svgui/view/Pane.cpp" line="1270"/>
         <source>Shift+Wheel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1220"/>
+        <location filename="../svgui/view/Pane.cpp" line="1271"/>
         <source>Zoom in or out in the vertical axis</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1221"/>
+        <location filename="../svgui/view/Pane.cpp" line="1272"/>
         <source>Scroll Vertically</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1221"/>
+        <location filename="../svgui/view/Pane.cpp" line="1272"/>
         <source>Alt+Wheel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1222"/>
+        <location filename="../svgui/view/Pane.cpp" line="1273"/>
         <source>Scroll up or down in the vertical axis</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1223"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1232"/>
+        <location filename="../svgui/view/Pane.cpp" line="1274"/>
         <source>Navigate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1223"/>
+        <location filename="../svgui/view/Pane.cpp" line="1274"/>
         <source>Middle</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1224"/>
+        <location filename="../svgui/view/Pane.cpp" line="1275"/>
         <source>Click middle button and drag to navigate with any tool</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1225"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1236"/>
+        <location filename="../svgui/view/Pane.cpp" line="1276"/>
         <source>Relocate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1225"/>
+        <location filename="../svgui/view/Pane.cpp" line="1276"/>
         <source>Double-Click Middle</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1226"/>
+        <location filename="../svgui/view/Pane.cpp" line="1277"/>
         <source>Double-click middle button to relocate with any tool</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1227"/>
+        <location filename="../svgui/view/Pane.cpp" line="1278"/>
         <source>Menu</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1227"/>
+        <location filename="../svgui/view/Pane.cpp" line="1278"/>
         <source>Right</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1228"/>
+        <location filename="../svgui/view/Pane.cpp" line="1279"/>
         <source>Show pane context menu</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1230"/>
-        <source>Navigate Tool Mouse Actions</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1232"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1242"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1254"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1260"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1264"/>
-        <source>Left</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1233"/>
-        <source>Click left button and drag to move around</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1234"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1268"/>
-        <source>Zoom to Area</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1234"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1250"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1268"/>
-        <source>Shift+Left</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1235"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1269"/>
-        <source>Shift-click left button and drag to zoom to a rectangular area</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1236"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1238"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1256"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1266"/>
-        <source>Double-Click Left</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1237"/>
-        <source>Double-click left button to jump to clicked location</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1238"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1256"/>
-        <source>Edit</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1239"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1257"/>
-        <source>Double-click left button on an item to edit it</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1241"/>
-        <source>Select Tool Mouse Actions</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1242"/>
-        <source>Select</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1243"/>
-        <source>Click left button and drag to select region; drag region edge to resize</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1244"/>
-        <source>Multi Select</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1244"/>
-        <source>Ctrl+Left</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1246"/>
-        <source>Cmd-click left button and drag to select an additional region</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1248"/>
-        <source>Ctrl-click left button and drag to select an additional region</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1250"/>
-        <source>Fine Select</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1251"/>
-        <source>Shift-click left button and drag to select without snapping to items or grid</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1253"/>
-        <source>Edit Tool Mouse Actions</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1254"/>
-        <source>Move</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1255"/>
-        <source>Click left button on an item or selected region and drag to move</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1259"/>
-        <source>Draw Tool Mouse Actions</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1260"/>
-        <source>Draw</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1261"/>
-        <source>Click left button and drag to create new item</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1263"/>
-        <source>Measure Tool Mouse Actions</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1264"/>
-        <source>Measure Area</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1265"/>
-        <source>Click left button and drag to measure a rectangular area</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1266"/>
-        <source>Measure Item</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1267"/>
-        <source>Click left button and drag to measure extents of an item or shape</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2234"/>
+        <location filename="../svgui/view/Pane.cpp" line="2515"/>
         <source>Enter new range</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2235"/>
+        <location filename="../svgui/view/Pane.cpp" line="2516"/>
         <source>New vertical display range, from %1 to %2 %4:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2354"/>
+        <location filename="../svgui/view/Pane.cpp" line="2638"/>
         <source>Drag Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2361"/>
+        <location filename="../svgui/view/Pane.cpp" line="2645"/>
         <source>Resize Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2520"/>
+        <location filename="../svgui/view/Pane.cpp" line="2809"/>
         <source>Click and drag to navigate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2531"/>
+        <location filename="../svgui/view/Pane.cpp" line="2820"/>
         <source>Click and drag to select a range; hold Shift to avoid snapping to items; hold Cmd for multi-select; middle-click and drag to navigate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2533"/>
+        <location filename="../svgui/view/Pane.cpp" line="2822"/>
         <source>Click and drag to select a range; hold Cmd for multi-select; middle-click and drag to navigate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2537"/>
+        <location filename="../svgui/view/Pane.cpp" line="2826"/>
         <source>Click and drag to select a range; hold Shift to avoid snapping to items; hold Ctrl for multi-select; middle-click and drag to navigate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2539"/>
+        <location filename="../svgui/view/Pane.cpp" line="2828"/>
         <source>Click and drag to select a range; hold Ctrl for multi-select; middle-click and drag to navigate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2548"/>
+        <location filename="../svgui/view/Pane.cpp" line="2837"/>
         <source>Click and drag to move the selection boundary</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2553"/>
+        <location filename="../svgui/view/Pane.cpp" line="2842"/>
         <source>Click and drag to select a range; hold Shift to avoid snapping to items; middle-click to navigate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2555"/>
+        <location filename="../svgui/view/Pane.cpp" line="2844"/>
         <source>Click and drag to select a range; middle-click and drag to navigate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2563"/>
+        <location filename="../svgui/view/Pane.cpp" line="2852"/>
         <source>Click to add a new item in the active layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2570"/>
+        <location filename="../svgui/view/Pane.cpp" line="2859"/>
         <source>Click to erase an item from the active layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2577"/>
+        <location filename="../svgui/view/Pane.cpp" line="2866"/>
         <source>Click and drag an item in the active layer to move it; hold Shift to override initial resistance</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2582"/>
+        <location filename="../svgui/view/Pane.cpp" line="2871"/>
         <source>Click and drag to move all items in the selected range</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2598"/>
+        <location filename="../svgui/view/Pane.cpp" line="2887"/>
         <source>Click and drag to adjust the visible range of the vertical scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2600"/>
+        <location filename="../svgui/view/Pane.cpp" line="2889"/>
         <source>Click and drag to adjust the vertical zoom level</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2602"/>
+        <location filename="../svgui/view/Pane.cpp" line="2891"/>
         <source>Click and drag to adjust the horizontal zoom level</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2604"/>
+        <location filename="../svgui/view/Pane.cpp" line="2893"/>
         <source>Reset horizontal and vertical zoom levels to their defaults</source>
         <translation type="unfinished"></translation>
     </message>
@@ -4996,45 +5466,40 @@
 <context>
     <name>PlayParameterRepository</name>
     <message>
-        <location filename="../../svcore/base/PlayParameterRepository.cpp" line="206"/>
+        <location filename="../svcore/base/PlayParameterRepository.cpp" line="182"/>
         <source>Adjust Playback Parameters</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PlayParameterRepository.cpp" line="211"/>
+        <location filename="../svcore/base/PlayParameterRepository.cpp" line="187"/>
         <source>Change Playback Mute State</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PlayParameterRepository.cpp" line="216"/>
+        <location filename="../svcore/base/PlayParameterRepository.cpp" line="192"/>
         <source>Change Playback Gain</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PlayParameterRepository.cpp" line="221"/>
+        <location filename="../svcore/base/PlayParameterRepository.cpp" line="197"/>
         <source>Change Playback Pan</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PlayParameterRepository.cpp" line="226"/>
-        <source>Change Playback Plugin</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svcore/base/PlayParameterRepository.cpp" line="231"/>
-        <source>Configure Playback Plugin</source>
+        <location filename="../svcore/base/PlayParameterRepository.cpp" line="202"/>
+        <source>Change Playback Sample</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>PluginParameterBox</name>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterBox.cpp" line="61"/>
+        <location filename="../svgui/widgets/PluginParameterBox.cpp" line="61"/>
         <source>This plugin has no adjustable parameters.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterBox.cpp" line="82"/>
+        <location filename="../svgui/widgets/PluginParameterBox.cpp" line="82"/>
         <source>Program</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5042,127 +5507,127 @@
 <context>
     <name>PluginParameterDialog</name>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="54"/>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="191"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="56"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="193"/>
         <source>Plugin Parameters</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="102"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="104"/>
         <source>Name:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="125"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="127"/>
         <source>Version:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="138"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="140"/>
         <source>Maker:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="144"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="146"/>
         <source>Copyright:  </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="156"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="158"/>
         <source>Output:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="175"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="177"/>
         <source>Input Material</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="184"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="186"/>
         <source>Restrict to selection extents</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="217"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="219"/>
         <source>Channels</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="223"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="225"/>
         <source>Processing</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="233"/>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="604"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="235"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="606"/>
         <source>Advanced &gt;&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="322"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="324"/>
         <source>Channel mismatch</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="323"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="325"/>
         <source>This plugin requires at least %1 input channels, but only %2 %3 available.  The plugin probably will not work correctly.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="323"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="325"/>
         <source>are</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="323"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="325"/>
         <source>is</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="340"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="342"/>
         <source>This plugin accepts no more than %1 input channels,
 but %2 are available.  Only the first %3 will be used.
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="347"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="349"/>
         <source>This plugin only has a single channel input,
 but the source has %1 channels.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="350"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="352"/>
         <source>Use mean of source channels</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="352"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="354"/>
         <source>Use channel %1 only</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="404"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="406"/>
         <source>Window size:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="406"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="408"/>
         <source>Audio frames per block:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="431"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="433"/>
         <source>Window increment:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="455"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="457"/>
         <source>Window shape:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="599"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="601"/>
         <source>Advanced &lt;&lt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5170,214 +5635,259 @@
 <context>
     <name>Preferences</name>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="106"/>
+        <location filename="../svcore/base/Preferences.cpp" line="121"/>
         <source>Spectrogram y-axis interpolation:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="109"/>
+        <location filename="../svcore/base/Preferences.cpp" line="124"/>
         <source>Spectrogram x-axis interpolation:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="112"/>
+        <location filename="../svcore/base/Preferences.cpp" line="127"/>
         <source>Frequency of concert A</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="115"/>
+        <location filename="../svcore/base/Preferences.cpp" line="130"/>
         <source>Property box layout</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="118"/>
+        <location filename="../svcore/base/Preferences.cpp" line="133"/>
         <source>Spectral analysis window shape</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="121"/>
+        <location filename="../svcore/base/Preferences.cpp" line="136"/>
         <source>Playback resampler type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="124"/>
+        <location filename="../svcore/base/Preferences.cpp" line="139"/>
+        <source>Normalise audio signal when reading from audio file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="142"/>
         <source>Omit temporaries from Recent Files menu</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="127"/>
+        <location filename="../svcore/base/Preferences.cpp" line="145"/>
         <source>Resample mismatching files on import</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="130"/>
+        <location filename="../svcore/base/Preferences.cpp" line="148"/>
+        <source>Load mp3 files in gapless mode</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="151"/>
+        <source>Single fixed sample rate to resample all files to</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="154"/>
         <source>Location for cache file directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="133"/>
+        <location filename="../svcore/base/Preferences.cpp" line="157"/>
         <source>Background colour preference</source>
         <translation type="unfinished">Background color preference</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="136"/>
-        <source>Time display format</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="139"/>
+        <location filename="../svcore/base/Preferences.cpp" line="160"/>
+        <source>Time display precision</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="163"/>
+        <source>Use hours:minutes:seconds format</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="166"/>
+        <source>Label middle C as</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="169"/>
         <source>Font size for text overlays</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="142"/>
+        <location filename="../svcore/base/Preferences.cpp" line="172"/>
         <source>Show splash screen on startup</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="270"/>
+        <location filename="../svcore/base/Preferences.cpp" line="329"/>
         <source>Show boxes for all panes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="271"/>
+        <location filename="../svcore/base/Preferences.cpp" line="330"/>
         <source>Show box for current pane only</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="275"/>
+        <location filename="../svcore/base/Preferences.cpp" line="334"/>
         <source>Rectangular</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="276"/>
+        <location filename="../svcore/base/Preferences.cpp" line="335"/>
         <source>Triangular</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="277"/>
+        <location filename="../svcore/base/Preferences.cpp" line="336"/>
         <source>Hamming</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="278"/>
+        <location filename="../svcore/base/Preferences.cpp" line="337"/>
         <source>Hann</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="279"/>
+        <location filename="../svcore/base/Preferences.cpp" line="338"/>
         <source>Blackman</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="280"/>
+        <location filename="../svcore/base/Preferences.cpp" line="339"/>
         <source>Gaussian</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="281"/>
+        <location filename="../svcore/base/Preferences.cpp" line="340"/>
         <source>Parzen</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="282"/>
+        <location filename="../svcore/base/Preferences.cpp" line="341"/>
         <source>Nuttall</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="283"/>
+        <location filename="../svcore/base/Preferences.cpp" line="342"/>
         <source>Blackman-Harris</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="288"/>
+        <location filename="../svcore/base/Preferences.cpp" line="347"/>
         <source>Fastest</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="289"/>
+        <location filename="../svcore/base/Preferences.cpp" line="348"/>
         <source>Standard</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="290"/>
+        <location filename="../svcore/base/Preferences.cpp" line="349"/>
         <source>Highest quality</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="295"/>
-        <location filename="../../svcore/base/Preferences.cpp" line="303"/>
+        <location filename="../svcore/base/Preferences.cpp" line="354"/>
+        <location filename="../svcore/base/Preferences.cpp" line="362"/>
         <source>None</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="296"/>
-        <location filename="../../svcore/base/Preferences.cpp" line="304"/>
+        <location filename="../svcore/base/Preferences.cpp" line="355"/>
+        <location filename="../svcore/base/Preferences.cpp" line="363"/>
         <source>Linear interpolation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="297"/>
+        <location filename="../svcore/base/Preferences.cpp" line="356"/>
         <source>4 x Oversampling</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="298"/>
+        <location filename="../svcore/base/Preferences.cpp" line="357"/>
         <source>4 x Oversampling with interpolation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="309"/>
+        <location filename="../svcore/base/Preferences.cpp" line="368"/>
         <source>Follow desktop theme</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="310"/>
+        <location filename="../svcore/base/Preferences.cpp" line="369"/>
         <source>Dark background</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="311"/>
+        <location filename="../svcore/base/Preferences.cpp" line="370"/>
         <source>Light background</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="316"/>
+        <location filename="../svcore/base/Preferences.cpp" line="375"/>
         <source>Standard (to millisecond)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="317"/>
+        <location filename="../svcore/base/Preferences.cpp" line="376"/>
         <source>High resolution (to microsecond)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="318"/>
+        <location filename="../svcore/base/Preferences.cpp" line="377"/>
         <source>24 FPS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="319"/>
+        <location filename="../svcore/base/Preferences.cpp" line="378"/>
         <source>25 FPS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="320"/>
+        <location filename="../svcore/base/Preferences.cpp" line="379"/>
         <source>30 FPS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="321"/>
+        <location filename="../svcore/base/Preferences.cpp" line="380"/>
         <source>50 FPS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="322"/>
+        <location filename="../svcore/base/Preferences.cpp" line="381"/>
         <source>60 FPS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="332"/>
+        <location filename="../svcore/base/Preferences.cpp" line="386"/>
+        <source>C0 - middle of octave scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="387"/>
+        <source>C3 - common MIDI sequencer convention</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="388"/>
+        <source>C4 - ASA American standard</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="389"/>
+        <source>C5 - used in Cakewalk and others</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="399"/>
         <source>Preferences</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5385,132 +5895,207 @@
 <context>
     <name>PreferencesDialog</name>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="50"/>
+        <location filename="../main/PreferencesDialog.cpp" line="63"/>
         <source>Sonic Visualiser: Application Preferences</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="64"/>
+        <location filename="../main/PreferencesDialog.cpp" line="77"/>
         <source>Apply</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="179"/>
+        <location filename="../main/PreferencesDialog.cpp" line="151"/>
+        <source>Green</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="238"/>
+        <location filename="../main/PreferencesDialog.cpp" line="654"/>
+        <location filename="../main/PreferencesDialog.cpp" line="669"/>
+        <source>(auto)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="272"/>
         <source>&lt;home directory&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="215"/>
+        <location filename="../main/PreferencesDialog.cpp" line="322"/>
         <source>Follow system locale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="229"/>
+        <location filename="../main/PreferencesDialog.cpp" line="336"/>
         <source>Russian</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="230"/>
+        <location filename="../main/PreferencesDialog.cpp" line="337"/>
         <source>British English</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="231"/>
+        <location filename="../main/PreferencesDialog.cpp" line="338"/>
         <source>American English</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="232"/>
+        <location filename="../main/PreferencesDialog.cpp" line="339"/>
         <source>Czech</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="277"/>
-        <location filename="../main/PreferencesDialog.cpp" line="281"/>
-        <location filename="../main/PreferencesDialog.cpp" line="288"/>
-        <location filename="../main/PreferencesDialog.cpp" line="296"/>
-        <location filename="../main/PreferencesDialog.cpp" line="313"/>
-        <location filename="../main/PreferencesDialog.cpp" line="319"/>
-        <location filename="../main/PreferencesDialog.cpp" line="325"/>
-        <location filename="../main/PreferencesDialog.cpp" line="330"/>
-        <location filename="../main/PreferencesDialog.cpp" line="335"/>
-        <location filename="../main/PreferencesDialog.cpp" line="352"/>
-        <location filename="../main/PreferencesDialog.cpp" line="367"/>
+        <location filename="../main/PreferencesDialog.cpp" line="406"/>
+        <location filename="../main/PreferencesDialog.cpp" line="428"/>
+        <location filename="../main/PreferencesDialog.cpp" line="434"/>
+        <location filename="../main/PreferencesDialog.cpp" line="439"/>
+        <location filename="../main/PreferencesDialog.cpp" line="444"/>
+        <location filename="../main/PreferencesDialog.cpp" line="461"/>
+        <location filename="../main/PreferencesDialog.cpp" line="466"/>
+        <location filename="../main/PreferencesDialog.cpp" line="481"/>
+        <location filename="../main/PreferencesDialog.cpp" line="565"/>
+        <location filename="../main/PreferencesDialog.cpp" line="570"/>
+        <location filename="../main/PreferencesDialog.cpp" line="587"/>
+        <location filename="../main/PreferencesDialog.cpp" line="591"/>
+        <location filename="../main/PreferencesDialog.cpp" line="595"/>
+        <location filename="../main/PreferencesDialog.cpp" line="600"/>
         <source>%1:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="277"/>
+        <location filename="../main/PreferencesDialog.cpp" line="423"/>
+        <source>Overview waveform colour:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="489"/>
+        <source>Run Vamp plugins in separate process:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="505"/>
+        <source>Default session template when loading audio files:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="512"/>
+        <source>(Use &quot;%1&quot; in the File menu to add to these.)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="513"/>
+        <source>Export Session as Template...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="555"/>
+        <source>Audio service:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="559"/>
+        <source>Audio playback device:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="562"/>
+        <source>Audio record device:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="578"/>
+        <source>A&amp;udio I/O</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="587"/>
         <source>User interface language</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="293"/>
-        <source>Playback audio device:</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/PreferencesDialog.cpp" line="304"/>
-        <source>&amp;General</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/PreferencesDialog.cpp" line="343"/>
+        <location filename="../main/PreferencesDialog.cpp" line="591"/>
+        <source>Allow network usage</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="401"/>
+        <source>Draw layers at Retina resolution:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="411"/>
+        <source>Default spectrogram colour:</source>
+        <translation type="unfinished">Default spectrogram color:</translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="415"/>
+        <source>Default melodic spectrogram colour:</source>
+        <translation type="unfinished">Default melodic spectrogram color:</translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="419"/>
+        <source>Default colour 3D plot colour:</source>
+        <translation type="unfinished">Default color 3d plot color:</translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="452"/>
         <source>&amp;Appearance</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="377"/>
+        <location filename="../main/PreferencesDialog.cpp" line="496"/>
         <source>Anal&amp;ysis</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="386"/>
-        <source>Default session template for audio files:</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/PreferencesDialog.cpp" line="397"/>
+        <location filename="../main/PreferencesDialog.cpp" line="520"/>
         <source>Standard Waveform</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="422"/>
+        <location filename="../main/PreferencesDialog.cpp" line="545"/>
         <source>Session &amp;Template</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="427"/>
+        <location filename="../main/PreferencesDialog.cpp" line="610"/>
+        <source>&amp;Other</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="615"/>
         <source>OK</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="428"/>
+        <location filename="../main/PreferencesDialog.cpp" line="616"/>
         <source>Cancel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="544"/>
+        <location filename="../main/PreferencesDialog.cpp" line="862"/>
         <source>Select a directory to create cache subdirectory in</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="621"/>
+        <location filename="../main/PreferencesDialog.cpp" line="994"/>
         <source>Preferences</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="622"/>
+        <location filename="../main/PreferencesDialog.cpp" line="995"/>
         <source>&lt;b&gt;Restart required&lt;/b&gt;&lt;p&gt;One or more of the application preferences you have changed may not take full effect until Sonic Visualiser is restarted.&lt;/p&gt;&lt;p&gt;Please exit and restart the application now if you want these changes to take effect immediately.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="643"/>
+        <location filename="../main/PreferencesDialog.cpp" line="1026"/>
         <source>Preferences Changed</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="644"/>
+        <location filename="../main/PreferencesDialog.cpp" line="1027"/>
         <source>Some preferences have been changed but not applied.
 Apply them before closing?</source>
         <translation type="unfinished"></translation>
@@ -5519,7 +6104,7 @@
 <context>
     <name>ProgressDialog</name>
     <message>
-        <location filename="../../svgui/widgets/ProgressDialog.cpp" line="28"/>
+        <location filename="../svgui/widgets/ProgressDialog.cpp" line="28"/>
         <source>Cancel</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5527,78 +6112,73 @@
 <context>
     <name>PropertyBox</name>
     <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="155"/>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="219"/>
         <source>Show</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="172"/>
-        <source>Play</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="210"/>
-        <source>Playback Gain</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="212"/>
-        <source>dB</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="236"/>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="238"/>
-        <source>Playback Pan / Balance</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="468"/>
         <source>Add New Colour...</source>
-        <translation type="unfinished">Add New Color...</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="654"/>
+        <translation type="obsolete">Add New Color...</translation>
+    </message>
+    <message>
         <source>Name New Colour</source>
-        <translation type="unfinished">Name New Color</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="655"/>
+        <translation type="obsolete">Name New Color</translation>
+    </message>
+    <message>
         <source>Enter a name for the new colour:</source>
-        <translation type="unfinished">Enter a name for the new color:</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="657"/>
+        <translation type="obsolete">Enter a name for the new color:</translation>
+    </message>
+    <message>
         <source>Prefer black background for this colour</source>
-        <translation type="unfinished">Prefer black background for this color</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="829"/>
+        <translation type="obsolete">Prefer black background for this color</translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="169"/>
+        <source>Click to toggle playback</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="741"/>
+        <source>Set playback clip:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="802"/>
+        <source>Adjust playback level and pan of %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="812"/>
+        <source>Change sound used for playback (currently &quot;%1&quot;)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="826"/>
         <source> (current value: %1%2)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="831"/>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="828"/>
         <source> (current value: %1)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="836"/>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="833"/>
         <source>Toggle Visibility of %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="838"/>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="835"/>
         <source>Toggle Playback of %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="842"/>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="839"/>
         <source>Toggle %1 property of %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="845"/>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="842"/>
         <source>Adjust %1 property of %2%3</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5606,37 +6186,37 @@
 <context>
     <name>PropertyContainer</name>
     <message>
-        <location filename="../../svcore/base/PropertyContainer.cpp" line="151"/>
+        <location filename="../svcore/base/PropertyContainer.cpp" line="157"/>
         <source>yes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PropertyContainer.cpp" line="152"/>
+        <location filename="../svcore/base/PropertyContainer.cpp" line="158"/>
         <source>on</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PropertyContainer.cpp" line="153"/>
+        <location filename="../svcore/base/PropertyContainer.cpp" line="159"/>
         <source>true</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PropertyContainer.cpp" line="155"/>
+        <location filename="../svcore/base/PropertyContainer.cpp" line="161"/>
         <source>no</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PropertyContainer.cpp" line="156"/>
+        <location filename="../svcore/base/PropertyContainer.cpp" line="162"/>
         <source>off</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PropertyContainer.cpp" line="157"/>
+        <location filename="../svcore/base/PropertyContainer.cpp" line="163"/>
         <source>false</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PropertyContainer.cpp" line="244"/>
+        <location filename="../svcore/base/PropertyContainer.cpp" line="251"/>
         <source>Set %1 Property</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5644,12 +6224,12 @@
 <context>
     <name>PropertyStack</name>
     <message>
-        <location filename="../../svgui/widgets/PropertyStack.cpp" line="242"/>
+        <location filename="../svgui/widgets/PropertyStack.cpp" line="242"/>
         <source>Change Layer Visibility</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PropertyStack.cpp" line="259"/>
+        <location filename="../svgui/widgets/PropertyStack.cpp" line="259"/>
         <source>Click to change the current active layer</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5657,7 +6237,7 @@
 <context>
     <name>QApplication</name>
     <message>
-        <location filename="../main/main.cpp" line="269"/>
+        <location filename="../main/main.cpp" line="261"/>
         <source>
 Sonic Visualiser is a program for viewing and exploring audio data
 for semantic music analysis and annotation.
@@ -5673,7 +6253,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/main.cpp" line="279"/>
+        <location filename="../main/main.cpp" line="271"/>
         <source>Sonic Visualiser</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5681,22 +6261,20 @@
 <context>
     <name>QFile</name>
     <message>
-        <location filename="../../svcore/data/fileio/CSVFileReader.cpp" line="47"/>
-        <location filename="../../svcore/data/fileio/MatchFileReader.cpp" line="73"/>
-        <location filename="../../svcore/data/fileio/PlaylistFileReader.cpp" line="69"/>
+        <location filename="../svcore/data/fileio/CSVFileReader.cpp" line="52"/>
+        <location filename="../svcore/data/fileio/PlaylistFileReader.cpp" line="69"/>
         <source>File &quot;%1&quot; does not exist</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/CSVFileReader.cpp" line="49"/>
-        <location filename="../../svcore/data/fileio/MatchFileReader.cpp" line="75"/>
-        <location filename="../../svcore/data/fileio/PlaylistFileReader.cpp" line="72"/>
+        <location filename="../svcore/data/fileio/CSVFileReader.cpp" line="54"/>
+        <location filename="../svcore/data/fileio/PlaylistFileReader.cpp" line="72"/>
         <source>Failed to open file &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/PlaylistFileReader.cpp" line="31"/>
-        <location filename="../../svcore/data/fileio/PlaylistFileReader.cpp" line="43"/>
+        <location filename="../svcore/data/fileio/PlaylistFileReader.cpp" line="31"/>
+        <location filename="../svcore/data/fileio/PlaylistFileReader.cpp" line="43"/>
         <source>File or URL &quot;%1&quot; could not be retrieved</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5704,44 +6282,145 @@
 <context>
     <name>QMessageBox</name>
     <message>
-        <location filename="../main/main.cpp" line="532"/>
-        <location filename="../main/main.cpp" line="537"/>
+        <location filename="../main/main.cpp" line="534"/>
+        <location filename="../main/main.cpp" line="539"/>
         <source>Failed to open file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/main.cpp" line="533"/>
+        <location filename="../main/main.cpp" line="535"/>
         <source>File or URL &quot;%1&quot; could not be opened</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/main.cpp" line="538"/>
+        <location filename="../main/main.cpp" line="540"/>
         <source>&lt;b&gt;Audio required&lt;/b&gt;&lt;p&gt;Please load at least one audio file before importing annotation data</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
-    <name>QuickTimeFileReader</name>
-    <message>
-        <location filename="../../svcore/data/fileio/QuickTimeFileReader.cpp" line="225"/>
-        <source>Decoding %1...</source>
+    <name>QObject</name>
+    <message>
+        <location filename="../svcore/plugin/PiperVampPluginFactory.cpp" line="93"/>
+        <source>External plugin host executable does not appear to be installed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/plugin/PiperVampPluginFactory.cpp" line="221"/>
+        <source>Could not start external plugin host</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/plugin/PiperVampPluginFactory.cpp" line="237"/>
+        <source>External plugin host exited unexpectedly while listing plugins</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/plugin/PiperVampPluginFactory.cpp" line="241"/>
+        <source>External plugin host invocation failed: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/plugin/PluginScan.cpp" line="191"/>
+        <source>&lt;b&gt;Failed to scan for plugins&lt;/b&gt;&lt;p&gt;Failed to scan for plugins at startup. Possibly the plugin checker helper program was not correctly installed alongside %1?&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/plugin/PluginScan.cpp" line="198"/>
+        <source>&lt;b&gt;Did not scan for plugins&lt;/b&gt;&lt;p&gt;Apparently no scan for plugins was attempted (internal error?)&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/plugin/PluginScan.cpp" line="211"/>
+        <source>&lt;b&gt;Failed to load plugins&lt;/b&gt;&lt;p&gt;Failed to load one or more plugin libraries:&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/plugin/PluginScan.cpp" line="214"/>
+        <source>&lt;p&gt;These plugins may be incompatible with the system, and will be ignored during this run of %1.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="89"/>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="107"/>
+        <source>&lt;unknown&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="93"/>
+        <source>Green</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="94"/>
+        <source>White on Black</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="95"/>
+        <source>Black on White</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="96"/>
+        <source>Cherry</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="97"/>
+        <source>Wasp</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="98"/>
+        <source>Ice</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="99"/>
+        <source>Sunset</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="100"/>
+        <source>Fruit Salad</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="101"/>
+        <source>Banded</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="102"/>
+        <source>Highlight</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="103"/>
+        <source>Printer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="104"/>
+        <source>High Gain</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>RDFImporter</name>
     <message>
-        <location filename="../../svcore/rdf/RDFImporter.cpp" line="272"/>
+        <location filename="../svcore/rdf/RDFImporter.cpp" line="270"/>
         <source>Importing audio referenced in RDF...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/rdf/RDFImporter.cpp" line="296"/>
+        <location filename="../svcore/rdf/RDFImporter.cpp" line="294"/>
         <source>Importing dense signal data from RDF...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/rdf/RDFImporter.cpp" line="490"/>
+        <location filename="../svcore/rdf/RDFImporter.cpp" line="488"/>
         <source>Importing event data from RDF...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5749,7 +6428,7 @@
 <context>
     <name>RangeInputDialog</name>
     <message>
-        <location filename="../../svgui/widgets/RangeInputDialog.cpp" line="48"/>
+        <location filename="../svgui/widgets/RangeInputDialog.cpp" line="48"/>
         <source> to </source>
         <translation type="unfinished"></translation>
     </message>
@@ -5757,87 +6436,95 @@
 <context>
     <name>RangeSummarisableTimeValueModel</name>
     <message>
-        <location filename="../../svcore/data/model/RangeSummarisableTimeValueModel.h" line="124"/>
+        <location filename="../svcore/data/model/RangeSummarisableTimeValueModel.h" line="102"/>
         <source>Range-Summarisable Time-Value</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
+    <name>ReadOnlyWaveFileModel</name>
+    <message>
+        <location filename="../svcore/data/model/ReadOnlyWaveFileModel.h" line="79"/>
+        <source>Wave File</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>RegionLayer</name>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="43"/>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="44"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="55"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="56"/>
         <source>New Region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="89"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="101"/>
         <source>Vertical Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="90"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="102"/>
         <source>Scale Units</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="91"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="103"/>
         <source>Plot Type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="109"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="121"/>
         <source>Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="170"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="182"/>
         <source>Bars</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="171"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="183"/>
         <source>Segmentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="177"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="189"/>
         <source>Auto-Align</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="178"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="190"/>
         <source>Equal Spaced</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="179"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="191"/>
         <source>Linear</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="180"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="192"/>
         <source>Log</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="385"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="397"/>
         <source>In progress</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="387"/>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="413"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="399"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="425"/>
         <source>No local points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="422"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="434"/>
         <source>%1 %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="427"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="439"/>
         <source>Time:	%1
 Value:	%2
 Duration:	%3
@@ -5845,7 +6532,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="432"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="444"/>
         <source>Time:	%1
 Value:	%2
 Duration:	%3
@@ -5853,63 +6540,63 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1043"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1140"/>
         <source>Draw Region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1125"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1222"/>
         <source>Erase Region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1185"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1282"/>
         <source>Drag Region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1206"/>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1253"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1303"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1350"/>
         <source>Edit Region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1208"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1305"/>
         <source>Relocate Region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1211"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1308"/>
         <source>Change Point Value</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1270"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1367"/>
         <source>Drag Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1296"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1393"/>
         <source>Resize Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1336"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1433"/>
         <source>Delete Selected Points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1383"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1480"/>
         <source>Re-align pasted items?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1384"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1481"/>
         <source>The items you are pasting came from a layer with different source material from this one.  Do you want to re-align them in time, to match the source material for this layer?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1398"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1495"/>
         <source>Paste</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5917,42 +6604,42 @@
 <context>
     <name>RegionModel</name>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="125"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="125"/>
         <source>Region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="153"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="153"/>
         <source>Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="154"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="154"/>
         <source>Frame</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="155"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="155"/>
         <source>Value</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="156"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="156"/>
         <source>Duration</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="157"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="157"/>
         <source>Label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="158"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="158"/>
         <source>Unknown</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="187"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="187"/>
         <source>Edit Data</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5960,29 +6647,21 @@
 <context>
     <name>RemoveLayerCommand</name>
     <message>
-        <location filename="../../svapp/framework/Document.cpp" line="1016"/>
+        <location filename="../svapp/framework/Document.cpp" line="1169"/>
         <source>Delete %1 Layer</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
-    <name>ResamplingWavFileReader</name>
-    <message>
-        <location filename="../../svcore/data/fileio/ResamplingWavFileReader.cpp" line="63"/>
-        <source>Resampling %1...</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
     <name>SVFileReader</name>
     <message>
-        <location filename="../../svapp/framework/SVFileReader.cpp" line="318"/>
-        <location filename="../../svapp/framework/SVFileReader.cpp" line="322"/>
+        <location filename="../svapp/framework/SVFileReader.cpp" line="324"/>
+        <location filename="../svapp/framework/SVFileReader.cpp" line="328"/>
         <source>(derived model in SV-XML)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/SVFileReader.cpp" line="463"/>
+        <location filename="../svapp/framework/SVFileReader.cpp" line="469"/>
         <source>Opening file or URL...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5990,12 +6669,12 @@
 <context>
     <name>SingleColourLayer</name>
     <message>
-        <location filename="../../svgui/layer/SingleColourLayer.cpp" line="62"/>
+        <location filename="../svgui/layer/SingleColourLayer.cpp" line="70"/>
         <source>Colour</source>
         <translation type="unfinished">Color</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SingleColourLayer.cpp" line="114"/>
+        <location filename="../svgui/layer/SingleColourLayer.cpp" line="122"/>
         <source>&lt;unknown&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6003,13 +6682,13 @@
 <context>
     <name>SliceLayer</name>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="146"/>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="153"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="146"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="153"/>
         <source>%1 - %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="158"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="158"/>
         <source>Time:	%1 - %2
 Range:	%3 samples (%4)
 Bin:	%5
@@ -6017,139 +6696,139 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="164"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="164"/>
         <source>First</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="165"/>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="717"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="165"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="720"/>
         <source>Mean</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="165"/>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="718"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="165"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="721"/>
         <source>Peak</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="172"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="172"/>
         <source>Time:	%1 - %2
 Range:	%3 samples (%4)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="507"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="510"/>
         <source>0dB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="508"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="511"/>
         <source>-Inf</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="539"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="542"/>
         <source>x10</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="564"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="567"/>
         <source>Plot Type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="565"/>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="602"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="568"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="605"/>
         <source>Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="566"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="569"/>
         <source>Normalize</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="567"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="570"/>
         <source>Threshold</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="568"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="571"/>
         <source>Gain</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="569"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="572"/>
         <source>Sampling Mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="707"/>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="733"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="710"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="736"/>
         <source>Linear</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="708"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="711"/>
         <source>Meter</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="735"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="738"/>
         <source>Rev Log</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="745"/>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="748"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="748"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="751"/>
         <source>dB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="716"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="719"/>
         <source>Any</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="570"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="573"/>
         <source>Bin Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="604"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="607"/>
         <source>Bins</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="709"/>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="734"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="712"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="737"/>
         <source>Log</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="710"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="713"/>
         <source>Absolute</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="724"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="727"/>
         <source>Lines</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="725"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="728"/>
         <source>Steps</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="726"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="729"/>
         <source>Blocks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="727"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="730"/>
         <source>Colours</source>
         <translation type="unfinished">Colors</translation>
     </message>
@@ -6157,22 +6836,22 @@
 <context>
     <name>SparseModel</name>
     <message>
-        <location filename="../../svcore/data/model/SparseModel.h" line="143"/>
+        <location filename="../svcore/data/model/SparseModel.h" line="154"/>
         <source>Sparse</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseModel.h" line="328"/>
+        <location filename="../svcore/data/model/SparseModel.h" line="361"/>
         <source>Edit Data</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseModel.h" line="344"/>
+        <location filename="../svcore/data/model/SparseModel.h" line="377"/>
         <source>Insert Data Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseModel.h" line="355"/>
+        <location filename="../svcore/data/model/SparseModel.h" line="390"/>
         <source>Delete Data Point</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6180,7 +6859,7 @@
 <context>
     <name>SparseModel::AddPointCommand</name>
     <message>
-        <location filename="../../svcore/data/model/SparseModel.h" line="172"/>
+        <location filename="../svcore/data/model/SparseModel.h" line="205"/>
         <source>Add Point</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6188,7 +6867,7 @@
 <context>
     <name>SparseModel::DeletePointCommand</name>
     <message>
-        <location filename="../../svcore/data/model/SparseModel.h" line="197"/>
+        <location filename="../svcore/data/model/SparseModel.h" line="230"/>
         <source>Delete Point</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6196,7 +6875,7 @@
 <context>
     <name>SparseModel::RelabelCommand</name>
     <message>
-        <location filename="../../svcore/data/model/SparseModel.h" line="254"/>
+        <location filename="../svcore/data/model/SparseModel.h" line="287"/>
         <source>Re-Label Point</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6204,32 +6883,32 @@
 <context>
     <name>SparseOneDimensionalModel</name>
     <message>
-        <location filename="../../svcore/data/model/SparseOneDimensionalModel.h" line="113"/>
+        <location filename="../svcore/data/model/SparseOneDimensionalModel.h" line="110"/>
         <source>Sparse 1-D</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseOneDimensionalModel.h" line="127"/>
+        <location filename="../svcore/data/model/SparseOneDimensionalModel.h" line="124"/>
         <source>Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseOneDimensionalModel.h" line="128"/>
+        <location filename="../svcore/data/model/SparseOneDimensionalModel.h" line="125"/>
         <source>Frame</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseOneDimensionalModel.h" line="129"/>
+        <location filename="../svcore/data/model/SparseOneDimensionalModel.h" line="126"/>
         <source>Label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseOneDimensionalModel.h" line="130"/>
+        <location filename="../svcore/data/model/SparseOneDimensionalModel.h" line="127"/>
         <source>Unknown</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseOneDimensionalModel.h" line="160"/>
+        <location filename="../svcore/data/model/SparseOneDimensionalModel.h" line="157"/>
         <source>Edit Data</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6237,37 +6916,37 @@
 <context>
     <name>SparseTimeValueModel</name>
     <message>
-        <location filename="../../svcore/data/model/SparseTimeValueModel.h" line="102"/>
+        <location filename="../svcore/data/model/SparseTimeValueModel.h" line="111"/>
         <source>Sparse Time-Value</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseTimeValueModel.h" line="116"/>
+        <location filename="../svcore/data/model/SparseTimeValueModel.h" line="128"/>
         <source>Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseTimeValueModel.h" line="117"/>
+        <location filename="../svcore/data/model/SparseTimeValueModel.h" line="129"/>
         <source>Frame</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseTimeValueModel.h" line="118"/>
+        <location filename="../svcore/data/model/SparseTimeValueModel.h" line="130"/>
         <source>Value</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseTimeValueModel.h" line="119"/>
+        <location filename="../svcore/data/model/SparseTimeValueModel.h" line="131"/>
         <source>Label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseTimeValueModel.h" line="120"/>
+        <location filename="../svcore/data/model/SparseTimeValueModel.h" line="132"/>
         <source>Unknown</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseTimeValueModel.h" line="153"/>
+        <location filename="../svcore/data/model/SparseTimeValueModel.h" line="165"/>
         <source>Edit Data</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6275,7 +6954,7 @@
 <context>
     <name>SparseValueModel</name>
     <message>
-        <location filename="../../svcore/data/model/SparseValueModel.h" line="56"/>
+        <location filename="../svcore/data/model/SparseValueModel.h" line="56"/>
         <source>Sparse Value</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6283,363 +6962,362 @@
 <context>
     <name>SpectrogramLayer</name>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="172"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="219"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="231"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="271"/>
         <source>Colour</source>
         <translation type="unfinished">Color</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="173"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="232"/>
         <source>Colour Scale</source>
         <translation type="unfinished">Color Scale</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="174"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="233"/>
         <source>Window Size</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="175"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="234"/>
         <source>Window Overlap</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="176"/>
-        <source>Normalize Columns</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="177"/>
-        <source>Normalize Visible Area</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="178"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="235"/>
+        <source>Normalization</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="236"/>
         <source>Bin Display</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="179"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="237"/>
         <source>Threshold</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="180"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="238"/>
         <source>Gain</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="181"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="239"/>
         <source>Colour Rotation</source>
         <translation type="unfinished">Color Rotation</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="182"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="240"/>
         <source>Min Frequency</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="183"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="241"/>
         <source>Max Frequency</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="184"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="242"/>
         <source>Frequency Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="185"/>
-        <source>Smoothing</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="213"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="266"/>
         <source>Bins</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="216"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="268"/>
         <source>Window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="223"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="274"/>
         <source>Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="393"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="451"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="435"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="499"/>
         <source>Linear</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="394"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="436"/>
         <source>Meter</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="395"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="437"/>
         <source>dBV^2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="396"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="438"/>
         <source>dBV</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="397"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="439"/>
         <source>Phase</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="406"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="415"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="445"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="458"/>
         <source>None</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="407"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="446"/>
+        <source>Col</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="447"/>
+        <source>View</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="448"/>
+        <source>Hybrid</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="459"/>
         <source>25 %</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="408"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="460"/>
         <source>50 %</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="409"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="461"/>
         <source>75 %</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="410"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="462"/>
         <source>87.5 %</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="411"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="463"/>
         <source>93.75 %</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="421"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="469"/>
         <source>No min</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="422"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="470"/>
         <source>10 Hz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="423"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="471"/>
         <source>20 Hz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="424"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="472"/>
         <source>40 Hz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="425"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="473"/>
         <source>100 Hz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="426"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="474"/>
         <source>250 Hz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="427"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="436"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="475"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="484"/>
         <source>500 Hz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="428"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="437"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="476"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="485"/>
         <source>1 KHz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="429"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="440"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="477"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="488"/>
         <source>4 KHz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="430"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="478"/>
         <source>10 KHz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="438"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="486"/>
         <source>1.5 KHz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="439"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="487"/>
         <source>2 KHz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="441"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="489"/>
         <source>6 KHz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="442"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="490"/>
         <source>8 KHz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="443"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="491"/>
         <source>12 KHz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="444"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="492"/>
         <source>16 KHz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="445"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="493"/>
         <source>No max</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="452"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="500"/>
         <source>Log</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="458"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="506"/>
         <source>All Bins</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="459"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="507"/>
         <source>Peak Bins</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="460"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="508"/>
         <source>Frequencies</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="463"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="511"/>
         <source>&lt;unknown&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="470"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="473"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="534"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="537"/>
         <source>dB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="1667"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1358"/>
         <source>FFT cache failed</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="1668"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1359"/>
         <source>Failed to create the FFT model for this spectrogram.
 There may be insufficient memory or disc space to continue.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3175"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1911"/>
         <source>Peak Frequency:	%1 - %2 Hz
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3178"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1914"/>
         <source>Peak Frequency:	%1 Hz
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3186"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1922"/>
         <source>Peak Pitch:	%3 - %4
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3188"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1924"/>
         <source>Peak Pitch:	%2
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3199"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1935"/>
         <source>Time:	%1 - %2
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3203"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1939"/>
         <source>Time:	%1
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3208"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1944"/>
         <source>%1Bin Frequency:	%2 - %3 Hz
 %4Bin Pitch:	%5 - %6
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3216"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1952"/>
         <source>%1Bin Frequency:	%2 Hz
 %3Bin Pitch:	%4
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3229"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3234"/>
-        <source>-Inf</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3239"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1975"/>
         <source>dB:	%1 - %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3241"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1977"/>
         <source>dB:	%1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3244"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1980"/>
         <source>
 Phase:	%1 - %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3246"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1982"/>
         <source>
 Phase:	%1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3276"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="2012"/>
         <source>43Hz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3423"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="2085"/>
         <source>%1Hz</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6647,90 +7325,84 @@
 <context>
     <name>SpectrumLayer</name>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="146"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="143"/>
         <source>Window Size</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="147"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="144"/>
         <source>Window Overlap</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="148"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="145"/>
         <source>Show Peak Frequencies</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="172"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="169"/>
         <source>Window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="173"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="170"/>
         <source>Bins</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="228"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="225"/>
         <source>None</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="229"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="226"/>
         <source>25 %</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="230"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="227"/>
         <source>50 %</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="231"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="228"/>
         <source>75 %</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="232"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="229"/>
         <source>87.5 %</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="233"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="230"/>
         <source>93.75 %</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="591"/>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="603"/>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="624"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="588"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="600"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="621"/>
         <source>%1 - %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="596"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="593"/>
         <source>%1 - %2 Hz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="598"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="595"/>
         <source>%1 Hz</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="614"/>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="619"/>
-        <source>-Inf</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="626"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="623"/>
         <source>%1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="632"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="629"/>
         <source>%1
 Bin:	%2 (%3)
 %4 value:	%5
@@ -6738,22 +7410,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="636"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="633"/>
         <source>First</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="637"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="634"/>
         <source>Mean</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="637"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="634"/>
         <source>Peak</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="641"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="638"/>
         <source>%1
 Bin:	%2 (%3)
 Value:	%4
@@ -6764,106 +7436,119 @@
 <context>
     <name>SubdividingMenu</name>
     <message>
-        <location filename="../../svgui/widgets/SubdividingMenu.cpp" line="115"/>
+        <location filename="../svgui/widgets/SubdividingMenu.cpp" line="117"/>
         <source>%1 - %2</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
+    <name>Surveyer</name>
+    <message>
+        <location filename="../main/Surveyer.cpp" line="97"/>
+        <source>Yes! Take me to the survey</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/Surveyer.cpp" line="98"/>
+        <source>No, thanks</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>TextLayer</name>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="39"/>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="40"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="39"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="40"/>
         <source>Empty Label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="135"/>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="373"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="135"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="373"/>
         <source>&lt;no text&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="195"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="195"/>
         <source>In progress</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="208"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="208"/>
         <source>Time:	%1
 Height:	%2
 Label:	%3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="465"/>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="611"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="465"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="611"/>
         <source>Enter label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="466"/>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="612"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="466"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="612"/>
         <source>Please enter a new label:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="514"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="514"/>
         <source>Erase Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="563"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="563"/>
         <source>Drag Label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="584"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="584"/>
         <source>Move Label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="586"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="586"/>
         <source>Move Label Horizontally</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="589"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="589"/>
         <source>Move Label Vertically</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="629"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="629"/>
         <source>Drag Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="654"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="654"/>
         <source>Resize Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="688"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="688"/>
         <source>Delete Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="731"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="731"/>
         <source>Re-align pasted items?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="732"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="732"/>
         <source>The items you are pasting came from a layer with different source material from this one.  Do you want to re-align them in time, to match the source material for this layer?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="746"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="746"/>
         <source>Paste</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="791"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="791"/>
         <source>New Point</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6871,37 +7556,37 @@
 <context>
     <name>TextModel</name>
     <message>
-        <location filename="../../svcore/data/model/TextModel.h" line="103"/>
+        <location filename="../svcore/data/model/TextModel.h" line="103"/>
         <source>Text</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/TextModel.h" line="117"/>
+        <location filename="../svcore/data/model/TextModel.h" line="117"/>
         <source>Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/TextModel.h" line="118"/>
+        <location filename="../svcore/data/model/TextModel.h" line="118"/>
         <source>Frame</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/TextModel.h" line="119"/>
+        <location filename="../svcore/data/model/TextModel.h" line="119"/>
         <source>Height</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/TextModel.h" line="120"/>
+        <location filename="../svcore/data/model/TextModel.h" line="120"/>
         <source>Label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/TextModel.h" line="121"/>
+        <location filename="../svcore/data/model/TextModel.h" line="121"/>
         <source>Unknown</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/TextModel.h" line="152"/>
+        <location filename="../svcore/data/model/TextModel.h" line="152"/>
         <source>Edit Data</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6909,39 +7594,39 @@
 <context>
     <name>Thumbwheel</name>
     <message>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="232"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="232"/>
         <source>%1: %2%3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="234"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="234"/>
         <source>%2%3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="344"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="344"/>
         <source>New value for %1, from %2 to %3 %4:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="347"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="347"/>
         <source>New value for %1, from %2 to %3:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="352"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="352"/>
         <source>Enter a new value from %1 to %2 %3:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="355"/>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="379"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="355"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="379"/>
         <source>Enter a new value from %1 to %2:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="362"/>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="378"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="362"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="378"/>
         <source>Enter new value</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6949,105 +7634,105 @@
 <context>
     <name>TimeInstantLayer</name>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="44"/>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="481"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="46"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="483"/>
         <source>New Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="84"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="86"/>
         <source>Plot Type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="124"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="126"/>
         <source>Instants</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="125"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="127"/>
         <source>Segmentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="226"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="228"/>
         <source>In progress</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="228"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="230"/>
         <source>No local points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="239"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="241"/>
         <source>Time:	%1
 No label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="242"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="244"/>
         <source>Time:	%1
 Label:	%2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="485"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="487"/>
         <source>Draw Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="515"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="517"/>
         <source>Add Point at %1 s</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="560"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="562"/>
         <source>Erase Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="606"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="608"/>
         <source>Drag Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="622"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="624"/>
         <source>Move Point to %1 s</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="658"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="660"/>
         <source>Edit Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="675"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="677"/>
         <source>Drag Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="701"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="703"/>
         <source>Resize Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="736"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="738"/>
         <source>Delete Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="779"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="781"/>
         <source>Re-align pasted instants?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="780"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="782"/>
         <source>The instants you are pasting came from a layer with different source material from this one.  Do you want to re-align them in time, to match the source material for this layer?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="794"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="796"/>
         <source>Paste</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7055,207 +7740,227 @@
 <context>
     <name>TimeValueLayer</name>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="51"/>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="52"/>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1285"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="59"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="60"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1352"/>
         <source>New Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="105"/>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="141"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="113"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="149"/>
         <source>Plot Type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="106"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="114"/>
         <source>Vertical Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="107"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="115"/>
         <source>Scale Units</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="108"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="116"/>
         <source>Draw Segment Division Lines</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="109"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="117"/>
         <source>Show Derivative</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="137"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="145"/>
         <source>Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="215"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="230"/>
         <source>Points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="216"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="231"/>
         <source>Stems</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="217"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="232"/>
         <source>Connected Points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="218"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="233"/>
         <source>Lines</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="219"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="234"/>
         <source>Curve</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="220"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="235"/>
         <source>Segmentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="225"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="236"/>
+        <source>Discrete Curves</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="241"/>
         <source>Auto-Align</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="226"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="242"/>
         <source>Linear</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="227"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="243"/>
         <source>Log</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="228"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="244"/>
         <source>+/-1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="556"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="601"/>
         <source>In progress</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="558"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="603"/>
         <source>No local points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="571"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="616"/>
+        <source>%1 Hz (%2, %3)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="621"/>
+        <source>%1 %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="623"/>
+        <source>%1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="629"/>
         <source>Time:	%1
-Value:	%2%3
+Value:	%2
 No label</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="576"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="633"/>
         <source>Time:	%1
-Value:	%2%3
+Value:	%2
 Label:	%4</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1292"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1359"/>
         <source>Draw Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1410"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1477"/>
         <source>Erase Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1459"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1526"/>
         <source>Drag Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1482"/>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1527"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1549"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1594"/>
         <source>Edit Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1484"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1551"/>
         <source>Relocate Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1487"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1554"/>
         <source>Change Point Value</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1544"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1611"/>
         <source>Drag Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1570"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1637"/>
         <source>Resize Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1605"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1672"/>
         <source>Delete Selected Points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1652"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1719"/>
         <source>Re-align pasted items?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1653"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1720"/>
         <source>The items you are pasting came from a layer with different source material from this one.  Do you want to re-align them in time, to match the source material for this layer?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1667"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1734"/>
         <source>Paste</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1723"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1789"/>
         <source>The items you are pasting do not have values.
 What values do you want to use for these items?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1725"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1791"/>
         <source>Some of the items you are pasting do not have values.
 What values do you want to use for these items?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1735"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1801"/>
         <source>Zero for all items</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1744"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1810"/>
         <source>Choose value calculation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1765"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1834"/>
         <source>Select cycle size</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1766"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1835"/>
         <source>Cycle size:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7263,27 +7968,27 @@
 <context>
     <name>TipDialog</name>
     <message>
-        <location filename="../../svgui/widgets/TipDialog.cpp" line="35"/>
+        <location filename="../svgui/widgets/TipDialog.cpp" line="35"/>
         <source>Tip of the Day</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TipDialog.cpp" line="65"/>
+        <location filename="../svgui/widgets/TipDialog.cpp" line="65"/>
         <source>Show tip on startup</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TipDialog.cpp" line="71"/>
+        <location filename="../svgui/widgets/TipDialog.cpp" line="71"/>
         <source>&lt;&lt; Previous</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TipDialog.cpp" line="75"/>
+        <location filename="../svgui/widgets/TipDialog.cpp" line="75"/>
         <source>Next &gt;&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TipDialog.cpp" line="79"/>
+        <location filename="../svgui/widgets/TipDialog.cpp" line="79"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7291,136 +7996,141 @@
 <context>
     <name>TransformFactory</name>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="386"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="387"/>
         <source> [\(&lt;].*$</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="445"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="539"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="445"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="536"/>
         <source>&lt;unknown maker&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="451"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="714"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="451"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="712"/>
         <source>Extract features using &quot;%1&quot; plugin (from %2)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="454"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="717"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="454"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="715"/>
         <source>Extract features using &quot;%1&quot; output of &quot;%2&quot; plugin (from %3)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="459"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="722"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="459"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="720"/>
         <source>%1 using &quot;%2&quot; plugin (from %3)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="462"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="725"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="462"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="723"/>
         <source>%1 using &quot;%2&quot; output of &quot;%3&quot; plugin (from %4)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="320"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="321"/>
         <source>Analysis</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="323"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="324"/>
         <source>Generator</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="324"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="326"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="325"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="327"/>
         <source>Other</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="555"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="707"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="552"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="705"/>
         <source>%1: %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="565"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="562"/>
         <source>%1: Output %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="577"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="574"/>
         <source>Extract &quot;%1&quot; data output from &quot;%2&quot; effect plugin (from %3)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="582"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="579"/>
         <source>Extract data output %1 from &quot;%2&quot; effect plugin (from %3)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="322"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="323"/>
         <source>Effects Data</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="321"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="322"/>
         <source>Effects</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="609"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="412"/>
+        <source>Failed to list Vamp plugins: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="606"/>
         <source>Transform audio signal with &quot;%1&quot; effect plugin (from %2)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="615"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="612"/>
         <source>Generate audio signal using &quot;%1&quot; plugin (from %2)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1133"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1171"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1153"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1191"/>
         <source>Plugin type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1135"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1173"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1155"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1193"/>
         <source>Category</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1136"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1174"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1156"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1194"/>
         <source>System Identifier</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1137"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1175"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1157"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1195"/>
         <source>Name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1138"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1176"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1158"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1196"/>
         <source>Description</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1139"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1177"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1159"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1197"/>
         <source>Maker</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1140"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1178"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1160"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1198"/>
         <source>Units</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7428,64 +8138,64 @@
 <context>
     <name>TransformFinder</name>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="38"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="38"/>
         <source>Find a Transform</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="44"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="44"/>
         <source>Find:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="77"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="77"/>
         <source>&lt;br&gt;&amp;nbsp;&amp;nbsp;No results found</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="85"/>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="86"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="85"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="86"/>
         <source>Up</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="90"/>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="91"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="90"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="91"/>
         <source>Down</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="137"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="137"/>
         <source>&lt;p&gt;Type some text into the search box to search the descriptions of:&lt;ul&gt;&lt;li&gt;All currently installed &lt;a href=&quot;http://www.vamp-plugins.org/&quot;&gt;Vamp&lt;/a&gt; audio feature extraction plugins&lt;/li&gt;&lt;li&gt;All currently installed &lt;a href=&quot;http://www.ladspa.org/&quot;&gt;LADSPA&lt;/a&gt; audio effects plugins&lt;/li&gt;&lt;li&gt;Vamp plugins that are not currently installed but that have descriptions published via the semantic web&lt;/li&gt;&lt;/ul&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="140"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="140"/>
         <source>&lt;b&gt;Unable to retrieve published descriptions from network!&lt;/b&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="143"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="143"/>
         <source>&lt;b&gt;No plugins are currently installed!&lt;/b&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="151"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="151"/>
         <source>&lt;p&gt;%1&lt;br&gt;Perhaps the network connection is down, services are responding too slowly, or a processing problem has occurred.&lt;br&gt;Only the descriptions of installed plugins will be searched.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="157"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="157"/>
         <source>&lt;p&gt;%1&lt;br&gt;Only the published descriptions of Vamp feature extraction plugins will be searched.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="161"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="161"/>
         <source>&lt;p&gt;%1&lt;br&gt;%2&lt;br&gt;Perhaps the network connection is down, or services are responding too slowly.&lt;br&gt;No search results will be available.</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="227"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="227"/>
         <source>Found %n description(s) containing &lt;b&gt;%1&lt;/b&gt;, showing the first %2 only</source>
         <translation type="unfinished">
             <numerusform>Found %n description containing &lt;b&gt;%1&lt;/b&gt;, showing the first %2 only</numerusform>
@@ -7493,7 +8203,7 @@
         </translation>
     </message>
     <message numerus="yes">
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="231"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="231"/>
         <source>Found %n description(s) containing &lt;b&gt;%1&lt;/b&gt;</source>
         <translation type="unfinished">
             <numerusform>Found %n description containing &lt;b&gt;%1&lt;/b&gt;</numerusform>
@@ -7501,216 +8211,296 @@
         </translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="257"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="257"/>
         <source>&lt;i&gt; (not installed)&lt;/i&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="261"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="261"/>
         <source>%1%2&lt;br&gt;&lt;small&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="272"/>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="303"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="272"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="303"/>
         <source>&lt;/small&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="275"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="275"/>
         <source>&lt;b&gt;%1&lt;/b&gt;%2&lt;br&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="281"/>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="284"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="281"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="284"/>
         <source>&lt;small&gt;%1&lt;/small&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="288"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="288"/>
         <source>&lt;small&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="290"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="290"/>
         <source>&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;mdash; Plugin type: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="294"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="294"/>
         <source>&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;mdash; Category: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="297"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="297"/>
         <source>&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;mdash; System identifier: %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="300"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="300"/>
         <source>&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;mdash; More information: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
+    <name>UnitConverter</name>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="50"/>
+        <source>Pitch</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="87"/>
+        <source> cents</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="96"/>
+        <source>In 12-tone Equal Temperament:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="105"/>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="208"/>
+        <source>=</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="107"/>
+        <source>+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="110"/>
+        <source>Piano note</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="112"/>
+        <source>in octave</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="117"/>
+        <source>MIDI pitch</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="133"/>
+        <source>Note that only pitches in the range 0 to 127 are valid in the MIDI protocol.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="140"/>
+        <source>Tempo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="206"/>
+        <source>Beat period</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="212"/>
+        <source>at</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="275"/>
+        <source>With concert-A tuning frequency at %1 Hz, and middle C residing in octave %2.
+(These can be changed in the application preferences.)</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>View</name>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="91"/>
+        <location filename="../svgui/view/View.cpp" line="98"/>
         <source>Global Scroll</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="92"/>
+        <location filename="../svgui/view/View.cpp" line="99"/>
         <source>Global Zoom</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="93"/>
+        <location filename="../svgui/view/View.cpp" line="100"/>
         <source>Follow Playback</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="132"/>
+        <location filename="../svgui/view/View.cpp" line="143"/>
         <source>Scroll</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="133"/>
+        <location filename="../svgui/view/View.cpp" line="144"/>
         <source>Page</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="134"/>
+        <location filename="../svgui/view/View.cpp" line="145"/>
         <source>Off</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="137"/>
+        <location filename="../svgui/view/View.cpp" line="148"/>
         <source>&lt;unknown&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="1445"/>
+        <location filename="../svgui/view/View.cpp" line="1533"/>
         <source>Layer rendering error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="1466"/>
+        <location filename="../svgui/view/View.cpp" line="1555"/>
         <source>Alignment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="2242"/>
+        <location filename="../svgui/view/View.cpp" line="2383"/>
         <source>Waiting for layers to be ready...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="2243"/>
-        <location filename="../../svgui/view/View.cpp" line="2272"/>
+        <location filename="../svgui/view/View.cpp" line="2384"/>
+        <location filename="../svgui/view/View.cpp" line="2413"/>
         <source>Cancel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="2271"/>
+        <location filename="../svgui/view/View.cpp" line="2412"/>
         <source>Rendering image...</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../svgui/view/View.cpp" line="2529"/>
+        <source>Exported image from %1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>ViewManager</name>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="338"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="381"/>
         <source>Clear Selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="339"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="382"/>
         <source>Select Multiple Regions</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="340"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="383"/>
         <source>Select Region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="357"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="400"/>
         <source>Enter Navigate mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="358"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="401"/>
         <source>Enter Select mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="359"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="402"/>
         <source>Enter Edit mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="360"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="403"/>
         <source>Enter Draw mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="361"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="404"/>
         <source>Enter Erase mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="362"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="405"/>
         <source>Enter Measure mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="376"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="406"/>
+        <source>Enter NoteEdit mode</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/view/ViewManager.cpp" line="442"/>
         <source>Switch on Loop mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="377"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="443"/>
         <source>Switch off Loop mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="391"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="457"/>
         <source>Switch on Play Selection mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="392"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="458"/>
         <source>Switch off Play Selection mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="406"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="472"/>
         <source>Switch on Play Solo mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="407"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="473"/>
         <source>Switch off Play Solo mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="421"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="487"/>
         <source>Switch on Alignment mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="422"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="488"/>
         <source>Switch off Alignment mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="524"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="591"/>
         <source>Scroll to %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../../svgui/view/ViewManager.cpp" line="586"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="652"/>
         <source>Zoom to %n sample(s) per pixel</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -7718,139 +8508,124 @@
         </translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="596"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="662"/>
         <source>Change overlay level</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
-    <name>WaveFileModel</name>
-    <message>
-        <location filename="../../svcore/data/model/WaveFileModel.h" line="83"/>
-        <source>Wave File</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
     <name>WaveformLayer</name>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="104"/>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="133"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="109"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="138"/>
         <source>Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="105"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="110"/>
         <source>Gain</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="106"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="111"/>
         <source>Normalize Visible Area</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="107"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="112"/>
         <source>Channels</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="194"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="199"/>
         <source>Linear</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="195"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="200"/>
         <source>Meter</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="196"/>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="214"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="201"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="219"/>
         <source>dB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="202"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="207"/>
         <source>Separate</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="203"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="208"/>
         <source>Mean</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="204"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="209"/>
         <source>Butterfly</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="953"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="984"/>
         <source>Time:	%1 - %2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="957"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="988"/>
         <source>Time:	%1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="978"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1009"/>
         <source>Level:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="980"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1011"/>
         <source>Left:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="981"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1012"/>
         <source>Right:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="982"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1013"/>
         <source>Channel %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1005"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1036"/>
         <source>
 %1	%2 - %3 (%4 dB peak)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1008"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1039"/>
         <source>
 %1	%2 (%3 dB peak)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1175"/>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1228"/>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1238"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1206"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1259"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1269"/>
         <source>0dB</source>
         <translation type="unfinished"></translation>
     </message>
-    <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1176"/>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1230"/>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1240"/>
-        <source>-Inf</source>
-        <translation type="unfinished"></translation>
-    </message>
 </context>
 <context>
     <name>WindowShapePreview</name>
     <message>
-        <location filename="../../svgui/widgets/WindowShapePreview.cpp" line="118"/>
+        <location filename="../svgui/widgets/WindowShapePreview.cpp" line="120"/>
         <source>V / time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/WindowShapePreview.cpp" line="202"/>
+        <location filename="../svgui/widgets/WindowShapePreview.cpp" line="202"/>
         <source>dB / freq</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7858,7 +8633,7 @@
 <context>
     <name>WritableWaveFileModel</name>
     <message>
-        <location filename="../../svcore/data/model/WritableWaveFileModel.h" line="82"/>
+        <location filename="../svcore/data/model/WritableWaveFileModel.h" line="124"/>
         <source>Writable Wave File</source>
         <translation type="unfinished"></translation>
     </message>
Binary file i18n/sonic-visualiser_ru.qm has changed
--- a/i18n/sonic-visualiser_ru.ts	Tue Jan 10 16:10:33 2017 +0000
+++ b/i18n/sonic-visualiser_ru.ts	Tue Jan 10 16:21:32 2017 +0000
@@ -1,20 +1,20 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!DOCTYPE TS>
-<TS version="2.0" language="ru_RU">
+<TS version="2.1" language="ru_RU">
 <context>
     <name>ActivityLog</name>
     <message>
-        <location filename="../../svgui/widgets/ActivityLog.cpp" line="30"/>
+        <location filename="../svgui/widgets/ActivityLog.cpp" line="37"/>
         <source>Activity Log</source>
         <translation>Журнал изменений</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ActivityLog.cpp" line="35"/>
+        <location filename="../svgui/widgets/ActivityLog.cpp" line="42"/>
         <source>&lt;p&gt;Activity Log lists your interactions and other events within %1.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Список всех предпринятых вами действий с %1.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ActivityLog.cpp" line="63"/>
+        <location filename="../svgui/widgets/ActivityLog.cpp" line="77"/>
         <source>%1: %2</source>
         <translation>%1: %2</translation>
     </message>
@@ -22,7 +22,7 @@
 <context>
     <name>AddLayerCommand</name>
     <message>
-        <location filename="../../svapp/framework/Document.cpp" line="956"/>
+        <location filename="../svapp/framework/Document.cpp" line="1108"/>
         <source>Add %1 Layer</source>
         <translation>Добавить слой %1</translation>
     </message>
@@ -30,7 +30,7 @@
 <context>
     <name>AggregateWaveModel</name>
     <message>
-        <location filename="../../svcore/data/model/AggregateWaveModel.h" line="45"/>
+        <location filename="../svcore/data/model/AggregateWaveModel.h" line="45"/>
         <source>Aggregate Wave</source>
         <translation type="unfinished"></translation>
     </message>
@@ -38,25 +38,33 @@
 <context>
     <name>AlignmentModel</name>
     <message>
-        <location filename="../../svcore/data/model/AlignmentModel.h" line="47"/>
+        <location filename="../svcore/data/model/AlignmentModel.h" line="46"/>
         <source>Alignment</source>
         <translation>Выравнивание</translation>
     </message>
 </context>
 <context>
+    <name>AlignmentView</name>
+    <message>
+        <location filename="../svgui/view/AlignmentView.cpp" line="31"/>
+        <source>AlignmentView</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>AudioCallbackPlaySource</name>
     <message>
-        <location filename="../../svapp/audioio/AudioCallbackPlaySource.cpp" line="459"/>
+        <location filename="../svapp/audio/AudioCallbackPlaySource.cpp" line="517"/>
         <source>Play from %1</source>
         <translation>Воспроизведение от %1</translation>
     </message>
     <message>
-        <location filename="../../svapp/audioio/AudioCallbackPlaySource.cpp" line="482"/>
+        <location filename="../svapp/audio/AudioCallbackPlaySource.cpp" line="540"/>
         <source>Stop at %1</source>
         <translation>Остановка в позиции %1</translation>
     </message>
     <message>
-        <location filename="../../svapp/audioio/AudioCallbackPlaySource.cpp" line="1071"/>
+        <location filename="../svapp/audio/AudioCallbackPlaySource.cpp" line="1076"/>
         <source>Change time-stretch factor to %1</source>
         <translation>Смена коэффициента растяжения во времени на %1</translation>
     </message>
@@ -64,39 +72,44 @@
 <context>
     <name>AudioDial</name>
     <message>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="499"/>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="515"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="513"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="529"/>
         <source>Enter new value</source>
         <translation>Введите новое значение</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="416"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="429"/>
         <source>%1: %2%3</source>
         <translation>%1: %2%3</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="418"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="419"/>
+        <source>%1: %2</source>
+        <translation type="unfinished">%1: %2</translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="431"/>
         <source>%2%3</source>
         <translation>%2%3</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="481"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="495"/>
         <source>New value for %1, from %2 to %3 %4:</source>
         <translation>Новое значение для «%1», от %2 до %3 %4:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="484"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="498"/>
         <source>New value for %1, from %2 to %3:</source>
         <translation>Новое значение для «%1», от %2 до %3:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="489"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="503"/>
         <source>Enter a new value from %1 to %2 %3:</source>
         <translation>Введите новое значение от %1 до %2 %3:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="492"/>
-        <location filename="../../svgui/widgets/AudioDial.cpp" line="516"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="506"/>
+        <location filename="../svgui/widgets/AudioDial.cpp" line="530"/>
         <source>Enter a new value from %1 to %2:</source>
         <translation>Введите новое значение от %1 до %2:</translation>
     </message>
@@ -104,100 +117,95 @@
 <context>
     <name>AudioTargetFactory</name>
     <message>
-        <location filename="../../svapp/audioio/AudioTargetFactory.cpp" line="72"/>
         <source>(auto)</source>
-        <translation>(авто)</translation>
-    </message>
-    <message>
-        <location filename="../../svapp/audioio/AudioTargetFactory.cpp" line="76"/>
+        <translation type="vanished">(авто)</translation>
+    </message>
+    <message>
         <source>JACK Audio Connection Kit</source>
-        <translation>Ограничить воспроизведение выделением</translation>
-    </message>
-    <message>
-        <location filename="../../svapp/audioio/AudioTargetFactory.cpp" line="80"/>
+        <translation type="vanished">Ограничить воспроизведение выделением</translation>
+    </message>
+    <message>
         <source>PulseAudio Server</source>
-        <translation>Сервер PulseAudio</translation>
-    </message>
-    <message>
-        <location filename="../../svapp/audioio/AudioTargetFactory.cpp" line="84"/>
+        <translation type="vanished">Сервер PulseAudio</translation>
+    </message>
+    <message>
         <source>Core Audio Device</source>
-        <translation>Устройство Core Audio</translation>
-    </message>
-    <message>
-        <location filename="../../svapp/audioio/AudioTargetFactory.cpp" line="88"/>
+        <translation type="vanished">Устройство Core Audio</translation>
+    </message>
+    <message>
         <source>Default Soundcard Device</source>
-        <translation>Звуковая карта по умолчанию</translation>
+        <translation type="vanished">Звуковая карта по умолчанию</translation>
     </message>
 </context>
 <context>
     <name>BZipFileDevice</name>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="49"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="51"/>
         <source>File is already open</source>
         <translation>Этот файл уже открыт</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="54"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="56"/>
         <source>Append mode not supported</source>
         <translation>Режим добавления в конец не поддерживается</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="60"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="62"/>
         <source>File access mode not specified</source>
         <translation>Способ доступа к файлам не указан</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="66"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="68"/>
         <source>Read and write modes both specified</source>
         <translation>Режимы чтения и записи определены</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="75"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="77"/>
         <source>Failed to open file for writing</source>
         <translation>Не удалось открыть файл для записи</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="86"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="88"/>
         <source>Failed to open bzip2 stream for writing</source>
         <translation>Не удалось открыть поток bzip2 для записи</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="102"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="104"/>
         <source>Failed to open file for reading</source>
         <translation>Не удалось открыть файл для чтения</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="113"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="115"/>
         <source>Failed to open bzip2 stream for reading</source>
         <translation>Не удалось открыть поток bzip2 для чтения</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="127"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="129"/>
         <source>Internal error (open for neither read nor write)</source>
         <translation>Внутренняя ошибка (не открывается ни на чтение, ни на запись)</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="136"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="138"/>
         <source>File not open</source>
         <translation>Файл не открыт</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="148"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="150"/>
         <source>bzip2 stream write close error</source>
         <translation>Ошибка закрытия записи в поток bzip2</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="160"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="162"/>
         <source>bzip2 stream read close error</source>
         <translation>Ошибка закрытия чтения потока bzip2</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="169"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="171"/>
         <source>Internal error (close for neither read nor write)</source>
         <translation>Внутренняя ошибка (не закрывается ни чтение, ни запись)</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/BZipFileDevice.cpp" line="186"/>
+        <location filename="../svcore/data/fileio/BZipFileDevice.cpp" line="188"/>
         <source>bzip2 stream read error</source>
         <translation>Ошибка чтения потока bzip2</translation>
     </message>
@@ -205,7 +213,7 @@
 <context>
     <name>BundleCommand</name>
     <message numerus="yes">
-        <location filename="../../svcore/base/Command.cpp" line="98"/>
+        <location filename="../svcore/base/Command.cpp" line="98"/>
         <source>%1 (%n change(s))</source>
         <translation>
             <numerusform>%1 (%n изменение)</numerusform>
@@ -217,7 +225,8 @@
 <context>
     <name>CSVFileWriter</name>
     <message>
-        <location filename="../../svcore/data/fileio/CSVFileWriter.cpp" line="62"/>
+        <location filename="../svcore/data/fileio/CSVFileWriter.cpp" line="67"/>
+        <location filename="../svcore/data/fileio/CSVFileWriter.cpp" line="92"/>
         <source>Failed to open file %1 for writing</source>
         <translation>Не удалось открыть файл %1 для записи</translation>
     </message>
@@ -225,7 +234,7 @@
 <context>
     <name>CSVFormatDialog</name>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="40"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="45"/>
         <source>Select Data Format</source>
         <translation>Выберите формат данных</translation>
     </message>
@@ -262,83 +271,93 @@
         <translation type="obsolete">Данные (строки последовательны во времени)</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="46"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="51"/>
         <source>Please select the correct data format for this file.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="78"/>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="88"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="83"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="93"/>
         <source>&lt;ignore&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="79"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="84"/>
         <source>Values</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="82"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="87"/>
         <source>(%1 more)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="89"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="94"/>
         <source>Time</source>
         <translation type="unfinished">Время</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="90"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="95"/>
         <source>End time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="91"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="96"/>
         <source>Duration</source>
         <translation type="unfinished">Длительность</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="92"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="97"/>
         <source>Value</source>
         <translation type="unfinished">Значение</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="93"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="98"/>
+        <source>Pitch</source>
+        <translation type="unfinished">Высота тона</translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="99"/>
         <source>Label</source>
         <translation type="unfinished">Метка</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="111"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="121"/>
         <source>Timing is specified:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="114"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="126"/>
         <source>Explicitly, in seconds</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="115"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="127"/>
+        <source>Explicitly, in milliseconds</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="128"/>
         <source>Explicitly, in audio sample frames</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="116"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="129"/>
         <source>Implicitly: rows are equally spaced in time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="124"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="156"/>
         <source>Audio sample rate (Hz):</source>
         <translation>Частота сэмплирования звука (Гц):</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="147"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="179"/>
         <source>Frame increment between rows:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CSVFormatDialog.cpp" line="215"/>
+        <location filename="../svgui/widgets/CSVFormatDialog.cpp" line="249"/>
         <source>Data will be displayed in a %1 layer.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -356,7 +375,7 @@
 <context>
     <name>Colour3DPlotLayer</name>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="698"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="824"/>
         <source>Time:	%1 - %2
 Bin:	%3
 Value:	%4</source>
@@ -365,224 +384,255 @@
 Значение:	%4</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="309"/>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="318"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="384"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="403"/>
         <source>Linear</source>
         <translation>Линейный</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="322"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="407"/>
         <source>&lt;unknown&gt;</source>
         <translation>&lt;неизвестно&gt;</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="170"/>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="216"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="251"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="292"/>
         <source>Colour</source>
         <translation>Цвет</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="171"/>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="211"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="252"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="287"/>
         <source>Scale</source>
         <translation>Масштаб</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="172"/>
         <source>Normalize Columns</source>
-        <translation>Нормализовать столбцы</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="173"/>
+        <translation type="vanished">Нормализовать столбцы</translation>
+    </message>
+    <message>
         <source>Normalize Visible Area</source>
-        <translation>Нормализовать видимую область</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="310"/>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="319"/>
+        <translation type="vanished">Нормализовать видимую область</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="385"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="404"/>
         <source>Log</source>
         <translation>Логарифмический</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="311"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="386"/>
         <source>+/-1</source>
         <translation>±1</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="174"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="254"/>
         <source>Invert Vertical Scale</source>
         <translation>Инвертировать масштаб по вертикали</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="176"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="256"/>
         <source>Always Opaque</source>
         <translation>Всегда непрозрачно</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="312"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="387"/>
         <source>Absolute</source>
         <translation>Абсолютный</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="175"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="255"/>
         <source>Gain</source>
         <translation type="unfinished">Усиление</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="177"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="253"/>
+        <source>Normalization</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="257"/>
         <source>Smooth</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="178"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="258"/>
         <source>Bin Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="213"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="289"/>
         <source>Bins</source>
         <translation type="unfinished">Бины</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/Colour3DPlotLayer.cpp" line="329"/>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="393"/>
+        <source>None</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="394"/>
+        <source>Col</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="395"/>
+        <source>View</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="396"/>
+        <source>Hybrid</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/Colour3DPlotLayer.cpp" line="430"/>
         <source>dB</source>
         <translation>Дб</translation>
     </message>
 </context>
 <context>
+    <name>ColourComboBox</name>
+    <message>
+        <location filename="../svgui/widgets/ColourComboBox.cpp" line="59"/>
+        <source>Name New Colour</source>
+        <translation type="unfinished">Дайте цвету название</translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/ColourComboBox.cpp" line="60"/>
+        <source>Enter a name for the new colour:</source>
+        <translation type="unfinished">Введите название нового цвета:</translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/ColourComboBox.cpp" line="62"/>
+        <source>Prefer black background for this colour</source>
+        <translation type="unfinished">Предпочитать черный фон для этого цвета</translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/ColourComboBox.cpp" line="94"/>
+        <source>Add New Colour...</source>
+        <translation type="unfinished">Добавить новый цвет...</translation>
+    </message>
+</context>
+<context>
     <name>ColourMapper</name>
     <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="48"/>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="66"/>
         <source>&lt;unknown&gt;</source>
-        <translation>&lt;неизвестно&gt;</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="52"/>
+        <translation type="vanished">&lt;неизвестно&gt;</translation>
+    </message>
+    <message>
         <source>Default</source>
-        <translation>По умолчанию</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="53"/>
+        <translation type="vanished">По умолчанию</translation>
+    </message>
+    <message>
         <source>White on Black</source>
-        <translation>Белое на чёрном</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="54"/>
+        <translation type="vanished">Белое на чёрном</translation>
+    </message>
+    <message>
         <source>Black on White</source>
-        <translation>Чёрное на белом</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="55"/>
+        <translation type="vanished">Чёрное на белом</translation>
+    </message>
+    <message>
         <source>Red on Blue</source>
-        <translation>Красное на синем</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="56"/>
+        <translation type="vanished">Красное на синем</translation>
+    </message>
+    <message>
         <source>Yellow on Black</source>
-        <translation>Жёлтое на чёрном</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="57"/>
+        <translation type="vanished">Жёлтое на чёрном</translation>
+    </message>
+    <message>
         <source>Blue on Black</source>
-        <translation>Синее на чёрном</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="58"/>
+        <translation type="vanished">Синее на чёрном</translation>
+    </message>
+    <message>
+        <source>Green</source>
+        <translation type="obsolete">Зелёный</translation>
+    </message>
+    <message>
         <source>Sunset</source>
-        <translation>Закат</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="59"/>
+        <translation type="vanished">Закат</translation>
+    </message>
+    <message>
         <source>Fruit Salad</source>
-        <translation>Фруктовый салат</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="60"/>
+        <translation type="vanished">Фруктовый салат</translation>
+    </message>
+    <message>
         <source>Banded</source>
-        <translation>В полоску</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="61"/>
+        <translation type="vanished">В полоску</translation>
+    </message>
+    <message>
         <source>Highlight</source>
-        <translation>Подсветка</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="62"/>
+        <translation type="vanished">Подсветка</translation>
+    </message>
+    <message>
         <source>Printer</source>
-        <translation>Принтер</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/ColourMapper.cpp" line="63"/>
-        <source>High Gain</source>
-        <translation type="unfinished"></translation>
+        <translation type="vanished">Принтер</translation>
     </message>
 </context>
 <context>
     <name>CommandHistory</name>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="56"/>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="61"/>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="64"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="67"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="70"/>
         <source>&amp;Undo</source>
         <translation>&amp;Отменить</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="57"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="63"/>
         <source>Ctrl+Z</source>
         <translation>Ctrl+Z</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="69"/>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="74"/>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="77"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="75"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="80"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="83"/>
         <source>Re&amp;do</source>
         <translation>Ве&amp;рнуть</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="70"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="76"/>
         <source>Ctrl+Shift+Z</source>
         <translation>Ctrl+Shift+Z</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="500"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="516"/>
         <source>Nothing to undo</source>
         <translation>Нет отменяемых действий</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="500"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="516"/>
         <source>Nothing to redo</source>
         <translation>Нет повторяемых действий</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="516"/>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="538"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="532"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="554"/>
         <source>&amp;Undo %1</source>
         <translation>&amp;Отменить действие «%1»</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="516"/>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="539"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="532"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="555"/>
         <source>Re&amp;do %1</source>
         <translation>Повто&amp;рить действие «%1»</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="58"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="64"/>
         <source>Undo the last editing operation</source>
         <translation>Отменить последнее действие правки</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="71"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="77"/>
         <source>Redo the last operation that was undone</source>
         <translation>Повторить последнее действие правки</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="341"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="357"/>
         <source>Undo %1</source>
         <translation>Отмена действия «%1»</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/CommandHistory.cpp" line="367"/>
+        <location filename="../svgui/widgets/CommandHistory.cpp" line="383"/>
         <source>Redo %1</source>
         <translation>Повтор действия «%1»</translation>
     </message>
@@ -590,15 +640,23 @@
 <context>
     <name>CoreAudioFileReader</name>
     <message>
-        <location filename="../../svcore/data/fileio/CoreAudioFileReader.cpp" line="156"/>
+        <location filename="../svcore/data/fileio/CoreAudioFileReader.cpp" line="162"/>
         <source>Decoding %1...</source>
         <translation type="unfinished">Декодируется %1...</translation>
     </message>
 </context>
 <context>
+    <name>DecodingWavFileReader</name>
+    <message>
+        <location filename="../svcore/data/fileio/DecodingWavFileReader.cpp" line="68"/>
+        <source>Decoding %1...</source>
+        <translation type="unfinished">Декодируется %1...</translation>
+    </message>
+</context>
+<context>
     <name>Dense3DModelPeakCache</name>
     <message>
-        <location filename="../../svcore/data/model/Dense3DModelPeakCache.h" line="86"/>
+        <location filename="../svcore/data/model/Dense3DModelPeakCache.h" line="88"/>
         <source>Dense 3-D Peak Cache</source>
         <translation type="unfinished"></translation>
     </message>
@@ -606,17 +664,17 @@
 <context>
     <name>DenseThreeDimensionalModel</name>
     <message>
-        <location filename="../../svcore/data/model/DenseThreeDimensionalModel.h" line="110"/>
+        <location filename="../svcore/data/model/DenseThreeDimensionalModel.h" line="121"/>
         <source>Dense 3-D</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/DenseThreeDimensionalModel.h" line="127"/>
+        <location filename="../svcore/data/model/DenseThreeDimensionalModel.h" line="138"/>
         <source>Time</source>
         <translation>Время</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/DenseThreeDimensionalModel.h" line="128"/>
+        <location filename="../svcore/data/model/DenseThreeDimensionalModel.h" line="139"/>
         <source>Frame</source>
         <translation>Выборка</translation>
     </message>
@@ -624,7 +682,7 @@
 <context>
     <name>DenseTimeValueModel</name>
     <message>
-        <location filename="../../svcore/data/model/DenseTimeValueModel.h" line="89"/>
+        <location filename="../svcore/data/model/DenseTimeValueModel.h" line="89"/>
         <source>Dense Time-Value</source>
         <translation type="unfinished"></translation>
     </message>
@@ -632,12 +690,12 @@
 <context>
     <name>Document</name>
     <message>
-        <location filename="../../svapp/framework/Document.cpp" line="270"/>
+        <location filename="../svapp/framework/Document.cpp" line="419"/>
         <source>Set main model to %1</source>
         <translation>Сделать %1 основной моделью</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/Document.cpp" line="272"/>
+        <location filename="../svapp/framework/Document.cpp" line="421"/>
         <source>Clear main model</source>
         <translation>Очистить основную модель</translation>
     </message>
@@ -645,7 +703,7 @@
 <context>
     <name>EditableDenseThreeDimensionalModel</name>
     <message>
-        <location filename="../../svcore/data/model/EditableDenseThreeDimensionalModel.h" line="139"/>
+        <location filename="../svcore/data/model/EditableDenseThreeDimensionalModel.h" line="189"/>
         <source>Editable Dense 3-D</source>
         <translation type="unfinished"></translation>
     </message>
@@ -653,12 +711,12 @@
 <context>
     <name>FFTModel</name>
     <message>
-        <location filename="../../svcore/data/model/FFTModel.cpp" line="203"/>
+        <location filename="../svcore/data/model/FFTModel.cpp" line="94"/>
         <source>%1 Hz</source>
         <translation>%1 Гц</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/FFTModel.h" line="188"/>
+        <location filename="../svcore/data/model/FFTModel.h" line="141"/>
         <source>FFT</source>
         <translation>FFT</translation>
     </message>
@@ -666,22 +724,22 @@
 <context>
     <name>Fader</name>
     <message>
-        <location filename="../../svgui/widgets/Fader.cpp" line="217"/>
+        <location filename="../svgui/widgets/Fader.cpp" line="219"/>
         <source>Level: Off</source>
         <translation>Уровень: выкл</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Fader.cpp" line="219"/>
+        <location filename="../svgui/widgets/Fader.cpp" line="221"/>
         <source>Level: %1%2.%3%4 dB</source>
         <translation>Уровень: %1%2.%3%4 Дб</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Fader.cpp" line="141"/>
+        <location filename="../svgui/widgets/Fader.cpp" line="143"/>
         <source>Enter new fader level</source>
         <translation>Ввведите новый уровень фейдера</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Fader.cpp" line="142"/>
+        <location filename="../svgui/widgets/Fader.cpp" line="144"/>
         <source>New fader level, from %1 to %2 dBFS:</source>
         <translation>Новый уровень фейдера, от %1 до %2 dBFS:</translation>
     </message>
@@ -689,48 +747,53 @@
 <context>
     <name>FeatureExtractionModelTransformer</name>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="54"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="87"/>
+        <source>Transforms supplied to a single FeatureExtractionModelTransformer instance must be similar in every respect except plugin output</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="100"/>
         <source>No factory available for feature extraction plugin id &quot;%1&quot; (unknown plugin type, or internal error?)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="60"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="106"/>
         <source>Input model for feature extraction plugin &quot;%1&quot; is of wrong type (internal error?)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="66"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="115"/>
         <source>Failed to instantiate plugin &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="81"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="130"/>
         <source>Cannot provide enough channels to feature extraction plugin &quot;%1&quot; (plugin min is %2, max %3; input model has %4)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="112"/>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="127"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="168"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="187"/>
         <source>Failed to initialise feature extraction plugin &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="117"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="175"/>
         <source>Feature extraction plugin &quot;%1&quot; rejected the given step and block sizes (%2 and %3); using plugin defaults (%4 and %5) instead</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="135"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="197"/>
         <source>Transform was configured for version %1 of plugin &quot;%2&quot;, but the plugin being used is version %3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="150"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="212"/>
         <source>Plugin &quot;%1&quot; has no outputs</source>
         <translation>У расширения &quot;%1&quot; нет выходов</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/FeatureExtractionModelTransformer.cpp" line="165"/>
+        <location filename="../svcore/transform/FeatureExtractionModelTransformer.cpp" line="230"/>
         <source>Plugin &quot;%1&quot; has no output named &quot;%2&quot;</source>
         <translation>У расширения &quot;%1&quot; нет выхода с названием &quot;%2&quot;</translation>
     </message>
@@ -738,57 +801,277 @@
 <context>
     <name>FileSource</name>
     <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="102"/>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="181"/>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="214"/>
+        <location filename="../svcore/data/fileio/FileSource.cpp" line="122"/>
+        <location filename="../svcore/data/fileio/FileSource.cpp" line="204"/>
+        <location filename="../svcore/data/fileio/FileSource.cpp" line="237"/>
         <source>Unsupported scheme in URL</source>
         <translation>Неподдерживаемая схема URL</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="424"/>
+        <location filename="../svcore/data/fileio/FileSource.cpp" line="450"/>
         <source>Downloading %1...</source>
         <translation>Скачивается %1...</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="764"/>
         <source>Failed to connect to FTP server</source>
-        <translation>Не удалось соединиться с FTP-сервером</translation>
-    </message>
-    <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="766"/>
+        <translation type="vanished">Не удалось соединиться с FTP-сервером</translation>
+    </message>
+    <message>
         <source>Login failed</source>
-        <translation>Не удалось авторизоваться</translation>
-    </message>
-    <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="768"/>
+        <translation type="vanished">Не удалось авторизоваться</translation>
+    </message>
+    <message>
         <source>Failed to change to correct directory</source>
-        <translation>Не удалось поменять на корректный каталог</translation>
-    </message>
-    <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="770"/>
+        <translation type="vanished">Не удалось поменять на корректный каталог</translation>
+    </message>
+    <message>
         <source>FTP download aborted</source>
-        <translation>Скачивание с FTP-сервера прервано</translation>
-    </message>
-    <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="790"/>
+        <translation type="vanished">Скачивание с FTP-сервера прервано</translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/fileio/FileSource.cpp" line="744"/>
         <source>Download cancelled</source>
         <translation>Скачивание отменено</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="821"/>
+        <location filename="../svcore/data/fileio/FileSource.cpp" line="772"/>
         <source>Failed to create local file %1</source>
         <translation>Не удалось создать локальный файл %1</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/FileSource.cpp" line="824"/>
+        <location filename="../svcore/data/fileio/FileSource.cpp" line="775"/>
         <source>File contains no data!</source>
         <translation>Файл не содержит данных!</translation>
     </message>
 </context>
 <context>
+    <name>FlexiNoteLayer</name>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="72"/>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="73"/>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="974"/>
+        <source>New Point</source>
+        <translation type="unfinished">Новая точка</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="110"/>
+        <source>Vertical Scale</source>
+        <translation type="unfinished">Верт. масштаб</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="111"/>
+        <source>Scale Units</source>
+        <translation type="unfinished">Единицы шкалы</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="127"/>
+        <source>Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="176"/>
+        <source>Auto-Align</source>
+        <translation type="unfinished">Автовыравнивание</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="177"/>
+        <source>Linear</source>
+        <translation type="unfinished">Линейный</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="178"/>
+        <source>Log</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="179"/>
+        <source>MIDI Notes</source>
+        <translation type="unfinished">Ноты MIDI</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="521"/>
+        <source>In progress</source>
+        <translation type="unfinished">В процессе</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="523"/>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="547"/>
+        <source>No local points</source>
+        <translation type="unfinished">Нет локальных точек</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="561"/>
+        <source>%1 (%2, %3 Hz)</source>
+        <translation type="unfinished">%1 (%2, %3 Гц)</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="568"/>
+        <source>%1 Hz (%2, %3)</source>
+        <translation type="unfinished">%1Гц (%2, %3)</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="574"/>
+        <source>%1 %2</source>
+        <translation type="unfinished">%1 %2</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="581"/>
+        <source>Time:	%1
+Pitch:	%2
+Duration:	%3
+No label</source>
+        <translation type="unfinished">Время:	%1
+Высота тона:	%2
+Длительность:	%3
+Без метки</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="586"/>
+        <source>Time:	%1
+Pitch:	%2
+Duration:	%3
+Label:	%4</source>
+        <translation type="unfinished">Время:	%1
+Высота тона:	%2
+Длительность:	%3
+Метка:	%4</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="979"/>
+        <source>Draw Point</source>
+        <translation type="unfinished">Нарисовать точку</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1055"/>
+        <source>Erase Point</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1136"/>
+        <source>Drag Point</source>
+        <translation type="unfinished">Перетащить точку</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1218"/>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1291"/>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1611"/>
+        <source>Edit Point</source>
+        <translation type="unfinished">Изменить точку</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1220"/>
+        <source>Relocate Point</source>
+        <translation type="unfinished">Переместить точку</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1223"/>
+        <source>Change Point Value</source>
+        <translation type="unfinished">Изменить значение точки</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1355"/>
+        <source>Add Point</source>
+        <translation type="unfinished">Добавить точку</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1395"/>
+        <source>Snap Notes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1444"/>
+        <source>Merge Notes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1627"/>
+        <source>Drag Selection</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1652"/>
+        <source>Resize Selection</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1691"/>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1713"/>
+        <source>Delete Selected Points</source>
+        <translation type="unfinished">Удалить выбранные точки</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1762"/>
+        <source>Re-align pasted items?</source>
+        <translation type="unfinished">Заново выровнять вставленные объекты?</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1763"/>
+        <source>The items you are pasting came from a layer with different source material from this one.  Do you want to re-align them in time, to match the source material for this layer?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1777"/>
+        <source>Paste</source>
+        <translation type="unfinished">Вставить</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/FlexiNoteLayer.cpp" line="1848"/>
+        <source>Record FlexiNote</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>FlexiNoteModel</name>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="136"/>
+        <source>FlexiNote</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="171"/>
+        <source>Time</source>
+        <translation type="unfinished">Время</translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="172"/>
+        <source>Frame</source>
+        <translation type="unfinished">Выборка</translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="173"/>
+        <source>Pitch</source>
+        <translation type="unfinished">Высота тона</translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="174"/>
+        <source>Duration</source>
+        <translation type="unfinished">Длительность</translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="175"/>
+        <source>Level</source>
+        <translation type="unfinished">Уровень</translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="176"/>
+        <source>Label</source>
+        <translation type="unfinished">Метка</translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="177"/>
+        <source>Unknown</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/FlexiNoteModel.h" line="207"/>
+        <source>Edit Data</source>
+        <translation type="unfinished">Изменить данные</translation>
+    </message>
+</context>
+<context>
     <name>I</name>
     <message>
-        <location filename="../../svcore/data/model/IntervalModel.h" line="103"/>
+        <location filename="../svcore/data/model/IntervalModel.h" line="103"/>
         <source>Edit Data</source>
         <translation>Изменить данные</translation>
     </message>
@@ -796,52 +1079,52 @@
 <context>
     <name>ImageDialog</name>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="49"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="49"/>
         <source>Image</source>
         <translation>Изображение</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="56"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="56"/>
         <source>Label:</source>
         <translation>Метка:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="63"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="63"/>
         <source>File or URL:</source>
         <translation>Файл или URL:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="73"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="73"/>
         <source>Browse...</source>
         <translation>Просмотр...</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="79"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="79"/>
         <source>Preview</source>
         <translation>Предпросмотр</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="187"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="187"/>
         <source>Unsupported scheme in URL</source>
         <translation>Неподдерживаемая схема URL</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="188"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="188"/>
         <source>The URL scheme &quot;%1&quot; is not supported</source>
         <translation>Схема URL &quot;%1&quot; не поддерживается</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="192"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="192"/>
         <source>Opening image URL...</source>
         <translation>Открывается изображение по URL...</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="196"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="196"/>
         <source>File download failed</source>
         <translation>Не удалось скачать файл</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ImageDialog.cpp" line="197"/>
+        <location filename="../svgui/widgets/ImageDialog.cpp" line="197"/>
         <source>Failed to download URL &quot;%1&quot;: %2</source>
         <translation>Не удалось скачать URL &quot;%1&quot;: %2</translation>
     </message>
@@ -849,58 +1132,58 @@
 <context>
     <name>ImageLayer</name>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="182"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="182"/>
         <source>In progress</source>
         <translation>В процессе</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="606"/>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="711"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="602"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="707"/>
         <source>Select image</source>
         <translation>Выбрать изображение</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="678"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="674"/>
         <source>Move Image</source>
         <translation>Переместить изображение</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="735"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="731"/>
         <source>Drag Selection</source>
         <translation>Перетащить выделение</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="760"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="756"/>
         <source>Resize Selection</source>
         <translation>Изменить размер выделения</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="794"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="790"/>
         <source>Delete Selection</source>
         <translation>Удалите выделение</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="837"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="833"/>
         <source>Re-align pasted items?</source>
         <translation>Заново выровнять вставленные объекты?</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="838"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="834"/>
         <source>The items you are pasting came from a layer with different source material from this one.  Do you want to re-align them in time, to match the source material for this layer?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="852"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="848"/>
         <source>Paste</source>
         <translation>Вставить</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="884"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="880"/>
         <source>New Point</source>
         <translation>Новая точка</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/ImageLayer.cpp" line="915"/>
+        <location filename="../svgui/layer/ImageLayer.cpp" line="911"/>
         <source>Opening image URL...</source>
         <translation>Открывается изображение по URL...</translation>
     </message>
@@ -908,38 +1191,38 @@
 <context>
     <name>ImageModel</name>
     <message>
-        <location filename="../../svcore/data/model/ImageModel.h" line="96"/>
-        <location filename="../../svcore/data/model/ImageModel.h" line="154"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="96"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="154"/>
         <source>Image</source>
         <translation>Изображение</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/ImageModel.h" line="124"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="124"/>
         <source>Edit Image</source>
         <translation>Изменить изображение</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/ImageModel.h" line="152"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="152"/>
         <source>Time</source>
         <translation>Время</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/ImageModel.h" line="153"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="153"/>
         <source>Frame</source>
         <translation>Выборка</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/ImageModel.h" line="155"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="155"/>
         <source>Label</source>
         <translation>Метка</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/ImageModel.h" line="156"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="156"/>
         <source>Unknown</source>
         <translation>Неизвестно</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/ImageModel.h" line="187"/>
+        <location filename="../svcore/data/model/ImageModel.h" line="187"/>
         <source>Edit Data</source>
         <translation>Изменить данные</translation>
     </message>
@@ -947,41 +1230,40 @@
 <context>
     <name>InteractiveFileFinder</name>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="52"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="192"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="65"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="237"/>
         <source>Select file</source>
         <translation>Выберите файл</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="53"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="193"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="66"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="238"/>
         <source>All files (*.*)</source>
         <translation>Все файлы (*.*)</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="59"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="199"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="72"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="244"/>
         <source>Select a session file</source>
         <translation>Выберите файл сеанса</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="60"/>
         <source>Sonic Visualiser session files (*.sv)
 RDF files (%1)
 All files (*.*)</source>
-        <translation>Файлы сеансов Sonic Visualiser (*.sv)
+        <translation type="vanished">Файлы сеансов Sonic Visualiser (*.sv)
 Файлы RDF (%1)
 Все файлы (*.*)</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="66"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="82"/>
         <source>Audio files (%1)
 All files (*.*)</source>
         <translation>Звуковые файлы (%1)
 Все файлы (*.*)</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="72"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="88"/>
         <source>All supported files (%1 %2)
 Sonic Visualiser Layer XML files (*.svl)
 Comma-separated data files (*.csv)
@@ -1000,7 +1282,7 @@
 Все файлы (*.*)</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="79"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="95"/>
         <source>All supported files (%1 %2)
 Sonic Visualiser Layer XML files (*.svl)
 Comma-separated data files (*.csv)
@@ -1017,34 +1299,32 @@
 Все файлы (*.*)</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="86"/>
         <source>All supported files (*.sv %1 %2)
 Sonic Visualiser session files (*.sv)
 Audio files (%2)
 RDF files (%1)
 All files (*.*)</source>
-        <translation>Все поддерживаемые типы файлов (*.sv %1 %2)
+        <translation type="vanished">Все поддерживаемые типы файлов (*.sv %1 %2)
 Файлы сеансов Sonic Visualiser (*.sv)
 Звуковые файлы (%2)
 Файлы RDF (%1)
 Все файлы (*.*)</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="101"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="133"/>
         <source>Image files (%1)
 All files (*.*)</source>
         <translation>Файлы изображений (%1)
 Все файлы (*.*)</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="107"/>
         <source>All supported files (*.sv %1 %2 %3)
 Sonic Visualiser session files (*.sv)
 Audio files (%1)
 Layer files (%2)
 RDF files (%3)
 All files (*.*)</source>
-        <translation>Все поддерживаемые типы файлов (*.sv %1 %2 %3)
+        <translation type="vanished">Все поддерживаемые типы файлов (*.sv %1 %2 %3)
 Файлы сеансов Sonic Visualiser (*.sv)
 Звуковые файлы (%1)
 Файлы слоев (%2)
@@ -1052,81 +1332,154 @@
 Все файлы (*.*)</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="148"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="192"/>
         <source>File does not exist</source>
         <translation>Файл не существует</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="149"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="193"/>
         <source>&lt;b&gt;File not found&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; does not exist</source>
         <translation>&lt;b&gt;Файл не найден&lt;/b&gt;&lt;p&gt;Файл &quot;%1&quot; не существует</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="154"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="198"/>
         <source>File is not readable</source>
         <translation>Файл нечитаем</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="155"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="199"/>
         <source>&lt;b&gt;File is not readable&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; can not be read</source>
         <translation>&lt;b&gt;Файл нечитаем&lt;/b&gt;&lt;p&gt;Файл &quot;%1&quot; не может быть прочитан</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="160"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="312"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="204"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="401"/>
         <source>Directory selected</source>
         <translation>Выбран каталог</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="161"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="313"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="205"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="402"/>
         <source>&lt;b&gt;Directory selected&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; is a directory</source>
         <translation>&lt;b&gt;Выбран каталог&lt;/b&gt;&lt;p&gt;Файл &quot;%1&quot; является каталогом</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="166"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="210"/>
         <source>Non-file selected</source>
         <translation>Выбран не файл</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="167"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="211"/>
         <source>&lt;b&gt;Not a file&lt;/b&gt;&lt;p&gt;Path &quot;%1&quot; is not a file</source>
         <translation>&lt;b&gt;Это не файл&lt;/b&gt;&lt;p&gt;Путь &quot;%1&quot; не является файлом</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="172"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="216"/>
         <source>File is empty</source>
         <translation>Файл пуст</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="173"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="217"/>
         <source>&lt;b&gt;File is empty&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; is empty</source>
         <translation>&lt;b&gt;Пустой файл&lt;/b&gt;&lt;p&gt;Файл &quot;%1&quot; пуст</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="200"/>
         <source>Sonic Visualiser session files (*.sv)
 All files (*.*)</source>
-        <translation>Файлы сеансов Sonic Visualiser (*.sv)
+        <translation type="vanished">Файлы сеансов Sonic Visualiser (*.sv)
 Все файлы (*.*)</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="206"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="212"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="218"/>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="228"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="73"/>
+        <source>%1 session files (*.%1)
+RDF files (%3)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="102"/>
+        <source>All supported files (%1 %2)
+Comma-separated data files (*.csv)
+Sonic Visualiser Layer XML files (*.svl)
+Space-separated .lab files (*.lab)
+RDF files (%2)
+MIDI files (*.mid)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="109"/>
+        <source>All supported files (%1 %2)
+Comma-separated data files (*.csv)
+Sonic Visualiser Layer XML files (*.svl)
+Space-separated .lab files (*.lab)
+RDF files (%2)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="116"/>
+        <source>All supported files (*.sv %1 %2)
+%3 session files (*.%4)
+Audio files (%2)
+RDF files (%1)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="139"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="293"/>
+        <source>Scalable Vector Graphics files (*.svg)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="144"/>
+        <source>Comma-separated data files (*.csv)
+Space-separated .lab files (*.lab)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="149"/>
+        <source>All supported files (*.sv %1 %2 %3)
+%4 session files (*.%5)
+Audio files (%1)
+Layer files (%2)
+RDF files (%3)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="245"/>
+        <source>%1 session files (*.%2)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="252"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="258"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="264"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="270"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="276"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="286"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="292"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="298"/>
         <source>Select a file to export to</source>
         <translation>Выберите файл, в который экспортировать</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="207"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="253"/>
         <source>WAV audio files (*.wav)
 All files (*.*)</source>
         <translation>Звуковые файлы WAV (*.wav)
 Все файлы (*.*)</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="213"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="259"/>
         <source>Sonic Visualiser Layer XML files (*.svl)
 Comma-separated data files (*.csv)
 RDF/Turtle files (%1)
@@ -1141,7 +1494,7 @@
 Все файлы (*.*)</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="219"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="265"/>
         <source>Sonic Visualiser Layer XML files (*.svl)
 Comma-separated data files (*.csv)
 RDF/Turtle files (%1)
@@ -1154,75 +1507,101 @@
 Все файлы (*.*)</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="229"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="271"/>
+        <source>Comma-separated data files (*.csv)
+Sonic Visualiser Layer XML files (*.svl)
+RDF/Turtle files (%1)
+MIDI files (*.mid)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="277"/>
+        <source>Comma-separated data files (*.csv)
+Sonic Visualiser Layer XML files (*.svl)
+RDF/Turtle files (%1)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="287"/>
         <source>Portable Network Graphics files (*.png)
 All files (*.*)</source>
         <translation>Файлы Portable Network Graphics (*.png)
 Все файлы (*.*)</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="318"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="299"/>
+        <source>Comma-separated data files (*.csv)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="407"/>
         <source>File exists</source>
         <translation>Такой файл уже существует</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="319"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="408"/>
         <source>&lt;b&gt;File exists&lt;/b&gt;&lt;p&gt;The file &quot;%1&quot; already exists.
 Do you want to overwrite it?</source>
         <translation>&lt;b&gt;Файл существует&lt;/b&gt;Файл &quot;%1&quot; уже существует.
 Вы хотите перезаписать его?</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="451"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="560"/>
         <source>&lt;b&gt;File not found&lt;/b&gt;&lt;p&gt;Audio file &quot;%1&quot; could not be opened.
 Do you want to locate it?</source>
         <translation>&lt;b&gt;Файл не найден&lt;/b&gt;&lt;p&gt;Не удалось открыть звуковой файл &quot;%1&quot;.
 Вы хотите указать его программе?</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="453"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="562"/>
         <source>&lt;b&gt;File not found&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; could not be opened.
 Do you want to locate it?</source>
         <translation>&lt;b&gt;Файл не найден&lt;/b&gt;&lt;p&gt;Не удалось открыть файл &quot;%1&quot;.
 Вы хотите указать его программе?</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="463"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="572"/>
         <source>Failed to open file</source>
         <translation>Не удалось открыть файл</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="465"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="574"/>
         <source>Locate file...</source>
         <translation>Указать файл...</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="466"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="575"/>
         <source>Use URL...</source>
         <translation>Использовать URL...</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="467"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="576"/>
         <source>Cancel</source>
         <translation>Отменить</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="486"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="595"/>
         <source>Use URL</source>
         <translation>Использовать URL</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="487"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="596"/>
         <source>Please enter the URL to use for this file:</source>
         <translation>Укажите URL, который будет использоваться для этого файла:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="495"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="604"/>
         <source>Failed to open location</source>
         <translation>Не удалось открыть местоположение</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/InteractiveFileFinder.cpp" line="496"/>
+        <location filename="../svgui/widgets/InteractiveFileFinder.cpp" line="605"/>
         <source>&lt;b&gt;Failed to open location&lt;/b&gt;&lt;p&gt;URL &quot;%1&quot; could not be opened</source>
         <translation>&lt;b&gt;Не удалось открыть местоположение&lt;/b&gt;&lt;p&gt;Не удалось открыть URL &quot;%1&quot;.</translation>
     </message>
@@ -1230,65 +1609,65 @@
 <context>
     <name>ItemEditDialog</name>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="58"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="61"/>
         <source>Timing</source>
         <translation>Тайминг</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="69"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="72"/>
         <source>Time:</source>
         <translation>Время:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="73"/>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="104"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="76"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="107"/>
         <source> frames</source>
         <translation> выборок</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="82"/>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="113"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="85"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="116"/>
         <source> sec</source>
         <translation>с</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="89"/>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="120"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="92"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="123"/>
         <source> usec</source>
         <translation> мс</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="100"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="103"/>
         <source>Duration:</source>
         <translation>Длительность:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="132"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="135"/>
         <source>Properties</source>
         <translation>Свойства</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="145"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="148"/>
         <source>Value:</source>
         <translation>Значение:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="161"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="164"/>
         <source>Text:</source>
         <translation>Текст:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="180"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="183"/>
         <source>OK</source>
         <translation>ОК</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="181"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="184"/>
         <source>Reset</source>
         <translation>Сбросить</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ItemEditDialog.cpp" line="182"/>
+        <location filename="../svgui/widgets/ItemEditDialog.cpp" line="185"/>
         <source>Cancel</source>
         <translation>Отменить</translation>
     </message>
@@ -1296,25 +1675,29 @@
 <context>
     <name>KeyReference</name>
     <message>
-        <location filename="../../svgui/widgets/KeyReference.cpp" line="61"/>
-        <location filename="../../svgui/widgets/KeyReference.cpp" line="92"/>
+        <location filename="../svgui/widgets/KeyReference.cpp" line="62"/>
+        <location filename="../svgui/widgets/KeyReference.cpp" line="100"/>
         <source>&amp;</source>
         <translation>&amp;</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/KeyReference.cpp" line="145"/>
+        <location filename="../svgui/widgets/KeyReference.cpp" line="159"/>
         <source>&lt;i&gt;or&lt;/i&gt;&amp;nbsp;&lt;b&gt;%1&lt;/b&gt;</source>
         <translation>&lt;i&gt;или&lt;/i&gt;&amp;nbsp;&lt;b&gt;%1&lt;/b&gt;</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/KeyReference.cpp" line="147"/>
+        <location filename="../svgui/widgets/KeyReference.cpp" line="161"/>
         <source>&lt;/b&gt;&amp;nbsp;(%1)&lt;b&gt;</source>
         <translation>&lt;/b&gt;&amp;nbsp;(%1)&lt;b&gt;</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/KeyReference.cpp" line="162"/>
+        <location filename="../svgui/widgets/KeyReference.cpp" line="176"/>
+        <source>%1: Key and Mouse Reference</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <source>Sonic Visualiser: Key and Mouse Reference</source>
-        <translation>Справка по использованию клавиатуры и мыши</translation>
+        <translation type="vanished">Справка по использованию клавиатуры и мыши</translation>
     </message>
 </context>
 <context>
@@ -1327,17 +1710,17 @@
 <context>
     <name>LabelCounterInputDialog</name>
     <message>
-        <location filename="../../svgui/widgets/LabelCounterInputDialog.cpp" line="29"/>
+        <location filename="../svgui/widgets/LabelCounterInputDialog.cpp" line="29"/>
         <source>Set Counters</source>
         <translation>Установка счётчиков</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LabelCounterInputDialog.cpp" line="33"/>
+        <location filename="../svgui/widgets/LabelCounterInputDialog.cpp" line="33"/>
         <source>Fine counter (beats):</source>
         <translation>Точный счётчик (доли):</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LabelCounterInputDialog.cpp" line="36"/>
+        <location filename="../svgui/widgets/LabelCounterInputDialog.cpp" line="36"/>
         <source>Coarse counter (bars):</source>
         <translation>Грубый счётчик (такты):</translation>
     </message>
@@ -1345,240 +1728,276 @@
 <context>
     <name>Labeller</name>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="89"/>
+        <location filename="../svcore/data/model/Labeller.h" line="89"/>
         <source>No numbering</source>
         <translation>Без нумерации</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="91"/>
+        <location filename="../svcore/data/model/Labeller.h" line="91"/>
         <source>Simple counter</source>
         <translation>Простой счетчик</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="93"/>
+        <location filename="../svcore/data/model/Labeller.h" line="93"/>
         <source>Cyclical counter</source>
         <translation>Циклический счетчик</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="95"/>
+        <location filename="../svcore/data/model/Labeller.h" line="95"/>
         <source>Cyclical two-level counter (bar/beat)</source>
         <translation>Циклический двухуровневый счетчик (такт/доля)</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="97"/>
+        <location filename="../svcore/data/model/Labeller.h" line="97"/>
         <source>Audio sample frame number</source>
         <translation>Номер выборки звукового сэмпла</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="99"/>
+        <location filename="../svcore/data/model/Labeller.h" line="99"/>
         <source>Time in seconds</source>
         <translation>Время в секундах</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="101"/>
+        <location filename="../svcore/data/model/Labeller.h" line="101"/>
         <source>Duration to the following item</source>
         <translation>Длительность до следующей отметки</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="103"/>
+        <location filename="../svcore/data/model/Labeller.h" line="103"/>
         <source>Tempo (bpm) based on duration to following item</source>
         <translation>Темп (bpm) на основе длительности до следующей отметки</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="105"/>
+        <location filename="../svcore/data/model/Labeller.h" line="105"/>
         <source>Duration since the previous item</source>
         <translation>Длительность после предыдущей отметки</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="107"/>
+        <location filename="../svcore/data/model/Labeller.h" line="107"/>
         <source>Tempo (bpm) based on duration since previous item</source>
         <translation>Темп (bpm) на основе длительности после предыдущей отметки</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="109"/>
+        <location filename="../svcore/data/model/Labeller.h" line="109"/>
         <source>Same as the nearest previous item</source>
         <translation>Как и ближайший предыдущий объект</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="111"/>
+        <location filename="../svcore/data/model/Labeller.h" line="111"/>
         <source>Value extracted from the item&apos;s label (where possible)</source>
         <translation type="unfinished">Значение, извлечённое из метки объекта (если возможно)</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="153"/>
+        <location filename="../svcore/data/model/Labeller.h" line="159"/>
+        <location filename="../svcore/data/model/Labeller.h" line="259"/>
         <source>%1.%2</source>
         <translation>%1.%2</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="157"/>
+        <location filename="../svcore/data/model/Labeller.h" line="163"/>
         <source>%1</source>
         <translation>%1</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/Labeller.h" line="176"/>
+        <location filename="../svcore/data/model/Labeller.h" line="185"/>
         <source>Label Points</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../svcore/data/model/Labeller.h" line="232"/>
+        <source>Subdivide Points</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/data/model/Labeller.h" line="276"/>
+        <source>Winnow Points</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>Layer</name>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="70"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="72"/>
         <source>Waveform</source>
         <translation>Волновая форма</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="71"/>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="87"/>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="91"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="73"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="90"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="94"/>
         <source>Spectrogram</source>
         <translation>Спектрограмма</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="72"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="74"/>
         <source>Ruler</source>
         <translation>Линейка</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="73"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="75"/>
         <source>Time Instants</source>
         <translation>Отметки времени</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="74"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="76"/>
         <source>Time Values</source>
         <translation>Значения времени</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="75"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="77"/>
         <source>Notes</source>
         <translation>Ноты</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="77"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="78"/>
+        <source>Flexible Notes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="80"/>
         <source>Text</source>
         <translation>Текст</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="79"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="82"/>
         <source>Colour 3D Plot</source>
         <translation>Цветной 3D-график</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="96"/>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="99"/>
+        <source>Unknown Layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Layer</source>
+        <translation type="vanished">Слой</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="83"/>
+        <source>Spectrum</source>
+        <translation>Спектр</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="84"/>
+        <source>Time Slice</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="81"/>
+        <source>Images</source>
+        <translation>Изображения</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/LayerFactory.cpp" line="79"/>
+        <source>Regions</source>
+        <translation>Области</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/Layer.cpp" line="340"/>
+        <source>Make Measurement</source>
+        <translation>Создать замер</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/Layer.cpp" line="358"/>
+        <source>Delete Measurement</source>
+        <translation>Удалить замер</translation>
+    </message>
+</context>
+<context>
+    <name>Layer::AddMeasurementRectCommand</name>
+    <message>
+        <source>Make Measurement</source>
+        <translation type="obsolete">Создать замер</translation>
+    </message>
+</context>
+<context>
+    <name>Layer::DeleteMeasurementRectCommand</name>
+    <message>
+        <source>Delete Measurement</source>
+        <translation type="obsolete">Удалить замер</translation>
+    </message>
+</context>
+<context>
+    <name>LayerTreeDialog</name>
+    <message>
+        <location filename="../svgui/widgets/LayerTreeDialog.cpp" line="34"/>
+        <source>Layer Summary</source>
+        <translation>Сводка по слою</translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/LayerTreeDialog.cpp" line="40"/>
+        <source>Audio Data Sources</source>
+        <translation>Источники звуковых данных</translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/LayerTreeDialog.cpp" line="65"/>
+        <source>Panes and Layers</source>
+        <translation>Окна и слои</translation>
+    </message>
+</context>
+<context>
+    <name>LayerTreeModel</name>
+    <message>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="514"/>
         <source>Layer</source>
         <translation>Слой</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="80"/>
-        <source>Spectrum</source>
-        <translation>Спектр</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="81"/>
-        <source>Time Slice</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="78"/>
-        <source>Images</source>
-        <translation>Изображения</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/LayerFactory.cpp" line="76"/>
-        <source>Regions</source>
-        <translation>Области</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/Layer.cpp" line="340"/>
-        <source>Make Measurement</source>
-        <translation>Создать замер</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/Layer.cpp" line="358"/>
-        <source>Delete Measurement</source>
-        <translation>Удалить замер</translation>
-    </message>
-</context>
-<context>
-    <name>Layer::AddMeasurementRectCommand</name>
-    <message>
-        <source>Make Measurement</source>
-        <translation type="obsolete">Создать замер</translation>
-    </message>
-</context>
-<context>
-    <name>Layer::DeleteMeasurementRectCommand</name>
-    <message>
-        <source>Delete Measurement</source>
-        <translation type="obsolete">Удалить замер</translation>
-    </message>
-</context>
-<context>
-    <name>LayerTreeDialog</name>
-    <message>
-        <location filename="../../svgui/widgets/LayerTreeDialog.cpp" line="34"/>
-        <source>Layer Summary</source>
-        <translation>Сводка по слою</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/LayerTreeDialog.cpp" line="40"/>
-        <source>Audio Data Sources</source>
-        <translation>Источники звуковых данных</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/LayerTreeDialog.cpp" line="61"/>
-        <source>Panes and Layers</source>
-        <translation>Окна и слои</translation>
-    </message>
-</context>
-<context>
-    <name>LayerTreeModel</name>
-    <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="514"/>
-        <source>Layer</source>
-        <translation>Слой</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="517"/>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="517"/>
         <source>Model</source>
         <translation>Модель</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="515"/>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="515"/>
         <source>Shown</source>
         <translation>Отображение</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="516"/>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="516"/>
         <source>Played</source>
         <translation>Воспризведение</translation>
     </message>
 </context>
 <context>
+    <name>LevelPanToolButton</name>
+    <message>
+        <location filename="../svgui/widgets/LevelPanToolButton.cpp" line="52"/>
+        <source>Click to adjust level and pan</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>LevelPanWidget</name>
+    <message>
+        <location filename="../svgui/widgets/LevelPanWidget.cpp" line="45"/>
+        <source>Drag vertically to adjust level, horizontally to adjust pan</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>MIDIFileImportDialog</name>
     <message>
-        <location filename="../../svgui/widgets/MIDIFileImportDialog.cpp" line="32"/>
+        <location filename="../svgui/widgets/MIDIFileImportDialog.cpp" line="32"/>
         <source>Merge all tracks</source>
         <translation>Объединить все дорожки</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/MIDIFileImportDialog.cpp" line="33"/>
+        <location filename="../svgui/widgets/MIDIFileImportDialog.cpp" line="33"/>
         <source>Merge all non-percussion tracks</source>
         <translation>Объединить все неперкуссионные дорожки</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/MIDIFileImportDialog.cpp" line="50"/>
+        <location filename="../svgui/widgets/MIDIFileImportDialog.cpp" line="50"/>
         <source>Select track or tracks to import</source>
         <translation>Выберите одну или несколько дорожек для импорта</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/MIDIFileImportDialog.cpp" line="51"/>
+        <location filename="../svgui/widgets/MIDIFileImportDialog.cpp" line="51"/>
         <source>&lt;b&gt;Select track to import&lt;/b&gt;&lt;p&gt;You can only import this file as a single annotation layer, but the file contains more than one track, or notes on more than one channel.&lt;p&gt;Please select the track or merged tracks you wish to import:</source>
         <translation>&lt;b&gt;Выберите импортируемую дорожку&lt;/b&gt;&lt;p&gt;Вы можете импортировать этот файл лишь как одиночный слой аннотации, но в файле либо больше одной дорожки, либо ноты в более чем одном канале.&lt;p&gt;Выберите одну дорожку или несколько объединяемых дорожек для импорта:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/MIDIFileImportDialog.cpp" line="70"/>
+        <location filename="../svgui/widgets/MIDIFileImportDialog.cpp" line="70"/>
         <source>Error in MIDI file import</source>
         <translation>Ошибка при импорте файла MIDI</translation>
     </message>
@@ -1586,89 +2005,89 @@
 <context>
     <name>MIDIFileReader</name>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="112"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="113"/>
         <source>Wrong length for long data in MIDI stream (%1, should be %2)</source>
         <translation>Неправильная длительность больших данных в потоке MIDI (%1, должно быть %2)</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="127"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="128"/>
         <source>Wrong length for int data in MIDI stream (%1, should be %2)</source>
         <translation>Неправильная длительность int-данных в потоке MIDI (%1, должно быть %2)</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="144"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="145"/>
         <source>getMIDIByte called but no MIDI file open</source>
         <translation>Функция getMIDIByte вызвана, но ни один файл MIDI не открыт</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="148"/>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="177"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="149"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="178"/>
         <source>End of MIDI file encountered while reading</source>
         <translation>При чтении обнаружен конец файла MIDI</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="152"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="153"/>
         <source>Attempt to get more bytes than expected on Track</source>
         <translation>Попытка получить из дорожки больше байтов, чем ожидалось</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="161"/>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="197"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="162"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="198"/>
         <source>Attempt to read past MIDI file end</source>
         <translation>Попытка прочитать файл MIDI после его окончания</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="173"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="174"/>
         <source>getMIDIBytes called but no MIDI file open</source>
         <translation>Функция getMIDIBytes вызвана, но ни один файл MIDI не открыт</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="181"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="182"/>
         <source>Attempt to get more bytes than available on Track (%1, only have %2)</source>
         <translation>Попытка получить из дорожки больше байтов, чем ожидалось  (%1, а есть лишь %2)</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="214"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="215"/>
         <source>getNumberFromMIDIBytes called but no MIDI file open</source>
         <translation>Функция getNumberFromMIDIBytes вызвана, но ни один файл MIDI не открыт</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="248"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="249"/>
         <source>skipToNextTrack called but no MIDI file open</source>
         <translation>Функция skipToNextTrack вызвана, но ни один файл MIDI не открыт</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="479"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="482"/>
         <source>Invalid event code %1 found</source>
         <translation>Обнаружен некорректный код события %1</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="494"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="497"/>
         <source>Running status used for first event in track</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="812"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="808"/>
         <source>MIDI file &quot;%1&quot; has no notes in any track</source>
         <translation>Ни в одной дорожке файла MIDI &quot;%1&quot; нет нот</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="835"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="831"/>
         <source> - uses GM percussion channel</source>
         <translation> — использует канал перкуссии GM</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="839"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="835"/>
         <source>Track %1 (%2)%3</source>
         <translation>Дорожка %1 (%2)%3</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="843"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="839"/>
         <source>Track %1 (untitled)%3</source>
         <translation>Дорожка %1 (без имени)%3</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/MIDIFileReader.cpp" line="1028"/>
+        <location filename="../svcore/data/fileio/MIDIFileReader.cpp" line="1024"/>
         <source>%1 - vel %2</source>
         <translation>%1 - vel %2</translation>
     </message>
@@ -1676,7 +2095,7 @@
 <context>
     <name>MIDIInput</name>
     <message>
-        <location filename="../../svcore/data/midi/MIDIInput.cpp" line="30"/>
+        <location filename="../svcore/data/midi/MIDIInput.cpp" line="30"/>
         <source>Input</source>
         <translation>Вход</translation>
     </message>
@@ -1684,7 +2103,7 @@
 <context>
     <name>MP3FileReader</name>
     <message>
-        <location filename="../../svcore/data/fileio/MP3FileReader.cpp" line="115"/>
+        <location filename="../svcore/data/fileio/MP3FileReader.cpp" line="145"/>
         <source>Decoding %1...</source>
         <translation>Декодируется %1...</translation>
     </message>
@@ -1696,29 +2115,29 @@
         <translation type="obsolete">Sonic Visualiser</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="356"/>
-        <location filename="../main/MainWindow.cpp" line="1030"/>
-        <location filename="../main/MainWindow.cpp" line="1037"/>
+        <location filename="../main/MainWindow.cpp" line="396"/>
+        <location filename="../main/MainWindow.cpp" line="1107"/>
+        <location filename="../main/MainWindow.cpp" line="1114"/>
         <source>&amp;Layer</source>
         <translation>С&amp;лой</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="426"/>
+        <location filename="../main/MainWindow.cpp" line="466"/>
         <source>&amp;File</source>
         <translation>&amp;Файл</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="428"/>
+        <location filename="../main/MainWindow.cpp" line="468"/>
         <source>File Toolbar</source>
         <translation>Панель файлов</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="436"/>
+        <location filename="../main/MainWindow.cpp" line="475"/>
         <source>&amp;New Session</source>
         <translation>&amp;Создать сеанс</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="437"/>
+        <location filename="../main/MainWindow.cpp" line="476"/>
         <source>Ctrl+N</source>
         <translation>Ctrl+N</translation>
     </message>
@@ -1727,7 +2146,7 @@
         <translation type="obsolete">&amp;Открыть сеанс...</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="447"/>
+        <location filename="../main/MainWindow.cpp" line="485"/>
         <source>Ctrl+O</source>
         <translation>Ctrl+O</translation>
     </message>
@@ -1736,22 +2155,22 @@
         <translation type="obsolete">Открыть файл сохранённого ранее сеанса Sonic Visualiser</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="446"/>
+        <location filename="../main/MainWindow.cpp" line="484"/>
         <source>&amp;Open...</source>
         <translation>О&amp;ткрыть...</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="448"/>
+        <location filename="../main/MainWindow.cpp" line="486"/>
         <source>Open a session file, audio file, or layer</source>
         <translation>Открыть файл сеанса, звуковой файл или слой</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="486"/>
+        <location filename="../main/MainWindow.cpp" line="524"/>
         <source>&amp;Save Session</source>
         <translation>Сохр&amp;анить сеанс</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="487"/>
+        <location filename="../main/MainWindow.cpp" line="525"/>
         <source>Ctrl+S</source>
         <translation>Ctrl+S</translation>
     </message>
@@ -1760,7 +2179,7 @@
         <translation type="obsolete">Сохранить в файл текущий сеанс Sonic Visualiser</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="497"/>
+        <location filename="../main/MainWindow.cpp" line="534"/>
         <source>Save Session &amp;As...</source>
         <translation>Сохранить сеанс &amp;как...</translation>
     </message>
@@ -1773,7 +2192,7 @@
         <translation type="obsolete">&amp;Импортировать звуковой файл...</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="456"/>
+        <location filename="../main/MainWindow.cpp" line="495"/>
         <source>Ctrl+I</source>
         <translation>Ctrl+I</translation>
     </message>
@@ -1794,478 +2213,593 @@
         <translation type="obsolete">Импортировать ещё один звуковой файл в отдельный слой</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="522"/>
+        <location filename="../main/MainWindow.cpp" line="559"/>
         <source>&amp;Export Audio File...</source>
         <translation>Э&amp;кспортировать звуковой файл...</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="523"/>
+        <location filename="../main/MainWindow.cpp" line="560"/>
         <source>Export selection as an audio file</source>
         <translation>Экспортировать выделенное в звуковой файл</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="536"/>
+        <location filename="../main/MainWindow.cpp" line="573"/>
         <source>Import Annotation &amp;Layer...</source>
         <translation>И&amp;мпортировать слой аннотаций...</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="537"/>
+        <location filename="../main/MainWindow.cpp" line="574"/>
         <source>Ctrl+L</source>
         <translation>Ctrl+L</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="538"/>
+        <location filename="../main/MainWindow.cpp" line="575"/>
         <source>Import layer data from an existing file</source>
         <translation>Импортировать данные слоя из существующего файла</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="544"/>
         <source>Export Annotation Layer...</source>
-        <translation>Экспортировать слой аннотаций...</translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="545"/>
+        <translation type="vanished">Экспортировать слой аннотаций...</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="583"/>
         <source>Export layer data to a file</source>
         <translation>Экспортировать данные слоя в файл</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="589"/>
+        <location filename="../main/MainWindow.cpp" line="641"/>
         <source>&amp;Quit</source>
         <translation>В&amp;ыход</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="590"/>
+        <location filename="../main/MainWindow.cpp" line="642"/>
         <source>Ctrl+Q</source>
         <translation>Ctrl+Q</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="602"/>
+        <location filename="../main/MainWindow.cpp" line="654"/>
         <source>&amp;Edit</source>
         <translation>&amp;Правка</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="613"/>
+        <location filename="../main/MainWindow.cpp" line="665"/>
         <source>Cu&amp;t</source>
         <translation>&amp;Вырезать</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="614"/>
+        <location filename="../main/MainWindow.cpp" line="666"/>
         <source>Ctrl+X</source>
         <translation>Ctrl+X</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="623"/>
+        <location filename="../main/MainWindow.cpp" line="675"/>
         <source>&amp;Copy</source>
         <translation>С&amp;копировать</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="624"/>
+        <location filename="../main/MainWindow.cpp" line="676"/>
         <source>Ctrl+C</source>
         <translation>Ctrl+C</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="633"/>
+        <location filename="../main/MainWindow.cpp" line="685"/>
         <source>&amp;Paste</source>
         <translation>Вст&amp;авить</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="634"/>
+        <location filename="../main/MainWindow.cpp" line="686"/>
         <source>Ctrl+V</source>
         <translation>Ctrl+V</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="651"/>
-        <location filename="../main/MainWindow.cpp" line="2200"/>
+        <location filename="../main/MainWindow.cpp" line="703"/>
+        <location filename="../main/MainWindow.cpp" line="2381"/>
         <source>&amp;Delete Selected Items</source>
         <translation>&amp;Удалить выбранное</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="652"/>
+        <location filename="../main/MainWindow.cpp" line="704"/>
         <source>Del</source>
         <translation>Del</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="665"/>
+        <location filename="../main/MainWindow.cpp" line="717"/>
         <source>Select &amp;All</source>
         <translation>В&amp;ыделить всё</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="666"/>
+        <location filename="../main/MainWindow.cpp" line="718"/>
         <source>Ctrl+A</source>
         <translation>Ctrl+A</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="674"/>
+        <location filename="../main/MainWindow.cpp" line="726"/>
         <source>Select &amp;Visible Range</source>
         <translation>Вы&amp;делить всё видимое</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="675"/>
+        <location filename="../main/MainWindow.cpp" line="727"/>
         <source>Ctrl+Shift+A</source>
         <translation>Ctrl+Shift+A</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="682"/>
+        <location filename="../main/MainWindow.cpp" line="734"/>
         <source>Select to &amp;Start</source>
         <translation>Выделить до &amp;начала</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="683"/>
+        <location filename="../main/MainWindow.cpp" line="735"/>
+        <location filename="../main/MainWindow.cpp" line="2197"/>
+        <location filename="../main/MainWindow.cpp" line="2232"/>
+        <location filename="../main/MainWindow.cpp" line="2312"/>
         <source>Shift+Left</source>
         <translation>Shift+Left</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="690"/>
+        <location filename="../main/MainWindow.cpp" line="742"/>
         <source>Select to &amp;End</source>
         <translation>Выделить до &amp;конца</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="691"/>
+        <location filename="../main/MainWindow.cpp" line="743"/>
         <source>Shift+Right</source>
         <translation>Shift+Right</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="698"/>
+        <location filename="../main/MainWindow.cpp" line="750"/>
         <source>C&amp;lear Selection</source>
         <translation>Сн&amp;ять выделение</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="699"/>
+        <location filename="../main/MainWindow.cpp" line="751"/>
         <source>Esc</source>
         <translation>Esc</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="711"/>
+        <location filename="../main/MainWindow.cpp" line="763"/>
         <source>&amp;Insert Instant at Playback Position</source>
         <translation>Вставить &amp;отметку в точку воспроизведения</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="712"/>
+        <location filename="../main/MainWindow.cpp" line="764"/>
         <source>Enter</source>
         <translation>Enter</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="814"/>
+        <location filename="../main/MainWindow.cpp" line="880"/>
         <source>&amp;View</source>
         <translation>&amp;Вид</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="926"/>
+        <location filename="../main/MainWindow.cpp" line="994"/>
         <source>0</source>
         <translation>0</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="936"/>
+        <location filename="../main/MainWindow.cpp" line="1004"/>
         <source>9</source>
         <translation>9</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="946"/>
+        <location filename="../main/MainWindow.cpp" line="1014"/>
         <source>8</source>
         <translation>8</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="816"/>
+        <location filename="../main/MainWindow.cpp" line="882"/>
         <source>Scroll &amp;Left</source>
         <translation>Прокрутить в&amp;лево</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="438"/>
+        <location filename="../main/MainWindow.cpp" line="242"/>
+        <source>Playback Speed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="477"/>
         <source>Abandon the current %1 session and start a new one</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="464"/>
+        <location filename="../main/MainWindow.cpp" line="503"/>
         <source>Replace &amp;Main Audio...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="465"/>
+        <location filename="../main/MainWindow.cpp" line="504"/>
         <source>Replace the main audio file of the session with a different file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="488"/>
+        <location filename="../main/MainWindow.cpp" line="526"/>
         <source>Save the current session into a %1 session file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="499"/>
+        <location filename="../main/MainWindow.cpp" line="536"/>
         <source>Save the current session into a new %1 session file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="591"/>
+        <location filename="../main/MainWindow.cpp" line="565"/>
+        <source>Export Audio Data...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="581"/>
+        <source>Export Annotation La&amp;yer...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="582"/>
+        <source>Ctrl+Y</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="597"/>
+        <source>Export SVG File...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="598"/>
+        <source>Export a single pane to a scalable SVG image file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="605"/>
+        <source>Browse Recorded Audio Folder</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="606"/>
+        <source>Open the Recorded Audio folder in the system file browser</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="643"/>
         <source>Exit %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="784"/>
+        <location filename="../main/MainWindow.cpp" line="786"/>
+        <source>Ctrl+Shift+Return</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="836"/>
         <source>Reset Numbering Counters</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="785"/>
+        <location filename="../main/MainWindow.cpp" line="837"/>
         <source>Reset to 1 all the counters used for counter-based labelling</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="817"/>
+        <location filename="../main/MainWindow.cpp" line="856"/>
+        <source>Subdivide Selected Instants...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="857"/>
+        <source>Add new instants at regular intervals between the selected instants</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="862"/>
+        <source>Winnow Selected Instants...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="863"/>
+        <source>Remove subdivisions, leaving only every Nth instant</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="883"/>
+        <location filename="../main/MainWindow.cpp" line="2194"/>
+        <location filename="../main/MainWindow.cpp" line="2220"/>
+        <location filename="../main/MainWindow.cpp" line="2250"/>
+        <location filename="../main/MainWindow.cpp" line="2271"/>
+        <location filename="../main/MainWindow.cpp" line="2289"/>
+        <location filename="../main/MainWindow.cpp" line="2306"/>
         <source>Left</source>
         <translation>Влево</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="818"/>
+        <location filename="../main/MainWindow.cpp" line="884"/>
         <source>Scroll the current pane to the left</source>
         <translation>Прокрутить активное окно влево</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="824"/>
+        <location filename="../main/MainWindow.cpp" line="890"/>
         <source>Scroll &amp;Right</source>
         <translation>Прокрутить в&amp;право</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="825"/>
+        <location filename="../main/MainWindow.cpp" line="891"/>
         <source>Right</source>
         <translation>Вправо</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="826"/>
+        <location filename="../main/MainWindow.cpp" line="892"/>
         <source>Scroll the current pane to the right</source>
         <translation>Прокрутить активное окно вправо</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="833"/>
+        <location filename="../main/MainWindow.cpp" line="899"/>
+        <location filename="../main/MainWindow.cpp" line="2224"/>
+        <location filename="../main/MainWindow.cpp" line="2228"/>
         <source>Ctrl+Left</source>
         <translation>Ctrl+Влево</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="834"/>
+        <location filename="../main/MainWindow.cpp" line="900"/>
         <source>Scroll the current pane a big step to the left</source>
         <translation>Сделать большой шаг прокрутки влево</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="841"/>
+        <location filename="../main/MainWindow.cpp" line="907"/>
         <source>Ctrl+Right</source>
         <translation>Ctrl+Вправо</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="842"/>
+        <location filename="../main/MainWindow.cpp" line="908"/>
         <source>Scroll the current pane a big step to the right</source>
         <translation>Сделать большой шаг прокрутки вправо</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="869"/>
+        <location filename="../main/MainWindow.cpp" line="935"/>
         <source>Zoom &amp;In</source>
         <translation>При&amp;близить</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="870"/>
+        <location filename="../main/MainWindow.cpp" line="936"/>
         <source>Up</source>
         <translation>Вверх</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="871"/>
+        <location filename="../main/MainWindow.cpp" line="937"/>
         <source>Increase the zoom level</source>
         <translation>Увеличить масштаб отображения</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="878"/>
+        <location filename="../main/MainWindow.cpp" line="944"/>
         <source>Zoom &amp;Out</source>
         <translation>&amp;Отдалить</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="879"/>
+        <location filename="../main/MainWindow.cpp" line="945"/>
         <source>Down</source>
         <translation>Вниз</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="880"/>
+        <location filename="../main/MainWindow.cpp" line="946"/>
         <source>Decrease the zoom level</source>
         <translation>Уменьшить масштаб отображения</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="886"/>
+        <location filename="../main/MainWindow.cpp" line="952"/>
         <source>Restore &amp;Default Zoom</source>
         <translation>&amp;Восстановить обычный масштаб</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="893"/>
+        <location filename="../main/MainWindow.cpp" line="959"/>
         <source>Zoom to &amp;Fit</source>
         <translation>&amp;Уместить в окне</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="895"/>
+        <location filename="../main/MainWindow.cpp" line="961"/>
         <source>Zoom to show the whole file</source>
         <translation>Увидеть весь файл</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="905"/>
+        <location filename="../main/MainWindow.cpp" line="971"/>
         <source>Show &amp;Centre Line</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="906"/>
+        <location filename="../main/MainWindow.cpp" line="972"/>
         <source>&apos;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="907"/>
+        <location filename="../main/MainWindow.cpp" line="973"/>
         <source>Show or hide the centre line</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="914"/>
+        <location filename="../main/MainWindow.cpp" line="980"/>
         <source>Toggle All Time Rulers</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="927"/>
+        <location filename="../main/MainWindow.cpp" line="995"/>
         <source>Hide times, layer names, and scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="937"/>
+        <location filename="../main/MainWindow.cpp" line="1005"/>
         <source>Show times and basic scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="947"/>
+        <location filename="../main/MainWindow.cpp" line="1015"/>
         <source>Show times, layer names, and scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1007"/>
+        <location filename="../main/MainWindow.cpp" line="1073"/>
+        <source>Show &amp;Unit Converter</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1074"/>
+        <source>Open a window of pitch and timing conversion utilities</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1083"/>
         <source>Go Full-Screen</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1008"/>
+        <location filename="../main/MainWindow.cpp" line="1084"/>
         <source>F11</source>
         <translation type="unfinished">F11</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1009"/>
+        <location filename="../main/MainWindow.cpp" line="1085"/>
         <source>Expand the pane area to the whole screen</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1022"/>
+        <location filename="../main/MainWindow.cpp" line="1099"/>
         <source>&amp;Pane</source>
         <translation>&amp;Окно</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1048"/>
+        <location filename="../main/MainWindow.cpp" line="1125"/>
         <source>Add &amp;New Pane</source>
         <translation>Добавить &amp;новое окно</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1050"/>
+        <location filename="../main/MainWindow.cpp" line="1127"/>
         <source>Add a new pane containing only a time ruler</source>
         <translation>Добавить новое окно, содержащее только линейку времени</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1076"/>
+        <location filename="../main/MainWindow.cpp" line="1153"/>
         <source>Add New %1 Layer</source>
         <translation>Добавить новый слой «%1»</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1077"/>
+        <location filename="../main/MainWindow.cpp" line="1154"/>
         <source>Add a new empty layer of type %1</source>
         <translation>Добавить новый пустой слой типа «%1»</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1133"/>
+        <location filename="../main/MainWindow.cpp" line="1217"/>
         <source>Add &amp;Waveform</source>
         <translation>Добавить &amp;волновую форму</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1136"/>
+        <location filename="../main/MainWindow.cpp" line="1220"/>
         <source>Add a new pane showing a waveform view</source>
         <translation>Добавить новое окно с видом волновой формы</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1139"/>
+        <location filename="../main/MainWindow.cpp" line="1223"/>
         <source>Add a new layer showing a waveform view</source>
         <translation>Добавить новый слой с видом волновой формы</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1158"/>
+        <location filename="../main/MainWindow.cpp" line="1242"/>
         <source>Add &amp;Melodic Range Spectrogram</source>
         <translation>Добавить спектограмму &amp;мелодического диапазона</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1173"/>
+        <location filename="../main/MainWindow.cpp" line="1257"/>
         <source>Add a new pane showing a spectrogram set up for tracking frequencies</source>
         <translation>Добавить новое окно, отображающее спектрограмму для отслеживания частот</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1176"/>
+        <location filename="../main/MainWindow.cpp" line="1260"/>
         <source>Add a new layer showing a spectrogram set up for tracking frequencies</source>
         <translation>Добавить новый слой, отображающий спектрограмму для отслеживания частот</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1258"/>
+        <location filename="../main/MainWindow.cpp" line="1342"/>
         <source>&amp;All Channels Mixed</source>
         <translation>Все &amp;каналы сведены</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1260"/>
+        <location filename="../main/MainWindow.cpp" line="1344"/>
         <source>&amp;All Channels</source>
         <translation>&amp;Все каналы</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1263"/>
+        <location filename="../main/MainWindow.cpp" line="1347"/>
         <source>Channel &amp;%1</source>
         <translation>Канал &amp;%1</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1344"/>
+        <location filename="../main/MainWindow.cpp" line="1428"/>
         <source>&amp;Delete Pane</source>
         <translation>У&amp;далить окно</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1354"/>
+        <location filename="../main/MainWindow.cpp" line="1438"/>
         <source>Add &amp;Time Ruler</source>
         <translation>Добавить линейку &amp;времени</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1355"/>
+        <location filename="../main/MainWindow.cpp" line="1439"/>
         <source>Add a new layer showing a time ruler</source>
         <translation>Добавить новый слой с линейкой</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1363"/>
+        <location filename="../main/MainWindow.cpp" line="1447"/>
         <source>Add &amp;Existing Layer</source>
         <translation>Добавить &amp;существующий слой</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1395"/>
+        <location filename="../main/MainWindow.cpp" line="1459"/>
+        <source>Switch to Previous Layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1460"/>
+        <source>{</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1461"/>
+        <source>Make the previous layer in the pane current</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1467"/>
+        <source>Switch to Next Layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1468"/>
+        <source>}</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1469"/>
+        <source>Make the next layer in the pane current</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1478"/>
         <source>&amp;Rename Layer...</source>
         <translation>&amp;Переименовать слой...</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1397"/>
+        <location filename="../main/MainWindow.cpp" line="1480"/>
         <source>Rename the currently active layer</source>
         <translation>Переименовать активный слой</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1411"/>
+        <location filename="../main/MainWindow.cpp" line="1494"/>
         <source>&amp;Delete Layer</source>
         <translation>&amp;Удалить слой</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1413"/>
+        <location filename="../main/MainWindow.cpp" line="1496"/>
         <source>Delete the currently active layer</source>
         <translation>Удалить активный слой</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1669"/>
+        <location filename="../main/MainWindow.cpp" line="1759"/>
         <source>&amp;Help</source>
         <translation>&amp;Справка</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1679"/>
+        <location filename="../main/MainWindow.cpp" line="1769"/>
         <source>&amp;Help Reference</source>
         <translation>&amp;Руководство пользователя</translation>
     </message>
@@ -2290,220 +2824,225 @@
         <translation type="obsolete">Показать информацию о Sonic Visualiser</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1895"/>
+        <location filename="../main/MainWindow.cpp" line="1988"/>
         <source>Rewind to Start</source>
         <translation>Перемотать в начало</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1896"/>
+        <location filename="../main/MainWindow.cpp" line="1989"/>
         <source>Home</source>
         <translation>Домой</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1897"/>
+        <location filename="../main/MainWindow.cpp" line="1990"/>
         <source>Rewind to the start</source>
         <translation>Перемотать в начало</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1901"/>
-        <location filename="../main/MainWindow.cpp" line="2218"/>
-        <location filename="../main/MainWindow.cpp" line="2219"/>
+        <location filename="../main/MainWindow.cpp" line="1994"/>
+        <location filename="../main/MainWindow.cpp" line="2399"/>
+        <location filename="../main/MainWindow.cpp" line="2400"/>
         <source>Rewind</source>
         <translation>Перемотать назад</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2209"/>
+        <location filename="../main/MainWindow.cpp" line="2390"/>
         <source>Rewind to the previous time instant in the current layer</source>
         <translation>Перемотать до предыдущей отметки времени в текущем слое</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1914"/>
+        <location filename="../main/MainWindow.cpp" line="2007"/>
         <source>Play / Pause</source>
         <translation>Воспроизвести / Приостановить</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1916"/>
+        <location filename="../main/MainWindow.cpp" line="2009"/>
         <source>Space</source>
         <translation>Пробел</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1917"/>
+        <location filename="../main/MainWindow.cpp" line="2010"/>
         <source>Start or stop playback from the current position</source>
         <translation>Запустить или остановить воспроизведение с текущей позиции</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1926"/>
-        <location filename="../main/MainWindow.cpp" line="2216"/>
+        <location filename="../main/MainWindow.cpp" line="2019"/>
+        <location filename="../main/MainWindow.cpp" line="2397"/>
         <source>Fast Forward</source>
         <translation>Перемотать вперёд</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2207"/>
+        <location filename="../main/MainWindow.cpp" line="2388"/>
         <source>Fast forward to the next time instant in the current layer</source>
         <translation>Перемотать до следующей отметки времени в текущем слое</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1939"/>
+        <location filename="../main/MainWindow.cpp" line="2032"/>
         <source>Fast Forward to End</source>
         <translation>Перемотать до конца</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1688"/>
+        <location filename="../main/MainWindow.cpp" line="1778"/>
         <source>Open a window showing the keystrokes you can use in %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1693"/>
+        <location filename="../main/MainWindow.cpp" line="1783"/>
         <source>%1 on the &amp;Web</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1694"/>
+        <location filename="../main/MainWindow.cpp" line="1784"/>
         <source>Open the %1 website</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1698"/>
+        <location filename="../main/MainWindow.cpp" line="1788"/>
         <source>&amp;About %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1699"/>
+        <location filename="../main/MainWindow.cpp" line="1789"/>
         <source>Show information about %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1940"/>
+        <location filename="../main/MainWindow.cpp" line="2033"/>
         <source>End</source>
         <translation>Конец</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1941"/>
+        <location filename="../main/MainWindow.cpp" line="2034"/>
         <source>Fast-forward to the end</source>
         <translation>Перемотать до конца</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1945"/>
+        <location filename="../main/MainWindow.cpp" line="2049"/>
         <source>Play Mode Toolbar</source>
         <translation>Панель режима воспроизведения</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1948"/>
+        <location filename="../main/MainWindow.cpp" line="2052"/>
         <source>Constrain Playback to Selection</source>
         <translation>Ограничить воспроизведение выделением</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1951"/>
+        <location filename="../main/MainWindow.cpp" line="2055"/>
         <source>s</source>
         <translation>с</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1959"/>
+        <location filename="../main/MainWindow.cpp" line="2063"/>
         <source>Loop Playback</source>
         <translation>Воспроизведение в цикле</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1962"/>
+        <location filename="../main/MainWindow.cpp" line="2066"/>
         <source>l</source>
         <translation>l</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1963"/>
+        <location filename="../main/MainWindow.cpp" line="2067"/>
         <source>Loop playback</source>
         <translation>Воспроизведение в цикле</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2061"/>
+        <location filename="../main/MainWindow.cpp" line="2172"/>
         <source>Edit Toolbar</source>
         <translation>Панель правки</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2066"/>
+        <location filename="../main/MainWindow.cpp" line="2175"/>
         <source>Tools Toolbar</source>
         <translation>Панель инструментов</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2070"/>
-        <location filename="../main/MainWindow.cpp" line="2074"/>
+        <location filename="../main/MainWindow.cpp" line="2180"/>
+        <location filename="../main/MainWindow.cpp" line="2184"/>
+        <location filename="../main/MainWindow.cpp" line="2194"/>
         <source>Navigate</source>
         <translation>Перемещение</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2073"/>
+        <location filename="../main/MainWindow.cpp" line="2183"/>
         <source>1</source>
         <translation>1</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2082"/>
+        <location filename="../main/MainWindow.cpp" line="2208"/>
+        <location filename="../main/MainWindow.cpp" line="2220"/>
         <source>Select</source>
         <translation>Выделение</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2084"/>
+        <location filename="../main/MainWindow.cpp" line="2210"/>
         <source>2</source>
         <translation>2</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2092"/>
+        <location filename="../main/MainWindow.cpp" line="2203"/>
+        <location filename="../main/MainWindow.cpp" line="2237"/>
+        <location filename="../main/MainWindow.cpp" line="2253"/>
         <source>Edit</source>
         <translation>Правка</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2094"/>
+        <location filename="../main/MainWindow.cpp" line="2239"/>
         <source>3</source>
         <translation>3</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2103"/>
+        <location filename="../main/MainWindow.cpp" line="2258"/>
+        <location filename="../main/MainWindow.cpp" line="2271"/>
         <source>Draw</source>
         <translation>Рисование</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2105"/>
+        <location filename="../main/MainWindow.cpp" line="2260"/>
         <source>4</source>
         <translation>4</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2228"/>
+        <location filename="../main/MainWindow.cpp" line="2409"/>
         <source>No audio file loaded.</source>
         <translation>Ни один звуковой файл не загружен.</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2239"/>
+        <location filename="../main/MainWindow.cpp" line="2422"/>
         <source>%1Hz (resampling to %2Hz)</source>
         <translation>%1 Гц (ресэмплирование до %2 Гц)</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2310"/>
-        <location filename="../main/MainWindow.cpp" line="2324"/>
-        <location filename="../main/MainWindow.cpp" line="2338"/>
-        <location filename="../main/MainWindow.cpp" line="2577"/>
-        <location filename="../main/MainWindow.cpp" line="2582"/>
-        <location filename="../main/MainWindow.cpp" line="2878"/>
-        <location filename="../main/MainWindow.cpp" line="2898"/>
-        <location filename="../main/MainWindow.cpp" line="2902"/>
+        <location filename="../main/MainWindow.cpp" line="2493"/>
+        <location filename="../main/MainWindow.cpp" line="2507"/>
+        <location filename="../main/MainWindow.cpp" line="2521"/>
+        <location filename="../main/MainWindow.cpp" line="2758"/>
+        <location filename="../main/MainWindow.cpp" line="2763"/>
+        <location filename="../main/MainWindow.cpp" line="3138"/>
+        <location filename="../main/MainWindow.cpp" line="3142"/>
         <source>Failed to open file</source>
         <translation>Не удалось открыть файл</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2441"/>
+        <location filename="../main/MainWindow.cpp" line="2624"/>
         <source>Export the selected region only</source>
         <translation>Экспортировать только выделенную область</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2442"/>
+        <location filename="../main/MainWindow.cpp" line="2625"/>
         <source>Export the whole audio file</source>
         <translation>Экспортировать весь звуковой файл</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2446"/>
-        <location filename="../main/MainWindow.cpp" line="2466"/>
-        <location filename="../main/MainWindow.cpp" line="2731"/>
+        <location filename="../main/MainWindow.cpp" line="2629"/>
+        <location filename="../main/MainWindow.cpp" line="2647"/>
+        <location filename="../main/MainWindow.cpp" line="2911"/>
+        <location filename="../main/MainWindow.cpp" line="2985"/>
         <source>Select region to export</source>
         <translation>Выделите область для экспорта</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2447"/>
+        <location filename="../main/MainWindow.cpp" line="2630"/>
         <source>Which region from the original audio file do you want to export?</source>
         <translation>Какую область исходного звукового файла вы хотите экспортировать?</translation>
     </message>
@@ -2512,30 +3051,30 @@
         <translation type="obsolete">Экспортировать выделенные области в один звуковой файл</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2462"/>
+        <location filename="../main/MainWindow.cpp" line="2643"/>
         <source>Export the selected regions into separate files</source>
         <translation>Экспортировать выделенные области в разные звуковые файлы</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2467"/>
+        <location filename="../main/MainWindow.cpp" line="2648"/>
         <source>Multiple regions of the original audio file are selected.
 What do you want to export?</source>
         <translation>Выбрано несколько областей исходного звукового файла.
 Какую из них вы хотите экспортировать?</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2498"/>
+        <location filename="../main/MainWindow.cpp" line="2679"/>
         <source>Fragment file %1 already exists, aborting</source>
         <translation>Файл фрагмента %1 уже существует, прерывание</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2548"/>
-        <location filename="../main/MainWindow.cpp" line="2675"/>
+        <location filename="../main/MainWindow.cpp" line="2729"/>
+        <location filename="../main/MainWindow.cpp" line="2857"/>
         <source>Failed to write file</source>
         <translation>Не удалось записать файл</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2618"/>
+        <location filename="../main/MainWindow.cpp" line="2799"/>
         <source>Failed to open file %1 for writing</source>
         <translation>Не удалось открыть файл %1 для записи</translation>
     </message>
@@ -2544,100 +3083,100 @@
         <translation type="obsolete">Sonic Visualiser: %1</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3226"/>
+        <location filename="../main/MainWindow.cpp" line="3471"/>
         <source>Session modified</source>
         <translation>Сеанс изменен</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3288"/>
-        <location filename="../main/MainWindow.cpp" line="3311"/>
+        <location filename="../main/MainWindow.cpp" line="3533"/>
+        <location filename="../main/MainWindow.cpp" line="3556"/>
         <source>Failed to save file</source>
         <translation>Не удалось сохранить файл</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3673"/>
+        <location filename="../main/MainWindow.cpp" line="3964"/>
         <source>Rename Layer</source>
         <translation>Переименовать слой</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3674"/>
+        <location filename="../main/MainWindow.cpp" line="3965"/>
         <source>New name for this layer:</source>
         <translation>Новое имя этого слоя:</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3914"/>
+        <location filename="../main/MainWindow.cpp" line="4242"/>
         <source>Sample rate mismatch</source>
         <translation>Несоответствие частоты дискретизации</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4160"/>
-        <location filename="../main/MainWindow.cpp" line="4167"/>
+        <location filename="../main/MainWindow.cpp" line="4606"/>
+        <location filename="../main/MainWindow.cpp" line="4613"/>
         <source>Failed to regenerate layer</source>
         <translation>Не удалось повторно создать слой</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4280"/>
+        <location filename="../main/MainWindow.cpp" line="4737"/>
         <source>http://www.sonicvisualiser.org/</source>
         <translation>http://www.sonicvisualiser.org/</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4300"/>
+        <location filename="../main/MainWindow.cpp" line="4757"/>
         <source>Release %1 : Revision %2</source>
         <translation>Версия %1 : Редакция %2</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4302"/>
+        <location filename="../main/MainWindow.cpp" line="4759"/>
         <source>Release %1</source>
         <translation>Версия %1</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4306"/>
+        <location filename="../main/MainWindow.cpp" line="4763"/>
         <source>Unreleased : Revision %1</source>
         <translation>Не выпущено : редакция %1</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4312"/>
+        <location filename="../main/MainWindow.cpp" line="4769"/>
         <source>&lt;h3&gt;About Sonic Visualiser&lt;/h3&gt;</source>
         <translation>&lt;h3&gt;О программе Sonic Visualiser&lt;/h3&gt;</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4316"/>
+        <location filename="../main/MainWindow.cpp" line="4773"/>
         <source>Debug</source>
         <translation>Отладка</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4316"/>
+        <location filename="../main/MainWindow.cpp" line="4773"/>
         <source>Release</source>
         <translation>Версия</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4341"/>
+        <location filename="../main/MainWindow.cpp" line="4799"/>
         <source>&lt;br&gt;With Ogg file decoder (oggz v%1, fishsound v%2) &amp;copy; CSIRO Australia</source>
         <translation>&lt;br&gt;С декодером Ogg (oggz v%1, fishsound v%2) &amp;copy; CSIRO Australia</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4384"/>
+        <location filename="../main/MainWindow.cpp" line="4840"/>
         <source>&lt;br&gt;With LADSPA plugin support (API v%1) &amp;copy; Richard Furse, Paul Davis, Stefan Westerfeld</source>
         <translation>&lt;br&gt;С поддержкой расширений LADSPA (API v%1) &amp;copy; Richard Furse, Paul Davis, Stefan Westerfeld</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4385"/>
+        <location filename="../main/MainWindow.cpp" line="4841"/>
         <source>&lt;br&gt;With DSSI plugin support (API v%1) &amp;copy; Chris Cannam, Steve Harris, Sean Bolton</source>
         <translation>&lt;br&gt;С поддержкой расширений DSSI (API v%1) &amp;copy; Chris Cannam, Steve Harris, Sean Bolton</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4423"/>
+        <location filename="../main/MainWindow.cpp" line="4879"/>
         <source>About Sonic Visualiser</source>
         <translation>О программе Sonic Visualiser</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4127"/>
-        <location filename="../main/MainWindow.cpp" line="4134"/>
+        <location filename="../main/MainWindow.cpp" line="4573"/>
+        <location filename="../main/MainWindow.cpp" line="4580"/>
         <source>Failed to generate layer</source>
         <translation>Не удалось создать слой</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="583"/>
+        <location filename="../main/MainWindow.cpp" line="635"/>
         <source>Adjust the application preferences</source>
         <translation>Изменить параметры работы приложения</translation>
     </message>
@@ -2646,128 +3185,128 @@
         <translation type="obsolete">Н&amp;едавние файлы</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="582"/>
+        <location filename="../main/MainWindow.cpp" line="634"/>
         <source>&amp;Preferences...</source>
         <translation>&amp;Параметры...</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="720"/>
+        <location filename="../main/MainWindow.cpp" line="772"/>
         <source>;</source>
         <translation>;</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="957"/>
+        <location filename="../main/MainWindow.cpp" line="1025"/>
         <source>Show &amp;Zoom Wheels</source>
         <translation>Показывать &amp;колёса масштабирования</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="958"/>
+        <location filename="../main/MainWindow.cpp" line="1026"/>
         <source>Z</source>
         <translation>Z</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="959"/>
+        <location filename="../main/MainWindow.cpp" line="1027"/>
         <source>Show thumbwheels for zooming horizontally and vertically</source>
         <translation>Показывать колёса для масштабирования по горизонтали и вертикали</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1467"/>
+        <location filename="../main/MainWindow.cpp" line="1557"/>
         <source>%1 by Category</source>
         <translation>%1 по категории</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1482"/>
-        <location filename="../main/MainWindow.cpp" line="1570"/>
+        <location filename="../main/MainWindow.cpp" line="1572"/>
+        <location filename="../main/MainWindow.cpp" line="1660"/>
         <source>Unclassified</source>
         <translation>Неклассифицированные</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1521"/>
+        <location filename="../main/MainWindow.cpp" line="1611"/>
         <source>%1 by Maker</source>
         <translation>%1 по имени создателя</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1535"/>
-        <location filename="../main/MainWindow.cpp" line="1573"/>
+        <location filename="../main/MainWindow.cpp" line="1625"/>
+        <location filename="../main/MainWindow.cpp" line="1663"/>
         <source>Unknown</source>
         <translation>Неизвестен</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1513"/>
+        <location filename="../main/MainWindow.cpp" line="1603"/>
         <source>%1 by Plugin Name</source>
         <translation>%1 по названию расширения</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1589"/>
-        <location filename="../main/MainWindow.cpp" line="1615"/>
+        <location filename="../main/MainWindow.cpp" line="1679"/>
+        <location filename="../main/MainWindow.cpp" line="1705"/>
         <source>%1...</source>
         <translation>%1...</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1182"/>
+        <location filename="../main/MainWindow.cpp" line="1266"/>
         <source>Add Spectr&amp;um</source>
         <translation>Добавить &amp;график спектральной функции</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1185"/>
+        <location filename="../main/MainWindow.cpp" line="1269"/>
         <source>Add a new pane showing a frequency spectrum</source>
         <translation>Добавить новое окно с частотой спектра</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1188"/>
+        <location filename="../main/MainWindow.cpp" line="1272"/>
         <source>Add a new layer showing a frequency spectrum</source>
         <translation>Добавить новый слой с частотой спектра</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="242"/>
         <source>Playback Speedup</source>
-        <translation>Ускорение воспроизведения</translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="345"/>
-        <location filename="../main/MainWindow.cpp" line="1432"/>
+        <translation type="vanished">Ускорение воспроизведения</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="385"/>
+        <location filename="../main/MainWindow.cpp" line="1517"/>
         <source>&amp;Transform</source>
         <translation>Пр&amp;еобразования</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1267"/>
+        <location filename="../main/MainWindow.cpp" line="1351"/>
+        <location filename="../main/MainWindow.cpp" line="3559"/>
         <source>%1: %2</source>
         <translation>%1: %2</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1450"/>
+        <location filename="../main/MainWindow.cpp" line="1540"/>
         <source>&amp;Recent Transforms</source>
         <translation>&amp;Недавние преобразования</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1536"/>
-        <location filename="../main/MainWindow.cpp" line="1574"/>
+        <location filename="../main/MainWindow.cpp" line="1626"/>
+        <location filename="../main/MainWindow.cpp" line="1664"/>
         <source> [\(&lt;].*$</source>
         <translation> [\(&lt;].*$</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3926"/>
-        <location filename="../main/MainWindow.cpp" line="3936"/>
+        <location filename="../main/MainWindow.cpp" line="4254"/>
+        <location filename="../main/MainWindow.cpp" line="4264"/>
         <source>Audio processing overload</source>
         <translation>Перегрузка в обработке звука</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="966"/>
+        <location filename="../main/MainWindow.cpp" line="1034"/>
         <source>Show Property Bo&amp;xes</source>
         <translation>Показывать панели с&amp;войств</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="967"/>
+        <location filename="../main/MainWindow.cpp" line="1035"/>
         <source>X</source>
         <translation>X</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="968"/>
+        <location filename="../main/MainWindow.cpp" line="1036"/>
         <source>Show the layer property boxes at the side of the main window</source>
         <translation>Показывать панели свойств слоёв сбоку от основного окна</translation>
     </message>
     <message>
-        <location filename="../main/OSCHandler.cpp" line="318"/>
+        <location filename="../main/OSCHandler.cpp" line="320"/>
         <source>Add %1 Pane</source>
         <translation>Добавить окно %1</translation>
     </message>
@@ -2776,17 +3315,17 @@
         <translation type="obsolete">Отказаться от текущего сеанса Sonic Visualiser и начать новый</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="469"/>
+        <location filename="../main/MainWindow.cpp" line="508"/>
         <source>Open Lo&amp;cation...</source>
         <translation>Открыть &amp;местоположение...</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="470"/>
+        <location filename="../main/MainWindow.cpp" line="509"/>
         <source>Ctrl+Shift+O</source>
         <translation>Ctrl+Shift+O</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="471"/>
+        <location filename="../main/MainWindow.cpp" line="510"/>
         <source>Open or import a file from a remote URL</source>
         <translation>Открыть или импортировать файл с удалённого узла</translation>
     </message>
@@ -2795,77 +3334,77 @@
         <translation type="obsolete">Завершить работу с Sonic Visualiser</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="615"/>
+        <location filename="../main/MainWindow.cpp" line="667"/>
         <source>Cut the selection from the current layer to the clipboard</source>
         <translation>Вырезать выделение из активного слоя в буфер обмена</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="625"/>
+        <location filename="../main/MainWindow.cpp" line="677"/>
         <source>Copy the selection from the current layer to the clipboard</source>
         <translation>Скопировать выделение из активного слоя в буфер обмена</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="635"/>
+        <location filename="../main/MainWindow.cpp" line="687"/>
         <source>Paste from the clipboard to the current layer</source>
         <translation>Вставить содержимое буфера обмена в активный слой</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="667"/>
+        <location filename="../main/MainWindow.cpp" line="719"/>
         <source>Select the whole duration of the current session</source>
         <translation>Выбрать данные по всей длительности активнонр сеанса</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="676"/>
+        <location filename="../main/MainWindow.cpp" line="728"/>
         <source>Select the time range corresponding to the current window width</source>
         <translation>Сделать временной диапазон равным активной ширине окна</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="684"/>
+        <location filename="../main/MainWindow.cpp" line="736"/>
         <source>Select from the start of the session to the current playback position</source>
         <translation>Выделить от начала сеанса до текущей точки воспроизведения</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="692"/>
+        <location filename="../main/MainWindow.cpp" line="744"/>
         <source>Select from the current playback position to the end of the session</source>
         <translation>Выделить от текущей точки воспроизведения до конца сеанса</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="700"/>
+        <location filename="../main/MainWindow.cpp" line="752"/>
         <source>Clear the selection</source>
         <translation>Очистить выделение</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="713"/>
+        <location filename="../main/MainWindow.cpp" line="765"/>
         <source>Insert a new time instant at the current playback position, in a new layer if necessary</source>
         <translation>Вставить новую отметку времени в точку воспроизведения, при необходимости — в новый слой</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="725"/>
+        <location filename="../main/MainWindow.cpp" line="777"/>
         <source>Insert Instants at Selection &amp;Boundaries</source>
         <translation>Вставить отметки времени по &amp;краям выделения</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="726"/>
+        <location filename="../main/MainWindow.cpp" line="778"/>
         <source>Shift+Enter</source>
         <translation>Shift+Enter</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="832"/>
+        <location filename="../main/MainWindow.cpp" line="898"/>
         <source>&amp;Jump Left</source>
         <translation>Перескочить в&amp;лево</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="840"/>
+        <location filename="../main/MainWindow.cpp" line="906"/>
         <source>J&amp;ump Right</source>
         <translation>П&amp;ерескочить вправо</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="887"/>
+        <location filename="../main/MainWindow.cpp" line="953"/>
         <source>Restore the zoom level to the default</source>
         <translation>Восстановить обычный масштаб отображения</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="925"/>
+        <location filename="../main/MainWindow.cpp" line="993"/>
         <source>Show &amp;No Overlays</source>
         <translation>Не по&amp;казывать перекрытия совсем</translation>
     </message>
@@ -2874,7 +3413,7 @@
         <translation type="obsolete">Спрятать индикацию центра, времён выделения, имена слоёв и масштаб</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="935"/>
+        <location filename="../main/MainWindow.cpp" line="1003"/>
         <source>Show &amp;Minimal Overlays</source>
         <translation>Показывать &amp;минимум перекрытий</translation>
     </message>
@@ -2891,7 +3430,7 @@
         <translation type="obsolete">Показывать индикатор центра, времена выделений, имена слоёв и масштаб</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="945"/>
+        <location filename="../main/MainWindow.cpp" line="1013"/>
         <source>Show &amp;All Overlays</source>
         <translation>Показывать в&amp;се перекрытия</translation>
     </message>
@@ -2904,575 +3443,592 @@
         <translation type="obsolete">Показывать весь текст и масштаб</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="975"/>
+        <location filename="../main/MainWindow.cpp" line="1043"/>
         <source>Show Status &amp;Bar</source>
         <translation>Показывать статусную &amp;строку</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="976"/>
+        <location filename="../main/MainWindow.cpp" line="1044"/>
         <source>Show context help information in the status bar at the bottom of the window</source>
         <translation>Показывать контекстную справку в статусной строке, находящейся внизу окна программы</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1149"/>
+        <location filename="../main/MainWindow.cpp" line="1233"/>
         <source>Add a new pane showing a spectrogram</source>
         <translation>Добавить новое окно с отображением спектрограммы</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1152"/>
+        <location filename="../main/MainWindow.cpp" line="1236"/>
         <source>Add a new layer showing a spectrogram</source>
         <translation>Добавить новый слой с отображением спектрограммы</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1161"/>
+        <location filename="../main/MainWindow.cpp" line="1245"/>
         <source>Add a new pane showing a spectrogram set up for an overview of note pitches</source>
         <translation>Добавить новое окно, отображающее спектрограмму для обзора высоты тона нот</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1164"/>
+        <location filename="../main/MainWindow.cpp" line="1248"/>
         <source>Add a new layer showing a spectrogram set up for an overview of note pitches</source>
         <translation>Добавить новый слой, отображающий спектрограмму для обзора высоты тона нот</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1346"/>
+        <location filename="../main/MainWindow.cpp" line="1430"/>
         <source>Delete the currently active pane</source>
         <translation>Удалить активное окно</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1367"/>
+        <location filename="../main/MainWindow.cpp" line="1451"/>
         <source>Add S&amp;lice of Layer</source>
         <translation>Добавить &amp;фрагмент слоя</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2085"/>
+        <location filename="../main/MainWindow.cpp" line="2211"/>
         <source>Select ranges</source>
         <translation>Выбрать диапазон</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2095"/>
+        <location filename="../main/MainWindow.cpp" line="2240"/>
         <source>Edit items in layer</source>
         <translation>Изменить объекты слоя</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2106"/>
+        <location filename="../main/MainWindow.cpp" line="2261"/>
         <source>Draw new items in layer</source>
         <translation>Нарисовать новые объекты в слое</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2916"/>
+        <location filename="../main/MainWindow.cpp" line="3156"/>
         <source>Open Location</source>
         <translation>Открыть местоположение</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2917"/>
+        <location filename="../main/MainWindow.cpp" line="3157"/>
         <source>Please enter the URL of the location to open:</source>
         <translation>Введите URL открываемого местоположения:</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2930"/>
-        <location filename="../main/MainWindow.cpp" line="2934"/>
-        <location filename="../main/MainWindow.cpp" line="2958"/>
-        <location filename="../main/MainWindow.cpp" line="2962"/>
+        <location filename="../main/MainWindow.cpp" line="3170"/>
+        <location filename="../main/MainWindow.cpp" line="3174"/>
+        <location filename="../main/MainWindow.cpp" line="3203"/>
+        <location filename="../main/MainWindow.cpp" line="3207"/>
         <source>Failed to open location</source>
         <translation>Не удалось открыть местоположение</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3866"/>
+        <location filename="../main/MainWindow.cpp" line="3915"/>
+        <source>Multiplex all of the above</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4064"/>
+        <source>Playback speed: %1% (%2x slower)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4070"/>
+        <source>Playback speed: %1% (%2x faster)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4192"/>
         <source>Visible: %1 to %2 (duration %3)</source>
         <translation>Видимая область: от %1 до %2 (длительность %3)</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4265"/>
+        <location filename="../main/MainWindow.cpp" line="4285"/>
+        <source>Problems loading plugins</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4574"/>
+        <source>&lt;b&gt;Layer generation failed&lt;/b&gt;&lt;p&gt;Failed to generate derived layer.&lt;p&gt;The layer transform %1failed:&lt;p&gt;%2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4581"/>
+        <source>&lt;b&gt;Layer generation failed&lt;/b&gt;&lt;p&gt;Failed to generate a derived layer.&lt;p&gt;The layer transform %1failed.&lt;p&gt;No error information is available.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <source>Adjust the master playback level</source>
-        <translation>Изменить общую громкость воспроизведения</translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4267"/>
+        <translation type="vanished">Изменить общую громкость воспроизведения</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4724"/>
         <source>Adjust the master playback speed</source>
         <translation>Изменить общую скорость воспроизведения</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4343"/>
+        <location filename="../main/MainWindow.cpp" line="4801"/>
         <source>&lt;br&gt;With Ogg file decoder &amp;copy; CSIRO Australia</source>
         <translation>&lt;br&gt;С декодером Ogg &amp;copy; CSIRO Australia</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4350"/>
+        <location filename="../main/MainWindow.cpp" line="4808"/>
         <source>&lt;br&gt;With MAD mp3 decoder &amp;copy; Underbit Technologies Inc</source>
         <translation>&lt;br&gt;С декодером MAD mp3 &amp;copy; Underbit Technologies Inc</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4357"/>
+        <location filename="../main/MainWindow.cpp" line="4815"/>
         <source>&lt;br&gt;With libsamplerate &amp;copy; Erik de Castro Lopo</source>
         <translation>&lt;br&gt;С libsamplerate &amp;copy; Erik de Castro Lopo</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4364"/>
+        <location filename="../main/MainWindow.cpp" line="4822"/>
         <source>&lt;br&gt;With libsndfile &amp;copy; Erik de Castro Lopo</source>
         <translation>&lt;br&gt;С libsndfile &amp;copy; Erik de Castro Lopo</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4371"/>
+        <location filename="../main/MainWindow.cpp" line="4829"/>
         <source>&lt;br&gt;With FFTW3 &amp;copy; Matteo Frigo and MIT</source>
         <translation>&lt;br&gt;С FFTW3 &amp;copy; Matteo Frigo и MIT</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4382"/>
         <source>&lt;br&gt;With Vamp plugin support (API v%1, host SDK v%2) &amp;copy; Chris Cannam</source>
-        <translation>&lt;br&gt;С поддержкой расширений Vamp (API v%1, host SDK v%2) &amp;copy; Chris Cannam</translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4391"/>
+        <translation type="vanished">&lt;br&gt;С поддержкой расширений Vamp (API v%1, host SDK v%2) &amp;copy; Chris Cannam</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4847"/>
         <source>&lt;br&gt;With Serd and Sord RDF parser and store &amp;copy; David Robillard</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4392"/>
-        <source>&lt;br&gt;With Dataquay Qt/RDF library &amp;copy; Chris Cannam</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4400"/>
+        <location filename="../main/MainWindow.cpp" line="4856"/>
         <source>&lt;br&gt;With liblo Lite OSC library &amp;copy; Steve Harris</source>
         <translation>&lt;br&gt;С liblo Lite OSC library &amp;copy; Steve Harris</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="552"/>
+        <location filename="../main/MainWindow.cpp" line="591"/>
         <source>Export Image File...</source>
         <translation>Экспортировать в файл изображения...</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="553"/>
+        <location filename="../main/MainWindow.cpp" line="592"/>
         <source>Export a single pane to an image file</source>
         <translation>Экспортировать всё окно в файл изображения</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2713"/>
+        <location filename="../main/MainWindow.cpp" line="2893"/>
         <source>Export the whole pane (%1x%2 pixels)</source>
         <translation>Экспортировать всё окно (%1x%2 пикселов)</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2715"/>
+        <location filename="../main/MainWindow.cpp" line="2895"/>
         <source>Export the visible area only (%1x%2 pixels)</source>
         <translation>Экспортировать только видимую часть (%1x%2 пикселов)</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2718"/>
+        <location filename="../main/MainWindow.cpp" line="2898"/>
         <source>Export the selection extent (%1x%2 pixels)</source>
         <translation>Экспортировать выделение (%1x%2 пикселов)</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2721"/>
+        <location filename="../main/MainWindow.cpp" line="2901"/>
+        <location filename="../main/MainWindow.cpp" line="2977"/>
         <source>Export the selection extent</source>
         <translation>Экспортировать выделение</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2732"/>
+        <location filename="../main/MainWindow.cpp" line="2912"/>
         <source>Which region of the current pane do you want to export as an image?</source>
         <translation>Какую область текущего окна вы хотите экспортировать как изображение?</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2740"/>
+        <location filename="../main/MainWindow.cpp" line="2920"/>
         <source>Note: the whole pane is too wide to be exported as a single image.</source>
         <translation>Примечание: всё окно слишком широко, чтобы сохранить его как изображение.</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2765"/>
+        <location filename="../main/MainWindow.cpp" line="2945"/>
         <source>Failed to save image file</source>
         <translation>Не удалось сохранить файл изображения</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2766"/>
+        <location filename="../main/MainWindow.cpp" line="2946"/>
         <source>Failed to save image file %1</source>
         <translation>Не удалось сохранить файл изображения %1</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3863"/>
+        <location filename="../main/MainWindow.cpp" line="4189"/>
         <source>Selection: %1 to %2 (duration %3)</source>
         <translation>Выделение: %1 до %2 (длительность %3)</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="178"/>
+        <location filename="../main/MainWindow.cpp" line="186"/>
         <source>Black</source>
         <translation>Чёрный</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="179"/>
+        <location filename="../main/MainWindow.cpp" line="187"/>
         <source>Red</source>
         <translation>Красный</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="180"/>
+        <location filename="../main/MainWindow.cpp" line="188"/>
         <source>Blue</source>
         <translation>Синий</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="181"/>
-        <location filename="../main/MainWindow.cpp" line="227"/>
-        <location filename="../main/MainWindow.cpp" line="3336"/>
+        <location filename="../main/MainWindow.cpp" line="189"/>
+        <location filename="../main/MainWindow.cpp" line="3585"/>
         <source>Green</source>
         <translation>Зелёный</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="182"/>
+        <location filename="../main/MainWindow.cpp" line="190"/>
         <source>Purple</source>
         <translation>Пурпурный</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="183"/>
+        <location filename="../main/MainWindow.cpp" line="191"/>
         <source>Orange</source>
         <translation>Оранжевый</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="184"/>
+        <location filename="../main/MainWindow.cpp" line="192"/>
         <source>White</source>
         <translation>Белый</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="185"/>
+        <location filename="../main/MainWindow.cpp" line="193"/>
         <source>Bright Red</source>
         <translation>Ярко-красный</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="186"/>
+        <location filename="../main/MainWindow.cpp" line="194"/>
         <source>Bright Blue</source>
         <translation>Ярко-синий</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="187"/>
-        <location filename="../main/MainWindow.cpp" line="224"/>
-        <location filename="../main/MainWindow.cpp" line="3333"/>
+        <location filename="../main/MainWindow.cpp" line="195"/>
+        <location filename="../main/MainWindow.cpp" line="3587"/>
         <source>Bright Green</source>
         <translation>Ярко-зелёный</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="188"/>
+        <location filename="../main/MainWindow.cpp" line="196"/>
         <source>Bright Purple</source>
         <translation>Ярко-пурпурный</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="189"/>
+        <location filename="../main/MainWindow.cpp" line="197"/>
         <source>Bright Orange</source>
         <translation>Ярко-оранжевый</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="430"/>
+        <location filename="../main/MainWindow.cpp" line="470"/>
         <source>File and Session Management</source>
         <translation>Файлы и управление сеансами</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="455"/>
+        <location filename="../main/MainWindow.cpp" line="494"/>
         <source>&amp;Import More Audio...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="457"/>
+        <location filename="../main/MainWindow.cpp" line="496"/>
         <source>Import an extra audio file into a new pane</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="476"/>
+        <location filename="../main/MainWindow.cpp" line="515"/>
         <source>Open &amp;Recent</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="528"/>
-        <source>&amp;Export Audio Data...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="529"/>
+        <location filename="../main/MainWindow.cpp" line="566"/>
         <source>Export audio from selection into a data file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="560"/>
+        <location filename="../main/MainWindow.cpp" line="612"/>
         <source>Apply Session Template</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="569"/>
+        <location filename="../main/MainWindow.cpp" line="621"/>
         <source>Export Session as Template...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="576"/>
+        <location filename="../main/MainWindow.cpp" line="628"/>
         <source>Manage Exported Templates</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="606"/>
+        <location filename="../main/MainWindow.cpp" line="658"/>
         <source>Editing</source>
         <translation>Редактирование</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="642"/>
+        <location filename="../main/MainWindow.cpp" line="694"/>
         <source>Paste at Playback Position</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="643"/>
+        <location filename="../main/MainWindow.cpp" line="695"/>
         <source>Ctrl+Shift+V</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="644"/>
+        <location filename="../main/MainWindow.cpp" line="696"/>
         <source>Paste from the clipboard to the current layer, placing the first item at the playback position</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="653"/>
-        <location filename="../main/MainWindow.cpp" line="2201"/>
+        <location filename="../main/MainWindow.cpp" line="705"/>
+        <location filename="../main/MainWindow.cpp" line="2382"/>
         <source>Delete items in current selection from the current layer</source>
         <translation>Удалить объекты в активном выделении текущего слоя</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="663"/>
+        <location filename="../main/MainWindow.cpp" line="715"/>
         <source>Selection</source>
         <translation>Выделение</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="709"/>
+        <location filename="../main/MainWindow.cpp" line="761"/>
         <source>Tapping Time Instants</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="727"/>
+        <location filename="../main/MainWindow.cpp" line="779"/>
         <source>Insert new time instants at the start and end of the current selected regions, in a new layer if necessary</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="743"/>
+        <location filename="../main/MainWindow.cpp" line="795"/>
         <source>Number New Instants with</source>
         <translation>Способ нумерации новых отметок</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="763"/>
+        <location filename="../main/MainWindow.cpp" line="815"/>
         <source>Cycle size</source>
         <translation>Размер цикла</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="790"/>
+        <location filename="../main/MainWindow.cpp" line="842"/>
         <source>Set Numbering Counters...</source>
         <translation>Установить счетчики нумерации...</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="791"/>
+        <location filename="../main/MainWindow.cpp" line="843"/>
         <source>Set the counters used for counter-based labelling</source>
         <translation>Устанолвить счетчики для меток на основе подсчета</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="795"/>
+        <location filename="../main/MainWindow.cpp" line="847"/>
         <source>Renumber Selected Instants</source>
         <translation>Перенумеровать выбранные отметки</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="796"/>
+        <location filename="../main/MainWindow.cpp" line="848"/>
         <source>Renumber the selected instants using the current labelling scheme</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="812"/>
+        <location filename="../main/MainWindow.cpp" line="878"/>
         <source>Panning and Navigation</source>
         <translation>Прокрутка и перемещение</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="866"/>
+        <location filename="../main/MainWindow.cpp" line="932"/>
         <source>Zoom</source>
         <translation>Масштаб просмотра</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="894"/>
+        <location filename="../main/MainWindow.cpp" line="960"/>
         <source>F</source>
         <translation>F</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="903"/>
+        <location filename="../main/MainWindow.cpp" line="969"/>
         <source>Display Features</source>
         <translation>Отображение элементов</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="915"/>
+        <location filename="../main/MainWindow.cpp" line="981"/>
         <source>#</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="916"/>
+        <location filename="../main/MainWindow.cpp" line="982"/>
         <source>Show or hide all time rulers</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="993"/>
+        <location filename="../main/MainWindow.cpp" line="1061"/>
         <source>Show La&amp;yer Summary</source>
         <translation>&amp;Показать сводку по слою</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="994"/>
+        <location filename="../main/MainWindow.cpp" line="1062"/>
         <source>Y</source>
         <translation>Y</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="995"/>
+        <location filename="../main/MainWindow.cpp" line="1063"/>
         <source>Open a window displaying the hierarchy of panes and layers in this session</source>
         <translation>Открыть окно, в котором отобразится иерархия окон и слоев активного сеанса</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1046"/>
+        <location filename="../main/MainWindow.cpp" line="1123"/>
         <source>Managing Panes and Layers</source>
         <translation>Управление окнами и слоями</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1049"/>
+        <location filename="../main/MainWindow.cpp" line="1126"/>
         <source>N</source>
         <translation>N</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1083"/>
+        <location filename="../main/MainWindow.cpp" line="1160"/>
         <source>T</source>
         <translation>T</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1135"/>
+        <location filename="../main/MainWindow.cpp" line="1219"/>
         <source>W</source>
         <translation>W</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1138"/>
+        <location filename="../main/MainWindow.cpp" line="1222"/>
         <source>Shift+W</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1146"/>
+        <location filename="../main/MainWindow.cpp" line="1230"/>
         <source>Add Spectro&amp;gram</source>
         <translation>Добавить &amp;спектограмму</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1148"/>
+        <location filename="../main/MainWindow.cpp" line="1232"/>
         <source>G</source>
         <translation>G</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1151"/>
+        <location filename="../main/MainWindow.cpp" line="1235"/>
         <source>Shift+G</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1160"/>
+        <location filename="../main/MainWindow.cpp" line="1244"/>
         <source>M</source>
         <translation>M</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1163"/>
+        <location filename="../main/MainWindow.cpp" line="1247"/>
         <source>Shift+M</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1170"/>
+        <location filename="../main/MainWindow.cpp" line="1254"/>
         <source>Add Pea&amp;k Frequency Spectrogram</source>
         <translation>Добавить спектограмму &amp;пиковой частоты</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1172"/>
+        <location filename="../main/MainWindow.cpp" line="1256"/>
         <source>K</source>
         <translation>K</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1175"/>
+        <location filename="../main/MainWindow.cpp" line="1259"/>
         <source>Shift+K</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1184"/>
+        <location filename="../main/MainWindow.cpp" line="1268"/>
         <source>U</source>
         <translation>U</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1187"/>
+        <location filename="../main/MainWindow.cpp" line="1271"/>
         <source>Shift+U</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1326"/>
+        <location filename="../main/MainWindow.cpp" line="1410"/>
         <source>Switch to Previous Pane</source>
         <translation>Перейти к предыдущему окну</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1327"/>
+        <location filename="../main/MainWindow.cpp" line="1411"/>
         <source>[</source>
         <translation>[</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1328"/>
+        <location filename="../main/MainWindow.cpp" line="1412"/>
         <source>Make the next pane up in the pane stack current</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1334"/>
+        <location filename="../main/MainWindow.cpp" line="1418"/>
         <source>Switch to Next Pane</source>
         <translation>Перейти к следующему окну</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1335"/>
+        <location filename="../main/MainWindow.cpp" line="1419"/>
         <source>]</source>
         <translation>]</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1336"/>
+        <location filename="../main/MainWindow.cpp" line="1420"/>
         <source>Make the next pane down in the pane stack current</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1345"/>
+        <location filename="../main/MainWindow.cpp" line="1429"/>
         <source>Ctrl+Shift+D</source>
         <translation>Ctrl+Shift+D</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1396"/>
+        <location filename="../main/MainWindow.cpp" line="1479"/>
         <source>R</source>
         <translation>R</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1403"/>
+        <location filename="../main/MainWindow.cpp" line="1486"/>
         <source>Edit Layer Data</source>
         <translation>Изменить данные слоя</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1404"/>
+        <location filename="../main/MainWindow.cpp" line="1487"/>
         <source>E</source>
         <translation>E</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1405"/>
+        <location filename="../main/MainWindow.cpp" line="1488"/>
         <source>Edit the currently active layer as a data grid</source>
         <translation>Изменить активный слой как сетку данных</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1412"/>
+        <location filename="../main/MainWindow.cpp" line="1495"/>
         <source>Ctrl+D</source>
         <translation>Ctrl+D</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1672"/>
+        <location filename="../main/MainWindow.cpp" line="1762"/>
         <source>Help</source>
         <translation>Справка</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1680"/>
+        <location filename="../main/MainWindow.cpp" line="1770"/>
         <source>F1</source>
         <translation>F1</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1681"/>
+        <location filename="../main/MainWindow.cpp" line="1771"/>
         <source>Open the %1 reference manual</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1686"/>
+        <location filename="../main/MainWindow.cpp" line="1776"/>
         <source>&amp;Key and Mouse Reference</source>
         <translation>&amp;Использование клавиатуры и мыши</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1687"/>
+        <location filename="../main/MainWindow.cpp" line="1777"/>
         <source>F2</source>
         <translation>F2</translation>
     </message>
@@ -3481,500 +4037,736 @@
         <translation type="obsolete">Открыть окно, в котором перечисляются клавиатурные комбинации Sonic Visualiser</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1713"/>
+        <location filename="../main/MainWindow.cpp" line="1806"/>
         <source>Ctrl+R</source>
         <translation>Ctrl+R</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1715"/>
+        <location filename="../main/MainWindow.cpp" line="1808"/>
         <source>Re-open</source>
         <translation>Повторно открыть</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1717"/>
+        <location filename="../main/MainWindow.cpp" line="1810"/>
         <source>Re-open the current or most recently opened file</source>
         <translation>Повторно открыть активный или недавно открывавшийся файл</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1728"/>
+        <location filename="../main/MainWindow.cpp" line="1821"/>
         <source>Standard Waveform</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1764"/>
+        <location filename="../main/MainWindow.cpp" line="1857"/>
         <source>Choose Default Template...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1789"/>
+        <location filename="../main/MainWindow.cpp" line="1882"/>
         <source>Ctrl+T</source>
         <translation>Ctrl+T</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1791"/>
+        <location filename="../main/MainWindow.cpp" line="1884"/>
         <source>Repeat Transform</source>
         <translation>Повторить преобразование</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1793"/>
+        <location filename="../main/MainWindow.cpp" line="1886"/>
         <source>Re-select the most recently run transform</source>
         <translation>Повторно запустить самое последнее выполнявшееся преобразование</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1883"/>
+        <location filename="../main/MainWindow.cpp" line="1976"/>
         <source>Playback and Transport Controls</source>
         <translation>Управление воспроизведением и перемоткой</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1887"/>
+        <location filename="../main/MainWindow.cpp" line="1980"/>
         <source>Play&amp;back</source>
         <translation>Воспро&amp;изведение</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1890"/>
+        <location filename="../main/MainWindow.cpp" line="1983"/>
         <source>Playback</source>
         <translation>Воспроизведение</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1892"/>
+        <location filename="../main/MainWindow.cpp" line="1985"/>
         <source>Playback Toolbar</source>
         <translation>Панель воспроизведения</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1902"/>
+        <location filename="../main/MainWindow.cpp" line="1995"/>
         <source>PgUp</source>
         <translation>PgUp</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1903"/>
+        <location filename="../main/MainWindow.cpp" line="1996"/>
         <source>Rewind to the previous time instant or time ruler notch</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1927"/>
+        <location filename="../main/MainWindow.cpp" line="2020"/>
         <source>PgDown</source>
         <translation>PgDown</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1928"/>
+        <location filename="../main/MainWindow.cpp" line="2021"/>
         <source>Fast-forward to the next time instant or time ruler notch</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1952"/>
+        <location filename="../main/MainWindow.cpp" line="2039"/>
+        <source>Record</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2041"/>
+        <source>Ctrl+Space</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2042"/>
+        <source>Record a new audio file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2056"/>
         <source>Constrain playback to the selected regions</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1970"/>
+        <location filename="../main/MainWindow.cpp" line="2074"/>
         <source>Solo Current Pane</source>
         <translation>Соло активного окна</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1974"/>
+        <location filename="../main/MainWindow.cpp" line="2078"/>
         <source>o</source>
         <translation>o</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1975"/>
+        <location filename="../main/MainWindow.cpp" line="2079"/>
         <source>Solo the current pane during playback</source>
         <translation>При воспроизведении звучит лишь активное окно</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1984"/>
+        <location filename="../main/MainWindow.cpp" line="2088"/>
         <source>Align File Timelines</source>
         <translation>Выровнять линейки времени</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1987"/>
+        <location filename="../main/MainWindow.cpp" line="2091"/>
         <source>Treat multiple audio files as versions of the same work, and align their timelines</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2035"/>
+        <location filename="../main/MainWindow.cpp" line="2146"/>
         <source>Speed Up</source>
         <translation>Ускорить</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2036"/>
+        <location filename="../main/MainWindow.cpp" line="2147"/>
         <source>Ctrl+PgUp</source>
         <translation>Ctrl+PgUp</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2037"/>
+        <location filename="../main/MainWindow.cpp" line="2148"/>
         <source>Time-stretch playback to speed it up without changing pitch</source>
         <translation>Сжать время воспроизведения, не меняя высоту тона</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2041"/>
+        <location filename="../main/MainWindow.cpp" line="2152"/>
         <source>Slow Down</source>
         <translation>Замедлить</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2042"/>
+        <location filename="../main/MainWindow.cpp" line="2153"/>
         <source>Ctrl+PgDown</source>
         <translation>Ctrl+PgDown</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2043"/>
+        <location filename="../main/MainWindow.cpp" line="2154"/>
         <source>Time-stretch playback to slow it down without changing pitch</source>
         <translation>Расширить время воспроизведения, не меняя высоту тона</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2047"/>
+        <location filename="../main/MainWindow.cpp" line="2158"/>
         <source>Restore Normal Speed</source>
         <translation>Восстановить обычную скорость</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2048"/>
+        <location filename="../main/MainWindow.cpp" line="2159"/>
         <source>Ctrl+Home</source>
         <translation>Ctrl+Home</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2049"/>
+        <location filename="../main/MainWindow.cpp" line="2160"/>
         <source>Restore non-time-stretched playback</source>
         <translation>Восстановить естественную скорость воспроизведения</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2064"/>
+        <location filename="../main/MainWindow.cpp" line="2178"/>
+        <location filename="../main/MainWindow.cpp" line="2206"/>
+        <location filename="../main/MainWindow.cpp" line="2235"/>
+        <location filename="../main/MainWindow.cpp" line="2256"/>
+        <location filename="../main/MainWindow.cpp" line="2274"/>
+        <location filename="../main/MainWindow.cpp" line="2292"/>
         <source>Tool Selection</source>
         <translation>Выбор инструмента</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2114"/>
+        <location filename="../main/MainWindow.cpp" line="2192"/>
+        <source>Navigate Tool Mouse Actions</source>
+        <translation type="unfinished">Использование мыши с инструментом навигации</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2195"/>
+        <source>Click left button and drag to move around</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2197"/>
+        <location filename="../main/MainWindow.cpp" line="2312"/>
+        <source>Zoom to Area</source>
+        <translation type="unfinished">Масштабировать в выделение</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2198"/>
+        <location filename="../main/MainWindow.cpp" line="2313"/>
+        <source>Shift-click left button and drag to zoom to a rectangular area</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2200"/>
+        <source>Relocate</source>
+        <translation type="unfinished">Перемещение скачком</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2200"/>
+        <location filename="../main/MainWindow.cpp" line="2203"/>
+        <location filename="../main/MainWindow.cpp" line="2253"/>
+        <location filename="../main/MainWindow.cpp" line="2309"/>
+        <source>Double-Click Left</source>
+        <translation type="unfinished">Двойной щелчок левой клавишей</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2201"/>
+        <source>Double-click left button to jump to clicked location</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2204"/>
+        <location filename="../main/MainWindow.cpp" line="2254"/>
+        <source>Double-click left button on an item to edit it</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2218"/>
+        <source>Select Tool Mouse Actions</source>
+        <translation type="unfinished">Использование мыши с инструментом выделения</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2221"/>
+        <source>Click left button and drag to select region; drag region edge to resize</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2224"/>
+        <location filename="../main/MainWindow.cpp" line="2228"/>
+        <source>Multi Select</source>
+        <translation type="unfinished">Множественное выделение</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2225"/>
+        <source>Cmd-click left button and drag to select an additional region</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2229"/>
+        <source>Ctrl-click left button and drag to select an additional region</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2232"/>
+        <source>Fine Select</source>
+        <translation type="unfinished">Выделить точно</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2233"/>
+        <source>Shift-click left button and drag to select without snapping to items or grid</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2248"/>
+        <source>Edit Tool Mouse Actions</source>
+        <translation type="unfinished">Использование мыши с инструментом редактирования</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2250"/>
+        <source>Move</source>
+        <translation type="unfinished">Переместить</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2251"/>
+        <source>Click left button on an item or selected region and drag to move</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2269"/>
+        <source>Draw Tool Mouse Actions</source>
+        <translation type="unfinished">Использование мыши с инструментом рисования</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2272"/>
+        <source>Click left button and drag to create new item</source>
+        <translation type="unfinished">Щелкните левой клавишей мыши и перетащите курсор для создания нового объекта</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2276"/>
+        <location filename="../main/MainWindow.cpp" line="2289"/>
         <source>Erase</source>
         <translation>Стерка</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2116"/>
+        <location filename="../main/MainWindow.cpp" line="2278"/>
         <source>5</source>
         <translation>5</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2117"/>
+        <location filename="../main/MainWindow.cpp" line="2279"/>
         <source>Erase items from layer</source>
         <translation>Стирать объекты слоя</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2124"/>
+        <location filename="../main/MainWindow.cpp" line="2287"/>
+        <source>Erase Tool Mouse Actions</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2290"/>
+        <source>Click left button on an item to remove it from the layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2293"/>
         <source>Measure</source>
         <translation>Измеритель</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2126"/>
+        <location filename="../main/MainWindow.cpp" line="2295"/>
         <source>6</source>
         <translation>6</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2127"/>
+        <location filename="../main/MainWindow.cpp" line="2296"/>
         <source>Make measurements in layer</source>
         <translation>Выполнять измерения в слое</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2196"/>
+        <location filename="../main/MainWindow.cpp" line="2304"/>
+        <source>Measure Tool Mouse Actions</source>
+        <translation type="unfinished">Использование мыши с инструментом измерения</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2306"/>
+        <source>Measure Area</source>
+        <translation type="unfinished">Измерить область</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2307"/>
+        <source>Click left button and drag to measure a rectangular area</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2309"/>
+        <source>Measure Item</source>
+        <translation type="unfinished">Измерить объект</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2310"/>
+        <source>Click left button and drag to measure extents of an item or shape</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2377"/>
         <source>&amp;Delete Current Measurement</source>
         <translation>&amp;Удалить активный замер</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2197"/>
+        <location filename="../main/MainWindow.cpp" line="2378"/>
         <source>Delete the measurement currently under the mouse pointer</source>
         <translation>Удалить замер, находящийся под курсором мыши</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2206"/>
+        <location filename="../main/MainWindow.cpp" line="2387"/>
         <source>Fast Forward to Next Instant</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2208"/>
+        <location filename="../main/MainWindow.cpp" line="2389"/>
         <source>Rewind to Previous Instant</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2211"/>
+        <location filename="../main/MainWindow.cpp" line="2392"/>
         <source>Fast Forward to Next Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2212"/>
+        <location filename="../main/MainWindow.cpp" line="2393"/>
         <source>Fast forward to the next point in the current layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2213"/>
+        <location filename="../main/MainWindow.cpp" line="2394"/>
         <source>Rewind to Previous Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2214"/>
+        <location filename="../main/MainWindow.cpp" line="2395"/>
         <source>Rewind to the previous point in the current layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2217"/>
+        <location filename="../main/MainWindow.cpp" line="2398"/>
         <source>Fast forward</source>
         <translation>Быстрый вперед</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2311"/>
-        <location filename="../main/MainWindow.cpp" line="2325"/>
-        <location filename="../main/MainWindow.cpp" line="2339"/>
+        <location filename="../main/MainWindow.cpp" line="2494"/>
+        <location filename="../main/MainWindow.cpp" line="2508"/>
+        <location filename="../main/MainWindow.cpp" line="2522"/>
         <source>&lt;b&gt;File open failed&lt;/b&gt;&lt;p&gt;Audio file &quot;%1&quot; could not be opened</source>
         <translation>&lt;b&gt;Не удалось открыть файл&lt;/b&gt;&lt;p&gt;Не удалось открыть звуковой файл &quot;%1&quot;</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2461"/>
+        <location filename="../main/MainWindow.cpp" line="2642"/>
         <source>Export the selected regions into a single file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2463"/>
+        <location filename="../main/MainWindow.cpp" line="2644"/>
         <source>Export the whole file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2578"/>
+        <location filename="../main/MainWindow.cpp" line="2759"/>
         <source>&lt;b&gt;File open failed&lt;/b&gt;&lt;p&gt;Layer file %1 could not be opened.</source>
         <translation>&lt;b&gt;Не удалось открыть файл&lt;/b&gt;&lt;p&gt;Не удалось открыть файл слоя &quot;%1&quot;</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2642"/>
+        <location filename="../main/MainWindow.cpp" line="2824"/>
         <source>Can&apos;t export non-note layers to MIDI</source>
         <translation>Невозможно экспортировать ненотные слои в MIDI</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2654"/>
+        <location filename="../main/MainWindow.cpp" line="2836"/>
         <source>Sorry, cannot export this layer type to RDF (supported types are: region, note, text, time instants, time values)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2879"/>
+        <location filename="../main/MainWindow.cpp" line="2975"/>
+        <source>Export the whole pane</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2976"/>
+        <source>Export the visible area only</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2986"/>
+        <source>Which region of the current pane do you want to export as a scalable SVG image?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="3014"/>
+        <source>Failed to save SVG file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="3015"/>
+        <source>Failed to save SVG file %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4525"/>
+        <source>Subdivide instants</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4526"/>
+        <source>Number of subdivisions:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4547"/>
+        <source>Winnow instants</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4548"/>
+        <source>Remove all instants apart from multiples of:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4637"/>
+        <source>&lt;b&gt;Alignment calculation failed&lt;/b&gt;&lt;p&gt;Failed to calculate an audio alignment:&lt;p&gt;%1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4722"/>
+        <source>Adjust the master playback level and pan</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4771"/>
+        <source>&lt;p&gt;&lt;small&gt;%1 : %2 configuration, %3-bit build&lt;/small&gt;&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4778"/>
+        <source>With Qt v%1 &amp;copy; The Qt Company</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4834"/>
+        <source>&lt;br&gt;With Rubber Band Library v%1 &amp;copy; Particular Programs Ltd</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4836"/>
+        <source>&lt;br&gt;With Rubber Band Library &amp;copy; Particular Programs Ltd</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4839"/>
+        <source>&lt;br&gt;With Vamp plugin support (API v%1, host SDK v%2) &amp;copy; Chris Cannam and QMUL</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4848"/>
+        <source>&lt;br&gt;With Dataquay Qt/RDF library &amp;copy; Particular Programs Ltd</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4849"/>
+        <source>&lt;br&gt;With Cap&apos;n Proto serialisation &amp;copy; Sandstorm Development Group</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4896"/>
+        <source>&lt;h3&gt;Newer version available&lt;/h3&gt;&lt;p&gt;You are using version %1 of Sonic Visualiser, but version %2 is now available.&lt;/p&gt;&lt;p&gt;Please see the &lt;a href=&quot;http://sonicvisualiser.org/&quot;&gt;Sonic Visualiser website&lt;/a&gt; for more information.&lt;/p&gt;</source>
+        <translation type="unfinished">&lt;h3&gt;Доступна более новая версия&lt;/h3&gt;&lt;p&gt;Вы используетее Sonic Visualiser версии %1, но уже доступна версия %3.&lt;/p&gt;&lt;p&gt;Загляните на &lt;a href=&quot;http://sonicvisualiser.org/&quot;&gt;сайт Sonic Visualiser&lt;/a&gt; за подробностями.&lt;/p&gt; {3&gt;?} {3&gt;?} {1 ?} {2 ?}</translation>
+    </message>
+    <message>
         <source>&lt;b&gt;File open failed&lt;/b&gt;&lt;p&gt;Session file &quot;%1&quot; could not be opened</source>
-        <translation>&lt;b&gt;Не удалось открыть файл&lt;/b&gt;&lt;p&gt;Не удалось открыть файл сеанса &quot;%1&quot;</translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2899"/>
+        <translation type="vanished">&lt;b&gt;Не удалось открыть файл&lt;/b&gt;&lt;p&gt;Не удалось открыть файл сеанса &quot;%1&quot;</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="3139"/>
         <source>&lt;b&gt;File open failed&lt;/b&gt;&lt;p&gt;File &quot;%1&quot; could not be opened</source>
         <translation>&lt;b&gt;Не удалось открыть файл&lt;/b&gt;&lt;p&gt;Не удалось открыть файл &quot;%1&quot;</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2931"/>
+        <location filename="../main/MainWindow.cpp" line="3171"/>
         <source>&lt;b&gt;Open failed&lt;/b&gt;&lt;p&gt;URL &quot;%1&quot; could not be opened</source>
         <translation>&lt;b&gt;Не удалось открыть ссылку&lt;/b&gt;&lt;p&gt;Не удалось открыть URL &quot;%1&quot;</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2959"/>
+        <location filename="../main/MainWindow.cpp" line="3204"/>
         <source>&lt;b&gt;Open failed&lt;/b&gt;&lt;p&gt;File or URL &quot;%1&quot; could not be opened</source>
         <translation>&lt;b&gt;Не удалось открыть ссылку&lt;/b&gt;&lt;p&gt;Не удалось открыть файл или URL &quot;%1&quot;</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3002"/>
+        <location filename="../main/MainWindow.cpp" line="3247"/>
         <source>Enter template name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3007"/>
+        <location filename="../main/MainWindow.cpp" line="3252"/>
         <source>Please enter a name for the saved template:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3011"/>
+        <location filename="../main/MainWindow.cpp" line="3256"/>
         <source>Set as default template for future audio files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3031"/>
+        <location filename="../main/MainWindow.cpp" line="3276"/>
         <source>Template file exists</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3032"/>
+        <location filename="../main/MainWindow.cpp" line="3277"/>
         <source>&lt;b&gt;Template file exists&lt;/b&gt;&lt;p&gt;The template &quot;%1&quot; already exists.&lt;br&gt;Overwrite it?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3089"/>
-        <location filename="../main/MainWindow.cpp" line="3094"/>
+        <location filename="../main/MainWindow.cpp" line="3334"/>
+        <location filename="../main/MainWindow.cpp" line="3339"/>
         <source>Failed to open dropped URL</source>
         <translation>Не удалось открыть URL, перемещенный мышью в окно программы</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3090"/>
+        <location filename="../main/MainWindow.cpp" line="3335"/>
         <source>&lt;b&gt;Open failed&lt;/b&gt;&lt;p&gt;Dropped URL &quot;%1&quot; could not be opened</source>
         <translation>&lt;b&gt;Не удалось открыть ссылку&lt;/b&gt;&lt;p&gt;Не удалось открыть файл URL &quot;%1&quot;, перетащенный в окно программы мышью</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3227"/>
+        <location filename="../main/MainWindow.cpp" line="3472"/>
         <source>&lt;b&gt;Session modified&lt;/b&gt;&lt;p&gt;The current session has been modified.&lt;br&gt;Do you want to save it?</source>
         <translation>&lt;b&gt;Сеанс изменился&lt;/b&gt;&lt;p&gt;Активный сеанс изменился&lt;br&gt;Вы хотите сохранить его?</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3289"/>
-        <location filename="../main/MainWindow.cpp" line="3312"/>
+        <location filename="../main/MainWindow.cpp" line="3534"/>
+        <location filename="../main/MainWindow.cpp" line="3557"/>
         <source>&lt;b&gt;Save failed&lt;/b&gt;&lt;p&gt;Session file &quot;%1&quot; could not be saved.</source>
         <translation>&lt;b&gt;Не удалось сохранить файл&lt;/b&gt;&lt;p&gt;Не удалось сохранить файл сеанса &quot;%1&quot;</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3314"/>
         <source>%1: %1</source>
-        <translation type="unfinished">%1: %1 {1:?}</translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="3765"/>
+        <translation type="obsolete">%1: %1 {1:?}</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4060"/>
         <source>Playback speed: Normal</source>
         <translation>Скорость воспроизведения: обычная</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3767"/>
         <source>Playback speed: %1%2%</source>
-        <translation>Скорость воспроизведения: %1%2%</translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="3915"/>
+        <translation type="vanished">Скорость воспроизведения: %1%2%</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4243"/>
         <source>&lt;b&gt;Wrong sample rate&lt;/b&gt;&lt;p&gt;The sample rate of this audio file (%1 Hz) does not match
 the current playback rate (%2 Hz).&lt;p&gt;The file will play at the wrong speed and pitch.&lt;p&gt;Change the &lt;i&gt;Resample mismatching files on import&lt;/i&gt; option under &lt;i&gt;File&lt;/i&gt; -&gt; &lt;i&gt;Preferences&lt;/i&gt; if you want to alter this behaviour.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3927"/>
+        <location filename="../main/MainWindow.cpp" line="4255"/>
         <source>&lt;b&gt;Overloaded&lt;/b&gt;&lt;p&gt;Audio effects plugin auditioning has been disabled due to a processing overload.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4108"/>
+        <location filename="../main/MainWindow.cpp" line="4505"/>
         <source>Reset Counters</source>
         <translation>Обнуление счетчиков</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4128"/>
-        <source>&lt;b&gt;Layer generation failed&lt;/b&gt;&lt;p&gt;Failed to generate derived layer.&lt;p&gt;The layer transform &quot;%1&quot; failed:&lt;p&gt;%2</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4135"/>
-        <source>&lt;b&gt;Layer generation failed&lt;/b&gt;&lt;p&gt;Failed to generate a derived layer.&lt;p&gt;The layer transform &quot;%1&quot; failed.&lt;p&gt;No error information is available.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4147"/>
-        <location filename="../main/MainWindow.cpp" line="4181"/>
+        <location filename="../main/MainWindow.cpp" line="4593"/>
+        <location filename="../main/MainWindow.cpp" line="4628"/>
         <source>Warning</source>
         <translation>Предупреждение</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4161"/>
+        <location filename="../main/MainWindow.cpp" line="4607"/>
         <source>&lt;b&gt;Layer generation failed&lt;/b&gt;&lt;p&gt;Failed to regenerate derived layer &quot;%1&quot; using new data model as input.&lt;p&gt;The layer transform &quot;%2&quot; failed:&lt;p&gt;%3</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4168"/>
+        <location filename="../main/MainWindow.cpp" line="4614"/>
         <source>&lt;b&gt;Layer generation failed&lt;/b&gt;&lt;p&gt;Failed to regenerate derived layer &quot;%1&quot; using new data model as input.&lt;p&gt;The layer transform &quot;%2&quot; failed.&lt;p&gt;No error information is available.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4181"/>
+        <location filename="../main/MainWindow.cpp" line="4628"/>
         <source>&lt;b&gt;Warning when regenerating layer&lt;/b&gt;&lt;p&gt;When regenerating the derived layer &quot;%1&quot; using new data model as input:&lt;p&gt;%2</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4191"/>
+        <location filename="../main/MainWindow.cpp" line="4636"/>
         <source>Failed to calculate alignment</source>
         <translation>Не удалось рассчитать выравнивание</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4192"/>
-        <source>&lt;b&gt;Alignment calculation failed&lt;/b&gt;&lt;p&gt;Failed to calculate an audio alignment using transform &quot;%1&quot;:&lt;p&gt;%2</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4326"/>
+        <location filename="../main/MainWindow.cpp" line="4784"/>
         <source>&lt;br&gt;With JACK audio output library &amp;copy; Paul Davis and Jack O&apos;Quin</source>
         <translation>&lt;br&gt;С библиотекой JACK &amp;copy; Paul Davis и Jack O&apos;Quin</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4330"/>
+        <location filename="../main/MainWindow.cpp" line="4788"/>
         <source>&lt;br&gt;With PortAudio audio output library &amp;copy; Ross Bencina and Phil Burk</source>
         <translation>&lt;br&gt;С библиотекой PortAudio &amp;copy; Ross Bencina и Phil Burk</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4336"/>
+        <location filename="../main/MainWindow.cpp" line="4794"/>
         <source>&lt;br&gt;With PulseAudio audio output library &amp;copy; Lennart Poettering and Pierre Ossman</source>
         <translation>&lt;br&gt;С библиотекой PulseAudio &amp;copy; Lennart Poettering и Pierre Ossman</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3937"/>
+        <location filename="../main/MainWindow.cpp" line="4265"/>
         <source>&lt;b&gt;Overloaded&lt;/b&gt;&lt;p&gt;Audio playback speed processing has been reduced to a single channel, due to a processing overload.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4378"/>
         <source>&lt;br&gt;With Rubber Band &amp;copy; Chris Cannam</source>
-        <translation>&lt;br&gt;С Rubber Band &amp;copy; Chris Cannam</translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="1654"/>
+        <translation type="vanished">&lt;br&gt;С Rubber Band &amp;copy; Chris Cannam</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="1744"/>
         <source>Find a Transform...</source>
         <translation>Найти эффект трансформации...</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1655"/>
+        <location filename="../main/MainWindow.cpp" line="1745"/>
         <source>Search for a transform from the installed plugins, by name or description</source>
         <translation>Найти эффект трансформации среди установленных расширений по названию или описанию</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1656"/>
+        <location filename="../main/MainWindow.cpp" line="1746"/>
         <source>Ctrl+M</source>
         <translation>Ctrl+M</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4313"/>
+        <location filename="../main/MainWindow.cpp" line="4770"/>
         <source>&lt;p&gt;Sonic Visualiser is a program for viewing and exploring audio data for semantic music analysis and annotation.&lt;br&gt;&lt;a href=&quot;http://www.sonicvisualiser.org/&quot;&gt;http://www.sonicvisualiser.org/&lt;/a&gt;&lt;/p&gt;</source>
         <translation>&lt;p&gt;Sonic Visualiser — программа для просмотра и исследования звукозаписей с целью семантического анализа и аннотации музыки.&lt;br&gt;&lt;a href=&quot;http://www.sonicvisualiser.org/&quot;&gt;http://www.sonicvisualiser.org/&lt;/a&gt;&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4314"/>
         <source>&lt;p&gt;&lt;small&gt;%1 : %2 configuration&lt;/small&gt;&lt;/p&gt;</source>
-        <translation type="unfinished">&lt;p&gt;&lt;small&gt;%1 : конфигурация %2&lt;/small&gt;&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4320"/>
+        <translation type="obsolete">&lt;p&gt;&lt;small&gt;%1 : конфигурация %2&lt;/small&gt;&lt;/p&gt;</translation>
+    </message>
+    <message>
         <source>With Qt v%1 &amp;copy; Nokia Corporation</source>
-        <translation>С использованием Qt v%1 &amp;copy; Nokia Corporation</translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="4324"/>
+        <translation type="vanished">С использованием Qt v%1 &amp;copy; Nokia Corporation</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="4782"/>
         <source>&lt;br&gt;With JACK audio output library v%1 &amp;copy; Paul Davis and Jack O&apos;Quin</source>
         <translation>&lt;br&gt;С библиотекой JACK v%1 &amp;copy; Paul Davis и Jack O&apos;Quin</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4334"/>
+        <location filename="../main/MainWindow.cpp" line="4792"/>
         <source>&lt;br&gt;With PulseAudio audio output library v%1 &amp;copy; Lennart Poettering and Pierre Ossman</source>
         <translation>&lt;br&gt;С библиотекой PulseAudio v%1 &amp;copy; Lennart Poettering и Pierre Ossman</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4348"/>
+        <location filename="../main/MainWindow.cpp" line="4806"/>
         <source>&lt;br&gt;With MAD mp3 decoder v%1 &amp;copy; Underbit Technologies Inc</source>
         <translation>&lt;br&gt;С декодером mp3 MAD v%1 &amp;copy; Underbit Technologies Inc</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4355"/>
+        <location filename="../main/MainWindow.cpp" line="4813"/>
         <source>&lt;br&gt;With libsamplerate v%1 &amp;copy; Erik de Castro Lopo</source>
         <translation>&lt;br&gt;С libsamplerate v%1 &amp;copy; Erik de Castro Lopo</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4362"/>
+        <location filename="../main/MainWindow.cpp" line="4820"/>
         <source>&lt;br&gt;With libsndfile v%1 &amp;copy; Erik de Castro Lopo</source>
         <translation>&lt;br&gt;С libsndfile v%1 &amp;copy; Erik de Castro Lopo</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4369"/>
+        <location filename="../main/MainWindow.cpp" line="4827"/>
         <source>&lt;br&gt;With FFTW3 v%1 &amp;copy; Matteo Frigo and MIT</source>
         <translation>&lt;br&gt;С FFTW3 v%1 &amp;copy; Matteo Frigo и MIT</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4376"/>
         <source>&lt;br&gt;With Rubber Band v%1 &amp;copy; Chris Cannam</source>
-        <translation>&lt;br&gt;С Rubber Band v%1 &amp;copy; Chris Cannam</translation>
+        <translation type="vanished">&lt;br&gt;С Rubber Band v%1 &amp;copy; Chris Cannam</translation>
     </message>
     <message>
         <source>&lt;br&gt;With Raptor RDF parser v%1 &amp;copy; Dave Beckett and the University of Bristol</source>
@@ -3993,260 +4785,261 @@
         <translation type="obsolete">&lt;br&gt;С движком запросов RDF  Rasqal &amp;copy; Dave Beckett и Бристольский университет</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4387"/>
+        <location filename="../main/MainWindow.cpp" line="4843"/>
         <source>&lt;br&gt;With Redland RDF datastore v%1 &amp;copy; Dave Beckett and the University of Bristol</source>
         <translation>&lt;br&gt;C хранилищем данных RDF Redland v%1 &amp;copy; Dave Beckett и Бристольский университет</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4389"/>
+        <location filename="../main/MainWindow.cpp" line="4845"/>
         <source>&lt;br&gt;With Redland RDF datastore &amp;copy; Dave Beckett and the University of Bristol</source>
         <translation>&lt;br&gt;C хранилищем данных RDF Redland &amp;copy; Dave Beckett и Бристольский университет</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4398"/>
+        <location filename="../main/MainWindow.cpp" line="4854"/>
         <source>&lt;br&gt;With liblo Lite OSC library v%1 &amp;copy; Steve Harris</source>
         <translation>&lt;br&gt;С библиотекой OSC liblo v%1 &amp;copy; Steve Harris</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4404"/>
+        <location filename="../main/MainWindow.cpp" line="4860"/>
         <source>&lt;/small&gt;&lt;p&gt;&lt;small&gt;The OSC URL for this instance is: &quot;%1&quot;</source>
         <translation>&lt;/small&gt;&lt;p&gt;&lt;small&gt;Адрес OSC для этого сеанса: &quot;%1&quot;</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4411"/>
+        <location filename="../main/MainWindow.cpp" line="4867"/>
         <source>With </source>
         <translation>С</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4411"/>
+        <location filename="../main/MainWindow.cpp" line="4867"/>
         <source>Using </source>
         <translation>Используя</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="848"/>
+        <location filename="../main/MainWindow.cpp" line="914"/>
         <source>Peek Left</source>
         <translation>Глянуть влево</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="849"/>
+        <location filename="../main/MainWindow.cpp" line="915"/>
         <source>Alt+Left</source>
         <translation>Alt+влево</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="850"/>
+        <location filename="../main/MainWindow.cpp" line="916"/>
         <source>Scroll the current pane to the left without moving the playback cursor or other panes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="856"/>
+        <location filename="../main/MainWindow.cpp" line="922"/>
         <source>Peek Right</source>
         <translation>Глянуть вправо</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="857"/>
+        <location filename="../main/MainWindow.cpp" line="923"/>
         <source>Alt+Right</source>
         <translation>Alt+вправо</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="858"/>
+        <location filename="../main/MainWindow.cpp" line="924"/>
         <source>Scroll the current pane to the right without moving the playback cursor or other panes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1000"/>
+        <location filename="../main/MainWindow.cpp" line="1068"/>
         <source>Show Acti&amp;vity Log</source>
         <translation>Показать &amp;журнал действий</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1001"/>
+        <location filename="../main/MainWindow.cpp" line="1069"/>
         <source>Open a window listing interactions and other events</source>
         <translation>Открыть окно со списком всех действий в сеансе</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2542"/>
+        <location filename="../main/MainWindow.cpp" line="2723"/>
         <source>Export multiple audio files</source>
         <translation>Экспортировать несколько звуковых файлов </translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2544"/>
+        <location filename="../main/MainWindow.cpp" line="2725"/>
         <source>Export audio to &quot;%1&quot;</source>
         <translation>Экспорт звука в &quot;%1&quot;</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2583"/>
-        <location filename="../main/MainWindow.cpp" line="2903"/>
-        <location filename="../main/MainWindow.cpp" line="2935"/>
-        <location filename="../main/MainWindow.cpp" line="2963"/>
-        <location filename="../main/MainWindow.cpp" line="3095"/>
+        <location filename="../main/MainWindow.cpp" line="2764"/>
+        <location filename="../main/MainWindow.cpp" line="3143"/>
+        <location filename="../main/MainWindow.cpp" line="3175"/>
+        <location filename="../main/MainWindow.cpp" line="3208"/>
+        <location filename="../main/MainWindow.cpp" line="3340"/>
         <source>&lt;b&gt;Audio required&lt;/b&gt;&lt;p&gt;Unable to load layer data from &quot;%1&quot; without an audio file.&lt;br&gt;Please load at least one audio file before importing annotations.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2678"/>
+        <location filename="../main/MainWindow.cpp" line="2860"/>
         <source>Export layer to &quot;%1&quot;</source>
         <translation>Экспорт слоя в &quot;%1&quot;</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3205"/>
+        <location filename="../main/MainWindow.cpp" line="3450"/>
         <source>Export image to &quot;%1&quot;</source>
         <translation>Экспорт изображения в &quot;%1&quot;</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3260"/>
+        <location filename="../main/MainWindow.cpp" line="3505"/>
         <source>Close the current session and create a new one</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3261"/>
+        <location filename="../main/MainWindow.cpp" line="3506"/>
         <source>Add this data to the current session</source>
         <translation>Добавить эти данные в активный сеанс</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3265"/>
+        <location filename="../main/MainWindow.cpp" line="3510"/>
         <source>Select target for import</source>
         <translation>Выбрать цель для импорта</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3266"/>
+        <location filename="../main/MainWindow.cpp" line="3511"/>
         <source>&lt;b&gt;Select a target for import&lt;/b&gt;&lt;p&gt;This RDF document refers to one or more audio files.&lt;br&gt;You already have an audio waveform loaded.&lt;br&gt;What would you like to do with the new data?</source>
         <translation>&lt;b&gt;Выберите цель импорта&lt;/b&gt;&lt;p&gt;Этот документ RDF ссылается на один или более звуковых файлов.&lt;br&gt;У вас уже есть один загруженный звуковой файл.&lt;br&gt;Что вы хотите сделать с новыми данными?</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="3321"/>
+        <location filename="../main/MainWindow.cpp" line="3566"/>
         <source>Save session as &quot;%1&quot;</source>
         <translation>Сохранение сеанса как &quot;%1&quot;</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4007"/>
+        <location filename="../main/MainWindow.cpp" line="4364"/>
         <source>Add Point</source>
         <translation>Добавить точку</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4286"/>
+        <location filename="../main/MainWindow.cpp" line="4743"/>
         <source>http://www.sonicvisualiser.org/doc/reference/%1/en/</source>
         <translation>http://www.sonicvisualiser.org/doc/reference/%1/en/</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4394"/>
+        <location filename="../main/MainWindow.cpp" line="4850"/>
         <source>&lt;br&gt;With RtMidi &amp;copy; Gary P. Scavone</source>
         <translation>&lt;br&gt;С RtMidi &amp;copy; Gary P. Scavone</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="498"/>
+        <location filename="../main/MainWindow.cpp" line="535"/>
         <source>Ctrl+Shift+S</source>
         <translation>Ctrl+Shift+S</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="733"/>
+        <location filename="../main/MainWindow.cpp" line="785"/>
         <source>Insert Item at Selection</source>
         <translation>Вставить объект в выделение</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="734"/>
         <source>Ctrl+Shift+Enter</source>
-        <translation>Ctrl+Shift+Enter</translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="735"/>
+        <translation type="vanished">Ctrl+Shift+Enter</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="787"/>
         <source>Insert a new note or region item corresponding to the current selection</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1907"/>
+        <location filename="../main/MainWindow.cpp" line="2000"/>
         <source>Rewind to Similar Point</source>
         <translation>Назад к первой схожей точке</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1908"/>
+        <location filename="../main/MainWindow.cpp" line="2001"/>
         <source>Shift+PgUp</source>
         <translation>Shift+PgUp</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1909"/>
+        <location filename="../main/MainWindow.cpp" line="2002"/>
         <source>Rewind to the previous similarly valued time instant</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1932"/>
+        <location filename="../main/MainWindow.cpp" line="2025"/>
         <source>Fast Forward to Similar Point</source>
         <translation>Вперед к первой схожей точке</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1933"/>
+        <location filename="../main/MainWindow.cpp" line="2026"/>
         <source>Shift+PgDown</source>
         <translation>Shift+PgDown</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="1934"/>
+        <location filename="../main/MainWindow.cpp" line="2027"/>
         <source>Fast-forward to the next similarly valued time instant</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
+        <location filename="../main/MainWindow.cpp" line="2570"/>
         <source>1. %2</source>
-        <translation type="obsolete">1. %2</translation>
-    </message>
-    <message>
+        <translation type="unfinished">1. %2</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2577"/>
         <source>%1. %2</source>
-        <translation type="obsolete">%1. %2</translation>
-    </message>
-    <message>
-        <location filename="../main/MainWindow.cpp" line="2407"/>
+        <translation type="unfinished">%1. %2</translation>
+    </message>
+    <message>
+        <location filename="../main/MainWindow.cpp" line="2590"/>
         <source>Select audio file to export</source>
         <translation>Укажите экспортируемый звуковой файл</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="2408"/>
+        <location filename="../main/MainWindow.cpp" line="2591"/>
         <source>Which audio file do you want to export from?</source>
         <translation>Какой звуковой файл вы хотите экспортировать?</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4439"/>
+        <location filename="../main/MainWindow.cpp" line="4895"/>
         <source>Newer version available</source>
         <translation>Доступна более новая версия</translation>
     </message>
     <message>
-        <location filename="../main/MainWindow.cpp" line="4440"/>
         <source>&lt;h3&gt;Newer version available&lt;/h3&gt;&lt;p&gt;You are using version %1 of Sonic Visualiser, but version %3 is now available.&lt;/p&gt;&lt;p&gt;Please see the &lt;a href=&quot;http://sonicvisualiser.org/&quot;&gt;Sonic Visualiser website&lt;/a&gt; for more information.&lt;/p&gt;</source>
-        <translation>&lt;h3&gt;Доступна более новая версия&lt;/h3&gt;&lt;p&gt;Вы используетее Sonic Visualiser версии %1, но уже доступна версия %3.&lt;/p&gt;&lt;p&gt;Загляните на &lt;a href=&quot;http://sonicvisualiser.org/&quot;&gt;сайт Sonic Visualiser&lt;/a&gt; за подробностями.&lt;/p&gt;</translation>
+        <translation type="vanished">&lt;h3&gt;Доступна более новая версия&lt;/h3&gt;&lt;p&gt;Вы используетее Sonic Visualiser версии %1, но уже доступна версия %3.&lt;/p&gt;&lt;p&gt;Загляните на &lt;a href=&quot;http://sonicvisualiser.org/&quot;&gt;сайт Sonic Visualiser&lt;/a&gt; за подробностями.&lt;/p&gt;</translation>
     </message>
 </context>
 <context>
     <name>MainWindowBase</name>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="481"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="661"/>
         <source>%1 (modified)</source>
         <translation>%1 (изменен)</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="496"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="676"/>
         <source> (modified)</source>
         <translation> (изменен)</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="694"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="874"/>
         <source>Cut</source>
         <translation>Вырезать</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="765"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="945"/>
         <source>Paste</source>
         <translation>Вставить</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="869"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="892"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="982"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1001"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1051"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1074"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1164"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1183"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1202"/>
         <source>Add Point</source>
         <translation>Добавить точку</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="923"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1105"/>
         <source>Add Point at %1 s</source>
         <translation>Добавить точку по отметке %1 с</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1042"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1294"/>
         <source>Opening file or URL...</source>
         <translation>Открывается файл или URL...</translation>
     </message>
@@ -4259,130 +5052,142 @@
         <translation type="obsolete">Загрузить этот файл в новое окно волновой формы</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1169"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1435"/>
         <source>Select target for import</source>
         <translation>Выбрать цель для импорта</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1170"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1436"/>
         <source>&lt;b&gt;Select a target for import&lt;/b&gt;&lt;p&gt;You already have an audio file loaded.&lt;br&gt;What would you like to do with the new audio file?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1268"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1687"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1814"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1537"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2006"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2136"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2939"/>
         <source>%1: %2</source>
         <translation>%1: %2</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1275"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1544"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2946"/>
         <source>%1: %2 [%3]</source>
         <translation>%1: %2 [%3]</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1290"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1331"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1559"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1600"/>
         <source>Import &quot;%1&quot;</source>
         <translation>Импортировать &quot;%1&quot;</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1385"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1656"/>
         <source>Opening playlist...</source>
         <translation>Открывается список воспроизведения...</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1590"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1906"/>
         <source>Opening session...</source>
         <translation>Открывается сеанс...</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1672"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1770"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1991"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2090"/>
         <source>SV XML file read error:
 %1</source>
         <translation>Ошибка чтения XML-файла SV:
 %1</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1782"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2102"/>
         <source>Open session template &quot;%1&quot;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1860"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2186"/>
         <source>&lt;b&gt;Failed to import RDF&lt;/b&gt;&lt;p&gt;No suitable data models found for import from RDF document at &quot;%1&quot;&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1992"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1997"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2358"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2363"/>
         <source>Couldn&apos;t open audio device</source>
         <translation>Не удалось открыть звуковое устройство</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2079"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2092"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2129"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2481"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2494"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2532"/>
         <source>Failed to write file</source>
         <translation>Не удалось записать файл</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2080"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2093"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2130"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2482"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2495"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2533"/>
         <source>&lt;b&gt;Save failed&lt;/b&gt;&lt;p&gt;Failed to write to file &quot;%1&quot;: %2</source>
         <translation>&lt;b&gt;Не удалось сохранить&lt;/b&gt;&lt;p&gt;Не удалось записать файл &quot;%1&quot;: %2</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2678"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2959"/>
+        <source>Import Recorded Audio</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="3254"/>
         <source>Add Pane</source>
         <translation>Добавить окно</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2723"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="3300"/>
         <source>Remove Pane</source>
         <translation>Удалить окно</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2746"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="3127"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="3323"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="3740"/>
         <source>Delete Pane</source>
         <translation>Удалить окно</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="2960"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="3559"/>
         <source>Playing: %1 of %2 (%3 remaining)</source>
         <translation>Воспроизводится: %1 из %2 (осталось %3)</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1993"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="3571"/>
+        <source>Recording: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2359"/>
         <source>&lt;b&gt;No audio available&lt;/b&gt;&lt;p&gt;Could not open an audio device for playback.&lt;p&gt;Automatic audio device detection failed. Audio playback will not be available during this session.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Беззвучный режим&lt;/b&gt;&lt;p&gt;Не удалось открыть звуковое устройство для воспроизведения.&lt;p&gt;Не удалось автоматически определить звуковое устройство. На этот раз придется обойтись без воспроизведения звука.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1163"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1429"/>
         <source>Close the current session and start a new one</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1164"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1430"/>
         <source>Replace the main audio file in this session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1165"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1431"/>
         <source>Add the audio file to this session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1998"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2364"/>
         <source>&lt;b&gt;No audio available&lt;/b&gt;&lt;p&gt;Failed to open your preferred audio device (&quot;%1&quot;).&lt;p&gt;Audio playback will not be available during this session.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Беззвучный режим&lt;/b&gt;&lt;p&gt;Не удалось открыть предпочитаемое звуковое устройство («%1»).&lt;p&gt;На этот раз придется обойтись без воспроизведения звука.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1831"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1855"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2155"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2181"/>
         <source>Importing from RDF...</source>
         <translation>Выполняется импорт из RDF...</translation>
     </message>
@@ -4391,43 +5196,43 @@
         <translation type="obsolete">&lt;b&gt;Выберите цель импорта&lt;/b&gt;&lt;p&gt;У вас уже есть один загруженный звуковой файл.&lt;br&gt;Что вы хотите сделать с новыми звуковыми данными?</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1249"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1518"/>
         <source>Import audio file &quot;%1&quot;</source>
         <translation>Импорт звукового файла &quot;%1&quot;</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1471"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1742"/>
         <source>Import layer XML file &quot;%1&quot;</source>
         <translation>Импорт XML-файла слоя &quot;%1&quot;</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1505"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1776"/>
         <source>Import MIDI file &quot;%1&quot;</source>
         <translation>Импорт файла MIDI &quot;%1&quot;</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1685"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2004"/>
         <source>Import session file &quot;%1&quot;</source>
         <translation>Импорт файла сеанса &quot;%1&quot;</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1846"/>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1859"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2172"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2185"/>
         <source>Failed to import RDF</source>
         <translation>Не удалось импортировать RDF</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1847"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2173"/>
         <source>&lt;b&gt;Failed to import RDF&lt;/b&gt;&lt;p&gt;Importing data from RDF document at &quot;%1&quot; failed: %2&lt;/p&gt;</source>
         <translation>&lt;b&gt;Не удалось импортировать RDF&lt;/b&gt;&lt;p&gt;Не удалось импортировать данные из документа RDF &quot;%1&quot;: %2&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="1864"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="2190"/>
         <source>Import RDF document &quot;%1&quot;</source>
         <translation>Импорт документа RDF &quot;%1&quot;</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/MainWindowBase.cpp" line="966"/>
+        <location filename="../svapp/framework/MainWindowBase.cpp" line="1148"/>
         <source>Add Item at %1 s</source>
         <translation>Добавить объект в позицию %1с</translation>
     </message>
@@ -4449,77 +5254,77 @@
 <context>
     <name>ModelDataTableDialog</name>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="45"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="45"/>
         <source>Data Editor</source>
         <translation>Редактор данных</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="49"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="49"/>
         <source>Playback Toolbar</source>
         <translation>Панель воспроизведения</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="51"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="51"/>
         <source>Play Mode Toolbar</source>
         <translation>Панель режима воспроизведения</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="55"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="55"/>
         <source>Track Playback</source>
         <translation>Переключить воспроизведение</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="56"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="56"/>
         <source>Toggle tracking of playback position</source>
         <translation>Переключить отслеживание позиции воспроизведения</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="62"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="62"/>
         <source>Edit Toolbar</source>
         <translation>Панель правки</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="64"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="64"/>
         <source>Insert New Item</source>
         <translation>Вставить новый объект</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="65"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="65"/>
         <source>Insert</source>
         <translation>Вставить</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="66"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="66"/>
         <source>Insert a new item</source>
         <translation>Вставить новый объект</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="70"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="70"/>
         <source>Delete Selected Items</source>
         <translation>Удалить выбранные объекты</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="71"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="71"/>
         <source>Delete</source>
         <translation>Удалить</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="72"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="72"/>
         <source>Delete the selected item or items</source>
         <translation>Удалить выбранные объекты</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="96"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="96"/>
         <source>Data in Layer</source>
         <translation>Данные в слое</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="107"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="107"/>
         <source>Find:</source>
         <translation>Искать:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/ModelDataTableDialog.cpp" line="108"/>
+        <location filename="../svgui/widgets/ModelDataTableDialog.cpp" line="108"/>
         <source> </source>
         <translation> </translation>
     </message>
@@ -4527,22 +5332,22 @@
 <context>
     <name>ModelMetadataModel</name>
     <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="227"/>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="227"/>
         <source>Type</source>
         <translation>Тип</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="228"/>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="228"/>
         <source>Name</source>
         <translation>Название</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="229"/>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="229"/>
         <source>Maker</source>
         <translation>Создатель</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/LayerTree.cpp" line="230"/>
+        <location filename="../svgui/widgets/LayerTree.cpp" line="230"/>
         <source>Source</source>
         <translation>Источник</translation>
     </message>
@@ -4550,48 +5355,66 @@
 <context>
     <name>ModelTransformerFactory</name>
     <message>
-        <location filename="../../svcore/transform/ModelTransformerFactory.cpp" line="76"/>
+        <location filename="../svcore/transform/ModelTransformerFactory.cpp" line="78"/>
         <source>%1 &lt;%2&gt;</source>
         <translation>%1 &lt;%2&gt;</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/ModelTransformerFactory.cpp" line="217"/>
+        <location filename="../svcore/transform/ModelTransformerFactory.cpp" line="238"/>
         <source>%1: %2</source>
         <translation>%1: %2</translation>
     </message>
 </context>
 <context>
+    <name>NetworkPermissionTester</name>
+    <message>
+        <location filename="../main/NetworkPermissionTester.cpp" line="44"/>
+        <source>Welcome to Sonic Visualiser</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/NetworkPermissionTester.cpp" line="53"/>
+        <source>&lt;h2&gt;Welcome to Sonic Visualiser!&lt;/h2&gt;&lt;p&gt;&lt;img src=&quot;:icons/qm-logo-smaller.png&quot; style=&quot;float:right&quot;&gt;Sonic Visualiser is a program for viewing and exploring audio data for semantic music analysis and annotation.&lt;/p&gt;&lt;p&gt;Developed in the Centre for Digital Music at Queen Mary, University of London, Sonic Visualiser is provided free as open source software under the GNU General Public License.&lt;/p&gt;&lt;p&gt;&lt;hr&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Before we go on...&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Sonic Visualiser would like to make networking connections and open a network port.&lt;/p&gt;&lt;p&gt;This is to:&lt;/p&gt;&lt;ul&gt;&lt;li&gt; Find information about available and installed plugins;&lt;/li&gt;&lt;li&gt; Support the use of Open Sound Control, where configured; and&lt;/li&gt;&lt;li&gt; Tell you when updates are available.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;No personal information will be sent, no tracking is carried out, and all requests happen in the background without interrupting your work.&lt;/p&gt;&lt;p&gt;We recommend that you allow this, because it makes Sonic Visualiser more useful. But if you do not wish to do so, please un-check the box below.&lt;br&gt;&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/NetworkPermissionTester.cpp" line="69"/>
+        <source>Allow this</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>NoteLayer</name>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="45"/>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="46"/>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="807"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="57"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="58"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="898"/>
         <source>New Point</source>
         <translation>Новая точка</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="83"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="95"/>
         <source>Vertical Scale</source>
         <translation>Верт. масштаб</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="142"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="161"/>
         <source>Auto-Align</source>
         <translation>Автовыравнивание</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="447"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="474"/>
         <source>In progress</source>
         <translation>В процессе</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="449"/>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="472"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="476"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="499"/>
         <source>No local points</source>
         <translation>Нет локальных точек</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="506"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="533"/>
         <source>Time:	%1
 Pitch:	%2
 Duration:	%3
@@ -4602,7 +5425,7 @@
 Без метки</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="511"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="538"/>
         <source>Time:	%1
 Pitch:	%2
 Duration:	%3
@@ -4613,108 +5436,108 @@
 Метка:	%4</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="812"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="903"/>
         <source>Draw Point</source>
         <translation>Нарисовать точку</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="940"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1031"/>
         <source>Drag Point</source>
         <translation>Перетащить точку</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="961"/>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1009"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1052"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1100"/>
         <source>Edit Point</source>
         <translation>Изменить точку</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="963"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1054"/>
         <source>Relocate Point</source>
         <translation>Переместить точку</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="966"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1057"/>
         <source>Change Point Value</source>
         <translation>Изменить значение точки</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1025"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1116"/>
         <source>Drag Selection</source>
         <translation>Перетащить выделение</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1050"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1141"/>
         <source>Resize Selection</source>
         <translation>Изменить размер выделения</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1089"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1180"/>
         <source>Delete Selected Points</source>
         <translation>Удалить выбранные точки</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1150"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1241"/>
         <source>Paste</source>
         <translation>Вставить</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="84"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="96"/>
         <source>Scale Units</source>
         <translation type="unfinished">Единицы шкалы</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="100"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="112"/>
         <source>Scale</source>
         <translation>Масштаб</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="143"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="162"/>
         <source>Linear</source>
         <translation>Линейный</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="144"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="163"/>
         <source>Log</source>
         <translation>Логарифмический</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="145"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="164"/>
         <source>MIDI Notes</source>
         <translation>Ноты MIDI</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="499"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="526"/>
         <source>%1 %2</source>
         <translation>%1 %2</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="888"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="979"/>
         <source>Erase Point</source>
         <translation>Стереть точку</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1135"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1226"/>
         <source>Re-align pasted items?</source>
         <translation>Заново выровнять вставленные объекты?</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1136"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1227"/>
         <source>The items you are pasting came from a layer with different source material from this one.  Do you want to re-align them in time, to match the source material for this layer?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="1221"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="1312"/>
         <source>Record Note</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="486"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="513"/>
         <source>%1 (%2, %3 Hz)</source>
         <translation>%1 (%2, %3 Гц)</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/NoteLayer.cpp" line="493"/>
+        <location filename="../svgui/layer/NoteLayer.cpp" line="520"/>
         <source>%1 Hz (%2, %3)</source>
         <translation>%1Гц (%2, %3)</translation>
     </message>
@@ -4722,47 +5545,47 @@
 <context>
     <name>NoteModel</name>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="126"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="129"/>
         <source>Note</source>
         <translation>Нота</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="166"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="164"/>
         <source>Time</source>
         <translation>Время</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="167"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="165"/>
         <source>Frame</source>
         <translation>Выборка</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="168"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="166"/>
         <source>Pitch</source>
         <translation>Высота тона</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="169"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="167"/>
         <source>Duration</source>
         <translation>Длительность</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="170"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="168"/>
         <source>Level</source>
         <translation>Уровень</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="171"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="169"/>
         <source>Label</source>
         <translation>Метка</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="172"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="170"/>
         <source>Unknown</source>
         <translation>Неизвестно</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/NoteModel.h" line="202"/>
+        <location filename="../svcore/data/model/NoteModel.h" line="200"/>
         <source>Edit Data</source>
         <translation>Изменить данные</translation>
     </message>
@@ -4770,7 +5593,7 @@
 <context>
     <name>OggVorbisFileReader</name>
     <message>
-        <location filename="../../svcore/data/fileio/OggVorbisFileReader.cpp" line="76"/>
+        <location filename="../svcore/data/fileio/OggVorbisFileReader.cpp" line="82"/>
         <source>Decoding %1...</source>
         <translation>Декодируется %1...</translation>
     </message>
@@ -4778,12 +5601,12 @@
 <context>
     <name>Overview</name>
     <message>
-        <location filename="../../svgui/view/Overview.cpp" line="32"/>
+        <location filename="../svgui/view/Overview.cpp" line="33"/>
         <source>Overview</source>
         <translation>Обзор</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Overview.cpp" line="278"/>
+        <location filename="../svgui/view/Overview.cpp" line="359"/>
         <source>Click and drag to navigate; double-click to jump</source>
         <translation>Щёлкните и потащите для перемещения по окну; щёлкните дважды для скачка</translation>
     </message>
@@ -4791,465 +5614,376 @@
 <context>
     <name>Pane</name>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="657"/>
+        <location filename="../svgui/view/Pane.cpp" line="680"/>
         <source>Some lengthy prefix:</source>
         <translation>Некий длинный префикс:</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1015"/>
+        <location filename="../svgui/view/Pane.cpp" line="1072"/>
         <source>(R)</source>
         <translation>(R)</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1018"/>
+        <location filename="../svgui/view/Pane.cpp" line="1070"/>
         <source>(X)</source>
         <translation>(X)</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1022"/>
+        <location filename="../svgui/view/Pane.cpp" line="1076"/>
         <source>%1 / %2Hz%3</source>
         <translation>%1 / %2 Гц%3</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2354"/>
+        <location filename="../svgui/view/Pane.cpp" line="2638"/>
         <source>Drag Selection</source>
         <translation>Перетащить выделение</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2361"/>
+        <location filename="../svgui/view/Pane.cpp" line="2645"/>
         <source>Resize Selection</source>
         <translation>Изменить выделение</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="128"/>
+        <location filename="../svgui/view/Pane.cpp" line="143"/>
         <source>Horizontal Zoom</source>
         <translation>Горизонтальное масштабирование</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="154"/>
+        <location filename="../svgui/view/Pane.cpp" line="169"/>
         <source>Vertical Zoom</source>
         <translation>Вертикальное масштабирование</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2234"/>
+        <location filename="../svgui/view/Pane.cpp" line="2515"/>
         <source>Enter new range</source>
         <translation>Введите новый диапазон</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2235"/>
+        <location filename="../svgui/view/Pane.cpp" line="2516"/>
         <source>New vertical display range, from %1 to %2 %4:</source>
         <translation>Новый диапазон отображения по вертикали, от %1 до %2 %4:</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2520"/>
+        <location filename="../svgui/view/Pane.cpp" line="2809"/>
         <source>Click and drag to navigate</source>
         <translation>Щёлкните и потащите для перемещения по окну</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2537"/>
+        <location filename="../svgui/view/Pane.cpp" line="2826"/>
         <source>Click and drag to select a range; hold Shift to avoid snapping to items; hold Ctrl for multi-select; middle-click and drag to navigate</source>
         <translation>Щёлкните и потащите для выделения области; + Shift — для отключения прилипания к объектам; + Ctrl — для выделения нескольких объектов, + средняя клавиша мыши — для перемещения по окну</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2531"/>
+        <location filename="../svgui/view/Pane.cpp" line="2820"/>
         <source>Click and drag to select a range; hold Shift to avoid snapping to items; hold Cmd for multi-select; middle-click and drag to navigate</source>
         <translation type="unfinished">Щёлкните и потащите для выделения области; + Shift — для отключения прилипания к объектам; + Cmd — для выделения нескольких объектов, + средняя клавиша мыши — для перемещения по окну</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2539"/>
+        <location filename="../svgui/view/Pane.cpp" line="2828"/>
         <source>Click and drag to select a range; hold Ctrl for multi-select; middle-click and drag to navigate</source>
         <translation>Щёлкните и потащите для выделения диапазона; + Ctrl — для выделения нескольких объектов, + средняя клавиша мыши — для перемещения по окну</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2533"/>
+        <location filename="../svgui/view/Pane.cpp" line="2822"/>
         <source>Click and drag to select a range; hold Cmd for multi-select; middle-click and drag to navigate</source>
         <translation type="unfinished">Щёлкните и потащите для выделения диапазона; + Cmd — для выделения нескольких объектов, + средняя клавиша мыши — для перемещения по окну</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2548"/>
+        <location filename="../svgui/view/Pane.cpp" line="2837"/>
         <source>Click and drag to move the selection boundary</source>
         <translation>Щёлкните и потащите для перемещения границ выделения</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2553"/>
+        <location filename="../svgui/view/Pane.cpp" line="2842"/>
         <source>Click and drag to select a range; hold Shift to avoid snapping to items; middle-click to navigate</source>
         <translation>Щёлкните и потащите для выделения области; + Shift — для отключения прилипания к объектам; + средняя клавиша мыши — для перемещения по окну</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2555"/>
+        <location filename="../svgui/view/Pane.cpp" line="2844"/>
         <source>Click and drag to select a range; middle-click and drag to navigate</source>
         <translation>Щёлкните и потащите для выделения области; + средняя клавиша мыши — для перемещения по окну</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2563"/>
+        <location filename="../svgui/view/Pane.cpp" line="2852"/>
         <source>Click to add a new item in the active layer</source>
         <translation>Щёлкните для добавления нового объекта на активный слой</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2582"/>
+        <location filename="../svgui/view/Pane.cpp" line="2871"/>
         <source>Click and drag to move all items in the selected range</source>
         <translation>Щёлкните и потащите все объекты в выделенной области</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2598"/>
+        <location filename="../svgui/view/Pane.cpp" line="2887"/>
         <source>Click and drag to adjust the visible range of the vertical scale</source>
         <translation>Щёлкните и потащите для смены видимого диапазона масштабирования по вертикали</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2600"/>
+        <location filename="../svgui/view/Pane.cpp" line="2889"/>
         <source>Click and drag to adjust the vertical zoom level</source>
         <translation>Щёлкните и потащите для смены уровня масштабирования по вертикали</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2602"/>
+        <location filename="../svgui/view/Pane.cpp" line="2891"/>
         <source>Click and drag to adjust the horizontal zoom level</source>
         <translation>Щёлкните и потащите для смены уровня масштабирования по горизонтали</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2604"/>
+        <location filename="../svgui/view/Pane.cpp" line="2893"/>
         <source>Reset horizontal and vertical zoom levels to their defaults</source>
         <translation>Сбросить уровни масштабирования по горизонтали и вертикали до исходных значений</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="787"/>
+        <location filename="../svgui/view/Pane.cpp" line="845"/>
         <source>Reference</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="789"/>
-        <location filename="../../svgui/view/Pane.cpp" line="793"/>
+        <location filename="../svgui/view/Pane.cpp" line="847"/>
+        <location filename="../svgui/view/Pane.cpp" line="851"/>
         <source>Unaligned</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="795"/>
+        <location filename="../svgui/view/Pane.cpp" line="853"/>
         <source>Aligning: %1%</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="797"/>
+        <location filename="../svgui/view/Pane.cpp" line="855"/>
         <source>Aligned</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="839"/>
+        <location filename="../svgui/view/Pane.cpp" line="897"/>
         <source>%1 - %2</source>
         <translation>%1 - %2</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="949"/>
-        <location filename="../../svgui/view/Pane.cpp" line="965"/>
+        <location filename="../svgui/view/Pane.cpp" line="1007"/>
+        <location filename="../svgui/view/Pane.cpp" line="1023"/>
         <source>+%1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1209"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1215"/>
+        <location filename="../svgui/view/Pane.cpp" line="1260"/>
+        <location filename="../svgui/view/Pane.cpp" line="1266"/>
         <source>Zoom</source>
         <translation>Масштабирование отображения</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1210"/>
+        <location filename="../svgui/view/Pane.cpp" line="1261"/>
         <source>Zoom In</source>
         <translation>Приблизить</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1210"/>
+        <location filename="../svgui/view/Pane.cpp" line="1261"/>
         <source>Wheel Up</source>
         <translation>Колесом вверх</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1211"/>
+        <location filename="../svgui/view/Pane.cpp" line="1262"/>
         <source>Zoom Out</source>
         <translation>Отдалить</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1211"/>
+        <location filename="../svgui/view/Pane.cpp" line="1262"/>
         <source>Wheel Down</source>
         <translation>Колесом вниз</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1213"/>
+        <location filename="../svgui/view/Pane.cpp" line="1264"/>
         <source>General Pane Mouse Actions</source>
         <translation>Использование мыши в окнах</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1215"/>
+        <location filename="../svgui/view/Pane.cpp" line="1266"/>
         <source>Wheel</source>
         <translation>Колесо</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1216"/>
+        <location filename="../svgui/view/Pane.cpp" line="1267"/>
         <source>Zoom in or out in time axis</source>
         <translation>Приближение и отдаление по временной шкале</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1217"/>
+        <location filename="../svgui/view/Pane.cpp" line="1268"/>
         <source>Ctrl+Wheel</source>
         <translation>Ctrl+прокрутка</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1217"/>
+        <location filename="../svgui/view/Pane.cpp" line="1268"/>
         <source>Scroll</source>
         <translation>Прокручивать окно сеанса</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1218"/>
+        <location filename="../svgui/view/Pane.cpp" line="1269"/>
         <source>Scroll rapidly left or right in time axis</source>
         <translation>Быстро перемещаться вправо и влево по временной шкале</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1219"/>
+        <location filename="../svgui/view/Pane.cpp" line="1270"/>
         <source>Zoom Vertically</source>
         <translation>Вертикальный масштаб</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1219"/>
+        <location filename="../svgui/view/Pane.cpp" line="1270"/>
         <source>Shift+Wheel</source>
         <translation>Shift+прокрутка</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1220"/>
+        <location filename="../svgui/view/Pane.cpp" line="1271"/>
         <source>Zoom in or out in the vertical axis</source>
         <translation>Масштабировать отображение по вертикальной оси</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1221"/>
+        <location filename="../svgui/view/Pane.cpp" line="1272"/>
         <source>Scroll Vertically</source>
         <translation>Прокрутка по вертикали</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1221"/>
+        <location filename="../svgui/view/Pane.cpp" line="1272"/>
         <source>Alt+Wheel</source>
         <translation>Alt+Колесо</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1222"/>
+        <location filename="../svgui/view/Pane.cpp" line="1273"/>
         <source>Scroll up or down in the vertical axis</source>
         <translation>Прокручивать отображение по вертикальной оси</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1223"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1232"/>
+        <location filename="../svgui/view/Pane.cpp" line="1274"/>
         <source>Navigate</source>
         <translation>Перемещение</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1223"/>
+        <location filename="../svgui/view/Pane.cpp" line="1274"/>
         <source>Middle</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1224"/>
+        <location filename="../svgui/view/Pane.cpp" line="1275"/>
         <source>Click middle button and drag to navigate with any tool</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1225"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1236"/>
+        <location filename="../svgui/view/Pane.cpp" line="1276"/>
         <source>Relocate</source>
         <translation>Перемещение скачком</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1225"/>
+        <location filename="../svgui/view/Pane.cpp" line="1276"/>
         <source>Double-Click Middle</source>
         <translation>Двойной щелчок средней клавишей</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1226"/>
+        <location filename="../svgui/view/Pane.cpp" line="1277"/>
         <source>Double-click middle button to relocate with any tool</source>
         <translation>Перескочить вправо или влево в зависимости от положения курсора</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1227"/>
+        <location filename="../svgui/view/Pane.cpp" line="1278"/>
         <source>Menu</source>
         <translation>Меню</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1227"/>
+        <location filename="../svgui/view/Pane.cpp" line="1278"/>
         <source>Right</source>
         <translation>Правая клавиша</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1228"/>
+        <location filename="../svgui/view/Pane.cpp" line="1279"/>
         <source>Show pane context menu</source>
         <translation>Показать контекстное меню окна</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1230"/>
         <source>Navigate Tool Mouse Actions</source>
-        <translation>Использование мыши с инструментом навигации</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1232"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1242"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1254"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1260"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1264"/>
+        <translation type="vanished">Использование мыши с инструментом навигации</translation>
+    </message>
+    <message>
         <source>Left</source>
-        <translation>Левая клавиша</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1233"/>
-        <source>Click left button and drag to move around</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1234"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1268"/>
+        <translation type="vanished">Левая клавиша</translation>
+    </message>
+    <message>
         <source>Zoom to Area</source>
-        <translation>Масштабировать в выделение</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1234"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1250"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1268"/>
+        <translation type="vanished">Масштабировать в выделение</translation>
+    </message>
+    <message>
         <source>Shift+Left</source>
-        <translation>Shift+Left</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1235"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1269"/>
-        <source>Shift-click left button and drag to zoom to a rectangular area</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1236"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1238"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1256"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1266"/>
+        <translation type="vanished">Shift+Left</translation>
+    </message>
+    <message>
         <source>Double-Click Left</source>
-        <translation>Двойной щелчок левой клавишей</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1237"/>
-        <source>Double-click left button to jump to clicked location</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1238"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1256"/>
+        <translation type="vanished">Двойной щелчок левой клавишей</translation>
+    </message>
+    <message>
         <source>Edit</source>
-        <translation>Изменить</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1239"/>
-        <location filename="../../svgui/view/Pane.cpp" line="1257"/>
-        <source>Double-click left button on an item to edit it</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1241"/>
+        <translation type="vanished">Изменить</translation>
+    </message>
+    <message>
         <source>Select Tool Mouse Actions</source>
-        <translation>Использование мыши с инструментом выделения</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1242"/>
+        <translation type="vanished">Использование мыши с инструментом выделения</translation>
+    </message>
+    <message>
         <source>Select</source>
-        <translation>Выделить</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1243"/>
-        <source>Click left button and drag to select region; drag region edge to resize</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1244"/>
+        <translation type="vanished">Выделить</translation>
+    </message>
+    <message>
         <source>Multi Select</source>
-        <translation>Множественное выделение</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1244"/>
+        <translation type="vanished">Множественное выделение</translation>
+    </message>
+    <message>
         <source>Ctrl+Left</source>
-        <translation>Ctrl+Влево</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1246"/>
-        <source>Cmd-click left button and drag to select an additional region</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1248"/>
-        <source>Ctrl-click left button and drag to select an additional region</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1250"/>
+        <translation type="vanished">Ctrl+Влево</translation>
+    </message>
+    <message>
         <source>Fine Select</source>
-        <translation>Выделить точно</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1251"/>
-        <source>Shift-click left button and drag to select without snapping to items or grid</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1253"/>
+        <translation type="vanished">Выделить точно</translation>
+    </message>
+    <message>
         <source>Edit Tool Mouse Actions</source>
-        <translation>Использование мыши с инструментом редактирования</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1254"/>
+        <translation type="vanished">Использование мыши с инструментом редактирования</translation>
+    </message>
+    <message>
         <source>Move</source>
-        <translation>Переместить</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1255"/>
-        <source>Click left button on an item or selected region and drag to move</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1259"/>
+        <translation type="vanished">Переместить</translation>
+    </message>
+    <message>
         <source>Draw Tool Mouse Actions</source>
-        <translation>Использование мыши с инструментом рисования</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1260"/>
+        <translation type="vanished">Использование мыши с инструментом рисования</translation>
+    </message>
+    <message>
         <source>Draw</source>
-        <translation>Рисовать</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1261"/>
+        <translation type="vanished">Рисовать</translation>
+    </message>
+    <message>
         <source>Click left button and drag to create new item</source>
-        <translation>Щелкните левой клавишей мыши и перетащите курсор для создания нового объекта</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1263"/>
+        <translation type="vanished">Щелкните левой клавишей мыши и перетащите курсор для создания нового объекта</translation>
+    </message>
+    <message>
         <source>Measure Tool Mouse Actions</source>
-        <translation>Использование мыши с инструментом измерения</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1264"/>
+        <translation type="vanished">Использование мыши с инструментом измерения</translation>
+    </message>
+    <message>
         <source>Measure Area</source>
-        <translation>Измерить область</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1265"/>
-        <source>Click left button and drag to measure a rectangular area</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1266"/>
+        <translation type="vanished">Измерить область</translation>
+    </message>
+    <message>
         <source>Measure Item</source>
-        <translation>Измерить объект</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="1267"/>
-        <source>Click left button and drag to measure extents of an item or shape</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2570"/>
+        <translation type="vanished">Измерить объект</translation>
+    </message>
+    <message>
+        <location filename="../svgui/view/Pane.cpp" line="2859"/>
         <source>Click to erase an item from the active layer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="175"/>
+        <location filename="../svgui/view/Pane.cpp" line="190"/>
         <source>Reset zoom to default</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/Pane.cpp" line="2577"/>
+        <location filename="../svgui/view/Pane.cpp" line="2866"/>
         <source>Click and drag an item in the active layer to move it; hold Shift to override initial resistance</source>
         <translation type="unfinished"></translation>
     </message>
@@ -5257,34 +5991,37 @@
 <context>
     <name>PlayParameterRepository</name>
     <message>
-        <location filename="../../svcore/base/PlayParameterRepository.cpp" line="206"/>
+        <location filename="../svcore/base/PlayParameterRepository.cpp" line="182"/>
         <source>Adjust Playback Parameters</source>
         <translation type="unfinished">Коррекция параметров воспроизведения</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PlayParameterRepository.cpp" line="211"/>
+        <location filename="../svcore/base/PlayParameterRepository.cpp" line="187"/>
         <source>Change Playback Mute State</source>
         <translation type="unfinished">Смена состояния приглушенности воспроизведения</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PlayParameterRepository.cpp" line="216"/>
+        <location filename="../svcore/base/PlayParameterRepository.cpp" line="192"/>
         <source>Change Playback Gain</source>
         <translation type="unfinished">Смена громкости воспроизведения</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PlayParameterRepository.cpp" line="221"/>
+        <location filename="../svcore/base/PlayParameterRepository.cpp" line="197"/>
         <source>Change Playback Pan</source>
         <translation type="unfinished">Смена панорамы при воспроизведении</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PlayParameterRepository.cpp" line="226"/>
+        <location filename="../svcore/base/PlayParameterRepository.cpp" line="202"/>
+        <source>Change Playback Sample</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <source>Change Playback Plugin</source>
-        <translation type="unfinished">Смена расширения воспроизведения</translation>
-    </message>
-    <message>
-        <location filename="../../svcore/base/PlayParameterRepository.cpp" line="231"/>
+        <translation type="obsolete">Смена расширения воспроизведения</translation>
+    </message>
+    <message>
         <source>Configure Playback Plugin</source>
-        <translation type="unfinished">Смена параметров расширения воспроизведения</translation>
+        <translation type="obsolete">Смена параметров расширения воспроизведения</translation>
     </message>
 </context>
 <context>
@@ -5317,12 +6054,12 @@
 <context>
     <name>PluginParameterBox</name>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterBox.cpp" line="61"/>
+        <location filename="../svgui/widgets/PluginParameterBox.cpp" line="61"/>
         <source>This plugin has no adjustable parameters.</source>
         <translation>У этого расширения нет изменяемых параметров.</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterBox.cpp" line="82"/>
+        <location filename="../svgui/widgets/PluginParameterBox.cpp" line="82"/>
         <source>Program</source>
         <translation>Программа</translation>
     </message>
@@ -5330,58 +6067,58 @@
 <context>
     <name>PluginParameterDialog</name>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="102"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="104"/>
         <source>Name:</source>
         <translation>Название:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="138"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="140"/>
         <source>Maker:</source>
         <translation>Автор:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="144"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="146"/>
         <source>Copyright:  </source>
         <translation>Авторские права:  </translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="125"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="127"/>
         <source>Version:</source>
         <translation>Версия:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="54"/>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="191"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="56"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="193"/>
         <source>Plugin Parameters</source>
         <translation>Параметры расширения</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="322"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="324"/>
         <source>Channel mismatch</source>
         <translation>Несовпадение каналов</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="323"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="325"/>
         <source>This plugin requires at least %1 input channels, but only %2 %3 available.  The plugin probably will not work correctly.</source>
         <translation>Этому расширению нужно хотя бы %1 вхдных каналовs, но лишь %2 %3 доступны.  Вероятно, расширение не сработает как должно.</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="323"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="325"/>
         <source>are</source>
         <translation>являются</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="323"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="325"/>
         <source>is</source>
         <translation>является</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="217"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="219"/>
         <source>Channels</source>
         <translation>Каналы</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="340"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="342"/>
         <source>This plugin accepts no more than %1 input channels,
 but %2 are available.  Only the first %3 will be used.
 </source>
@@ -5390,70 +6127,70 @@
 </translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="347"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="349"/>
         <source>This plugin only has a single channel input,
 but the source has %1 channels.</source>
         <translation>Это расширение может обрабатывать только один канал,
 но у источника %1 каналов.</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="350"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="352"/>
         <source>Use mean of source channels</source>
         <translation>Использовать среднее значение каналов источника</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="352"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="354"/>
         <source>Use channel %1 only</source>
         <translation>Использовать только канал %1</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="156"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="158"/>
         <source>Output:</source>
         <translation>Выход:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="223"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="225"/>
         <source>Processing</source>
         <translation>Обработка</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="404"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="406"/>
         <source>Window size:</source>
         <translation>Размер оконной функции:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="406"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="408"/>
         <source>Audio frames per block:</source>
         <translation>Выборок звука на блок:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="431"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="433"/>
         <source>Window increment:</source>
         <translation>Шаг:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="455"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="457"/>
         <source>Window shape:</source>
         <translation>Форма:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="233"/>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="604"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="235"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="606"/>
         <source>Advanced &gt;&gt;</source>
         <translation>Больше &gt;&gt;</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="599"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="601"/>
         <source>Advanced &lt;&lt;</source>
         <translation>Меньше &lt;&lt;</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="175"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="177"/>
         <source>Input Material</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PluginParameterDialog.cpp" line="184"/>
+        <location filename="../svgui/widgets/PluginParameterDialog.cpp" line="186"/>
         <source>Restrict to selection extents</source>
         <translation>Только выделение</translation>
     </message>
@@ -5461,214 +6198,263 @@
 <context>
     <name>Preferences</name>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="112"/>
+        <location filename="../svcore/base/Preferences.cpp" line="127"/>
         <source>Frequency of concert A</source>
         <translation>Частота условной ноты Ля (A)</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="115"/>
+        <location filename="../svcore/base/Preferences.cpp" line="130"/>
         <source>Property box layout</source>
         <translation>Внешний вид панели свойств</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="118"/>
+        <location filename="../svcore/base/Preferences.cpp" line="133"/>
         <source>Spectral analysis window shape</source>
         <translation>Форма оконной функции при спектральном анализе</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="270"/>
+        <location filename="../svcore/base/Preferences.cpp" line="139"/>
+        <source>Normalise audio signal when reading from audio file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="148"/>
+        <source>Load mp3 files in gapless mode</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="151"/>
+        <source>Single fixed sample rate to resample all files to</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="160"/>
+        <source>Time display precision</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="163"/>
+        <source>Use hours:minutes:seconds format</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="166"/>
+        <source>Label middle C as</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="329"/>
         <source>Show boxes for all panes</source>
         <translation>Показывать панели для всех окон</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="271"/>
+        <location filename="../svcore/base/Preferences.cpp" line="330"/>
         <source>Show box for current pane only</source>
         <translation>Показывать панель только для активного окна</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="275"/>
+        <location filename="../svcore/base/Preferences.cpp" line="334"/>
         <source>Rectangular</source>
         <translation>Прямоугольная</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="276"/>
+        <location filename="../svcore/base/Preferences.cpp" line="335"/>
         <source>Triangular</source>
         <translation>Треугольная</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="277"/>
+        <location filename="../svcore/base/Preferences.cpp" line="336"/>
         <source>Hamming</source>
         <translation>Хамминга</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="279"/>
+        <location filename="../svcore/base/Preferences.cpp" line="338"/>
         <source>Blackman</source>
         <translation>Блэкмена</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="280"/>
+        <location filename="../svcore/base/Preferences.cpp" line="339"/>
         <source>Gaussian</source>
         <translation>Гауссова</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="281"/>
+        <location filename="../svcore/base/Preferences.cpp" line="340"/>
         <source>Parzen</source>
         <translation>Парзена</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="282"/>
+        <location filename="../svcore/base/Preferences.cpp" line="341"/>
         <source>Nuttall</source>
         <translation>Нутталла</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="283"/>
+        <location filename="../svcore/base/Preferences.cpp" line="342"/>
         <source>Blackman-Harris</source>
         <translation>Блэкмена-Харриса</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="332"/>
+        <location filename="../svcore/base/Preferences.cpp" line="386"/>
+        <source>C0 - middle of octave scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="387"/>
+        <source>C3 - common MIDI sequencer convention</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="388"/>
+        <source>C4 - ASA American standard</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="389"/>
+        <source>C5 - used in Cakewalk and others</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="399"/>
         <source>Preferences</source>
         <translation>Параметры</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="121"/>
+        <location filename="../svcore/base/Preferences.cpp" line="136"/>
         <source>Playback resampler type</source>
         <translation>Тип ресэмплирования при воспроизведении</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="288"/>
+        <location filename="../svcore/base/Preferences.cpp" line="347"/>
         <source>Fastest</source>
         <translation>Самый быстрый</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="289"/>
+        <location filename="../svcore/base/Preferences.cpp" line="348"/>
         <source>Standard</source>
         <translation>Обычный</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="290"/>
+        <location filename="../svcore/base/Preferences.cpp" line="349"/>
         <source>Highest quality</source>
         <translation>Наивысшего качества</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="106"/>
+        <location filename="../svcore/base/Preferences.cpp" line="121"/>
         <source>Spectrogram y-axis interpolation:</source>
         <translation>Интерполяция оси Y спектрограммы:</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="124"/>
+        <location filename="../svcore/base/Preferences.cpp" line="142"/>
         <source>Omit temporaries from Recent Files menu</source>
         <translation>Пропускать временные файлы в меню недавно открывавшихся</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="127"/>
+        <location filename="../svcore/base/Preferences.cpp" line="145"/>
         <source>Resample mismatching files on import</source>
         <translation>Ресэмплировать файлы при импорте</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="130"/>
+        <location filename="../svcore/base/Preferences.cpp" line="154"/>
         <source>Location for cache file directory</source>
         <translation>Расположение каталога с кэшем</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="133"/>
+        <location filename="../svcore/base/Preferences.cpp" line="157"/>
         <source>Background colour preference</source>
         <translation>Предпочитаемый цвет фона</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="139"/>
+        <location filename="../svcore/base/Preferences.cpp" line="169"/>
         <source>Font size for text overlays</source>
         <translation>Кегль шрифта для текстовых перекрытий</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="142"/>
+        <location filename="../svcore/base/Preferences.cpp" line="172"/>
         <source>Show splash screen on startup</source>
         <translation>Показывать заставку при старте программы</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="278"/>
+        <location filename="../svcore/base/Preferences.cpp" line="337"/>
         <source>Hann</source>
         <translation>Хэнна</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="309"/>
+        <location filename="../svcore/base/Preferences.cpp" line="368"/>
         <source>Follow desktop theme</source>
         <translation>Использовать параметры окружения</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="310"/>
+        <location filename="../svcore/base/Preferences.cpp" line="369"/>
         <source>Dark background</source>
         <translation>Темный фон</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="311"/>
+        <location filename="../svcore/base/Preferences.cpp" line="370"/>
         <source>Light background</source>
         <translation>Светлый фон</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="109"/>
+        <location filename="../svcore/base/Preferences.cpp" line="124"/>
         <source>Spectrogram x-axis interpolation:</source>
         <translation>Интерполяция спектрограммы по оси X:</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="295"/>
-        <location filename="../../svcore/base/Preferences.cpp" line="303"/>
+        <location filename="../svcore/base/Preferences.cpp" line="354"/>
+        <location filename="../svcore/base/Preferences.cpp" line="362"/>
         <source>None</source>
         <translation>Нет</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="296"/>
-        <location filename="../../svcore/base/Preferences.cpp" line="304"/>
+        <location filename="../svcore/base/Preferences.cpp" line="355"/>
+        <location filename="../svcore/base/Preferences.cpp" line="363"/>
         <source>Linear interpolation</source>
         <translation>Линейная интерполяция</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="297"/>
+        <location filename="../svcore/base/Preferences.cpp" line="356"/>
         <source>4 x Oversampling</source>
         <translation>4 × пересэмплированная</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="298"/>
+        <location filename="../svcore/base/Preferences.cpp" line="357"/>
         <source>4 x Oversampling with interpolation</source>
         <translation>4 × пересэмплированная с интерполяцией</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="136"/>
         <source>Time display format</source>
-        <translation>Формат отображения времени</translation>
-    </message>
-    <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="316"/>
+        <translation type="vanished">Формат отображения времени</translation>
+    </message>
+    <message>
+        <location filename="../svcore/base/Preferences.cpp" line="375"/>
         <source>Standard (to millisecond)</source>
         <translation>Обычный (до мс)</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="317"/>
+        <location filename="../svcore/base/Preferences.cpp" line="376"/>
         <source>High resolution (to microsecond)</source>
         <translation>Высокое разрешение (до мкс)</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="318"/>
+        <location filename="../svcore/base/Preferences.cpp" line="377"/>
         <source>24 FPS</source>
         <translation>24 кадра/с</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="319"/>
+        <location filename="../svcore/base/Preferences.cpp" line="378"/>
         <source>25 FPS</source>
         <translation>25 кадров/с</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="320"/>
+        <location filename="../svcore/base/Preferences.cpp" line="379"/>
         <source>30 FPS</source>
         <translation>30 кадров/с</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="321"/>
+        <location filename="../svcore/base/Preferences.cpp" line="380"/>
         <source>50 FPS</source>
         <translation>50 кадров/с</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/Preferences.cpp" line="322"/>
+        <location filename="../svcore/base/Preferences.cpp" line="381"/>
         <source>60 FPS</source>
         <translation>60 кадров/с</translation>
     </message>
@@ -5676,117 +6462,201 @@
 <context>
     <name>PreferencesDialog</name>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="64"/>
+        <location filename="../main/PreferencesDialog.cpp" line="77"/>
         <source>Apply</source>
         <translation>Применить</translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="277"/>
-        <location filename="../main/PreferencesDialog.cpp" line="281"/>
-        <location filename="../main/PreferencesDialog.cpp" line="288"/>
-        <location filename="../main/PreferencesDialog.cpp" line="296"/>
-        <location filename="../main/PreferencesDialog.cpp" line="313"/>
-        <location filename="../main/PreferencesDialog.cpp" line="319"/>
-        <location filename="../main/PreferencesDialog.cpp" line="325"/>
-        <location filename="../main/PreferencesDialog.cpp" line="330"/>
-        <location filename="../main/PreferencesDialog.cpp" line="335"/>
-        <location filename="../main/PreferencesDialog.cpp" line="352"/>
-        <location filename="../main/PreferencesDialog.cpp" line="367"/>
+        <location filename="../main/PreferencesDialog.cpp" line="406"/>
+        <location filename="../main/PreferencesDialog.cpp" line="428"/>
+        <location filename="../main/PreferencesDialog.cpp" line="434"/>
+        <location filename="../main/PreferencesDialog.cpp" line="439"/>
+        <location filename="../main/PreferencesDialog.cpp" line="444"/>
+        <location filename="../main/PreferencesDialog.cpp" line="461"/>
+        <location filename="../main/PreferencesDialog.cpp" line="466"/>
+        <location filename="../main/PreferencesDialog.cpp" line="481"/>
+        <location filename="../main/PreferencesDialog.cpp" line="565"/>
+        <location filename="../main/PreferencesDialog.cpp" line="570"/>
+        <location filename="../main/PreferencesDialog.cpp" line="587"/>
+        <location filename="../main/PreferencesDialog.cpp" line="591"/>
+        <location filename="../main/PreferencesDialog.cpp" line="595"/>
+        <location filename="../main/PreferencesDialog.cpp" line="600"/>
         <source>%1:</source>
         <translation>%1:</translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="427"/>
+        <location filename="../main/PreferencesDialog.cpp" line="411"/>
+        <source>Default spectrogram colour:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="415"/>
+        <source>Default melodic spectrogram colour:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="419"/>
+        <source>Default colour 3D plot colour:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="610"/>
+        <source>&amp;Other</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="615"/>
         <source>OK</source>
         <translation>ОК</translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="428"/>
+        <location filename="../main/PreferencesDialog.cpp" line="616"/>
         <source>Cancel</source>
         <translation>Отменить</translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="50"/>
+        <location filename="../main/PreferencesDialog.cpp" line="63"/>
         <source>Sonic Visualiser: Application Preferences</source>
         <translation>Параметры работы Sonic Visualiser</translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="179"/>
+        <location filename="../main/PreferencesDialog.cpp" line="151"/>
+        <source>Green</source>
+        <translation type="unfinished">Зелёный</translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="238"/>
+        <location filename="../main/PreferencesDialog.cpp" line="654"/>
+        <location filename="../main/PreferencesDialog.cpp" line="669"/>
+        <source>(auto)</source>
+        <translation type="unfinished">(авто)</translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="272"/>
         <source>&lt;home directory&gt;</source>
         <translation>&lt;домашний каталог&gt;</translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="215"/>
+        <location filename="../main/PreferencesDialog.cpp" line="322"/>
         <source>Follow system locale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="229"/>
+        <location filename="../main/PreferencesDialog.cpp" line="336"/>
         <source>Russian</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="230"/>
+        <location filename="../main/PreferencesDialog.cpp" line="337"/>
         <source>British English</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="231"/>
+        <location filename="../main/PreferencesDialog.cpp" line="338"/>
         <source>American English</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="232"/>
+        <location filename="../main/PreferencesDialog.cpp" line="339"/>
         <source>Czech</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="277"/>
+        <location filename="../main/PreferencesDialog.cpp" line="423"/>
+        <source>Overview waveform colour:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="489"/>
+        <source>Run Vamp plugins in separate process:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="505"/>
+        <source>Default session template when loading audio files:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="512"/>
+        <source>(Use &quot;%1&quot; in the File menu to add to these.)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="513"/>
+        <source>Export Session as Template...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="555"/>
+        <source>Audio service:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="559"/>
+        <source>Audio playback device:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="562"/>
+        <source>Audio record device:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="578"/>
+        <source>A&amp;udio I/O</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="587"/>
         <source>User interface language</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="304"/>
+        <location filename="../main/PreferencesDialog.cpp" line="591"/>
+        <source>Allow network usage</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <source>&amp;General</source>
-        <translation>О&amp;бщие</translation>
-    </message>
-    <message>
-        <location filename="../main/PreferencesDialog.cpp" line="386"/>
-        <source>Default session template for audio files:</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../main/PreferencesDialog.cpp" line="397"/>
+        <translation type="vanished">О&amp;бщие</translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="401"/>
+        <source>Draw layers at Retina resolution:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="520"/>
         <source>Standard Waveform</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="422"/>
+        <location filename="../main/PreferencesDialog.cpp" line="545"/>
         <source>Session &amp;Template</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="544"/>
+        <location filename="../main/PreferencesDialog.cpp" line="862"/>
         <source>Select a directory to create cache subdirectory in</source>
         <translation>Выберите каталог для хранения кэша</translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="621"/>
+        <location filename="../main/PreferencesDialog.cpp" line="994"/>
         <source>Preferences</source>
         <translation>Параметры</translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="622"/>
+        <location filename="../main/PreferencesDialog.cpp" line="995"/>
         <source>&lt;b&gt;Restart required&lt;/b&gt;&lt;p&gt;One or more of the application preferences you have changed may not take full effect until Sonic Visualiser is restarted.&lt;/p&gt;&lt;p&gt;Please exit and restart the application now if you want these changes to take effect immediately.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Требуется перезапуск программы&lt;/b&gt;&lt;p&gt;Некоторые изменившиеся параметры не могут быть учтены без перезапуска Sonic Visualiser.&lt;/p&gt;&lt;p&gt;Завершите работу с программой и повторно запустите ее, чтобы внесенные изменения возымели эффект.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="643"/>
+        <location filename="../main/PreferencesDialog.cpp" line="1026"/>
         <source>Preferences Changed</source>
         <translation>Параметры изменены</translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="644"/>
+        <location filename="../main/PreferencesDialog.cpp" line="1027"/>
         <source>Some preferences have been changed but not applied.
 Apply them before closing?</source>
         <translation>Некоторые параметры работы программы 
@@ -5794,17 +6664,16 @@
 Применить их перед закрытием?</translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="293"/>
         <source>Playback audio device:</source>
-        <translation>Устройство воспроизведения:</translation>
-    </message>
-    <message>
-        <location filename="../main/PreferencesDialog.cpp" line="343"/>
+        <translation type="vanished">Устройство воспроизведения:</translation>
+    </message>
+    <message>
+        <location filename="../main/PreferencesDialog.cpp" line="452"/>
         <source>&amp;Appearance</source>
         <translation>Об&amp;лик</translation>
     </message>
     <message>
-        <location filename="../main/PreferencesDialog.cpp" line="377"/>
+        <location filename="../main/PreferencesDialog.cpp" line="496"/>
         <source>Anal&amp;ysis</source>
         <translation>&amp;Анализ</translation>
     </message>
@@ -5812,7 +6681,7 @@
 <context>
     <name>ProgressDialog</name>
     <message>
-        <location filename="../../svgui/widgets/ProgressDialog.cpp" line="28"/>
+        <location filename="../svgui/widgets/ProgressDialog.cpp" line="28"/>
         <source>Cancel</source>
         <translation>Отменить</translation>
     </message>
@@ -5820,116 +6689,127 @@
 <context>
     <name>PropertyBox</name>
     <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="155"/>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="219"/>
         <source>Show</source>
         <translation>Показать</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="172"/>
         <source>Play</source>
-        <translation>Воспроизвести</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="236"/>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="238"/>
+        <translation type="vanished">Воспроизвести</translation>
+    </message>
+    <message>
         <source>Playback Pan / Balance</source>
-        <translation>Панорама/баланс при воспроизведении</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="210"/>
+        <translation type="vanished">Панорама/баланс при воспроизведении</translation>
+    </message>
+    <message>
         <source>Playback Gain</source>
-        <translation>Усиление воспроизведения</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="212"/>
+        <translation type="vanished">Усиление воспроизведения</translation>
+    </message>
+    <message>
         <source>dB</source>
-        <translation>Дб</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="829"/>
+        <translation type="vanished">Дб</translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="169"/>
+        <source>Click to toggle playback</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="741"/>
+        <source>Set playback clip:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="802"/>
+        <source>Adjust playback level and pan of %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="812"/>
+        <source>Change sound used for playback (currently &quot;%1&quot;)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="826"/>
         <source> (current value: %1%2)</source>
         <translation> (текущее значение: %1%2)</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="831"/>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="828"/>
         <source> (current value: %1)</source>
         <translation> (текущее значение: %1)</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="836"/>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="833"/>
         <source>Toggle Visibility of %1</source>
         <translation>Переключить видимость %1</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="838"/>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="835"/>
         <source>Toggle Playback of %1</source>
         <translation>Переключить воспроизведение %1</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="842"/>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="839"/>
         <source>Toggle %1 property of %2</source>
         <translation>Переключить %1 свойство %2</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="845"/>
+        <location filename="../svgui/widgets/PropertyBox.cpp" line="842"/>
         <source>Adjust %1 property of %2%3</source>
         <translation>Скорректировать %1 свойство %2%3</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="468"/>
         <source>Add New Colour...</source>
-        <translation>Добавить новый цвет...</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="654"/>
+        <translation type="vanished">Добавить новый цвет...</translation>
+    </message>
+    <message>
         <source>Name New Colour</source>
-        <translation>Дайте цвету название</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="655"/>
+        <translation type="vanished">Дайте цвету название</translation>
+    </message>
+    <message>
         <source>Enter a name for the new colour:</source>
-        <translation>Введите название нового цвета:</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/widgets/PropertyBox.cpp" line="657"/>
+        <translation type="vanished">Введите название нового цвета:</translation>
+    </message>
+    <message>
         <source>Prefer black background for this colour</source>
-        <translation>Предпочитать черный фон для этого цвета</translation>
+        <translation type="vanished">Предпочитать черный фон для этого цвета</translation>
     </message>
 </context>
 <context>
     <name>PropertyContainer</name>
     <message>
-        <location filename="../../svcore/base/PropertyContainer.cpp" line="151"/>
+        <location filename="../svcore/base/PropertyContainer.cpp" line="157"/>
         <source>yes</source>
         <translation>да</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PropertyContainer.cpp" line="152"/>
+        <location filename="../svcore/base/PropertyContainer.cpp" line="158"/>
         <source>on</source>
         <translation>вкл</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PropertyContainer.cpp" line="153"/>
+        <location filename="../svcore/base/PropertyContainer.cpp" line="159"/>
         <source>true</source>
         <translation>правда</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PropertyContainer.cpp" line="155"/>
+        <location filename="../svcore/base/PropertyContainer.cpp" line="161"/>
         <source>no</source>
         <translation>нет</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PropertyContainer.cpp" line="156"/>
+        <location filename="../svcore/base/PropertyContainer.cpp" line="162"/>
         <source>off</source>
         <translation>выкл</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PropertyContainer.cpp" line="157"/>
+        <location filename="../svcore/base/PropertyContainer.cpp" line="163"/>
         <source>false</source>
         <translation>ложь</translation>
     </message>
     <message>
-        <location filename="../../svcore/base/PropertyContainer.cpp" line="244"/>
+        <location filename="../svcore/base/PropertyContainer.cpp" line="251"/>
         <source>Set %1 Property</source>
         <translation>Установить свойство %1</translation>
     </message>
@@ -5944,12 +6824,12 @@
 <context>
     <name>PropertyStack</name>
     <message>
-        <location filename="../../svgui/widgets/PropertyStack.cpp" line="259"/>
+        <location filename="../svgui/widgets/PropertyStack.cpp" line="259"/>
         <source>Click to change the current active layer</source>
         <translation>Щёлкните для смены активного слоя</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/PropertyStack.cpp" line="242"/>
+        <location filename="../svgui/widgets/PropertyStack.cpp" line="242"/>
         <source>Change Layer Visibility</source>
         <translation>Переключить видимость слоя</translation>
     </message>
@@ -5957,7 +6837,7 @@
 <context>
     <name>QApplication</name>
     <message>
-        <location filename="../main/main.cpp" line="269"/>
+        <location filename="../main/main.cpp" line="261"/>
         <source>
 Sonic Visualiser is a program for viewing and exploring audio data
 for semantic music analysis and annotation.
@@ -5984,7 +6864,7 @@
 </translation>
     </message>
     <message>
-        <location filename="../main/main.cpp" line="279"/>
+        <location filename="../main/main.cpp" line="271"/>
         <source>Sonic Visualiser</source>
         <translation>Sonic Visualiser</translation>
     </message>
@@ -5992,22 +6872,20 @@
 <context>
     <name>QFile</name>
     <message>
-        <location filename="../../svcore/data/fileio/CSVFileReader.cpp" line="47"/>
-        <location filename="../../svcore/data/fileio/MatchFileReader.cpp" line="73"/>
-        <location filename="../../svcore/data/fileio/PlaylistFileReader.cpp" line="69"/>
+        <location filename="../svcore/data/fileio/CSVFileReader.cpp" line="52"/>
+        <location filename="../svcore/data/fileio/PlaylistFileReader.cpp" line="69"/>
         <source>File &quot;%1&quot; does not exist</source>
         <translation>Файл &quot;%1&quot; не существует</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/CSVFileReader.cpp" line="49"/>
-        <location filename="../../svcore/data/fileio/MatchFileReader.cpp" line="75"/>
-        <location filename="../../svcore/data/fileio/PlaylistFileReader.cpp" line="72"/>
+        <location filename="../svcore/data/fileio/CSVFileReader.cpp" line="54"/>
+        <location filename="../svcore/data/fileio/PlaylistFileReader.cpp" line="72"/>
         <source>Failed to open file &quot;%1&quot;</source>
         <translation>Не удалось открыть файл &quot;%1&quot;</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/fileio/PlaylistFileReader.cpp" line="31"/>
-        <location filename="../../svcore/data/fileio/PlaylistFileReader.cpp" line="43"/>
+        <location filename="../svcore/data/fileio/PlaylistFileReader.cpp" line="31"/>
+        <location filename="../svcore/data/fileio/PlaylistFileReader.cpp" line="43"/>
         <source>File or URL &quot;%1&quot; could not be retrieved</source>
         <translation>Файл или URL &quot;%1&quot; не мог быть получен</translation>
     </message>
@@ -6015,44 +6893,152 @@
 <context>
     <name>QMessageBox</name>
     <message>
-        <location filename="../main/main.cpp" line="532"/>
-        <location filename="../main/main.cpp" line="537"/>
+        <location filename="../main/main.cpp" line="534"/>
+        <location filename="../main/main.cpp" line="539"/>
         <source>Failed to open file</source>
         <translation>Не удалось открыть файл</translation>
     </message>
     <message>
-        <location filename="../main/main.cpp" line="533"/>
+        <location filename="../main/main.cpp" line="535"/>
         <source>File or URL &quot;%1&quot; could not be opened</source>
         <translation>Файл или URL &quot;%1&quot; не мог быть открыт</translation>
     </message>
     <message>
-        <location filename="../main/main.cpp" line="538"/>
+        <location filename="../main/main.cpp" line="540"/>
         <source>&lt;b&gt;Audio required&lt;/b&gt;&lt;p&gt;Please load at least one audio file before importing annotation data</source>
         <translation>&lt;b&gt;Нужны звуковые данные&lt;/b&gt;&lt;p&gt;Загрузите хотя бы один звуковой файл перед импортом аннотаций</translation>
     </message>
 </context>
 <context>
+    <name>QObject</name>
+    <message>
+        <location filename="../svcore/plugin/PiperVampPluginFactory.cpp" line="93"/>
+        <source>External plugin host executable does not appear to be installed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/plugin/PiperVampPluginFactory.cpp" line="221"/>
+        <source>Could not start external plugin host</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/plugin/PiperVampPluginFactory.cpp" line="237"/>
+        <source>External plugin host exited unexpectedly while listing plugins</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/plugin/PiperVampPluginFactory.cpp" line="241"/>
+        <source>External plugin host invocation failed: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/plugin/PluginScan.cpp" line="191"/>
+        <source>&lt;b&gt;Failed to scan for plugins&lt;/b&gt;&lt;p&gt;Failed to scan for plugins at startup. Possibly the plugin checker helper program was not correctly installed alongside %1?&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/plugin/PluginScan.cpp" line="198"/>
+        <source>&lt;b&gt;Did not scan for plugins&lt;/b&gt;&lt;p&gt;Apparently no scan for plugins was attempted (internal error?)&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/plugin/PluginScan.cpp" line="211"/>
+        <source>&lt;b&gt;Failed to load plugins&lt;/b&gt;&lt;p&gt;Failed to load one or more plugin libraries:&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/plugin/PluginScan.cpp" line="214"/>
+        <source>&lt;p&gt;These plugins may be incompatible with the system, and will be ignored during this run of %1.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="89"/>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="107"/>
+        <source>&lt;unknown&gt;</source>
+        <translation type="unfinished">&lt;неизвестно&gt;</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="93"/>
+        <source>Green</source>
+        <translation type="unfinished">Зелёный</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="94"/>
+        <source>White on Black</source>
+        <translation type="unfinished">Белое на чёрном</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="95"/>
+        <source>Black on White</source>
+        <translation type="unfinished">Чёрное на белом</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="96"/>
+        <source>Cherry</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="97"/>
+        <source>Wasp</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="98"/>
+        <source>Ice</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="99"/>
+        <source>Sunset</source>
+        <translation type="unfinished">Закат</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="100"/>
+        <source>Fruit Salad</source>
+        <translation type="unfinished">Фруктовый салат</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="101"/>
+        <source>Banded</source>
+        <translation type="unfinished">В полоску</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="102"/>
+        <source>Highlight</source>
+        <translation type="unfinished">Подсветка</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="103"/>
+        <source>Printer</source>
+        <translation type="unfinished">Принтер</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/ColourMapper.cpp" line="104"/>
+        <source>High Gain</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>QuickTimeFileReader</name>
     <message>
-        <location filename="../../svcore/data/fileio/QuickTimeFileReader.cpp" line="225"/>
         <source>Decoding %1...</source>
-        <translation>Декодируется %1...</translation>
+        <translation type="vanished">Декодируется %1...</translation>
     </message>
 </context>
 <context>
     <name>RDFImporter</name>
     <message>
-        <location filename="../../svcore/rdf/RDFImporter.cpp" line="272"/>
+        <location filename="../svcore/rdf/RDFImporter.cpp" line="270"/>
         <source>Importing audio referenced in RDF...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/rdf/RDFImporter.cpp" line="296"/>
+        <location filename="../svcore/rdf/RDFImporter.cpp" line="294"/>
         <source>Importing dense signal data from RDF...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/rdf/RDFImporter.cpp" line="490"/>
+        <location filename="../svcore/rdf/RDFImporter.cpp" line="488"/>
         <source>Importing event data from RDF...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6060,7 +7046,7 @@
 <context>
     <name>RangeInputDialog</name>
     <message>
-        <location filename="../../svgui/widgets/RangeInputDialog.cpp" line="48"/>
+        <location filename="../svgui/widgets/RangeInputDialog.cpp" line="48"/>
         <source> to </source>
         <translation> до </translation>
     </message>
@@ -6068,81 +7054,89 @@
 <context>
     <name>RangeSummarisableTimeValueModel</name>
     <message>
-        <location filename="../../svcore/data/model/RangeSummarisableTimeValueModel.h" line="124"/>
+        <location filename="../svcore/data/model/RangeSummarisableTimeValueModel.h" line="102"/>
         <source>Range-Summarisable Time-Value</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
+    <name>ReadOnlyWaveFileModel</name>
+    <message>
+        <location filename="../svcore/data/model/ReadOnlyWaveFileModel.h" line="79"/>
+        <source>Wave File</source>
+        <translation type="unfinished">Звуковой файл</translation>
+    </message>
+</context>
+<context>
     <name>RegionLayer</name>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="89"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="101"/>
         <source>Vertical Scale</source>
         <translation>Верт. масштаб</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="90"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="102"/>
         <source>Scale Units</source>
         <translation>Единицы шкалы</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="91"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="103"/>
         <source>Plot Type</source>
         <translation>Тип графика</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="109"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="121"/>
         <source>Scale</source>
         <translation>Масштаб</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="170"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="182"/>
         <source>Bars</source>
         <translation>Такты</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="171"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="183"/>
         <source>Segmentation</source>
         <translation>Сегментация</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="177"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="189"/>
         <source>Auto-Align</source>
         <translation>Автовыравнивание</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="178"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="190"/>
         <source>Equal Spaced</source>
         <translation>Равные промежутки</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="179"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="191"/>
         <source>Linear</source>
         <translation>Линейный</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="180"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="192"/>
         <source>Log</source>
         <translation>Логарифмический</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="385"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="397"/>
         <source>In progress</source>
         <translation>В процессе</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="387"/>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="413"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="399"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="425"/>
         <source>No local points</source>
         <translation>Нет локальных точек</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="422"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="434"/>
         <source>%1 %2</source>
         <translation>%1 %2</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="427"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="439"/>
         <source>Time:	%1
 Value:	%2
 Duration:	%3
@@ -6153,7 +7147,7 @@
 Без метки</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="432"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="444"/>
         <source>Time:	%1
 Value:	%2
 Duration:	%3
@@ -6164,69 +7158,69 @@
 Метка:	%4</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1211"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1308"/>
         <source>Change Point Value</source>
         <translation>Изменить значение точки</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1270"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1367"/>
         <source>Drag Selection</source>
         <translation>Перетащить выделение</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1296"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1393"/>
         <source>Resize Selection</source>
         <translation>Изменить размер выделения</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1336"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1433"/>
         <source>Delete Selected Points</source>
         <translation>Удалить выбранные точки</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1383"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1480"/>
         <source>Re-align pasted items?</source>
         <translation>Заново выровнять вставленные объекты?</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1384"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1481"/>
         <source>The items you are pasting came from a layer with different source material from this one.  Do you want to re-align them in time, to match the source material for this layer?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1398"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1495"/>
         <source>Paste</source>
         <translation>Вставить</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="43"/>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="44"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="55"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="56"/>
         <source>New Region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1043"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1140"/>
         <source>Draw Region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1125"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1222"/>
         <source>Erase Region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1185"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1282"/>
         <source>Drag Region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1206"/>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1253"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1303"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1350"/>
         <source>Edit Region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/RegionLayer.cpp" line="1208"/>
+        <location filename="../svgui/layer/RegionLayer.cpp" line="1305"/>
         <source>Relocate Region</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6234,42 +7228,42 @@
 <context>
     <name>RegionModel</name>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="125"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="125"/>
         <source>Region</source>
         <translation>Область</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="153"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="153"/>
         <source>Time</source>
         <translation>Время</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="154"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="154"/>
         <source>Frame</source>
         <translation>Выборка</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="155"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="155"/>
         <source>Value</source>
         <translation>Значение</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="156"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="156"/>
         <source>Duration</source>
         <translation>Длительность</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="157"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="157"/>
         <source>Label</source>
         <translation>Метка</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="158"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="158"/>
         <source>Unknown</source>
         <translation>Неизвестно</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/RegionModel.h" line="187"/>
+        <location filename="../svcore/data/model/RegionModel.h" line="187"/>
         <source>Edit Data</source>
         <translation>Изменить данные</translation>
     </message>
@@ -6277,7 +7271,7 @@
 <context>
     <name>RemoveLayerCommand</name>
     <message>
-        <location filename="../../svapp/framework/Document.cpp" line="1016"/>
+        <location filename="../svapp/framework/Document.cpp" line="1169"/>
         <source>Delete %1 Layer</source>
         <translation>Удалить слой %1 </translation>
     </message>
@@ -6285,21 +7279,20 @@
 <context>
     <name>ResamplingWavFileReader</name>
     <message>
-        <location filename="../../svcore/data/fileio/ResamplingWavFileReader.cpp" line="63"/>
         <source>Resampling %1...</source>
-        <translation>Ресэмплирование %1...</translation>
+        <translation type="vanished">Ресэмплирование %1...</translation>
     </message>
 </context>
 <context>
     <name>SVFileReader</name>
     <message>
-        <location filename="../../svapp/framework/SVFileReader.cpp" line="318"/>
-        <location filename="../../svapp/framework/SVFileReader.cpp" line="322"/>
+        <location filename="../svapp/framework/SVFileReader.cpp" line="324"/>
+        <location filename="../svapp/framework/SVFileReader.cpp" line="328"/>
         <source>(derived model in SV-XML)</source>
         <translation>(модель извлечена в SV-XML)</translation>
     </message>
     <message>
-        <location filename="../../svapp/framework/SVFileReader.cpp" line="463"/>
+        <location filename="../svapp/framework/SVFileReader.cpp" line="469"/>
         <source>Opening file or URL...</source>
         <translation>Открывается файл или URL...</translation>
     </message>
@@ -6307,12 +7300,12 @@
 <context>
     <name>SingleColourLayer</name>
     <message>
-        <location filename="../../svgui/layer/SingleColourLayer.cpp" line="62"/>
+        <location filename="../svgui/layer/SingleColourLayer.cpp" line="70"/>
         <source>Colour</source>
         <translation>Цвет</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SingleColourLayer.cpp" line="114"/>
+        <location filename="../svgui/layer/SingleColourLayer.cpp" line="122"/>
         <source>&lt;unknown&gt;</source>
         <translation>&lt;неизвестно&gt;</translation>
     </message>
@@ -6320,113 +7313,113 @@
 <context>
     <name>SliceLayer</name>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="146"/>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="153"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="146"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="153"/>
         <source>%1 - %2</source>
         <translation>%1 - %2</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="164"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="164"/>
         <source>First</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="165"/>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="717"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="165"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="720"/>
         <source>Mean</source>
         <translation type="unfinished">Усреднённо</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="165"/>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="718"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="165"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="721"/>
         <source>Peak</source>
         <translation>Пик</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="507"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="510"/>
         <source>0dB</source>
         <translation>0 Дб</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="508"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="511"/>
         <source>-Inf</source>
         <translation>-Inf</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="539"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="542"/>
         <source>x10</source>
         <translation>x10</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="564"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="567"/>
         <source>Plot Type</source>
         <translation>Тип графика</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="565"/>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="602"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="568"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="605"/>
         <source>Scale</source>
         <translation>Масштаб</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="566"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="569"/>
         <source>Normalize</source>
         <translation>Нормализовать</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="568"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="571"/>
         <source>Gain</source>
         <translation>Усиление</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="569"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="572"/>
         <source>Sampling Mode</source>
         <translation>Режим сэмплирования</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="707"/>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="733"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="710"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="736"/>
         <source>Linear</source>
         <translation>Линейный</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="708"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="711"/>
         <source>Meter</source>
         <translation>Счетчик</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="745"/>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="748"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="748"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="751"/>
         <source>dB</source>
         <translation>Дб</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="716"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="719"/>
         <source>Any</source>
         <translation>Любые</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="724"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="727"/>
         <source>Lines</source>
         <translation>Линии</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="725"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="728"/>
         <source>Steps</source>
         <translation>Шаги</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="726"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="729"/>
         <source>Blocks</source>
         <translation>Блоки</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="727"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="730"/>
         <source>Colours</source>
         <translation>Цвета</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="158"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="158"/>
         <source>Time:	%1 - %2
 Range:	%3 samples (%4)
 Bin:	%5
@@ -6437,40 +7430,40 @@
 %6 значение:	%7</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="172"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="172"/>
         <source>Time:	%1 - %2
 Range:	%3 samples (%4)</source>
         <translation>Время:	%1 - %2
 Диапазон:	%3 сэмплов (%4)</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="567"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="570"/>
         <source>Threshold</source>
         <translation>Порог</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="570"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="573"/>
         <source>Bin Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="604"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="607"/>
         <source>Bins</source>
         <translation type="unfinished">Бины</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="709"/>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="734"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="712"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="737"/>
         <source>Log</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="710"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="713"/>
         <source>Absolute</source>
         <translation type="unfinished">Абсолютный</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SliceLayer.cpp" line="735"/>
+        <location filename="../svgui/layer/SliceLayer.cpp" line="738"/>
         <source>Rev Log</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6490,22 +7483,22 @@
         <translation type="obsolete">Переразметить точку</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseModel.h" line="143"/>
+        <location filename="../svcore/data/model/SparseModel.h" line="154"/>
         <source>Sparse</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseModel.h" line="328"/>
+        <location filename="../svcore/data/model/SparseModel.h" line="361"/>
         <source>Edit Data</source>
         <translation type="unfinished">Изменить данные</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseModel.h" line="344"/>
+        <location filename="../svcore/data/model/SparseModel.h" line="377"/>
         <source>Insert Data Point</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseModel.h" line="355"/>
+        <location filename="../svcore/data/model/SparseModel.h" line="390"/>
         <source>Delete Data Point</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6513,7 +7506,7 @@
 <context>
     <name>SparseModel::AddPointCommand</name>
     <message>
-        <location filename="../../svcore/data/model/SparseModel.h" line="172"/>
+        <location filename="../svcore/data/model/SparseModel.h" line="205"/>
         <source>Add Point</source>
         <translation type="unfinished">Добавить точку</translation>
     </message>
@@ -6521,7 +7514,7 @@
 <context>
     <name>SparseModel::DeletePointCommand</name>
     <message>
-        <location filename="../../svcore/data/model/SparseModel.h" line="197"/>
+        <location filename="../svcore/data/model/SparseModel.h" line="230"/>
         <source>Delete Point</source>
         <translation type="unfinished">Удалить точку</translation>
     </message>
@@ -6529,7 +7522,7 @@
 <context>
     <name>SparseModel::RelabelCommand</name>
     <message>
-        <location filename="../../svcore/data/model/SparseModel.h" line="254"/>
+        <location filename="../svcore/data/model/SparseModel.h" line="287"/>
         <source>Re-Label Point</source>
         <translation type="unfinished">Переразметить точку</translation>
     </message>
@@ -6537,32 +7530,32 @@
 <context>
     <name>SparseOneDimensionalModel</name>
     <message>
-        <location filename="../../svcore/data/model/SparseOneDimensionalModel.h" line="113"/>
+        <location filename="../svcore/data/model/SparseOneDimensionalModel.h" line="110"/>
         <source>Sparse 1-D</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseOneDimensionalModel.h" line="127"/>
+        <location filename="../svcore/data/model/SparseOneDimensionalModel.h" line="124"/>
         <source>Time</source>
         <translation>Время</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseOneDimensionalModel.h" line="128"/>
+        <location filename="../svcore/data/model/SparseOneDimensionalModel.h" line="125"/>
         <source>Frame</source>
         <translation type="unfinished">Выборка</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseOneDimensionalModel.h" line="129"/>
+        <location filename="../svcore/data/model/SparseOneDimensionalModel.h" line="126"/>
         <source>Label</source>
         <translation>Метка</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseOneDimensionalModel.h" line="130"/>
+        <location filename="../svcore/data/model/SparseOneDimensionalModel.h" line="127"/>
         <source>Unknown</source>
         <translation>Неизвестно</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseOneDimensionalModel.h" line="160"/>
+        <location filename="../svcore/data/model/SparseOneDimensionalModel.h" line="157"/>
         <source>Edit Data</source>
         <translation>Изменить данные</translation>
     </message>
@@ -6570,37 +7563,37 @@
 <context>
     <name>SparseTimeValueModel</name>
     <message>
-        <location filename="../../svcore/data/model/SparseTimeValueModel.h" line="102"/>
+        <location filename="../svcore/data/model/SparseTimeValueModel.h" line="111"/>
         <source>Sparse Time-Value</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseTimeValueModel.h" line="116"/>
+        <location filename="../svcore/data/model/SparseTimeValueModel.h" line="128"/>
         <source>Time</source>
         <translation>Время</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseTimeValueModel.h" line="117"/>
+        <location filename="../svcore/data/model/SparseTimeValueModel.h" line="129"/>
         <source>Frame</source>
         <translation type="unfinished">Выборка</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseTimeValueModel.h" line="118"/>
+        <location filename="../svcore/data/model/SparseTimeValueModel.h" line="130"/>
         <source>Value</source>
         <translation>Значение</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseTimeValueModel.h" line="119"/>
+        <location filename="../svcore/data/model/SparseTimeValueModel.h" line="131"/>
         <source>Label</source>
         <translation>Метка</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseTimeValueModel.h" line="120"/>
+        <location filename="../svcore/data/model/SparseTimeValueModel.h" line="132"/>
         <source>Unknown</source>
         <translation>Неизвестно</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/SparseTimeValueModel.h" line="153"/>
+        <location filename="../svcore/data/model/SparseTimeValueModel.h" line="165"/>
         <source>Edit Data</source>
         <translation>Изменить данные</translation>
     </message>
@@ -6608,7 +7601,7 @@
 <context>
     <name>SparseValueModel</name>
     <message>
-        <location filename="../../svcore/data/model/SparseValueModel.h" line="56"/>
+        <location filename="../svcore/data/model/SparseValueModel.h" line="56"/>
         <source>Sparse Value</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6616,250 +7609,269 @@
 <context>
     <name>SpectrogramLayer</name>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="172"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="219"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="231"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="271"/>
         <source>Colour</source>
         <translation>Цвет</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="173"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="232"/>
         <source>Colour Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="174"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="233"/>
         <source>Window Size</source>
         <translation>Размер окна</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="176"/>
         <source>Normalize Columns</source>
-        <translation>Нормализовать столбцы</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="178"/>
+        <translation type="vanished">Нормализовать столбцы</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="236"/>
         <source>Bin Display</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="179"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="237"/>
         <source>Threshold</source>
         <translation>Порог</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="180"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="238"/>
         <source>Gain</source>
         <translation>Усиление</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="181"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="239"/>
         <source>Colour Rotation</source>
         <translation>Вращение цвета</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="182"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="240"/>
         <source>Min Frequency</source>
         <translation>Мин. частота</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="183"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="241"/>
         <source>Max Frequency</source>
         <translation>Макс. частота</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="184"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="242"/>
         <source>Frequency Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="216"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="268"/>
         <source>Window</source>
         <translation>Окно</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="223"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="274"/>
         <source>Scale</source>
         <translation>Масштаб</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="393"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="451"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="435"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="499"/>
         <source>Linear</source>
         <translation>Линейный</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="394"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="436"/>
         <source>Meter</source>
         <translation>Счетчик</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="470"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="473"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="534"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="537"/>
         <source>dB</source>
         <translation>Дб</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="397"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="439"/>
         <source>Phase</source>
         <translation>Фаза</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="421"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="235"/>
+        <source>Normalization</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="446"/>
+        <source>Col</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="447"/>
+        <source>View</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="448"/>
+        <source>Hybrid</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="469"/>
         <source>No min</source>
         <translation>Без минимума</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="422"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="470"/>
         <source>10 Hz</source>
         <translation>10 Гц</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="423"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="471"/>
         <source>20 Hz</source>
         <translation>20 Гц</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="424"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="472"/>
         <source>40 Hz</source>
         <translation>40 Гц</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="425"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="473"/>
         <source>100 Hz</source>
         <translation>100 Гц</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="426"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="474"/>
         <source>250 Hz</source>
         <translation>250 Гц</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="427"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="436"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="475"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="484"/>
         <source>500 Hz</source>
         <translation>500 Гц</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="428"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="437"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="476"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="485"/>
         <source>1 KHz</source>
         <translation>1 КГц</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="429"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="440"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="477"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="488"/>
         <source>4 KHz</source>
         <translation>4 КГц</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="430"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="478"/>
         <source>10 KHz</source>
         <translation>10 КГц</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="438"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="486"/>
         <source>1.5 KHz</source>
         <translation>1,5 КГц</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="439"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="487"/>
         <source>2 KHz</source>
         <translation>2 КГц</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="441"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="489"/>
         <source>6 KHz</source>
         <translation>6 КГц</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="442"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="490"/>
         <source>8 KHz</source>
         <translation>8 КГц</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="443"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="491"/>
         <source>12 KHz</source>
         <translation>12 КГц</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="444"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="492"/>
         <source>16 KHz</source>
         <translation>16 КГц</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="445"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="493"/>
         <source>No max</source>
         <translation>Без максимума</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="452"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="500"/>
         <source>Log</source>
         <translation>Логарифм.</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="458"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="506"/>
         <source>All Bins</source>
         <translation>Все бины</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="459"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="507"/>
         <source>Peak Bins</source>
         <translation>Пиковые бины</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="460"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="508"/>
         <source>Frequencies</source>
         <translation>Частоты</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="463"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="511"/>
         <source>&lt;unknown&gt;</source>
         <translation>&lt;неизвестно&gt;</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3175"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1911"/>
         <source>Peak Frequency:	%1 - %2 Hz
 </source>
         <translation>Пиковая частота:	%1 - %2 Гц
 </translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3178"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1914"/>
         <source>Peak Frequency:	%1 Hz
 </source>
         <translation>Пиковая частота:	%1 Гц
 </translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3186"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1922"/>
         <source>Peak Pitch:	%3 - %4
 </source>
         <translation>Пиковая высота тона:	%3 - %4
 </translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3188"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1924"/>
         <source>Peak Pitch:	%2
 </source>
         <translation>Пиковая высота тона:	%2
 </translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3199"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1935"/>
         <source>Time:	%1 - %2
 </source>
         <translation>Время:	%1 - %2
 </translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3203"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1939"/>
         <source>Time:	%1
 </source>
         <translation>Время:	%1
 </translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3208"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1944"/>
         <source>%1Bin Frequency:	%2 - %3 Hz
 %4Bin Pitch:	%5 - %6
 </source>
@@ -6868,7 +7880,7 @@
 </translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3216"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1952"/>
         <source>%1Bin Frequency:	%2 Hz
 %3Bin Pitch:	%4
 </source>
@@ -6877,115 +7889,107 @@
 </translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3229"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3234"/>
         <source>-Inf</source>
-        <translation>-Inf</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3239"/>
+        <translation type="vanished">-Inf</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1975"/>
         <source>dB:	%1 - %2</source>
         <translation>Дб:	%1 - %2</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3241"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1977"/>
         <source>dB:	%1</source>
         <translation>Дб:	%1</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3244"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1980"/>
         <source>
 Phase:	%1 - %2</source>
         <translation>
 Фаза:	%1 - %2</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3246"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1982"/>
         <source>
 Phase:	%1</source>
         <translation>
 Фаза:	%1</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="175"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="234"/>
         <source>Window Overlap</source>
         <translation>Перекрытие окон</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="185"/>
-        <source>Smoothing</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="406"/>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="415"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="445"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="458"/>
         <source>None</source>
         <translation>Нет</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="407"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="459"/>
         <source>25 %</source>
         <translation>25 %</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="408"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="460"/>
         <source>50 %</source>
         <translation>50 %</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="409"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="461"/>
         <source>75 %</source>
         <translation>75 %</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="410"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="462"/>
         <source>87.5 %</source>
         <translation>87,5 %</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="411"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="463"/>
         <source>93.75 %</source>
         <translation>93,75 %</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="177"/>
         <source>Normalize Visible Area</source>
-        <translation>Нормализовать видимую область</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="213"/>
+        <translation type="vanished">Нормализовать видимую область</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="266"/>
         <source>Bins</source>
         <translation>Бины</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="1667"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1358"/>
         <source>FFT cache failed</source>
         <translation>Не удалось кэшировать FFT</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="1668"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="1359"/>
         <source>Failed to create the FFT model for this spectrogram.
 There may be insufficient memory or disc space to continue.</source>
         <translation>Не удалось создать FFT-модель этой спектрограммы.
 Вероятно, не хватает памяти или дискового порстранства для продолжения.</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="395"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="437"/>
         <source>dBV^2</source>
         <translation>ДбВ^2</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="396"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="438"/>
         <source>dBV</source>
         <translation>ДбВ</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3276"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="2012"/>
         <source>43Hz</source>
         <translation>43 Гц</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrogramLayer.cpp" line="3423"/>
+        <location filename="../svgui/layer/SpectrogramLayer.cpp" line="2085"/>
         <source>%1Hz</source>
         <translation>%1 Гц</translation>
     </message>
@@ -6993,90 +7997,88 @@
 <context>
     <name>SpectrumLayer</name>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="146"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="143"/>
         <source>Window Size</source>
         <translation>Размер окна</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="147"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="144"/>
         <source>Window Overlap</source>
         <translation>Перекрытие окон</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="172"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="169"/>
         <source>Window</source>
         <translation>Окно</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="637"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="634"/>
         <source>Mean</source>
         <translation type="unfinished">Усреднённо</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="228"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="225"/>
         <source>None</source>
         <translation>Ничего</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="173"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="170"/>
         <source>Bins</source>
         <translation type="unfinished">Бины</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="229"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="226"/>
         <source>25 %</source>
         <translation>25 %</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="230"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="227"/>
         <source>50 %</source>
         <translation>50 %</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="231"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="228"/>
         <source>75 %</source>
         <translation>75 %</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="232"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="229"/>
         <source>87.5 %</source>
         <translation>87,5 %</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="233"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="230"/>
         <source>93.75 %</source>
         <translation>93,75 %</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="591"/>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="603"/>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="624"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="588"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="600"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="621"/>
         <source>%1 - %2</source>
         <translation>%1 - %2</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="596"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="593"/>
         <source>%1 - %2 Hz</source>
         <translation>%1 - %2 Гц</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="598"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="595"/>
         <source>%1 Hz</source>
         <translation>%1 Гц</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="614"/>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="619"/>
         <source>-Inf</source>
-        <translation>-Inf</translation>
-    </message>
-    <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="626"/>
+        <translation type="vanished">-Inf</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="623"/>
         <source>%1</source>
         <translation>%1</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="632"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="629"/>
         <source>%1
 Bin:	%2 (%3)
 %4 value:	%5
@@ -7087,17 +8089,17 @@
 Дб:	%6</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="636"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="633"/>
         <source>First</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="637"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="634"/>
         <source>Peak</source>
         <translation>Пик</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="641"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="638"/>
         <source>%1
 Bin:	%2 (%3)
 Value:	%4
@@ -7108,7 +8110,7 @@
 Дб:	%5</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/SpectrumLayer.cpp" line="148"/>
+        <location filename="../svgui/layer/SpectrumLayer.cpp" line="145"/>
         <source>Show Peak Frequencies</source>
         <translation>Показывать пиковые частоты</translation>
     </message>
@@ -7120,7 +8122,7 @@
 <context>
     <name>SubdividingMenu</name>
     <message>
-        <location filename="../../svgui/widgets/SubdividingMenu.cpp" line="115"/>
+        <location filename="../svgui/widgets/SubdividingMenu.cpp" line="117"/>
         <source>%1 - %2</source>
         <translation>%1 - %2</translation>
     </message>
@@ -7128,35 +8130,37 @@
 <context>
     <name>Surveyer</name>
     <message>
+        <location filename="../main/Surveyer.cpp" line="97"/>
         <source>Yes! Take me to the survey</source>
-        <translation type="obsolete">Да, я хочу заполнить отчёт</translation>
-    </message>
-    <message>
+        <translation type="unfinished">Да, я хочу заполнить отчёт</translation>
+    </message>
+    <message>
+        <location filename="../main/Surveyer.cpp" line="98"/>
         <source>No, thanks</source>
-        <translation type="obsolete">Спасибо, нет</translation>
+        <translation type="unfinished">Спасибо, нет</translation>
     </message>
 </context>
 <context>
     <name>TextLayer</name>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="39"/>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="40"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="39"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="40"/>
         <source>Empty Label</source>
         <translation>Очистить метку</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="135"/>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="373"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="135"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="373"/>
         <source>&lt;no text&gt;</source>
         <translation>&lt;без текста&gt;</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="195"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="195"/>
         <source>In progress</source>
         <translation>В процессе</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="208"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="208"/>
         <source>Time:	%1
 Height:	%2
 Label:	%3</source>
@@ -7165,74 +8169,74 @@
 Метка:	%3</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="465"/>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="611"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="465"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="611"/>
         <source>Enter label</source>
         <translation>Введите метку</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="466"/>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="612"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="466"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="612"/>
         <source>Please enter a new label:</source>
         <translation>Введите текст новой метки:</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="563"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="563"/>
         <source>Drag Label</source>
         <translation>Перетащите метку</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="584"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="584"/>
         <source>Move Label</source>
         <translation>Переместите метку</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="586"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="586"/>
         <source>Move Label Horizontally</source>
         <translation>Переместите по горизонтали</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="589"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="589"/>
         <source>Move Label Vertically</source>
         <translation>Переместите по вертикали</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="629"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="629"/>
         <source>Drag Selection</source>
         <translation>Перетащите выделение</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="654"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="654"/>
         <source>Resize Selection</source>
         <translation>Смените размер выделения</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="688"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="688"/>
         <source>Delete Selection</source>
         <translation>Удалите выделение</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="746"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="746"/>
         <source>Paste</source>
         <translation>Вставить</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="791"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="791"/>
         <source>New Point</source>
         <translation>Новая точка</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="514"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="514"/>
         <source>Erase Point</source>
         <translation>Удалить точку</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="731"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="731"/>
         <source>Re-align pasted items?</source>
         <translation>Заново выровнять вставленные объекты?</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TextLayer.cpp" line="732"/>
+        <location filename="../svgui/layer/TextLayer.cpp" line="732"/>
         <source>The items you are pasting came from a layer with different source material from this one.  Do you want to re-align them in time, to match the source material for this layer?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7240,37 +8244,37 @@
 <context>
     <name>TextModel</name>
     <message>
-        <location filename="../../svcore/data/model/TextModel.h" line="103"/>
+        <location filename="../svcore/data/model/TextModel.h" line="103"/>
         <source>Text</source>
         <translation>Текст</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/TextModel.h" line="117"/>
+        <location filename="../svcore/data/model/TextModel.h" line="117"/>
         <source>Time</source>
         <translation>Время</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/TextModel.h" line="118"/>
+        <location filename="../svcore/data/model/TextModel.h" line="118"/>
         <source>Frame</source>
         <translation>Выборка</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/TextModel.h" line="119"/>
+        <location filename="../svcore/data/model/TextModel.h" line="119"/>
         <source>Height</source>
         <translation>Высота</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/TextModel.h" line="120"/>
+        <location filename="../svcore/data/model/TextModel.h" line="120"/>
         <source>Label</source>
         <translation>Метка</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/TextModel.h" line="121"/>
+        <location filename="../svcore/data/model/TextModel.h" line="121"/>
         <source>Unknown</source>
         <translation>Неизвестно</translation>
     </message>
     <message>
-        <location filename="../../svcore/data/model/TextModel.h" line="152"/>
+        <location filename="../svcore/data/model/TextModel.h" line="152"/>
         <source>Edit Data</source>
         <translation>Изменить данные</translation>
     </message>
@@ -7278,39 +8282,39 @@
 <context>
     <name>Thumbwheel</name>
     <message>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="232"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="232"/>
         <source>%1: %2%3</source>
         <translation>%1: %2%3</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="234"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="234"/>
         <source>%2%3</source>
         <translation>%2%3</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="344"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="344"/>
         <source>New value for %1, from %2 to %3 %4:</source>
         <translation>Новое значение для %1, от %2 до %3 %4:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="347"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="347"/>
         <source>New value for %1, from %2 to %3:</source>
         <translation>Новое значение для %1, от %2 до %3:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="352"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="352"/>
         <source>Enter a new value from %1 to %2 %3:</source>
         <translation>Введите новое значение от %1 до %2 %3:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="355"/>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="379"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="355"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="379"/>
         <source>Enter a new value from %1 to %2:</source>
         <translation>Введите новое значение от %1 до %2:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="362"/>
-        <location filename="../../svgui/widgets/Thumbwheel.cpp" line="378"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="362"/>
+        <location filename="../svgui/widgets/Thumbwheel.cpp" line="378"/>
         <source>Enter new value</source>
         <translation>Введите новое значение</translation>
     </message>
@@ -7318,107 +8322,107 @@
 <context>
     <name>TimeInstantLayer</name>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="44"/>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="481"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="46"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="483"/>
         <source>New Point</source>
         <translation>Новая точка</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="84"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="86"/>
         <source>Plot Type</source>
         <translation>Тип графика</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="124"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="126"/>
         <source>Instants</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="125"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="127"/>
         <source>Segmentation</source>
         <translation>Сегментация</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="226"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="228"/>
         <source>In progress</source>
         <translation>В процессе</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="228"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="230"/>
         <source>No local points</source>
         <translation>Нет локальных точек</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="239"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="241"/>
         <source>Time:	%1
 No label</source>
         <translation>Время:	%1
 Без метки</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="242"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="244"/>
         <source>Time:	%1
 Label:	%2</source>
         <translation>Время:	%1
 Метка:	%2</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="485"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="487"/>
         <source>Draw Point</source>
         <translation>Нарисовать точку</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="515"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="517"/>
         <source>Add Point at %1 s</source>
         <translation>Добавить точку в %1 с</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="606"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="608"/>
         <source>Drag Point</source>
         <translation>Перетащить точку</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="622"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="624"/>
         <source>Move Point to %1 s</source>
         <translation>Перетащить точку к %1 с</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="658"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="660"/>
         <source>Edit Point</source>
         <translation>Изменить точку</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="675"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="677"/>
         <source>Drag Selection</source>
         <translation>Перетащить выделение</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="701"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="703"/>
         <source>Resize Selection</source>
         <translation>Изменить размер выделения</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="736"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="738"/>
         <source>Delete Selection</source>
         <translation>Удалить выделение</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="794"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="796"/>
         <source>Paste</source>
         <translation>Вставить</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="560"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="562"/>
         <source>Erase Point</source>
         <translation>Удалить точку</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="779"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="781"/>
         <source>Re-align pasted instants?</source>
         <translation>Заново выровнять вставленные объекты?</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeInstantLayer.cpp" line="780"/>
+        <location filename="../svgui/layer/TimeInstantLayer.cpp" line="782"/>
         <source>The instants you are pasting came from a layer with different source material from this one.  Do you want to re-align them in time, to match the source material for this layer?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7426,212 +8430,252 @@
 <context>
     <name>TimeValueLayer</name>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="51"/>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="52"/>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1285"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="59"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="60"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1352"/>
         <source>New Point</source>
         <translation>Новая точка</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="105"/>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="141"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="113"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="149"/>
         <source>Plot Type</source>
         <translation>Тип графика</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="106"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="114"/>
         <source>Vertical Scale</source>
         <translation>Верт. масштаб</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="107"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="115"/>
         <source>Scale Units</source>
         <translation>Единицы шкалы</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="109"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="117"/>
         <source>Show Derivative</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="215"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="230"/>
         <source>Points</source>
         <translation>Точки</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="216"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="231"/>
         <source>Stems</source>
         <translation>Ножки</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="217"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="232"/>
         <source>Connected Points</source>
         <translation>Соединённые точки</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="218"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="233"/>
         <source>Lines</source>
         <translation>Линии</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="219"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="234"/>
         <source>Curve</source>
         <translation>Кривая</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="220"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="235"/>
         <source>Segmentation</source>
         <translation>Сегментация</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="225"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="236"/>
+        <source>Discrete Curves</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="241"/>
         <source>Auto-Align</source>
         <translation>Автовыравнивание</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="556"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="601"/>
         <source>In progress</source>
         <translation>В процессе</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="558"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="603"/>
         <source>No local points</source>
         <translation>Нет локальных точек</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="571"/>
         <source>Time:	%1
 Value:	%2%3
 No label</source>
-        <translation>Время:	%1
+        <translation type="vanished">Время:	%1
 Значение:	%2%3
 Без метки</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="576"/>
         <source>Time:	%1
 Value:	%2%3
 Label:	%4</source>
-        <translation>Время:	%1
+        <translation type="vanished">Время:	%1
 Значение:	%2%3
 Метка:	%4</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1292"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1359"/>
         <source>Draw Point</source>
         <translation>Нарисовать точку</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1459"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1526"/>
         <source>Drag Point</source>
         <translation>Перетащить точку</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1482"/>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1527"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1549"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1594"/>
         <source>Edit Point</source>
         <translation>Изменить точку</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1484"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1551"/>
         <source>Relocate Point</source>
         <translation>Переместить точку</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1487"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1554"/>
         <source>Change Point Value</source>
         <translation>Изменить значение точки</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1544"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1611"/>
         <source>Drag Selection</source>
         <translation>Перетащить выделение</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1570"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1637"/>
         <source>Resize Selection</source>
         <translation>Изменить размер выделения</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1605"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1672"/>
         <source>Delete Selected Points</source>
         <translation>Удалить выбранные точки</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1667"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1734"/>
         <source>Paste</source>
         <translation>Вставить</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1723"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1789"/>
         <source>The items you are pasting do not have values.
 What values do you want to use for these items?</source>
         <translation>У вставляемых объектов нет значений.
 Какие значения вы хотите для них использовать?</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1725"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1791"/>
         <source>Some of the items you are pasting do not have values.
 What values do you want to use for these items?</source>
         <translation>У некоторых вставляемых объектов нет значений.Какие значения вы хотите для них использовать?</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1735"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1801"/>
         <source>Zero for all items</source>
         <translation>Ноль для всех объектов</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1744"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1810"/>
         <source>Choose value calculation</source>
         <translation>Выбрать вычисление значения</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="137"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="145"/>
         <source>Scale</source>
         <translation>Масштаб</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="226"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="242"/>
         <source>Linear</source>
         <translation>Линейный</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="227"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="243"/>
         <source>Log</source>
         <translation>Логарифмический</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="228"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="244"/>
         <source>+/-1</source>
         <translation>+/-1</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1410"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="616"/>
+        <source>%1 Hz (%2, %3)</source>
+        <translation type="unfinished">%1Гц (%2, %3)</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="621"/>
+        <source>%1 %2</source>
+        <translation type="unfinished">%1 %2</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="623"/>
+        <source>%1</source>
+        <translation type="unfinished">%1</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="629"/>
+        <source>Time:	%1
+Value:	%2
+No label</source>
+        <translation type="unfinished">Время:	%1
+Значение:	%2%3
+Без метки {1
+?} {2
+?}</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="633"/>
+        <source>Time:	%1
+Value:	%2
+Label:	%4</source>
+        <translation type="unfinished">Время:	%1
+Значение:	%2%3
+Метка:	%4 {1
+?} {2
+?}</translation>
+    </message>
+    <message>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1477"/>
         <source>Erase Point</source>
         <translation>Стереть точку</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1652"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1719"/>
         <source>Re-align pasted items?</source>
         <translation type="unfinished">Заново выровнять вставленные объекты?</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1653"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1720"/>
         <source>The items you are pasting came from a layer with different source material from this one.  Do you want to re-align them in time, to match the source material for this layer?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1765"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1834"/>
         <source>Select cycle size</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="1766"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="1835"/>
         <source>Cycle size:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/TimeValueLayer.cpp" line="108"/>
+        <location filename="../svgui/layer/TimeValueLayer.cpp" line="116"/>
         <source>Draw Segment Division Lines</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7639,27 +8683,27 @@
 <context>
     <name>TipDialog</name>
     <message>
-        <location filename="../../svgui/widgets/TipDialog.cpp" line="35"/>
+        <location filename="../svgui/widgets/TipDialog.cpp" line="35"/>
         <source>Tip of the Day</source>
         <translation>Совет дня</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TipDialog.cpp" line="65"/>
+        <location filename="../svgui/widgets/TipDialog.cpp" line="65"/>
         <source>Show tip on startup</source>
         <translation>Показывать советы при запуске</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TipDialog.cpp" line="71"/>
+        <location filename="../svgui/widgets/TipDialog.cpp" line="71"/>
         <source>&lt;&lt; Previous</source>
         <translation>&lt;&lt; Предыдущий</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TipDialog.cpp" line="75"/>
+        <location filename="../svgui/widgets/TipDialog.cpp" line="75"/>
         <source>Next &gt;&gt;</source>
         <translation>Следующий &gt;&gt;</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TipDialog.cpp" line="79"/>
+        <location filename="../svgui/widgets/TipDialog.cpp" line="79"/>
         <source>Close</source>
         <translation>Закрыть</translation>
     </message>
@@ -7667,136 +8711,141 @@
 <context>
     <name>TransformFactory</name>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="555"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="707"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="552"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="705"/>
         <source>%1: %2</source>
         <translation>%1: %2</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="565"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="562"/>
         <source>%1: Output %2</source>
         <translation>%1: Выход %2</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="320"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="321"/>
         <source>Analysis</source>
         <translation>Анализ</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="322"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="323"/>
         <source>Effects Data</source>
         <translation>Данные эффектов</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="321"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="322"/>
         <source>Effects</source>
         <translation>Эффекты</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="386"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="387"/>
         <source> [\(&lt;].*$</source>
         <translation> [\(&lt;].*$</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="445"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="539"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="412"/>
+        <source>Failed to list Vamp plugins: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="445"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="536"/>
         <source>&lt;unknown maker&gt;</source>
         <translation>&lt;неизвестный производитель&gt;</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="451"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="714"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="451"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="712"/>
         <source>Extract features using &quot;%1&quot; plugin (from %2)</source>
         <translation>Извлечь данные при помощи &quot;%1&quot; (из %2)</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="454"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="717"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="454"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="715"/>
         <source>Extract features using &quot;%1&quot; output of &quot;%2&quot; plugin (from %3)</source>
         <translation>Извлечь данные при помощи &quot;%1&quot; вывода из расширения &quot;%2&quot; (из %3)</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="459"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="722"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="459"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="720"/>
         <source>%1 using &quot;%2&quot; plugin (from %3)</source>
         <translation>%1 используя расширение &quot;%2&quot; (из %3)</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="462"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="725"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="462"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="723"/>
         <source>%1 using &quot;%2&quot; output of &quot;%3&quot; plugin (from %4)</source>
         <translation>%1 используя вывод &quot;%2&quot; расширения &quot;%3&quot; (из %4)</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="577"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="574"/>
         <source>Extract &quot;%1&quot; data output from &quot;%2&quot; effect plugin (from %3)</source>
         <translation>Извлечь &quot;%1&quot; данные вывода из расширения эффектов &quot;%2&quot; (из %3)</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="582"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="579"/>
         <source>Extract data output %1 from &quot;%2&quot; effect plugin (from %3)</source>
         <translation>Извлечь данные вывода %1 из расширения эффектов &quot;%2&quot; (из %3)</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="609"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="606"/>
         <source>Transform audio signal with &quot;%1&quot; effect plugin (from %2)</source>
         <translation>Трансформировать звуковой сигнал расширением эффектов &quot;%1&quot; (из %2)</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="615"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="612"/>
         <source>Generate audio signal using &quot;%1&quot; plugin (from %2)</source>
         <translation>Создать звуковой сигнал при помощи расширения &quot;%1&quot; (из %2)</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1133"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1171"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1153"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1191"/>
         <source>Plugin type</source>
         <translation>Тип расширения</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1135"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1173"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1155"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1193"/>
         <source>Category</source>
         <translation>Категория</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1136"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1174"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1156"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1194"/>
         <source>System Identifier</source>
         <translation>Системный идентификатор</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1137"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1175"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1157"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1195"/>
         <source>Name</source>
         <translation>Название</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1138"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1176"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1158"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1196"/>
         <source>Description</source>
         <translation>Описание</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1139"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1177"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1159"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1197"/>
         <source>Maker</source>
         <translation>Создатель</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1140"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="1178"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1160"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="1198"/>
         <source>Units</source>
         <translation>Единица измерения</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="323"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="324"/>
         <source>Generator</source>
         <translation>Генератор</translation>
     </message>
     <message>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="324"/>
-        <location filename="../../svcore/transform/TransformFactory.cpp" line="326"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="325"/>
+        <location filename="../svcore/transform/TransformFactory.cpp" line="327"/>
         <source>Other</source>
         <translation>Прочее</translation>
     </message>
@@ -7804,34 +8853,34 @@
 <context>
     <name>TransformFinder</name>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="38"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="38"/>
         <source>Find a Transform</source>
         <translation>Поиск расширений для трансформации</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="44"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="44"/>
         <source>Find:</source>
         <translation>Искать:</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="77"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="77"/>
         <source>&lt;br&gt;&amp;nbsp;&amp;nbsp;No results found</source>
         <translation>&lt;br&gt;&amp;nbsp;&amp;nbsp;Ничего не найдено</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="85"/>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="86"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="85"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="86"/>
         <source>Up</source>
         <translation>Вверх</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="90"/>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="91"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="90"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="91"/>
         <source>Down</source>
         <translation>Вниз</translation>
     </message>
     <message numerus="yes">
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="227"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="227"/>
         <source>Found %n description(s) containing &lt;b&gt;%1&lt;/b&gt;, showing the first %2 only</source>
         <translation>
             <numerusform>Найдено %n описание, содержащее &lt;b&gt;%1&lt;/b&gt;, показаны первые %2</numerusform>
@@ -7840,7 +8889,7 @@
         </translation>
     </message>
     <message numerus="yes">
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="231"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="231"/>
         <source>Found %n description(s) containing &lt;b&gt;%1&lt;/b&gt;</source>
         <translation>
             <numerusform>Найдено %n описание, содержащее &lt;b&gt;%1&lt;/b&gt;</numerusform>
@@ -7849,148 +8898,223 @@
         </translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="257"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="257"/>
         <source>&lt;i&gt; (not installed)&lt;/i&gt;</source>
         <translation>&lt;i&gt; (не установлено)&lt;/i&gt;</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="261"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="261"/>
         <source>%1%2&lt;br&gt;&lt;small&gt;</source>
         <translation>%1%2&lt;br&gt;&lt;small&gt;</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="272"/>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="303"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="272"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="303"/>
         <source>&lt;/small&gt;</source>
         <translation>&lt;/small&gt;</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="275"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="275"/>
         <source>&lt;b&gt;%1&lt;/b&gt;%2&lt;br&gt;</source>
         <translation>&lt;b&gt;%1&lt;/b&gt;%2&lt;br&gt;</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="281"/>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="284"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="281"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="284"/>
         <source>&lt;small&gt;%1&lt;/small&gt;</source>
         <translation>&lt;small&gt;%1&lt;/small&gt;</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="288"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="288"/>
         <source>&lt;small&gt;</source>
         <translation>&lt;small&gt;</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="290"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="290"/>
         <source>&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;mdash; Plugin type: %1</source>
         <translation>&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;mdash; Тип расширения: %1</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="294"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="294"/>
         <source>&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;mdash; Category: %1</source>
         <translation>&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;mdash; Категория: %1</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="297"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="297"/>
         <source>&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;mdash; System identifier: %1</source>
         <translation>&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;mdash; Системный идентификатор: %1</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="300"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="300"/>
         <source>&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;mdash; More information: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;</source>
         <translation>&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;mdash; Подробная информация: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="137"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="137"/>
         <source>&lt;p&gt;Type some text into the search box to search the descriptions of:&lt;ul&gt;&lt;li&gt;All currently installed &lt;a href=&quot;http://www.vamp-plugins.org/&quot;&gt;Vamp&lt;/a&gt; audio feature extraction plugins&lt;/li&gt;&lt;li&gt;All currently installed &lt;a href=&quot;http://www.ladspa.org/&quot;&gt;LADSPA&lt;/a&gt; audio effects plugins&lt;/li&gt;&lt;li&gt;Vamp plugins that are not currently installed but that have descriptions published via the semantic web&lt;/li&gt;&lt;/ul&gt;</source>
         <translation>&lt;p&gt;Введите текст для поиска по описаниям среди:&lt;ul&gt;&lt;li&gt;всех установленных расширений &lt;a href=&quot;http://www.vamp-plugins.org/&quot;&gt;Vamp&lt;/a&gt; для извлечения анализируемых данных;&lt;/li&gt;&lt;li&gt;всех установленных эффектов&lt;a href=&quot;http://www.ladspa.org/&quot;&gt;LADSPA&lt;/a&gt;;&lt;/li&gt;&lt;li&gt;еще не установленных расширений Vamp, чьё описание опубликовано в семантической сети.&lt;/li&gt;&lt;/ul&gt;</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="140"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="140"/>
         <source>&lt;b&gt;Unable to retrieve published descriptions from network!&lt;/b&gt;</source>
         <translation>&lt;b&gt;Не удалось получить опубликованные в сети описания!&lt;/b&gt;</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="143"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="143"/>
         <source>&lt;b&gt;No plugins are currently installed!&lt;/b&gt;</source>
         <translation>&lt;b&gt;Ни одно расширение не установлено!&lt;/b&gt;</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="151"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="151"/>
         <source>&lt;p&gt;%1&lt;br&gt;Perhaps the network connection is down, services are responding too slowly, or a processing problem has occurred.&lt;br&gt;Only the descriptions of installed plugins will be searched.</source>
         <translation>&lt;p&gt;%1&lt;br&gt;Вероятно, не работает сетевое соединение, либо службы отзываются слишком медленно, либо произошла неполадка при обработке.&lt;br&gt;Будет выполнен поиск только по описаниям уже установленных расширений.</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="157"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="157"/>
         <source>&lt;p&gt;%1&lt;br&gt;Only the published descriptions of Vamp feature extraction plugins will be searched.</source>
         <translation>&lt;p&gt;%1&lt;br&gt;Выдет выполнен поиск только по описаниям расширений Vamp, предназначенных для извлечения анализируемых данных.</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/TransformFinder.cpp" line="161"/>
+        <location filename="../svgui/widgets/TransformFinder.cpp" line="161"/>
         <source>&lt;p&gt;%1&lt;br&gt;%2&lt;br&gt;Perhaps the network connection is down, or services are responding too slowly.&lt;br&gt;No search results will be available.</source>
         <translation>&lt;p&gt;%1&lt;br&gt;%2&lt;br&gt;Вероятно, не работает сетевое соединение, либо службы отзываются слишком медленно.&lt;br&gt;Результаты поиска будут недоступны.</translation>
     </message>
 </context>
 <context>
+    <name>UnitConverter</name>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="50"/>
+        <source>Pitch</source>
+        <translation type="unfinished">Высота тона</translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="87"/>
+        <source> cents</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="96"/>
+        <source>In 12-tone Equal Temperament:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="105"/>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="208"/>
+        <source>=</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="107"/>
+        <source>+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="110"/>
+        <source>Piano note</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="112"/>
+        <source>in octave</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="117"/>
+        <source>MIDI pitch</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="133"/>
+        <source>Note that only pitches in the range 0 to 127 are valid in the MIDI protocol.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="140"/>
+        <source>Tempo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="206"/>
+        <source>Beat period</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="212"/>
+        <source>at</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/widgets/UnitConverter.cpp" line="275"/>
+        <source>With concert-A tuning frequency at %1 Hz, and middle C residing in octave %2.
+(These can be changed in the application preferences.)</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>View</name>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="91"/>
+        <location filename="../svgui/view/View.cpp" line="98"/>
         <source>Global Scroll</source>
         <translation>Глобальная прокрутка</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="92"/>
+        <location filename="../svgui/view/View.cpp" line="99"/>
         <source>Global Zoom</source>
         <translation>Глобальный масштаб</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="93"/>
+        <location filename="../svgui/view/View.cpp" line="100"/>
         <source>Follow Playback</source>
         <translation>Следовать за воспроизведением</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="132"/>
+        <location filename="../svgui/view/View.cpp" line="143"/>
         <source>Scroll</source>
         <translation>Прокручивать</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="133"/>
+        <location filename="../svgui/view/View.cpp" line="144"/>
         <source>Page</source>
         <translation>Постранично</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="134"/>
+        <location filename="../svgui/view/View.cpp" line="145"/>
         <source>Off</source>
         <translation>Выключить</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="137"/>
+        <location filename="../svgui/view/View.cpp" line="148"/>
         <source>&lt;unknown&gt;</source>
         <translation>&lt;неизвестно&gt;</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="1445"/>
+        <location filename="../svgui/view/View.cpp" line="1533"/>
         <source>Layer rendering error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="2242"/>
+        <location filename="../svgui/view/View.cpp" line="2383"/>
         <source>Waiting for layers to be ready...</source>
         <translation>Ожидание готовности слоёв...</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="2243"/>
-        <location filename="../../svgui/view/View.cpp" line="2272"/>
+        <location filename="../svgui/view/View.cpp" line="2384"/>
+        <location filename="../svgui/view/View.cpp" line="2413"/>
         <source>Cancel</source>
         <translation>Отменить</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="2271"/>
+        <location filename="../svgui/view/View.cpp" line="2412"/>
         <source>Rendering image...</source>
         <translation>Отрисовывается изображение...</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/View.cpp" line="1466"/>
+        <location filename="../svgui/view/View.cpp" line="2529"/>
+        <source>Exported image from %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/view/View.cpp" line="1555"/>
         <source>Alignment</source>
         <translation>Выравнивание</translation>
     </message>
@@ -7998,97 +9122,102 @@
 <context>
     <name>ViewManager</name>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="338"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="381"/>
         <source>Clear Selection</source>
         <translation type="unfinished">Снять выделение</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="339"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="382"/>
         <source>Select Multiple Regions</source>
         <translation type="unfinished">Выделить несколько областей</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="340"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="383"/>
         <source>Select Region</source>
         <translation type="unfinished">Выделить область</translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="357"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="400"/>
         <source>Enter Navigate mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="358"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="401"/>
         <source>Enter Select mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="359"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="402"/>
         <source>Enter Edit mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="360"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="403"/>
         <source>Enter Draw mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="361"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="404"/>
         <source>Enter Erase mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="362"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="405"/>
         <source>Enter Measure mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="376"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="406"/>
+        <source>Enter NoteEdit mode</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../svgui/view/ViewManager.cpp" line="442"/>
         <source>Switch on Loop mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="377"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="443"/>
         <source>Switch off Loop mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="391"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="457"/>
         <source>Switch on Play Selection mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="392"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="458"/>
         <source>Switch off Play Selection mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="406"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="472"/>
         <source>Switch on Play Solo mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="407"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="473"/>
         <source>Switch off Play Solo mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="421"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="487"/>
         <source>Switch on Alignment mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="422"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="488"/>
         <source>Switch off Alignment mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="524"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="591"/>
         <source>Scroll to %1</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../../svgui/view/ViewManager.cpp" line="586"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="652"/>
         <source>Zoom to %n sample(s) per pixel</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -8097,7 +9226,7 @@
         </translation>
     </message>
     <message>
-        <location filename="../../svgui/view/ViewManager.cpp" line="596"/>
+        <location filename="../svgui/view/ViewManager.cpp" line="662"/>
         <source>Change overlay level</source>
         <translation type="unfinished"></translation>
     </message>
@@ -8120,133 +9249,129 @@
 <context>
     <name>WaveFileModel</name>
     <message>
-        <location filename="../../svcore/data/model/WaveFileModel.h" line="83"/>
         <source>Wave File</source>
-        <translation>Звуковой файл</translation>
+        <translation type="vanished">Звуковой файл</translation>
     </message>
 </context>
 <context>
     <name>WaveformLayer</name>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="104"/>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="133"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="109"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="138"/>
         <source>Scale</source>
         <translation>Масштаб по Y</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="105"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="110"/>
         <source>Gain</source>
         <translation>Усиление</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="106"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="111"/>
         <source>Normalize Visible Area</source>
         <translation>Нормализовать видимую область</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="107"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="112"/>
         <source>Channels</source>
         <translation>Каналы</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="194"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="199"/>
         <source>Linear</source>
         <translation>Линейный</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="195"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="200"/>
         <source>Meter</source>
         <translation>Счетчик</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="196"/>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="214"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="201"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="219"/>
         <source>dB</source>
         <translation>Дб</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="202"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="207"/>
         <source>Separate</source>
         <translation>Отдельно</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="203"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="208"/>
         <source>Mean</source>
         <translation>Усреднённо</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="204"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="209"/>
         <source>Butterfly</source>
         <translation>V-образно</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="953"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="984"/>
         <source>Time:	%1 - %2</source>
         <translation>Время:	%1 - %2</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="957"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="988"/>
         <source>Time:	%1</source>
         <translation>Время:	%1</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="978"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1009"/>
         <source>Level:</source>
         <translation>Уровень:</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="980"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1011"/>
         <source>Left:</source>
         <translation>Левый:</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="981"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1012"/>
         <source>Right:</source>
         <translation>Правый:</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="982"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1013"/>
         <source>Channel %1</source>
         <translation>Канал %1</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1005"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1036"/>
         <source>
 %1	%2 - %3 (%4 dB peak)</source>
         <translation>
 %1	%2 - %3 (пик в %4 Дб)</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1008"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1039"/>
         <source>
 %1	%2 (%3 dB peak)</source>
         <translation>
 %1	%2 (пик в %3 Дб)</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1175"/>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1228"/>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1238"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1206"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1259"/>
+        <location filename="../svgui/layer/WaveformLayer.cpp" line="1269"/>
         <source>0dB</source>
         <translation>0 Дб</translation>
     </message>
     <message>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1176"/>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1230"/>
-        <location filename="../../svgui/layer/WaveformLayer.cpp" line="1240"/>
         <source>-Inf</source>
-        <translation>-Inf</translation>
+        <translation type="vanished">-Inf</translation>
     </message>
 </context>
 <context>
     <name>WindowShapePreview</name>
     <message>
-        <location filename="../../svgui/widgets/WindowShapePreview.cpp" line="118"/>
+        <location filename="../svgui/widgets/WindowShapePreview.cpp" line="120"/>
         <source>V / time</source>
         <translation>V / время</translation>
     </message>
     <message>
-        <location filename="../../svgui/widgets/WindowShapePreview.cpp" line="202"/>
+        <location filename="../svgui/widgets/WindowShapePreview.cpp" line="202"/>
         <source>dB / freq</source>
         <translation>Дб / частота</translation>
     </message>
@@ -8254,7 +9379,7 @@
 <context>
     <name>WritableWaveFileModel</name>
     <message>
-        <location filename="../../svcore/data/model/WritableWaveFileModel.h" line="82"/>
+        <location filename="../svcore/data/model/WritableWaveFileModel.h" line="124"/>
         <source>Writable Wave File</source>
         <translation>Записываемый звуковой файл</translation>
     </message>
--- a/main/MainWindow.cpp	Tue Jan 10 16:10:33 2017 +0000
+++ b/main/MainWindow.cpp	Tue Jan 10 16:21:32 2017 +0000
@@ -42,11 +42,12 @@
 #include "layer/SliceableLayer.h"
 #include "layer/ImageLayer.h"
 #include "layer/RegionLayer.h"
-#include "widgets/Fader.h"
 #include "view/Overview.h"
 #include "widgets/PropertyBox.h"
 #include "widgets/PropertyStack.h"
 #include "widgets/AudioDial.h"
+#include "widgets/LevelPanWidget.h"
+#include "widgets/LevelPanToolButton.h"
 #include "widgets/IconLoader.h"
 #include "widgets/LayerTreeDialog.h"
 #include "widgets/ListInputDialog.h"
@@ -57,10 +58,9 @@
 #include "widgets/LabelCounterInputDialog.h"
 #include "widgets/ActivityLog.h"
 #include "widgets/UnitConverter.h"
-#include "audioio/AudioCallbackPlaySource.h"
-#include "audioio/AudioCallbackPlayTarget.h"
-#include "audioio/AudioTargetFactory.h"
-#include "audioio/PlaySpeedRangeMapper.h"
+#include "audio/AudioCallbackPlaySource.h"
+#include "audio/AudioCallbackRecordTarget.h"
+#include "audio/PlaySpeedRangeMapper.h"
 #include "data/fileio/DataFileReaderFactory.h"
 #include "data/fileio/PlaylistFileReader.h"
 #include "data/fileio/WavFileWriter.h"
@@ -68,9 +68,9 @@
 #include "data/fileio/MIDIFileWriter.h"
 #include "data/fileio/BZipFileDevice.h"
 #include "data/fileio/FileSource.h"
-#include "data/fft/FFTDataServer.h"
 #include "data/midi/MIDIInput.h"
 #include "base/RecentFiles.h"
+#include "plugin/PluginScan.h"
 #include "transform/TransformFactory.h"
 #include "transform/ModelTransformerFactory.h"
 #include "base/PlayParameterRepository.h"
@@ -94,6 +94,9 @@
 #include "plugin/api/ladspa.h"
 #include "plugin/api/dssi.h"
 
+#include <bqaudioio/SystemPlaybackTarget.h>
+#include <bqaudioio/SystemAudioIO.h>
+
 #include <QApplication>
 #include <QMessageBox>
 #include <QGridLayout>
@@ -117,9 +120,11 @@
 #include <QCheckBox>
 #include <QRegExp>
 #include <QScrollArea>
+#include <QCloseEvent>
 #include <QDesktopServices>
 #include <QDialogButtonBox>
 #include <QFileSystemWatcher>
+#include <QTextEdit>
 
 #include <iostream>
 #include <cstdio>
@@ -130,8 +135,8 @@
 using std::set;
 
 
-MainWindow::MainWindow(bool withAudioOutput, bool withOSCSupport) :
-    MainWindowBase(withAudioOutput, true),
+MainWindow::MainWindow(SoundOptions options, bool withOSCSupport) :
+    MainWindowBase(options),
     m_overview(0),
     m_mainMenusCreated(false),
     m_paneMenu(0),
@@ -155,6 +160,7 @@
     m_ffwdSimilarAction(0),
     m_ffwdEndAction(0),
     m_playAction(0),
+    m_recordAction(0),
     m_playSelectionAction(0),
     m_playLoopAction(0),
     m_soloModified(false),
@@ -207,7 +213,9 @@
 
     m_overview = new Overview(frame);
     m_overview->setViewManager(m_viewManager);
-    m_overview->setFixedHeight(40);
+    int overviewHeight = m_viewManager->scalePixelSize(35);
+    if (overviewHeight < 40) overviewHeight = 40;
+    m_overview->setFixedHeight(overviewHeight);
 #ifndef _WIN32
     // For some reason, the contents of the overview never appear if we
     // make this setting on Windows.  I have no inclination at the moment
@@ -222,24 +230,14 @@
     m_panLayer->setAggressiveCacheing(true);
     m_overview->addLayer(m_panLayer);
 
-    if (m_viewManager->getGlobalDarkBackground()) {
-        m_panLayer->setBaseColour
-            (ColourDatabase::getInstance()->getColourIndex(tr("Bright Green")));
-    } else {
-        m_panLayer->setBaseColour
-            (ColourDatabase::getInstance()->getColourIndex(tr("Green")));
-    }
-
-    m_fader = new Fader(frame, false);
-    connect(m_fader, SIGNAL(mouseEntered()), this, SLOT(mouseEnteredWidget()));
-    connect(m_fader, SIGNAL(mouseLeft()), this, SLOT(mouseLeftWidget()));
+    coloursChanged(); // sets pan layer colour from preferences
 
     m_playSpeed = new AudioDial(frame);
     m_playSpeed->setMinimum(0);
     m_playSpeed->setMaximum(120);
     m_playSpeed->setValue(60);
-    m_playSpeed->setFixedWidth(32);
-    m_playSpeed->setFixedHeight(32);
+    m_playSpeed->setFixedWidth(overviewHeight);
+    m_playSpeed->setFixedHeight(overviewHeight);
     m_playSpeed->setNotchesVisible(true);
     m_playSpeed->setPageStep(10);
     m_playSpeed->setObjectName(tr("Playback Speed"));
@@ -251,34 +249,43 @@
     connect(m_playSpeed, SIGNAL(mouseEntered()), this, SLOT(mouseEnteredWidget()));
     connect(m_playSpeed, SIGNAL(mouseLeft()), this, SLOT(mouseLeftWidget()));
 
-    IconLoader il;
+    m_mainLevelPan = new LevelPanToolButton(frame);
+    connect(m_mainLevelPan, SIGNAL(mouseEntered()), this, SLOT(mouseEnteredWidget()));
+    connect(m_mainLevelPan, SIGNAL(mouseLeft()), this, SLOT(mouseLeftWidget()));
+    m_mainLevelPan->setFixedHeight(overviewHeight);
+    m_mainLevelPan->setFixedWidth(overviewHeight);
+    m_mainLevelPan->setImageSize((overviewHeight * 3) / 4);
+    m_mainLevelPan->setBigImageSize(overviewHeight * 3);
 
     m_playControlsSpacer = new QFrame;
 
-    layout->setSpacing(4);
-    layout->addWidget(m_mainScroll, 0, 0, 1, 5);
-    layout->addWidget(m_overview, 1, 1);
+    layout->setSpacing(m_viewManager->scalePixelSize(4));
+    layout->addWidget(m_mainScroll, 0, 0, 1, 4);
+    layout->addWidget(m_overview, 1, 0);
+    layout->addWidget(m_playSpeed, 1, 1);
     layout->addWidget(m_playControlsSpacer, 1, 2);
-    layout->addWidget(m_playSpeed, 1, 3);
-    layout->addWidget(m_fader, 1, 4);
+    layout->addWidget(m_mainLevelPan, 1, 3);
 
     m_playControlsWidth = 
-        m_fader->width() + m_playSpeed->width() + layout->spacing() * 2;
-
-    layout->setColumnMinimumWidth(0, 14);
-    layout->setColumnStretch(0, 0);
+        m_mainLevelPan->width() + m_playSpeed->width() + layout->spacing() * 2;
 
     m_paneStack->setPropertyStackMinWidth(m_playControlsWidth
                                           + 2 + layout->spacing());
     m_playControlsSpacer->setFixedSize(QSize(2, 2));
 
-    layout->setColumnStretch(1, 10);
+    layout->setColumnStretch(0, 10);
 
     connect(m_paneStack, SIGNAL(propertyStacksResized(int)),
             this, SLOT(propertyStacksResized(int)));
 
     frame->setLayout(layout);
 
+#ifdef Q_OS_MAC
+    // Mac doesn't align menu labels when icons are shown: result is messy
+    QApplication::setAttribute(Qt::AA_DontShowIconsInMenus);
+    setIconsVisibleInMenus(false);
+#endif
+
     setupMenus();
     setupToolbars();
     setupHelpMenu();
@@ -298,9 +305,12 @@
     connect(this, SIGNAL(activity(QString)),
             m_activityLog, SLOT(activityHappened(QString)));
     connect(this, SIGNAL(replacedDocument()), this, SLOT(documentReplaced()));
+
     m_activityLog->hide();
 
     m_unitConverter->hide();
+
+    setAudioRecordMode(RecordCreateAdditionalModel);
     
     newSession();
 
@@ -324,6 +334,13 @@
         m_surveyer = 0;
         m_versionTester = 0;
     }
+
+    QTimer::singleShot(500, this, SLOT(betaReleaseWarning()));
+    
+    QString warning = PluginScan::getInstance()->getStartupFailureReport();
+    if (warning != "") {
+        QTimer::singleShot(500, this, SLOT(pluginPopulationWarning()));
+    }
 }
 
 MainWindow::~MainWindow()
@@ -354,16 +371,15 @@
         // the system menubar integration altogether. Like this:
 	menuBar()->setNativeMenuBar(false);  // fix #1039
 #endif
-
+        
         m_rightButtonMenu = new QMenu();
 
-        // No -- we don't want tear-off enabled on the right-button
-        // menu.  If it is enabled, then simply right-clicking and
-        // releasing will pop up the menu, activate the tear-off, and
-        // leave the torn-off menu window in front of the main window.
-        // That isn't desirable.  I'm not sure it ever would be, in a
-        // context menu -- perhaps technically a Qt bug?
-//        m_rightButtonMenu->setTearOffEnabled(true);
+        // We don't want tear-off enabled on the right-button menu.
+        // If it is enabled, then simply right-clicking and releasing
+        // will pop up the menu, activate the tear-off, and leave the
+        // torn-off menu window in front of the main window.  That
+        // isn't desirable.
+        m_rightButtonMenu->setTearOffEnabled(false);
     }
 
     if (m_rightButtonTransformsMenu) {
@@ -459,7 +475,6 @@
     IconLoader il;
 
     QIcon icon = il.load("filenew");
-    icon.addPixmap(il.loadPixmap("filenew-22"));
     QAction *action = new QAction(icon, tr("&New Session"), this);
     action->setShortcut(tr("Ctrl+N"));
     action->setStatusTip(tr("Abandon the current %1 session and start a new one").arg(QApplication::applicationName()));
@@ -469,7 +484,6 @@
     toolbar->addAction(action);
 
     icon = il.load("fileopen");
-    icon.addPixmap(il.loadPixmap("fileopen-22"));
     action = new QAction(icon, tr("&Open..."), this);
     action->setShortcut(tr("Ctrl+O"));
     action->setStatusTip(tr("Open a session file, audio file, or layer"));
@@ -510,7 +524,6 @@
     menu->addSeparator();
 
     icon = il.load("filesave");
-    icon.addPixmap(il.loadPixmap("filesave-22"));
     action = new QAction(icon, tr("&Save Session"), this);
     action->setShortcut(tr("Ctrl+S"));
     action->setStatusTip(tr("Save the current session into a %1 session file").arg(QApplication::applicationName()));
@@ -521,7 +534,6 @@
     toolbar->addAction(action);
 	
     icon = il.load("filesaveas");
-    icon.addPixmap(il.loadPixmap("filesaveas-22"));
     action = new QAction(icon, tr("Save Session &As..."), this);
     action->setShortcut(tr("Ctrl+Shift+S"));
     action->setStatusTip(tr("Save the current session into a new %1 session file").arg(QApplication::applicationName()));
@@ -585,6 +597,19 @@
     connect(this, SIGNAL(canExportImage(bool)), action, SLOT(setEnabled(bool)));
     menu->addAction(action);
 
+    action = new QAction(tr("Export SVG File..."), this);
+    action->setStatusTip(tr("Export a single pane to a scalable SVG image file"));
+    connect(action, SIGNAL(triggered()), this, SLOT(exportSVG()));
+    connect(this, SIGNAL(canExportImage(bool)), action, SLOT(setEnabled(bool)));
+    menu->addAction(action);
+
+    menu->addSeparator();
+
+    action = new QAction(tr("Browse Recorded Audio Folder"), this);
+    action->setStatusTip(tr("Open the Recorded Audio folder in the system file browser"));
+    connect(action, SIGNAL(triggered()), this, SLOT(browseRecordedAudio()));
+    menu->addAction(action);
+
     menu->addSeparator();
 
     QString templatesMenuLabel = tr("Apply Session Template");
@@ -828,6 +853,20 @@
     connect(this, SIGNAL(canRenumberInstants(bool)), action, SLOT(setEnabled(bool)));
 //    m_keyReference->registerShortcut(action);
     menu->addAction(action);
+
+    menu->addSeparator();
+    
+    action = new QAction(tr("Subdivide Selected Instants..."), this);
+    action->setStatusTip(tr("Add new instants at regular intervals between the selected instants"));
+    connect(action, SIGNAL(triggered()), this, SLOT(subdivideInstants()));
+    connect(this, SIGNAL(canSubdivideInstants(bool)), action, SLOT(setEnabled(bool)));
+    menu->addAction(action);
+            
+    action = new QAction(tr("Winnow Selected Instants..."), this);
+    action->setStatusTip(tr("Remove subdivisions, leaving only every Nth instant"));
+    connect(action, SIGNAL(triggered()), this, SLOT(winnowInstants()));
+    connect(this, SIGNAL(canWinnowInstants(bool)), action, SLOT(setEnabled(bool)));
+    menu->addAction(action);
 }
 
 void
@@ -1041,12 +1080,16 @@
 
     menu->addSeparator();
 
+#ifndef Q_OS_MAC
+    // Only on non-Mac platforms -- on the Mac this interacts very
+    // badly with the "native" full-screen mode
     action = new QAction(tr("Go Full-Screen"), this);
     action->setShortcut(tr("F11"));
     action->setStatusTip(tr("Expand the pane area to the whole screen"));
     connect(action, SIGNAL(triggered()), this, SLOT(goFullScreen()));
     m_keyReference->registerShortcut(action);
     menu->addAction(action);
+#endif
 }
 
 void
@@ -1166,7 +1209,9 @@
 // Avoid warnings/errors with -Wextra because we aren't explicitly
 // handling all layer types (-Wall is OK with this because of the
 // default but the stricter level insists)
+#ifdef __GNUC__
 #pragma GCC diagnostic ignored "-Wswitch-enum"
+#endif
             
             switch (type) {
                     
@@ -1480,6 +1525,11 @@
     TransformFactory *factory = TransformFactory::getInstance();
 
     TransformList transforms = factory->getAllTransformDescriptions();
+
+    if (factory->getStartupFailureReport() != "") {
+        pluginPopulationWarning();
+    }
+    
     vector<TransformDescription::Type> types = factory->getAllTransformTypes();
 
     map<TransformDescription::Type, map<QString, SubdividingMenu *> > categoryMenus;
@@ -1738,6 +1788,11 @@
     connect(action, SIGNAL(triggered()), this, SLOT(website()));
     menu->addAction(action);
     
+    action = new QAction(tr("What's &New?").arg(name), this); 
+    action->setStatusTip(tr("Show changes in this release of %1").arg(name)); 
+    connect(action, SIGNAL(triggered()), this, SLOT(whatsNew()));
+    menu->addAction(action);
+    
     action = new QAction(tr("&About %1").arg(name), this); 
     action->setStatusTip(tr("Show information about %1").arg(name)); 
     connect(action, SIGNAL(triggered()), this, SLOT(about()));
@@ -1750,8 +1805,11 @@
     m_recentFilesMenu->clear();
     vector<QString> files = m_recentFiles.getRecent();
     for (size_t i = 0; i < files.size(); ++i) {
-	QAction *action = new QAction(files[i], this);
-	connect(action, SIGNAL(triggered()), this, SLOT(openRecentFile()));
+        /* F. Nicol patch 13 Aug. 2016 */
+        const QString& path = files[i];
+        QAction *action = new QAction(path, this);
+        connect(action, &QAction::triggered, [this, path] { openRecentFile(path);});
+        /* end of patch */
         if (i == 0) {
             action->setShortcut(tr("Ctrl+R"));
             m_keyReference->registerShortcut
@@ -1985,6 +2043,17 @@
     connect(m_ffwdEndAction, SIGNAL(triggered()), this, SLOT(ffwdEnd()));
     connect(this, SIGNAL(canPlay(bool)), m_ffwdEndAction, SLOT(setEnabled(bool)));
 
+    m_recordAction = toolbar->addAction(il.load("record"),
+                                        tr("Record"));
+    m_recordAction->setCheckable(true);
+    m_recordAction->setShortcut(tr("Ctrl+Space"));
+    m_recordAction->setStatusTip(tr("Record a new audio file"));
+    connect(m_recordAction, SIGNAL(triggered()), this, SLOT(record()));
+    connect(m_recordTarget, SIGNAL(recordStatusChanged(bool)),
+	    m_recordAction, SLOT(setChecked(bool)));
+    connect(this, SIGNAL(canRecord(bool)),
+            m_recordAction, SLOT(setEnabled(bool)));
+
     toolbar = addToolBar(tr("Play Mode Toolbar"));
 
     m_playSelectionAction = toolbar->addAction(il.load("playselection"),
@@ -2035,6 +2104,7 @@
     }
 
     m_keyReference->registerShortcut(m_playAction);
+    m_keyReference->registerShortcut(m_recordAction);
     m_keyReference->registerShortcut(m_playSelectionAction);
     m_keyReference->registerShortcut(m_playLoopAction);
     m_keyReference->registerShortcut(m_soloAction);
@@ -2047,6 +2117,7 @@
     m_keyReference->registerShortcut(m_ffwdEndAction);
 
     menu->addAction(m_playAction);
+    menu->addAction(m_recordAction);
     menu->addAction(m_playSelectionAction);
     menu->addAction(m_playLoopAction);
     menu->addAction(m_soloAction);
@@ -2061,8 +2132,11 @@
     menu->addAction(m_rwdStartAction);
     menu->addAction(m_ffwdEndAction);
     menu->addSeparator();
+    menu->addAction(m_recordAction);
+    menu->addSeparator();
 
     m_rightButtonPlaybackMenu->addAction(m_playAction);
+    m_rightButtonPlaybackMenu->addAction(m_recordAction);
     m_rightButtonPlaybackMenu->addAction(m_playSelectionAction);
     m_rightButtonPlaybackMenu->addAction(m_playLoopAction);
     m_rightButtonPlaybackMenu->addAction(m_soloAction);
@@ -2074,6 +2148,8 @@
     m_rightButtonPlaybackMenu->addAction(m_rwdStartAction);
     m_rightButtonPlaybackMenu->addAction(m_ffwdEndAction);
     m_rightButtonPlaybackMenu->addSeparator();
+    m_rightButtonPlaybackMenu->addAction(m_recordAction);
+    m_rightButtonPlaybackMenu->addSeparator();
 
     QAction *fastAction = menu->addAction(tr("Speed Up"));
     fastAction->setShortcut(tr("Ctrl+PgUp"));
@@ -2280,7 +2356,7 @@
         (haveCurrentPane &&
          (currentLayer != 0));
     bool havePlayTarget =
-	(m_playTarget != 0);
+	(m_playTarget != 0 || m_audioIO != 0);
     bool haveSelection = 
 	(m_viewManager &&
 	 !m_viewManager->getSelections().empty());
@@ -2344,9 +2420,11 @@
 
     QString description;
 
+//!!!???
+    
     sv_samplerate_t ssr = getMainModel()->getSampleRate();
     sv_samplerate_t tsr = ssr;
-    if (m_playSource) tsr = m_playSource->getTargetSampleRate();
+    if (m_playSource) tsr = m_playSource->getDeviceSampleRate();
 
     if (ssr != tsr) {
 	description = tr("%1Hz (resampling to %2Hz)").arg(ssr).arg(tsr);
@@ -2798,17 +2876,15 @@
     if (!pane) return;
     
     QString path = getSaveFileName(FileFinder::ImageFile);
-
     if (path == "") return;
-
     if (QFileInfo(path).suffix() == "") path += ".png";
-
+    
     bool haveSelection = m_viewManager && !m_viewManager->getSelections().empty();
 
     QSize total, visible, selected;
-    total = pane->getImageSize();
-    visible = pane->getImageSize(pane->getFirstVisibleFrame(),
-                                 pane->getLastVisibleFrame());
+    total = pane->getRenderedImageSize();
+    visible = pane->getRenderedPartImageSize(pane->getFirstVisibleFrame(),
+                                             pane->getLastVisibleFrame());
 
     sv_frame_t sf0 = 0, sf1 = 0;
  
@@ -2818,7 +2894,7 @@
         MultiSelection::SelectionList::iterator e = selections.end();
         --e;
         sf1 = e->getEndFrame();
-        selected = pane->getImageSize(sf0, sf1);
+        selected = pane->getRenderedPartImageSize(sf0, sf1);
     }
 
     QStringList items;
@@ -2847,7 +2923,7 @@
     if (!haveSelection) {
         lid->setItemAvailability(2, false);
     }
-    if (total.width() > 32767) { // appears to be the limit of a QImage
+    if (total.width() > 32767) { // appears to be limit of a QImage
         lid->setItemAvailability(0, false);
         lid->setFootnote(tr("Note: the whole pane is too wide to be exported as a single image."));
     }
@@ -2861,18 +2937,18 @@
     settings.setValue("lastimageexportregion", deflt);
 
     QImage *image = 0;
-
+    
     if (item == items[0]) {
-        image = pane->toNewImage();
+        image = pane->renderToNewImage();
     } else if (item == items[1]) {
-        image = pane->toNewImage(pane->getFirstVisibleFrame(),
-                                 pane->getLastVisibleFrame());
+        image = pane->renderPartToNewImage(pane->getFirstVisibleFrame(),
+                                           pane->getLastVisibleFrame());
     } else if (haveSelection) {
-        image = pane->toNewImage(sf0, sf1);
+        image = pane->renderPartToNewImage(sf0, sf1);
     }
-
+    
     if (!image) return;
-
+    
     if (!image->save(path, "PNG")) {
         QMessageBox::critical(this, tr("Failed to save image file"),
                               tr("Failed to save image file %1").arg(path));
@@ -2882,6 +2958,85 @@
 }
 
 void
+MainWindow::exportSVG()
+{
+    Pane *pane = m_paneStack->getCurrentPane();
+    if (!pane) return;
+    
+    QString path = getSaveFileName(FileFinder::SVGFile);
+    if (path == "") return;
+    if (QFileInfo(path).suffix() == "") path += ".svg";
+
+    bool haveSelection = m_viewManager && !m_viewManager->getSelections().empty();
+
+    sv_frame_t sf0 = 0, sf1 = 0;
+ 
+    if (haveSelection) {
+        MultiSelection::SelectionList selections = m_viewManager->getSelections();
+        sf0 = selections.begin()->getStartFrame();
+        MultiSelection::SelectionList::iterator e = selections.end();
+        --e;
+        sf1 = e->getEndFrame();
+    }
+
+    QStringList items;
+    items << tr("Export the whole pane");
+    items << tr("Export the visible area only");
+    items << tr("Export the selection extent");
+
+    QSettings settings;
+    settings.beginGroup("MainWindow");
+    int deflt = settings.value("lastsvgexportregion", 0).toInt();
+    if (deflt == 2 && !haveSelection) deflt = 1;
+
+    ListInputDialog *lid = new ListInputDialog
+        (this, tr("Select region to export"),
+         tr("Which region of the current pane do you want to export as a scalable SVG image?"),
+         items, deflt);
+
+    if (!haveSelection) {
+        lid->setItemAvailability(2, false);
+    }
+
+    bool ok = lid->exec();
+    QString item = lid->getCurrentString();
+    delete lid;
+	    
+    if (!ok || item.isEmpty()) return;
+
+    settings.setValue("lastsvgexportregion", deflt);
+
+    bool result = false;
+        
+    if (item == items[0]) {
+        result = pane->renderToSvgFile(path );
+    } else if (item == items[1]) {
+        result = pane->renderPartToSvgFile(path,
+                                           pane->getFirstVisibleFrame(),
+                                           pane->getLastVisibleFrame());
+    } else if (haveSelection) {
+        result = pane->renderPartToSvgFile(path, sf0, sf1);
+    }
+    
+    if (!result) {
+        QMessageBox::critical(this, tr("Failed to save SVG file"),
+                              tr("Failed to save SVG file %1").arg(path));
+    }
+}
+
+void
+MainWindow::browseRecordedAudio()
+{
+    if (!m_recordTarget) return;
+
+    QString path = m_recordTarget->getRecordContainerFolder();
+    if (path == "") path = m_recordTarget->getRecordFolder();
+    if (path == "") return;
+
+    openLocalFolder(path);
+}
+
+void
 MainWindow::newSession()
 {
     if (!checkSaveModified()) return;
@@ -3030,8 +3185,10 @@
 }
 
 void
-MainWindow::openRecentFile()
+MainWindow::openRecentFile(const QString& path)
 {
+   /* F. Nicol patch 13 Aug. 2016 */
+#if 0
     QObject *obj = sender();
     QAction *action = dynamic_cast<QAction *>(obj);
     
@@ -3042,6 +3199,9 @@
     }
 
     QString path = action->text();
+#endif
+   /* End of F. Nicol patch 13 Aug. 2016 */
+
     if (path == "") return;
 
     FileOpenStatus status = openPath(path, ReplaceSession);
@@ -3125,6 +3285,7 @@
                                      tr("<b>Template file exists</b><p>The template \"%1\" already exists.<br>Overwrite it?").arg(name),
                                      QMessageBox::Ok | QMessageBox::Cancel,
                                      QMessageBox::Cancel) != QMessageBox::Ok) {
+                delete d;
                 return;
             }
         }
@@ -3135,6 +3296,8 @@
             }
         }
     }
+
+    delete d;
 }
 
 void
@@ -3241,7 +3404,7 @@
     if (m_preferencesDialog &&
         m_preferencesDialog->isVisible()) {
         closeSession(); // otherwise we'll have to wait for prefs changes
-        m_preferencesDialog->applicationClosing(false);
+        m_preferencesDialog->applicationClosing(true);
     }
 
     closeSession();
@@ -3420,18 +3583,33 @@
 {
     MainWindowBase::preferenceChanged(name);
 
-    if (name == "Background Mode" && m_viewManager) {
-        if (m_viewManager->getGlobalDarkBackground()) {
-            m_panLayer->setBaseColour
-                (ColourDatabase::getInstance()->getColourIndex(tr("Bright Green")));
-        } else {
-            m_panLayer->setBaseColour
-                (ColourDatabase::getInstance()->getColourIndex(tr("Green")));
-        }      
+    if (name == "Background Mode") {
+        coloursChanged();
     }     
 }
 
 void
+MainWindow::coloursChanged()
+{
+    QSettings settings;
+    settings.beginGroup("Preferences");
+    QString defaultColourName(tr("Green"));
+    if (m_viewManager && m_viewManager->getGlobalDarkBackground()) {
+        defaultColourName = tr("Bright Green");
+    }
+    ColourDatabase *cdb = ColourDatabase::getInstance();
+    QColor colour = QColor
+        (settings.value("overview-colour",
+                        cdb->getColour(defaultColourName).name()).toString());
+    settings.endGroup();
+
+    int index = cdb->getColourIndex(colour);
+    if (index >= 0) {
+        m_panLayer->setBaseColour(index);
+    }
+}
+
+void
 MainWindow::propertyStacksResized(int width)
 {
 //    SVDEBUG << "MainWindow::propertyStacksResized(" << width << ")" << endl;
@@ -4059,10 +4237,9 @@
 }
 
 void
-MainWindow::outputLevelsChanged(float left, float right)
+MainWindow::monitoringLevelsChanged(float left, float right)
 {
-    m_fader->setPeakLeft(left);
-    m_fader->setPeakRight(right);
+    m_mainLevelPan->setMonitoringLevels(left, right);
 }
 
 void
@@ -4101,6 +4278,34 @@
 }
 
 void
+MainWindow::betaReleaseWarning()
+{
+    QMessageBox::information
+        (this, tr("Beta release"),
+         tr("<b>This is a beta release of Sonic Visualiser</b><p>Please see the \"What's New\" option in the Help menu for a list of changes since the last proper release.</p>"));
+}
+
+void
+MainWindow::pluginPopulationWarning()
+{
+    QString scanWarning = PluginScan::getInstance()->getStartupFailureReport();
+    QString factWarning = TransformFactory::getInstance()->getStartupFailureReport();
+    QString warning;
+    if (factWarning != "") {
+        // The order of events on startup implies that, if scanWarning
+        // and factWarning are both present, then we have already been
+        // called once for scanWarning so don't want to report it again
+        warning = factWarning;
+    } else if (scanWarning != "") {
+        warning = scanWarning;
+    }
+    if (warning != "") {
+        emit hideSplash();
+        QMessageBox::warning(this, tr("Problems loading plugins"), warning);
+    }
+}
+
+void
 MainWindow::midiEventsAvailable()
 {
     Pane *currentPane = 0;
@@ -4237,9 +4442,32 @@
 
     MainWindowBase::mainModelChanged(model);
 
+    if (m_playTarget || m_audioIO) {
+        connect(m_mainLevelPan, SIGNAL(levelChanged(float)),
+                this, SLOT(mainModelGainChanged(float)));
+        connect(m_mainLevelPan, SIGNAL(panChanged(float)),
+                this, SLOT(mainModelPanChanged(float)));
+    }
+}
+
+void
+MainWindow::mainModelGainChanged(float gain)
+{
     if (m_playTarget) {
-        connect(m_fader, SIGNAL(valueChanged(float)),
-                m_playTarget, SLOT(setOutputGain(float)));
+        m_playTarget->setOutputGain(gain);
+    } else if (m_audioIO) {
+        m_audioIO->setOutputGain(gain);
+    }
+}
+
+void
+MainWindow::mainModelPanChanged(float balance)
+{
+    // this is indeed stereo balance rather than pan
+    if (m_playTarget) {
+        m_playTarget->setOutputBalance(balance);
+    } else if (m_audioIO) {
+        m_audioIO->setOutputBalance(balance);
     }
 }
 
@@ -4304,6 +4532,50 @@
 }
 
 void
+MainWindow::subdivideInstants()
+{
+    QSettings settings;
+    settings.beginGroup("MainWindow");
+    int n = settings.value("subdivisions", 4).toInt();
+    
+    bool ok;
+
+    n = QInputDialog::getInt(this,
+                             tr("Subdivide instants"),
+                             tr("Number of subdivisions:"),
+                             n, 2, 96, 1, &ok);
+
+    if (ok) {
+        settings.setValue("subdivisions", n);
+        subdivideInstantsBy(n);
+    }
+
+    settings.endGroup();
+}
+
+void
+MainWindow::winnowInstants()
+{
+    QSettings settings;
+    settings.beginGroup("MainWindow");
+    int n = settings.value("winnow-subdivisions", 4).toInt();
+    
+    bool ok;
+
+    n = QInputDialog::getInt(this,
+                             tr("Winnow instants"),
+                             tr("Remove all instants apart from multiples of:"),
+                             n, 2, 96, 1, &ok);
+
+    if (ok) {
+        settings.setValue("winnow-subdivisions", n);
+        winnowInstantsBy(n);
+    }
+
+    settings.endGroup();
+}
+
+void
 MainWindow::modelGenerationFailed(QString transformName, QString message)
 {
     emit hideSplash();
@@ -4376,15 +4648,13 @@
 }
 
 void
-MainWindow::alignmentFailed(QString transformName, QString message)
+MainWindow::alignmentFailed(QString message)
 {
-    emit hideSplash();
-
     QMessageBox::warning
         (this,
          tr("Failed to calculate alignment"),
-         tr("<b>Alignment calculation failed</b><p>Failed to calculate an audio alignment using transform \"%1\":<p>%2")
-         .arg(transformName).arg(message),
+         tr("<b>Alignment calculation failed</b><p>Failed to calculate an audio alignment:<p>%1")
+         .arg(message),
          QMessageBox::Ok);
 }
 
@@ -4442,6 +4712,11 @@
 
     m_preferencesDialog = new PreferencesDialog(this);
 
+    connect(m_preferencesDialog, SIGNAL(audioDeviceChanged()),
+            this, SLOT(recreateAudioIO()));
+    connect(m_preferencesDialog, SIGNAL(coloursChanged()),
+            this, SLOT(coloursChanged()));
+    
     // DeleteOnClose is safe here, because m_preferencesDialog is a
     // QPointer that will be zeroed when the dialog is deleted.  We
     // use it in preference to leaving the dialog lying around because
@@ -4462,8 +4737,8 @@
     QWidget *w = dynamic_cast<QWidget *>(sender());
     if (!w) return;
 
-    if (w == m_fader) {
-        contextHelpChanged(tr("Adjust the master playback level"));
+    if (w == m_mainLevelPan) {
+        contextHelpChanged(tr("Adjust the master playback level and pan"));
     } else if (w == m_playSpeed) {
         contextHelpChanged(tr("Adjust the master playback speed"));
     }
@@ -4488,6 +4763,61 @@
 }
 
 void
+MainWindow::whatsNew()
+{
+    QFile changelog(":CHANGELOG");
+    changelog.open(QFile::ReadOnly);
+    QByteArray content = changelog.readAll();
+    QString text = QString::fromUtf8(content);
+
+    QDialog *d = new QDialog(this);
+    d->setWindowTitle(tr("What's New"));
+        
+    QGridLayout *layout = new QGridLayout;
+    d->setLayout(layout);
+
+    int row = 0;
+    
+    QLabel *iconLabel = new QLabel;
+    iconLabel->setPixmap(QApplication::windowIcon().pixmap(64, 64));
+    layout->addWidget(iconLabel, row, 0);
+    
+    layout->addWidget
+        (new QLabel(tr("<h3>What's New in %1</h3>")
+                    .arg(QApplication::applicationName())),
+         row++, 1);
+    layout->setColumnStretch(2, 10);
+
+    QTextEdit *textEdit = new QTextEdit;
+    layout->addWidget(textEdit, row++, 1, 1, 2);
+
+    if (m_newerVersionIs != "") {
+        layout->addWidget(new QLabel(tr("<b>Note:</b> A newer version of Sonic Visualiser is available.<br>(Version %1 is available; you are using version %2)").arg(m_newerVersionIs).arg(SV_VERSION)), row++, 1, 1, 2);
+    }
+    
+    QDialogButtonBox *bb = new QDialogButtonBox(QDialogButtonBox::Ok);
+    layout->addWidget(bb, row++, 0, 1, 3);
+    connect(bb, SIGNAL(accepted()), d, SLOT(accept()));
+
+    text.replace(QRegExp("(.)\n +(.)"), "\\1 \\2");
+    text.replace(QRegExp("\n - ([^\n]+)"), "\n<li>\\1</li>");
+    text.replace(QRegExp(": *\n"), ":\n<ul>\n");
+    text.replace(QRegExp("</li>\n\\s*\n"), "</li>\n</ul>\n\n");
+    text.replace(QRegExp("\n(\\w[^:\n]+:)"), "\n<p><b>\\1</b></p>");
+//    text.replace(QRegExp("<li>([^,.\n]+)([,.] +\\w)"), "<li><b>\\1</b>\\2");
+    
+    textEdit->setHtml(text);
+    textEdit->setReadOnly(true);
+
+    d->setMinimumSize(m_viewManager->scalePixelSize(520),
+                      m_viewManager->scalePixelSize(450));
+    
+    d->exec();
+
+    delete d;
+}
+
+void
 MainWindow::about()
 {
     bool debug = false;
@@ -4512,13 +4842,20 @@
 
     aboutText += tr("<h3>About Sonic Visualiser</h3>");
     aboutText += tr("<p>Sonic Visualiser is a program for viewing and exploring audio data for semantic music analysis and annotation.<br><a href=\"http://www.sonicvisualiser.org/\">http://www.sonicvisualiser.org/</a></p>");
-    aboutText += tr("<p><small>%1 : %2 configuration</small></p>")
+    aboutText += tr("<p><small>%1 : %2 configuration, %3-bit build</small></p>")
         .arg(version)
-        .arg(debug ? tr("Debug") : tr("Release"));
-
-    aboutText += "<small>";
-
-    aboutText += tr("With Qt v%1 &copy; Nokia Corporation").arg(QT_VERSION_STR);
+        .arg(debug ? tr("Debug") : tr("Release"))
+        .arg(sizeof(void *) * 8);
+
+    if (m_oscQueue && m_oscQueue->isOK()) {
+        aboutText += tr("</small><p><small>The OSC URL for this instance is: \"%1\"").arg(m_oscQueue->getOSCURL());
+    }
+
+    aboutText += "</small><p><small>";
+
+    aboutText += tr("With Qt v%1 &copy; The Qt Company").arg(QT_VERSION_STR);
+
+    aboutText += "</small><small>";
 
 #ifdef HAVE_JACK
 #ifdef JACK_VERSION
@@ -4574,14 +4911,12 @@
 #endif // HAVE_FFTW3F
 #ifdef HAVE_RUBBERBAND
 #ifdef RUBBERBAND_VERSION
-    aboutText += tr("<br>With Rubber Band v%1 &copy; Chris Cannam").arg(RUBBERBAND_VERSION);
+    aboutText += tr("<br>With Rubber Band Library v%1 &copy; Particular Programs Ltd").arg(RUBBERBAND_VERSION);
 #else // !RUBBERBAND_VERSION
-    aboutText += tr("<br>With Rubber Band &copy; Chris Cannam");
+    aboutText += tr("<br>With Rubber Band Library &copy; Particular Programs Ltd");
 #endif // RUBBERBAND_VERSION
 #endif // HAVE_RUBBERBAND
-#ifdef HAVE_VAMP
-    aboutText += tr("<br>With Vamp plugin support (API v%1, host SDK v%2) &copy; Chris Cannam").arg(VAMP_API_VERSION).arg(VAMP_SDK_VERSION);
-#endif // !HAVE_VAMP
+    aboutText += tr("<br>With Vamp plugin support (API v%1, host SDK v%2) &copy; Chris Cannam and QMUL").arg(VAMP_API_VERSION).arg(VAMP_SDK_VERSION);
     aboutText += tr("<br>With LADSPA plugin support (API v%1) &copy; Richard Furse, Paul Davis, Stefan Westerfeld").arg(LADSPA_VERSION);
     aboutText += tr("<br>With DSSI plugin support (API v%1) &copy; Chris Cannam, Steve Harris, Sean Bolton").arg(DSSI_VERSION);
 #ifdef REDLAND_VERSION
@@ -4590,8 +4925,8 @@
     aboutText += tr("<br>With Redland RDF datastore &copy; Dave Beckett and the University of Bristol");
 #endif // REDLAND_VERSION
     aboutText += tr("<br>With Serd and Sord RDF parser and store &copy; David Robillard");
-    aboutText += tr("<br>With Dataquay Qt/RDF library &copy; Chris Cannam");
-
+    aboutText += tr("<br>With Dataquay Qt/RDF library &copy; Particular Programs Ltd");
+    aboutText += tr("<br>With Cap'n Proto serialisation &copy; Sandstorm Development Group");
     aboutText += tr("<br>With RtMidi &copy; Gary P. Scavone");
 
 #ifdef HAVE_LIBLO
@@ -4601,27 +4936,73 @@
     aboutText += tr("<br>With liblo Lite OSC library &copy; Steve Harris");
 #endif // LIBLO_VERSION
 
-    if (m_oscQueue && m_oscQueue->isOK()) {
-        aboutText += tr("</small><p><small>The OSC URL for this instance is: \"%1\"").arg(m_oscQueue->getOSCURL());
-    }
-
     aboutText += "</small></p>";
 #endif // HAVE_LIBLO
 
-#ifndef BUILD_STATIC
-    aboutText.replace(tr("With "), tr("Using "));
-#endif
-
     aboutText += 
-        "<p><small>Sonic Visualiser Copyright &copy; 2005&ndash;2015 Chris Cannam and "
+        "<p><small>Sonic Visualiser Copyright &copy; 2005&ndash;2017 Chris Cannam and "
         "Queen Mary, University of London.</small></p>"
         "<p><small>This program is free software; you can redistribute it and/or "
         "modify it under the terms of the GNU General Public License as "
         "published by the Free Software Foundation; either version 2 of the "
         "License, or (at your option) any later version.<br>See the file "
         "COPYING included with this distribution for more information.</small></p>";
+
+    // use our own dialog so we can influence the size
+
+    QDialog *d = new QDialog(this);
+
+    d->setWindowTitle(tr("About %1").arg(QApplication::applicationName()));
+        
+    QGridLayout *layout = new QGridLayout;
+    d->setLayout(layout);
+
+    int row = 0;
     
-    QMessageBox::about(this, tr("About Sonic Visualiser"), aboutText);
+    QLabel *iconLabel = new QLabel;
+    iconLabel->setPixmap(QApplication::windowIcon().pixmap(64, 64));
+    layout->addWidget(iconLabel, row, 0, Qt::AlignTop);
+
+    QLabel *mainText = new QLabel();
+    layout->addWidget(mainText, row, 1, 1, 2);
+
+    layout->setRowStretch(row, 10);
+    layout->setColumnStretch(1, 10);
+
+    ++row;
+
+    QDialogButtonBox *bb = new QDialogButtonBox(QDialogButtonBox::Ok);
+    layout->addWidget(bb, row++, 0, 1, 3);
+    connect(bb, SIGNAL(accepted()), d, SLOT(accept()));
+
+//    mainText->setHtml(aboutText);
+//    mainText->setReadOnly(true);
+    mainText->setWordWrap(true);
+    mainText->setOpenExternalLinks(true);
+    mainText->setText(aboutText);
+
+    d->setMinimumSize(m_viewManager->scalePixelSize(420),
+                      m_viewManager->scalePixelSize(200));
+    
+    d->exec();
+
+    delete d;
+    /*
+    QMessageBox about(QMessageBox::Information, 
+                      tr("About Sonic Visualiser"),
+                      aboutText,
+                      QMessageBox::StandardButtons(QMessageBox::Ok),
+                      this);
+
+    QIcon icon = QApplication::windowIcon();
+    QSize size = icon.actualSize(QSize(64, 64));
+    about.setIconPixmap(icon.pixmap(size));
+
+    about.setMinimumSize(m_viewManager->scalePixelSize(400),
+                         m_viewManager->scalePixelSize(400));
+
+    about.exec();
+    */
 }
 
 void
@@ -4633,6 +5014,8 @@
 void
 MainWindow::newerVersionAvailable(QString version)
 {
+    m_newerVersionIs = version;
+    
     QSettings settings;
     settings.beginGroup("NewerVersionWarning");
     QString tag = QString("version-%1-available-show").arg(version);
--- a/main/MainWindow.h	Tue Jan 10 16:10:33 2017 +0000
+++ b/main/MainWindow.h	Tue Jan 10 16:21:32 2017 +0000
@@ -32,8 +32,7 @@
     Q_OBJECT
 
 public:
-    MainWindow(bool withAudioOutput = true,
-               bool withOSCSupport = true);
+    MainWindow(SoundOptions options, bool withOSCSupport = true);
     virtual ~MainWindow();
 
 signals:
@@ -42,6 +41,8 @@
 
 public slots:
     virtual void preferenceChanged(PropertyContainer::PropertyName);
+    virtual void coloursChanged();
+
     virtual bool commitData(bool mayAskUser);
 
     void goFullScreen();
@@ -53,13 +54,17 @@
     virtual void replaceMainAudio();
     virtual void openSomething();
     virtual void openLocation();
-    virtual void openRecentFile();
+       /* F. Nicol patch 13 Aug. 2016 */
+    virtual void openRecentFile(const QString& );
+       /* End of F. Nicol patch 13 Aug. 2016 */
     virtual void applyTemplate();
     virtual void exportAudio();
     virtual void exportAudioData();
     virtual void importLayer();
     virtual void exportLayer();
     virtual void exportImage();
+    virtual void exportSVG();
+    virtual void browseRecordedAudio();
     virtual void saveSession();
     virtual void saveSessionAs();
     virtual void newSession();
@@ -88,12 +93,14 @@
     virtual void setInstantsCounterCycle();
     virtual void setInstantsCounters();
     virtual void resetInstantsCounters();
+    virtual void subdivideInstants();
+    virtual void winnowInstants();
 
     virtual void modelGenerationFailed(QString, QString);
     virtual void modelGenerationWarning(QString, QString);
     virtual void modelRegenerationFailed(QString, QString, QString);
     virtual void modelRegenerationWarning(QString, QString, QString);
-    virtual void alignmentFailed(QString, QString);
+    virtual void alignmentFailed(QString);
 
     virtual void rightButtonMenuRequested(Pane *, QPoint point);
 
@@ -126,12 +133,14 @@
     virtual void slowDownPlayback();
     virtual void restoreNormalPlayback();
 
-    virtual void outputLevelsChanged(float, float);
+    virtual void monitoringLevelsChanged(float, float);
 
     virtual void layerRemoved(Layer *);
     virtual void layerInAView(Layer *, bool);
 
     virtual void mainModelChanged(WaveFileModel *);
+    virtual void mainModelGainChanged(float);
+    virtual void mainModelPanChanged(float);
     virtual void modelAdded(Model *);
     virtual void modelAboutToBeDeleted(Model *);
 
@@ -146,18 +155,22 @@
     virtual void midiEventsAvailable();
     virtual void playStatusChanged(bool);
 
+    virtual void betaReleaseWarning();
+    virtual void pluginPopulationWarning();
+
     virtual void saveSessionAsTemplate();
     virtual void manageSavedTemplates();
 
     virtual void website();
     virtual void help();
     virtual void about();
+    virtual void whatsNew();
     virtual void keyReference();
     virtual void newerVersionAvailable(QString);
 
 protected:
     Overview                *m_overview;
-    Fader                   *m_fader;
+    LevelPanToolButton      *m_mainLevelPan;
     AudioDial               *m_playSpeed;
     WaveformLayer           *m_panLayer;
     
@@ -187,6 +200,7 @@
     QAction                 *m_ffwdSimilarAction;
     QAction                 *m_ffwdEndAction;
     QAction                 *m_playAction;
+    QAction                 *m_recordAction;
     QAction                 *m_playSelectionAction;
     QAction                 *m_playLoopAction;
     QAction                 *m_manageTemplatesAction;
@@ -217,6 +231,7 @@
 
     Surveyer                *m_surveyer;
     VersionTester           *m_versionTester;
+    QString                  m_newerVersionIs;
 
     struct LayerConfiguration {
 	LayerConfiguration(LayerFactory::LayerType _layer
--- a/main/OSCHandler.cpp	Tue Jan 10 16:10:33 2017 +0000
+++ b/main/OSCHandler.cpp	Tue Jan 10 16:21:32 2017 +0000
@@ -22,14 +22,16 @@
 #include "view/PaneStack.h"
 #include "data/model/WaveFileModel.h"
 #include "widgets/CommandHistory.h"
-#include "audioio/AudioCallbackPlaySource.h"
-#include "audioio/AudioCallbackPlayTarget.h"
+#include "audio/AudioCallbackPlaySource.h"
 #include "framework/Document.h"
 #include "data/fileio/WavFileWriter.h"
 #include "transform/TransformFactory.h"
-#include "widgets/Fader.h"
+#include "widgets/LevelPanWidget.h"
+#include "widgets/LevelPanToolButton.h"
 #include "widgets/AudioDial.h"
 
+#include <bqaudioio/SystemPlaybackTarget.h>
+
 #include <QFileInfo>
 
 void
@@ -341,7 +343,7 @@
 
             if (property == "gain") {
                 if (value < 0.0) value = 0.0;
-                m_fader->setValue(value);
+                m_mainLevelPan->setLevel(value);
                 if (m_playTarget) m_playTarget->setOutputGain(value);
             } else if (property == "speedup") {
                 m_playSpeed->setMappedValue(value);
--- a/main/PreferencesDialog.cpp	Tue Jan 10 16:10:33 2017 +0000
+++ b/main/PreferencesDialog.cpp	Tue Jan 10 16:21:32 2017 +0000
@@ -38,15 +38,26 @@
 
 #include "widgets/WindowTypeSelector.h"
 #include "widgets/IconLoader.h"
+#include "widgets/ColourMapComboBox.h"
+#include "widgets/ColourComboBox.h"
 #include "base/Preferences.h"
-#include "audioio/AudioTargetFactory.h"
 #include "base/ResourceFinder.h"
+#include "layer/ColourMapper.h"
+#include "layer/ColourDatabase.h"
+
+#include "bqaudioio/AudioFactory.h"
 
 #include "version.h"
 
+using namespace std;
+
 PreferencesDialog::PreferencesDialog(QWidget *parent) :
     QDialog(parent),
-    m_audioDevice(0),
+    m_audioImplementation(0),
+    m_audioPlaybackDevice(0),
+    m_audioRecordDevice(0),
+    m_audioDeviceChanged(false),
+    m_coloursChanged(false),
     m_changesOnRestart(false)
 {
     setWindowTitle(tr("Sonic Visualiser: Application Preferences"));
@@ -78,6 +89,13 @@
     connect(m_windowTypeSelector, SIGNAL(windowTypeChanged(WindowType)),
             this, SLOT(windowTypeChanged(WindowType)));
 
+    QCheckBox *vampProcessSeparation = new QCheckBox;
+    m_runPluginsInProcess = prefs->getRunPluginsInProcess();
+    vampProcessSeparation->setCheckState(m_runPluginsInProcess ? Qt::Unchecked :
+                                         Qt::Checked);
+    connect(vampProcessSeparation, SIGNAL(stateChanged(int)),
+            this, SLOT(vampProcessSeparationChanged(int)));
+    
     QComboBox *smoothing = new QComboBox;
     
     int sm = prefs->getPropertyRangeAndValue("Spectrogram Y Smoothing", &min, &max,
@@ -122,6 +140,50 @@
     connect(propertyLayout, SIGNAL(currentIndexChanged(int)),
             this, SLOT(propertyLayoutChanged(int)));
 
+    QSettings settings;
+    settings.beginGroup("Preferences");
+    m_spectrogramGColour = (settings.value("spectrogram-colour",
+                                           int(ColourMapper::Green)).toInt());
+    m_spectrogramMColour = (settings.value("spectrogram-melodic-colour",
+                                           int(ColourMapper::Sunset)).toInt());
+    m_colour3DColour = (settings.value("colour-3d-plot-colour",
+                                       int(ColourMapper::Green)).toInt());
+    m_overviewColour = ColourDatabase::getInstance()->getColour(tr("Green"));
+    if (settings.contains("overview-colour")) {
+        QString qcolorName =
+            settings.value("overview-colour", m_overviewColour.name())
+            .toString();
+        m_overviewColour.setNamedColor(qcolorName);
+        cerr << "loaded colour " << m_overviewColour.name() << " from settings" << endl;
+    }
+    settings.endGroup();
+
+    ColourMapComboBox *spectrogramGColour = new ColourMapComboBox(true);
+    spectrogramGColour->setCurrentIndex(m_spectrogramGColour);
+
+    ColourMapComboBox *spectrogramMColour = new ColourMapComboBox(true);
+    spectrogramMColour->setCurrentIndex(m_spectrogramMColour);
+
+    ColourMapComboBox *colour3DColour = new ColourMapComboBox(true);
+    colour3DColour->setCurrentIndex(m_colour3DColour);
+
+    // can't have "add new colour", as it gets saved in the session not in prefs
+    ColourComboBox *overviewColour = new ColourComboBox(false);
+    int overviewColourIndex =
+        ColourDatabase::getInstance()->getColourIndex(m_overviewColour);
+    cerr << "index = " << overviewColourIndex << " for colour " << m_overviewColour.name() << endl;
+    if (overviewColourIndex >= 0) {
+        overviewColour->setCurrentIndex(overviewColourIndex);
+    }
+
+    connect(spectrogramGColour, SIGNAL(colourMapChanged(int)),
+            this, SLOT(spectrogramGColourChanged(int)));
+    connect(spectrogramMColour, SIGNAL(colourMapChanged(int)),
+            this, SLOT(spectrogramMColourChanged(int)));
+    connect(colour3DColour, SIGNAL(colourMapChanged(int)),
+            this, SLOT(colour3DColourChanged(int)));
+    connect(overviewColour, SIGNAL(colourChanged(int)),
+            this, SLOT(overviewColourChanged(int)));
 
     m_tuningFrequency = prefs->getTuningFrequency();
 
@@ -149,38 +211,47 @@
     connect(octaveSystem, SIGNAL(currentIndexChanged(int)),
             this, SLOT(octaveSystemChanged(int)));
 
-    QComboBox *audioDevice = new QComboBox;
-    std::vector<QString> devices =
-        AudioTargetFactory::getInstance()->getCallbackTargetNames();
+    settings.beginGroup("Preferences");
+
+    QComboBox *audioImplementation = new QComboBox;
+    connect(audioImplementation, SIGNAL(currentIndexChanged(int)),
+            this, SLOT(audioImplementationChanged(int)));
+
+    m_audioPlaybackDeviceCombo = new QComboBox;
+    connect(m_audioPlaybackDeviceCombo, SIGNAL(currentIndexChanged(int)),
+            this, SLOT(audioPlaybackDeviceChanged(int)));
+
+    m_audioRecordDeviceCombo = new QComboBox;
+    connect(m_audioRecordDeviceCombo, SIGNAL(currentIndexChanged(int)),
+            this, SLOT(audioRecordDeviceChanged(int)));
+
+    vector<string> implementationNames =
+        breakfastquay::AudioFactory::getImplementationNames();
+
+    QString implementationName = settings.value("audio-target", "").toString();
+    if (implementationName == "auto") implementationName = "";
+    if (implementationName == "" && implementationNames.size() == 1) {
+        // We won't be showing the implementations menu in this case
+        implementationName = implementationNames[0].c_str();
+    }
+
+    audioImplementation->addItem(tr("(auto)"));
+    m_audioImplementation = 0;
+
+    for (int i = 0; in_range_for(implementationNames, i); ++i) {
+        audioImplementation->addItem
+            (breakfastquay::AudioFactory::getImplementationDescription
+             (implementationNames[i]).c_str());
+        if (implementationName.toStdString() == implementationNames[i]) {
+            audioImplementation->setCurrentIndex(i+1);
+            m_audioImplementation = i+1;
+        }
+    }
     
-    QSettings settings;
-    settings.beginGroup("Preferences");
-    QString targetName = settings.value("audio-target", "").toString();
     settings.endGroup();
 
-    for (int i = 0; i < (int)devices.size(); ++i) {
-        audioDevice->addItem(AudioTargetFactory::getInstance()
-                             ->getCallbackTargetDescription(devices[i]));
-        if (targetName == devices[i]) audioDevice->setCurrentIndex(i);
-    }
-
-    connect(audioDevice, SIGNAL(currentIndexChanged(int)),
-            this, SLOT(audioDeviceChanged(int)));
-
-    QComboBox *resampleQuality = new QComboBox;
-
-    int rsq = prefs->getPropertyRangeAndValue("Resample Quality", &min, &max,
-                                              &deflt);
-    m_resampleQuality = rsq;
-
-    for (i = min; i <= max; ++i) {
-        resampleQuality->addItem(prefs->getPropertyValueLabel("Resample Quality", i));
-    }
-
-    resampleQuality->setCurrentIndex(rsq);
-
-    connect(resampleQuality, SIGNAL(currentIndexChanged(int)),
-            this, SLOT(resampleQualityChanged(int)));
+    rebuildDeviceCombos();
+    m_audioDeviceChanged = false; // the rebuild will have changed this
 
     QCheckBox *resampleOnLoad = new QCheckBox;
     m_resampleOnLoad = prefs->getResampleOnLoad();
@@ -189,6 +260,12 @@
     connect(resampleOnLoad, SIGNAL(stateChanged(int)),
             this, SLOT(resampleOnLoadChanged(int)));
 
+    QCheckBox *gaplessMode = new QCheckBox;
+    m_gapless = prefs->getUseGaplessMode();
+    gaplessMode->setCheckState(m_gapless ? Qt::Checked : Qt::Unchecked);
+    connect(gaplessMode, SIGNAL(stateChanged(int)),
+            this, SLOT(gaplessModeChanged(int)));
+
     m_tempDirRootEdit = new QLineEdit;
     QString dir = prefs->getTemporaryDirectoryRoot();
     m_tempDirRoot = dir;
@@ -207,7 +284,7 @@
     connect(showSplash, SIGNAL(stateChanged(int)),
             this, SLOT(showSplashChanged(int)));
 
-#ifndef Q_OS_MAC
+#ifdef NOT_DEFINED // This no longer works correctly on any platform AFAICS
     QComboBox *bgMode = new QComboBox;
     int bg = prefs->getPropertyRangeAndValue("Background Mode", &min, &max,
                                              &deflt);
@@ -223,6 +300,15 @@
 
     settings.beginGroup("Preferences");
 
+#ifdef Q_OS_MAC
+    m_retina = settings.value("scaledHiDpi", true).toBool();
+    QCheckBox *retina = new QCheckBox;
+    retina->setCheckState(m_retina ? Qt::Checked : Qt::Unchecked);
+    connect(retina, SIGNAL(stateChanged(int)), this, SLOT(retinaChanged(int)));
+#else
+    m_retina = false;
+#endif
+
     QString userLocale = settings.value("locale", "").toString();
     m_currentLocale = userLocale;
     
@@ -298,49 +384,11 @@
     hms->setCheckState(m_showHMS ? Qt::Checked : Qt::Unchecked);
     connect(hms, SIGNAL(stateChanged(int)),
             this, SLOT(showHMSChanged(int)));
-    
-    // General tab
 
-    QFrame *frame = new QFrame;
-    
-    QGridLayout *subgrid = new QGridLayout;
-    frame->setLayout(subgrid);
-
+    QFrame *frame = 0;
+    QGridLayout *subgrid = 0;
     int row = 0;
 
-    subgrid->addWidget(new QLabel(tr("%1:").arg(tr("User interface language"))),
-                       row, 0);
-    subgrid->addWidget(locale, row++, 1, 1, 1);
-
-    subgrid->addWidget(new QLabel(tr("%1:").arg(tr("Allow network usage"))),
-                       row, 0);
-    subgrid->addWidget(networkPermish, row++, 1, 1, 1);
-
-    subgrid->addWidget(new QLabel(tr("%1:").arg(prefs->getPropertyLabel
-                                                ("Temporary Directory Root"))),
-                       row, 0);
-    subgrid->addWidget(m_tempDirRootEdit, row, 1, 1, 1);
-    subgrid->addWidget(tempDirButton, row, 2, 1, 1);
-    row++;
-
-    subgrid->addWidget(new QLabel(tr("%1:").arg(prefs->getPropertyLabel
-                                                ("Resample On Load"))),
-                       row, 0);
-    subgrid->addWidget(resampleOnLoad, row++, 1, 1, 1);
-
-    subgrid->addWidget(new QLabel(tr("Playback audio device:")), row, 0);
-    subgrid->addWidget(audioDevice, row++, 1, 1, 2);
-
-    subgrid->addWidget(new QLabel(tr("%1:").arg(prefs->getPropertyLabel
-                                                ("Resample Quality"))),
-                       row, 0);
-    subgrid->addWidget(resampleQuality, row++, 1, 1, 2);
-
-    subgrid->setRowStretch(row, 10);
-    
-    m_tabOrdering[GeneralTab] = m_tabs->count();
-    m_tabs->addTab(frame, tr("&General"));
-
     // Appearance tab
 
     frame = new QFrame;
@@ -348,17 +396,35 @@
     frame->setLayout(subgrid);
     row = 0;
 
-    subgrid->addWidget(new QLabel(tr("%1:").arg(prefs->getPropertyLabel
-                                                ("Show Splash Screen"))),
-                       row, 0);
-    subgrid->addWidget(showSplash, row++, 1, 1, 1);
+#ifdef Q_OS_MAC
+    if (devicePixelRatio() > 1) {
+        subgrid->addWidget(new QLabel(tr("Draw layers at Retina resolution:")), row, 0);
+        subgrid->addWidget(retina, row++, 1, 1, 1);
+    }
+#endif
 
     subgrid->addWidget(new QLabel(tr("%1:").arg(prefs->getPropertyLabel
                                                 ("Property Box Layout"))),
                        row, 0);
     subgrid->addWidget(propertyLayout, row++, 1, 1, 2);
 
-#ifndef Q_OS_MAC
+    subgrid->addWidget(new QLabel(tr("Default spectrogram colour:")),
+                       row, 0);
+    subgrid->addWidget(spectrogramGColour, row++, 1, 1, 2);
+
+    subgrid->addWidget(new QLabel(tr("Default melodic spectrogram colour:")),
+                       row, 0);
+    subgrid->addWidget(spectrogramMColour, row++, 1, 1, 2);
+
+    subgrid->addWidget(new QLabel(tr("Default colour 3D plot colour:")),
+                       row, 0);
+    subgrid->addWidget(colour3DColour, row++, 1, 1, 2);
+
+    subgrid->addWidget(new QLabel(tr("Overview waveform colour:")),
+                       row, 0);
+    subgrid->addWidget(overviewColour, row++, 1, 1, 2);
+
+#ifdef NOT_DEFINED // see earlier
     subgrid->addWidget(new QLabel(tr("%1:").arg(prefs->getPropertyLabel
                                                 ("Background Mode"))),
                        row, 0);
@@ -416,8 +482,13 @@
                                                 ("Window Type"))),
                        row, 0);
     subgrid->addWidget(m_windowTypeSelector, row++, 1, 2, 2);
+
     subgrid->setRowStretch(row, 10);
     row++;
+
+    subgrid->addWidget(new QLabel(tr("Run Vamp plugins in separate process:")),
+                       row, 0);
+    subgrid->addWidget(vampProcessSeparation, row++, 1, 1, 1);
     
     subgrid->setRowStretch(row, 10);
     
@@ -431,13 +502,17 @@
     frame->setLayout(subgrid);
     row = 0;
     
-    subgrid->addWidget(new QLabel(tr("Default session template for audio files:")), row++, 0);
+    subgrid->addWidget(new QLabel(tr("Default session template when loading audio files:")), row++, 0);
 
     QListWidget *lw = new QListWidget();
     subgrid->addWidget(lw, row, 0);
     subgrid->setRowStretch(row, 10);
     row++;
 
+    subgrid->addWidget(new QLabel(tr("(Use \"%1\" in the File menu to add to these.)")
+                                  .arg(tr("Export Session as Template..."))),
+                       row++, 0);
+
     settings.beginGroup("MainWindow");
     m_currentTemplate = settings.value("sessiontemplate", "").toString();
     settings.endGroup();
@@ -450,7 +525,7 @@
 
     QStringList templates = ResourceFinder().getResourceFiles("templates", "svt");
 
-    std::set<QString> byName;
+    set<QString> byName;
     foreach (QString t, templates) {
         byName.insert(QFileInfo(t).baseName());
     }
@@ -469,6 +544,71 @@
     m_tabOrdering[TemplateTab] = m_tabs->count();
     m_tabs->addTab(frame, tr("Session &Template"));
 
+    // Audio IO tab
+
+    frame = new QFrame;
+    subgrid = new QGridLayout;
+    frame->setLayout(subgrid);
+    row = 0;
+
+    if (implementationNames.size() > 1) {
+        subgrid->addWidget(new QLabel(tr("Audio service:")), row, 0);
+        subgrid->addWidget(audioImplementation, row++, 1, 1, 2);
+    }
+
+    subgrid->addWidget(new QLabel(tr("Audio playback device:")), row, 0);
+    subgrid->addWidget(m_audioPlaybackDeviceCombo, row++, 1, 1, 2);
+
+    subgrid->addWidget(new QLabel(tr("Audio record device:")), row, 0);
+    subgrid->addWidget(m_audioRecordDeviceCombo, row++, 1, 1, 2);
+
+    subgrid->addWidget(new QLabel(tr("%1:").arg(prefs->getPropertyLabel
+                                                ("Use Gapless Mode"))),
+                       row, 0);
+    subgrid->addWidget(gaplessMode, row++, 1, 1, 1);
+
+    subgrid->addWidget(new QLabel(tr("%1:").arg(prefs->getPropertyLabel
+                                                ("Resample On Load"))),
+                       row, 0);
+    subgrid->addWidget(resampleOnLoad, row++, 1, 1, 1);
+
+    subgrid->setRowStretch(row, 10);
+    
+    m_tabOrdering[AudioIOTab] = m_tabs->count();
+    m_tabs->addTab(frame, tr("A&udio I/O"));
+ 
+    // General tab
+
+    frame = new QFrame;
+    subgrid = new QGridLayout;
+    frame->setLayout(subgrid);
+    row = 0;
+
+    subgrid->addWidget(new QLabel(tr("%1:").arg(tr("User interface language"))),
+                       row, 0);
+    subgrid->addWidget(locale, row++, 1, 1, 1);
+
+    subgrid->addWidget(new QLabel(tr("%1:").arg(tr("Allow network usage"))),
+                       row, 0);
+    subgrid->addWidget(networkPermish, row++, 1, 1, 1);
+
+    subgrid->addWidget(new QLabel(tr("%1:").arg(prefs->getPropertyLabel
+                                                ("Show Splash Screen"))),
+                       row, 0);
+    subgrid->addWidget(showSplash, row++, 1, 1, 1);
+
+    subgrid->addWidget(new QLabel(tr("%1:").arg(prefs->getPropertyLabel
+                                                ("Temporary Directory Root"))),
+                       row, 0);
+    subgrid->addWidget(m_tempDirRootEdit, row, 1, 1, 1);
+    subgrid->addWidget(tempDirButton, row, 2, 1, 1);
+    row++;
+    
+    subgrid->setRowStretch(row, 10);
+    
+    m_tabOrdering[GeneralTab] = m_tabs->count();
+    m_tabs->addTab(frame, tr("&Other"));
+
     QDialogButtonBox *bb = new QDialogButtonBox(Qt::Horizontal);
     grid->addWidget(bb, 1, 0);
     
@@ -490,6 +630,57 @@
 }
 
 void
+PreferencesDialog::rebuildDeviceCombos()
+{
+    QSettings settings;
+    settings.beginGroup("Preferences");
+
+    vector<string> names = breakfastquay::AudioFactory::getImplementationNames();
+    string implementationName;
+    
+    if (in_range_for(names, m_audioImplementation-1)) {
+        implementationName = names[m_audioImplementation-1];
+    }
+
+    QString suffix;
+    if (implementationName != "") {
+        suffix = "-" + QString(implementationName.c_str());
+    }
+    
+    names = breakfastquay::AudioFactory::getPlaybackDeviceNames(implementationName);
+    QString playbackDeviceName = settings.value
+        ("audio-playback-device" + suffix, "").toString();
+    m_audioPlaybackDeviceCombo->clear();
+    m_audioPlaybackDeviceCombo->addItem(tr("(auto)"));
+    m_audioPlaybackDeviceCombo->setCurrentIndex(0);
+    m_audioPlaybackDevice = 0;
+    for (int i = 0; in_range_for(names, i); ++i) {
+        m_audioPlaybackDeviceCombo->addItem(names[i].c_str());
+        if (playbackDeviceName.toStdString() == names[i]) {
+            m_audioPlaybackDeviceCombo->setCurrentIndex(i+1);
+            m_audioPlaybackDevice = i+1;
+        }
+    }
+    
+    names = breakfastquay::AudioFactory::getRecordDeviceNames(implementationName);
+    QString recordDeviceName = settings.value
+        ("audio-record-device" + suffix, "").toString();
+    m_audioRecordDeviceCombo->clear();
+    m_audioRecordDeviceCombo->addItem(tr("(auto)"));
+    m_audioRecordDeviceCombo->setCurrentIndex(0);
+    m_audioRecordDevice = 0;
+    for (int i = 0; in_range_for(names, i); ++i) {
+        m_audioRecordDeviceCombo->addItem(names[i].c_str());
+        if (recordDeviceName.toStdString() == names[i]) {
+            m_audioRecordDeviceCombo->setCurrentIndex(i+1);
+            m_audioRecordDevice = i+1;
+        }
+    }
+
+    settings.endGroup();
+}
+
+void
 PreferencesDialog::switchToTab(Tab t)
 {
     if (m_tabOrdering.contains(t)) {
@@ -519,6 +710,38 @@
 }
 
 void
+PreferencesDialog::spectrogramGColourChanged(int colour)
+{
+    m_spectrogramGColour = colour;
+    m_coloursChanged = true;
+    m_applyButton->setEnabled(true);
+}
+
+void
+PreferencesDialog::spectrogramMColourChanged(int colour)
+{
+    m_spectrogramMColour = colour;
+    m_coloursChanged = true;
+    m_applyButton->setEnabled(true);
+}
+
+void
+PreferencesDialog::colour3DColourChanged(int colour)
+{
+    m_colour3DColour = colour;
+    m_coloursChanged = true;
+    m_applyButton->setEnabled(true);
+}
+
+void
+PreferencesDialog::overviewColourChanged(int colour)
+{
+    m_overviewColour = ColourDatabase::getInstance()->getColour(colour);
+    m_coloursChanged = true;
+    m_applyButton->setEnabled(true);
+}
+
+void
 PreferencesDialog::propertyLayoutChanged(int layout)
 {
     m_propertyLayout = layout;
@@ -533,18 +756,34 @@
 }
 
 void
-PreferencesDialog::audioDeviceChanged(int s)
+PreferencesDialog::audioImplementationChanged(int s)
 {
-    m_audioDevice = s;
-    m_applyButton->setEnabled(true);
-    m_changesOnRestart = true;
+    if (m_audioImplementation != s) {
+        m_audioImplementation = s;
+        rebuildDeviceCombos();
+        m_applyButton->setEnabled(true);
+        m_audioDeviceChanged = true;
+    }
 }
 
 void
-PreferencesDialog::resampleQualityChanged(int q)
+PreferencesDialog::audioPlaybackDeviceChanged(int s)
 {
-    m_resampleQuality = q;
-    m_applyButton->setEnabled(true);
+    if (m_audioPlaybackDevice != s) {
+        m_audioPlaybackDevice = s;
+        m_applyButton->setEnabled(true);
+        m_audioDeviceChanged = true;
+    }
+}
+
+void
+PreferencesDialog::audioRecordDeviceChanged(int s)
+{
+    if (m_audioRecordDevice != s) {
+        m_audioRecordDevice = s;
+        m_applyButton->setEnabled(true);
+        m_audioDeviceChanged = true;
+    }
 }
 
 void
@@ -556,6 +795,21 @@
 }
 
 void
+PreferencesDialog::gaplessModeChanged(int state)
+{
+    m_gapless = (state == Qt::Checked);
+    m_applyButton->setEnabled(true);
+}
+
+void
+PreferencesDialog::vampProcessSeparationChanged(int state)
+{
+    m_runPluginsInProcess = (state == Qt::Unchecked);
+    m_applyButton->setEnabled(true);
+    m_changesOnRestart = true;
+}
+
+void
 PreferencesDialog::networkPermissionChanged(int state)
 {
     m_networkPermission = (state == Qt::Checked);
@@ -564,6 +818,14 @@
 }
 
 void
+PreferencesDialog::retinaChanged(int state)
+{
+    m_retina = (state == Qt::Checked);
+    m_applyButton->setEnabled(true);
+    // Does not require a restart
+}
+
+void
 PreferencesDialog::showSplashChanged(int state)
 {
     m_showSplash = (state == Qt::Checked);
@@ -660,8 +922,9 @@
     prefs->setPropertyBoxLayout(Preferences::PropertyBoxLayout
                                 (m_propertyLayout));
     prefs->setTuningFrequency(m_tuningFrequency);
-    prefs->setResampleQuality(m_resampleQuality);
     prefs->setResampleOnLoad(m_resampleOnLoad);
+    prefs->setUseGaplessMode(m_gapless);
+    prefs->setRunPluginsInProcess(m_runPluginsInProcess);
     prefs->setShowSplash(m_showSplash);
     prefs->setTemporaryDirectoryRoot(m_tempDirRoot);
     prefs->setBackgroundMode(Preferences::BackgroundMode(m_backgroundMode));
@@ -671,15 +934,54 @@
     
     prefs->setProperty("Octave Numbering System", m_octaveSystem);
 
-    std::vector<QString> devices =
-        AudioTargetFactory::getInstance()->getCallbackTargetNames();
-
     QSettings settings;
     settings.beginGroup("Preferences");
     QString permishTag = QString("network-permission-%1").arg(SV_VERSION);
     settings.setValue(permishTag, m_networkPermission);
-    settings.setValue("audio-target", devices[m_audioDevice]);
+
+    vector<string> names = breakfastquay::AudioFactory::getImplementationNames();
+    string implementationName;
+    if (m_audioImplementation > int(names.size())) {
+        m_audioImplementation = 0;
+    }
+    if (m_audioImplementation > 0) {
+        implementationName = names[m_audioImplementation-1];
+    }
+    settings.setValue("audio-target", implementationName.c_str());
+
+    QString suffix;
+    if (implementationName != "") {
+        suffix = "-" + QString(implementationName.c_str());
+    }
+    
+    names = breakfastquay::AudioFactory::getPlaybackDeviceNames(implementationName);
+    string deviceName;
+    if (m_audioPlaybackDevice > int(names.size())) {
+        m_audioPlaybackDevice = 0;
+    }
+    if (m_audioPlaybackDevice > 0) {
+        deviceName = names[m_audioPlaybackDevice-1];
+    }
+    settings.setValue("audio-playback-device" + suffix, deviceName.c_str());
+
+    names = breakfastquay::AudioFactory::getRecordDeviceNames(implementationName);
+    deviceName = "";
+    if (m_audioRecordDevice > int(names.size())) {
+        m_audioRecordDevice = 0;
+    }
+    if (m_audioRecordDevice > 0) {
+        deviceName = names[m_audioRecordDevice-1];
+    }
+    settings.setValue("audio-record-device" + suffix, deviceName.c_str());
+    
     settings.setValue("locale", m_currentLocale);
+#ifdef Q_OS_MAC
+    settings.setValue("scaledHiDpi", m_retina);
+#endif
+    settings.setValue("spectrogram-colour", m_spectrogramGColour);
+    settings.setValue("spectrogram-melodic-colour", m_spectrogramMColour);
+    settings.setValue("colour-3d-plot-colour", m_colour3DColour);
+    settings.setValue("overview-colour", m_overviewColour.name());
     settings.endGroup();
 
     settings.beginGroup("MainWindow");
@@ -693,6 +995,16 @@
                                  tr("<b>Restart required</b><p>One or more of the application preferences you have changed may not take full effect until Sonic Visualiser is restarted.</p><p>Please exit and restart the application now if you want these changes to take effect immediately.</p>"));
         m_changesOnRestart = false;
     }
+
+    if (m_audioDeviceChanged) {
+        emit audioDeviceChanged();
+        m_audioDeviceChanged = false;
+    }
+
+    if (m_coloursChanged) {
+        emit coloursChanged();
+        m_coloursChanged = false;
+    }
 }    
 
 void
--- a/main/PreferencesDialog.h	Tue Jan 10 16:10:33 2017 +0000
+++ b/main/PreferencesDialog.h	Tue Jan 10 16:21:32 2017 +0000
@@ -18,6 +18,7 @@
 
 #include <QDialog>
 #include <QMap>
+#include <QColor>
 
 #include "base/Window.h"
 
@@ -25,6 +26,7 @@
 class QPushButton;
 class QLineEdit;
 class QTabWidget;
+class QComboBox;
 
 class PreferencesDialog : public QDialog
 {
@@ -36,12 +38,17 @@
 
     enum Tab {
         GeneralTab,
+        AudioIOTab,
         AppearanceTab,
         AnalysisTab,
         TemplateTab
     };
     void switchToTab(Tab tab);
 
+signals:
+    void audioDeviceChanged();
+    void coloursChanged();
+                             
 public slots:
     void applicationClosing(bool quickly);
 
@@ -49,11 +56,18 @@
     void windowTypeChanged(WindowType type);
     void spectrogramSmoothingChanged(int state);
     void spectrogramXSmoothingChanged(int state);
+    void spectrogramGColourChanged(int state);
+    void spectrogramMColourChanged(int state);
+    void colour3DColourChanged(int state);
+    void overviewColourChanged(int state);
     void propertyLayoutChanged(int layout);
     void tuningFrequencyChanged(double freq);
-    void audioDeviceChanged(int device);
-    void resampleQualityChanged(int quality);
+    void audioImplementationChanged(int impl);
+    void audioPlaybackDeviceChanged(int device);
+    void audioRecordDeviceChanged(int device);
     void resampleOnLoadChanged(int state);
+    void gaplessModeChanged(int state);
+    void vampProcessSeparationChanged(int state);
     void tempDirRootChanged(QString root);
     void backgroundModeChanged(int mode);
     void timeToTextModeChanged(int mode);
@@ -64,6 +78,7 @@
     void defaultTemplateChanged(int);
     void localeChanged(int);
     void networkPermissionChanged(int state);
+    void retinaChanged(int state);
 
     void tempDirButtonClicked();
 
@@ -80,6 +95,10 @@
 
     QLineEdit *m_tempDirRootEdit;
 
+    QComboBox *m_audioPlaybackDeviceCombo;
+    QComboBox *m_audioRecordDeviceCombo;
+    void rebuildDeviceCombos();
+    
     QString m_currentTemplate;
     QStringList m_templates;
 
@@ -89,12 +108,20 @@
     WindowType m_windowType;
     int m_spectrogramSmoothing;
     int m_spectrogramXSmoothing;
+    int m_spectrogramGColour;
+    int m_spectrogramMColour;
+    int m_colour3DColour;
+    QColor m_overviewColour;
     int m_propertyLayout;
     double m_tuningFrequency;
-    int m_audioDevice;
-    int m_resampleQuality;
+    int m_audioImplementation;
+    int m_audioPlaybackDevice;
+    int m_audioRecordDevice;
     bool m_resampleOnLoad;
+    bool m_gapless;
+    bool m_runPluginsInProcess;
     bool m_networkPermission;
+    bool m_retina;
     QString m_tempDirRoot;
     int m_backgroundMode;
     int m_timeToTextMode;
@@ -103,6 +130,8 @@
     int m_viewFontSize;
     bool m_showSplash;
 
+    bool m_audioDeviceChanged;
+    bool m_coloursChanged;
     bool m_changesOnRestart;
 };
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main/SVSplash.cpp	Tue Jan 10 16:21:32 2017 +0000
@@ -0,0 +1,100 @@
+/* -*- c-basic-offset: 4 indent-tabs-mode: nil -*-  vi:set ts=8 sts=4 sw=4: */
+
+/*
+    Sonic Visualiser
+    An audio file viewer and annotation editor.
+    Centre for Digital Music, Queen Mary, University of London.
+    
+    This program is free software; you can redistribute it and/or
+    modify it under the terms of the GNU General Public License as
+    published by the Free Software Foundation; either version 2 of the
+    License, or (at your option) any later version.  See the file
+    COPYING included with this distribution for more information.
+*/
+
+#include "SVSplash.h"
+
+#include "../version.h"
+
+#include <QPainter>
+#include <QApplication>
+#include <QDesktopWidget>
+#include <QSvgRenderer>
+
+#include <cmath>
+
+#include <iostream>
+using namespace std;
+
+SVSplash::SVSplash()
+{
+    setWindowFlags(windowFlags() | Qt::WindowStaysOnTopHint);
+    
+    QPixmap *p1 = new QPixmap(":icons/scalable/sv-splash.png");
+
+    int w = p1->width(), h = p1->height();
+    QRect desk = QApplication::desktop()->availableGeometry();
+
+    double dpratio = devicePixelRatio();
+    double widthMultiple = double(desk.width()) / double(w);
+
+    int sw = w, sh = h;
+
+    if (widthMultiple > 2.5 || dpratio > 1.0) {
+
+	// Hi-dpi either via pixel doubling or simply via lots of
+	// pixels
+
+	double factor = widthMultiple / 2.5;
+	if (factor < 1.0) factor = 1.0;
+	sw = int(floor(w * factor));
+	sh = int(floor(h * factor));
+
+	delete p1;
+	m_pixmap = new QPixmap(int(floor(sw * dpratio)),
+			       int(floor(sh * dpratio)));
+
+//	cerr << "pixmap size = " << m_pixmap->width() << " * "
+//	     << m_pixmap->height() << endl;
+	
+	m_pixmap->fill(Qt::red);
+	QSvgRenderer renderer(QString(":icons/scalable/sv-splash.svg"));
+	QPainter painter(m_pixmap);
+	renderer.render(&painter);
+	painter.end();
+
+    } else {
+	// The "low dpi" case
+	m_pixmap = p1;
+    }
+    
+    setFixedWidth(sw);
+    setFixedHeight(sh);
+    setGeometry(desk.x() + desk.width()/2 - sw/2,
+		desk.y() + desk.height()/2 - sh/2,
+		sw, sh);
+}
+
+SVSplash::~SVSplash()
+{
+    delete m_pixmap;
+}
+
+void
+SVSplash::finishSplash(QWidget *w)
+{
+    finish(w);
+}
+
+void
+SVSplash::drawContents(QPainter *painter)
+{
+    painter->drawPixmap(rect(), *m_pixmap, m_pixmap->rect());
+    QString text = QString("v%1").arg(SV_VERSION);
+    painter->drawText
+	(width() - painter->fontMetrics().width(text) - (width()/50),
+	 (width()/70) + painter->fontMetrics().ascent(),
+	 text);
+}
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main/SVSplash.h	Tue Jan 10 16:21:32 2017 +0000
@@ -0,0 +1,39 @@
+/* -*- c-basic-offset: 4 indent-tabs-mode: nil -*-  vi:set ts=8 sts=4 sw=4: */
+
+/*
+    Sonic Visualiser
+    An audio file viewer and annotation editor.
+    Centre for Digital Music, Queen Mary, University of London.
+    
+    This program is free software; you can redistribute it and/or
+    modify it under the terms of the GNU General Public License as
+    published by the Free Software Foundation; either version 2 of the
+    License, or (at your option) any later version.  See the file
+    COPYING included with this distribution for more information.
+*/
+
+#ifndef SV_SPLASH_H
+#define SV_SPLASH_H
+
+#include <QSplashScreen>
+
+class QPixmap;
+
+class SVSplash : public QSplashScreen
+{
+    Q_OBJECT
+
+public:
+    SVSplash();
+    virtual ~SVSplash();
+
+public slots:
+    void finishSplash(QWidget *);
+    
+protected:
+    void drawContents(QPainter *);
+    QPixmap *m_pixmap;
+};
+
+#endif
+    
--- a/main/main.cpp	Tue Jan 10 16:10:33 2017 +0000
+++ b/main/main.cpp	Tue Jan 10 16:21:32 2017 +0000
@@ -14,6 +14,7 @@
 */
 
 #include "MainWindow.h"
+#include "SVSplash.h"
 
 #include "system/System.h"
 #include "system/Init.h"
@@ -25,6 +26,7 @@
 #include "widgets/InteractiveFileFinder.h"
 #include "svapp/framework/TransformUserConfigurator.h"
 #include "transform/TransformFactory.h"
+#include "svcore/plugin/PluginScan.h"
 
 #include <QMetaType>
 #include <QApplication>
@@ -36,13 +38,10 @@
 #include <QIcon>
 #include <QSessionManager>
 #include <QDir>
-#include <QSplashScreen>
 #include <QTimer>
 #include <QPainter>
 #include <QFileOpenEvent>
 
-#include "../version.h"
-
 #include <iostream>
 #include <signal.h>
 
@@ -215,7 +214,7 @@
         if (!success) manager.cancel();
     }
 
-    void handleFilepathArgument(QString path, QSplashScreen *splash);
+    void handleFilepathArgument(QString path, SVSplash *splash);
 
     bool m_readyForFiles;
     QStringList m_filepathQueue;
@@ -223,7 +222,6 @@
 protected:
     MainWindow *m_mainWindow;
     bool event(QEvent *);
-
 };
 
 int
@@ -272,22 +270,22 @@
     QApplication::setOrganizationDomain("sonicvisualiser.org");
     QApplication::setApplicationName(QApplication::tr("Sonic Visualiser"));
 
-    QSplashScreen *splash = 0;
+    QApplication::setAttribute(Qt::AA_UseHighDpiPixmaps);
+
+    SVSplash *splash = 0;
 
     QSettings settings;
 
     settings.beginGroup("Preferences");
+    // Default to using Piper server; can change in preferences
+    if (!settings.contains("run-vamp-plugins-in-process")) {
+        settings.setValue("run-vamp-plugins-in-process", false);
+    }
+    settings.endGroup();
+
+    settings.beginGroup("Preferences");
     if (settings.value("show-splash", true).toBool()) {
-        QPixmap pixmap(":/icons/sv-splash.png");
-        QPainter painter;
-        painter.begin(&pixmap);
-        QString text = QString("v%1").arg(SV_VERSION);
-        painter.drawText
-            (pixmap.width() - painter.fontMetrics().width(text) - 10,
-             10 + painter.fontMetrics().ascent(),
-             text);
-        painter.end();
-        splash = new QSplashScreen(pixmap);
+        splash = new SVSplash();
         splash->show();
         QTimer::singleShot(5000, splash, SLOT(hide()));
         application.processEvents();
@@ -310,9 +308,11 @@
     QApplication::setWindowIcon(icon);
 
     QString language = QLocale::system().name();
+    SVDEBUG << "System language is: " << language << endl;
 
     settings.beginGroup("Preferences");
-    language = settings.value("locale", language).toString();
+    QString prefLanguage = settings.value("locale", language).toString();
+    if (prefLanguage != QString()) language = prefLanguage;
     settings.endGroup();
 
     QTranslator qtTranslator;
@@ -342,15 +342,24 @@
 
     StoreStartupLocale();
 
+    // Make known-plugins query as early as possible after showing
+    // splash screen.
+    PluginScan::getInstance()->scan();
+    
     // Permit size_t and PropertyName to be used as args in queued signal calls
     qRegisterMetaType<PropertyContainer::PropertyName>("PropertyContainer::PropertyName");
 
-    MainWindow *gui = new MainWindow(audioOutput, oscSupport);
+    MainWindow::SoundOptions options = MainWindow::WithEverything;
+    if (!audioOutput) options = 0;
+    
+    MainWindow *gui = new MainWindow(options, oscSupport);
     application.setMainWindow(gui);
     InteractiveFileFinder::setParentWidget(gui);
     TransformUserConfigurator::setParentWidget(gui);
     if (splash) {
         QObject::connect(gui, SIGNAL(hideSplash()), splash, SLOT(hide()));
+        QObject::connect(gui, SIGNAL(hideSplash(QWidget *)),
+                         splash, SLOT(finishSplash(QWidget *)));
     }
 
     QDesktopWidget *desktop = QApplication::desktop();
@@ -418,15 +427,6 @@
     settings.endGroup();
 #endif
 
-    if (splash) splash->finish(gui);
-    delete splash;
-
-/*
-    TipDialog tipDialog;
-    if (tipDialog.isOK()) {
-        tipDialog.exec();
-    }
-*/
     int rv = application.exec();
 
     gui->hide();
@@ -490,7 +490,7 @@
 }
 
 /** Application-global handler for filepaths passed in, e.g. as command-line arguments or apple events */
-void SVApplication::handleFilepathArgument(QString path, QSplashScreen *splash){
+void SVApplication::handleFilepathArgument(QString path, SVSplash *splash){
     static bool haveSession = false;
     static bool haveMainModel = false;
     static bool havePriorCommandLineModel = false;
--- a/misc/update-i18n.sh	Tue Jan 10 16:10:33 2017 +0000
+++ b/misc/update-i18n.sh	Tue Jan 10 16:21:32 2017 +0000
@@ -3,19 +3,19 @@
 LUPDATE="lupdate"
 LRELEASE="lrelease"
 
-if lupdate-qt4 -version >/dev/null 2>&1; then
-    LUPDATE="lupdate-qt4"
-    LRELEASE="lrelease-qt4"
+if lupdate-qt5 -version >/dev/null 2>&1; then
+    LUPDATE="lupdate-qt5"
+    LRELEASE="lrelease-qt5"
 fi
 
 LANGUAGES="ru en_GB en_US cs_CZ"
 
 for LANG in $LANGUAGES; do
     $LUPDATE \
-	../svcore/*/*.h ../svcore/*/*.cpp \
-	../svcore/*/*/*.h ../svcore/*/*/*.cpp \
-	../svgui/*/*.h ../svgui/*/*.cpp \
-	../svapp/*/*.h ../svapp/*/*.cpp \
+	svcore/*/*.h svcore/*/*.cpp \
+	svcore/*/*/*.h svcore/*/*/*.cpp \
+	svgui/*/*.h svgui/*/*.cpp \
+	svapp/*/*.h svapp/*/*.cpp \
 	*/*.h */*.cpp \
 	-ts i18n/sonic-visualiser_$LANG.ts
 done
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/noconfig.pri	Tue Jan 10 16:21:32 2017 +0000
@@ -0,0 +1,136 @@
+
+CONFIG += release
+
+#CONFIG -= release
+#CONFIG += debug
+
+DEFINES += NDEBUG BUILD_RELEASE
+DEFINES += NO_TIMING NO_HIT_COUNTS
+
+DEFINES += HAVE_PIPER HAVE_PLUGIN_CHECKER_HELPER
+
+# Full set of defines expected for all platforms when we have the
+# sv-dependency-builds subrepo available to provide the dependencies.
+
+DEFINES += \
+        HAVE_BZ2 \
+	HAVE_FFTW3 \
+	HAVE_FFTW3F \
+	HAVE_SNDFILE \
+	HAVE_SAMPLERATE \
+	HAVE_RUBBERBAND \
+	HAVE_LIBLO \
+	HAVE_MAD \
+	HAVE_ID3TAG \
+	HAVE_PORTAUDIO
+
+# Default set of libs for the above. Config sections below may update
+# these.
+
+LIBS += \
+        -lbz2 \
+	-lrubberband \
+	-lfftw3 \
+	-lfftw3f \
+	-lsndfile \
+	-lFLAC \
+	-logg \
+	-lvorbis \
+	-lvorbisenc \
+	-lvorbisfile \
+	-logg \
+	-lmad \
+	-lid3tag \
+	-lportaudio \
+	-lsamplerate \
+	-lz \
+	-lsord-0 \
+	-lserd-0 \
+	-llo \
+	-lcapnp \
+	-lkj
+
+win32-g++ {
+
+    # This config is currently used for 32-bit Windows builds.
+
+    INCLUDEPATH += sv-dependency-builds/win32-mingw/include
+
+    LIBS += -Lrelease -Lsv-dependency-builds/win32-mingw/lib -L../sonic-visualiser/sv-dependency-builds/win32-mingw/lib
+
+    DEFINES += NOMINMAX _USE_MATH_DEFINES USE_OWN_ALIGNED_MALLOC CAPNP_LITE
+
+    QMAKE_CXXFLAGS_RELEASE += -ffast-math
+
+    # Don't have liblo
+    DEFINES -= HAVE_LIBLO
+    LIBS -= -llo
+    
+    LIBS += -lwinmm -lws2_32
+}
+
+win32-msvc* {
+
+    # This config is actually used only for 64-bit Windows builds.
+    # even though the qmake spec is still called win32-msvc*. If
+    # we want to do 32-bit builds with MSVC as well, then we'll
+    # need to add a way to distinguish the two.
+    
+    INCLUDEPATH += sv-dependency-builds/win64-msvc/include
+
+## This seems to be intruding even when we're supposed to be release
+#    CONFIG(debug) {
+#        LIBS += -NODEFAULTLIB:MSVCRT -Ldebug \
+#            -L../sonic-visualiser/sv-dependency-builds/win64-msvc/lib/debug \
+#            -L../sonic-visualiser/sv-dependency-builds/win64-msvc/lib
+#    }
+    CONFIG(release) {
+        LIBS += -Lrelease \
+            -L../sonic-visualiser/sv-dependency-builds/win64-msvc/lib
+    }
+
+    DEFINES += NOMINMAX _USE_MATH_DEFINES USE_OWN_ALIGNED_MALLOC CAPNP_LITE
+
+    QMAKE_CXXFLAGS_RELEASE += -fp:fast
+
+    # No Ogg/FLAC support in the sndfile build on this platform yet
+    LIBS -= -lFLAC -logg -lvorbis -lvorbisenc -lvorbisfile
+
+    # These have different names
+    LIBS -= -lsord-0 -lserd-0
+    LIBS += -lsord -lserd
+
+    # Don't have liblo
+    DEFINES -= HAVE_LIBLO
+    LIBS -= -llo
+    
+    LIBS += -ladvapi32 -lwinmm -lws2_32
+}
+
+macx* {
+
+    # All Mac builds are 64-bit these days.
+
+    INCLUDEPATH += sv-dependency-builds/osx/include
+    LIBS += -Lsv-dependency-builds/osx/lib
+
+    QMAKE_CXXFLAGS_RELEASE += -ffast-math
+
+    DEFINES += HAVE_COREAUDIO MALLOC_IS_ALIGNED HAVE_VDSP
+    LIBS += \
+        -framework CoreAudio \
+	-framework CoreMidi \
+	-framework AudioUnit \
+	-framework AudioToolbox \
+	-framework CoreFoundation \
+	-framework CoreServices \
+	-framework Accelerate
+}
+
+linux* {
+
+    message("Building without ./configure on Linux is unlikely to work")
+    message("If you really want to try it, remove this from noconfig.pri")
+    error("Refusing to build without ./configure first")
+}
+
--- a/platform-dataquay.pri	Tue Jan 10 16:10:33 2017 +0000
+++ b/platform-dataquay.pri	Tue Jan 10 16:21:32 2017 +0000
@@ -18,8 +18,10 @@
     LIBS += -L../../sv-dependency-builds/win32-mingw/lib
 }
 win32-msvc* {
-    INCLUDEPATH += ../sv-dependency-builds/win32-msvc/include
-    LIBS += -L../../sv-dependency-builds/win32-msvc/lib
+    # We actually expect MSVC to be used only for 64-bit builds,
+    # though the qmake spec is still called win32-msvc*
+    INCLUDEPATH += ../sv-dependency-builds/win64-msvc/include
+    LIBS += -L../../sv-dependency-builds/win64-msvc/lib
 }
 mac* {
     INCLUDEPATH += ../sv-dependency-builds/osx/include
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/server.pro	Tue Jan 10 16:21:32 2017 +0000
@@ -0,0 +1,48 @@
+
+TEMPLATE = app
+
+CONFIG += stl c++11 exceptions console warn_on
+
+CONFIG -= qt
+
+exists(config.pri) {
+    include(config.pri)
+}
+
+!exists(config.pri) {
+    include(noconfig.pri)
+
+    macx*: LIBS -= -framework CoreAudio -framework CoreMidi -framework AudioUnit -framework AudioToolbox -framework CoreFoundation -framework CoreServices -framework Accelerate -lbz2 -lz
+}
+
+# Can't support this flag with the JSON11 and basen modules as they stand
+QMAKE_CXXFLAGS -= -Werror
+
+# Using the "console" CONFIG flag above should ensure this happens for
+# normal Windows builds, but this may be necessary when cross-compiling
+win32-x-g++: QMAKE_LFLAGS += -Wl,-subsystem,console
+
+macx*: CONFIG -= app_bundle
+
+linux*: LIBS += -ldl
+
+TARGET = piper-vamp-simple-server
+
+OBJECTS_DIR = o
+MOC_DIR = o
+
+INCLUDEPATH += piper-cpp vamp-plugin-sdk
+
+include(vamp-plugin-sdk-files.pri)
+
+for (file, VAMP_SOURCES) { SOURCES += $$file }
+for (file, VAMP_HEADERS) { HEADERS += $$file }
+
+HEADERS += \
+        piper-cpp/vamp-capnp/piper.capnp.h \
+        piper-cpp/vamp-capnp/VampnProto.h
+
+SOURCES += \
+        piper-cpp/vamp-capnp/piper-capnp.cpp \
+        piper-cpp/json11/json11.cpp \
+        piper-cpp/vamp-server/simple-server.cpp
--- a/sonic-visualiser.pro	Tue Jan 10 16:10:33 2017 +0000
+++ b/sonic-visualiser.pro	Tue Jan 10 16:21:32 2017 +0000
@@ -1,17 +1,27 @@
+
 TEMPLATE = subdirs
-SUBDIRS = sub_dataquay svcore svgui svapp sub_sv 
 
-!win* {
-    # We should build and run the tests on any platform,
-    # but doing it automatically doesn't work so well from
-    # within an IDE on Windows, so remove that from here
-    SUBDIRS += svcore/base/test svcore/data/fileio/test svcore/data/model/test
-}
+# We build the tests on every platform, though at the time of
+# writing they are only automatically run on non-Windows platforms
+# (because of the difficulty of getting them running nicely in the
+# IDE without causing great confusion if a test fails).
+SUBDIRS += \
+        sub_test_svcore_base \
+        sub_test_svcore_data_fileio \
+        sub_test_svcore_data_model
 
+SUBDIRS += \
+	checker \
+	sub_server \
+        sub_convert \
+	sub_sv
+
+sub_test_svcore_base.file = test-svcore-base.pro
+sub_test_svcore_data_fileio.file = test-svcore-data-fileio.pro
+sub_test_svcore_data_model.file = test-svcore-data-model.pro
+
+sub_server.file = server.pro
+sub_convert.file = convert.pro
 sub_sv.file = sv.pro
 
-sub_dataquay.file = dataquay/lib.pro
-
-svgui.depends = svcore
-svapp.depends = svcore svgui
-sub_sv.depends = svcore svgui svapp
+CONFIG += ordered
--- a/sonic-visualiser.qrc	Tue Jan 10 16:10:33 2017 +0000
+++ b/sonic-visualiser.qrc	Tue Jan 10 16:21:32 2017 +0000
@@ -1,9 +1,68 @@
 <!DOCTYPE RCC><RCC version="1.0">
-<qresource>
+  <qresource>
+    <file>icons/scalable/align.svg</file>
+    <file>icons/scalable/colour3d.svg</file>
+    <file>icons/scalable/cross.svg</file>
+    <file>icons/scalable/dataedit.svg</file>
+    <file>icons/scalable/datadelete.svg</file>
+    <file>icons/scalable/draw.svg</file>
+    <file>icons/scalable/erase.svg</file>
+    <file>icons/scalable/editcopy.svg</file>
+    <file>icons/scalable/editcut.svg</file>
+    <file>icons/scalable/editdelete.svg</file>
+    <file>icons/scalable/editpaste.svg</file>
+    <file>icons/scalable/exit.svg</file>
+    <file>icons/scalable/filenew.svg</file>
+    <file>icons/scalable/fileopen.svg</file>
+    <file>icons/scalable/filesaveas.svg</file>
+    <file>icons/scalable/filesave.svg</file>
+    <file>icons/scalable/filesavesv.svg</file>
+    <file>icons/scalable/ffwd-end.svg</file>
+    <file>icons/scalable/ffwd.svg</file>
+    <file>icons/scalable/navigate.svg</file>
+    <file>icons/scalable/move.svg</file>
+    <file>icons/scalable/normalise.svg</file>
+    <file>icons/scalable/normalise-columns.svg</file>
+    <file>icons/scalable/pause.svg</file>
+    <file>icons/scalable/playloop.svg</file>
+    <file>icons/scalable/playpause.svg</file>
+    <file>icons/scalable/playselection.svg</file>
+    <file>icons/scalable/playfollow.svg</file>
+    <file>icons/scalable/solo.svg</file>
+    <file>icons/scalable/play.svg</file>
+    <file>icons/scalable/record.svg</file>
+    <file>icons/scalable/rewind-start.svg</file>
+    <file>icons/scalable/rewind.svg</file>
+    <file>icons/scalable/undo.svg</file>
+    <file>icons/scalable/redo.svg</file>
+    <file>icons/scalable/select.svg</file>
+    <file>icons/scalable/measure.svg</file>
+    <file>icons/scalable/speaker.svg</file>
+    <file>icons/scalable/instants.svg</file>
+    <file>icons/scalable/notes.svg</file>
+    <file>icons/scalable/values.svg</file>
+    <file>icons/scalable/regions.svg</file>
+    <file>icons/scalable/spectrogram.svg</file>
+    <file>icons/scalable/spectrum.svg</file>
+    <file>icons/scalable/pane.svg</file>
+    <file>icons/scalable/text.svg</file>
+    <file>icons/scalable/timeruler.svg</file>
+    <file>icons/scalable/zoom.svg</file>
+    <file>icons/scalable/zoom-in.svg</file>
+    <file>icons/scalable/zoom-out.svg</file>
+    <file>icons/scalable/zoom-fit.svg</file>
+    <file>icons/scalable/zoom-reset.svg</file>
+    <file>icons/scalable/sv-icon-light.svg</file>
+    <file>icons/scalable/sv-icon.svg</file>
+    <file>icons/scalable/sv-splash.svg</file>
+    <file>icons/scalable/sv-splash.png</file>
+    <file>icons/scalable/sv-splash@2x.png</file>
+    <file>icons/scalable/waveform.svg</file>
+    <file>icons/scalable/faders.svg</file>
+    <file>icons/scalable/help.svg</file>
     <file>icons/waveform.png</file>
     <file>icons/spectrum.png</file>
     <file>icons/spectrogram.png</file>
-    <file>icons/timeruler.png</file>
     <file>icons/pane.png</file>
     <file>icons/instants.png</file>
     <file>icons/notes.png</file>
@@ -20,9 +79,7 @@
     <file>icons/playselection.png</file>
     <file>icons/playselection-on.png</file>
     <file>icons/playloop.png</file>
-    <file>icons/playloop-on.png</file>
     <file>icons/playfollow.png</file>
-    <file>icons/playfollow-on.png</file>
     <file>icons/solo.png</file>
     <file>icons/solo-on.png</file>
     <file>icons/align.png</file>
@@ -44,10 +101,6 @@
     <file>icons/measure2mask.xbm</file>
     <file>icons/move.png</file>
     <file>icons/navigate.png</file>
-    <file>icons/zoom.png</file>
-    <file>icons/zoom-in.png</file>
-    <file>icons/zoom-out.png</file>
-    <file>icons/zoom-fit.png</file>
     <file>icons/zoom-reset.png</file>
     <file>icons/undo.png</file>
     <file>icons/redo.png</file>
@@ -123,5 +176,10 @@
     <file>i18n/sonic-visualiser_en_US.qm</file>
     <file>i18n/sonic-visualiser_cs_CZ.qm</file>
     <file>i18n/tips_en.xml</file>
+    <file>README</file>
+    <file>README.OSC</file>
+    <file>CHANGELOG</file>
+    <file>COPYING</file>
+    <file>CITATION</file>
 </qresource>
 </RCC>
--- a/sv.pro	Tue Jan 10 16:10:33 2017 +0000
+++ b/sv.pro	Tue Jan 10 16:21:32 2017 +0000
@@ -1,52 +1,33 @@
 
 TEMPLATE = app
 
-win32-g++ {
-    INCLUDEPATH += sv-dependency-builds/win32-mingw/include
-    LIBS += -Lsv-dependency-builds/win32-mingw/lib
-}
-win32-msvc* {
-    INCLUDEPATH += sv-dependency-builds/win32-msvc/include
-    LIBS += -Lsv-dependency-builds/win32-msvc/lib
-}
-mac* {
-    INCLUDEPATH += sv-dependency-builds/osx/include
-    LIBS += -Lsv-dependency-builds/osx/lib
-}
-
 exists(config.pri) {
     include(config.pri)
 }
 
 !exists(config.pri) {
-
-    CONFIG += release
-    DEFINES += NDEBUG BUILD_RELEASE NO_TIMING
-
-    DEFINES += HAVE_BZ2 HAVE_FFTW3 HAVE_FFTW3F HAVE_SNDFILE HAVE_SAMPLERATE HAVE_VAMP HAVE_VAMPHOSTSDK HAVE_RUBBERBAND HAVE_DATAQUAY HAVE_LIBLO HAVE_MAD HAVE_ID3TAG HAVE_PORTAUDIO_2_0
-
-    LIBS += -lbz2 -lrubberband -lvamp-hostsdk -lfftw3 -lfftw3f -lsndfile -lFLAC -logg -lvorbis -lvorbisenc -lvorbisfile -logg -lmad -lid3tag -lportaudio -lsamplerate -lz -lsord-0 -lserd-0 -llo
-
-    win* {
-        LIBS += -lwinmm -lws2_32
-    }
-    macx* {
-        DEFINES += HAVE_COREAUDIO
-        LIBS += -framework CoreAudio -framework CoreMidi -framework AudioUnit -framework AudioToolbox -framework CoreFoundation -framework CoreServices -framework Accelerate
-    }
+    include(noconfig.pri)
 }
 
-CONFIG += qt thread warn_on stl rtti exceptions c++11
-QT += network xml gui widgets
+include(base.pri)
+
+QT += network xml gui widgets svg
 
 TARGET = "Sonic Visualiser"
 linux*:TARGET = sonic-visualiser
 solaris*:TARGET = sonic-visualiser
 
-DEPENDPATH += . svcore svgui svapp
-INCLUDEPATH += . svcore svgui svapp
+linux* {
+    sv_bins.path = /usr/local/bin/
+    sv_bins.files = sonic-visualiser piper-vamp-simple-server checker/vamp-plugin-load-checker
+    INSTALLS += sv_bins
+}
 
-TRANSLATIONS += i18n/sonic-visualiser_ru.ts i18n/sonic-visualiser_en_GB.ts i18n/sonic-visualiser_en_US.ts i18n/sonic-visualiser_cs_CZ.ts
+TRANSLATIONS += \
+        i18n/sonic-visualiser_ru.ts \
+	i18n/sonic-visualiser_en_GB.ts \
+	i18n/sonic-visualiser_en_US.ts \
+	i18n/sonic-visualiser_cs_CZ.ts
 
 OBJECTS_DIR = o
 MOC_DIR = o
@@ -54,46 +35,33 @@
 ICON = icons/sv-macicon.icns
 RC_FILE = icons/sv.rc
 
-contains(DEFINES, BUILD_STATIC):LIBS -= -ljack
-
-MY_LIBS = -Lsvapp -Lsvgui -Lsvcore -Ldataquay -lsvapp -lsvgui -lsvcore -ldataquay
-
-linux* {
-MY_LIBS = -Wl,-Bstatic $$MY_LIBS -Wl,-Bdynamic
-}
-
-win* {
-MY_LIBS = -Lsvapp/release -Lsvgui/release -Lsvcore/release -Ldataquay/release $$MY_LIBS
-}
-
-LIBS = $$MY_LIBS $$LIBS
-
-win* {
-PRE_TARGETDEPS += svapp/release/libsvapp.a \
-                  svgui/release/libsvgui.a \
-                  svcore/release/libsvcore.a \
-                  dataquay/release/libdataquay.a
-}
-!win* {
-PRE_TARGETDEPS += svapp/libsvapp.a \
-                  svgui/libsvgui.a \
-                  svcore/libsvcore.a \
-                  dataquay/libdataquay.a
-}
-
 RESOURCES += sonic-visualiser.qrc
 
-HEADERS += main/MainWindow.h \
-           main/NetworkPermissionTester.h \
-           main/Surveyer.h \
-           main/PreferencesDialog.h
-SOURCES += main/main.cpp \
-           main/OSCHandler.cpp \
-           main/MainWindow.cpp \
-           main/NetworkPermissionTester.cpp \
-           main/Surveyer.cpp \
-           main/PreferencesDialog.cpp 
-
-# for mac integration
+# Mac integration
 QMAKE_INFO_PLIST = deploy/osx/Info.plist
 
+include(svgui/files.pri)
+include(svapp/files.pri)
+
+for (file, SVGUI_SOURCES)    { SOURCES += $$sprintf("svgui/%1",    $$file) }
+for (file, SVAPP_SOURCES)    { SOURCES += $$sprintf("svapp/%1",    $$file) }
+
+for (file, SVGUI_HEADERS)    { HEADERS += $$sprintf("svgui/%1",    $$file) }
+for (file, SVAPP_HEADERS)    { HEADERS += $$sprintf("svapp/%1",    $$file) }
+
+HEADERS += \
+        main/MainWindow.h \
+        main/NetworkPermissionTester.h \
+        main/Surveyer.h \
+        main/SVSplash.h \
+        main/PreferencesDialog.h
+
+SOURCES +=  \
+	main/main.cpp \
+        main/OSCHandler.cpp \
+        main/MainWindow.cpp \
+        main/NetworkPermissionTester.cpp \
+        main/Surveyer.cpp \
+        main/SVSplash.cpp \
+        main/PreferencesDialog.cpp 
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-svcore-base.pro	Tue Jan 10 16:21:32 2017 +0000
@@ -0,0 +1,33 @@
+
+TEMPLATE = app
+
+exists(config.pri) {
+    include(config.pri)
+}
+
+!exists(config.pri) {
+    include(noconfig.pri)
+}
+
+include(base.pri)
+
+CONFIG += console
+QT += network xml testlib
+QT -= gui
+
+win32-x-g++:QMAKE_LFLAGS += -Wl,-subsystem,console
+macx*: CONFIG -= app_bundle
+
+TARGET = test-svcore-base
+
+OBJECTS_DIR = o
+MOC_DIR = o
+
+include(svcore/base/test/files.pri)
+
+for (file, TEST_SOURCES) { SOURCES += $$sprintf("svcore/base/test/%1", $$file) }
+for (file, TEST_HEADERS) { HEADERS += $$sprintf("svcore/base/test/%1", $$file) }
+
+!win32* {
+    QMAKE_POST_LINK = ./$${TARGET}
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-svcore-data-fileio.pro	Tue Jan 10 16:21:32 2017 +0000
@@ -0,0 +1,33 @@
+
+TEMPLATE = app
+
+exists(config.pri) {
+    include(config.pri)
+}
+
+!exists(config.pri) {
+    include(noconfig.pri)
+}
+
+include(base.pri)
+
+CONFIG += console
+QT += network xml testlib
+QT -= gui
+
+win32-x-g++:QMAKE_LFLAGS += -Wl,-subsystem,console
+macx*: CONFIG -= app_bundle
+
+TARGET = test-svcore-data-fileio
+
+OBJECTS_DIR = o
+MOC_DIR = o
+
+include(svcore/data/fileio/test/files.pri)
+
+for (file, TEST_SOURCES) { SOURCES += $$sprintf("svcore/data/fileio/test/%1", $$file) }
+for (file, TEST_HEADERS) { HEADERS += $$sprintf("svcore/data/fileio/test/%1", $$file) }
+
+!win32* {
+    QMAKE_POST_LINK = ./$${TARGET}
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-svcore-data-model.pro	Tue Jan 10 16:21:32 2017 +0000
@@ -0,0 +1,33 @@
+
+TEMPLATE = app
+
+exists(config.pri) {
+    include(config.pri)
+}
+
+!exists(config.pri) {
+    include(noconfig.pri)
+}
+
+include(base.pri)
+
+CONFIG += console
+QT += network xml testlib
+QT -= gui
+
+win32-x-g++:QMAKE_LFLAGS += -Wl,-subsystem,console
+macx*: CONFIG -= app_bundle
+
+TARGET = test-svcore-data-model
+
+OBJECTS_DIR = o
+MOC_DIR = o
+
+include(svcore/data/model/test/files.pri)
+
+for (file, TEST_SOURCES) { SOURCES += $$sprintf("svcore/data/model/test/%1", $$file) }
+for (file, TEST_HEADERS) { HEADERS += $$sprintf("svcore/data/model/test/%1", $$file) }
+
+!win32* {
+    QMAKE_POST_LINK = ./$${TARGET}
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/vamp-plugin-sdk-files.pri	Tue Jan 10 16:21:32 2017 +0000
@@ -0,0 +1,24 @@
+
+VAMP_HEADERS += \
+        vamp-plugin-sdk/vamp-hostsdk/PluginBase.h \
+        vamp-plugin-sdk/vamp-hostsdk/PluginBufferingAdapter.h \
+        vamp-plugin-sdk/vamp-hostsdk/PluginChannelAdapter.h \
+        vamp-plugin-sdk/vamp-hostsdk/Plugin.h \
+        vamp-plugin-sdk/vamp-hostsdk/PluginHostAdapter.h \
+        vamp-plugin-sdk/vamp-hostsdk/PluginInputDomainAdapter.h \
+        vamp-plugin-sdk/vamp-hostsdk/PluginLoader.h \
+        vamp-plugin-sdk/vamp-hostsdk/PluginSummarisingAdapter.h \
+        vamp-plugin-sdk/vamp-hostsdk/PluginWrapper.h \
+        vamp-plugin-sdk/vamp-hostsdk/RealTime.h \
+        vamp-plugin-sdk/src/vamp-hostsdk/Window.h
+
+VAMP_SOURCES +=  \
+        vamp-plugin-sdk/src/vamp-hostsdk/PluginBufferingAdapter.cpp \
+        vamp-plugin-sdk/src/vamp-hostsdk/PluginChannelAdapter.cpp \
+        vamp-plugin-sdk/src/vamp-hostsdk/PluginHostAdapter.cpp \
+        vamp-plugin-sdk/src/vamp-hostsdk/PluginInputDomainAdapter.cpp \
+        vamp-plugin-sdk/src/vamp-hostsdk/PluginLoader.cpp \
+        vamp-plugin-sdk/src/vamp-hostsdk/PluginSummarisingAdapter.cpp \
+        vamp-plugin-sdk/src/vamp-hostsdk/PluginWrapper.cpp \
+        vamp-plugin-sdk/src/vamp-hostsdk/RealTime.cpp \
+        vamp-plugin-sdk/src/vamp-hostsdk/Files.cpp
--- a/version.h	Tue Jan 10 16:10:33 2017 +0000
+++ b/version.h	Tue Jan 10 16:21:32 2017 +0000
@@ -1,1 +1,1 @@
-#define SV_VERSION "2.5"
+#define SV_VERSION "3.0-beta1"