changeset 116:99d65ba33c88

* More useful status bar text -- show the current play time and the extents of the visible area * Add update-i18n.sh to update the i18n/ts and qm files -- I can't get qmake to do the right thing now that the project file has been split up into several project files * Fix missing Q_OBJECTs, etc, reported by lupdate * Update Russian translation from AlexandrE
author Chris Cannam
date Wed, 07 Mar 2007 17:07:02 +0000
parents c9930ec7a3f9
children 8089a394829a
files audioio/AudioCallbackPlaySource.h document/Document.cpp document/Document.h i18n/sonic-visualiser_ru.qm i18n/sonic-visualiser_ru.ts main/MainWindow.cpp main/MainWindow.h sv.pro transform/FeatureExtractionPluginTransform.h
diffstat 9 files changed, 3051 insertions(+), 1405 deletions(-) [+]
line wrap: on
line diff
--- a/audioio/AudioCallbackPlaySource.h	Mon Mar 05 15:32:55 2007 +0000
+++ b/audioio/AudioCallbackPlaySource.h	Wed Mar 07 17:07:02 2007 +0000
@@ -97,6 +97,11 @@
     virtual size_t getCurrentPlayingFrame();
 
     /**
+     * Return the frame at which playback is expected to end (if not looping).
+     */
+    virtual size_t getPlayEndFrame() { return m_lastModelEndFrame; }
+
+    /**
      * Set the block size of the target audio device.  This should
      * be called by the target class.
      */
--- a/document/Document.cpp	Mon Mar 05 15:32:55 2007 +0000
+++ b/document/Document.cpp	Wed Mar 07 17:07:02 2007 +0000
@@ -643,7 +643,7 @@
     m_d(d),
     m_view(view),
     m_layer(layer),
-    m_name(d->tr("Add %1 Layer").arg(layer->objectName())),
+    m_name(qApp->translate("Add %1 Layer").arg(layer->objectName())),
     m_added(false)
 {
 }
@@ -691,7 +691,7 @@
     m_d(d),
     m_view(view),
     m_layer(layer),
-    m_name(d->tr("Delete %1 Layer").arg(layer->objectName())),
+    m_name(qApp->translate("Delete %1 Layer").arg(layer->objectName())),
     m_added(true)
 {
 }
--- a/document/Document.h	Mon Mar 05 15:32:55 2007 +0000
+++ b/document/Document.h	Wed Mar 07 17:07:02 2007 +0000
@@ -129,6 +129,11 @@
      */
     WaveFileModel *getMainModel() { return m_mainModel; }
 
+    /**
+     * Get the main model (the source for playback sample rate, etc).
+     */
+    const WaveFileModel *getMainModel() const { return m_mainModel; }
+
     std::vector<Model *> getTransformInputModels();
 
     /**
Binary file i18n/sonic-visualiser_ru.qm has changed
--- a/i18n/sonic-visualiser_ru.ts	Mon Mar 05 15:32:55 2007 +0000
+++ b/i18n/sonic-visualiser_ru.ts	Wed Mar 07 17:07:02 2007 +0000
@@ -6,8 +6,28 @@
         <translation>Введите новое значение</translation>
     </message>
     <message>
-        <source>Select a new value in the range %1 to %2:</source>
-        <translation>Выберите новое значение в диапазоне от %1 до %2:</translation>
+        <source>%1: %2%3</source>
+        <translation>%1: %2%3</translation>
+    </message>
+    <message>
+        <source>%2%3</source>
+        <translation>%2%3</translation>
+    </message>
+    <message>
+        <source>New value for %1, from %2 to %3 %4:</source>
+        <translation>Новое значение для %1, от %2 до %3 %4:</translation>
+    </message>
+    <message>
+        <source>New value for %1, from %2 to %3:</source>
+        <translation>Новое значение для %1, от %2 до %3:</translation>
+    </message>
+    <message>
+        <source>Enter a new value from %1 to %2 %3:</source>
+        <translation>Введите новое значение от %1 до %2 %3:</translation>
+    </message>
+    <message>
+        <source>Enter a new value from %1 to %2:</source>
+        <translation>Введите новое значение от %1 до %2:</translation>
     </message>
 </context>
 <context>
@@ -155,12 +175,95 @@
 Bin:<byte value="x9"/>%3
 Значение:<byte value="x9"/>%4</translation>
     </message>
+    <message>
+        <source>Linear</source>
+        <translation type="unfinished">Линейный</translation>
+    </message>
+    <message>
+        <source>dB</source>
+        <translation type="obsolete">Дб</translation>
+    </message>
+    <message>
+        <source>&lt;unknown&gt;</source>
+        <translation>&lt;неизвестно&gt;</translation>
+    </message>
+    <message>
+        <source>Colour</source>
+        <translation type="unfinished">Цвет</translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished">Масштаб</translation>
+    </message>
+    <message>
+        <source>Normalize Columns</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Normalize Visible Area</source>
+        <translation type="unfinished">Нормализовать видимую область</translation>
+    </message>
+    <message>
+        <source>Log</source>
+        <translation type="unfinished">Логарифм.</translation>
+    </message>
+    <message>
+        <source>+/-1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>ColourMapper</name>
+    <message>
+        <source>&lt;unknown&gt;</source>
+        <translation type="unfinished">&lt;неизвестно&gt;</translation>
+    </message>
+    <message>
+        <source>Default</source>
+        <translation type="unfinished">По умолчанию</translation>
+    </message>
+    <message>
+        <source>White on Black</source>
+        <translation type="unfinished">Белое на чёрном</translation>
+    </message>
+    <message>
+        <source>Black on White</source>
+        <translation type="unfinished">Чёрное на белом</translation>
+    </message>
+    <message>
+        <source>Red on Blue</source>
+        <translation type="unfinished">Красное на синем</translation>
+    </message>
+    <message>
+        <source>Yellow on Black</source>
+        <translation type="unfinished">Жёлтое на чёрном</translation>
+    </message>
+    <message>
+        <source>Blue on Black</source>
+        <translation type="unfinished">Синее на чёрном</translation>
+    </message>
+    <message>
+        <source>Sunset</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fruit Salad</source>
+        <translation type="unfinished">Фруктовый салат</translation>
+    </message>
+    <message>
+        <source>Banded</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Highlight</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>CommandHistory</name>
     <message>
         <source>&amp;Undo</source>
-        <translation type="unfinished"></translation>
+        <translation>&amp;Отменить</translation>
     </message>
     <message>
         <source>Ctrl+Z</source>
@@ -168,7 +271,7 @@
     </message>
     <message>
         <source>Re&amp;do</source>
-        <translation type="unfinished"></translation>
+        <translation>Ве&amp;рнуть</translation>
     </message>
     <message>
         <source>Ctrl+Shift+Z</source>
@@ -184,10 +287,18 @@
     </message>
     <message>
         <source>&amp;Undo %1</source>
-        <translation type="unfinished"></translation>
+        <translation>&amp;Отменить %1</translation>
     </message>
     <message>
         <source>Re&amp;do %1</source>
+        <translation>Ве&amp;рнуть %1</translation>
+    </message>
+    <message>
+        <source>Undo the last editing operation</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Redo the last operation that was undone</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
@@ -195,14 +306,21 @@
     <name>Document::AddLayerCommand</name>
     <message>
         <source>Add %1 Layer</source>
-        <translation>Добавить %1 слой</translation>
+        <translation type="obsolete">Добавить %1 слой</translation>
     </message>
 </context>
 <context>
     <name>Document::RemoveLayerCommand</name>
     <message>
         <source>Delete %1 Layer</source>
-        <translation>Удалить %1 слой</translation>
+        <translation type="obsolete">Удалить %1 слой</translation>
+    </message>
+</context>
+<context>
+    <name>FFTModel</name>
+    <message>
+        <source>%1 Hz</source>
+        <translation>%1 Гц</translation>
     </message>
 </context>
 <context>
@@ -215,954 +333,53 @@
         <source>Level: %1%2.%3%4 dB</source>
         <translation>Уровень: %1%2.%3%4 Дб</translation>
     </message>
+    <message>
+        <source>Enter new fader level</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>New fader level, from %1 to %2 dBFS:</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
-    <name>ItemEditDialog</name>
-    <message>
-        <source>Timing</source>
-        <translation>Тайминг</translation>
-    </message>
-    <message>
-        <source>Time:</source>
-        <translation>Время:</translation>
-    </message>
-    <message>
-        <source> frames</source>
-        <translation> выборок</translation>
-    </message>
-    <message>
-        <source> sec</source>
-        <translation>с</translation>
-    </message>
-    <message>
-        <source> usec</source>
-        <translation> мс</translation>
-    </message>
-    <message>
-        <source>Duration:</source>
-        <translation>Длительность:</translation>
-    </message>
-    <message>
-        <source>Properties</source>
-        <translation>Свойства</translation>
-    </message>
-    <message>
-        <source>Value:</source>
-        <translation>Значение:</translation>
-    </message>
-    <message>
-        <source>Text:</source>
-        <translation>Текст:</translation>
-    </message>
-    <message>
-        <source>OK</source>
-        <translation>ОК</translation>
-    </message>
-    <message>
-        <source>Reset</source>
-        <translation>Сбросить</translation>
-    </message>
-    <message>
-        <source>Cancel</source>
-        <translation>Отменить</translation>
+    <name>FeatureExtractionPluginTransform</name>
+    <message>
+        <source>FFT cache failed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Failed to create the FFT model for this transform.
+There may be insufficient memory or disc space to continue.</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
-    <name>Layer</name>
-    <message>
-        <source>Waveform</source>
-        <translation>Волновая форма</translation>
-    </message>
-    <message>
-        <source>Spectrogram</source>
-        <translation>Спектрограмма</translation>
-    </message>
-    <message>
-        <source>Ruler</source>
-        <translation>Линейка</translation>
-    </message>
-    <message>
-        <source>Time Instants</source>
-        <translation>Моменты времени</translation>
-    </message>
-    <message>
-        <source>Time Values</source>
-        <translation>Значения времени</translation>
-    </message>
-    <message>
-        <source>Notes</source>
-        <translation>Ноты</translation>
-    </message>
-    <message>
-        <source>Text</source>
-        <translation>Текст</translation>
-    </message>
-    <message>
-        <source>Colour 3D Plot</source>
-        <translation>Цветной 3D-график</translation>
-    </message>
-    <message>
-        <source>Layer</source>
-        <translation>Слой</translation>
-    </message>
-</context>
-<context>
-    <name>LayerTreeModel</name>
-    <message>
-        <source>Layer</source>
-        <translation>Слой</translation>
-    </message>
-    <message>
-        <source>Model</source>
-        <translation>Модель</translation>
-    </message>
-</context>
-<context>
-    <name>MIDIFileReader</name>
-    <message>
-        <source>Wrong length for long data in MIDI stream (%1, should be %2)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Wrong length for int data in MIDI stream (%1, should be %2)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>getMIDIByte called but no MIDI file open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>End of MIDI file encountered while reading</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Attempt to get more bytes than expected on Track</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Attempt to read past MIDI file end</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>getMIDIBytes called but no MIDI file open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Attempt to get more bytes than available on Track (%1, only have %2)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>getNumberFromMIDIBytes called but no MIDI file open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>skipToNextTrack called but no MIDI file open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Invalid event code %1 found</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Running status used for first event in track</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>No notes in MIDI file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>MIDI file &quot;%1&quot; has no notes in any track</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Merge all tracks</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Merge all non-percussion tracks</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source> - uses GM percussion channel</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Track %1 (%2)%3</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Track %1 (untitled)%3</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Select track or tracks to import</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>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.
-
-Please select the track or merged tracks you wish to import:</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>%1 - vel %2</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>MainWindow</name>
-    <message>
-        <source>Sonic Visualiser</source>
-        <translation>Sonic Visualiser</translation>
-    </message>
-    <message>
-        <source>Playback speed: Full</source>
-        <translation>Скорость воспроизведения: нормальная</translation>
-    </message>
-    <message>
-        <source>&amp;Layer</source>
-        <translation>С&amp;лой</translation>
-    </message>
-    <message>
-        <source>&amp;File</source>
-        <translation>&amp;Файл</translation>
-    </message>
-    <message>
-        <source>File Toolbar</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&amp;New Session</source>
-        <translation>&amp;Создать сессию</translation>
-    </message>
-    <message>
-        <source>Ctrl+N</source>
-        <translation>Ctrl+N</translation>
-    </message>
-    <message>
-        <source>Clear the current Sonic Visualiser session and start a new one</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&amp;Open Session...</source>
-        <translation>&amp;Открыть сессию...</translation>
-    </message>
-    <message>
-        <source>Ctrl+O</source>
-        <translation>Ctrl+O</translation>
-    </message>
-    <message>
-        <source>Open a previously saved Sonic Visualiser session file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&amp;Open...</source>
-        <translation>О&amp;ткрыть...</translation>
-    </message>
-    <message>
-        <source>Open a session file, audio file, or layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&amp;Save Session</source>
-        <translation>Сохр&amp;анить сессию</translation>
-    </message>
-    <message>
-        <source>Ctrl+S</source>
-        <translation>Ctrl+S</translation>
-    </message>
-    <message>
-        <source>Save the current session into a Sonic Visualiser session file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Save Session &amp;As...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Save the current session into a new Sonic Visualiser session file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&amp;Import Audio File...</source>
-        <translation>&amp;Импортировать звуковой файл...</translation>
-    </message>
-    <message>
-        <source>Ctrl+I</source>
-        <translation>Ctrl+I</translation>
-    </message>
-    <message>
-        <source>Import an existing audio file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Import Secondary Audio File...</source>
-        <translation>Импортировать второй звуковой файл...</translation>
-    </message>
-    <message>
-        <source>Ctrl+Shift+I</source>
-        <translation>Ctrl+Shift+I</translation>
-    </message>
-    <message>
-        <source>Import an extra audio file as a separate layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&amp;Export Audio File...</source>
-        <translation>Э&amp;кспортировать звуковой файл...</translation>
-    </message>
-    <message>
-        <source>Export selection as an audio file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Import Annotation &amp;Layer...</source>
-        <translation>И&amp;мпортировать слой аннтоаций...</translation>
-    </message>
-    <message>
-        <source>Ctrl+L</source>
-        <translation>Ctrl+L</translation>
-    </message>
-    <message>
-        <source>Import layer data from an existing file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Export Annotation Layer...</source>
-        <translation>Экспортировать слой аннотаций...</translation>
-    </message>
-    <message>
-        <source>Export layer data to a file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&amp;Quit</source>
-        <translation>Вы&amp;йти</translation>
-    </message>
-    <message>
-        <source>Ctrl+Q</source>
-        <translation>Ctrl+Q</translation>
-    </message>
-    <message>
-        <source>&amp;Edit</source>
-        <translation>&amp;Правка</translation>
-    </message>
-    <message>
-        <source>Cu&amp;t</source>
-        <translation>&amp;Вырезать</translation>
-    </message>
-    <message>
-        <source>Ctrl+X</source>
-        <translation>Ctrl+X</translation>
-    </message>
-    <message>
-        <source>&amp;Copy</source>
-        <translation>С&amp;копировать</translation>
-    </message>
-    <message>
-        <source>Ctrl+C</source>
-        <translation>Ctrl+C</translation>
-    </message>
-    <message>
-        <source>&amp;Paste</source>
-        <translation>Вст&amp;авить</translation>
-    </message>
-    <message>
-        <source>Ctrl+V</source>
-        <translation>Ctrl+V</translation>
-    </message>
-    <message>
-        <source>&amp;Delete Selected Items</source>
-        <translation>&amp;Удалить выбранное</translation>
-    </message>
-    <message>
-        <source>Del</source>
-        <translation>Del</translation>
-    </message>
-    <message>
-        <source>Select &amp;All</source>
-        <translation>В&amp;ыделить всё</translation>
-    </message>
-    <message>
-        <source>Ctrl+A</source>
-        <translation>Ctrl+A</translation>
-    </message>
-    <message>
-        <source>Select &amp;Visible Range</source>
-        <translation>Вы&amp;делить всё видимое</translation>
-    </message>
-    <message>
-        <source>Ctrl+Shift+A</source>
-        <translation>Ctrl+Shift+A</translation>
-    </message>
-    <message>
-        <source>Select to &amp;Start</source>
-        <translation>Выделить до &amp;начала</translation>
-    </message>
-    <message>
-        <source>Shift+Left</source>
-        <translation>Shift+Left</translation>
-    </message>
-    <message>
-        <source>Select to &amp;End</source>
-        <translation>Выделить до &amp;конца</translation>
-    </message>
-    <message>
-        <source>Shift+Right</source>
-        <translation>Shift+Right</translation>
-    </message>
-    <message>
-        <source>C&amp;lear Selection</source>
-        <translation>Сн&amp;ять выделение</translation>
-    </message>
-    <message>
-        <source>Esc</source>
-        <translation>Esc</translation>
-    </message>
-    <message>
-        <source>&amp;Insert Instant at Playback Position</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Enter</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&amp;View</source>
-        <translation>&amp;Вид</translation>
-    </message>
-    <message>
-        <source>&amp;No Text Overlays</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>0</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Show no texts for frame times, layer names etc</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Basic &amp;Text Overlays</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>9</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Show texts for frame times etc, but not layer names etc</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&amp;All Text Overlays</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>8</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Show texts for frame times, layer names etc</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Scroll &amp;Left</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Left</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Scroll the current pane to the left</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Scroll &amp;Right</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Right</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Scroll the current pane to the right</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Jump Left</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Ctrl+Left</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Scroll the current pane a big step to the left</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Jump Right</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Ctrl+Right</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Scroll the current pane a big step to the right</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Zoom &amp;In</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Up</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Increase the zoom level</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Zoom &amp;Out</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Down</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Decrease the zoom level</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Restore &amp;Default Zoom</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Zoom to &amp;Fit</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Zoom to show the whole file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&amp;Pane</source>
-        <translation>П&amp;анель</translation>
-    </message>
-    <message>
-        <source>Add &amp;New Pane</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Alt+N</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Add a new pane containing only a time ruler</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Add New %1 Layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Add a new empty layer of type %1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Alt+T</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Add &amp;Waveform</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Alt+W</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Add a new pane showing a waveform view</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Add a new layer showing a waveform view</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Add &amp;Spectrogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Alt+S</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Add a new pane showing a dB spectrogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Add a new layer showing a dB spectrogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Add &amp;Melodic Range Spectrogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Alt+M</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Add a new pane showing a spectrogram set up for a pitch overview</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Add a new layer showing a spectrogram set up for a pitch overview</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Add &amp;Peak Frequency Spectrogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Alt+P</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Add a new pane showing a spectrogram set up for tracking frequencies</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Add a new layer showing a spectrogram set up for tracking frequencies</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&amp;All Channels Mixed</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&amp;All Channels</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Channel &amp;%1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&amp;Delete Pane</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Alt+D</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Delete the currently selected pane</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Add &amp;Time Ruler</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Add a new layer showing a time ruler</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Add &amp;Existing Layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&amp;Rename Layer...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Alt+R</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Rename the currently active layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&amp;Delete Layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Alt+Shift+D</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Delete the currently active layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&amp;Help</source>
-        <translation>&amp;Справка</translation>
-    </message>
-    <message>
-        <source>&amp;Help Reference</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Open the Sonic Visualiser reference manual</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Sonic Visualiser on the &amp;Web</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Open the Sonic Visualiser website</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&amp;About Sonic Visualiser</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Show information about Sonic Visualiser</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Transport Toolbar</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Rewind to Start</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Home</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Rewind to the start</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Rewind</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>PageUp</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Rewind to the previous time instant in the current layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Play / Pause</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Space</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Start or stop playback from the current position</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Fast Forward</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>PageDown</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Fast forward to the next time instant in the current layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Fast Forward to End</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>End</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Fast-forward to the end</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Play Mode Toolbar</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Constrain Playback to Selection</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>s</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Constrain playback to the selected area</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Loop Playback</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>l</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Loop playback</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Edit Toolbar</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Tools Toolbar</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Navigate</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Select</source>
-        <translation type="unfinished">Выделить</translation>
-    </message>
-    <message>
-        <source>2</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Edit</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>3</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Draw</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>4</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>No audio file loaded.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>%1Hz (resampling to %2Hz)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>%1 (modified)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source> (modified)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Cut</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Add Point</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Add Points</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Select an audio file</source>
+    <name>FileFinder</name>
+    <message>
+        <source>Select file</source>
+        <translation type="unfinished">Выберите файл</translation>
+    </message>
+    <message>
+        <source>All files (*.*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Select a session file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Sonic Visualiser session files (*.sv)
+All files (*.*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <source>Audio files (%1)
 All files (*.*)</source>
-        <translation type="unfinished">Щвуковые файлы (%1)
+        <translation type="unfinished">Звуковые файлы (%1)
 Все файлы (*.*)</translation>
     </message>
     <message>
-        <source>Failed to open file</source>
-        <translation type="unfinished">Не удалось открыть файл</translation>
-    </message>
-    <message>
-        <source>Audio file &quot;%1&quot; could not be opened</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Select a file to export to</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>WAV audio files (*.wav)
-All files (*.*)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Export the selected region only</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Export the whole audio file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Select region to export</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Which region from the original audio file do you want to export?</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Export the selected regions into a single audio file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Export the selected regions into separate files</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Multiple regions of the original audio file are selected.
-What do you want to export?</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Fragment file %1 already exists, aborting</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Failed to write file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Select file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <source>All supported files (%1)
 Sonic Visualiser Layer XML files (*.svl)
 Comma-separated data files (*.csv)
@@ -1170,78 +387,23 @@
 MIDI files (*.mid)
 Text files (*.txt)
 All files (*.*)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>File %1 could not be opened.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Sonic Visualiser Layer XML files (*.svl)
-Comma-separated data files (*.csv)
-Text files (*.txt)
+        <translation type="unfinished">Все поддерживаемые типы файлов (%1)
+XML-файлы слоёв Sonic Visualiser (*.svl)
+Разделённые запятой файлы данных (*.csv)
+Разделённые пробелом файлы .lab (*.lab)
+MIDI-файлы (*.mid)
+Текстовые файлы (*.txt)
+Все файлы (*.*)</translation>
+    </message>
+    <message>
+        <source>All supported files (*.sv %1)
+Sonic Visualiser session files (*.sv)
+Audio files (%1)
 All files (*.*)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Failed to open file %1 for writing</source>
-        <translation type="unfinished">Не удалось открыть файл %1 для записи</translation>
-    </message>
-    <message>
-        <source>Replace the existing main waveform</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Load this file into a new waveform pane</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Select target for import</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>You already have an audio waveform.
-What would you like to do with the new audio file?</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Sonic Visualiser: %1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Sonic Visualiser: %1 [%2]</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Import &quot;%1&quot;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Couldn&apos;t open audio device</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Could not open an audio device for playback.
-Audio playback will not be available during this session.
-</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Select a session file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Sonic Visualiser session files (*.sv)
-All files (*.*)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>File &quot;%1&quot; does not exist or is not a readable file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Session file &quot;%1&quot; could not be opened</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished">All supported files (*.sv %1)
+Sonic Visualiser session files (*.sv)
+Audio files (%1)
+All files (*.*)</translation>
     </message>
     <message>
         <source>All supported files (*.sv %1 %2)
@@ -1249,93 +411,1207 @@
 Audio files (%1)
 Layer files (%2)
 All files (*.*)</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished">All supported files (*.sv %1 %2)
+Sonic Visualiser session files (*.sv)
+Audio files (%1)
+Layer files (%2)
+All files (*.*)</translation>
+    </message>
+    <message>
+        <source>File does not exist</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>File &quot;%1&quot; does not exist</source>
+        <translation type="unfinished">Файл &quot;%1&quot; не существует</translation>
+    </message>
+    <message>
+        <source>File is not readable</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>File &quot;%1&quot; can not be read</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Directory selected</source>
+        <translation type="unfinished">Выбран каталог</translation>
+    </message>
+    <message>
+        <source>File &quot;%1&quot; is a directory</source>
+        <translation type="unfinished">Файл &quot;%1&quot; является каталогом</translation>
+    </message>
+    <message>
+        <source>Non-file selected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Path &quot;%1&quot; is not a file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>File is empty</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>File &quot;%1&quot; is empty</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Select a file to export to</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>WAV audio files (*.wav)
+All files (*.*)</source>
+        <translation type="unfinished">Звуковые файлы WAV (*.wav)
+Все файлы (*.*)</translation>
+    </message>
+    <message>
+        <source>Sonic Visualiser Layer XML files (*.svl)
+Comma-separated data files (*.csv)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="unfinished">XML-файлы слоёв Sonic Visualiser (*.svl)
+Разделённые запятой данные (*.csv)
+Текстовые файлы (*.txt)
+Все файлы (*.*)</translation>
+    </message>
+    <message>
+        <source>File exists</source>
+        <translation type="unfinished">Такой файл уже существует</translation>
+    </message>
+    <message>
+        <source>The file &quot;%1&quot; already exists.
+Do you want to overwrite it?</source>
+        <translation type="unfinished">Файл &quot;%1&quot; уже существует.
+Вы хотите перезаписать его?</translation>
+    </message>
+    <message>
+        <source>Audio file &quot;%1&quot; could not be opened.
+Do you want to locate it?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>File &quot;%1&quot; could not be opened.
+Do you want to locate it?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Failed to open file</source>
+        <translation type="unfinished">Не удалось открыть файл</translation>
+    </message>
+    <message>
+        <source>Locate file...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Use URL...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished">Отменить</translation>
+    </message>
+    <message>
+        <source>Use URL</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Please enter the URL to use for this file:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Failed to open location</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>URL &quot;%1&quot; could not be opened</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>ItemEditDialog</name>
+    <message>
+        <source>Timing</source>
+        <translation>Тайминг</translation>
+    </message>
+    <message>
+        <source>Time:</source>
+        <translation>Время:</translation>
+    </message>
+    <message>
+        <source> frames</source>
+        <translation> выборок</translation>
+    </message>
+    <message>
+        <source> sec</source>
+        <translation>с</translation>
+    </message>
+    <message>
+        <source> usec</source>
+        <translation> мс</translation>
+    </message>
+    <message>
+        <source>Duration:</source>
+        <translation>Длительность:</translation>
+    </message>
+    <message>
+        <source>Properties</source>
+        <translation>Свойства</translation>
+    </message>
+    <message>
+        <source>Value:</source>
+        <translation>Значение:</translation>
+    </message>
+    <message>
+        <source>Text:</source>
+        <translation>Текст:</translation>
+    </message>
+    <message>
+        <source>OK</source>
+        <translation>ОК</translation>
+    </message>
+    <message>
+        <source>Reset</source>
+        <translation>Сбросить</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Отменить</translation>
+    </message>
+</context>
+<context>
+    <name>Layer</name>
+    <message>
+        <source>Waveform</source>
+        <translation>Волновая форма</translation>
+    </message>
+    <message>
+        <source>Spectrogram</source>
+        <translation>Спектрограмма</translation>
+    </message>
+    <message>
+        <source>Ruler</source>
+        <translation>Линейка</translation>
+    </message>
+    <message>
+        <source>Time Instants</source>
+        <translation>Моменты времени</translation>
+    </message>
+    <message>
+        <source>Time Values</source>
+        <translation>Значения времени</translation>
+    </message>
+    <message>
+        <source>Notes</source>
+        <translation>Ноты</translation>
+    </message>
+    <message>
+        <source>Text</source>
+        <translation>Текст</translation>
+    </message>
+    <message>
+        <source>Colour 3D Plot</source>
+        <translation>Цветной 3D-график</translation>
+    </message>
+    <message>
+        <source>Layer</source>
+        <translation>Слой</translation>
+    </message>
+    <message>
+        <source>Spectrum</source>
+        <translation>Спектр</translation>
+    </message>
+    <message>
+        <source>Time Slice</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>LayerTreeModel</name>
+    <message>
+        <source>Layer</source>
+        <translation>Слой</translation>
+    </message>
+    <message>
+        <source>Model</source>
+        <translation>Модель</translation>
+    </message>
+</context>
+<context>
+    <name>ListInputDialog</name>
+    <message>
+        <source>OK</source>
+        <translation>ОК</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Отменить</translation>
+    </message>
+</context>
+<context>
+    <name>MIDIFileReader</name>
+    <message>
+        <source>Wrong length for long data in MIDI stream (%1, should be %2)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Wrong length for int data in MIDI stream (%1, should be %2)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>getMIDIByte called but no MIDI file open</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>End of MIDI file encountered while reading</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Attempt to get more bytes than expected on Track</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Attempt to read past MIDI file end</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>getMIDIBytes called but no MIDI file open</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Attempt to get more bytes than available on Track (%1, only have %2)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>getNumberFromMIDIBytes called but no MIDI file open</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>skipToNextTrack called but no MIDI file open</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Invalid event code %1 found</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Running status used for first event in track</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>No notes in MIDI file</source>
+        <translation>В MIDI-файле нет нот</translation>
+    </message>
+    <message>
+        <source>MIDI file &quot;%1&quot; has no notes in any track</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Merge all tracks</source>
+        <translation>Объединить все дорожки</translation>
+    </message>
+    <message>
+        <source>Merge all non-percussion tracks</source>
+        <translation>Объединить все неперкуссионные дорожки</translation>
+    </message>
+    <message>
+        <source> - uses GM percussion channel</source>
+        <translation> — использует канал перкуссии GM</translation>
+    </message>
+    <message>
+        <source>Track %1 (%2)%3</source>
+        <translation>Дорожка %1 (%2)%3</translation>
+    </message>
+    <message>
+        <source>Track %1 (untitled)%3</source>
+        <translation>Дорожка %1 (без имени)%3</translation>
+    </message>
+    <message>
+        <source>Select track or tracks to import</source>
+        <translation>Выберите одну или несколько дорожек для импорта</translation>
+    </message>
+    <message>
+        <source>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.
+
+Please select the track or merged tracks you wish to import:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>%1 - vel %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>MainWindow</name>
+    <message>
+        <source>Sonic Visualiser</source>
+        <translation>Sonic Visualiser</translation>
+    </message>
+    <message>
+        <source>&amp;Layer</source>
+        <translation>С&amp;лой</translation>
+    </message>
+    <message>
+        <source>&amp;File</source>
+        <translation>&amp;Файл</translation>
+    </message>
+    <message>
+        <source>File Toolbar</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&amp;New Session</source>
+        <translation>&amp;Создать сессию</translation>
+    </message>
+    <message>
+        <source>Ctrl+N</source>
+        <translation>Ctrl+N</translation>
+    </message>
+    <message>
+        <source>Clear the current Sonic Visualiser session and start a new one</source>
+        <translation type="obsolete">Очистить текущую сессию Sonic Visualiser и начать новую</translation>
+    </message>
+    <message>
+        <source>&amp;Open Session...</source>
+        <translation>&amp;Открыть сессию...</translation>
+    </message>
+    <message>
+        <source>Ctrl+O</source>
+        <translation>Ctrl+O</translation>
+    </message>
+    <message>
+        <source>Open a previously saved Sonic Visualiser session file</source>
+        <translation>Открыть файл сохранённой ранее сессии Sonic Visualiser</translation>
+    </message>
+    <message>
+        <source>&amp;Open...</source>
+        <translation>О&amp;ткрыть...</translation>
+    </message>
+    <message>
+        <source>Open a session file, audio file, or layer</source>
+        <translation>Открыть файл сессии, звуковой файл или слой</translation>
+    </message>
+    <message>
+        <source>&amp;Save Session</source>
+        <translation>Сохр&amp;анить сессию</translation>
+    </message>
+    <message>
+        <source>Ctrl+S</source>
+        <translation>Ctrl+S</translation>
+    </message>
+    <message>
+        <source>Save the current session into a Sonic Visualiser session file</source>
+        <translation>Сохранить в файл текущую сессию Sonic Visualiser</translation>
+    </message>
+    <message>
+        <source>Save Session &amp;As...</source>
+        <translation>Сохранить сессию &amp;как...</translation>
+    </message>
+    <message>
+        <source>Save the current session into a new Sonic Visualiser session file</source>
+        <translation>Сохранить текущую сессию Sonic Visualiser в файл с другим именем</translation>
+    </message>
+    <message>
+        <source>&amp;Import Audio File...</source>
+        <translation>&amp;Импортировать звуковой файл...</translation>
+    </message>
+    <message>
+        <source>Ctrl+I</source>
+        <translation>Ctrl+I</translation>
+    </message>
+    <message>
+        <source>Import an existing audio file</source>
+        <translation>Импортировать существующий звуковой файл</translation>
+    </message>
+    <message>
+        <source>Import Secondary Audio File...</source>
+        <translation>Импортировать второй звуковой файл...</translation>
+    </message>
+    <message>
+        <source>Ctrl+Shift+I</source>
+        <translation>Ctrl+Shift+I</translation>
+    </message>
+    <message>
+        <source>Import an extra audio file as a separate layer</source>
+        <translation>Импортировать ещё один звуковой файл в отдельный слой</translation>
+    </message>
+    <message>
+        <source>&amp;Export Audio File...</source>
+        <translation>Э&amp;кспортировать звуковой файл...</translation>
+    </message>
+    <message>
+        <source>Export selection as an audio file</source>
+        <translation>Экспортировать выделенное в звуковой файл</translation>
+    </message>
+    <message>
+        <source>Import Annotation &amp;Layer...</source>
+        <translation>И&amp;мпортировать слой аннотаций...</translation>
+    </message>
+    <message>
+        <source>Ctrl+L</source>
+        <translation>Ctrl+L</translation>
+    </message>
+    <message>
+        <source>Import layer data from an existing file</source>
+        <translation>Импортировать данные слоя из существующего файла</translation>
+    </message>
+    <message>
+        <source>Export Annotation Layer...</source>
+        <translation>Экспортировать слой аннотаций...</translation>
+    </message>
+    <message>
+        <source>Export layer data to a file</source>
+        <translation>Экспортировать данные слоя в файл</translation>
+    </message>
+    <message>
+        <source>&amp;Quit</source>
+        <translation>Вы&amp;йти</translation>
+    </message>
+    <message>
+        <source>Ctrl+Q</source>
+        <translation>Ctrl+Q</translation>
+    </message>
+    <message>
+        <source>&amp;Edit</source>
+        <translation>&amp;Правка</translation>
+    </message>
+    <message>
+        <source>Cu&amp;t</source>
+        <translation>&amp;Вырезать</translation>
+    </message>
+    <message>
+        <source>Ctrl+X</source>
+        <translation>Ctrl+X</translation>
+    </message>
+    <message>
+        <source>&amp;Copy</source>
+        <translation>С&amp;копировать</translation>
+    </message>
+    <message>
+        <source>Ctrl+C</source>
+        <translation>Ctrl+C</translation>
+    </message>
+    <message>
+        <source>&amp;Paste</source>
+        <translation>Вст&amp;авить</translation>
+    </message>
+    <message>
+        <source>Ctrl+V</source>
+        <translation>Ctrl+V</translation>
+    </message>
+    <message>
+        <source>&amp;Delete Selected Items</source>
+        <translation>&amp;Удалить выбранное</translation>
+    </message>
+    <message>
+        <source>Del</source>
+        <translation>Del</translation>
+    </message>
+    <message>
+        <source>Select &amp;All</source>
+        <translation>В&amp;ыделить всё</translation>
+    </message>
+    <message>
+        <source>Ctrl+A</source>
+        <translation>Ctrl+A</translation>
+    </message>
+    <message>
+        <source>Select &amp;Visible Range</source>
+        <translation>Вы&amp;делить всё видимое</translation>
+    </message>
+    <message>
+        <source>Ctrl+Shift+A</source>
+        <translation>Ctrl+Shift+A</translation>
+    </message>
+    <message>
+        <source>Select to &amp;Start</source>
+        <translation>Выделить до &amp;начала</translation>
+    </message>
+    <message>
+        <source>Shift+Left</source>
+        <translation>Shift+Left</translation>
+    </message>
+    <message>
+        <source>Select to &amp;End</source>
+        <translation>Выделить до &amp;конца</translation>
+    </message>
+    <message>
+        <source>Shift+Right</source>
+        <translation>Shift+Right</translation>
+    </message>
+    <message>
+        <source>C&amp;lear Selection</source>
+        <translation>Сн&amp;ять выделение</translation>
+    </message>
+    <message>
+        <source>Esc</source>
+        <translation>Esc</translation>
+    </message>
+    <message>
+        <source>&amp;Insert Instant at Playback Position</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Enter</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&amp;View</source>
+        <translation>&amp;Вид</translation>
+    </message>
+    <message>
+        <source>0</source>
+        <translation>0</translation>
+    </message>
+    <message>
+        <source>9</source>
+        <translation>9</translation>
+    </message>
+    <message>
+        <source>8</source>
+        <translation>8</translation>
+    </message>
+    <message>
+        <source>Scroll &amp;Left</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Left</source>
+        <translation>Влево</translation>
+    </message>
+    <message>
+        <source>Scroll the current pane to the left</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Scroll &amp;Right</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Right</source>
+        <translation>Вправо</translation>
+    </message>
+    <message>
+        <source>Scroll the current pane to the right</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Ctrl+Left</source>
+        <translation>Ctrl+Влево</translation>
+    </message>
+    <message>
+        <source>Scroll the current pane a big step to the left</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Ctrl+Right</source>
+        <translation>Ctrl+Вправо</translation>
+    </message>
+    <message>
+        <source>Scroll the current pane a big step to the right</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Zoom &amp;In</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Up</source>
+        <translation>Вверх</translation>
+    </message>
+    <message>
+        <source>Increase the zoom level</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Zoom &amp;Out</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Down</source>
+        <translation>Вниз</translation>
+    </message>
+    <message>
+        <source>Decrease the zoom level</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Restore &amp;Default Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Zoom to &amp;Fit</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Zoom to show the whole file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&amp;Pane</source>
+        <translation>П&amp;анель</translation>
+    </message>
+    <message>
+        <source>Add &amp;New Pane</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Alt+N</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add a new pane containing only a time ruler</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add New %1 Layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add a new empty layer of type %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Alt+T</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add &amp;Waveform</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Alt+W</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add a new pane showing a waveform view</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add a new layer showing a waveform view</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add &amp;Spectrogram</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Alt+S</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add a new pane showing a dB spectrogram</source>
+        <translation type="obsolete">Добавить новую панель со спектрограммой в Дб</translation>
+    </message>
+    <message>
+        <source>Add &amp;Melodic Range Spectrogram</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Alt+M</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add &amp;Peak Frequency Spectrogram</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Alt+P</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add a new pane showing a spectrogram set up for tracking frequencies</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add a new layer showing a spectrogram set up for tracking frequencies</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&amp;All Channels Mixed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&amp;All Channels</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Channel &amp;%1</source>
+        <translation>Канал &amp;%1</translation>
+    </message>
+    <message>
+        <source>&amp;Delete Pane</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Alt+D</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Delete the currently selected pane</source>
+        <translation type="obsolete">Удалить активную панель</translation>
+    </message>
+    <message>
+        <source>Add &amp;Time Ruler</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add a new layer showing a time ruler</source>
+        <translation>Добавить новый слой с линейкой</translation>
+    </message>
+    <message>
+        <source>Add &amp;Existing Layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&amp;Rename Layer...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Alt+R</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rename the currently active layer</source>
+        <translation>Переименовать активный слой</translation>
+    </message>
+    <message>
+        <source>&amp;Delete Layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Alt+Shift+D</source>
+        <translation>Alt+Shift+D</translation>
+    </message>
+    <message>
+        <source>Delete the currently active layer</source>
+        <translation>Удалить активный слой</translation>
+    </message>
+    <message>
+        <source>&amp;Help</source>
+        <translation>&amp;Справка</translation>
+    </message>
+    <message>
+        <source>&amp;Help Reference</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Open the Sonic Visualiser reference manual</source>
+        <translation>Открыть справку по Sonic Visualiser</translation>
+    </message>
+    <message>
+        <source>Sonic Visualiser on the &amp;Web</source>
+        <translation>Sonic Visualiser в &amp;Интернете</translation>
+    </message>
+    <message>
+        <source>Open the Sonic Visualiser website</source>
+        <translation>Открыть веб-сайт Sonic Visualiser</translation>
+    </message>
+    <message>
+        <source>&amp;About Sonic Visualiser</source>
+        <translation>&amp;О Sonic Visualiser</translation>
+    </message>
+    <message>
+        <source>Show information about Sonic Visualiser</source>
+        <translation>Показать информацию о Sonic Visualiser</translation>
+    </message>
+    <message>
+        <source>Transport Toolbar</source>
+        <translation>Панель транспорта</translation>
+    </message>
+    <message>
+        <source>Rewind to Start</source>
+        <translation>Перемотать в начало</translation>
+    </message>
+    <message>
+        <source>Home</source>
+        <translation>Домой</translation>
+    </message>
+    <message>
+        <source>Rewind to the start</source>
+        <translation>Перемотать в начало</translation>
+    </message>
+    <message>
+        <source>Rewind</source>
+        <translation>Назад</translation>
+    </message>
+    <message>
+        <source>PageUp</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rewind to the previous time instant in the current layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Play / Pause</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Space</source>
+        <translation>Пробел</translation>
+    </message>
+    <message>
+        <source>Start or stop playback from the current position</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fast Forward</source>
+        <translation>Вперёд</translation>
+    </message>
+    <message>
+        <source>PageDown</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fast forward to the next time instant in the current layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fast Forward to End</source>
+        <translation>Перемотать до конца</translation>
+    </message>
+    <message>
+        <source>End</source>
+        <translation>Конец</translation>
+    </message>
+    <message>
+        <source>Fast-forward to the end</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Play Mode Toolbar</source>
+        <translation>Панель режима воспроизведения</translation>
+    </message>
+    <message>
+        <source>Constrain Playback to Selection</source>
+        <translation>Ограничить воспроизведение выделением</translation>
+    </message>
+    <message>
+        <source>s</source>
+        <translation>с</translation>
+    </message>
+    <message>
+        <source>Constrain playback to the selected area</source>
+        <translation>Ограничить воспроизведение выделенной областью</translation>
+    </message>
+    <message>
+        <source>Loop Playback</source>
+        <translation>Воспроизведение в цикле</translation>
+    </message>
+    <message>
+        <source>l</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Loop playback</source>
+        <translation>Воспроизведение в цикле</translation>
+    </message>
+    <message>
+        <source>Edit Toolbar</source>
+        <translation>Панель правки</translation>
+    </message>
+    <message>
+        <source>Tools Toolbar</source>
+        <translation>Панель инструментов</translation>
+    </message>
+    <message>
+        <source>Navigate</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>1</source>
+        <translation type="unfinished">1</translation>
+    </message>
+    <message>
+        <source>Select</source>
+        <translation type="unfinished">Выделить</translation>
+    </message>
+    <message>
+        <source>2</source>
+        <translation type="unfinished">2</translation>
+    </message>
+    <message>
+        <source>Edit</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>3</source>
+        <translation type="unfinished">3</translation>
+    </message>
+    <message>
+        <source>Draw</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>4</source>
+        <translation type="unfinished">4</translation>
+    </message>
+    <message>
+        <source>No audio file loaded.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>%1Hz (resampling to %2Hz)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>%1 (modified)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source> (modified)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cut</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add Point</source>
+        <translation>Добавить точку</translation>
+    </message>
+    <message>
+        <source>Add Points</source>
+        <translation>Добавить точки</translation>
+    </message>
+    <message>
+        <source>Select an audio file</source>
+        <translation type="obsolete">Выбрать звуковой файл</translation>
+    </message>
+    <message>
+        <source>Audio files (%1)
+All files (*.*)</source>
+        <translation type="obsolete">Звуковые файлы (%1)
+Все файлы (*.*)</translation>
+    </message>
+    <message>
+        <source>Failed to open file</source>
+        <translation>Не удалось открыть файл</translation>
+    </message>
+    <message>
+        <source>Audio file &quot;%1&quot; could not be opened</source>
+        <translation>Не удалось открыть звуковой файл &quot;%1&quot;</translation>
+    </message>
+    <message>
+        <source>WAV audio files (*.wav)
+All files (*.*)</source>
+        <translation type="obsolete">Звуковые файлы WAV (*.wav)
+Все файлы (*.*)</translation>
+    </message>
+    <message>
+        <source>Export the selected region only</source>
+        <translation>Экспортировать только выделенную область</translation>
+    </message>
+    <message>
+        <source>Export the whole audio file</source>
+        <translation>Экспортировать весь звуковой файл</translation>
+    </message>
+    <message>
+        <source>Select region to export</source>
+        <translation>Выделите область для экспорта</translation>
+    </message>
+    <message>
+        <source>Which region from the original audio file do you want to export?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Export the selected regions into a single audio file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Export the selected regions into separate files</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Multiple regions of the original audio file are selected.
+What do you want to export?</source>
+        <translation>Выбрано несколько областей исходного звукового файла.
+Какую из них вы хотите экспортировать?</translation>
+    </message>
+    <message>
+        <source>Fragment file %1 already exists, aborting</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Failed to write file</source>
+        <translation>Не удалось записать файл</translation>
+    </message>
+    <message>
+        <source>Select file</source>
+        <translation type="obsolete">Выберите файл</translation>
+    </message>
+    <message>
+        <source>All supported files (%1)
+Sonic Visualiser Layer XML files (*.svl)
+Comma-separated data files (*.csv)
+Space-separated .lab files (*.lab)
+MIDI files (*.mid)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="obsolete">Все поддерживаемые типы файлов (%1)
+XML-файлы слоёв Sonic Visualiser (*.svl)
+Разделённые запятой файлы данных (*.csv)
+Разделённые пробелом файлы .lab (*.lab)
+MIDI-файлы (*.mid)
+Текстовые файлы (*.txt)
+Все файлы (*.*)</translation>
+    </message>
+    <message>
+        <source>File %1 could not be opened.</source>
+        <translation>Не удалось открыть файл %1.</translation>
+    </message>
+    <message>
+        <source>Sonic Visualiser Layer XML files (*.svl)
+Comma-separated data files (*.csv)
+Text files (*.txt)
+All files (*.*)</source>
+        <translation type="obsolete">XML-файлы слоёв Sonic Visualiser (*.svl)
+Разделённые запятой данные (*.csv)
+Текстовые файлы (*.txt)
+Все файлы (*.*)</translation>
+    </message>
+    <message>
+        <source>Failed to open file %1 for writing</source>
+        <translation>Не удалось открыть файл %1 для записи</translation>
+    </message>
+    <message>
+        <source>Replace the existing main waveform</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Load this file into a new waveform pane</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Select target for import</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Sonic Visualiser: %1</source>
+        <translation>Sonic Visualiser: %1</translation>
+    </message>
+    <message>
+        <source>Sonic Visualiser: %1 [%2]</source>
+        <translation>Sonic Visualiser: %1 [%2]</translation>
+    </message>
+    <message>
+        <source>Import &quot;%1&quot;</source>
+        <translation>Импортировать &quot;%1&quot;</translation>
+    </message>
+    <message>
+        <source>Couldn&apos;t open audio device</source>
+        <translation>Не удалось открыть звуковое устройство</translation>
+    </message>
+    <message>
+        <source>Could not open an audio device for playback.
+Audio playback will not be available during this session.
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>File &quot;%1&quot; does not exist or is not a readable file</source>
+        <translation type="obsolete">Файл &quot;%1&quot; не существует, либо в него нельзя записывать</translation>
+    </message>
+    <message>
+        <source>Session file &quot;%1&quot; could not be opened</source>
+        <translation>Не удалось открыть файл сессии &quot;%1&quot;</translation>
+    </message>
+    <message>
+        <source>All supported files (*.sv %1 %2)
+Sonic Visualiser session files (*.sv)
+Audio files (%1)
+Layer files (%2)
+All files (*.*)</source>
+        <translation type="obsolete">All supported files (*.sv %1 %2)
+Sonic Visualiser session files (*.sv)
+Audio files (%1)
+Layer files (%2)
+All files (*.*)</translation>
     </message>
     <message>
         <source>All supported files (*.sv %1)
 Sonic Visualiser session files (*.sv)
 Audio files (%1)
 All files (*.*)</source>
-        <translation type="unfinished"></translation>
+        <translation type="obsolete">All supported files (*.sv %1)
+Sonic Visualiser session files (*.sv)
+Audio files (%1)
+All files (*.*)</translation>
     </message>
     <message>
         <source>Select a file to open</source>
-        <translation type="unfinished"></translation>
+        <translation type="obsolete">Выберите файл для открытия</translation>
     </message>
     <message>
         <source>File &quot;%1&quot; could not be opened</source>
-        <translation type="unfinished">Не удалось открыть файл &quot;%1&quot;</translation>
+        <translation>Не удалось открыть файл &quot;%1&quot;</translation>
     </message>
     <message>
         <source>SV XML file read error:
 %1</source>
-        <translation type="unfinished"></translation>
+        <translation>Ошибка чтения XML-файла SV:
+%1</translation>
     </message>
     <message>
         <source>Session modified</source>
-        <translation type="unfinished"></translation>
+        <translation>Сессия изменена</translation>
     </message>
     <message>
         <source>The current session has been modified.
 Do you want to save it?</source>
-        <translation type="unfinished"></translation>
+        <translation>Текущая сессия была изменена.
+Вы хотите сохранить её?</translation>
     </message>
     <message>
         <source>Failed to save file</source>
-        <translation type="unfinished"></translation>
+        <translation>Не удалось сохранить файл</translation>
     </message>
     <message>
         <source>Session file &quot;%1&quot; could not be saved.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Select a file to save to</source>
-        <translation type="unfinished"></translation>
+        <translation>Не удалось сохранить файл сессии &quot;%1&quot;.</translation>
     </message>
     <message>
         <source>Directory selected</source>
-        <translation type="unfinished"></translation>
+        <translation type="obsolete">Выбран каталог</translation>
     </message>
     <message>
         <source>File &quot;%1&quot; is a directory</source>
-        <translation type="unfinished"></translation>
+        <translation type="obsolete">Файл &quot;%1&quot; является каталогом</translation>
     </message>
     <message>
         <source>File exists</source>
-        <translation type="unfinished"></translation>
+        <translation type="obsolete">Такой файл уже существует</translation>
     </message>
     <message>
         <source>The file &quot;%1&quot; already exists.
 Do you want to overwrite it?</source>
-        <translation type="unfinished"></translation>
+        <translation type="obsolete">Файл &quot;%1&quot; уже существует.
+Вы хотите перезаписать его?</translation>
     </message>
     <message>
         <source>Failed to write to file &quot;%1&quot;: %2</source>
-        <translation type="unfinished"></translation>
+        <translation>Не удалось записать файл &quot;%1&quot;: %2</translation>
     </message>
     <message>
         <source>Delete Pane</source>
-        <translation type="unfinished"></translation>
+        <translation>Удалить панель</translation>
     </message>
     <message>
         <source>Rename Layer</source>
-        <translation type="unfinished"></translation>
+        <translation>Переименовать слой</translation>
     </message>
     <message>
         <source>New name for this layer:</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Playback speed: %1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Full</source>
-        <translation type="unfinished"></translation>
+        <translation>Новое имя этого слоя:</translation>
     </message>
     <message>
         <source>Sample rate mismatch</source>
-        <translation type="unfinished"></translation>
+        <translation>Несоответствие частоты дискретизации</translation>
     </message>
     <message>
         <source>The sample rate of this audio file (%1 Hz) does not match
@@ -1346,113 +1622,509 @@
     </message>
     <message>
         <source>Failed to regenerate layer</source>
+        <translation>Не удалось повторно создать слой</translation>
+    </message>
+    <message>
+        <source>http://www.sonicvisualiser.org/</source>
+        <translation>http://www.sonicvisualiser.org/</translation>
+    </message>
+    <message>
+        <source>http://www.sonicvisualiser.org/doc/reference/en/</source>
+        <translation>http://www.sonicvisualiser.org/doc/reference/en/</translation>
+    </message>
+    <message>
+        <source>Release %1 : Revision %2</source>
+        <translation>Версия %1 : Редакция %2</translation>
+    </message>
+    <message>
+        <source>Release %1</source>
+        <translation>Версия %1</translation>
+    </message>
+    <message>
+        <source>Unreleased : Revision %1</source>
+        <translation>Не выпущено : редакция %1</translation>
+    </message>
+    <message>
+        <source>&lt;h3&gt;About Sonic Visualiser&lt;/h3&gt;</source>
+        <translation>&lt;h3&gt;О программе Sonic Visualiser&lt;/h3&gt;</translation>
+    </message>
+    <message>
+        <source>&lt;p&gt;%1 : %2 build&lt;/p&gt;</source>
+        <translation type="obsolete">&lt;p&gt;%1 : сборка %2&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <source>Debug</source>
+        <translation>Отладка</translation>
+    </message>
+    <message>
+        <source>Release</source>
+        <translation>Версия</translation>
+    </message>
+    <message>
+        <source>&lt;p&gt;Statically linked</source>
+        <translation>&lt;p&gt;Статически слинкована</translation>
+    </message>
+    <message>
+        <source>&lt;br&gt;With Qt (v%1) &amp;copy; Trolltech AS</source>
+        <translation>&lt;br&gt;С Qt (v%1) &amp;copy; Trolltech AS</translation>
+    </message>
+    <message>
+        <source>&lt;br&gt;With JACK audio output (v%1) &amp;copy; Paul Davis and Jack O&apos;Quin</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;br&gt;With PortAudio audio output &amp;copy; Ross Bencina and Phil Burk</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <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>
+        <source>&lt;br&gt;With MAD mp3 decoder (v%1) &amp;copy; Underbit Technologies Inc</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;br&gt;With libsamplerate (v%1) &amp;copy; Erik de Castro Lopo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;br&gt;With libsndfile (v%1) &amp;copy; Erik de Castro Lopo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;br&gt;With FFTW3 (v%1) &amp;copy; Matteo Frigo and MIT</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;br&gt;With Vamp plugin support (API v%1, SDK v%2) &amp;copy; Chris Cannam</source>
+        <translation type="obsolete">&lt;br&gt;С поддержкой расширений Vamp (API v%1, SDK v%2) &amp;copy; Chris Cannam</translation>
+    </message>
+    <message>
+        <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>
+        <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>
+        <source>About Sonic Visualiser</source>
+        <translation>О программе Sonic Visualiser</translation>
+    </message>
+    <message>
+        <source>Failed to generate layer</source>
+        <translation>Не удалось создать слой</translation>
+    </message>
+    <message>
+        <source>Adjust the application preferences</source>
+        <translation>Изменить параметры работы приложения</translation>
+    </message>
+    <message>
+        <source>You already have an audio waveform loaded.
+What would you like to do with the new audio file?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Sharpen percussive transients</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Run time stretcher in mono only</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&amp;Recent Files</source>
+        <translation>Н&amp;едавние файлы</translation>
+    </message>
+    <message>
+        <source>&amp;Preferences...</source>
+        <translation>&amp;Параметры...</translation>
+    </message>
+    <message>
+        <source>;</source>
+        <translation>;</translation>
+    </message>
+    <message>
+        <source>Show &amp;Zoom Wheels</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Z</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Show thumbwheels for zooming horizontally and vertically</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>%1 by Category</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Unclassified</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>%1 by Maker</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Unknown</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>%1 by Plugin Name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>%1...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add Spectr&amp;um</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Alt+U</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add a new pane showing a frequency spectrum</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add a new layer showing a frequency spectrum</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Playback Speedup</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&amp;Transform</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>%1: %2</source>
+        <translation type="unfinished">%1: %2</translation>
+    </message>
+    <message>
+        <source>&amp;Recent Transforms</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source> [\(&lt;].*$</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Audio processing overload</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Audio effects plugin auditioning has been disabled
+due to a processing overload.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Failed to generate a derived layer.
+
+The layer transform &quot;%1&quot; failed.
+
+This probably means that a plugin failed to initialise, perhaps because it
+rejected the processing block size that was requested.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <source>Failed to regenerate derived layer &quot;%1&quot;.
+
 The layer transform &quot;%2&quot; failed to run.
+
 This probably means the layer used a plugin that is not currently available.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <source>http://www.sonicvisualiser.org/</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>http://www.sonicvisualiser.org/doc/reference/en/</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Release %1 : Revision %2</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Release %1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Unreleased : Revision %1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&lt;h3&gt;About Sonic Visualiser&lt;/h3&gt;</source>
-        <translation type="unfinished"></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;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&lt;p&gt;%1 : %2 build&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Debug</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Release</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&lt;p&gt;Statically linked</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&lt;br&gt;With Qt (v%1) &amp;copy; Trolltech AS</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&lt;br&gt;With JACK audio output (v%1) &amp;copy; Paul Davis and Jack O&apos;Quin</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&lt;br&gt;With PortAudio audio output &amp;copy; Ross Bencina and Phil Burk</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <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>
-        <source>&lt;br&gt;With MAD mp3 decoder (v%1) &amp;copy; Underbit Technologies Inc</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&lt;br&gt;With libsamplerate (v%1) &amp;copy; Erik de Castro Lopo</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&lt;br&gt;With libsndfile (v%1) &amp;copy; Erik de Castro Lopo</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&lt;br&gt;With FFTW3 (v%1) &amp;copy; Matteo Frigo and MIT</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>&lt;br&gt;With Vamp plugin support (API v%1, SDK v%2) &amp;copy; Chris Cannam</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <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>
-        <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>
-        <source>About Sonic Visualiser</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Failed to generate layer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>The layer transform &quot;%1&quot; failed to run.
-This probably means that a plugin failed to initialise.</source>
+        <source>Show Property Bo&amp;xes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>X</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Show the layer property boxes at the side of the main window</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add %1 Pane</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;br&gt;With liblo Lite OSC library (v%1) &amp;copy; Steve Harris</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;p&gt;The OSC URL for this instance is: &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Abandon the current Sonic Visualiser session and start a new one</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Open Lo&amp;cation...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Ctrl+Shift+O</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Open or import a file from a remote URL</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Exit Sonic Visualiser</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cut the selection from the current layer to the clipboard</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Copy the selection from the current layer to the clipboard</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Paste from the clipboard to the current layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Delete the selection from the current layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Select the whole duration of the current session</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Select the time range corresponding to the current window width</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Select from the start of the session to the current playback position</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Select from the current playback position to the end of the session</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Clear the selection</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Insert a new time instant at the current playback position, in a new layer if necessary</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Insert Instants at Selection &amp;Boundaries</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Shift+Enter</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Insert new time instants at the start and end of the current selection, in a new layer if necessary</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&amp;Jump Left</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>J&amp;ump Right</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Restore the zoom level to the default</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Show &amp;No Overlays</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Hide centre indicator, frame times, layer names and scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Show &amp;Minimal Overlays</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Show centre indicator only</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Show &amp;Standard Overlays</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Show centre indicator, frame times and scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Show &amp;All Overlays</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>7</source>
+        <translation type="unfinished">7</translation>
+    </message>
+    <message>
+        <source>Show all texts and scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Show Status &amp;Bar</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Show context help information in the status bar at the bottom of the window</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add a new pane showing a spectrogram</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add a new layer showing a spectrogram</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add a new pane showing a spectrogram set up for an overview of note pitches</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add a new layer showing a spectrogram set up for an overview of note pitches</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Delete the currently active pane</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Add S&amp;lice of Layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Select ranges</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Edit items in layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Draw new items in layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Open Location</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Please enter the URL of the location to open:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Failed to open location</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>URL &quot;%1&quot; could not be opened</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Unsupported scheme in URL</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>The URL scheme &quot;%1&quot; is not supported</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>File download failed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Failed to download URL &quot;%1&quot;: %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Playing: %1 of %2 (%3 remaining)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Visible: %1 to %2 (duration %3)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Adjust the master playback level</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Adjust the master playback speed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Toggle transient sharpening for playback time scaling</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Toggle mono mode for playback time scaling</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;p&gt;Sonic Visualiser is a program for viewing and exploring audio data for&lt;br&gt;semantic music analysis and annotation.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;p&gt;%1 : %2 configuration&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;br&gt;With JACK audio output &amp;copy; Paul Davis and Jack O&apos;Quin</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;br&gt;With Ogg file decoder &amp;copy; CSIRO Australia</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;br&gt;With MAD mp3 decoder &amp;copy; Underbit Technologies Inc</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;br&gt;With libsamplerate &amp;copy; Erik de Castro Lopo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;br&gt;With libsndfile &amp;copy; Erik de Castro Lopo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;br&gt;With FFTW3 &amp;copy; Matteo Frigo and MIT</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</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;br&gt;With liblo Lite OSC library &amp;copy; Steve Harris</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
@@ -1485,10 +2157,6 @@
         <translation>Верт. масштаб</translation>
     </message>
     <message>
-        <source>Pitch Units</source>
-        <translation type="obsolete">Единицы высоты тона</translation>
-    </message>
-    <message>
         <source>Black</source>
         <translation>Чёрный</translation>
     </message>
@@ -1518,15 +2186,15 @@
     </message>
     <message>
         <source>Linear Scale</source>
-        <translation>Линейная шкала</translation>
+        <translation type="obsolete">Линейная шкала</translation>
     </message>
     <message>
         <source>Log Scale</source>
-        <translation>Логарифм. шкала</translation>
+        <translation type="obsolete">Логарифм. шкала</translation>
     </message>
     <message>
         <source>MIDI Note Range</source>
-        <translation>Диапазон MIDI-нот</translation>
+        <translation type="obsolete">Диапазон MIDI-нот</translation>
     </message>
     <message>
         <source>&lt;unknown&gt;</source>
@@ -1598,6 +2266,33 @@
     </message>
     <message>
         <source>Scale Units</source>
+        <translation type="unfinished">Единицы шкалы</translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished">Масштаб</translation>
+    </message>
+    <message>
+        <source>Linear</source>
+        <translation type="unfinished">Линейный</translation>
+    </message>
+    <message>
+        <source>Log</source>
+        <translation type="unfinished">Логарифм.</translation>
+    </message>
+    <message>
+        <source>MIDI Notes</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Overview</name>
+    <message>
+        <source>Overview</source>
+        <translation>Обзор</translation>
+    </message>
+    <message>
+        <source>Click and drag to navigate; double-click to jump</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
@@ -1627,11 +2322,72 @@
         <source>Resize Selection</source>
         <translation>Изменить выделение</translation>
     </message>
-</context>
-<context>
-    <name>Panner</name>
-    <message>
-        <source>Panner</source>
+    <message>
+        <source>Horizontal Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Vertical Zoom</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Enter new range</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>New vertical display range, from %1 to %2 %4:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Click and drag to navigate</source>
+        <translation type="unfinished"></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>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <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>
+        <source>Click and drag to move the selection boundary</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <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>
+        <source>Click and drag to select a range; middle-click and drag to navigate</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Click to add a new item in the active layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Click and drag an item in the active layer to move it</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Click and drag to move all items in the selected range</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Click and drag to adjust the visible range of the vertical scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Click and drag to adjust the vertical zoom level</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Click and drag to adjust the horizontal zoom level</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Reset horizontal and vertical zoom levels to their defaults</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
@@ -1650,7 +2406,7 @@
     <name>PluginParameterDialog</name>
     <message>
         <source>Plugin</source>
-        <translation>Расширение</translation>
+        <translation type="obsolete">Расширение</translation>
     </message>
     <message>
         <source>Name:</source>
@@ -1658,7 +2414,7 @@
     </message>
     <message>
         <source>Type:</source>
-        <translation>Тип:</translation>
+        <translation type="obsolete">Тип:</translation>
     </message>
     <message>
         <source>Maker:</source>
@@ -1686,11 +2442,11 @@
     </message>
     <message>
         <source>are</source>
-        <translation type="unfinished"></translation>
+        <translation>являются</translation>
     </message>
     <message>
         <source>is</source>
-        <translation type="unfinished"></translation>
+        <translation>является</translation>
     </message>
     <message>
         <source>Channels</source>
@@ -1725,7 +2481,161 @@
     </message>
     <message>
         <source>Output:</source>
-        <translation type="unfinished"></translation>
+        <translation>Выход:</translation>
+    </message>
+    <message>
+        <source>Processing</source>
+        <translation>Идёт обработка</translation>
+    </message>
+    <message>
+        <source>Window size:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Audio frames per block:</source>
+        <translation>Выборок звука на блок:</translation>
+    </message>
+    <message>
+        <source>Window increment:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Window shape:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Advanced &gt;&gt;</source>
+        <translation>Больше &gt;&gt;</translation>
+    </message>
+    <message>
+        <source>Advanced &lt;&lt;</source>
+        <translation>Меньше &lt;&lt;</translation>
+    </message>
+    <message>
+        <source>Input Source</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Preferences</name>
+    <message>
+        <source>Frequency of concert A</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Property box layout</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Spectral analysis window shape</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Show boxes for all panes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Show box for current pane only</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rectangular</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Triangular</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Hamming</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Hanning</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Blackman</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Gaussian</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Parzen</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Nuttall</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Blackman-Harris</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Preferences</source>
+        <translation>Настройки</translation>
+    </message>
+    <message>
+        <source>Playback resampler type</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Fastest</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Standard</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Highest quality</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Spectrogram y-axis smoothing:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>None - blocky but accurate</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Interpolate - fast but fuzzy</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Zero pad FFT - slow but clear</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>PreferencesDialog</name>
+    <message>
+        <source>Application Preferences</source>
+        <translation>Настройки программы</translation>
+    </message>
+    <message>
+        <source>Sonic Visualiser Application Preferences</source>
+        <translation>Настройки программы Sonic Visualiser</translation>
+    </message>
+    <message>
+        <source>Apply</source>
+        <translation>Применить</translation>
+    </message>
+    <message>
+        <source>%1:</source>
+        <translation>%1:</translation>
+    </message>
+    <message>
+        <source>OK</source>
+        <translation>ОК</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation>Отменить</translation>
     </message>
 </context>
 <context>
@@ -1739,13 +2649,68 @@
         <translation>Воспроизвести</translation>
     </message>
     <message>
-        <source>Playback Level</source>
-        <translation>Уровень воспр.</translation>
-    </message>
-    <message>
         <source>Playback Pan / Balance</source>
         <translation>Панорама/баланс при воспроизведении</translation>
     </message>
+    <message>
+        <source>Playback Gain</source>
+        <translation>Усиление воспроизведения</translation>
+    </message>
+    <message>
+        <source>dB</source>
+        <translation>Дб</translation>
+    </message>
+    <message>
+        <source> (current value: %1%2)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source> (current value: %1)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Toggle Visibility of %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Toggle Playback of %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Toggle %1 property of %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Adjust %1 property of %2%3</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>PropertyContainer</name>
+    <message>
+        <source>yes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>on</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>true</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>no</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>off</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>false</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PropertyContainer::SetPropertyCommand</name>
@@ -1755,6 +2720,40 @@
     </message>
 </context>
 <context>
+    <name>PropertyStack</name>
+    <message>
+        <source>Click to change the current active layer</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QApplication</name>
+    <message>
+        <source>FFT cache resize failed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Failed to create or resize an FFT model slice.
+There may be insufficient memory or disc space to continue.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>
+Sonic Visualiser is a program for viewing and exploring audio data
+for semantic music analysis and annotation.
+
+Usage:
+
+  %1 [--no-audio] [--no-osc] [&lt;file&gt; ...]
+
+  --no-audio: Do not attempt to open an audio output device
+  --no-osc: Do not provide an Open Sound Control port for remote control
+  &lt;file&gt;: One or more Sonic Visualiser (.sv) and audio files may be provided.
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>QFile</name>
     <message>
         <source>File &quot;%1&quot; does not exist</source>
@@ -1769,12 +2768,12 @@
     <name>QFileDialog</name>
     <message>
         <source>Locate file &quot;%1&quot;</source>
-        <translation>Найти файл &quot;%1&quot;</translation>
+        <translation type="obsolete">Найти файл &quot;%1&quot;</translation>
     </message>
     <message>
         <source>Audio files (%1)
 All files (*.*)</source>
-        <translation>Щвуковые файлы (%1)
+        <translation type="obsolete">Звуковые файлы (%1)
 Все файлы (*.*)</translation>
     </message>
 </context>
@@ -1787,7 +2786,7 @@
     <message>
         <source>Audio file &quot;%1&quot; could not be opened.
 Locate it?</source>
-        <translation>Не удалось открыть звуковой файл &quot;%1&quot;.
+        <translation type="obsolete">Не удалось открыть звуковой файл &quot;%1&quot;.
 Найти его?</translation>
     </message>
     <message>
@@ -1798,27 +2797,220 @@
 <context>
     <name>QObject</name>
     <message>
-        <source>Decoding MP3 file...</source>
-        <translation>Декодируется файл MP3...</translation>
-    </message>
-    <message>
         <source>Stop</source>
         <translation>Остановить</translation>
     </message>
     <message>
-        <source>Decoding Ogg file...</source>
-        <translation>Декодируется файл Ogg Vorbis...</translation>
+        <source>Decoding %1...</source>
+        <translation>Декодируется %1...</translation>
+    </message>
+</context>
+<context>
+    <name>RangeInputDialog</name>
+    <message>
+        <source> to </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>OK</source>
+        <translation type="unfinished">ОК</translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished">Отменить</translation>
+    </message>
+</context>
+<context>
+    <name>RemoteFile</name>
+    <message>
+        <source>Downloading %1...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Cancel</source>
+        <translation type="unfinished">Отменить</translation>
+    </message>
+    <message>
+        <source>Failed to connect to FTP server</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Login failed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Failed to change to correct directory</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>FTP download aborted</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Download cancelled</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Failed to create local file %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>File contains no data!</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>SliceLayer</name>
+    <message>
+        <source>%1 - %2</source>
+        <translation type="unfinished">%1 - %2</translation>
+    </message>
+    <message>
+        <source>Time:<byte value="x9"/>%1 - %2
+Range:<byte value="x9"/>%3 samples
+Bin:<byte value="x9"/>%4
+%5 value:<byte value="x9"/>%6</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>First</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Mean</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Peak</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Time:<byte value="x9"/>%1 - %2
+Range:<byte value="x9"/>%3 samples</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>0dB</source>
+        <translation type="unfinished">0 Дб</translation>
+    </message>
+    <message>
+        <source>-Inf</source>
+        <translation type="unfinished">-Inf</translation>
+    </message>
+    <message>
+        <source>x10</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Colour</source>
+        <translation type="unfinished">Цвет</translation>
+    </message>
+    <message>
+        <source>Plot Type</source>
+        <translation type="unfinished">Тип графика</translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished">Масштаб</translation>
+    </message>
+    <message>
+        <source>Normalize</source>
+        <translation type="unfinished">Нормализовать</translation>
+    </message>
+    <message>
+        <source>Gain</source>
+        <translation type="unfinished">Усиление</translation>
+    </message>
+    <message>
+        <source>Sampling Mode</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Plot X Scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Black</source>
+        <translation type="unfinished">Чёрный</translation>
+    </message>
+    <message>
+        <source>Red</source>
+        <translation type="unfinished">Красный</translation>
+    </message>
+    <message>
+        <source>Blue</source>
+        <translation type="unfinished">Синий</translation>
+    </message>
+    <message>
+        <source>Green</source>
+        <translation type="unfinished">Зелёный</translation>
+    </message>
+    <message>
+        <source>Purple</source>
+        <translation type="unfinished">Пурпурный</translation>
+    </message>
+    <message>
+        <source>Orange</source>
+        <translation type="unfinished">Оранжевый</translation>
+    </message>
+    <message>
+        <source>Linear</source>
+        <translation type="unfinished">Линейный</translation>
+    </message>
+    <message>
+        <source>Meter</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>dB</source>
+        <translation type="unfinished">Дб</translation>
+    </message>
+    <message>
+        <source>Any</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Lines</source>
+        <translation type="unfinished">Линии</translation>
+    </message>
+    <message>
+        <source>Steps</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Blocks</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Colours</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Linear Bins</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Log Bins</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Rev Log Bins</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;unknown&gt;</source>
+        <translation type="unfinished">&lt;неизвестно&gt;</translation>
     </message>
 </context>
 <context>
     <name>SparseModel</name>
     <message>
         <source>Add Point</source>
-        <translation type="unfinished"></translation>
+        <translation>Добавить точку</translation>
     </message>
     <message>
         <source>Delete Point</source>
-        <translation type="unfinished"></translation>
+        <translation>Удалить точку</translation>
     </message>
     <message>
         <source>Re-Label Point</source>
@@ -1829,19 +3021,15 @@
     <name>SpectrogramLayer</name>
     <message>
         <source>Colour</source>
-        <translation type="unfinished">Цвет</translation>
+        <translation>Цвет</translation>
     </message>
     <message>
         <source>Colour Scale</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <source>Window Type</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <source>Window Size</source>
-        <translation type="unfinished"></translation>
+        <translation>Размер окна</translation>
     </message>
     <message>
         <source>Normalize Columns</source>
@@ -1853,23 +3041,23 @@
     </message>
     <message>
         <source>Threshold</source>
-        <translation type="unfinished"></translation>
+        <translation>Порог</translation>
     </message>
     <message>
         <source>Gain</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished">Усиление</translation>
     </message>
     <message>
         <source>Colour Rotation</source>
-        <translation type="unfinished"></translation>
+        <translation>Вращение цвета</translation>
     </message>
     <message>
         <source>Min Frequency</source>
-        <translation type="unfinished"></translation>
+        <translation>Мин. частота</translation>
     </message>
     <message>
         <source>Max Frequency</source>
-        <translation type="unfinished"></translation>
+        <translation>Макс. частота</translation>
     </message>
     <message>
         <source>Frequency Scale</source>
@@ -1877,47 +3065,43 @@
     </message>
     <message>
         <source>Window</source>
-        <translation type="unfinished"></translation>
+        <translation>Окно</translation>
     </message>
     <message>
         <source>Scale</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Range</source>
-        <translation type="unfinished"></translation>
+        <translation>Масштаб</translation>
     </message>
     <message>
         <source>Default</source>
-        <translation type="unfinished"></translation>
+        <translation type="obsolete">По умолчанию</translation>
     </message>
     <message>
         <source>White on Black</source>
-        <translation type="unfinished"></translation>
+        <translation type="obsolete">Белое на чёрном</translation>
     </message>
     <message>
         <source>Black on White</source>
-        <translation type="unfinished"></translation>
+        <translation type="obsolete">Чёрное на белом</translation>
     </message>
     <message>
         <source>Red on Blue</source>
-        <translation type="unfinished"></translation>
+        <translation type="obsolete">Красное на синем</translation>
     </message>
     <message>
         <source>Yellow on Black</source>
-        <translation type="unfinished"></translation>
+        <translation type="obsolete">Жёлтое на чёрном</translation>
     </message>
     <message>
         <source>Blue on Black</source>
-        <translation type="unfinished"></translation>
+        <translation type="obsolete">Синее на чёрном</translation>
     </message>
     <message>
         <source>Fruit Salad</source>
-        <translation type="unfinished"></translation>
+        <translation type="obsolete">Фруктовый салат</translation>
     </message>
     <message>
         <source>Linear</source>
-        <translation type="unfinished"></translation>
+        <translation>Линейный</translation>
     </message>
     <message>
         <source>Meter</source>
@@ -1925,39 +3109,11 @@
     </message>
     <message>
         <source>dB</source>
-        <translation type="unfinished"></translation>
+        <translation>Дб</translation>
     </message>
     <message>
         <source>Phase</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Rectangle</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Bartlett</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Hamming</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Hanning</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Blackman</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Gaussian</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Parzen</source>
-        <translation type="unfinished"></translation>
+        <translation>Фаза</translation>
     </message>
     <message>
         <source>No min</source>
@@ -1965,63 +3121,63 @@
     </message>
     <message>
         <source>10 Hz</source>
-        <translation type="unfinished"></translation>
+        <translation>10 Гц</translation>
     </message>
     <message>
         <source>20 Hz</source>
-        <translation type="unfinished"></translation>
+        <translation>20 Гц</translation>
     </message>
     <message>
         <source>40 Hz</source>
-        <translation type="unfinished"></translation>
+        <translation>40 Гц</translation>
     </message>
     <message>
         <source>100 Hz</source>
-        <translation type="unfinished"></translation>
+        <translation>100 Гц</translation>
     </message>
     <message>
         <source>250 Hz</source>
-        <translation type="unfinished"></translation>
+        <translation>250 Гц</translation>
     </message>
     <message>
         <source>500 Hz</source>
-        <translation type="unfinished"></translation>
+        <translation>500 Гц</translation>
     </message>
     <message>
         <source>1 KHz</source>
-        <translation type="unfinished"></translation>
+        <translation>1 КГц</translation>
     </message>
     <message>
         <source>4 KHz</source>
-        <translation type="unfinished"></translation>
+        <translation>4 КГц</translation>
     </message>
     <message>
         <source>10 KHz</source>
-        <translation type="unfinished"></translation>
+        <translation>10 КГц</translation>
     </message>
     <message>
         <source>1.5 KHz</source>
-        <translation type="unfinished"></translation>
+        <translation>1,5 КГц</translation>
     </message>
     <message>
         <source>2 KHz</source>
-        <translation type="unfinished"></translation>
+        <translation>2 КГц</translation>
     </message>
     <message>
         <source>6 KHz</source>
-        <translation type="unfinished"></translation>
+        <translation>6 КГц</translation>
     </message>
     <message>
         <source>8 KHz</source>
-        <translation type="unfinished"></translation>
+        <translation>8 КГц</translation>
     </message>
     <message>
         <source>12 KHz</source>
-        <translation type="unfinished"></translation>
+        <translation>12 КГц</translation>
     </message>
     <message>
         <source>16 KHz</source>
-        <translation type="unfinished"></translation>
+        <translation>16 КГц</translation>
     </message>
     <message>
         <source>No max</source>
@@ -2029,7 +3185,7 @@
     </message>
     <message>
         <source>Log</source>
-        <translation type="unfinished"></translation>
+        <translation>Логарифм.</translation>
     </message>
     <message>
         <source>All Bins</source>
@@ -2041,21 +3197,21 @@
     </message>
     <message>
         <source>Frequencies</source>
-        <translation type="unfinished"></translation>
+        <translation>Частоты</translation>
     </message>
     <message>
         <source>&lt;unknown&gt;</source>
-        <translation type="unfinished">&lt;неизвестно&gt;</translation>
+        <translation>&lt;неизвестно&gt;</translation>
     </message>
     <message>
         <source>Peak Frequency:<byte value="x9"/>%1 - %2 Hz
 </source>
-        <translation type="unfinished"></translation>
+        <translation>Пиковая частота:<byte value="x9"/>%1 - %2 Гц<byte value="x9"/></translation>
     </message>
     <message>
         <source>Peak Frequency:<byte value="x9"/>%1 Hz
 </source>
-        <translation type="unfinished"></translation>
+        <translation>Пиковая частота:<byte value="x9"/>%1 Гц</translation>
     </message>
     <message>
         <source>Peak Pitch:<byte value="x9"/>%3 - %4
@@ -2070,12 +3226,14 @@
     <message>
         <source>Time:<byte value="x9"/>%1 - %2
 </source>
-        <translation type="unfinished"></translation>
+        <translation>Время:<byte value="x9"/>%1 - %2
+</translation>
     </message>
     <message>
         <source>Time:<byte value="x9"/>%1
 </source>
-        <translation type="unfinished"></translation>
+        <translation>Время:<byte value="x9"/>%1
+</translation>
     </message>
     <message>
         <source>%1Bin Frequency:<byte value="x9"/>%2 - %3 Hz
@@ -2091,33 +3249,31 @@
     </message>
     <message>
         <source>-Inf</source>
-        <translation type="unfinished"></translation>
+        <translation>-Inf</translation>
     </message>
     <message>
         <source>dB:<byte value="x9"/>%1 - %2</source>
-        <translation type="unfinished"></translation>
+        <translation>Дб:<byte value="x9"/>%1 - %2</translation>
     </message>
     <message>
         <source>dB:<byte value="x9"/>%1</source>
-        <translation type="unfinished"></translation>
+        <translation>Дб:<byte value="x9"/>%1</translation>
     </message>
     <message>
         <source>
 Phase:<byte value="x9"/>%1 - %2</source>
-        <translation type="unfinished"></translation>
+        <translation>
+Фаза:<byte value="x9"/>%1 - %2</translation>
     </message>
     <message>
         <source>
 Phase:<byte value="x9"/>%1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>-90</source>
-        <translation type="unfinished"></translation>
+        <translation>
+Фаза:<byte value="x9"/>%1</translation>
     </message>
     <message>
         <source>Window Overlap</source>
-        <translation type="unfinished"></translation>
+        <translation>Перекрытие окон</translation>
     </message>
     <message>
         <source>Smoothing</source>
@@ -2125,163 +3281,377 @@
     </message>
     <message>
         <source>None</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished">Ничего</translation>
     </message>
     <message>
         <source>25 %</source>
-        <translation type="unfinished"></translation>
+        <translation>25 %</translation>
     </message>
     <message>
         <source>50 %</source>
-        <translation type="unfinished"></translation>
+        <translation>50 %</translation>
     </message>
     <message>
         <source>75 %</source>
-        <translation type="unfinished"></translation>
+        <translation>75 %</translation>
     </message>
     <message>
         <source>87.5 %</source>
-        <translation type="unfinished"></translation>
+        <translation>87,5 %</translation>
     </message>
     <message>
         <source>93.75 %</source>
-        <translation type="unfinished"></translation>
+        <translation>93,75 %</translation>
+    </message>
+    <message>
+        <source>Normalize Visible Area</source>
+        <translation>Нормализовать видимую область</translation>
+    </message>
+    <message>
+        <source>Bins</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>dB^2</source>
+        <translation type="obsolete">Дб^2</translation>
+    </message>
+    <message>
+        <source>FFT cache failed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <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>
+        <source>dBV^2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>dBV</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>SpectrumLayer</name>
+    <message>
+        <source>Colour</source>
+        <translation type="obsolete">Цвет</translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="obsolete">Масштаб</translation>
+    </message>
+    <message>
+        <source>Channels</source>
+        <translation type="obsolete">Каналы</translation>
+    </message>
+    <message>
+        <source>Window Size</source>
+        <translation>Размер окна</translation>
+    </message>
+    <message>
+        <source>Window Overlap</source>
+        <translation>Перекрытие окон</translation>
+    </message>
+    <message>
+        <source>Normalize</source>
+        <translation type="obsolete">Нормализовать</translation>
+    </message>
+    <message>
+        <source>Gain</source>
+        <translation type="obsolete">Усиление</translation>
+    </message>
+    <message>
+        <source>Window</source>
+        <translation>Окно</translation>
+    </message>
+    <message>
+        <source>Energy Scale</source>
+        <translation type="obsolete">Масштаб энергии</translation>
+    </message>
+    <message>
+        <source>Black</source>
+        <translation type="obsolete">Чёрный</translation>
+    </message>
+    <message>
+        <source>Red</source>
+        <translation type="obsolete">Красный</translation>
+    </message>
+    <message>
+        <source>Blue</source>
+        <translation type="obsolete">Синий</translation>
+    </message>
+    <message>
+        <source>Green</source>
+        <translation type="obsolete">Зелёный</translation>
+    </message>
+    <message>
+        <source>Purple</source>
+        <translation type="obsolete">Пурпурный</translation>
+    </message>
+    <message>
+        <source>Orange</source>
+        <translation type="obsolete">Оранжевый</translation>
+    </message>
+    <message>
+        <source>Linear</source>
+        <translation type="obsolete">Линейный</translation>
+    </message>
+    <message>
+        <source>dB</source>
+        <translation type="obsolete">Дб</translation>
+    </message>
+    <message>
+        <source>Mean</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>None</source>
+        <translation>Ничего</translation>
+    </message>
+    <message>
+        <source>25 %</source>
+        <translation>25 %</translation>
+    </message>
+    <message>
+        <source>50 %</source>
+        <translation>50 %</translation>
+    </message>
+    <message>
+        <source>75 %</source>
+        <translation>75 %</translation>
+    </message>
+    <message>
+        <source>87.5 %</source>
+        <translation>87,5 %</translation>
+    </message>
+    <message>
+        <source>93.75 %</source>
+        <translation>93,75 %</translation>
+    </message>
+    <message>
+        <source>&lt;unknown&gt;</source>
+        <translation type="obsolete">&lt;неизвестно&gt;</translation>
+    </message>
+    <message>
+        <source>%1 - %2</source>
+        <translation type="unfinished">%1 - %2</translation>
+    </message>
+    <message>
+        <source>%1 - %2 Hz</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>%1 Hz</source>
+        <translation type="unfinished">%1 Гц</translation>
+    </message>
+    <message>
+        <source>-Inf</source>
+        <translation type="unfinished">-Inf</translation>
+    </message>
+    <message>
+        <source>%1</source>
+        <translation type="unfinished">%1</translation>
+    </message>
+    <message>
+        <source>%1
+Bin:<byte value="x9"/>%2 (%3)
+%4 value:<byte value="x9"/>%5
+dB:<byte value="x9"/>%6</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>First</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Peak</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>%1
+Bin:<byte value="x9"/>%2 (%3)
+Value:<byte value="x9"/>%4
+dB:<byte value="x9"/>%5</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>SubdividingMenu</name>
+    <message>
+        <source>%1 - %2</source>
+        <translation>%1 - %2</translation>
     </message>
 </context>
 <context>
     <name>TextLayer</name>
     <message>
         <source>Empty Label</source>
-        <translation type="unfinished"></translation>
+        <translation>Очистить метку</translation>
     </message>
     <message>
         <source>Colour</source>
-        <translation type="unfinished">Цвет</translation>
+        <translation>Цвет</translation>
     </message>
     <message>
         <source>Black</source>
-        <translation type="unfinished">Чёрный</translation>
+        <translation>Чёрный</translation>
     </message>
     <message>
         <source>Red</source>
-        <translation type="unfinished">Красный</translation>
+        <translation>Красный</translation>
     </message>
     <message>
         <source>Blue</source>
-        <translation type="unfinished">Синий</translation>
+        <translation>Синий</translation>
     </message>
     <message>
         <source>Green</source>
-        <translation type="unfinished">Зелёный</translation>
+        <translation>Зелёный</translation>
     </message>
     <message>
         <source>Purple</source>
-        <translation type="unfinished">Пурпурный</translation>
+        <translation>Пурпурный</translation>
     </message>
     <message>
         <source>Orange</source>
-        <translation type="unfinished">Оранжевый</translation>
+        <translation>Оранжевый</translation>
     </message>
     <message>
         <source>&lt;unknown&gt;</source>
-        <translation type="unfinished">&lt;неизвестно&gt;</translation>
+        <translation>&lt;неизвестно&gt;</translation>
     </message>
     <message>
         <source>&lt;no text&gt;</source>
-        <translation type="unfinished"></translation>
+        <translation>&lt;без текста&gt;</translation>
     </message>
     <message>
         <source>In progress</source>
-        <translation type="unfinished">В процессе</translation>
+        <translation>В процессе</translation>
     </message>
     <message>
         <source>Time:<byte value="x9"/>%1
 Height:<byte value="x9"/>%2
 Label:<byte value="x9"/>%3</source>
-        <translation type="unfinished"></translation>
+        <translation>Время:<byte value="x9"/>%1
+Высота:<byte value="x9"/>%2
+Метка:<byte value="x9"/>%3</translation>
     </message>
     <message>
         <source>Enter label</source>
-        <translation type="unfinished"></translation>
+        <translation>Введите метку</translation>
     </message>
     <message>
         <source>Please enter a new label:</source>
-        <translation type="unfinished"></translation>
+        <translation>Введите текст новой метки:</translation>
     </message>
     <message>
         <source>Drag Label</source>
-        <translation type="unfinished"></translation>
+        <translation>Перетащите метку</translation>
     </message>
     <message>
         <source>Move Label</source>
-        <translation type="unfinished"></translation>
+        <translation>Переместите метку</translation>
     </message>
     <message>
         <source>Move Label Horizontally</source>
-        <translation type="unfinished"></translation>
+        <translation>Переместите по горизонтали</translation>
     </message>
     <message>
         <source>Move Label Vertically</source>
-        <translation type="unfinished"></translation>
+        <translation>Переместите по вертикали</translation>
     </message>
     <message>
         <source>Drag Selection</source>
-        <translation type="unfinished">Перетащить выделение</translation>
+        <translation>Перетащите выделение</translation>
     </message>
     <message>
         <source>Resize Selection</source>
-        <translation type="unfinished"></translation>
+        <translation>Смените размер выделения</translation>
     </message>
     <message>
         <source>Delete Selection</source>
-        <translation type="unfinished"></translation>
+        <translation>Удалите выделение</translation>
     </message>
     <message>
         <source>Paste</source>
-        <translation type="unfinished">Вставить</translation>
+        <translation>Вставить</translation>
     </message>
     <message>
         <source>New Point</source>
-        <translation type="unfinished">Новая точка</translation>
+        <translation>Новая точка</translation>
+    </message>
+</context>
+<context>
+    <name>Thumbwheel</name>
+    <message>
+        <source>%1: %2%3</source>
+        <translation type="unfinished">%1: %2%3</translation>
+    </message>
+    <message>
+        <source>%2%3</source>
+        <translation type="unfinished">%2%3</translation>
+    </message>
+    <message>
+        <source>New value for %1, from %2 to %3 %4:</source>
+        <translation type="unfinished">Новое значение для %1, от %2 до %3 %4:</translation>
+    </message>
+    <message>
+        <source>New value for %1, from %2 to %3:</source>
+        <translation type="unfinished">Новое значение для %1, от %2 до %3:</translation>
+    </message>
+    <message>
+        <source>Enter a new value from %1 to %2 %3:</source>
+        <translation type="unfinished">Введите новое значение от %1 до %2 %3:</translation>
+    </message>
+    <message>
+        <source>Enter a new value from %1 to %2:</source>
+        <translation type="unfinished">Введите новое значение от %1 до %2:</translation>
+    </message>
+    <message>
+        <source>Enter new value</source>
+        <translation type="unfinished">Введите новое значение</translation>
     </message>
 </context>
 <context>
     <name>TimeInstantLayer</name>
     <message>
         <source>New Point</source>
-        <translation type="unfinished">Новая точка</translation>
+        <translation>Новая точка</translation>
     </message>
     <message>
         <source>Colour</source>
-        <translation type="unfinished">Цвет</translation>
+        <translation>Цвет</translation>
     </message>
     <message>
         <source>Plot Type</source>
-        <translation type="unfinished"></translation>
+        <translation>Тип графика</translation>
     </message>
     <message>
         <source>Black</source>
-        <translation type="unfinished">Чёрный</translation>
+        <translation>Чёрный</translation>
     </message>
     <message>
         <source>Red</source>
-        <translation type="unfinished">Красный</translation>
+        <translation>Красный</translation>
     </message>
     <message>
         <source>Blue</source>
-        <translation type="unfinished">Синий</translation>
+        <translation>Синий</translation>
     </message>
     <message>
         <source>Green</source>
-        <translation type="unfinished">Зелёный</translation>
+        <translation>Зелёный</translation>
     </message>
     <message>
         <source>Purple</source>
-        <translation type="unfinished">Пурпурный</translation>
+        <translation>Пурпурный</translation>
     </message>
     <message>
         <source>Orange</source>
-        <translation type="unfinished">Оранжевый</translation>
+        <translation>Оранжевый</translation>
     </message>
     <message>
         <source>Instants</source>
@@ -2289,53 +3659,55 @@
     </message>
     <message>
         <source>Segmentation</source>
-        <translation type="unfinished"></translation>
+        <translation>Сегментация</translation>
     </message>
     <message>
         <source>&lt;unknown&gt;</source>
-        <translation type="unfinished">&lt;неизвестно&gt;</translation>
+        <translation>&lt;неизвестно&gt;</translation>
     </message>
     <message>
         <source>In progress</source>
-        <translation type="unfinished">В процессе</translation>
+        <translation>В процессе</translation>
     </message>
     <message>
         <source>No local points</source>
-        <translation type="unfinished">Нет локальных точек</translation>
+        <translation>Нет локальных точек</translation>
     </message>
     <message>
         <source>Time:<byte value="x9"/>%1
 No label</source>
-        <translation type="unfinished"></translation>
+        <translation>Время:<byte value="x9"/>%1
+Без метки</translation>
     </message>
     <message>
         <source>Time:<byte value="x9"/>%1
 Label:<byte value="x9"/>%2</source>
-        <translation type="unfinished"></translation>
+        <translation>Время:<byte value="x9"/>%1
+Метка:<byte value="x9"/>%2</translation>
     </message>
     <message>
         <source>Draw Point</source>
-        <translation type="unfinished">Нарисовать точку</translation>
+        <translation>Нарисовать точку</translation>
     </message>
     <message>
         <source>Add Point at %1 s</source>
-        <translation type="unfinished"></translation>
+        <translation>Добавить точку в %1 с</translation>
     </message>
     <message>
         <source>Drag Point</source>
-        <translation type="unfinished">Перетащить точку</translation>
+        <translation>Перетащить точку</translation>
     </message>
     <message>
         <source>Move Point to %1 s</source>
-        <translation type="unfinished"></translation>
+        <translation>Перетащить точку к %1 с</translation>
     </message>
     <message>
         <source>Edit Point</source>
-        <translation type="unfinished">Изменить точку</translation>
+        <translation>Изменить точку</translation>
     </message>
     <message>
         <source>Drag Selection</source>
-        <translation type="unfinished">Перетащить выделение</translation>
+        <translation>Перетащить выделение</translation>
     </message>
     <message>
         <source>Resize Selection</source>
@@ -2343,97 +3715,97 @@
     </message>
     <message>
         <source>Delete Selection</source>
-        <translation type="unfinished"></translation>
+        <translation>Удалить выделение</translation>
     </message>
     <message>
         <source>Paste</source>
-        <translation type="unfinished">Вставить</translation>
+        <translation>Вставить</translation>
     </message>
 </context>
 <context>
     <name>TimeRulerLayer</name>
     <message>
         <source>Colour</source>
-        <translation type="unfinished">Цвет</translation>
+        <translation>Цвет</translation>
     </message>
     <message>
         <source>Black</source>
-        <translation type="unfinished">Чёрный</translation>
+        <translation>Чёрный</translation>
     </message>
     <message>
         <source>Red</source>
-        <translation type="unfinished">Красный</translation>
+        <translation>Красный</translation>
     </message>
     <message>
         <source>Blue</source>
-        <translation type="unfinished">Синий</translation>
+        <translation>Синий</translation>
     </message>
     <message>
         <source>Green</source>
-        <translation type="unfinished">Зелёный</translation>
+        <translation>Зелёный</translation>
     </message>
     <message>
         <source>Purple</source>
-        <translation type="unfinished">Пурпурный</translation>
+        <translation>Пурпурный</translation>
     </message>
     <message>
         <source>Orange</source>
-        <translation type="unfinished">Оранжевый</translation>
+        <translation>Оранжевый</translation>
     </message>
     <message>
         <source>&lt;unknown&gt;</source>
-        <translation type="unfinished">&lt;неизвестно&gt;</translation>
+        <translation>&lt;неизвестно&gt;</translation>
     </message>
 </context>
 <context>
     <name>TimeValueLayer</name>
     <message>
         <source>New Point</source>
-        <translation type="unfinished">Новая точка</translation>
+        <translation>Новая точка</translation>
     </message>
     <message>
         <source>Colour</source>
-        <translation type="unfinished">Цвет</translation>
+        <translation>Цвет</translation>
     </message>
     <message>
         <source>Plot Type</source>
-        <translation type="unfinished"></translation>
+        <translation>Тип графика</translation>
     </message>
     <message>
         <source>Vertical Scale</source>
-        <translation type="unfinished">Верт. масштаб</translation>
+        <translation>Верт. масштаб</translation>
     </message>
     <message>
         <source>Scale Units</source>
-        <translation type="unfinished"></translation>
+        <translation>Единицы шкалы</translation>
     </message>
     <message>
         <source>Black</source>
-        <translation type="unfinished">Чёрный</translation>
+        <translation>Чёрный</translation>
     </message>
     <message>
         <source>Red</source>
-        <translation type="unfinished">Красный</translation>
+        <translation>Красный</translation>
     </message>
     <message>
         <source>Blue</source>
-        <translation type="unfinished">Синий</translation>
+        <translation>Синий</translation>
     </message>
     <message>
         <source>Green</source>
-        <translation type="unfinished">Зелёный</translation>
+        <translation>Зелёный</translation>
     </message>
     <message>
         <source>Purple</source>
-        <translation type="unfinished">Пурпурный</translation>
+        <translation>Пурпурный</translation>
     </message>
     <message>
         <source>Orange</source>
-        <translation type="unfinished">Оранжевый</translation>
+        <translation>Оранжевый</translation>
     </message>
     <message>
         <source>Points</source>
-        <translation type="unfinished"></translation>
+        <translation>Точки</translation>
     </message>
     <message>
         <source>Stems</source>
@@ -2441,47 +3813,43 @@
     </message>
     <message>
         <source>Connected Points</source>
-        <translation type="unfinished"></translation>
+        <translation>Соединённые точки</translation>
     </message>
     <message>
         <source>Lines</source>
-        <translation type="unfinished"></translation>
+        <translation>Линии</translation>
     </message>
     <message>
         <source>Curve</source>
-        <translation type="unfinished"></translation>
+        <translation>Кривая</translation>
     </message>
     <message>
         <source>Segmentation</source>
-        <translation type="unfinished"></translation>
+        <translation>Сегментация</translation>
     </message>
     <message>
         <source>Auto-Align</source>
-        <translation type="unfinished">Автовыравнивание</translation>
+        <translation>Автовыравнивание</translation>
     </message>
     <message>
         <source>Linear Scale</source>
-        <translation type="unfinished">Линейная шкала</translation>
+        <translation type="obsolete">Линейная шкала</translation>
     </message>
     <message>
         <source>Log Scale</source>
-        <translation type="unfinished">Логарифм. шкала</translation>
-    </message>
-    <message>
-        <source>+/-1 Scale</source>
-        <translation type="unfinished"></translation>
+        <translation type="obsolete">Логарифм. шкала</translation>
     </message>
     <message>
         <source>&lt;unknown&gt;</source>
-        <translation type="unfinished">&lt;неизвестно&gt;</translation>
+        <translation>&lt;неизвестно&gt;</translation>
     </message>
     <message>
         <source>In progress</source>
-        <translation type="unfinished">В процессе</translation>
+        <translation>В процессе</translation>
     </message>
     <message>
         <source>No local points</source>
-        <translation type="unfinished">Нет локальных точек</translation>
+        <translation>Нет локальных точек</translation>
     </message>
     <message>
         <source>Time:<byte value="x9"/>%1
@@ -2497,27 +3865,27 @@
     </message>
     <message>
         <source>Draw Point</source>
-        <translation type="unfinished">Нарисовать точку</translation>
+        <translation>Нарисовать точку</translation>
     </message>
     <message>
         <source>Drag Point</source>
-        <translation type="unfinished">Перетащить точку</translation>
+        <translation>Перетащить точку</translation>
     </message>
     <message>
         <source>Edit Point</source>
-        <translation type="unfinished">Изменить точку</translation>
+        <translation>Изменить точку</translation>
     </message>
     <message>
         <source>Relocate Point</source>
-        <translation type="unfinished">Переместить точку</translation>
+        <translation>Переместить точку</translation>
     </message>
     <message>
         <source>Change Point Value</source>
-        <translation type="unfinished">Изменить значение точки</translation>
+        <translation>Изменить значение точки</translation>
     </message>
     <message>
         <source>Drag Selection</source>
-        <translation type="unfinished">Перетащить выделение</translation>
+        <translation>Перетащить выделение</translation>
     </message>
     <message>
         <source>Resize Selection</source>
@@ -2525,29 +3893,143 @@
     </message>
     <message>
         <source>Delete Selected Points</source>
-        <translation type="unfinished">Удалить выбранные точки</translation>
+        <translation>Удалить выбранные точки</translation>
     </message>
     <message>
         <source>Paste</source>
-        <translation type="unfinished">Вставить</translation>
+        <translation>Вставить</translation>
+    </message>
+    <message>
+        <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>
+        <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>
+        <source>Zero for all items</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Whole numbers counting from 1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Item&apos;s audio sample frame number</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Item&apos;s time in seconds</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Duration from the item to the following item</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Tempo in bpm derived from the duration</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Value of the nearest existing item</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Value extracted from the item&apos;s label (where possible)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Choose value calculation</source>
+        <translation>Выбрать вычисление значения</translation>
+    </message>
+    <message>
+        <source>Scale</source>
+        <translation type="unfinished">Масштаб</translation>
+    </message>
+    <message>
+        <source>Linear</source>
+        <translation type="unfinished">Линейный</translation>
+    </message>
+    <message>
+        <source>Log</source>
+        <translation type="unfinished">Логарифм.</translation>
+    </message>
+    <message>
+        <source>+/-1</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>TransformFactory</name>
     <message>
-        <source>Analysis Plugins</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <source>%1: %2</source>
-        <translation type="unfinished"></translation>
+        <translation>%1: %2</translation>
     </message>
     <message>
         <source>%1: Output %2</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <source>Other Plugins</source>
+        <translation>%1: Выход %2</translation>
+    </message>
+    <message>
+        <source>Analysis</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Effects Data</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Effects</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Generators</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>%1 &lt;%2&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source> [\(&lt;].*$</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>&lt;unknown maker&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Extract features using &quot;%1&quot; plugin (from %2)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Extract features using &quot;%1&quot; output of &quot;%2&quot; plugin (from %3)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>%1 using &quot;%2&quot; plugin (from %3)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>%1 using &quot;%2&quot; output of &quot;%3&quot; plugin (from %4)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Extract &quot;%1&quot; data output from &quot;%2&quot; effect plugin (from %3)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Extract data output %1 from &quot;%2&quot; effect plugin (from %3)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Transform audio signal with &quot;%1&quot; effect plugin (from %2)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>Generate audio signal using &quot;%1&quot; plugin (from %2)</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
@@ -2571,15 +4053,15 @@
     </message>
     <message>
         <source>Page</source>
-        <translation type="unfinished"></translation>
+        <translation>Страница</translation>
     </message>
     <message>
         <source>Off</source>
-        <translation type="unfinished"></translation>
+        <translation>Выкл</translation>
     </message>
     <message>
         <source>&lt;unknown&gt;</source>
-        <translation type="unfinished">&lt;неизвестно&gt;</translation>
+        <translation>&lt;неизвестно&gt;</translation>
     </message>
 </context>
 <context>
@@ -2597,51 +4079,51 @@
     <name>WaveformLayer</name>
     <message>
         <source>Colour</source>
-        <translation type="unfinished">Цвет</translation>
+        <translation>Цвет</translation>
     </message>
     <message>
         <source>Scale</source>
-        <translation type="unfinished"></translation>
+        <translation>Масштаб</translation>
     </message>
     <message>
         <source>Gain</source>
-        <translation type="unfinished"></translation>
+        <translation>Усиление</translation>
     </message>
     <message>
         <source>Normalize Visible Area</source>
-        <translation type="unfinished"></translation>
+        <translation>Нормализовать видимую область</translation>
     </message>
     <message>
         <source>Channels</source>
-        <translation type="unfinished">Каналы</translation>
+        <translation>Каналы</translation>
     </message>
     <message>
         <source>Black</source>
-        <translation type="unfinished">Чёрный</translation>
+        <translation>Чёрный</translation>
     </message>
     <message>
         <source>Red</source>
-        <translation type="unfinished">Красный</translation>
+        <translation>Красный</translation>
     </message>
     <message>
         <source>Blue</source>
-        <translation type="unfinished">Синий</translation>
+        <translation>Синий</translation>
     </message>
     <message>
         <source>Green</source>
-        <translation type="unfinished">Зелёный</translation>
+        <translation>Зелёный</translation>
     </message>
     <message>
         <source>Purple</source>
-        <translation type="unfinished">Пурпурный</translation>
+        <translation>Пурпурный</translation>
     </message>
     <message>
         <source>Orange</source>
-        <translation type="unfinished">Оранжевый</translation>
+        <translation>Оранжевый</translation>
     </message>
     <message>
         <source>Linear</source>
-        <translation type="unfinished"></translation>
+        <translation>Линейный</translation>
     </message>
     <message>
         <source>Meter</source>
@@ -2649,7 +4131,7 @@
     </message>
     <message>
         <source>dB</source>
-        <translation type="unfinished"></translation>
+        <translation>Дб</translation>
     </message>
     <message>
         <source>Separate</source>
@@ -2665,49 +4147,62 @@
     </message>
     <message>
         <source>&lt;unknown&gt;</source>
-        <translation type="unfinished">&lt;неизвестно&gt;</translation>
+        <translation>&lt;неизвестно&gt;</translation>
     </message>
     <message>
         <source>Time:<byte value="x9"/>%1 - %2</source>
-        <translation type="unfinished"></translation>
+        <translation>Время:<byte value="x9"/>%1 - %2</translation>
     </message>
     <message>
         <source>Time:<byte value="x9"/>%1</source>
-        <translation type="unfinished"></translation>
+        <translation>Time:<byte value="x9"/>%1</translation>
     </message>
     <message>
         <source>Level:</source>
-        <translation type="unfinished"></translation>
+        <translation>Уровень:</translation>
     </message>
     <message>
         <source>Left:</source>
-        <translation type="unfinished"></translation>
+        <translation>Левый:</translation>
     </message>
     <message>
         <source>Right:</source>
-        <translation type="unfinished"></translation>
+        <translation>Правый:</translation>
     </message>
     <message>
         <source>Channel %1</source>
-        <translation type="unfinished"></translation>
+        <translation>Канал %1</translation>
     </message>
     <message>
         <source>
 %1<byte value="x9"/>%2 - %3 (%4 dB peak)</source>
-        <translation type="unfinished"></translation>
+        <translation>
+%1<byte value="x9"/>%2 - %3 (пик в %4 Дб)</translation>
     </message>
     <message>
         <source>
 %1<byte value="x9"/>%2 (%3 dB peak)</source>
-        <translation type="unfinished"></translation>
+        <translation>
+%1<byte value="x9"/>%2 (пик в %3 Дб)</translation>
     </message>
     <message>
         <source>0dB</source>
-        <translation type="unfinished"></translation>
+        <translation>0 Дб</translation>
     </message>
     <message>
         <source>-Inf</source>
-        <translation type="unfinished"></translation>
+        <translation>-Inf</translation>
+    </message>
+</context>
+<context>
+    <name>WindowShapePreview</name>
+    <message>
+        <source>V / time</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <source>dB / freq</source>
+        <translation>Дб / частота</translation>
     </message>
 </context>
 </TS>
--- a/main/MainWindow.cpp	Mon Mar 05 15:32:55 2007 +0000
+++ b/main/MainWindow.cpp	Wed Mar 07 17:07:02 2007 +0000
@@ -160,13 +160,13 @@
     connect(m_paneStack, SIGNAL(propertyStacksResized()),
             this, SLOT(propertyStacksResized()));
     connect(m_paneStack, SIGNAL(contextHelpChanged(const QString &)),
-            statusBar(), SLOT(showMessage(const QString &)));
+            this, SLOT(contextHelpChanged(const QString &)));
 
     m_overview = new Overview(frame);
     m_overview->setViewManager(m_viewManager);
     m_overview->setFixedHeight(40);
     connect(m_overview, SIGNAL(contextHelpChanged(const QString &)),
-            statusBar(), SLOT(showMessage(const QString &)));
+            this, SLOT(contextHelpChanged(const QString &)));
 
     m_panLayer = new WaveformLayer;
     m_panLayer->setChannelMode(WaveformLayer::MergeChannels);
@@ -248,6 +248,18 @@
     connect(m_viewManager, SIGNAL(outputLevelsChanged(float, float)),
 	    this, SLOT(outputLevelsChanged(float, float)));
 
+    connect(m_viewManager, SIGNAL(playbackFrameChanged(unsigned long)),
+            this, SLOT(playbackFrameChanged(unsigned long)));
+
+    connect(m_viewManager, SIGNAL(globalCentreFrameChanged(unsigned long)),
+            this, SLOT(globalCentreFrameChanged(unsigned long)));
+
+    connect(m_viewManager, SIGNAL(viewCentreFrameChanged(View *, unsigned long)),
+            this, SLOT(viewCentreFrameChanged(View *, unsigned long)));
+
+    connect(m_viewManager, SIGNAL(viewZoomLevelChanged(View *, unsigned long, bool)),
+            this, SLOT(viewZoomLevelChanged(View *, unsigned long, bool)));
+
     connect(Preferences::getInstance(),
             SIGNAL(propertyChanged(PropertyContainer::PropertyName)),
             this,
@@ -1699,15 +1711,17 @@
 }
 
 void
-MainWindow::currentPaneChanged(Pane *)
+MainWindow::currentPaneChanged(Pane *p)
 {
     updateMenuStates();
+    updateVisibleRangeDisplay(p);
 }
 
 void
-MainWindow::currentLayerChanged(Pane *, Layer *)
+MainWindow::currentLayerChanged(Pane *p, Layer *)
 {
     updateMenuStates();
+    updateVisibleRangeDisplay(p);
 }
 
 void
@@ -2407,6 +2421,13 @@
     return m_document->getMainModel();
 }
 
+const WaveFileModel *
+MainWindow::getMainModel() const
+{
+    if (!m_document) return 0;
+    return m_document->getMainModel();
+}
+
 void
 MainWindow::newSession()
 {
@@ -2418,7 +2439,7 @@
     Pane *pane = m_paneStack->addPane();
 
     connect(pane, SIGNAL(contextHelpChanged(const QString &)),
-            statusBar(), SLOT(showMessage(const QString &)));
+            this, SLOT(contextHelpChanged(const QString &)));
 
     if (!m_timeRulerLayer) {
 	m_timeRulerLayer = m_document->createMainModelLayer
@@ -3115,8 +3136,9 @@
 MainWindow::play()
 {
     if (m_playSource->isPlaying()) {
-	m_playSource->stop();
+        stop();
     } else {
+        playbackFrameChanged(m_viewManager->getPlaybackFrame());
 	m_playSource->play(m_viewManager->getPlaybackFrame());
     }
 }
@@ -3187,6 +3209,13 @@
 MainWindow::stop()
 {
     m_playSource->stop();
+
+    if (m_paneStack && m_paneStack->getCurrentPane()) {
+        updateVisibleRangeDisplay(m_paneStack->getCurrentPane());
+    } else {
+        m_myStatusMessage = "";
+        statusBar()->showMessage("");
+    }
 }
 
 void
@@ -3313,7 +3342,7 @@
 	m_pane = m_mw->m_paneStack->addPane();
 
         connect(m_pane, SIGNAL(contextHelpChanged(const QString &)),
-                m_mw->statusBar(), SLOT(showMessage(const QString &)));
+                m_mw, SLOT(contextHelpChanged(const QString &)));
     } else {
 	m_mw->m_paneStack->showPane(m_pane);
     }
@@ -3612,6 +3641,94 @@
 }    
 
 void
+MainWindow::playbackFrameChanged(unsigned long frame)
+{
+    if (!(m_playSource && m_playSource->isPlaying()) || !getMainModel()) return;
+
+    RealTime now = RealTime::frame2RealTime
+        (frame, getMainModel()->getSampleRate());
+
+    if (now.sec == m_lastPlayStatusSec) return;
+
+    RealTime then = RealTime::frame2RealTime
+        (m_playSource->getPlayEndFrame(), getMainModel()->getSampleRate());
+
+    QString nowStr;
+    QString thenStr;
+    QString remainingStr;
+
+    if (then.sec > 10) {
+        nowStr = now.toSecText().c_str();
+        thenStr = then.toSecText().c_str();
+        remainingStr = (then - now).toSecText().c_str();
+        m_lastPlayStatusSec = now.sec;
+    } else {
+        nowStr = now.toText(true).c_str();
+        thenStr = then.toText(true).c_str();
+        remainingStr = (then - now).toText(true).c_str();
+    }        
+
+    m_myStatusMessage = tr("Playing: %1 of %2 (%3 remaining)")
+        .arg(nowStr).arg(thenStr).arg(remainingStr);
+
+    statusBar()->showMessage(m_myStatusMessage);
+}
+
+void
+MainWindow::globalCentreFrameChanged(unsigned long frame)
+{
+    if ((m_playSource && m_playSource->isPlaying()) || !getMainModel()) return;
+    Pane *p = 0;
+    if (!m_paneStack || !(p = m_paneStack->getCurrentPane())) return;
+    if (!p->getFollowGlobalPan()) return;
+    updateVisibleRangeDisplay(p);
+}
+
+void
+MainWindow::viewCentreFrameChanged(View *v, unsigned long frame)
+{
+    if ((m_playSource && m_playSource->isPlaying()) || !getMainModel()) return;
+    Pane *p = 0;
+    if (!m_paneStack || !(p = m_paneStack->getCurrentPane())) return;
+    if (v == p) updateVisibleRangeDisplay(p);
+}
+
+void
+MainWindow::viewZoomLevelChanged(View *v, unsigned long zoom, bool locked)
+{
+    if ((m_playSource && m_playSource->isPlaying()) || !getMainModel()) return;
+    Pane *p = 0;
+    if (!m_paneStack || !(p = m_paneStack->getCurrentPane())) return;
+    if (v == p) updateVisibleRangeDisplay(p);
+}
+
+void
+MainWindow::updateVisibleRangeDisplay(Pane *p) const
+{
+    if (!getMainModel() || !p) {
+        return;
+    }
+
+    RealTime start = RealTime::frame2RealTime
+        (p->getFirstVisibleFrame(), getMainModel()->getSampleRate());
+
+    RealTime end = RealTime::frame2RealTime
+        (p->getLastVisibleFrame(), getMainModel()->getSampleRate());
+
+    RealTime duration = end - start;
+
+    QString startStr, endStr, durationStr;
+    startStr = start.toText(true).c_str();
+    endStr = end.toText(true).c_str();
+    durationStr = duration.toText(true).c_str();
+
+    m_myStatusMessage = tr("Visible: %1 to %2 (duration %3)")
+        .arg(startStr).arg(endStr).arg(durationStr);
+
+    statusBar()->showMessage(m_myStatusMessage);
+}
+
+void
 MainWindow::outputLevelsChanged(float left, float right)
 {
     m_fader->setPeakLeft(left);
@@ -4310,20 +4427,30 @@
     if (!w) return;
 
     if (w == m_fader) {
-        statusBar()->showMessage(tr("Adjust the master playback level"));
+        contextHelpChanged(tr("Adjust the master playback level"));
     } else if (w == m_playSpeed) {
-        statusBar()->showMessage(tr("Adjust the master playback speed"));
+        contextHelpChanged(tr("Adjust the master playback speed"));
     } else if (w == m_playSharpen && w->isEnabled()) {
-        statusBar()->showMessage(tr("Toggle transient sharpening for playback time scaling"));
+        contextHelpChanged(tr("Toggle transient sharpening for playback time scaling"));
     } else if (w == m_playMono && w->isEnabled()) {
-        statusBar()->showMessage(tr("Toggle mono mode for playback time scaling"));
+        contextHelpChanged(tr("Toggle mono mode for playback time scaling"));
     }
 }
 
 void
 MainWindow::mouseLeftWidget()
 {
-    statusBar()->showMessage("");
+    contextHelpChanged("");
+}
+
+void
+MainWindow::contextHelpChanged(const QString &s)
+{
+    if (s == "" && m_myStatusMessage != "") {
+        statusBar()->showMessage(m_myStatusMessage);
+        return;
+    }
+    statusBar()->showMessage(s);
 }
 
 void
--- a/main/MainWindow.h	Mon Mar 05 15:32:55 2007 +0000
+++ b/main/MainWindow.h	Wed Mar 07 17:07:02 2007 +0000
@@ -165,6 +165,10 @@
     void sampleRateMismatch(size_t, size_t, bool);
     void audioOverloadPluginDisabled();
 
+    void playbackFrameChanged(unsigned long);
+    void globalCentreFrameChanged(unsigned long);
+    void viewCentreFrameChanged(View *, unsigned long);
+    void viewZoomLevelChanged(View *, unsigned long, bool);
     void outputLevelsChanged(float, float);
 
     void currentPaneChanged(Pane *);
@@ -222,6 +226,7 @@
 
     void mouseEnteredWidget();
     void mouseLeftWidget();
+    void contextHelpChanged(const QString &);
 
     void website();
     void help();
@@ -268,9 +273,13 @@
     bool                     m_openingAudioFile;
     bool                     m_abandoning;
 
+    int                      m_lastPlayStatusSec;
+    mutable QString          m_myStatusMessage;
+
     QPointer<PreferencesDialog> m_preferencesDialog;
 
     WaveFileModel *getMainModel();
+    const WaveFileModel *getMainModel() const;
     void createDocument();
 
     struct PaneConfiguration {
@@ -386,6 +395,8 @@
 
     void openHelpUrl(QString url);
 
+    void updateVisibleRangeDisplay(Pane *p) const;
+
     void toXml(QTextStream &stream);
 };
 
--- a/sv.pro	Mon Mar 05 15:32:55 2007 +0000
+++ b/sv.pro	Wed Mar 07 17:07:02 2007 +0000
@@ -71,4 +71,5 @@
            transform/Transform.cpp \
            transform/TransformFactory.cpp
 RESOURCES += sonic-visualiser.qrc
-TRANSLATIONS += i18n/sonic-visualiser_ru.ts
+
+
--- a/transform/FeatureExtractionPluginTransform.h	Mon Mar 05 15:32:55 2007 +0000
+++ b/transform/FeatureExtractionPluginTransform.h	Wed Mar 07 17:07:02 2007 +0000
@@ -22,6 +22,8 @@
 
 class FeatureExtractionPluginTransform : public PluginTransform
 {
+    Q_OBJECT
+
 public:
     FeatureExtractionPluginTransform(Model *inputModel,
 				     QString plugin,