summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2008-04-11 14:06:50 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2008-04-11 14:06:50 +0000
commitcb413146428ce5db5e281d70f2b3b7df27c1aaab (patch)
tree4961e9dcb107f2ca1f0a4298faf5135ba8611d92
parent9aa8af5a28abbb86c9ae86c6991838eb6828d0a9 (diff)
merge 3.0 from 2.0-ongoing@3243
git-svn-id: svn://localhost/ardour2/branches/3.0@3248 d708f5d6-7413-0410-9779-e7cbd77b26cf
-rw-r--r--DOCUMENTATION/TRANSLATORS5
-rw-r--r--SConstruct30
-rw-r--r--gtk2_ardour/SAE-us.bindings.in346
-rw-r--r--gtk2_ardour/SConscript27
-rw-r--r--gtk2_ardour/about.cc2
-rw-r--r--gtk2_ardour/actions.cc1
-rw-r--r--gtk2_ardour/actions.h1
-rw-r--r--gtk2_ardour/ardour-sae.menus4
-rw-r--r--gtk2_ardour/ardour.menus458
-rw-r--r--gtk2_ardour/ardour_ui.cc26
-rw-r--r--gtk2_ardour/ardour_ui.h2
-rw-r--r--gtk2_ardour/ardour_ui_ed.cc29
-rw-r--r--gtk2_ardour/ardour_ui_options.cc9
-rw-r--r--gtk2_ardour/au_pluginui.h9
-rw-r--r--gtk2_ardour/au_pluginui.mm95
-rw-r--r--gtk2_ardour/audio_clock.cc29
-rw-r--r--gtk2_ardour/audio_clock.h4
-rw-r--r--gtk2_ardour/audio_region_view.cc22
-rw-r--r--gtk2_ardour/audio_region_view.h2
-rw-r--r--gtk2_ardour/crossfade_edit.cc90
-rw-r--r--gtk2_ardour/crossfade_edit.h9
-rw-r--r--gtk2_ardour/draginfo.h4
-rw-r--r--gtk2_ardour/editing.h13
-rw-r--r--gtk2_ardour/editing_syms.h3
-rw-r--r--gtk2_ardour/editor.cc18
-rw-r--r--gtk2_ardour/editor.h22
-rw-r--r--gtk2_ardour/editor_actions.cc51
-rw-r--r--gtk2_ardour/editor_audio_import.cc2
-rw-r--r--gtk2_ardour/editor_canvas.cc186
-rw-r--r--gtk2_ardour/editor_imageframe.cc10
-rw-r--r--gtk2_ardour/editor_markers.cc4
-rw-r--r--gtk2_ardour/editor_mouse.cc651
-rw-r--r--gtk2_ardour/editor_ops.cc115
-rw-r--r--gtk2_ardour/editor_rulers.cc5
-rw-r--r--gtk2_ardour/editor_selection.cc16
-rw-r--r--gtk2_ardour/gain_meter.cc198
-rw-r--r--gtk2_ardour/gain_meter.h28
-rw-r--r--gtk2_ardour/icons/application-x-ardour2.pngbin2868 -> 0 bytes
-rw-r--r--gtk2_ardour/icons/application-x-ardour_16px.pngbin0 -> 779 bytes
-rw-r--r--gtk2_ardour/icons/application-x-ardour_22px.pngbin0 -> 1080 bytes
-rw-r--r--gtk2_ardour/icons/application-x-ardour_32px.pngbin0 -> 2032 bytes
-rw-r--r--gtk2_ardour/icons/application-x-ardour_48px.pngbin0 -> 3482 bytes
-rw-r--r--gtk2_ardour/io_selector.cc8
-rw-r--r--gtk2_ardour/level_meter.cc24
-rw-r--r--gtk2_ardour/level_meter.h10
-rw-r--r--gtk2_ardour/mixer_ui.cc92
-rw-r--r--gtk2_ardour/mixer_ui.h5
-rw-r--r--gtk2_ardour/mnemonic-us.bindings.in1
-rw-r--r--gtk2_ardour/panner_ui.cc6
-rw-r--r--gtk2_ardour/panner_ui.h2
-rw-r--r--gtk2_ardour/plugin_ui.cc10
-rw-r--r--gtk2_ardour/plugin_ui.h2
-rw-r--r--gtk2_ardour/po/fr_FR.po6250
-rw-r--r--gtk2_ardour/po/pl_PL.po7894
-rw-r--r--gtk2_ardour/po/sv_SE.po346
-rw-r--r--gtk2_ardour/region_view.cc17
-rw-r--r--gtk2_ardour/region_view.h2
-rw-r--r--gtk2_ardour/route_time_axis.cc8
-rw-r--r--gtk2_ardour/route_ui.cc17
-rw-r--r--gtk2_ardour/sfdb_freesound_mootcher.cc502
-rw-r--r--gtk2_ardour/sfdb_freesound_mootcher.h78
-rw-r--r--gtk2_ardour/sfdb_ui.cc296
-rw-r--r--gtk2_ardour/sfdb_ui.h24
-rw-r--r--gtk2_ardour/time_axis_view.cc16
-rw-r--r--gtk2_ardour/time_axis_view.h2
-rw-r--r--libs/ardour/ardour/audio_unit.h4
-rw-r--r--libs/ardour/ardour/audioengine.h2
-rw-r--r--libs/ardour/ardour/automation_event.h14
-rw-r--r--libs/ardour/ardour/configuration_vars.h2
-rw-r--r--libs/ardour/ardour/playlist.h4
-rw-r--r--libs/ardour/ardour/region.h1
-rw-r--r--libs/ardour/ardour/region_factory.h7
-rw-r--r--libs/ardour/ardour/session.h8
-rw-r--r--libs/ardour/audio_diskstream.cc4
-rw-r--r--libs/ardour/audio_unit.cc65
-rw-r--r--libs/ardour/audioengine.cc26
-rw-r--r--libs/ardour/audiofilesource.cc48
-rw-r--r--libs/ardour/audioregion.cc16
-rw-r--r--libs/ardour/automation_event.cc9
-rw-r--r--libs/ardour/import.cc4
-rw-r--r--libs/ardour/io.cc2
-rw-r--r--libs/ardour/playlist.cc61
-rw-r--r--libs/ardour/po/pl_PL.po2063
-rw-r--r--libs/ardour/region.cc31
-rw-r--r--libs/ardour/region_factory.cc18
-rw-r--r--libs/ardour/route.cc1
-rw-r--r--libs/ardour/session.cc18
-rw-r--r--libs/ardour/utils.cc19
-rw-r--r--libs/gtkmm2ext/gtkmm2ext/barcontroller.h1
-rw-r--r--libs/gtkmm2ext/gtkmm2ext/bindable_button.h5
-rw-r--r--libs/gtkmm2ext/gtkmm2ext/binding_proxy.h1
-rw-r--r--libs/gtkmm2ext/po/pl_PL.po53
-rw-r--r--libs/libgnomecanvasmm/libgnomecanvasmm/line.cc4
-rw-r--r--libs/pbd/controllable.cc2
-rw-r--r--libs/pbd/pbd/controllable.h2
-rw-r--r--libs/surfaces/generic_midi/generic_midi_control_protocol.cc146
-rw-r--r--libs/surfaces/generic_midi/generic_midi_control_protocol.h8
-rw-r--r--libs/surfaces/generic_midi/midicontrollable.h6
-rw-r--r--manual/xml/using_existing_audio.xml465
-rw-r--r--svn_revision.h2
100 files changed, 17379 insertions, 3881 deletions
diff --git a/DOCUMENTATION/TRANSLATORS b/DOCUMENTATION/TRANSLATORS
index c09a40406b..55b3723d16 100644
--- a/DOCUMENTATION/TRANSLATORS
+++ b/DOCUMENTATION/TRANSLATORS
@@ -20,3 +20,8 @@ Brazilian Portuguese: Alexander da Franca Fernandes <alexander@nautae.eti.br>
Russian: Igor Blinov <pitstop@nm.ru>
Spanish: Alex Krohn <alexkrohn@fastmail.fm>
+
+Swedish: Petter Sundlöf <petter.sundlof@gmail.com>
+
+Polish: Piotr Zaryk <pzaryk@gmail.com>
+
diff --git a/SConstruct b/SConstruct
index c5ab5f78b6..de5bec5587 100644
--- a/SConstruct
+++ b/SConstruct
@@ -1,5 +1,9 @@
# -*- python -*-
+#
+# and there we have it, or do we?
+#
+
import os
import sys
import re
@@ -34,11 +38,13 @@ opts.AddOptions(
BoolOption('NATIVE_OSX_KEYS', 'Build key bindings file that matches OS X conventions', 0),
BoolOption('OLDFONTS', 'Old school font sizes', 0),
BoolOption('DEBUG', 'Set to build with debugging information and no optimizations', 0),
+ BoolOption('STL_DEBUG', 'Set to build with Standard Template Library Debugging', 0),
PathOption('DESTDIR', 'Set the intermediate install "prefix"', '/'),
EnumOption('DIST_TARGET', 'Build target for cross compiling packagers', 'auto', allowed_values=('auto', 'i386', 'i686', 'x86_64', 'powerpc', 'tiger', 'panther', 'leopard', 'none' ), ignorecase=2),
BoolOption('DMALLOC', 'Compile and link using the dmalloc library', 0),
BoolOption('EXTRA_WARN', 'Compile with -Wextra, -ansi, and -pedantic. Might break compilation. For pedants', 0),
BoolOption('FFT_ANALYSIS', 'Include FFT analysis window', 1),
+ BoolOption('FREESOUND', 'Include Freesound database lookup', 0),
BoolOption('FPU_OPTIMIZATION', 'Build runtime checked assembler code', 1),
BoolOption('LIBLO', 'Compile with support for liblo library', 1),
BoolOption('NLS', 'Set to turn on i18n support', 1),
@@ -48,7 +54,7 @@ opts.AddOptions(
BoolOption('UNIVERSAL', 'Compile as universal binary. Requires that external libraries are already universal.', 0),
BoolOption('VERSIONED', 'Add revision information to ardour/gtk executable name inside the build directory', 0),
BoolOption('VST', 'Compile with support for VST', 0),
- BoolOption('LV2', 'Compile with support for LV2 (if slv2 is available)', 1),
+ BoolOption('LV2', 'Compile with support for LV2 (if slv2 is available)', 0),
BoolOption('GPROFILE', 'Compile with support for gprofile (Developers only)', 0),
BoolOption('FREEDESKTOP', 'Install MIME type, icons and .desktop file as per the freedesktop.org spec (requires xdg-utils and shared-mime-info). "scons uninstall" removes associations in desktop database', 0),
BoolOption('TRANZPORT', 'Compile with support for Frontier Designs (if libusb is available)', 1)
@@ -531,6 +537,24 @@ if env['FFT_ANALYSIS']:
sys.exit (1)
conf.Finish()
+if env['FREESOUND']:
+ #
+ # Check for curl header as well as the library
+ #
+
+ libraries['curl'] = LibraryInfo()
+
+ conf = Configure(libraries['curl'])
+
+ if conf.CheckHeader ('curl/curl.h') == False:
+ print ('Ardour cannot be compiled without the curl headers, which do not seem to be installed')
+ sys.exit (1)
+ else:
+ libraries['curl'].ParseConfig('pkg-config --cflags --libs libcurl')
+ conf.Finish()
+else:
+ print 'FREESOUND support is not enabled. Build with \'scons FREESOUND=1\' to enable.'
+
if env['LV2']:
conf = env.Configure(custom_tests = { 'CheckPKGExists' : CheckPKGExists })
@@ -766,10 +790,14 @@ else:
env.Append(CCFLAGS=" ".join (opt_flags))
env.Append(LINKFLAGS=" ".join (opt_flags))
+if env['STL_DEBUG'] == 1:
+ env.Append(CXXFLAGS="-D_GLIBCXX_DEBUG")
+
if env['UNIVERSAL'] == 1:
env.Append(CCFLAGS="-arch i386 -arch ppc")
env.Append(LINKFLAGS="-arch i386 -arch ppc")
+
#
# warnings flags
#
diff --git a/gtk2_ardour/SAE-us.bindings.in b/gtk2_ardour/SAE-us.bindings.in
new file mode 100644
index 0000000000..523878bd3f
--- /dev/null
+++ b/gtk2_ardour/SAE-us.bindings.in
@@ -0,0 +1,346 @@
+; ardour GtkAccelMap rc-file -*- scheme -*-
+; this file is an automated accelerator map dump
+;
+; (gtk_accel_path "<Actions>/RegionList/RegionListSort" "")
+(gtk_accel_path "<Actions>/Common/Quit" "<%PRIMARY%>q")
+(gtk_accel_path "<Actions>/Common/Save" "<%PRIMARY%>s")
+; (gtk_accel_path "<Actions>/Editor/Pullup" "")
+; (gtk_accel_path "<Actions>/Editor/zoom-to-session" "")
+; (gtk_accel_path "<Actions>/JACK/JACKReconnect" "")
+; (gtk_accel_path "<Actions>/Editor/Autoconnect" "")
+; (gtk_accel_path "<Actions>/Editor/Edit" "")
+(gtk_accel_path "<Actions>/Editor/cycle-edit-point" "grave")
+(gtk_accel_path "<Actions>/Editor/cycle-edit-point-with-marker" "<%SECONDARY%>grave")
+(gtk_accel_path "<Actions>/Editor/toggle-edit-mode" "1")
+(gtk_accel_path "<Actions>/Editor/cycle-snap-mode" "2")
+(gtk_accel_path "<Actions>/Editor/cycle-snap-choice" "3")
+; (gtk_accel_path "<Actions>/redirectmenu/copy" "")
+; (gtk_accel_path "<Actions>/options/MeterFalloffFaster" "")
+(gtk_accel_path "<Actions>/Transport/ToggleRollForgetCapture" "<%PRIMARY%>space")
+(gtk_accel_path "<Actions>/Transport/record-roll" "<%TERTIARY%>space")
+(gtk_accel_path "<Actions>/Transport/Record" "<%TERTIARY%>r")
+; (gtk_accel_path "<Actions>/RegionList/SortByRegionLength" "")
+; (gtk_accel_path "<Actions>/options/MeterFalloffSlowest" "")
+; (gtk_accel_path "<Actions>/Editor/playhead-to-previous-region-sync" "")
+; (gtk_accel_path "<Actions>/redirectmenu/deactivate_all" "")
+; (gtk_accel_path "<Actions>/RegionList/SortByRegionPosition" "")
+; (gtk_accel_path "<Actions>/Editor/ZoomFocus" "")
+(gtk_accel_path "<Actions>/Editor/addExistingAudioFiles" "<%SECONDARY%>i")
+; (gtk_accel_path "<Actions>/options/MeterFalloffSlow" "")
+; (gtk_accel_path "<Actions>/RegionList/rlHide" "")
+; (gtk_accel_path "<Actions>/Main/Metering" "")
+(gtk_accel_path "<Actions>/Editor/playhead-to-next-region-boundary" "rightarrow")
+(gtk_accel_path "<Actions>/Editor/selected-marker-to-next-region-boundary" "<%PRIMARY%><%TERTIARY%>rightarrow")
+; (gtk_accel_path "<Actions>/Zoom/zoom-focus-playhead" "")
+; (gtk_accel_path "<Actions>/Editor/center-edit-cursor" "")
+; (gtk_accel_path "<Actions>/Editor/Monitoring" "")
+; (gtk_accel_path "<Actions>/redirectmenu/deactivate" "")
+; (gtk_accel_path "<Actions>/options/LatchedRecordEnable" "")
+; (gtk_accel_path "<Actions>/Transport/TogglePunchIn" "")
+; (gtk_accel_path "<Actions>/ShuttleActions/SetShuttleUnitsPercentage" "")
+; (gtk_accel_path "<Actions>/Main/Close" "")
+; (gtk_accel_path "<Actions>/Main/New" "")
+(gtk_accel_path "<Actions>/Editor/nudge-next-backward" "<%PRIMARY%>KP_Subtract")
+; (gtk_accel_path "<Actions>/Editor/EditSelectRangeOptions" "")
+; (gtk_accel_path "<Actions>/Transport/ToggleTimeMaster" "")
+; (gtk_accel_path "<Actions>/Snap/snap-to-thirds" "")
+(gtk_accel_path "<Actions>/Editor/align-regions-start-relative" "<%TERTIARY%>a")
+; (gtk_accel_path "<Actions>/Main/Export" "")
+(gtk_accel_path "<Actions>/Editor/jump-forward-to-mark" "<%PRIMARY%>KP_Right")
+; (gtk_accel_path "<Actions>/Editor/Smpte30" "")
+; (gtk_accel_path "<Actions>/Editor/playhead-to-range-start" "")
+; (gtk_accel_path "<Actions>/Editor/Subframes" "")
+; (gtk_accel_path "<Actions>/Editor/Smpte2997drop" "")
+(gtk_accel_path "<Actions>/Main/AddTrackBus" "<%PRIMARY%><%SECONDARY%>n")
+(gtk_accel_path "<Actions>/Editor/align-regions-end" "<%LEVEL4%>a")
+; (gtk_accel_path "<Actions>/JACK/JACKDisconnect" "")
+; (gtk_accel_path "<Actions>/options/MeterFalloffFast" "")
+; (gtk_accel_path "<Actions>/options/FileDataFormatFloat" "")
+; (gtk_accel_path "<Actions>/Snap/snap-to-region-end" "")
+(gtk_accel_path "<Actions>/Editor/edit-cursor-to-next-region-sync" "semicolon")
+; (gtk_accel_path "<Actions>/options/StopRecordingOnXrun" "")
+; (gtk_accel_path "<Actions>/RegionList/SortDescending" "")
+; (gtk_accel_path "<Actions>/options/DoNotRunPluginsWhileRecording" "")
+; (gtk_accel_path "<Actions>/Editor/PullupNone" "")
+(gtk_accel_path "<Actions>/MouseMode/set-mouse-mode-range" "r")
+(gtk_accel_path "<Actions>/Editor/jump-backward-to-mark" "<%PRIMARY%>KP_Left")
+; (gtk_accel_path "<Actions>/Main/AudioFileFormatData" "")
+; (gtk_accel_path "<Actions>/options/MeterFalloffFastest" "")
+(gtk_accel_path "<Actions>/Editor/play-selected-regions" "w")
+(gtk_accel_path "<Actions>/Editor/play-edit-range" "<%SECONDARY%>w")
+(gtk_accel_path "<Actions>/Transport/Forward" "<%PRIMARY%>rightarrow")
+; (gtk_accel_path "<Actions>/Snap/snap-to-smpte-seconds" "")
+; (gtk_accel_path "<Actions>/Snap/snap-to-smpte-frame" "")
+; (gtk_accel_path "<Actions>/Main/ExportSelection" "")
+; (gtk_accel_path "<Actions>/options/StopPluginsWithTransport" "")
+(gtk_accel_path "<Actions>/Editor/editor-paste" "<%PRIMARY%>v")
+(gtk_accel_path "<Actions>/Editor/scroll-tracks-down" "Page_Down")
+(gtk_accel_path "<Actions>/Editor/select-next-route" "downarrow")
+(gtk_accel_path "<Actions>/Editor/select-prev-route" "uparrow")
+; (gtk_accel_path "<Actions>/Snap/snap-to-smpte-minutes" "")
+; (gtk_accel_path "<Actions>/Main/FlushWastebasket" "")
+(gtk_accel_path "<Actions>/Editor/normalize-region" "n")
+(gtk_accel_path "<Actions>/Editor/nudge-forward" "h")
+; (gtk_accel_path "<Actions>/RegionList/SortByRegionEndinFile" "")
+; (gtk_accel_path "<Actions>/Editor/ToggleMeasureVisibility" "")
+; (gtk_accel_path "<Actions>/Zoom/zoom-focus-center" "")
+(gtk_accel_path "<Actions>/Editor/nudge-backward" "g")
+; (gtk_accel_path "<Actions>/options/LatchedSolo" "")
+; (gtk_accel_path "<Actions>/options/MeterHoldOff" "")
+; (gtk_accel_path "<Actions>/options/OutputAutoConnectMaster" "")
+; (gtk_accel_path "<Actions>/JACK/JACKLatency64" "")
+(gtk_accel_path "<Actions>/Editor/undo" "<%PRIMARY%>z")
+(gtk_accel_path "<Actions>/Editor/insert-region" "i")
+; (gtk_accel_path "<Actions>/Editor/center-playhead" "")
+; (gtk_accel_path "<Actions>/Snap/snap-to-region-start" "")
+; (gtk_accel_path "<Actions>/Editor/View" "")
+; (gtk_accel_path "<Actions>/Editor/Layering" "")
+; (gtk_accel_path "<Actions>/JACK/JACKLatency4096" "")
+(gtk_accel_path "<Actions>/Editor/scroll-tracks-up" "Page_Up")
+(gtk_accel_path "<Actions>/Editor/set-edit-point" "g")
+; (gtk_accel_path "<Actions>/Editor/Smpte30drop" "")
+; (gtk_accel_path "<Actions>/Zoom/zoom-focus-edit" "")
+(gtk_accel_path "<Actions>/Editor/playhead-to-previous-region-boundary" "leftarrow")
+(gtk_accel_path "<Actions>/Editor/selected-marker-to-previous-region-boundary" "<%PRIMARY%><%TERTIARY%>leftarrow")
+; (gtk_accel_path "<Actions>/Editor/EditCursorMovementOptions" "")
+; (gtk_accel_path "<Actions>/redirectmenu/activate_all" "")
+; (gtk_accel_path "<Actions>/redirectmenu/paste" "")
+; (gtk_accel_path "<Actions>/Editor/Smpte25" "")
+; (gtk_accel_path "<Actions>/options/RegionEquivalentsOverlap" "")
+; (gtk_accel_path "<Actions>/Main/MeteringFallOffRate" "")
+; (gtk_accel_path "<Actions>/options/UseHardwareMonitoring" "")
+; (gtk_accel_path "<Actions>/Editor/Smpte24" "")
+; (gtk_accel_path "<Actions>/Snap/snap-to-mark" "")
+; (gtk_accel_path "<Actions>/Editor/CrossfadesShort" "")
+; (gtk_accel_path "<Actions>/Editor/Smpte5994" "")
+; (gtk_accel_path "<Actions>/JACK/JACKLatency8192" "")
+; (gtk_accel_path "<Actions>/Editor/toggle-xfades-visible" "")
+(gtk_accel_path "<Actions>/Editor/extend-range-to-end-of-region" "rightanglebracket")
+(gtk_accel_path "<Actions>/Editor/start-range" "F1")
+; (gtk_accel_path "<Actions>/ShuttleActions/SetShuttleUnitsSemitones" "")
+; (gtk_accel_path "<Actions>/JACK/JACKLatency128" "")
+; (gtk_accel_path "<Actions>/Snap/snap-to-beat" "")
+; (gtk_accel_path "<Actions>/Editor/RegionEditOps" "")
+; (gtk_accel_path "<Actions>/Editor/snap-magnetic" "")
+; (gtk_accel_path "<Actions>/Editor/playhead-to-range-end" "")
+(gtk_accel_path "<Actions>/Editor/scroll-playhead-forward" "<%TERTIARY%>rightarrow")
+(gtk_accel_path "<Actions>/Editor/align-regions-sync-relative" "<%SECONDARY%>less")
+(gtk_accel_path "<Actions>/Editor/align-regions-sync" "less")
+; (gtk_accel_path "<Actions>/Editor/EditSelectRegionOptions" "")
+(gtk_accel_path "<Actions>/Editor/crop" "c")
+; (gtk_accel_path "<Actions>/redirectmenu/newsend" "")
+; (gtk_accel_path "<Actions>/Editor/ToggleGeneric MIDISurfaceSubMenu" "")
+; (gtk_accel_path "<Actions>/Editor/MeterFalloff" "")
+; (gtk_accel_path "<Actions>/RegionList/rlRemove" "")
+(gtk_accel_path "<Actions>/Transport/GotoStart" "Home")
+(gtk_accel_path "<Actions>/Editor/select-all-before-edit-cursor" "<%TERTIARY%>Home")
+(gtk_accel_path "<Actions>/Editor/scroll-playhead-backward" "<%TERTIARY%>leftarrow")
+(gtk_accel_path "<Actions>/Editor/split-region" "z")
+; (gtk_accel_path "<Actions>/Transport/ToggleAutoInput" "")
+; (gtk_accel_path "<Actions>/Snap/snap-to-thirtyseconds" "")
+; (gtk_accel_path "<Actions>/Snap/snap-to-minutes" "")
+; (gtk_accel_path "<Actions>/Main/Windows" "")
+; (gtk_accel_path "<Actions>/Main/CleanupUnused" "")
+; (gtk_accel_path "<Actions>/redirectmenu/deselectall" "")
+; (gtk_accel_path "<Actions>/options/SoloViaBus" "")
+; (gtk_accel_path "<Actions>/RegionList/rlAudition" "")
+(gtk_accel_path "<Actions>/Editor/set-region-sync-position" "u")
+; (gtk_accel_path "<Actions>/Editor/PullupPlus4Plus1" "")
+; (gtk_accel_path "<Actions>/Snap/snap-to-region-boundary" "")
+; (gtk_accel_path "<Actions>/JACK/JACK" "")
+(gtk_accel_path "<Actions>/Editor/editor-cut" "<%PRIMARY%>x")
+(gtk_accel_path "<Actions>/Editor/editor-separate" "F4")
+; (gtk_accel_path "<Actions>/RegionList/SortAscending" "")
+; (gtk_accel_path "<Actions>/Main/Help" "")
+; (gtk_accel_path "<Actions>/options/UseExternalMonitoring" "")
+; (gtk_accel_path "<Actions>/Editor/Smpte23976" "")
+(gtk_accel_path "<Actions>/Common/goto-editor" "<%WINDOW%>e")
+(gtk_accel_path "<Actions>/Editor/select-all" "F14")
+(gtk_accel_path "<Actions>/Editor/invert-selection" "F15")
+(gtk_accel_path "<Actions>/Editor/nudge-next-forward" "<%PRIMARY%>KP_Add")
+; (gtk_accel_path "<Actions>/options/ShowSoloMutes" "")
+; (gtk_accel_path "<Actions>/Snap/snap-to-eighths" "")
+(gtk_accel_path "<Actions>/Editor/select-all-after-playhead" "<%TERTIARY%><%PRIMARY%>p")
+(gtk_accel_path "<Actions>/Common/ToggleMaximalEditor" "F11")
+; (gtk_accel_path "<Actions>/RegionList/SortBySourceFileLength" "")
+; (gtk_accel_path "<Actions>/Editor/Timecode" "")
+; (gtk_accel_path "<Actions>/Transport/PlaySelection" "")
+; (gtk_accel_path "<Actions>/Editor/PullupMinus4Minus1" "")
+(gtk_accel_path "<Actions>/Editor/select-all-after-edit-cursor" "<%TERTIARY%><%PRIMARY%>e")
+; (gtk_accel_path "<Actions>/RegionList/SortBySourceFileName" "")
+(gtk_accel_path "<Actions>/Editor/finish-range" "F2")
+(gtk_accel_path "<Actions>/Editor/select-range-between-cursors" "F16")
+(gtk_accel_path "<Actions>/Transport/Loop" "l")
+; (gtk_accel_path "<Actions>/Editor/CrossfadesFull" "")
+(gtk_accel_path "<Actions>/Editor/finish-add-range" "<%TERTIARY%><%PRIMARY%>KP_Up")
+; (gtk_accel_path "<Actions>/options/SendMTC" "")
+; (gtk_accel_path "<Actions>/Transport/TogglePunchOut" "")
+(gtk_accel_path "<Actions>/Editor/select-all-in-loop-range" "<%PRIMARY%>l")
+(gtk_accel_path "<Actions>/Editor/show-editor-mixer" "<%TERTIARY%>e")
+; (gtk_accel_path "<Actions>/options/SoloInPlace" "")
+; (gtk_accel_path "<Actions>/Main/Options" "")
+; (gtk_accel_path "<Actions>/options/MeterFalloffMedium" "")
+(gtk_accel_path "<Actions>/Editor/toggle-follow-playhead" "f")
+; (gtk_accel_path "<Actions>/Main/SaveTemplate" "")
+(gtk_accel_path "<Actions>/Transport/TransitionToRoll" "<%PRIMARY%>uparrow")
+; (gtk_accel_path "<Actions>/RegionList/SortByRegionStartinFile" "")
+; (gtk_accel_path "<Actions>/options/GainReduceFastTransport" "")
+; (gtk_accel_path "<Actions>/Common/ToggleInspector" "")
+; (gtk_accel_path "<Actions>/Transport/ToggleAutoPlay" "")
+; (gtk_accel_path "<Actions>/Editor/playhead-to-next-region-sync" "")
+(gtk_accel_path "<Actions>/Editor/edit-to-playhead" "<%SECONDARY%>Return")
+; (gtk_accel_path "<Actions>/Editor/LayerMoveAddHigher" "")
+; (gtk_accel_path "<Actions>/Editor/Smpte60" "")
+; (gtk_accel_path "<Actions>/Main/Open" "")
+; (gtk_accel_path "<Actions>/Zoom/zoom-focus-left" "")
+; (gtk_accel_path "<Actions>/Main/TransportOptions" "")
+; (gtk_accel_path "<Actions>/Main/ControlSurfaces" "")
+; (gtk_accel_path "<Actions>/options/FileHeaderFormatBWF" "")
+; (gtk_accel_path "<Actions>/Transport/ToggleAutoReturn" "")
+; (gtk_accel_path "<Actions>/Editor/Smpte2997" "")
+; (gtk_accel_path "<Actions>/Editor/ToggleWaveformVisibility" "")
+(gtk_accel_path "<Actions>/Editor/redo" "<%PRIMARY%>r")
+; (gtk_accel_path "<Actions>/Main/ExportSession" "")
+; (gtk_accel_path "<Actions>/options/InputAutoConnectPhysical" "")
+; (gtk_accel_path "<Actions>/Snap/snap-to-edit-cursor" "")
+(gtk_accel_path "<Actions>/Editor/temporal-zoom-in" "t")
+; (gtk_accel_path "<Actions>/JACK/Latency" "")
+(gtk_accel_path "<Actions>/Editor/edit-cursor-to-range-end" "<%TERTIARY%>F2")
+; (gtk_accel_path "<Actions>/redirectmenu/rename" "")
+; (gtk_accel_path "<Actions>/RegionList/rlShowAuto" "")
+(gtk_accel_path "<Actions>/Editor/select-all-before-playhead" "<%PRIMARY%>p")
+; (gtk_accel_path "<Actions>/Main/Session" "")
+(gtk_accel_path "<Actions>/Editor/edit-cursor-to-range-start" "<%TERTIARY%>F1")
+; (gtk_accel_path "<Actions>/Main/AudioFileFormat" "")
+; (gtk_accel_path "<Actions>/Transport/Transport" "")
+(gtk_accel_path "<Actions>/MouseMode/set-mouse-mode-timefx" "t")
+; (gtk_accel_path "<Actions>/RegionList/SortByRegionName" "")
+; (gtk_accel_path "<Actions>/Main/KeyMouse Actions" "")
+(gtk_accel_path "<Actions>/MouseMode/set-mouse-mode-gain" "g")
+; (gtk_accel_path "<Actions>/Snap/snap-to-frame" "")
+; (gtk_accel_path "<Actions>/Editor/SnapTo" "")
+(gtk_accel_path "<Actions>/Transport/TransitionToReverse" "<%PRIMARY%>downarrow")
+; (gtk_accel_path "<Actions>/Editor/Crossfades" "")
+; (gtk_accel_path "<Actions>/Editor/PullupPlus4" "")
+; (gtk_accel_path "<Actions>/Main/MeteringHoldTime" "")
+; (gtk_accel_path "<Actions>/Editor/PullupPlus1" "")
+; (gtk_accel_path "<Actions>/Editor/Smpte24976" "")
+; (gtk_accel_path "<Actions>/options/FileDataFormat24bit" "")
+; (gtk_accel_path "<Actions>/Editor/SnapMode" "")
+(gtk_accel_path "<Actions>/Common/ToggleOptionsEditor" "<%WINDOW%>o")
+; (gtk_accel_path "<Actions>/Editor/PullupMinus4" "")
+(gtk_accel_path "<Actions>/Common/goto-mixer" "<%WINDOW%>m")
+; (gtk_accel_path "<Actions>/RegionList/SortBySourceFileCreationDate" "")
+; (gtk_accel_path "<Actions>/redirectmenu/activate" "")
+(gtk_accel_path "<Actions>/Editor/extend-range-to-start-of-region" "leftanglebracket")
+; (gtk_accel_path "<Actions>/Editor/PullupMinus1" "")
+; (gtk_accel_path "<Actions>/Editor/snap-normal" "")
+(gtk_accel_path "<Actions>/Common/ToggleBigClock" "<%WINDOW%>b")
+(gtk_accel_path "<Actions>/Common/ToggleKeyEditor" "<%WINDOW%>k")
+; (gtk_accel_path "<Actions>/Snap/snap-to-asixteenthbeat" "")
+(gtk_accel_path "<Actions>/Editor/select-all-in-punch-range" "<%PRIMARY%>d")
+; (gtk_accel_path "<Actions>/redirectmenu/edit" "")
+(gtk_accel_path "<Actions>/Editor/duplicate-region" "d")
+(gtk_accel_path "<Actions>/Editor/multi-duplicate-region" "<%SECONDARY%>d")
+; (gtk_accel_path "<Actions>/JACK/JACKLatency2048" "")
+; (gtk_accel_path "<Actions>/Editor/ToggleWaveformsWhileRecording" "")
+; (gtk_accel_path "<Actions>/Zoom/zoom-focus-right" "")
+(gtk_accel_path "<Actions>/Editor/remove-last-capture" "<%PRIMARY%>Delete")
+; (gtk_accel_path "<Actions>/options/FileHeaderFormatWAVE" "")
+(gtk_accel_path "<Actions>/Transport/GotoZero" "KP_0")
+(gtk_accel_path "<Actions>/Editor/select-all-after-edit-cursor" "<%TERTIARY%>End")
+; (gtk_accel_path "<Actions>/redirectmenu/cut" "")
+; (gtk_accel_path "<Actions>/redirectmenu/newinsert" "")
+; (gtk_accel_path "<Actions>/options/UseMMC" "")
+; (gtk_accel_path "<Actions>/options/MeterFalloffOff" "")
+;(gtk_accel_path "<Actions>/MouseMode/set-mouse-mode-object" "o")
+; (gtk_accel_path "<Actions>/Editor/PullupMinus4Plus1" "")
+; (gtk_accel_path "<Actions>/Editor/MeterHold" "")
+; (gtk_accel_path "<Actions>/Snap/snap-to-cd-frame" "")
+; (gtk_accel_path "<Actions>/options/StopTransportAtEndOfSession" "")
+; (gtk_accel_path "<Actions>/Main/Cleanup" "")
+; (gtk_accel_path "<Actions>/Main/Snapshot" "")
+; (gtk_accel_path "<Actions>/Transport/ToggleVideoSync" "")
+(gtk_accel_path "<Actions>/Transport/ToggleRoll" "space")
+; (gtk_accel_path "<Actions>/RegionList/SortBySourceFilesystem" "")
+(gtk_accel_path "<Actions>/Common/ToggleColorManager" "<%WINDOW%>c")
+; (gtk_accel_path "<Actions>/Common/About" "")
+; (gtk_accel_path "<Actions>/JACK/JACKLatency32" "")
+(gtk_accel_path "<Actions>/Editor/playhead-to-edit" "Return")
+; (gtk_accel_path "<Actions>/options/FileHeaderFormatWAVE64" "")
+(gtk_accel_path "<Actions>/Editor/brush-at-mouse" "F3")
+; (gtk_accel_path "<Actions>/RegionList/rlShowAll" "")
+(gtk_accel_path "<Actions>/Transport/Rewind" "<%PRIMARY%>leftarrow")
+; (gtk_accel_path "<Actions>/RegionList/SortByRegionTimestamp" "")
+; (gtk_accel_path "<Actions>/options/VerifyRemoveLastCapture" "")
+; (gtk_accel_path "<Actions>/options/OutputAutoConnectPhysical" "")
+; (gtk_accel_path "<Actions>/options/SendMMC" "")
+; (gtk_accel_path "<Actions>/Editor/toggle-auto-xfades" "")
+; (gtk_accel_path "<Actions>/Main/AudioFileFormatHeader" "")
+; (gtk_accel_path "<Actions>/options/MeterHoldShort" "")
+; (gtk_accel_path "<Actions>/options/MeterHoldMedium" "")
+(gtk_accel_path "<Actions>/Editor/select-all-before-edit-cursor" "<%PRIMARY%>e")
+; (gtk_accel_path "<Actions>/Editor/Subframes80" "")
+; (gtk_accel_path "<Actions>/options/FileHeaderFormatCAF" "")
+(gtk_accel_path "<Actions>/Common/ToggleLocations" "<%WINDOW%>l")
+; (gtk_accel_path "<Actions>/Editor/ToggleGeneric MIDISurface" "")
+(gtk_accel_path "<Actions>/Editor/editor-delete" "BackSpace")
+; (gtk_accel_path "<Actions>/JACK/JACKLatency256" "")
+(gtk_accel_path "<Actions>/Editor/select-all-between-cursors" "F16")
+; (gtk_accel_path "<Actions>/Editor/LayerAddHigher" "")
+; (gtk_accel_path "<Actions>/Editor/Solo" "")
+; (gtk_accel_path "<Actions>/JACK/JACKLatency1024" "")
+; (gtk_accel_path "<Actions>/Main/ExportRangeMarkers" "")
+(gtk_accel_path "<Actions>/Editor/set-playhead" "p")
+; (gtk_accel_path "<Actions>/Editor/toggle-xfades-active" "")
+; (gtk_accel_path "<Actions>/Snap/snap-to-bar" "")
+; (gtk_accel_path "<Actions>/Editor/LayerLaterHigher" "")
+; (gtk_accel_path "<Actions>/redirectmenu/selectall" "")
+(gtk_accel_path "<Actions>/Editor/editor-copy" "<%PRIMARY%>c")
+; (gtk_accel_path "<Actions>/Snap/snap-to-quarters" "")
+(gtk_accel_path "<Actions>/Editor/temporal-zoom-out" "r")
+; (gtk_accel_path "<Actions>/options/UseSoftwareMonitoring" "")
+; (gtk_accel_path "<Actions>/Editor/Subframes100" "")
+(gtk_accel_path "<Actions>/Editor/mute-unmute-region" "<%SECONDARY%>m")
+(gtk_accel_path "<Actions>/Editor/add-location-from-playhead" "m")
+; (gtk_accel_path "<Actions>/options/OutputAutoConnectManual" "")
+; (gtk_accel_path "<Actions>/Snap/snap-to-region-sync" "")
+(gtk_accel_path "<Actions>/Editor/edit-cursor-to-previous-region-sync" "apostrophe")
+; (gtk_accel_path "<Actions>/redirectmenu/clear" "")
+; (gtk_accel_path "<Actions>/Editor/ToggleGeneric MIDISurfaceFeedback" "")
+; (gtk_accel_path "<Actions>/Editor/PullupPlus4Minus1" "")
+; (gtk_accel_path "<Actions>/JACK/JACKLatency512" "")
+; (gtk_accel_path "<Actions>/Main/Recent" "")
+; (gtk_accel_path "<Actions>/redirectmenu/newplugin" "")
+; (gtk_accel_path "<Actions>/options/InputAutoConnectManual" "")
+; (gtk_accel_path "<Actions>/options/MeterHoldLong" "")
+; (gtk_accel_path "<Actions>/Snap/snap-to-seconds" "")
+(gtk_accel_path "<Actions>/Editor/set-fade-in-length" "q")
+(gtk_accel_path "<Actions>/Editor/toggle-fade-in-active" "<%SECONDARY%>q")
+(gtk_accel_path "<Actions>/Editor/set-fade-out-length" "e")
+(gtk_accel_path "<Actions>/Editor/toggle-fade-out-active" "<%SECONDARY%>e")
+(gtk_accel_path "<Actions>/Editor/trim-from-start" "<%TERTIARY%>braceleft")
+(gtk_accel_path "<Actions>/Editor/trim-to-end" "<%TERTIARY%>braceright")
+(gtk_accel_path "<Actions>/Editor/trim-front" "a")
+(gtk_accel_path "<Actions>/Editor/trim-back" "s")
+(gtk_accel_path "<Actions>/Editor/goto-mark-1" "KP_1")
+(gtk_accel_path "<Actions>/Editor/goto-mark-2" "KP_2")
+(gtk_accel_path "<Actions>/Editor/goto-mark-3" "KP_3")
+(gtk_accel_path "<Actions>/Editor/goto-mark-4" "KP_4")
+(gtk_accel_path "<Actions>/Editor/goto-mark-5" "KP_5")
+(gtk_accel_path "<Actions>/Editor/goto-mark-6" "KP_6")
+(gtk_accel_path "<Actions>/Editor/goto-mark-7" "KP_7")
+(gtk_accel_path "<Actions>/Editor/goto-mark-8" "KP_8")
+(gtk_accel_path "<Actions>/Editor/goto-mark-9" "KP_9")
+(gtk_accel_path "<Actions>/Transport/ToggleClick" "5")
+(gtk_accel_path "<Actions>/Transport/ToggleAutoReturn" "4")
+(gtk_accel_path "<Actions>/Transport/focus-on-clock" "KP_Divide")
+(gtk_accel_path "<Actions>/Editor/set-loop-from-edit-range" "bracketright")
+(gtk_accel_path "<Actions>/Editor/set-punch-from-edit-range" "bracketleft")
+(gtk_accel_path "<Actions>/Editor/set-loop-from-region" "<%PRIMARY%><%SECONDARY%>bracketright")
+(gtk_accel_path "<Actions>/Editor/loop-region" "<%PRIMARY%>bracketright")
+(gtk_accel_path "<Actions>/Editor/toggle-zoom" "o")
+(gtk_accel_path "<Actions>/Editor/zoom-to-region" "y")
+(gtk_accel_path "<Actions>/Editor/pitch-shift-region" "F5")
+(gtk_accel_path "<Actions>/Editor/play-from-edit-point-and-return" "<%LEVEL4%>space")
+
diff --git a/gtk2_ardour/SConscript b/gtk2_ardour/SConscript
index 473ba61b08..4f6f1a5646 100644
--- a/gtk2_ardour/SConscript
+++ b/gtk2_ardour/SConscript
@@ -81,6 +81,10 @@ if gtkardour['FFT_ANALYSIS']:
gtkardour.Merge ([libraries['fftw3f']])
gtkardour.Append(CCFLAGS='-DFFT_ANALYSIS')
+if gtkardour['FREESOUND']:
+ gtkardour.Merge ([libraries['curl']])
+ gtkardour.Append(CCFLAGS='-DFREESOUND')
+
if gtkardour['RUBBERBAND']:
gtkardour.Merge ([ libraries['rubberband'] ])
else:
@@ -238,6 +242,10 @@ fft_graph.cc
fft_result.cc
""")
+freesound_files=Split("""
+sfdb_freesound_mootcher.cc
+""")
+
pixmap_files = glob.glob('pixmaps/*.xpm')
icon_files = glob.glob ('icons/*.png')
@@ -298,6 +306,9 @@ else:
if env['FFT_ANALYSIS']:
extra_sources += fft_analysis_files
+if env['FREESOUND']:
+ extra_sources += freesound_files
+
intl_files += extra_sources
gtkardour.Append(CCFLAGS="-D_REENTRANT -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE")
@@ -485,7 +496,10 @@ if env['FREEDESKTOP']:
env.Alias('install', env.InstallAs(os.path.join(desktop_icon_install_prefix, '48x48', 'apps', 'ardour2.png'), 'icons/ardour_icon_48px.png'))
# Install the mime type xml file and its icon #
env.Alias('install', env.Install(os.path.join(install_prefix, 'share', 'mime', 'packages'), 'ardour2.xml'))
- env.Alias('install', env.Install(os.path.join(desktop_icon_install_prefix, '48x48', 'mimetypes'), 'icons/application-x-ardour2.png'))
+ env.Alias('install', env.InstallAs(os.path.join(desktop_icon_install_prefix, '16x16', 'mimetypes', 'application-x-ardour2.png'), 'icons/application-x-ardour_16px.png'))
+ env.Alias('install', env.InstallAs(os.path.join(desktop_icon_install_prefix, '22x22', 'mimetypes', 'application-x-ardour2.png'), 'icons/application-x-ardour_22px.png'))
+ env.Alias('install', env.InstallAs(os.path.join(desktop_icon_install_prefix, '32x32', 'mimetypes', 'application-x-ardour2.png'), 'icons/application-x-ardour_32px.png'))
+ env.Alias('install', env.InstallAs(os.path.join(desktop_icon_install_prefix, '48x48', 'mimetypes', 'application-x-ardour2.png'), 'icons/application-x-ardour_48px.png'))
env.Alias('install', env.Command (os.path.join(install_prefix, 'share', 'mime'), [], 'update-mime-database $TARGET'))
# Update the icon cache #
env.Alias('install', env.Command (desktop_icon_install_prefix, [], 'touch --no-create $TARGET'))
@@ -502,6 +516,9 @@ if env['FREEDESKTOP']:
Delete (desktop_icon_install_prefix + '/22x22/apps/ardour2.png'),
Delete (desktop_icon_install_prefix + '/32x32/apps/ardour2.png'),
Delete (desktop_icon_install_prefix + '/48x48/apps/ardour2.png'),
+ Delete (desktop_icon_install_prefix + '/16x16/mimetypes/application-x-ardour2.png'),
+ Delete (desktop_icon_install_prefix + '/22x22/mimetypes/application-x-ardour2.png'),
+ Delete (desktop_icon_install_prefix + '/32x32/mimetypes/application-x-ardour2.png'),
Delete (desktop_icon_install_prefix + '/48x48/mimetypes/application-x-ardour2.png'),
Action ('update-mime-database ' + install_prefix + '/share/mime'),
Action ('gtk-update-icon-cache ' + desktop_icon_install_prefix),
@@ -517,9 +534,10 @@ env.Alias ('tarball', env.Distribute (env['DISTTREE'],
'ardev', 'ardbg',
'ardour3_ui_dark.rc.in', 'ardour3_ui_light.rc.in', 'splash.png',
'ardour.menus', 'ardour-sae.menus',
- 'ardour.bindings.in',
- 'ardour-sae-ansi.bindings.in',
- 'ardour-sae-de.bindings.in',
+ 'mnemonic-us.bindings.in',
+ 'ergonomic-us.bindings.in',
+ 'SAE-us.bindings.in',
+ 'SAE-de.bindings.in',
'ardour3_ui_default.conf',
'editor_xpms',
'ardour2.xml',
@@ -534,6 +552,7 @@ env.Alias ('tarball', env.Distribute (env['DISTTREE'],
gtkosx_files +
x11_files +
fft_analysis_files +
+ freesound_files +
glob.glob('po/*.po') + glob.glob('*.h')))
# generate a prototype full-featured ardour_ui.rc file
diff --git a/gtk2_ardour/about.cc b/gtk2_ardour/about.cc
index 9a1c0d0d45..416e9925d2 100644
--- a/gtk2_ardour/about.cc
+++ b/gtk2_ardour/about.cc
@@ -172,6 +172,8 @@ static const char* translators[] = {
N_("Spanish:\n\t Alex Krohn <alexkrohn@fastmail.fm>\n"),
N_("Russian:\n\t Igor Blinov <pitstop@nm.ru>\n"),
N_("Greek:\n\t Klearchos Gourgourinis <muadib@in.gr>\n"),
+ N_("Swedish:\n\t Petter Sundlöf <petter.sundlof@gmail.com>\n"),
+ N_("Polish:\n\t Piotr Zaryk <pzaryk@gmail.com>\n"),
0
};
diff --git a/gtk2_ardour/actions.cc b/gtk2_ardour/actions.cc
index a383371c98..ced1ba3a40 100644
--- a/gtk2_ardour/actions.cc
+++ b/gtk2_ardour/actions.cc
@@ -53,6 +53,7 @@ vector<RefPtr<Gtk::Action> > ActionManager::point_selection_sensitive_actions;
vector<RefPtr<Gtk::Action> > ActionManager::time_selection_sensitive_actions;
vector<RefPtr<Gtk::Action> > ActionManager::line_selection_sensitive_actions;
vector<RefPtr<Gtk::Action> > ActionManager::playlist_selection_sensitive_actions;
+vector<RefPtr<Gtk::Action> > ActionManager::mouse_edit_point_requires_canvas_actions;
vector<RefPtr<Gtk::Action> > ActionManager::range_sensitive_actions;
vector<RefPtr<Gtk::Action> > ActionManager::jack_sensitive_actions;
diff --git a/gtk2_ardour/actions.h b/gtk2_ardour/actions.h
index 66e3ad9eea..e05f3194bd 100644
--- a/gtk2_ardour/actions.h
+++ b/gtk2_ardour/actions.h
@@ -51,6 +51,7 @@ class ActionManager
static std::vector<Glib::RefPtr<Gtk::Action> > time_selection_sensitive_actions;
static std::vector<Glib::RefPtr<Gtk::Action> > line_selection_sensitive_actions;
static std::vector<Glib::RefPtr<Gtk::Action> > playlist_selection_sensitive_actions;
+ static std::vector<Glib::RefPtr<Gtk::Action> > mouse_edit_point_requires_canvas_actions;
static std::vector<Glib::RefPtr<Gtk::Action> > range_sensitive_actions;
static std::vector<Glib::RefPtr<Gtk::Action> > transport_sensitive_actions;
diff --git a/gtk2_ardour/ardour-sae.menus b/gtk2_ardour/ardour-sae.menus
index 0c84bcc114..96033d8b76 100644
--- a/gtk2_ardour/ardour-sae.menus
+++ b/gtk2_ardour/ardour-sae.menus
@@ -56,7 +56,6 @@
<menuitem action='TransitionToRoll'/>
<menuitem action='TransitionToReverse'/>
<separator/>
-
<menuitem action='set-playhead'/>
@@ -115,9 +114,6 @@
<menuitem action='ToggleAutoPlay'/>
<menuitem action='ToggleAutoReturn'/>
<menuitem action='ToggleClick'/>
- <separator/>
- <menu action='LocateToMarker'>
- </menu>
</menu>
<menu action='Edit'>
diff --git a/gtk2_ardour/ardour.menus b/gtk2_ardour/ardour.menus
index 2b02567b6f..3efcf9ce8e 100644
--- a/gtk2_ardour/ardour.menus
+++ b/gtk2_ardour/ardour.menus
@@ -28,181 +28,228 @@
<separator/>
<menuitem action='Quit'/>
</menu>
+
<menu name='Transport' action='Transport'>
<menuitem action='ToggleRoll'/>
- <menuitem action='play-from-edit-point-and-return'/>
- <menuitem action='play-edit-range'/>
+ <menu action="PlayMenu">
+ <menuitem action='play-selected-regions'/>
+ <menuitem action='play-edit-range'/>
+ <menuitem action='play-from-edit-point-and-return'/>
+ <menuitem action='Loop'/>
+ </menu>
<menuitem action='record-roll'/>
+ <menuitem action='Record'/>
<menuitem action='ToggleRollForgetCapture'/>
- <menuitem action='Loop'/>
- <menuitem action='loop-region'/>
- <menuitem action='PlaySelection'/>
- <menuitem action='play-edit-range'/>
+ <menu action="SetLoopMenu">
+ <menuitem action='set-loop-from-edit-range'/>
+ <menuitem action='set-loop-from-region'/>
+ </menu>
+ <menu action="SetPunchMenu">
+ <menuitem action='set-punch-from-edit-range'/>
+ <menuitem action='set-punch-from-region'/>
+ </menu>
+
+ <separator/>
<menuitem action='Forward'/>
<menuitem action='Rewind'/>
- <menuitem action='GotoZero'/>
- <menuitem action='GotoStart'/>
- <menuitem action='GotoEnd'/>
- <separator/>
- <menuitem action='tab-to-transient-forwards'/>
- <menuitem action='tab-to-transient-backwards'/>
- <menuitem action='nudge-playhead-forward'/>
- <menuitem action='nudge-playhead-backward'/>
- <separator/>
- <menuitem action='Record'/>
- <separator/>
<menuitem action='TransitionToRoll'/>
<menuitem action='TransitionToReverse'/>
- <separator/>
- <menuitem action='jump-forward-to-mark'/>
- <menuitem action='jump-backward-to-mark'/>
- <menuitem action='add-location-from-playhead'/>
- <separator/>
- <menuitem action='playhead-to-next-region-boundary'/>
- <menuitem action='playhead-to-previous-region-boundary'/>
- <menuitem action='playhead-to-next-region-sync'/>
- <menuitem action='playhead-to-previous-region-sync'/>
- <menuitem action='center-playhead'/>
- <menuitem action='playhead-to-edit'/>
- <separator/>
- <menuitem action='playhead-to-range-start'/>
- <menuitem action='playhead-to-range-end'/>
- <menuitem action='focus-on-clock'/>
- <menu action='LocateToMarker'>
- <menuitem action='goto-mark-1'/>
- <menuitem action='goto-mark-2'/>
- <menuitem action='goto-mark-3'/>
- <menuitem action='goto-mark-4'/>
- <menuitem action='goto-mark-5'/>
- <menuitem action='goto-mark-6'/>
- <menuitem action='goto-mark-7'/>
- <menuitem action='goto-mark-8'/>
- <menuitem action='goto-mark-9'/>
+ <separator/>
+
+
+ <menu action="MovePlayHeadMenu">
+ <menuitem action='set-playhead'/>
+ <menuitem action='playhead-to-edit'/>
+ <menuitem action='center-playhead'/>
+ <separator/>
+ <menuitem action='nudge-playhead-forward'/>
+ <menuitem action='nudge-playhead-backward'/>
+ <separator/>
+ <menuitem action='tab-to-transient-forwards'/>
+ <menuitem action='tab-to-transient-backwards'/>
+ <separator/>
+ <menuitem action='playhead-forward-to-grid'/>
+ <menuitem action='playhead-backward-to-grid'/>
+ <separator/>
+ <menuitem action='playhead-to-next-region-boundary'/>
+ <menuitem action='playhead-to-previous-region-boundary'/>
+ <menuitem action='playhead-to-next-region-sync'/>
+ <menuitem action='playhead-to-previous-region-sync'/>
+ <separator/>
+ <menuitem action='jump-forward-to-mark'/>
+ <menuitem action='jump-backward-to-mark'/>
+ <separator/>
+ <menuitem action='GotoZero'/>
+ <menuitem action='GotoStart'/>
+ <menuitem action='GotoEnd'/>
</menu>
- <menu action='TransportOptions'>
- <menuitem action='ToggleTimeMaster'/>
- <menuitem action='TogglePunchIn'/>
- <menuitem action='TogglePunchOut'/>
- <menuitem action='ToggleAutoInput'/>
- <menuitem action='ToggleAutoPlay'/>
- <menuitem action='ToggleAutoReturn'/>
- <menuitem action='ToggleClick'/>
- <menuitem action='toggle-follow-playhead'/>
- <menuitem action='ToggleVideoSync'/>
- </menu>
- <menuitem action='set-loop-from-edit-range'/>
- <menuitem action='set-loop-from-region'/>
- <menuitem action='set-punch-from-edit-range'/>
- <menuitem action='set-punch-from-region'/>
+
+ <menu action="MoveActiveMarkMenu">
+ <menuitem action='selected-marker-to-next-region-boundary'/>
+ <menuitem action='selected-marker-to-previous-region-boundary'/>
+ <menuitem action='edit-cursor-to-next-region-sync'/>
+ <menuitem action='edit-cursor-to-previous-region-sync'/>
+ <separator/>
+ <menuitem action='edit-to-playhead'/>
+ <menuitem action='set-edit-point'/>
+ </menu>
+
+ <menu action="MarkerMenu">
+ <menuitem action='add-location-from-playhead'/>
+ <separator/>
+ <menuitem action='goto-mark-1'/>
+ <menuitem action='goto-mark-2'/>
+ <menuitem action='goto-mark-3'/>
+ <menuitem action='goto-mark-4'/>
+ <menuitem action='goto-mark-5'/>
+ <menuitem action='goto-mark-6'/>
+ <menuitem action='goto-mark-7'/>
+ <menuitem action='goto-mark-8'/>
+ <menuitem action='goto-mark-9'/>
+ </menu>
+
+ <separator/>
+ <menuitem action='ToggleTimeMaster'/>
+ <menuitem action='TogglePunch'/>
+ <menuitem action='TogglePunchIn'/>
+ <menuitem action='TogglePunchOut'/>
+ <menuitem action='ToggleAutoInput'/>
+ <menuitem action='ToggleAutoPlay'/>
+ <menuitem action='ToggleAutoReturn'/>
+ <menuitem action='ToggleClick'/>
+ <menuitem action='toggle-follow-playhead'/>
+ <separator/>
</menu>
+
<menu name='Edit' action='Edit'>
<menuitem action='undo'/>
<menuitem action='redo'/>
<menuitem action='editor-cut'/>
- <menuitem action='editor-delete'/>
<menuitem action='editor-copy'/>
<menuitem action='editor-paste'/>
<separator/>
- <menuitem action='editor-separate'/>
- <menuitem action='editor-crop'/>
- <menuitem action='split-region'/>
- <separator/>
- <menuitem action='remove-last-capture'/>
- <separator/>
- <menu action='EditCursorMovementOptions'>
- <menuitem action='edit-cursor-to-next-region-start'/>
- <menuitem action='edit-cursor-to-next-region-end'/>
- <menuitem action='edit-cursor-to-previous-region-start'/>
- <menuitem action='edit-cursor-to-previous-region-end'/>
- <menuitem action='edit-cursor-to-next-region-sync'/>
- <menuitem action='edit-cursor-to-previous-region-sync'/>
- <menuitem action='center-edit-cursor'/>
- <menuitem action='edit-to-playhead'/>
- <menuitem action='edit-cursor-to-range-start'/>
- <menuitem action='edit-cursor-to-range-end'/>
- </menu>
- <menuitem action='set-tempo-from-region'/>
- <menuitem action='set-tempo-from-edit-range'/>
- <menu action='KeyMouseActions'>
- <menuitem action='play-selected-regions'/>
- <menuitem action='brush-at-mouse'/>
- <menuitem action='set-edit-point'/>
- <menuitem action='mute-unmute-region'/>
- <menuitem action='set-playhead'/>
- <menuitem action='set-region-sync-position'/>
- <separator/>
- <menuitem action='set-mouse-mode-object'/>
- <menuitem action='set-mouse-mode-range'/>
- <menuitem action='set-mouse-mode-gain'/>
- <menuitem action='set-mouse-mode-zoom'/>
- <menuitem action='set-mouse-mode-timefx'/>
- <menuitem action='set-mouse-mode-note'/>
- <separator/>
- <menuitem action='cycle-edit-point'/>
- <menuitem action='cycle-edit-point-with-marker'/>
- <menuitem action='toggle-edit-mode'/>
- <separator/>
- <menuitem action='boost-region-gain'/>
- <menuitem action='cut-region-gain'/>
- </menu>
- </menu>
- <menu name='Select' action='Select'>
+ <menu action="SelectMenu">
+ <menuitem action='select-all'/>
+ <menuitem action='deselect-all'/>
+ <menuitem action='invert-selection'/>
+ <menuitem action='select-all-after-edit-cursor'/>
+ <menuitem action='select-all-before-edit-cursor'/>
+ <menuitem action='select-all-between-cursors'/>
+ <menuitem action='select-all-within-cursors'/>
+ <menuitem action='select-all-in-punch-range'/>
+ <menuitem action='select-all-in-loop-range'/>
+ <separator/>
<menuitem action='select-range-between-cursors'/>
<menuitem action='extend-range-to-start-of-region'/>
<menuitem action='extend-range-to-end-of-region'/>
<menuitem action='start-range'/>
<menuitem action='finish-range'/>
<menuitem action='finish-add-range'/>
- <separator/>
- <menuitem action='select-all'/>
- <menuitem action='deselect-all'/>
- <menuitem action='invert-selection'/>
- <menuitem action='select-all-after-edit-cursor'/>
- <menuitem action='select-all-before-edit-cursor'/>
- <menuitem action='select-all-after-playhead'/>
- <menuitem action='select-all-before-playhead'/>
- <menuitem action='select-all-between-cursors'/>
- <menuitem action='select-all-within-cursors'/>
- <menuitem action='select-all-in-punch-range'/>
- <menuitem action='select-all-in-loop-range'/>
- <separator/>
- <menuitem action='select-next-route'/>
- <menuitem action='select-prev-route'/>
- </menu>
- <menu action='RegionMenu'>
- <menuitem action='split-region-at-transients'/>
- <menuitem action='crop'/>
- <menuitem action='duplicate-region'/>
- <menuitem action='multi-duplicate-region'/>
- <menuitem action='insert-region'/>
- <menuitem action='normalize-region'/>
- <separator/>
- <menuitem action="nudge-forward"/>
- <menuitem action="nudge-backward"/>
- <menuitem action='split-region'/>
- <menuitem action='set-region-sync-position'/>
- <separator/>
+ </menu>
+ <separator/>
+ <menuitem action='editor-delete'/>
+ <menuitem action='editor-crop'/>
+ <menuitem action='split-region'/>
+ <menu action="SeparateMenu">
+ <menuitem action='editor-separate'/>
+ <menuitem action='separate-from-loop'/>
+ <menuitem action='separate-from-punch'/>
+ <separator/>
+ <menuitem action='split-region-at-transients'/>
+ </menu>
+ <menu action="AlignMenu">
<menuitem action='align-regions-start'/>
<menuitem action='align-regions-start-relative'/>
<menuitem action='align-regions-end'/>
<menuitem action='align-regions-end-relative'/>
<menuitem action='align-regions-sync'/>
<menuitem action='align-regions-sync-relative'/>
- <separator/>
- <menuitem action='set-fade-in-length'/>
- <menuitem action='set-fade-out-length'/>
- <menuitem action='toggle-fade-in-active'/>
- <menuitem action='toggle-fade-out-active'/>
- <separator/>
- <menuitem action='trim-back'/>
+ </menu>
+ <menu action="NudgeRegionMenu">
+ <menuitem action="nudge-forward"/>
+ <menuitem action="nudge-backward"/>
+ </menu>
+ <menu action="TrimMenu">
<menuitem action='trim-front'/>
- <menuitem action='trim-from-start'/>
- <menuitem action='trim-to-end'/>
+ <menuitem action='trim-back'/>
+ <menuitem action='crop'/>
<menuitem action='trim-region-to-loop'/>
<menuitem action='trim-region-to-punch'/>
+ </menu>
+ <menu action="FadeMenu">
+ <menuitem action='set-fade-in-length'/>
+ <menuitem action='toggle-fade-in-active'/>
+ <menuitem action='set-fade-out-length'/>
+ <menuitem action='toggle-fade-out-active'/>
+ </menu>
+ <separator/>
+ <menuitem action='remove-last-capture'/>
+ <separator/>
+ <menu action='KeyMouseActions'>
+ <menuitem action='select-next-route'/>
+ <menuitem action='select-prev-route'/>
+ <menuitem action='brush-at-mouse'/>
+ <separator/>
+ <menuitem action='set-mouse-mode-object'/>
+ <menuitem action='set-mouse-mode-range'/>
+ <menuitem action='set-mouse-mode-gain'/>
+ <menuitem action='set-mouse-mode-zoom'/>
+ <menuitem action='set-mouse-mode-timefx'/>
+ <separator/>
+ <menuitem action='cycle-edit-point'/>
+ <menuitem action='cycle-edit-point-with-marker'/>
+ <menuitem action='toggle-edit-mode'/>
<separator/>
- <menuitem action='pitch-shift-region'/>
+ <menuitem action='boost-region-gain'/>
+ <menuitem action='cut-region-gain'/>
+ <separator/>
+ <menuitem action='break-drag'/>
+ </menu>
+ </menu>
+
+ <menu action='RegionMenu'>
+ <menuitem action='insert-region'/>
+ <menuitem action='rename-region'/>
+ <menuitem action='raise-region'/>
+ <menuitem action='lower-region'/>
+ <menuitem action='naturalize-region'/>
+ <menuitem action='lock-region'/>
+ <menuitem action='set-region-sync-position'/>
+ <menuitem action='remove-region-sync'/>
+ <menuitem action='mute-unmute-region'/>
+ <separator/>
+ <menuitem action='reverse-region'/>
+ <menuitem action='monoize-region'/>
+ <menuitem action='normalize-region'/>
+ <menuitem action='boost-region-gain'/>
+ <menuitem action='cut-region-gain'/>
+ <menuitem action='pitch-shift-region'/>
+ <separator/>
+ <menuitem action='duplicate-region'/>
+ <menuitem action='multi-duplicate-region'/>
+ <menuitem action='region-fill-track'/>
</menu>
+
+ <menu action='TrackMenu'>
+ <menuitem action='AddTrackBus'/>
+ <menuitem action='insert-time'/>
+ <menu action='TrackHeightMenu'>
+ <menuitem action='track-height-largest'/>
+ <menuitem action='track-height-large'/>
+ <menuitem action='track-height-larger'/>
+ <menuitem action='track-height-normal'/>
+ <menuitem action='track-height-smaller'/>
+ <menuitem action='track-height-small'/>
+ </menu>
+ <menu action='WaveformMenu'>
+ <menuitem action='toggle-waveform-visible'/>
+ <menuitem action='linear-waveforms'/>
+ <menuitem action='logarithmic-waveforms'/>
+ </menu>
+ <menuitem action='toggle-track-active'/>
+ <menuitem action='remove-track'/>
+ </menu>
+
<menu name='View' action = 'View'>
<menu name='ZoomFocus' action='ZoomFocus'>
<menuitem action='zoom-focus-left'/>
@@ -255,34 +302,50 @@
<menuitem action='MeterHoldMedium'/>
<menuitem action='MeterHoldLong'/>
</menu>
+ <menu action="PrimaryClockMenu">
+ <menuitem action="primary-clock-bbt"/>
+ <menuitem action="primary-clock-minsec"/>
+ <menuitem action="primary-clock-samples"/>
+ <menuitem action="primary-clock-off"/>
+ </menu>
+ <menu action="SecondaryClockMenu">
+ <menuitem action="secondary-clock-bbt"/>
+ <menuitem action="secondary-clock-minsec"/>
+ <menuitem action="secondary-clock-samples"/>
+ <menuitem action="secondary-clock-off"/>
+ </menu>
+ <menu action="RulerMenu">
+ <menuitem action="toggle-minsec-ruler"/>
+ <menuitem action="toggle-samples-ruler"/>
+ <menuitem action="toggle-bbt-ruler"/>
+ <separator/>
+ <menuitem action="toggle-meter-ruler"/>
+ <menuitem action="toggle-tempo-ruler"/>
+ <menuitem action="toggle-loop-punch-ruler"/>
+ <menuitem action="toggle-cd-marker-ruler"/>
+ <menuitem action="toggle-marker-ruler"/>
+ </menu>
+ <menu action="ZoomMenu">
+ <menuitem action='temporal-zoom-in'/>
+ <menuitem action='temporal-zoom-out'/>
+ <menuitem action='zoom-to-session'/>
+ <menuitem action='zoom-to-region'/>
+ <menuitem action='toggle-zoom'/>
+ </menu>
+ <menu action="ScrollMenu">
+ <menuitem action='scroll-tracks-down'/>
+ <menuitem action='scroll-tracks-up'/>
+ <menuitem action='scroll-forward'/>
+ <menuitem action='scroll-backward'/>
+ </menu>
- <separator/>
-
- <menuitem action='temporal-zoom-in'/>
- <menuitem action='temporal-zoom-out'/>
- <menuitem action='zoom-to-session'/>
- <menuitem action='zoom-to-region'/>
- <menuitem action='toggle-zoom'/>
- <menuitem action='scroll-tracks-down'/>
- <menuitem action='scroll-tracks-up'/>
- <menuitem action='scroll-tracks-down'/>
- <menuitem action='step-tracks-up'/>
- <menuitem action='step-tracks-down'/>
- <separator/>
- <menuitem action='scroll-forward'/>
- <menuitem action='scroll-backward'/>
- <separator/>
- <menuitem action='scroll-playhead-forward'/>
- <menuitem action='scroll-playhead-backward'/>
- <separator/>
+ <menuitem action='ToggleMaximalEditor'/>
+ <menuitem action='show-editor-mixer'/>
+ <menuitem action='ToggleMeasureVisibility'/>
<menuitem action='toggle-waveform-visible'/>
<menuitem action='ToggleWaveformsWhileRecording'/>
- <menuitem action='ToggleMeasureVisibility'/>
- <separator/>
- <menuitem action='show-editor-mixer'/>
- <menuitem action='show-editor-list'/>
<menuitem action='SyncEditorAndMixerTrackOrder'/>
- </menu>
+ </menu>
<menu name='JACK' action='JACK'>
<menuitem action='JACKDisconnect'/>
<menuitem action='JACKReconnect'/>
@@ -309,7 +372,6 @@
<menuitem action='ToggleKeyEditor'/>
<menuitem action='ToggleThemeManager'/>
<menuitem action='ToggleBigClock'/>
- <menuitem action='ToggleBundleManager'/>
<menuitem action='toggle-rhythm-ferret'/>
<separator/>
</menu>
@@ -327,6 +389,15 @@
<menuitem action='FileHeaderFormatCAF'/>
</menu>
</menu>
+ <menu action='SyncMenu'>
+ <menuitem action='SendMTC'/>
+ <menuitem action='SendMMC'/>
+ <menuitem action='UseMMC'/>
+ </menu>
+ <menu action="TempoMenu">
+ <menuitem action='set-tempo-from-region'/>
+ <menuitem action='set-tempo-from-edit-range'/>
+ </menu>
<menu action='Timecode'>
<menuitem action='Smpte23976'/>
<menuitem action='Smpte24'/>
@@ -367,11 +438,13 @@
<menuitem action='RemoteUserDefined'/>
<menuitem action='RemoteMixerDefined'/>
<menuitem action='RemoteEditorDefined'/>
+ <separator/>
+ <menuitem action='AutoRebinding'/>
</menu>
<menu action='Monitoring'>
- <menuitem action='UseHardwareMonitoring'/>
- <menuitem action='UseSoftwareMonitoring'/>
<menuitem action='UseExternalMonitoring'/>
+ <menuitem action='UseSoftwareMonitoring'/>
+ <menuitem action='UseHardwareMonitoring'/>
<separator/>
<menuitem action='ToggleTapeMachineMode'/>
</menu>
@@ -420,32 +493,27 @@
<menuitem action='DenormalFTZDAZ'/>
</menu>
<separator/>
- <menuitem action='SendMTC'/>
- <menuitem action='SendMMC'/>
- <menuitem action='UseMMC'/>
- <separator/>
- <menuitem action='UseOSC'/>
- <menuitem action='StopPluginsWithTransport'/>
- <menuitem action='DoNotRunPluginsWhileRecording'/>
- <menuitem action='LatchedRecordEnable'/>
- <menuitem action='RegionEquivalentsOverlap'/>
- <separator/>
- <menuitem action='PeriodicSafetyBackups'/>
- <menuitem action='VerifyRemoveLastCapture'/>
- <menuitem action='StopRecordingOnXrun'/>
- <menuitem action='CreateXrunMarker'/>
- <menuitem action='StopTransportAtEndOfSession'/>
- <menuitem action='GainReduceFastTransport'/>
- <menuitem action='PrimaryClockDeltaEditCursor'/>
- <menuitem action='SecondaryClockDeltaEditCursor'/>
- <menuitem action='ShowTrackMeters'/>
- <menuitem action='OnlyCopyImportedFiles'/>
- <menuitem action='ShowTrackMeters'/>
- <menuitem action='DefaultNarrowMS'/>
- <menuitem action='link-region-and-track-selection'/>
- <menuitem action='RubberbandingSnapsToGrid'/>
-
- <separator/>
+ <menu action='MiscOptions'>
+ <menuitem action='UseOSC'/>
+ <menuitem action='StopPluginsWithTransport'/>
+ <menuitem action='DoNotRunPluginsWhileRecording'/>
+ <menuitem action='LatchedRecordEnable'/>
+ <menuitem action='RegionEquivalentsOverlap'/>
+ <menuitem action='PeriodicSafetyBackups'/>
+ <menuitem action='VerifyRemoveLastCapture'/>
+ <menuitem action='StopRecordingOnXrun'/>
+ <menuitem action='CreateXrunMarker'/>
+ <menuitem action='StopTransportAtEndOfSession'/>
+ <menuitem action='GainReduceFastTransport'/>
+ <menuitem action='PrimaryClockDeltaEditCursor'/>
+ <menuitem action='SecondaryClockDeltaEditCursor'/>
+ <menuitem action='OnlyCopyImportedFiles'/>
+ <menuitem action='ShowTrackMeters'/>
+ <menuitem action='DefaultNarrowMS'/>
+ <menuitem action='link-region-and-track-selection'/>
+ <menuitem action='RubberbandingSnapsToGrid'/>
+ <menuitem action='AutoAnalyseAudio'/>
+ </menu>
</menu>
<menu name='Help' action='Help'>
<menuitem action='About'/>
@@ -467,7 +535,7 @@
<menuitem action="toggle-loop-punch-ruler"/>
</popup>
- <popup name='processormenu'>
+ <popup name='redirectmenu'>
<menuitem action='newplugin'/>
<menuitem action='newinsert'/>
<menuitem action='newsend'/>
diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc
index 94981803b4..8ca22b2dd5 100644
--- a/gtk2_ardour/ardour_ui.cc
+++ b/gtk2_ardour/ardour_ui.cc
@@ -226,6 +226,10 @@ ARDOUR_UI::ARDOUR_UI (int *argcp, char **argvp[])
ARDOUR::Diskstream::DiskOverrun.connect (mem_fun(*this, &ARDOUR_UI::disk_overrun_handler));
ARDOUR::Diskstream::DiskUnderrun.connect (mem_fun(*this, &ARDOUR_UI::disk_underrun_handler));
+ /* handle dialog requests */
+
+ ARDOUR::Session::Dialog.connect (mem_fun(*this, &ARDOUR_UI::session_dialog));
+
/* handle pending state with a dialog */
ARDOUR::Session::AskAboutPendingState.connect (mem_fun(*this, &ARDOUR_UI::pending_state_dialog));
@@ -1452,6 +1456,7 @@ ARDOUR_UI::remove_last_capture()
void
ARDOUR_UI::transport_record (bool roll)
{
+
if (session) {
switch (session->record_status()) {
case Session::Disabled:
@@ -1477,6 +1482,7 @@ ARDOUR_UI::transport_record (bool roll)
session->disable_record (false, true);
}
}
+ //cerr << "ARDOUR_UI::transport_record () called roll = " << roll << " session->record_status() = " << session->record_status() << endl;
}
void
@@ -1490,6 +1496,8 @@ ARDOUR_UI::transport_roll ()
rolling = session->transport_rolling ();
+ //cerr << "ARDOUR_UI::transport_roll () called session->record_status() = " << session->record_status() << endl;
+
if (session->get_play_loop()) {
session->request_play_loop (false);
auto_loop_button.set_visual_state (1);
@@ -3083,6 +3091,24 @@ ARDOUR_UI::disk_speed_dialog_gone (int ignored_response, MessageDialog* msg)
delete msg;
}
+void
+ARDOUR_UI::session_dialog (std::string msg)
+{
+ ENSURE_GUI_THREAD (bind (mem_fun(*this, &ARDOUR_UI::session_dialog), msg));
+
+ MessageDialog* d;
+
+ if (editor) {
+ d = new MessageDialog (*editor, msg, false, MESSAGE_INFO, BUTTONS_OK, true);
+ } else {
+ d = new MessageDialog (msg, false, MESSAGE_INFO, BUTTONS_OK, true);
+ }
+
+ d->show_all ();
+ d->run ();
+ delete d;
+}
+
int
ARDOUR_UI::pending_state_dialog ()
{
diff --git a/gtk2_ardour/ardour_ui.h b/gtk2_ardour/ardour_ui.h
index e3dd58a310..556a7e9b8c 100644
--- a/gtk2_ardour/ardour_ui.h
+++ b/gtk2_ardour/ardour_ui.h
@@ -686,6 +686,7 @@ class ARDOUR_UI : public Gtkmm2ext::UI
void disk_overrun_handler ();
void disk_underrun_handler ();
+ void session_dialog (std::string);
int pending_state_dialog ();
int sr_mismatch_dialog (nframes_t, nframes_t);
@@ -741,6 +742,7 @@ class ARDOUR_UI : public Gtkmm2ext::UI
void toggle_only_copy_imported_files ();
void toggle_use_narrow_ms();
void toggle_rubberbanding_snaps_to_grid ();
+ void toggle_auto_analyse_audio ();
void toggle_TapeMachineMode();
void mtc_port_changed ();
diff --git a/gtk2_ardour/ardour_ui_ed.cc b/gtk2_ardour/ardour_ui_ed.cc
index 920078c078..95e6dd6906 100644
--- a/gtk2_ardour/ardour_ui_ed.cc
+++ b/gtk2_ardour/ardour_ui_ed.cc
@@ -37,6 +37,7 @@
#include "engine_dialog.h"
#include "editor.h"
#include "actions.h"
+#include "mixer_ui.h"
#ifdef GTKOSX
#include <gtkmm2ext/sync-menu.h>
@@ -93,8 +94,8 @@ ARDOUR_UI::install_actions ()
ActionManager::register_action (main_actions, X_("Help"), _("Help"));
ActionManager::register_action (main_actions, X_("KeyMouseActions"), _("Misc. Shortcuts"));
ActionManager::register_action (main_actions, X_("AudioFileFormat"), _("Audio File Format"));
- ActionManager::register_action (main_actions, X_("AudioFileFormatHeader"), _("Header"));
- ActionManager::register_action (main_actions, X_("AudioFileFormatData"), _("Data"));
+ ActionManager::register_action (main_actions, X_("AudioFileFormatHeader"), _("File Type"));
+ ActionManager::register_action (main_actions, X_("AudioFileFormatData"), _("Sample Format"));
ActionManager::register_action (main_actions, X_("ControlSurfaces"), _("Control Surfaces"));
ActionManager::register_action (main_actions, X_("Plugins"), _("Plugins"));
ActionManager::register_action (main_actions, X_("Metering"), _("Metering"));
@@ -454,6 +455,7 @@ ARDOUR_UI::install_actions ()
ActionManager::register_toggle_action (option_actions, X_("ShowTrackMeters"), _("Enable Editor Meters"), mem_fun (*this, &ARDOUR_UI::toggle_ShowTrackMeters));
ActionManager::register_toggle_action (option_actions, X_("OnlyCopyImportedFiles"), _("Always copy imported files"), mem_fun (*this, &ARDOUR_UI::toggle_only_copy_imported_files));
ActionManager::register_toggle_action (option_actions, X_("RubberbandingSnapsToGrid"), _("Rubberbanding Snaps to Grid"), mem_fun (*this, &ARDOUR_UI::toggle_rubberbanding_snaps_to_grid));
+ ActionManager::register_toggle_action (option_actions, X_("AutoAnalyseAudio"), _("Auto-analyse new audio"), mem_fun (*this, &ARDOUR_UI::toggle_auto_analyse_audio));
ActionManager::register_toggle_action (option_actions, X_("DefaultNarrowMS"), _("Use narrow mixer strips"), mem_fun (*this, &ARDOUR_UI::toggle_use_narrow_ms));
@@ -538,15 +540,24 @@ ARDOUR_UI::install_actions ()
RadioAction::Group file_data_group;
+
act = ActionManager::register_radio_action (option_actions, file_data_group, X_("FileDataFormatFloat"), X_("32-bit floating point"), bind (mem_fun (*this, &ARDOUR_UI::set_native_file_data_format), ARDOUR::FormatFloat));
- act = ActionManager::register_radio_action (option_actions, file_data_group, X_("FileDataFormat24bit"), X_("24-bit signed integer"), bind (mem_fun (*this, &ARDOUR_UI::set_native_file_data_format), ARDOUR::FormatInt24));
- act = ActionManager::register_radio_action (option_actions, file_data_group, X_("FileDataFormat16bit"), X_("16-bit signed integer"), bind (mem_fun (*this, &ARDOUR_UI::set_native_file_data_format), ARDOUR::FormatInt16));
+ act = ActionManager::register_radio_action (option_actions, file_data_group, X_("FileDataFormat24bit"), X_("24-bit integer"), bind (mem_fun (*this, &ARDOUR_UI::set_native_file_data_format), ARDOUR::FormatInt24));
+ act = ActionManager::register_radio_action (option_actions, file_data_group, X_("FileDataFormat16bit"), X_("16-bit integer"), bind (mem_fun (*this, &ARDOUR_UI::set_native_file_data_format), ARDOUR::FormatInt16));
RadioAction::Group monitoring_group;
- act = ActionManager::register_radio_action (option_actions, monitoring_group, X_("UseHardwareMonitoring"), _("Hardware monitoring"), bind (mem_fun (*this, &ARDOUR_UI::set_monitor_model), HardwareMonitoring));
- act = ActionManager::register_radio_action (option_actions, monitoring_group, X_("UseSoftwareMonitoring"), _("Software monitoring"), bind (mem_fun (*this, &ARDOUR_UI::set_monitor_model), SoftwareMonitoring));
- act = ActionManager::register_radio_action (option_actions, monitoring_group, X_("UseExternalMonitoring"), _("External monitoring"), bind (mem_fun (*this, &ARDOUR_UI::set_monitor_model), ExternalMonitoring));
+ /* it would be nice not to even show this item, but that messes up the
+ menus which are not dynamically modified at runtime. so we make it
+ sensitive only if it makes sense.
+ */
+
+ act = ActionManager::register_radio_action (option_actions, monitoring_group, X_("UseHardwareMonitoring"), _("JACK does monitoring"), bind (mem_fun (*this, &ARDOUR_UI::set_monitor_model), HardwareMonitoring));
+ if (engine->can_request_hardware_monitoring()) {
+ act->set_sensitive (false);
+ }
+ act = ActionManager::register_radio_action (option_actions, monitoring_group, X_("UseSoftwareMonitoring"), _("Ardour does monitoring"), bind (mem_fun (*this, &ARDOUR_UI::set_monitor_model), SoftwareMonitoring));
+ act = ActionManager::register_radio_action (option_actions, monitoring_group, X_("UseExternalMonitoring"), _("Audio Hardware does monitoring"), bind (mem_fun (*this, &ARDOUR_UI::set_monitor_model), ExternalMonitoring));
RadioAction::Group solo_group;
@@ -580,6 +591,10 @@ ARDOUR_UI::install_actions ()
act = ActionManager::register_radio_action (option_actions, remote_group, X_("RemoteEditorDefined"), _("Remote ID follows order of Editor"), hide_return (bind (mem_fun (*this, &ARDOUR_UI::set_remote_model), EditorOrdered)));
ActionManager::session_sensitive_actions.push_back (act);
+ act = ActionManager::register_toggle_action (option_actions, X_("AutoRebinding"), _("Auto Rebind Controls"), mem_fun (*(this->mixer), &Mixer_UI::toggle_auto_rebinding));
+ ActionManager::session_sensitive_actions.push_back (act);
+
+
ActionManager::add_action_group (shuttle_actions);
ActionManager::add_action_group (option_actions);
ActionManager::add_action_group (jack_actions);
diff --git a/gtk2_ardour/ardour_ui_options.cc b/gtk2_ardour/ardour_ui_options.cc
index 4b75e59614..fca80f1e3e 100644
--- a/gtk2_ardour/ardour_ui_options.cc
+++ b/gtk2_ardour/ardour_ui_options.cc
@@ -588,6 +588,12 @@ ARDOUR_UI::toggle_rubberbanding_snaps_to_grid ()
}
void
+ARDOUR_UI::toggle_auto_analyse_audio ()
+{
+ ActionManager::toggle_config_state ("options", "AutoAnalyseAudio", &Configuration::set_auto_analyse_audio, &Configuration::get_auto_analyse_audio);
+}
+
+void
ARDOUR_UI::mtc_port_changed ()
{
bool have_mtc;
@@ -1061,13 +1067,11 @@ ARDOUR_UI::parameter_changed (const char* parameter_name)
} else if (PARAM_IS ("send-mtc")) {
ActionManager::map_some_state ("options", "SendMTC", &Configuration::get_send_mtc);
- cerr << "Send MMC = " << Config->get_send_mmc() << endl;
} else if (PARAM_IS ("send-mmc")) {
ActionManager::map_some_state ("options", "SendMMC", &Configuration::get_send_mmc);
- cerr << "Send MMC = " << Config->get_send_mmc() << endl;
} else if (PARAM_IS ("use-osc")) {
@@ -1083,7 +1087,6 @@ ARDOUR_UI::parameter_changed (const char* parameter_name)
} else if (PARAM_IS ("mmc-control")) {
ActionManager::map_some_state ("options", "UseMMC", &Configuration::get_mmc_control);
- cerr << "Use MMC = " << Config->get_mmc_control() << endl;
} else if (PARAM_IS ("midi-feedback")) {
ActionManager::map_some_state ("options", "SendMIDIfeedback", &Configuration::get_midi_feedback);
diff --git a/gtk2_ardour/au_pluginui.h b/gtk2_ardour/au_pluginui.h
index 4f27cb1062..55c65d6291 100644
--- a/gtk2_ardour/au_pluginui.h
+++ b/gtk2_ardour/au_pluginui.h
@@ -39,9 +39,9 @@ class AUPluginUI : public PlugUIBase, public Gtk::VBox
bool start_updating(GdkEventAny*);
bool stop_updating(GdkEventAny*);
- virtual void activate ();
- virtual void deactivate ();
-
+ void activate ();
+ void deactivate ();
+
void lower_box_realized ();
void on_realize ();
void on_show ();
@@ -57,7 +57,7 @@ class AUPluginUI : public PlugUIBase, public Gtk::VBox
boost::shared_ptr<ARDOUR::AUPlugin> au;
int prefheight;
int prefwidth;
-
+
Gtk::HBox top_box;
Gtk::EventBox low_box;
Gtk::VBox vpacker;
@@ -81,6 +81,7 @@ class AUPluginUI : public PlugUIBase, public Gtk::VBox
WindowRef carbon_window;
EventHandlerRef carbon_event_handler;
bool _activating_from_app;
+ NSView* packView;
bool test_cocoa_view_support ();
bool test_carbon_view_support ();
diff --git a/gtk2_ardour/au_pluginui.mm b/gtk2_ardour/au_pluginui.mm
index 3f71f126f5..ab14d4aafd 100644
--- a/gtk2_ardour/au_pluginui.mm
+++ b/gtk2_ardour/au_pluginui.mm
@@ -83,6 +83,7 @@ AUPluginUI::AUPluginUI (boost::shared_ptr<PluginInsert> insert)
cocoa_parent = 0;
cocoa_window = 0;
au_view = 0;
+ packView = 0;
/* prefer cocoa, fall back to cocoa, but use carbon if its there */
@@ -108,6 +109,9 @@ AUPluginUI::~AUPluginUI ()
DisposeWindow (carbon_window);
}
+ if (packView && packView != au_view) {
+ [packView release];
+ }
}
bool
@@ -260,6 +264,49 @@ AUPluginUI::create_cocoa_view ()
[(AUGenericView *)au_view setShowsExpertParameters:YES];
}
+ NSRect packFrame;
+
+ // Get the size of the new AU View's frame
+ packFrame = [au_view frame];
+
+ packFrame.origin.x = 0;
+ packFrame.origin.y = 0;
+
+ if (packFrame.size.width > 500 || packFrame.size.height > 500) {
+
+ /* its too big - use a scrollview */
+
+ NSRect frameRect = [[cocoa_window contentView] frame];
+ scroll_view = [[[NSScrollView alloc] initWithFrame:frameRect] autorelease];
+ [scroll_view setDrawsBackground:NO];
+ [scroll_view setHasHorizontalScroller:YES];
+ [scroll_view setHasVerticalScroller:YES];
+
+ packFrame.size = [NSScrollView frameSizeForContentSize:packFrame.size
+ hasHorizontalScroller:[scroll_view hasHorizontalScroller]
+ hasVerticalScroller:[scroll_view hasVerticalScroller]
+ borderType:[scroll_view borderType]];
+
+ // Create a new frame with same origin as current
+ // frame but size equal to the size of the new view
+ NSRect newFrame;
+ newFrame.origin = [scroll_view frame].origin;
+ newFrame.size = packFrame.size;
+
+ // Set the new frame and document views on the scroll view
+ [scroll_view setFrame:newFrame];
+ [scroll_view setDocumentView:au_view];
+
+ packView = scroll_view;
+
+ } else {
+
+ packView = au_view;
+ }
+
+ prefwidth = packFrame.size.width;
+ prefheight = packFrame.size.height;
+
return 0;
}
@@ -353,7 +400,7 @@ AUPluginUI::activate ()
void
AUPluginUI::deactivate ()
{
- return;
+ return;
cerr << "APP DEactivated, for " << insert->name() << endl;
_activating_from_app = true;
ActivateWindow (carbon_window, FALSE);
@@ -465,7 +512,6 @@ int
AUPluginUI::parent_cocoa_window ()
{
NSWindow* win = get_nswindow ();
- NSView* packView = 0;
NSRect packFrame;
if (!win) {
@@ -481,40 +527,6 @@ AUPluginUI::parent_cocoa_window ()
// Get the size of the new AU View's frame
packFrame = [au_view frame];
- packFrame.origin.x = 0;
- packFrame.origin.y = 0;
-
- if (packFrame.size.width > 500 || packFrame.size.height > 500) {
-
- /* its too big - use a scrollview */
-
- NSRect frameRect = [[cocoa_window contentView] frame];
- scroll_view = [[[NSScrollView alloc] initWithFrame:frameRect] autorelease];
- [scroll_view setDrawsBackground:NO];
- [scroll_view setHasHorizontalScroller:YES];
- [scroll_view setHasVerticalScroller:YES];
-
- packFrame.size = [NSScrollView frameSizeForContentSize:packFrame.size
- hasHorizontalScroller:[scroll_view hasHorizontalScroller]
- hasVerticalScroller:[scroll_view hasVerticalScroller]
- borderType:[scroll_view borderType]];
-
- // Create a new frame with same origin as current
- // frame but size equal to the size of the new view
- NSRect newFrame;
- newFrame.origin = [scroll_view frame].origin;
- newFrame.size = packFrame.size;
-
- // Set the new frame and document views on the scroll view
- [scroll_view setFrame:newFrame];
- [scroll_view setDocumentView:au_view];
-
- packView = scroll_view;
-
- } else {
-
- packView = au_view;
- }
NSView* view = gdk_quartz_window_get_nsview (low_box.get_window()->gobj());
@@ -559,17 +571,6 @@ AUPluginUI::on_hide ()
bool
AUPluginUI::on_map_event (GdkEventAny* ev)
{
- cerr << "AU plugin map event\n";
-
- if (carbon_window) {
-
- // move top level GTK window to the correct level
- // to keep the stack together and not be sliceable
-
- NSWindow* win = get_nswindow ();
- // [win setLevel:NSFloatingWindowLevel];
- }
-
return false;
}
diff --git a/gtk2_ardour/audio_clock.cc b/gtk2_ardour/audio_clock.cc
index e1b80cc073..3ca5ca38e4 100644
--- a/gtk2_ardour/audio_clock.cc
+++ b/gtk2_ardour/audio_clock.cc
@@ -83,7 +83,8 @@ AudioClock::AudioClock (std::string clock_name, bool transient, std::string widg
key_entry_state = 0;
ops_menu = 0;
dragging = false;
-
+ bbt_reference_time = -1;
+
if (with_info) {
frames_upper_info_label = manage (new Label);
frames_lower_info_label = manage (new Label);
@@ -632,6 +633,15 @@ AudioClock::set_bbt (nframes_t when, bool force)
BBT_Time bbt;
session->tempo_map().bbt_time (when, bbt);
+
+ /* handle a common case */
+
+ if (is_duration && when == 0) {
+ bbt.bars = 0;
+ bbt.beats = 0;
+
+ }
+
sprintf (buf, "%03" PRIu32, bbt.bars);
bars_label.set_text (buf);
sprintf (buf, "%02" PRIu32, bbt.beats);
@@ -640,7 +650,16 @@ AudioClock::set_bbt (nframes_t when, bool force)
ticks_label.set_text (buf);
if (bbt_upper_info_label) {
- TempoMap::Metric m (session->tempo_map().metric_at (when));
+ nframes64_t pos;
+
+ if (bbt_reference_time < 0) {
+ pos = when;
+ } else {
+ pos = bbt_reference_time;
+ }
+
+ TempoMap::Metric m (session->tempo_map().metric_at (pos));
+
sprintf (buf, "%-5.2f", m.tempo().beats_per_minute());
if (bbt_lower_info_label->get_text() != buf) {
bbt_lower_info_label->set_text (buf);
@@ -1994,3 +2013,9 @@ AudioClock::set_size_requests ()
}
}
+
+void
+AudioClock::set_bbt_reference (nframes64_t pos)
+{
+ bbt_reference_time = pos;
+}
diff --git a/gtk2_ardour/audio_clock.h b/gtk2_ardour/audio_clock.h
index 1aa721b864..426b2f02fc 100644
--- a/gtk2_ardour/audio_clock.h
+++ b/gtk2_ardour/audio_clock.h
@@ -50,7 +50,8 @@ class AudioClock : public Gtk::HBox
void set (nframes_t, bool force = false, nframes_t offset = 0, char which = 0);
void set_mode (Mode);
-
+ void set_bbt_reference (nframes64_t);
+
void set_widget_name (std::string);
std::string name() const { return _name; }
@@ -154,6 +155,7 @@ class AudioClock : public Gtk::HBox
Gtk::EventBox clock_base;
Gtk::Frame clock_frame;
+ nframes64_t bbt_reference_time;
nframes_t last_when;
bool last_pdelta;
bool last_sdelta;
diff --git a/gtk2_ardour/audio_region_view.cc b/gtk2_ardour/audio_region_view.cc
index c9943e1e96..e66b184adb 100644
--- a/gtk2_ardour/audio_region_view.cc
+++ b/gtk2_ardour/audio_region_view.cc
@@ -117,6 +117,28 @@ AudioRegionView::AudioRegionView (const AudioRegionView& other)
init (c, false);
}
+AudioRegionView::AudioRegionView (const AudioRegionView& other, boost::shared_ptr<AudioRegion> other_region)
+ : RegionView (other, boost::shared_ptr<Region> (other_region))
+ , zero_line(0)
+ , fade_in_shape(0)
+ , fade_out_shape(0)
+ , fade_in_handle(0)
+ , fade_out_handle(0)
+ , gain_line(0)
+ , _amplitude_above_axis(1.0)
+ , _flags(0)
+ , fade_color(0)
+
+{
+ Gdk::Color c;
+ int r,g,b,a;
+
+ UINT_TO_RGBA (other.fill_color, &r, &g, &b, &a);
+ c.set_rgb_p (r/255.0, g/255.0, b/255.0);
+
+ init (c, true);
+}
+
void
AudioRegionView::init (Gdk::Color& basic_color, bool wfd)
{
diff --git a/gtk2_ardour/audio_region_view.h b/gtk2_ardour/audio_region_view.h
index 10b0254337..58e3c7fce6 100644
--- a/gtk2_ardour/audio_region_view.h
+++ b/gtk2_ardour/audio_region_view.h
@@ -55,6 +55,7 @@ class AudioRegionView : public RegionView
Gdk::Color& basic_color);
AudioRegionView (const AudioRegionView& other);
+ AudioRegionView (const AudioRegionView& other, boost::shared_ptr<ARDOUR::AudioRegion>);
~AudioRegionView ();
@@ -134,7 +135,6 @@ class AudioRegionView : public RegionView
double _amplitude_above_axis;
double _y_position;
- double _height;
uint32_t _flags;
uint32_t fade_color;
diff --git a/gtk2_ardour/crossfade_edit.cc b/gtk2_ardour/crossfade_edit.cc
index a4e7281870..5f6f0793b7 100644
--- a/gtk2_ardour/crossfade_edit.cc
+++ b/gtk2_ardour/crossfade_edit.cc
@@ -1115,42 +1115,43 @@ CrossfadeEditor::peaks_ready (boost::shared_ptr<AudioRegion> r, WhichFade which)
}
void
-CrossfadeEditor::audition_both ()
+CrossfadeEditor::audition (Audition which)
{
AudioPlaylist& pl (session.the_auditioner()->prepare_playlist());
nframes_t preroll;
nframes_t postroll;
- nframes_t length;
nframes_t left_start_offset;
nframes_t right_length;
nframes_t left_length;
- if (preroll_button.get_active()) {
+ if (which != Right && preroll_button.get_active()) {
preroll = session.frame_rate() * 2; //2 second hardcoded preroll for now
} else {
preroll = 0;
}
- if (postroll_button.get_active()) {
+ if (which != Left && postroll_button.get_active()) {
postroll = session.frame_rate() * 2; //2 second hardcoded postroll for now
} else {
postroll = 0;
}
- if ((left_start_offset = xfade->out()->length() - xfade->length()) >= preroll) {
- left_start_offset -= preroll;
- }
-
- length = 0;
-
- if ((left_length = xfade->length()) < xfade->out()->length() - left_start_offset) {
- length += postroll;
- }
+ // Is there enough data for the whole preroll?
+ left_length = xfade->length();
+ if ((left_start_offset = xfade->out()->length() - xfade->length()) > preroll) {
+ left_start_offset -= preroll;
+ } else {
+ preroll = left_start_offset;
+ left_start_offset = 0;
+ }
+ left_length += preroll;
+ // Is there enough data for the whole postroll?
right_length = xfade->length();
-
- if (xfade->in()->length() - right_length < postroll) {
+ if ((xfade->in()->length() - right_length) > postroll) {
right_length += postroll;
+ } else {
+ right_length = xfade->in()->length();
}
boost::shared_ptr<AudioRegion> left (boost::dynamic_pointer_cast<AudioRegion> (RegionFactory::create (xfade->out(), left_start_offset, left_length, "xfade out",
@@ -1158,17 +1159,34 @@ CrossfadeEditor::audition_both ()
boost::shared_ptr<AudioRegion> right (boost::dynamic_pointer_cast<AudioRegion> (RegionFactory::create (xfade->in(), 0, right_length, "xfade in",
0, Region::DefaultFlags, false)));
+ //apply a 20ms declicking fade at the start and end of auditioning
+ left->set_fade_in_active(true);
+ left->set_fade_in_length(session.frame_rate() / 50);
+ right->set_fade_out_active(true);
+ right->set_fade_out_length(session.frame_rate() / 50);
+
pl.add_region (left, 0);
- pl.add_region (right, 1+preroll);
+ pl.add_region (right, 1 + preroll);
+
+ if (which == Left) {
+ right->set_scale_amplitude (0.0);
+ } else if (which == Right) {
+ left->set_scale_amplitude (0.0);
+ }
/* there is only one ... */
-
pl.foreach_crossfade (this, &CrossfadeEditor::setup);
session.audition_playlist ();
}
void
+CrossfadeEditor::audition_both ()
+{
+ audition (Both);
+}
+
+void
CrossfadeEditor::audition_left_dry ()
{
boost::shared_ptr<AudioRegion> left (boost::dynamic_pointer_cast<AudioRegion> (RegionFactory::create (xfade->out(), xfade->out()->length() - xfade->length(), xfade->length(), "xfade left",
@@ -1180,25 +1198,7 @@ CrossfadeEditor::audition_left_dry ()
void
CrossfadeEditor::audition_left ()
{
- AudioPlaylist& pl (session.the_auditioner()->prepare_playlist());
-
- boost::shared_ptr<AudioRegion> left (boost::dynamic_pointer_cast<AudioRegion> (RegionFactory::create (xfade->out(), xfade->out()->length() - xfade->length(), xfade->length(), "xfade left",
- 0, Region::DefaultFlags, false)));
- boost::shared_ptr<AudioRegion> right (boost::dynamic_pointer_cast<AudioRegion> (RegionFactory::create (xfade->in(), 0, xfade->length(), "xfade in",
- 0, Region::DefaultFlags, false)));
-
- pl.add_region (left, 0);
- pl.add_region (right, 1);
-
- right->set_muted (true);
-
- /* there is only one ... */
-
- pl.foreach_crossfade (this, &CrossfadeEditor::setup);
-
- session.audition_playlist ();
-
- /* memory leak for regions */
+ audition (Left);
}
void
@@ -1212,23 +1212,7 @@ CrossfadeEditor::audition_right_dry ()
void
CrossfadeEditor::audition_right ()
{
- AudioPlaylist& pl (session.the_auditioner()->prepare_playlist());
-
- boost::shared_ptr<AudioRegion> left (boost::dynamic_pointer_cast<AudioRegion> (RegionFactory::create (xfade->out(), xfade->out()->length() - xfade->length(), xfade->length(), "xfade out",
- 0, Region::DefaultFlags, false)));
- boost::shared_ptr<AudioRegion> right (boost::dynamic_pointer_cast<AudioRegion> (RegionFactory::create (xfade->out(), 0, xfade->length(), "xfade out",
- 0, Region::DefaultFlags, false)));
-
- pl.add_region (left, 0);
- pl.add_region (right, 1);
-
- left->set_muted (true);
-
- /* there is only one ... */
-
- pl.foreach_crossfade (this, &CrossfadeEditor::setup);
-
- session.audition_playlist ();
+ audition (Right);
}
void
diff --git a/gtk2_ardour/crossfade_edit.h b/gtk2_ardour/crossfade_edit.h
index e9f2dcf762..e0e9926687 100644
--- a/gtk2_ardour/crossfade_edit.h
+++ b/gtk2_ardour/crossfade_edit.h
@@ -187,13 +187,20 @@ class CrossfadeEditor : public ArdourDialog
void setup (boost::shared_ptr<ARDOUR::Crossfade>);
void cancel_audition ();
void audition_state_changed (bool);
-
+
+ enum Audition {
+ Both,
+ Left,
+ Right
+ };
+
void audition_toggled ();
void audition_right_toggled ();
void audition_right_dry_toggled ();
void audition_left_toggled ();
void audition_left_dry_toggled ();
+ void audition (Audition);
void audition_both ();
void audition_left_dry ();
void audition_left ();
diff --git a/gtk2_ardour/draginfo.h b/gtk2_ardour/draginfo.h
index d8e3eb74b4..4b91fa6c1b 100644
--- a/gtk2_ardour/draginfo.h
+++ b/gtk2_ardour/draginfo.h
@@ -44,6 +44,7 @@ struct DragInfo {
nframes64_t grab_frame;
nframes64_t last_pointer_frame;
nframes64_t current_pointer_frame;
+ double original_x, original_y;
double grab_x, grab_y;
double cumulative_x_drag;
double cumulative_y_drag;
@@ -53,7 +54,8 @@ struct DragInfo {
double last_pointer_y;
void (Editor::*motion_callback)(ArdourCanvas::Item*, GdkEvent*);
void (Editor::*finished_callback)(ArdourCanvas::Item*, GdkEvent*);
- TimeAxisView* last_trackview;
+ TimeAxisView* source_trackview;
+ TimeAxisView* dest_trackview;
bool x_constrained;
bool y_constrained;
bool copy;
diff --git a/gtk2_ardour/editing.h b/gtk2_ardour/editing.h
index 64ced895db..d6608e3d8b 100644
--- a/gtk2_ardour/editing.h
+++ b/gtk2_ardour/editing.h
@@ -39,6 +39,7 @@
#define EDITPOINT(a) /*empty*/
#define WAVEFORMSCALE(a) /*empty*/
#define WAVEFORMSHAPE(a) /*empty*/
+#define INSERTTIMEOPT(a) /*empty*/
namespace Editing {
@@ -202,6 +203,18 @@ enum WaveformShape {
#undef WAVEFORMSHAPE
#define WAVEFORMSHAPE(a) /*empty*/
+
+// INSERTTIMEOPT
+#undef INSERTTIMEOPT
+#define INSERTTIMEOPT(a) a,
+enum InsertTimeOption {
+ #include "editing_syms.h"
+};
+
+#undef INSERTTIMEOPT
+#define INSERTTIMEOPT(a) /*empty*/
+
+
/////////////////////
// These don't need their state saved. yet...
enum CutCopyOp {
diff --git a/gtk2_ardour/editing_syms.h b/gtk2_ardour/editing_syms.h
index 47017f57bf..ed6cf8aed8 100644
--- a/gtk2_ardour/editing_syms.h
+++ b/gtk2_ardour/editing_syms.h
@@ -109,3 +109,6 @@ WAVEFORMSHAPE(Traditional)
WAVEFORMSHAPE(Rectified)
+INSERTTIMEOPT(LeaveIntersected)
+INSERTTIMEOPT(MoveIntersected)
+INSERTTIMEOPT(SplitIntersected)
diff --git a/gtk2_ardour/editor.cc b/gtk2_ardour/editor.cc
index 9138fe392a..dff2271a80 100644
--- a/gtk2_ardour/editor.cc
+++ b/gtk2_ardour/editor.cc
@@ -281,6 +281,8 @@ Editor::Editor ()
bbt_beat_subdivision = 4;
canvas_width = 0;
canvas_height = 0;
+ last_autoscroll_x = 0;
+ last_autoscroll_y = 0;
autoscroll_active = false;
autoscroll_timeout_tag = -1;
interthread_progress_window = 0;
@@ -1840,8 +1842,9 @@ Editor::add_region_context_items (StreamView* sv, boost::shared_ptr<Region> regi
items.push_back (MenuElem (_("Bounce"), mem_fun(*this, &Editor::bounce_region_selection)));
#ifdef FFT_ANALYSIS
- if (ar)
- items.push_back (MenuElem (_("Analyze region"), mem_fun(*this, &Editor::analyze_region_selection)));
+ if (ar) {
+ items.push_back (MenuElem (_("Spectral Analysis"), mem_fun(*this, &Editor::analyze_region_selection)));
+ }
#endif
items.push_back (SeparatorElem());
@@ -2020,7 +2023,7 @@ Editor::add_selection_context_items (Menu_Helpers::MenuList& edit_items)
#ifdef FFT_ANALYSIS
items.push_back (SeparatorElem());
- items.push_back (MenuElem (_("Analyze range"), mem_fun(*this, &Editor::analyze_range_selection)));
+ items.push_back (MenuElem (_("Spectral Analysis"), mem_fun(*this, &Editor::analyze_range_selection)));
#endif
items.push_back (SeparatorElem());
@@ -2305,6 +2308,15 @@ Editor::set_edit_point_preference (EditPoint ep, bool force)
Glib::RefPtr<RadioAction>::cast_dynamic(act)->set_active (true);
}
+ nframes64_t foo;
+ bool in_track_canvas;
+
+ if (!mouse_frame (foo, in_track_canvas)) {
+ in_track_canvas = false;
+ }
+
+ reset_canvas_action_sensitivity (in_track_canvas);
+
instant_save ();
}
diff --git a/gtk2_ardour/editor.h b/gtk2_ardour/editor.h
index 65e64da121..2c7e32d19e 100644
--- a/gtk2_ardour/editor.h
+++ b/gtk2_ardour/editor.h
@@ -1086,6 +1086,9 @@ class Editor : public PublicEditor
void adjust_region_scale_amplitude (bool up);
void quantize_region ();
+ void do_insert_time ();
+ void insert_time (nframes64_t pos, nframes64_t distance, Editing::InsertTimeOption opt, bool ignore_music_glue);
+
void tab_to_transient (bool forward);
void use_region_as_bar ();
@@ -1273,6 +1276,7 @@ class Editor : public PublicEditor
int scrubbing_direction;
int scrub_reversals;
int scrub_reverse_distance;
+ void scrub ();
void keyboard_selection_begin ();
void keyboard_selection_finish (bool add);
@@ -1299,6 +1303,8 @@ class Editor : public PublicEditor
void start_grab (GdkEvent*, Gdk::Cursor* cursor = 0);
bool end_grab (ArdourCanvas::Item*, GdkEvent*);
void swap_grab (ArdourCanvas::Item*, Gdk::Cursor* cursor, uint32_t time);
+ void break_drag ();
+ void finalize_drag ();
Gtk::Menu fade_context_menu;
void popup_fade_context_menu (int, int, ArdourCanvas::Item*, ItemType);
@@ -1843,15 +1849,19 @@ public:
bool autoscroll_active;
int autoscroll_timeout_tag;
- int autoscroll_direction;
+ int autoscroll_x;
+ int autoscroll_y;
+ int last_autoscroll_x;
+ int last_autoscroll_y;
uint32_t autoscroll_cnt;
- nframes_t autoscroll_distance;
+ nframes_t autoscroll_x_distance;
+ double autoscroll_y_distance;
static gint _autoscroll_canvas (void *);
bool autoscroll_canvas ();
- void start_canvas_autoscroll (int direction);
+ void start_canvas_autoscroll (int x, int y);
void stop_canvas_autoscroll ();
- void maybe_autoscroll (GdkEvent*);
+ void maybe_autoscroll (GdkEventMotion*);
/* trimming */
enum TrimOp {
@@ -2169,13 +2179,15 @@ public:
void ensure_entered_track_selected (bool op_acts_on_objects = false);
bool clear_entered_track;
- gint left_track_canvas (GdkEventCrossing*);
+ bool left_track_canvas (GdkEventCrossing*);
+ bool entered_track_canvas (GdkEventCrossing*);
void set_entered_track (TimeAxisView*);
void set_entered_regionview (RegionView*);
gint left_automation_track ();
bool _new_regionviews_show_envelope;
+ void reset_canvas_action_sensitivity (bool);
void toggle_gain_envelope_visibility ();
void toggle_gain_envelope_active ();
void reset_region_gain_envelopes ();
diff --git a/gtk2_ardour/editor_actions.cc b/gtk2_ardour/editor_actions.cc
index f1539757fb..b7ce500088 100644
--- a/gtk2_ardour/editor_actions.cc
+++ b/gtk2_ardour/editor_actions.cc
@@ -61,6 +61,7 @@ Editor::register_actions ()
ActionManager::register_action (editor_actions, X_("MarkerMenu"), _("Markers"));
ActionManager::register_action (editor_actions, X_("MeterFalloff"), _("Meter falloff"));
ActionManager::register_action (editor_actions, X_("MeterHold"), _("Meter hold"));
+ ActionManager::register_action (editor_actions, X_("MiscOptions"), _("Misc Options"));
ActionManager::register_action (editor_actions, X_("Monitoring"), _("Monitoring"));
ActionManager::register_action (editor_actions, X_("MoveActiveMarkMenu"), _("Active Mark"));
ActionManager::register_action (editor_actions, X_("MovePlayHeadMenu"), _("Playhead"));
@@ -98,6 +99,7 @@ Editor::register_actions ()
/* add named actions for the editor */
ActionManager::register_toggle_action (editor_actions, "link-region-and-track-selection", _("Link Region/Track Selection"), mem_fun (*this, &Editor::toggle_link_region_and_track_selection));
+ ActionManager::register_action (editor_actions, "break-drag", _("Break drag"), mem_fun (*this, &Editor::break_drag));
act = ActionManager::register_toggle_action (editor_actions, "show-editor-mixer", _("Show Editor Mixer"), mem_fun (*this, &Editor::editor_mixer_button_toggled));
ActionManager::session_sensitive_actions.push_back (act);
@@ -177,16 +179,12 @@ Editor::register_actions ()
act = ActionManager::register_action (editor_actions, "select-all-before-edit-cursor", _("Select All Before Edit Point"), bind (mem_fun(*this, &Editor::select_all_selectables_using_edit), false));
ActionManager::session_sensitive_actions.push_back (act);
- act = ActionManager::register_action (editor_actions, "select-all-after-playhead", _("Select All After Playhead"), bind (mem_fun(*this, &Editor::select_all_selectables_using_cursor), playhead_cursor, true));
+ act = ActionManager::register_action (editor_actions, "select-all-between-cursors", _("Select All Overlapping Edit Range"), bind (mem_fun(*this, &Editor::select_all_selectables_between), false));
ActionManager::session_sensitive_actions.push_back (act);
- act = ActionManager::register_action (editor_actions, "select-all-before-playhead", _("Select All Before Playhead"), bind (mem_fun(*this, &Editor::select_all_selectables_using_cursor), playhead_cursor, false));
- ActionManager::session_sensitive_actions.push_back (act);
- act = ActionManager::register_action (editor_actions, "select-all-between-cursors", _("Select All Between Playhead & Edit Point"), bind (mem_fun(*this, &Editor::select_all_selectables_between), false));
- ActionManager::session_sensitive_actions.push_back (act);
- act = ActionManager::register_action (editor_actions, "select-all-within-cursors", _("Select All Within Playhead & Edit Point"), bind (mem_fun(*this, &Editor::select_all_selectables_between), true));
+ act = ActionManager::register_action (editor_actions, "select-all-within-cursors", _("Select All Inside Edit Range"), bind (mem_fun(*this, &Editor::select_all_selectables_between), true));
ActionManager::session_sensitive_actions.push_back (act);
- act = ActionManager::register_action (editor_actions, "select-range-between-cursors", _("Select Range Between Playhead & Edit Point"), mem_fun(*this, &Editor::select_range_between));
+ act = ActionManager::register_action (editor_actions, "select-range-between-cursors", _("Select Edit Range"), mem_fun(*this, &Editor::select_range_between));
ActionManager::session_sensitive_actions.push_back (act);
act = ActionManager::register_action (editor_actions, "select-all-in-punch-range", _("Select All in Punch Range"), mem_fun(*this, &Editor::select_all_selectables_using_punch));
@@ -365,7 +363,7 @@ Editor::register_actions ()
act = ActionManager::register_action (editor_actions, "set-playhead", _("Playhead to Mouse"), mem_fun(*this, &Editor::set_playhead_cursor));
ActionManager::session_sensitive_actions.push_back (act);
- act = ActionManager::register_action (editor_actions, "set-edit-point", _("Edit Point to Mouse"), mem_fun(*this, &Editor::set_edit_point));
+ act = ActionManager::register_action (editor_actions, "set-edit-point", _("Active Marker to Mouse"), mem_fun(*this, &Editor::set_edit_point));
ActionManager::session_sensitive_actions.push_back (act);
act = ActionManager::register_action (editor_actions, "duplicate-region", _("Duplicate Region"), bind (mem_fun(*this, &Editor::duplicate_dialog), false));
@@ -447,16 +445,16 @@ Editor::register_actions ()
act = ActionManager::register_action (editor_actions, "editor-separate", _("Separate"), mem_fun(*this, &Editor::separate_region_from_selection));
ActionManager::session_sensitive_actions.push_back (act);
- ActionManager::region_selection_sensitive_actions.push_back (act);
+ ActionManager::mouse_edit_point_requires_canvas_actions.push_back (act);
act = ActionManager::register_action (editor_actions, "separate-from-punch", _("Separate Using Punch Range"), mem_fun(*this, &Editor::separate_region_from_punch));
ActionManager::session_sensitive_actions.push_back (act);
- ActionManager::region_selection_sensitive_actions.push_back (act);
+ ActionManager::mouse_edit_point_requires_canvas_actions.push_back (act);
act = ActionManager::register_action (editor_actions, "separate-from-loop", _("Separate Using Loop Range"), mem_fun(*this, &Editor::separate_region_from_loop));
ActionManager::session_sensitive_actions.push_back (act);
- ActionManager::region_selection_sensitive_actions.push_back (act);
+ ActionManager::mouse_edit_point_requires_canvas_actions.push_back (act);
act = ActionManager::register_action (editor_actions, "editor-crop", _("Crop"), mem_fun(*this, &Editor::crop_region_to_selection));
ActionManager::session_sensitive_actions.push_back (act);
- ActionManager::region_selection_sensitive_actions.push_back (act);
+ ActionManager::mouse_edit_point_requires_canvas_actions.push_back (act);
act = ActionManager::register_action (editor_actions, "editor-cut", _("Cut"), mem_fun(*this, &Editor::cut));
ActionManager::session_sensitive_actions.push_back (act);
/* Note: for now, editor-delete does the exact same thing as editor-cut */
@@ -472,6 +470,7 @@ Editor::register_actions ()
act = ActionManager::register_action (editor_actions, "set-tempo-from-region", _("Set Tempo from Region=Bar"), mem_fun(*this, &Editor::use_region_as_bar));
ActionManager::session_sensitive_actions.push_back (act);
+ ActionManager::region_selection_sensitive_actions.push_back (act);
act = ActionManager::register_action (editor_actions, "set-tempo-from-edit-range", _("Set Tempo from Edit Range=Bar"), mem_fun(*this, &Editor::use_range_as_bar));
ActionManager::session_sensitive_actions.push_back (act);
@@ -511,6 +510,10 @@ Editor::register_actions ()
act = ActionManager::register_action (editor_actions, "remove-last-capture", _("Remove Last Capture"), (mem_fun(*this, &Editor::remove_last_capture)));
ActionManager::session_sensitive_actions.push_back (act);
+ act = ActionManager::register_action (editor_actions, "insert-time", _("Insert Time"), (mem_fun(*this, &Editor::do_insert_time)));
+ ActionManager::session_sensitive_actions.push_back (act);
+ ActionManager::track_selection_sensitive_actions.push_back (act);
+
act = ActionManager::register_action (editor_actions, "toggle-track-active", _("Toggle Active"), (mem_fun(*this, &Editor::toggle_tracks_active)));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::track_selection_sensitive_actions.push_back (act);
@@ -521,20 +524,20 @@ Editor::register_actions ()
act = ActionManager::register_action (editor_actions, "track-height-largest", _("Largest"), (mem_fun(*this, &Editor::set_track_height_largest)));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::track_selection_sensitive_actions.push_back (act);
- act = ActionManager::register_action (editor_actions, "track-height-larger", _("Larger"), (mem_fun(*this, &Editor::set_track_height_large)));
+ act = ActionManager::register_action (editor_actions, "track-height-larger", _("Larger"), (mem_fun(*this, &Editor::set_track_height_larger)));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::track_selection_sensitive_actions.push_back (act);
- act = ActionManager::register_action (editor_actions, "track-height-large", _("Large"), (mem_fun(*this, &Editor::set_track_height_larger)));
+ act = ActionManager::register_action (editor_actions, "track-height-large", _("Large"), (mem_fun(*this, &Editor::set_track_height_large)));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::track_selection_sensitive_actions.push_back (act);
act = ActionManager::register_action (editor_actions, "track-height-normal", _("Normal"), (mem_fun(*this, &Editor::set_track_height_normal)));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::track_selection_sensitive_actions.push_back (act);
- act = ActionManager::register_action (editor_actions, "track-height-small", _("Small"), (mem_fun(*this, &Editor::set_track_height_smaller)));
+ act = ActionManager::register_action (editor_actions, "track-height-small", _("Small"), (mem_fun(*this, &Editor::set_track_height_small)));
ActionManager::track_selection_sensitive_actions.push_back (act);
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::track_selection_sensitive_actions.push_back (act);
- act = ActionManager::register_action (editor_actions, "track-height-smaller", _("Smaller"), (mem_fun(*this, &Editor::set_track_height_small)));
+ act = ActionManager::register_action (editor_actions, "track-height-smaller", _("Smaller"), (mem_fun(*this, &Editor::set_track_height_smaller)));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::track_selection_sensitive_actions.push_back (act);
@@ -690,9 +693,8 @@ Editor::register_actions ()
/* the next two are duplicate items with different names for use in two different contexts */
- ActionManager::register_action (editor_actions, X_("addExistingAudioFiles"), _("Import Existing Media"), mem_fun (*this, &Editor::external_audio_dialog));
- act = ActionManager::register_action (editor_actions, X_("addExternalAudioToRegionList"), _("Add External Media"), bind (mem_fun(*this, &Editor::add_external_audio_action), ImportAsRegion));
+ act = ActionManager::register_action (editor_actions, X_("addExistingAudioFiles"), _("Import"), mem_fun (*this, &Editor::external_audio_dialog));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::register_toggle_action (editor_actions, X_("toggle-waveform-visible"), _("Show Waveforms"), mem_fun (*this, &Editor::toggle_waveform_visibility));
@@ -1668,3 +1670,16 @@ Editor::reset_focus ()
{
track_canvas->grab_focus();
}
+
+void
+Editor::reset_canvas_action_sensitivity (bool onoff)
+{
+ if (_edit_point != EditAtMouse) {
+ onoff = true;
+ }
+
+ for (vector<Glib::RefPtr<Action> >::iterator x = ActionManager::mouse_edit_point_requires_canvas_actions.begin();
+ x != ActionManager::mouse_edit_point_requires_canvas_actions.end(); ++x) {
+ (*x)->set_sensitive (onoff);
+ }
+}
diff --git a/gtk2_ardour/editor_audio_import.cc b/gtk2_ardour/editor_audio_import.cc
index fb6e2c8673..10bd1a08a8 100644
--- a/gtk2_ardour/editor_audio_import.cc
+++ b/gtk2_ardour/editor_audio_import.cc
@@ -225,7 +225,7 @@ Editor::check_whether_and_how_to_import(string path, bool all_or_nothing)
//message = string_compose(_("The session already contains a source file named %1. Do you want to update that file (and thus all regions using the file) or import this file as a new file?"),wave_name);
message = string_compose(_("The session already contains a source file named %1. This file will be imported as a new file, please confirm."),wave_name);
} else {
- message = _("Lorem ipsum. Do you want to skidaddle?");
+ message = string_compose(_("A source file %1 already exists. This operation will not update that source but import the file %2 as a new source, please confirm."), wave_name, wave_name);
}
MessageDialog dialog(message, false,Gtk::MESSAGE_QUESTION, Gtk::BUTTONS_NONE, true);
diff --git a/gtk2_ardour/editor_canvas.cc b/gtk2_ardour/editor_canvas.cc
index 1331ce8759..fc836ae453 100644
--- a/gtk2_ardour/editor_canvas.cc
+++ b/gtk2_ardour/editor_canvas.cc
@@ -127,6 +127,7 @@ Editor::initialize_canvas ()
track_canvas->set_name ("EditorMainCanvas");
track_canvas->add_events (Gdk::POINTER_MOTION_HINT_MASK|Gdk::SCROLL_MASK);
track_canvas->signal_leave_notify_event().connect (mem_fun(*this, &Editor::left_track_canvas));
+ track_canvas->signal_enter_notify_event().connect (mem_fun(*this, &Editor::entered_track_canvas));
track_canvas->set_flags (CAN_FOCUS);
/* set up drag-n-drop */
@@ -189,17 +190,15 @@ Editor::initialize_canvas ()
cd_marker_group = new ArdourCanvas::Group (*time_canvas->root(), 0.0, timebar_height * 5.0);
tempo_bar = new ArdourCanvas::SimpleRect (*tempo_group, 0.0, 0.0, max_canvas_coordinate, timebar_height-1.0);
-
tempo_bar->property_outline_what() = (0x1 | 0x8);
tempo_bar->property_outline_pixels() = 1;
+
meter_bar = new ArdourCanvas::SimpleRect (*meter_group, 0.0, 0.0, max_canvas_coordinate, timebar_height-1.0);
-
meter_bar->property_outline_what() = (0x1 | 0x8);
meter_bar->property_outline_pixels() = 1;
marker_bar = new ArdourCanvas::SimpleRect (*marker_group, 0.0, 0.0, max_canvas_coordinate, timebar_height-1.0);
-
marker_bar->property_outline_what() = (0x1 | 0x8);
marker_bar->property_outline_pixels() = 1;
@@ -209,20 +208,18 @@ Editor::initialize_canvas ()
range_marker_bar = new ArdourCanvas::SimpleRect (*range_marker_group, 0.0, 0.0, max_canvas_coordinate, timebar_height-1.0);
range_marker_bar->property_outline_what() = (0x1 | 0x8);
- range_marker_bar->property_outline_pixels() = 1;
+ range_marker_bar->property_outline_pixels() = 0;
transport_marker_bar = new ArdourCanvas::SimpleRect (*transport_marker_group, 0.0, 0.0, max_canvas_coordinate, timebar_height-1.0);
-
transport_marker_bar->property_outline_what() = (0x1 | 0x8);
transport_marker_bar->property_outline_pixels() = 1;
cd_marker_bar_drag_rect = new ArdourCanvas::SimpleRect (*cd_marker_group, 0.0, 0.0, max_canvas_coordinate, timebar_height-1.0);
- // cd_marker_bar_drag_rect->property_outline_pixels() = 0;
+ cd_marker_bar_drag_rect->property_outline_pixels() = 0;
cd_marker_bar_drag_rect->hide ();
range_bar_drag_rect = new ArdourCanvas::SimpleRect (*range_marker_group, 0.0, 0.0, max_canvas_coordinate, timebar_height-1.0);
range_bar_drag_rect->property_outline_pixels() = 0;
- range_bar_drag_rect->hide ();
transport_bar_drag_rect = new ArdourCanvas::SimpleRect (*transport_marker_group, 0.0, 0.0, max_canvas_coordinate, timebar_height-1.0);
transport_bar_drag_rect->property_outline_pixels() = 0;
@@ -588,47 +585,52 @@ Editor::drop_routes (const Glib::RefPtr<Gdk::DragContext>& context,
}
void
-Editor::maybe_autoscroll (GdkEvent* event)
+Editor::maybe_autoscroll (GdkEventMotion* event)
{
nframes_t rightmost_frame = leftmost_frame + current_page_frames();
nframes_t frame = drag_info.current_pointer_frame;
bool startit = false;
+ double vertical_pos = vertical_adjustment.get_value();
+
+ autoscroll_y = 0;
+ autoscroll_x = 0;
- static int last_autoscroll_direction = 0;
+ if (event->y < vertical_pos) {
+ autoscroll_y = -1;
+ startit = true;
+ }
+
+ if (event->y > vertical_pos + canvas_height) {
+ autoscroll_y = 1;
+ startit = true;
+ }
if (frame > rightmost_frame) {
if (rightmost_frame < max_frames) {
- autoscroll_direction = 1;
+ autoscroll_x = 1;
startit = true;
}
} else if (frame < leftmost_frame) {
-
+
if (leftmost_frame > 0) {
- autoscroll_direction = -1;
+ autoscroll_x = -1;
startit = true;
}
- } else {
-
- if (drag_info.last_pointer_frame > drag_info.current_pointer_frame) {
- autoscroll_direction = -1;
- } else {
- autoscroll_direction = 1;
- }
}
-
- if ((autoscroll_direction != last_autoscroll_direction) || (leftmost_frame < frame < rightmost_frame)) {
+ if ((autoscroll_x != last_autoscroll_x) || (autoscroll_y != last_autoscroll_y) || (autoscroll_x == 0 && autoscroll_y == 0)) {
stop_canvas_autoscroll ();
}
if (startit && autoscroll_timeout_tag < 0) {
- start_canvas_autoscroll (autoscroll_direction);
+ start_canvas_autoscroll (autoscroll_x, autoscroll_y);
}
- last_autoscroll_direction = autoscroll_direction;
+ last_autoscroll_x = autoscroll_x;
+ last_autoscroll_y = autoscroll_y;
}
gint
@@ -644,21 +646,64 @@ Editor::autoscroll_canvas ()
nframes_t limit = max_frames - current_page_frames();
GdkEventMotion ev;
nframes_t target_frame;
+ double new_pixel;
+ double target_pixel;
- if (autoscroll_direction < 0) {
- if (leftmost_frame < autoscroll_distance) {
+ if (autoscroll_x < 0) {
+ if (leftmost_frame < autoscroll_x_distance) {
new_frame = 0;
} else {
- new_frame = leftmost_frame - autoscroll_distance;
+ new_frame = leftmost_frame - autoscroll_x_distance;
}
- target_frame = drag_info.current_pointer_frame - autoscroll_distance;
- } else {
- if (leftmost_frame > limit - autoscroll_distance) {
+ target_frame = drag_info.current_pointer_frame - autoscroll_x_distance;
+ } else if (autoscroll_x > 0) {
+ if (leftmost_frame > limit - autoscroll_x_distance) {
new_frame = limit;
} else {
- new_frame = leftmost_frame + autoscroll_distance;
+ new_frame = leftmost_frame + autoscroll_x_distance;
+ }
+ target_frame = drag_info.current_pointer_frame + autoscroll_x_distance;
+ } else {
+ target_frame = drag_info.current_pointer_frame;
+ new_frame = leftmost_frame;
+ }
+
+ double vertical_pos = vertical_adjustment.get_value();
+
+ if (autoscroll_y < 0) {
+
+ if (vertical_pos < autoscroll_y_distance) {
+ new_pixel = 0;
+ } else {
+ new_pixel = vertical_pos - autoscroll_y_distance;
+ }
+
+ target_pixel = drag_info.current_pointer_y - autoscroll_y_distance;
+ target_pixel = max (target_pixel, 0.0);
+
+ } else if (autoscroll_y > 0) {
+
+ double top_of_bottom_of_canvas = full_canvas_height - canvas_height;
+
+ if (vertical_pos > full_canvas_height - autoscroll_y_distance) {
+ new_pixel = full_canvas_height;
+ } else {
+ new_pixel = vertical_pos + autoscroll_y_distance;
}
- target_frame = drag_info.current_pointer_frame + autoscroll_distance;
+
+ new_pixel = min (top_of_bottom_of_canvas, new_pixel);
+
+ target_pixel = drag_info.current_pointer_y + autoscroll_y_distance;
+
+ /* don't move to the full canvas height because the item will be invisible
+ (its top edge will line up with the bottom of the visible canvas.
+ */
+
+ target_pixel = min (target_pixel, full_canvas_height - 10);
+
+ } else {
+ target_pixel = drag_info.current_pointer_y;
+ new_pixel = vertical_pos;
}
/* now fake a motion event to get the object that is being dragged to move too */
@@ -666,10 +711,10 @@ Editor::autoscroll_canvas ()
ev.type = GDK_MOTION_NOTIFY;
ev.state &= Gdk::BUTTON1_MASK;
ev.x = frame_to_unit (target_frame);
- ev.y = drag_info.current_pointer_y;
+ ev.y = target_pixel;
motion_handler (drag_info.item, (GdkEvent*) &ev, drag_info.item_type, true);
- if (new_frame == 0 || new_frame == limit) {
+ if ((new_frame == 0 || new_frame == limit) && (new_pixel == 0 || new_pixel == DBL_MAX)) {
/* we are done */
return false;
}
@@ -689,29 +734,54 @@ Editor::autoscroll_canvas ()
reset_x_origin (new_frame);
}
- if (autoscroll_cnt == 50) { /* 0.5 seconds */
-
- /* after about a while, speed up a bit by changing the timeout interval */
-
- autoscroll_distance = (nframes_t) floor (current_page_frames()/30.0f);
-
- } else if (autoscroll_cnt == 150) { /* 1.0 seconds */
-
- autoscroll_distance = (nframes_t) floor (current_page_frames()/20.0f);
-
- } else if (autoscroll_cnt == 300) { /* 1.5 seconds */
-
- /* after about another while, speed up by increasing the shift per callback */
-
- autoscroll_distance = (nframes_t) floor (current_page_frames()/10.0f);
+ vertical_adjustment.set_value (new_pixel);
+
+ if (autoscroll_x_distance != 0) {
+
+ if (autoscroll_cnt == 50) { /* 0.5 seconds */
+
+ /* after about a while, speed up a bit by changing the timeout interval */
+
+ autoscroll_x_distance = (nframes_t) floor (current_page_frames()/30.0f);
+
+ } else if (autoscroll_cnt == 150) { /* 1.0 seconds */
+
+ autoscroll_x_distance = (nframes_t) floor (current_page_frames()/20.0f);
+
+ } else if (autoscroll_cnt == 300) { /* 1.5 seconds */
+
+ /* after about another while, speed up by increasing the shift per callback */
+
+ autoscroll_x_distance = (nframes_t) floor (current_page_frames()/10.0f);
+
+ }
+ }
- }
+ if (autoscroll_y_distance != 0) {
+
+ if (autoscroll_cnt == 50) { /* 0.5 seconds */
+
+ /* after about a while, speed up a bit by changing the timeout interval */
+
+ autoscroll_y_distance = 10;
+
+ } else if (autoscroll_cnt == 150) { /* 1.0 seconds */
+
+ autoscroll_y_distance = 20;
+
+ } else if (autoscroll_cnt == 300) { /* 1.5 seconds */
+
+ /* after about another while, speed up by increasing the shift per callback */
+
+ autoscroll_y_distance = 40;
+ }
+ }
return true;
}
void
-Editor::start_canvas_autoscroll (int dir)
+Editor::start_canvas_autoscroll (int dx, int dy)
{
if (!session || autoscroll_active) {
return;
@@ -720,8 +790,10 @@ Editor::start_canvas_autoscroll (int dir)
stop_canvas_autoscroll ();
autoscroll_active = true;
- autoscroll_direction = dir;
- autoscroll_distance = (nframes_t) floor (current_page_frames()/50.0);
+ autoscroll_x = dx;
+ autoscroll_y = dy;
+ autoscroll_x_distance = (nframes_t) floor (current_page_frames()/50.0);
+ autoscroll_y_distance = fabs (dy * 5); /* pixels */
autoscroll_cnt = 0;
/* do it right now, which will start the repeated callbacks */
@@ -740,11 +812,19 @@ Editor::stop_canvas_autoscroll ()
autoscroll_active = false;
}
-gint
+bool
Editor::left_track_canvas (GdkEventCrossing *ev)
{
set_entered_track (0);
set_entered_regionview (0);
+ reset_canvas_action_sensitivity (false);
+ return false;
+}
+
+bool
+Editor::entered_track_canvas (GdkEventCrossing *ev)
+{
+ reset_canvas_action_sensitivity (true);
return FALSE;
}
diff --git a/gtk2_ardour/editor_imageframe.cc b/gtk2_ardour/editor_imageframe.cc
index 68d061696e..daba2496a0 100644
--- a/gtk2_ardour/editor_imageframe.cc
+++ b/gtk2_ardour/editor_imageframe.cc
@@ -430,7 +430,8 @@ Editor::start_imageframe_grab(ArdourCanvas::Item* item, GdkEvent* event)
drag_info.finished_callback = &Editor::timeaxis_item_drag_finished_callback;
drag_info.last_frame_position = ifv->get_position() ;
- drag_info.last_trackview = &ifv->get_time_axis_view() ;
+ drag_info.source_trackview = &ifv->get_time_axis_view() ;
+ drag_info.dest_trackview = drag_info.source_trackview;
/* this is subtle. raising the regionview itself won't help,
because raise_to_top() just puts the item on the top of
@@ -442,7 +443,7 @@ Editor::start_imageframe_grab(ArdourCanvas::Item* item, GdkEvent* event)
*/
drag_info.item->raise_to_top();
- drag_info.last_trackview->canvas_display->raise_to_top();
+ drag_info.source_trackview->canvas_display->raise_to_top();
//time_line_group->raise_to_top();
cursor_group->raise_to_top ();
@@ -463,7 +464,8 @@ Editor::start_markerview_grab(ArdourCanvas::Item* item, GdkEvent* event)
drag_info.finished_callback = &Editor::timeaxis_item_drag_finished_callback;
drag_info.last_frame_position = mv->get_position() ;
- drag_info.last_trackview = &mv->get_time_axis_view() ;
+ drag_info.source_trackview = &mv->get_time_axis_view() ;
+ drag_info.dest_trackview = drag_info.source_trackview;
/* this is subtle. raising the regionview itself won't help,
because raise_to_top() just puts the item on the top of
@@ -475,7 +477,7 @@ Editor::start_markerview_grab(ArdourCanvas::Item* item, GdkEvent* event)
*/
drag_info.item->raise_to_top();
- drag_info.last_trackview->canvas_display->raise_to_top();
+ drag_info.source_trackview->canvas_display->raise_to_top();
//time_line_group->raise_to_top();
cursor_group->raise_to_top ();
diff --git a/gtk2_ardour/editor_markers.cc b/gtk2_ardour/editor_markers.cc
index 4b0ba07b77..60f838f06a 100644
--- a/gtk2_ardour/editor_markers.cc
+++ b/gtk2_ardour/editor_markers.cc
@@ -328,7 +328,9 @@ Editor::refresh_location_display_internal (Locations::LocationList& locations)
i = tmp;
}
-
+
+ update_punch_range_view (false);
+ update_loop_range_view (false);
}
void
diff --git a/gtk2_ardour/editor_mouse.cc b/gtk2_ardour/editor_mouse.cc
index 0199a3de3c..e6c3ca972b 100644
--- a/gtk2_ardour/editor_mouse.cc
+++ b/gtk2_ardour/editor_mouse.cc
@@ -84,6 +84,10 @@ Editor::mouse_frame (nframes64_t& where, bool& in_track_canvas) const
Gdk::ModifierType mask;
Glib::RefPtr<Gdk::Window> canvas_window = const_cast<Editor*>(this)->track_canvas->get_window();
Glib::RefPtr<const Gdk::Window> pointer_window;
+
+ if (!canvas_window) {
+ return false;
+ }
pointer_window = canvas_window->get_pointer (x, y, mask);
@@ -1605,6 +1609,85 @@ Editor::left_automation_track ()
return false;
}
+void
+Editor::scrub ()
+{
+ double delta;
+
+ if (scrubbing_direction == 0) {
+ /* first move */
+ session->request_locate (drag_info.current_pointer_frame, false);
+ session->request_transport_speed (0.1);
+ scrubbing_direction = 1;
+
+ } else {
+
+ if (last_scrub_x > drag_info.current_pointer_x) {
+
+ /* pointer moved to the left */
+
+ if (scrubbing_direction > 0) {
+
+ /* we reversed direction to go backwards */
+
+ scrub_reversals++;
+ scrub_reverse_distance += (int) (last_scrub_x - drag_info.current_pointer_x);
+
+ } else {
+
+ /* still moving to the left (backwards) */
+
+ scrub_reversals = 0;
+ scrub_reverse_distance = 0;
+
+ delta = 0.01 * (last_scrub_x - drag_info.current_pointer_x);
+ session->request_transport_speed (session->transport_speed() - delta);
+ }
+
+ } else {
+ /* pointer moved to the right */
+
+ if (scrubbing_direction < 0) {
+ /* we reversed direction to go forward */
+
+ scrub_reversals++;
+ scrub_reverse_distance += (int) (drag_info.current_pointer_x - last_scrub_x);
+
+ } else {
+ /* still moving to the right */
+
+ scrub_reversals = 0;
+ scrub_reverse_distance = 0;
+
+ delta = 0.01 * (drag_info.current_pointer_x - last_scrub_x);
+ session->request_transport_speed (session->transport_speed() + delta);
+ }
+ }
+
+ /* if there have been more than 2 opposite motion moves detected, or one that moves
+ back more than 10 pixels, reverse direction
+ */
+
+ if (scrub_reversals >= 2 || scrub_reverse_distance > 10) {
+
+ if (scrubbing_direction > 0) {
+ /* was forwards, go backwards */
+ session->request_transport_speed (-0.1);
+ scrubbing_direction = -1;
+ } else {
+ /* was backwards, go forwards */
+ session->request_transport_speed (0.1);
+ scrubbing_direction = 1;
+ }
+
+ scrub_reverse_distance = 0;
+ scrub_reversals = 0;
+ }
+ }
+
+ last_scrub_x = drag_info.current_pointer_x;
+}
+
bool
Editor::motion_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemType item_type, bool from_autoscroll)
{
@@ -1621,7 +1704,7 @@ Editor::motion_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemType item
*/
track_canvas->get_pointer (x, y);
- }
+ }
if (current_stepping_trackview) {
/* don't keep the persistent stepped trackview if the mouse moves */
@@ -1640,85 +1723,13 @@ Editor::motion_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemType item
drag_info.current_pointer_frame = event_frame (event, &drag_info.current_pointer_x,
&drag_info.current_pointer_y);
+
switch (mouse_mode) {
case MouseAudition:
if (_scrubbing) {
-
- double delta;
-
- if (scrubbing_direction == 0) {
- /* first move */
- session->request_locate (drag_info.current_pointer_frame, false);
- session->request_transport_speed (0.1);
- scrubbing_direction = 1;
-
- } else {
-
- if (last_scrub_x > drag_info.current_pointer_x) {
-
- /* pointer moved to the left */
-
- if (scrubbing_direction > 0) {
-
- /* we reversed direction to go backwards */
-
- scrub_reversals++;
- scrub_reverse_distance += (int) (last_scrub_x - drag_info.current_pointer_x);
-
- } else {
-
- /* still moving to the left (backwards) */
-
- scrub_reversals = 0;
- scrub_reverse_distance = 0;
-
- delta = 0.01 * (last_scrub_x - drag_info.current_pointer_x);
- session->request_transport_speed (session->transport_speed() - delta);
- }
-
- } else {
- /* pointer moved to the right */
-
- if (scrubbing_direction < 0) {
- /* we reversed direction to go forward */
-
- scrub_reversals++;
- scrub_reverse_distance += (int) (drag_info.current_pointer_x - last_scrub_x);
-
- } else {
- /* still moving to the right */
-
- scrub_reversals = 0;
- scrub_reverse_distance = 0;
-
- delta = 0.01 * (drag_info.current_pointer_x - last_scrub_x);
- session->request_transport_speed (session->transport_speed() + delta);
- }
- }
-
- /* if there have been more than 2 opposite motion moves detected, or one that moves
- back more than 10 pixels, reverse direction
- */
-
- if (scrub_reversals >= 2 || scrub_reverse_distance > 10) {
-
- if (scrubbing_direction > 0) {
- /* was forwards, go backwards */
- session->request_transport_speed (-0.1);
- scrubbing_direction = -1;
- } else {
- /* was backwards, go forwards */
- session->request_transport_speed (0.1);
- scrubbing_direction = 1;
- }
-
- scrub_reverse_distance = 0;
- scrub_reversals = 0;
- }
- }
-
- last_scrub_x = drag_info.current_pointer_x;
+ scrub ();
}
+ break;
default:
break;
@@ -1772,7 +1783,7 @@ Editor::motion_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemType item
if (drag_info.item && (event->motion.state & Gdk::BUTTON1_MASK ||
(event->motion.state & Gdk::BUTTON2_MASK))) {
if (!from_autoscroll) {
- maybe_autoscroll (event);
+ maybe_autoscroll (&event->motion);
}
(this->*(drag_info.motion_callback)) (item, event);
goto handled;
@@ -1792,7 +1803,7 @@ Editor::motion_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemType item
if (drag_info.item && (event->motion.state & GDK_BUTTON1_MASK ||
(event->motion.state & GDK_BUTTON2_MASK))) {
if (!from_autoscroll) {
- maybe_autoscroll (event);
+ maybe_autoscroll (&event->motion);
}
(this->*(drag_info.motion_callback)) (item, event);
goto handled;
@@ -1814,6 +1825,48 @@ Editor::motion_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemType item
}
void
+Editor::break_drag ()
+{
+ stop_canvas_autoscroll ();
+ hide_verbose_canvas_cursor ();
+
+ if (drag_info.item) {
+ drag_info.item->ungrab (0);
+
+ /* put it back where it came from */
+
+ double cxw, cyw;
+ cxw = 0;
+ cyw = 0;
+ drag_info.item->i2w (cxw, cyw);
+ drag_info.item->move (drag_info.original_x - cxw, drag_info.original_y - cyw);
+ }
+
+ finalize_drag ();
+}
+
+void
+Editor::finalize_drag ()
+{
+ drag_info.item = 0;
+ drag_info.copy = false;
+ drag_info.motion_callback = 0;
+ drag_info.finished_callback = 0;
+ drag_info.dest_trackview = 0;
+ drag_info.source_trackview = 0;
+ drag_info.last_frame_position = 0;
+ drag_info.grab_frame = 0;
+ drag_info.last_pointer_frame = 0;
+ drag_info.current_pointer_frame = 0;
+ drag_info.brushing = false;
+
+ if (drag_info.copied_location) {
+ delete drag_info.copied_location;
+ drag_info.copied_location = 0;
+ }
+}
+
+void
Editor::start_grab (GdkEvent* event, Gdk::Cursor *cursor)
{
if (drag_info.item == 0) {
@@ -1857,6 +1910,10 @@ Editor::start_grab (GdkEvent* event, Gdk::Cursor *cursor)
drag_info.brushing = false;
drag_info.copied_location = 0;
+ drag_info.original_x = 0;
+ drag_info.original_y = 0;
+ drag_info.item->i2w (drag_info.original_x, drag_info.original_y);
+
drag_info.item->grab (Gdk::POINTER_MOTION_MASK|Gdk::BUTTON_PRESS_MASK|Gdk::BUTTON_RELEASE_MASK,
*cursor,
event->button.time);
@@ -1915,21 +1972,7 @@ Editor::end_grab (ArdourCanvas::Item* item, GdkEvent* event)
hide_verbose_canvas_cursor();
- drag_info.item = 0;
- drag_info.copy = false;
- drag_info.motion_callback = 0;
- drag_info.finished_callback = 0;
- drag_info.last_trackview = 0;
- drag_info.last_frame_position = 0;
- drag_info.grab_frame = 0;
- drag_info.last_pointer_frame = 0;
- drag_info.current_pointer_frame = 0;
- drag_info.brushing = false;
-
- if (drag_info.copied_location) {
- delete drag_info.copied_location;
- drag_info.copied_location = 0;
- }
+ finalize_drag ();
return did_drag;
}
@@ -2415,8 +2458,8 @@ void
Editor::marker_drag_finished_callback (ArdourCanvas::Item* item, GdkEvent* event)
{
if (drag_info.first_move) {
- marker_drag_motion_callback (item, event);
-
+ /* just a click, do nothing but whatever selection occured */
+ return;
}
_dragging_edit_point = false;
@@ -3016,7 +3059,8 @@ Editor::start_region_grab (ArdourCanvas::Item* item, GdkEvent* event)
drag_info.last_frame_position = (nframes_t) (clicked_regionview->region()->position() / speed);
drag_info.pointer_frame_offset = drag_info.grab_frame - drag_info.last_frame_position;
- drag_info.last_trackview = &clicked_regionview->get_time_axis_view();
+ drag_info.source_trackview = &clicked_regionview->get_time_axis_view();
+ drag_info.dest_trackview = drag_info.source_trackview;
// we want a move threshold
drag_info.want_move_threshold = true;
@@ -3031,7 +3075,8 @@ Editor::start_create_region_grab (ArdourCanvas::Item* item, GdkEvent* event)
drag_info.copy = false;
drag_info.item = item;
drag_info.data = clicked_axisview;
- drag_info.last_trackview = clicked_axisview;
+ drag_info.source_trackview = clicked_axisview;
+ drag_info.dest_trackview = drag_info.source_trackview;
drag_info.motion_callback = &Editor::create_region_drag_motion_callback;
drag_info.finished_callback = &Editor::create_region_drag_finished_callback;
@@ -3059,7 +3104,8 @@ Editor::start_region_copy_grab (ArdourCanvas::Item* item, GdkEvent* event)
speed = rtv->get_diskstream()->speed();
}
- drag_info.last_trackview = &clicked_regionview->get_time_axis_view();
+ drag_info.source_trackview = &clicked_regionview->get_time_axis_view();
+ drag_info.dest_trackview = drag_info.source_trackview;
drag_info.last_frame_position = (nframes_t) (clicked_regionview->region()->position() / speed);
drag_info.pointer_frame_offset = drag_info.grab_frame - drag_info.last_frame_position;
// we want a move threshold
@@ -3094,7 +3140,8 @@ Editor::start_region_brush_grab (ArdourCanvas::Item* item, GdkEvent* event)
drag_info.last_frame_position = (nframes_t) (clicked_regionview->region()->position() / speed);
drag_info.pointer_frame_offset = drag_info.grab_frame - drag_info.last_frame_position;
- drag_info.last_trackview = &clicked_regionview->get_time_axis_view();
+ drag_info.source_trackview = &clicked_regionview->get_time_axis_view();
+ drag_info.dest_trackview = drag_info.source_trackview;
// we want a move threshold
drag_info.want_move_threshold = true;
drag_info.brushing = true;
@@ -3109,7 +3156,7 @@ Editor::possibly_copy_regions_during_grab (GdkEvent* event)
drag_info.want_move_threshold = false; // don't copy again
- /* duplicate the region(s) */
+ /* duplicate the regionview(s) and region(s) */
vector<RegionView*> new_regionviews;
@@ -3117,7 +3164,7 @@ Editor::possibly_copy_regions_during_grab (GdkEvent* event)
RegionView* rv;
RegionView* nrv;
-
+
rv = (*i);
AudioRegionView* arv = dynamic_cast<AudioRegionView*>(rv);
@@ -3130,9 +3177,12 @@ Editor::possibly_copy_regions_during_grab (GdkEvent* event)
} else {
continue;
}
+
+ const boost::shared_ptr<const Region> original = arv->region();
+ boost::shared_ptr<Region> region_copy = RegionFactory::create (original);
+ boost::shared_ptr<AudioRegion> ar = boost::dynamic_pointer_cast<AudioRegion> (region_copy);
nrv->get_canvas_group()->show ();
-
new_regionviews.push_back (nrv);
}
@@ -3140,10 +3190,16 @@ Editor::possibly_copy_regions_during_grab (GdkEvent* event)
return;
}
- /* reset selection to new regionviews */
+ /* reset selection to new regionviews. This will not set selection visual status for
+ these regionviews since they don't belong to a track, so do that by hand too.
+ */
selection->set (new_regionviews);
+ for (vector<RegionView*>::iterator i = new_regionviews.begin(); i != new_regionviews.end(); ++i) {
+ (*i)->set_selected (true);
+ }
+
/* reset drag_info data to reflect the fact that we are dragging the copies */
drag_info.data = new_regionviews.front();
@@ -3267,7 +3323,7 @@ Editor::region_drag_motion_callback (ArdourCanvas::Item* item, GdkEvent* event)
return;
}
- original_pointer_order = drag_info.last_trackview->order;
+ original_pointer_order = drag_info.dest_trackview->order;
/************************************************************
Y-Delta Computation
@@ -3279,7 +3335,7 @@ Editor::region_drag_motion_callback (ArdourCanvas::Item* item, GdkEvent* event)
goto y_axis_done;
}
- if ((pointer_y_span = (drag_info.last_trackview->order - tv->order)) != 0) {
+ if ((pointer_y_span = (drag_info.dest_trackview->order - tv->order)) != 0) {
int32_t children = 0, numtracks = 0;
// XXX hard coding track limit, oh my, so very very bad
@@ -3323,16 +3379,16 @@ Editor::region_drag_motion_callback (ArdourCanvas::Item* item, GdkEvent* event)
/* find the actual span according to the canvas */
canvas_pointer_y_span = pointer_y_span;
- if (drag_info.last_trackview->order >= tv->order) {
+ if (drag_info.dest_trackview->order >= tv->order) {
int32_t y;
- for (y = tv->order; y < drag_info.last_trackview->order; y++) {
+ for (y = tv->order; y < drag_info.dest_trackview->order; y++) {
if (height_list[y] == 0 ) {
canvas_pointer_y_span--;
}
}
} else {
int32_t y;
- for (y = drag_info.last_trackview->order;y <= tv->order; y++) {
+ for (y = drag_info.dest_trackview->order;y <= tv->order; y++) {
if ( height_list[y] == 0 ) {
canvas_pointer_y_span++;
}
@@ -3344,6 +3400,10 @@ Editor::region_drag_motion_callback (ArdourCanvas::Item* item, GdkEvent* event)
double ix1, ix2, iy1, iy2;
int32_t n = 0;
+ if (rv2->region()->locked()) {
+ continue;
+ }
+
rv2->get_canvas_frame()->get_bounds (ix1, iy1, ix2, iy2);
rv2->get_canvas_group()->i2w (ix1, iy1);
TimeAxisView* tvp2 = trackview_by_y_position (iy1);
@@ -3415,13 +3475,13 @@ Editor::region_drag_motion_callback (ArdourCanvas::Item* item, GdkEvent* event)
}
}
- } else if (drag_info.last_trackview == tv) {
+ } else if (drag_info.dest_trackview == tv) {
clamp_y_axis = true;
}
y_axis_done:
if (!clamp_y_axis) {
- drag_info.last_trackview = tv;
+ drag_info.dest_trackview = tv;
}
/************************************************************
@@ -3471,8 +3531,20 @@ Editor::region_drag_motion_callback (ArdourCanvas::Item* item, GdkEvent* event)
}
// printf ("3: pending_region_position= %lu %lu\n", pending_region_position, drag_info.last_frame_position );
-
- bool x_move_allowed = ( !drag_info.x_constrained && (Config->get_edit_mode() != Lock)) || ( drag_info.x_constrained && (Config->get_edit_mode() == Lock)) ;
+
+ bool x_move_allowed;
+
+ if (Config->get_edit_mode() == Lock) {
+ if (drag_info.copy) {
+ x_move_allowed = !drag_info.x_constrained;
+ } else {
+ /* in locked edit mode, reverse the usual meaning of x_constrained */
+ x_move_allowed = drag_info.x_constrained;
+ }
+ } else {
+ x_move_allowed = !drag_info.x_constrained;
+ }
+
if ( pending_region_position != drag_info.last_frame_position && x_move_allowed ) {
/* now compute the canvas unit distance we need to move the regionview
@@ -3554,6 +3626,10 @@ Editor::region_drag_motion_callback (ArdourCanvas::Item* item, GdkEvent* event)
double ix1, ix2, iy1, iy2;
int32_t temp_pointer_y_span = pointer_y_span;
+ if (rv->region()->locked()) {
+ continue;
+ }
+
/* get item BBox, which will be relative to parent. so we have
to query on a child, then convert to world coordinates using
the parent.
@@ -3591,6 +3667,7 @@ Editor::region_drag_motion_callback (ArdourCanvas::Item* item, GdkEvent* event)
y_delta -= (*j);
temp_pointer_y_span--;
}
+
while (temp_pointer_y_span < 0) {
y_delta += (*j);
if (x != original_pointer_order) {
@@ -3621,7 +3698,8 @@ Editor::region_drag_motion_callback (ArdourCanvas::Item* item, GdkEvent* event)
x++;
}
}
-
+
+
/* prevent the regionview from being moved to before
the zero position on the canvas.
*/
@@ -3678,18 +3756,15 @@ Editor::region_drag_motion_callback (ArdourCanvas::Item* item, GdkEvent* event)
void
Editor::region_drag_finished_callback (ArdourCanvas::Item* item, GdkEvent* event)
{
- nframes_t where;
- RegionView* rvdi = reinterpret_cast<RegionView *> (drag_info.data);
- pair<set<boost::shared_ptr<Playlist> >::iterator,bool> insert_result;
bool nocommit = true;
- double speed;
- RouteTimeAxisView* rtv;
- bool regionview_y_movement;
- bool regionview_x_movement;
vector<RegionView*> copies;
- list <boost::shared_ptr<Playlist > > used_playlists;
- list <sigc::connection > used_connections;
- bool preserve_selection = false;
+ RouteTimeAxisView* source_tv;
+ boost::shared_ptr<Diskstream> ds;
+ boost::shared_ptr<Playlist> from_playlist;
+ vector<RegionView*> new_selection;
+ typedef set<boost::shared_ptr<Playlist> > PlaylistSet;
+ PlaylistSet modified_playlists;
+ pair<PlaylistSet::iterator,bool> insert_result;
/* first_move is set to false if the regionview has been moved in the
motion handler.
@@ -3725,21 +3800,15 @@ Editor::region_drag_finished_callback (ArdourCanvas::Item* item, GdkEvent* event
goto out;
}
- /* adjust for track speed */
- speed = 1.0;
-
- rtv = dynamic_cast<RouteTimeAxisView*> (drag_info.last_trackview);
- if (rtv && rtv->get_diskstream()) {
- speed = rtv->get_diskstream()->speed();
- }
-
- regionview_x_movement = (drag_info.last_frame_position != (nframes_t) (rvdi->region()->position()/speed));
- regionview_y_movement = (drag_info.last_trackview != &rvdi->get_time_axis_view());
+ char* op_string;
- //printf ("last_frame: %s position is %lu %g\n", rv->get_time_axis_view().name().c_str(), drag_info.last_frame_position, speed);
- //printf ("last_rackview: %s \n", drag_info.last_trackview->name().c_str());
+ /* reverse this here so that we have the correct logic to finalize
+ the drag.
+ */
- char* op_string;
+ if (Config->get_edit_mode() == Lock && !drag_info.copy) {
+ drag_info.x_constrained = !drag_info.x_constrained;
+ }
if (drag_info.copy) {
if (drag_info.x_constrained) {
@@ -3757,94 +3826,125 @@ Editor::region_drag_finished_callback (ArdourCanvas::Item* item, GdkEvent* event
begin_reversible_command (op_string);
- if (regionview_y_movement) {
+ for (list<RegionView*>::const_iterator i = selection->regions.by_layer().begin(); i != selection->regions.by_layer().end(); ) {
+
+ RegionView* rv = (*i);
+ double ix1, ix2, iy1, iy2;
+ rv->get_canvas_frame()->get_bounds (ix1, iy1, ix2, iy2);
+ rv->get_canvas_group()->i2w (ix1, iy1);
+ TimeAxisView* dest_tv = trackview_by_y_position (iy1);
+ RouteTimeAxisView* dest_rtv = dynamic_cast<RouteTimeAxisView*>(dest_tv);
+ double speed;
+ bool changed_tracks;
+ bool changed_position;
+ nframes_t where;
+
+ if (rv->region()->locked()) {
+ ++i;
+ continue;
+ }
+
+ /* adjust for track speed */
- /* moved to a different track. */
+ speed = 1.0;
- vector<RegionView*> new_selection;
+ if (dest_rtv && dest_rtv->get_diskstream()) {
+ speed = dest_rtv->get_diskstream()->speed();
+ }
- for (list<RegionView*>::const_iterator i = selection->regions.by_layer().begin(); i != selection->regions.by_layer().end(); ) {
-
- RegionView* rv = (*i);
+ changed_position = (drag_info.last_frame_position != (nframes_t) (rv->region()->position()/speed));
+ changed_tracks = (dest_tv != &rv->get_time_axis_view());
- double ix1, ix2, iy1, iy2;
+ if (changed_position && !drag_info.x_constrained) {
+ where = (nframes_t) (unit_to_frame (ix1) * speed);
+ } else {
+ where = rv->region()->position();
+ }
- rv->get_canvas_frame()->get_bounds (ix1, iy1, ix2, iy2);
- rv->get_canvas_group()->i2w (ix1, iy1);
+ /* undo the previous hide_dependent_views so that xfades don't
+ disappear on copying regions
+ */
+
+ rv->get_time_axis_view().reveal_dependent_views (*rv);
+
+ boost::shared_ptr<Region> new_region;
- RouteTimeAxisView* rtv2 = dynamic_cast<RouteTimeAxisView*>(trackview_by_y_position (iy1));
+ if (drag_info.copy) {
+ /* we already made a copy */
+ new_region = rv->region();
+ } else {
+ new_region = RegionFactory::create (rv->region());
+ }
- boost::shared_ptr<Playlist> from_playlist = rv->region()->playlist();
- boost::shared_ptr<Playlist> to_playlist = rtv2->playlist();
-
- where = (nframes_t) (unit_to_frame (ix1) * speed);
- boost::shared_ptr<Region> new_region (RegionFactory::create (rv->region()));
+ if (changed_tracks || drag_info.copy) {
- if (! to_playlist->frozen()) {
- /*
- we haven't seen this playlist before.
- we want to freeze it because we don't want to relayer per-region.
- its much better to do that just once if the playlist is large.
- */
+ boost::shared_ptr<Playlist> to_playlist = dest_rtv->playlist();
- /*
- connect so the selection is changed when the new regionview finally appears (after thaw).
- keep track of it so we can disconnect later.
- */
+ latest_regionviews.clear ();
- sigc::connection c = rtv2->view()->RegionViewAdded.connect (mem_fun(*this, &Editor::collect_and_select_new_region_view));
- used_connections.push_back (c);
+ sigc::connection c = dest_rtv->view()->RegionViewAdded.connect (mem_fun(*this, &Editor::collect_new_region_view));
+
+ insert_result = modified_playlists.insert (to_playlist);
+ if (insert_result.second) {
+ session->add_command (new MementoCommand<Playlist>(*to_playlist, &to_playlist->get_state(), 0));
+ }
- /* undo */
- session->add_command (new MementoCommand<Playlist>(*to_playlist, &to_playlist->get_state(), 0));
+ to_playlist->add_region (new_region, where);
- /* remember used playlists so we can thaw them later */
- used_playlists.push_back(to_playlist);
- to_playlist->freeze();
+ c.disconnect ();
+
+ if (!latest_regionviews.empty()) {
+ // XXX why just the first one ? we only expect one
+ dest_rtv->reveal_dependent_views (*latest_regionviews.front());
+ new_selection.push_back (latest_regionviews.front());
}
-
- /* undo the previous hide_dependent_views so that xfades don't
- disappear on copying regions
- */
- rv->get_time_axis_view().reveal_dependent_views (*rv);
+ } else {
+
+ /* just change the model */
+
+ boost::shared_ptr<Playlist> playlist = dest_rtv->playlist();
- if (!drag_info.copy) {
-
- /* the region that used to be in the old playlist is not
- moved to the new one - we make a copy of it. as a result,
- any existing editor for the region should no longer be
- visible.
- */
-
- rv->hide_region_editor();
- rv->fake_set_opaque (false);
+ insert_result = modified_playlists.insert (playlist);
+ if (insert_result.second) {
+ session->add_command (new MementoCommand<Playlist>(*playlist, &playlist->get_state(), 0));
+ }
- session->add_command (new MementoCommand<Playlist>(*from_playlist, &from_playlist->get_state(), 0));
- from_playlist->remove_region ((rv->region()));
- session->add_command (new MementoCommand<Playlist>(*from_playlist, 0, &from_playlist->get_state()));
+ rv->region()->set_position (where, (void*) this);
+ }
- } else {
+ if (changed_tracks && !drag_info.copy) {
- /* the regionview we dragged around is a temporary copy, queue it for deletion */
+ /* get the playlist where this drag started. we can't use rv->region()->playlist()
+ because we may have copied the region and it has not been attached to a playlist.
+ */
+
+ assert ((source_tv = dynamic_cast<RouteTimeAxisView*> (&rv->get_time_axis_view())));
+ assert ((ds = source_tv->get_diskstream()));
+ assert ((from_playlist = ds->playlist()));
- copies.push_back (rv);
- }
+ /* moved to a different audio track, without copying */
- latest_regionviews.clear ();
- sigc::connection c = rtv2->view()->RegionViewAdded.connect (mem_fun(*this, &Editor::collect_new_region_view));
- session->add_command (new MementoCommand<Playlist>(*to_playlist, &to_playlist->get_state(), 0));
+ /* the region that used to be in the old playlist is not
+ moved to the new one - we use a copy of it. as a result,
+ any existing editor for the region should no longer be
+ visible.
+ */
+
+ rv->hide_region_editor();
+ rv->fake_set_opaque (false);
+
+ /* remove the region from the old playlist */
- to_playlist->add_region (new_region, where);
- session->add_command (new MementoCommand<Playlist>(*to_playlist, 0, &to_playlist->get_state()));
- c.disconnect ();
-
- if (!latest_regionviews.empty()) {
- new_selection.insert (new_selection.end(), latest_regionviews.begin(), latest_regionviews.end());
+ insert_result = modified_playlists.insert (from_playlist);
+ if (insert_result.second) {
+ session->add_command (new MementoCommand<Playlist>(*from_playlist, &from_playlist->get_state(), 0));
}
+ from_playlist->remove_region ((rv->region()));
+
/* OK, this is where it gets tricky. If the playlist was being used by >1 tracks, and the region
- was selected in all of them, then removing it from the playlist will have removed all
+ was selected in all of them, then removing it from a playlist will have removed all
trace of it from the selection (i.e. there were N regions selected, we removed 1,
but since its the same playlist for N tracks, all N tracks updated themselves, removed the
corresponding regionview, and the selection is now empty).
@@ -3858,131 +3958,44 @@ Editor::region_drag_finished_callback (ArdourCanvas::Item* item, GdkEvent* event
EXCEPT .... if we are doing a copy drag, then the selection hasn't been modified and
we can just iterate.
-
*/
- if (drag_info.copy) {
- ++i;
- } else {
- if (selection->regions.empty()) {
- break;
- } else {
- /*
- XXX see above .. but we just froze the playlists.. we have to keep iterating, right?
- */
-
- //i = selection->regions.by_layer().begin();
- ++i;
- }
- }
- }
-
- } else {
-
- /* motion within a single track */
-
- list<RegionView*> regions = selection->regions.by_layer();
-
- for (list<RegionView*>::iterator i = regions.begin(); i != regions.end(); ++i) {
-
- RegionView* rv = (*i);
- boost::shared_ptr<Playlist> to_playlist = (*i)->region()->playlist();
- RouteTimeAxisView* from_rtv = dynamic_cast<RouteTimeAxisView*> (&(rv->get_time_axis_view()));
-
- if (!rv->region()->can_move()) {
- continue;
- }
-
- if (regionview_x_movement) {
- double ownspeed = 1.0;
-
- if (from_rtv && from_rtv->get_diskstream()) {
- ownspeed = from_rtv->get_diskstream()->speed();
- }
-
- /* base the new region position on the current position of the regionview.*/
-
- double ix1, ix2, iy1, iy2;
-
- rv->get_canvas_frame()->get_bounds (ix1, iy1, ix2, iy2);
- rv->get_canvas_group()->i2w (ix1, iy1);
- where = (nframes_t) (unit_to_frame (ix1) * ownspeed);
-
- } else {
-
- where = rv->region()->position();
- }
-
- if (! to_playlist->frozen()) {
- sigc::connection c = from_rtv->view()->RegionViewAdded.connect (mem_fun(*this, &Editor::collect_and_select_new_region_view));
- used_connections.push_back (c);
-
- /* add the undo */
- session->add_command (new MementoCommand<Playlist>(*to_playlist, &to_playlist->get_state(), 0));
-
- used_playlists.push_back(to_playlist);
- to_playlist->freeze();
- }
-
- if (drag_info.copy) {
-
- boost::shared_ptr<Region> newregion;
- boost::shared_ptr<Region> ar;
- boost::shared_ptr<Region> mr;
-
- if ((ar = boost::dynamic_pointer_cast<AudioRegion>(rv->region())) != 0) {
- newregion = RegionFactory::create (ar);
- } else if ((mr = boost::dynamic_pointer_cast<MidiRegion>(rv->region())) != 0) {
- newregion = RegionFactory::create (mr);
- }
-
- /* add it */
-
- latest_regionviews.clear ();
- sigc::connection c = rtv->view()->RegionViewAdded.connect (mem_fun(*this, &Editor::collect_new_region_view));
- to_playlist->add_region (newregion, (nframes_t) (where * rtv->get_diskstream()->speed()));
- c.disconnect ();
-
- if (!latest_regionviews.empty()) {
- // XXX why just the first one ? we only expect one
- rtv->reveal_dependent_views (*latest_regionviews.front());
- selection->add (latest_regionviews);
- }
-
- } else {
-
- /* just change the model */
-
- rv->region()->set_position (where, (void*) this);
- preserve_selection = true;
-
+ if (selection->regions.empty()) {
+ break;
+ } else {
+ i = selection->regions.by_layer().begin();
}
+ } else {
+ ++i;
+ }
+
+ if (drag_info.copy) {
+ copies.push_back (rv);
}
-
- }
- if (! preserve_selection) {
- //selection->clear_regions();
}
- while (used_playlists.size() > 0) {
-
- list <boost::shared_ptr<Playlist > >::iterator i = used_playlists.begin();
- (*i)->thaw();
- if (used_connections.size()) {
- sigc::connection c = used_connections.front();
- c.disconnect();
- used_connections.pop_front();
+
+ if (new_selection.empty()) {
+ if (drag_info.copy) {
+ /* the region(view)s that are selected and being dragged around
+ are copies and do not belong to any track. remove them
+ from the selection right here.
+ */
+ selection->clear_regions();
}
- /* add the redo */
-
- session->add_command (new MementoCommand<Playlist>(*(*i), 0, &(*i)->get_state()));
- used_playlists.pop_front();
+ } else {
+ /* this will clear any existing selection that would have been
+ cleared in the other clause above
+ */
+ selection->set (new_selection);
}
-
+
out:
-
if (!nocommit) {
+ for (set<boost::shared_ptr<Playlist> >::iterator p = modified_playlists.begin(); p != modified_playlists.end(); ++p) {
+ session->add_command (new MementoCommand<Playlist>(*(*p), 0, &(*p)->get_state()));
+ }
commit_reversible_command ();
}
@@ -3990,7 +4003,6 @@ Editor::region_drag_finished_callback (ArdourCanvas::Item* item, GdkEvent* event
delete *x;
}
}
-
void
Editor::create_region_drag_motion_callback (ArdourCanvas::Item* item, GdkEvent* event)
@@ -4008,7 +4020,7 @@ Editor::create_region_drag_motion_callback (ArdourCanvas::Item* item, GdkEvent*
void
Editor::create_region_drag_finished_callback (ArdourCanvas::Item* item, GdkEvent* event)
{
- MidiTimeAxisView* mtv = dynamic_cast<MidiTimeAxisView*> (drag_info.last_trackview);
+ MidiTimeAxisView* mtv = dynamic_cast<MidiTimeAxisView*> (drag_info.dest_trackview);
if (!mtv)
return;
@@ -4298,7 +4310,8 @@ Editor::start_selection_grab (ArdourCanvas::Item* item, GdkEvent* event)
start_grab (event);
- drag_info.last_trackview = clicked_axisview;
+ drag_info.source_trackview = clicked_routeview;
+ drag_info.dest_trackview = drag_info.source_trackview;
drag_info.last_frame_position = latest_regionviews.front()->region()->position();
drag_info.pointer_frame_offset = drag_info.grab_frame - drag_info.last_frame_position;
@@ -4484,7 +4497,7 @@ Editor::drag_selection (ArdourCanvas::Item* item, GdkEvent* event)
}
if (event->button.x >= horizontal_adjustment.get_value() + canvas_width) {
- start_canvas_autoscroll (1);
+ start_canvas_autoscroll (1, 0);
}
if (start != end) {
@@ -5060,7 +5073,7 @@ Editor::drag_range_markerbar_op (ArdourCanvas::Item* item, GdkEvent* event)
}
if (event->button.x >= horizontal_adjustment.get_value() + canvas_width) {
- start_canvas_autoscroll (1);
+ start_canvas_autoscroll (1, 0);
}
if (start != end) {
diff --git a/gtk2_ardour/editor_ops.cc b/gtk2_ardour/editor_ops.cc
index 2614dab71e..ffe7c1fe16 100644
--- a/gtk2_ardour/editor_ops.cc
+++ b/gtk2_ardour/editor_ops.cc
@@ -2805,6 +2805,7 @@ Editor::separate_region_from_selection ()
to allow discontiguous operation, since get_edit_op_range() currently
returns a single range.
*/
+
if (mouse_mode == MouseRange && !selection->time.empty()) {
separate_regions_between (selection->time);
@@ -5707,4 +5708,118 @@ Editor::set_waveform_scale (WaveformScale ws)
}
}
}
+
+void
+Editor::do_insert_time ()
+{
+ if (selection->tracks.empty()) {
+ return;
+ }
+
+ nframes64_t pos = get_preferred_edit_position ();
+ ArdourDialog d (*this, _("Insert Time"));
+ VButtonBox button_box;
+ VBox option_box;
+ RadioButtonGroup group;
+ RadioButton leave_button (group, _("Stay in position"));
+ RadioButton move_button (group, _("Move"));
+ RadioButton split_button (group, _("Split & Later Section Moves"));
+ Label intersect_option_label (_("Intersected regions should:"));
+ ToggleButton glue_button (_("Move Glued Regions"));
+ AudioClock clock ("insertTimeClock", true, X_("InsertTimeClock"), true, true, true);
+ HBox clock_box;
+
+ clock.set (0);
+ clock.set_session (session);
+ clock.set_bbt_reference (pos);
+
+ clock_box.pack_start (clock, false, true);
+
+ option_box.set_spacing (6);
+ option_box.pack_start (intersect_option_label, false, false);
+ option_box.pack_start (button_box, false, false);
+ option_box.pack_start (glue_button, false, false);
+
+ button_box.pack_start (leave_button, false, false);
+ button_box.pack_start (move_button, false, false);
+ button_box.pack_start (split_button, false, false);
+
+ d.get_vbox()->set_border_width (12);
+ d.get_vbox()->pack_start (clock_box, false, false);
+ d.get_vbox()->pack_start (option_box, false, false);
+
+ leave_button.show ();
+ move_button.show ();
+ split_button.show ();
+ intersect_option_label.show ();
+ option_box.show ();
+ button_box.show ();
+ glue_button.show ();
+ clock.show_all();
+ clock_box.show ();
+
+ d.add_button (Gtk::Stock::CANCEL, Gtk::RESPONSE_CANCEL);
+ d.add_button (Gtk::Stock::OK, Gtk::RESPONSE_OK);
+ d.show ();
+
+ int response = d.run ();
+
+ if (response != RESPONSE_OK) {
+ return;
+ }
+
+ nframes_t distance = clock.current_duration (pos);
+
+ if (distance == 0) {
+ return;
+ }
+
+ InsertTimeOption opt;
+
+ if (leave_button.get_active()) {
+ opt = LeaveIntersected;
+ } else if (move_button.get_active()) {
+ opt = MoveIntersected;
+ } else {
+ opt = SplitIntersected;
+ }
+
+ insert_time (pos, distance, opt, glue_button.get_active());
+}
+void
+Editor::insert_time (nframes64_t pos, nframes64_t frames, InsertTimeOption opt, bool ignore_music_glue)
+{
+ bool commit = false;
+
+ if (Config->get_edit_mode() == Lock) {
+ return;
+ }
+
+ begin_reversible_command (_("insert time"));
+
+ for (TrackSelection::iterator x = selection->tracks.begin(); x != selection->tracks.end(); ++x) {
+ boost::shared_ptr<Playlist> pl = (*x)->playlist();
+
+ if (!pl) {
+ continue;
+ }
+
+ XMLNode &before = pl->get_state();
+
+ if (opt == SplitIntersected) {
+ pl->split (pos);
+ }
+
+ pl->shift (pos, frames, (opt == MoveIntersected), ignore_music_glue);
+
+ XMLNode &after = pl->get_state();
+
+ session->add_command (new MementoCommand<Playlist> (*pl, &before, &after));
+ commit = true;
+ }
+
+ if (commit) {
+ commit_reversible_command ();
+ }
+}
diff --git a/gtk2_ardour/editor_rulers.cc b/gtk2_ardour/editor_rulers.cc
index f8e7804f0e..02e8f70727 100644
--- a/gtk2_ardour/editor_rulers.cc
+++ b/gtk2_ardour/editor_rulers.cc
@@ -290,11 +290,11 @@ Editor::ruler_mouse_motion (GdkEventMotion* ev)
if (autoscroll_timeout_tag < 0) {
if (frame > rightmost_frame) {
if (rightmost_frame < max_frames) {
- start_canvas_autoscroll (1);
+ start_canvas_autoscroll (1, 0);
}
} else if (frame < leftmost_frame) {
if (leftmost_frame > 0) {
- start_canvas_autoscroll (-1);
+ start_canvas_autoscroll (-1, 0);
}
}
} else {
@@ -690,7 +690,6 @@ Editor::update_ruler_visibility ()
range_marker_group->move (0.0, tbpos - old_unit_pos);
}
range_marker_group->show();
- cerr << "range_marker_group now at " << range_marker_group->property_y() << endl;
tbpos += timebar_height;
visible_timebars++;
} else {
diff --git a/gtk2_ardour/editor_selection.cc b/gtk2_ardour/editor_selection.cc
index 7c36384e30..9d0347e0e2 100644
--- a/gtk2_ardour/editor_selection.cc
+++ b/gtk2_ardour/editor_selection.cc
@@ -202,21 +202,7 @@ Editor::set_selected_track (TimeAxisView& view, Selection::Operation op, bool no
break;
case Selection::Set:
- if (selection->selected (&view) && selection->tracks.size() > 1) {
-
- /* reset track selection if there is only 1 other track
- selected OR if no_remove is not set (its there to
- prevent deselecting a multi-track selection
- when clicking on an already selected track
- for some reason.
- */
-
- if (selection->tracks.empty()) {
- selection->set (&view);
- } else if (selection->tracks.size() == 1 || !no_remove) {
- selection->set (&view);
- }
- }
+ selection->set (&view);
break;
case Selection::Extend:
diff --git a/gtk2_ardour/gain_meter.cc b/gtk2_ardour/gain_meter.cc
index 0a6046309a..0e51b7a68c 100644
--- a/gtk2_ardour/gain_meter.cc
+++ b/gtk2_ardour/gain_meter.cc
@@ -77,8 +77,7 @@ GainMeter::GainMeter (boost::shared_ptr<IO> io, Session& s)
// 0.781787 is the value needed for gain to be set to 0.
gain_adjustment (0.781787, 0.0, 1.0, 0.01, 0.1),
gain_automation_style_button (""),
- gain_automation_state_button (""),
- regular_meter_width(5)
+ gain_automation_state_button ("")
{
if (slider == 0) {
@@ -95,6 +94,8 @@ GainMeter::GainMeter (boost::shared_ptr<IO> io, Session& s)
*_io->gain_control().get(),
false));
+ level_meter = new LevelMeter(_io, _session);
+
gain_slider->signal_button_press_event().connect (mem_fun(*this, &GainMeter::start_gain_touch));
gain_slider->signal_button_release_event().connect (mem_fun(*this, &GainMeter::end_gain_touch));
gain_slider->set_name ("GainFader");
@@ -122,8 +123,6 @@ GainMeter::GainMeter (boost::shared_ptr<IO> io, Session& s)
meter_metric_area.set_name ("MeterMetricsStrip");
set_size_request_to_display_given_text (meter_metric_area, "-50", 0, 0);
- meter_packer.set_spacing (2);
-
gain_automation_style_button.set_name ("MixerAutomationModeButton");
gain_automation_state_button.set_name ("MixerAutomationPlaybackButton");
@@ -161,7 +160,7 @@ GainMeter::GainMeter (boost::shared_ptr<IO> io, Session& s)
*/
gain_display_box.pack_end (peak_display, true, true);
- hbox.pack_end (meter_packer, true, true);
+ hbox.pack_end (*level_meter, true, true);
using namespace Menu_Helpers;
@@ -206,8 +205,6 @@ GainMeter::GainMeter (boost::shared_ptr<IO> io, Session& s)
peak_display.signal_button_release_event().connect (mem_fun(*this, &GainMeter::peak_button_release), false);
gain_display.signal_key_press_event().connect (mem_fun(*this, &GainMeter::gain_key_press), false);
- Config->ParameterChanged.connect (mem_fun (*this, &GainMeter::parameter_changed));
-
gain_changed ();
show_gain ();
@@ -228,7 +225,7 @@ void
GainMeter::set_width (Width w, int len)
{
_width = w;
- setup_meters (len);
+ level_meter->setup_meters (len);
}
Glib::RefPtr<Gdk::Pixmap>
@@ -330,84 +327,21 @@ GainMeter::~GainMeter ()
delete meter_menu;
}
- for (vector<MeterInfo>::iterator i = meters.begin(); i != meters.end(); i++) {
- if ((*i).meter) {
- delete (*i).meter;
- }
+ if (level_meter) {
+ delete level_meter;
}
}
void
-GainMeter::update_meters ()
-{
- vector<MeterInfo>::iterator i;
- uint32_t n;
- float peak, mpeak;
- char buf[32];
-
- for (n = 0, i = meters.begin(); i != meters.end(); ++i, ++n) {
- if ((*i).packed) {
- peak = _io->peak_meter().peak_power (n);
-
- (*i).meter->set (log_meter (peak));
-
- mpeak = _io->peak_meter().max_peak_power(n);
-
- if (mpeak > max_peak) {
- max_peak = mpeak;
- /* set peak display */
- if (max_peak <= -200.0f) {
- peak_display.set_label (_("-inf"));
- } else {
- snprintf (buf, sizeof(buf), "%.1f", max_peak);
- peak_display.set_label (buf);
- }
-
- if (max_peak >= 0.0f) {
- peak_display.set_name ("MixerStripPeakDisplayPeak");
- }
- }
- }
- }
-}
-
-void
-GainMeter::parameter_changed(const char* parameter_name)
-{
-#define PARAM_IS(x) (!strcmp (parameter_name, (x)))
-
- ENSURE_GUI_THREAD (bind (mem_fun(*this, &GainMeter::parameter_changed), parameter_name));
-
- if (PARAM_IS ("meter-hold")) {
-
- vector<MeterInfo>::iterator i;
- uint32_t n;
-
- for (n = 0, i = meters.begin(); i != meters.end(); ++i, ++n) {
-
- (*i).meter->set_hold_count ((uint32_t) floor(Config->get_meter_hold()));
- }
- }
-
-#undef PARAM_IS
-}
-
-void
GainMeter::hide_all_meters ()
{
bool remove_metric_area = false;
- for (vector<MeterInfo>::iterator i = meters.begin(); i != meters.end(); ++i) {
- if ((*i).packed) {
- remove_metric_area = true;
- meter_packer.remove (*((*i).meter));
- (*i).packed = false;
- }
- }
+ level_meter->hide_meters();
if (remove_metric_area) {
if (meter_metric_area.get_parent()) {
- meter_packer.remove (meter_metric_area);
+ level_meter->remove (meter_metric_area);
}
}
}
@@ -415,76 +349,12 @@ GainMeter::hide_all_meters ()
void
GainMeter::setup_meters (int len)
{
- uint32_t nmeters = _io->n_outputs().n_total();
- guint16 width;
-
- hide_all_meters ();
-
- Route* r;
-
- if ((r = dynamic_cast<Route*> (_io.get())) != 0) {
-
- switch (r->meter_point()) {
- case MeterInput:
- nmeters = r->n_inputs().n_total();
- break;
- case MeterPreFader:
- nmeters = r->pre_fader_streams().n_total();
- break;
- case MeterPostFader:
- nmeters = r->n_outputs().n_total();
- break;
- }
-
- } else {
-
- nmeters = _io->n_outputs().n_total();
-
- }
-
- if (nmeters == 0) {
- return;
+ if (!meter_metric_area.get_parent()) {
+ level_meter->pack_end (meter_metric_area, false, false);
+ meter_metric_area.show_all ();
}
-
- if (nmeters <= 2) {
- width = regular_meter_width;
- } else {
- width = thin_meter_width;
- }
-
- while (meters.size() < nmeters) {
- meters.push_back (MeterInfo());
- }
-
- /* pack them backwards */
-
- meter_packer.pack_end (meter_metric_area, false, false);
- meter_metric_area.show_all ();
-
- int b = ARDOUR_UI::config()->canvasvar_MeterColorBase.get();
- int m = ARDOUR_UI::config()->canvasvar_MeterColorMid.get();
- int t = ARDOUR_UI::config()->canvasvar_MeterColorTop.get();
- int c = ARDOUR_UI::config()->canvasvar_MeterColorClip.get();
-
- //cerr << "GainMeter::setup_meters() called color_changed = " << color_changed << " colors: " << hex << b << " " << m << " " << t << " " << c << endl;//DEBUG
-
- for (int32_t n = nmeters-1; nmeters && n >= 0 ; --n) {
- if (meters[n].width != width || meters[n].length != len || color_changed) {
- delete meters[n].meter;
- meters[n].meter = new FastMeter ((uint32_t) floor (Config->get_meter_hold()), width, FastMeter::Vertical, len, b, m, t, c);
- //cerr << "GainMeter::setup_meters() w:l = " << width << ":" << len << endl;//DEBUG
- meters[n].width = width;
- meters[n].length = len;
- meters[n].meter->add_events (Gdk::BUTTON_RELEASE_MASK);
- meters[n].meter->signal_button_release_event().connect (bind (mem_fun(*this, &GainMeter::meter_button_release), n));
- }
-
- meter_packer.pack_end (*meters[n].meter, false, false);
- meters[n].meter->show_all ();
- meters[n].packed = true;
- }
- color_changed = false;
-}
+ level_meter->setup_meters(len, 5);
+}
int
GainMeter::get_gm_width ()
@@ -531,6 +401,7 @@ GainMeter::reset_peak_display ()
r->peak_meter().reset_max();
}
+ level_meter->clear_meters();
max_peak = -INFINITY;
peak_display.set_label (_("-Inf"));
peak_display.set_name ("MixerStripPeakDisplay");
@@ -547,25 +418,6 @@ GainMeter::reset_group_peak_display (RouteGroup* group)
}
}
-gint
-GainMeter::meter_button_release (GdkEventButton* ev, uint32_t which)
-{
- switch (ev->button) {
- case 1:
- meters[which].meter->clear();
- max_peak = minus_infinity();
- peak_display.set_label (_("-inf"));
- peak_display.set_name ("MixerStripPeakDisplay");
- break;
-
- case 3:
- // popup_meter_menu (ev);
- break;
- };
-
- return TRUE;
-}
-
void
GainMeter::popup_meter_menu (GdkEventButton *ev)
{
@@ -973,10 +825,24 @@ GainMeter::gain_automation_state_changed ()
}
}
-void GainMeter::clear_meters ()
+void
+GainMeter::update_meters()
{
- for (vector<MeterInfo>::iterator i = meters.begin(); i < meters.end(); i++) {
- (*i).meter->clear();
+ char buf[32];
+ float mpeak = level_meter->update_meters();
+
+ if (mpeak > max_peak) {
+ max_peak = mpeak;
+ if (mpeak <= -200.0f) {
+ peak_display.set_label (_("-inf"));
+ } else {
+ snprintf (buf, sizeof(buf), "%.1f", mpeak);
+ peak_display.set_label (buf);
+ }
+
+ if (mpeak >= 0.0f) {
+ peak_display.set_name ("MixerStripPeakDisplayPeak");
+ }
}
}
diff --git a/gtk2_ardour/gain_meter.h b/gtk2_ardour/gain_meter.h
index d15d8dfd59..cd8e74d59d 100644
--- a/gtk2_ardour/gain_meter.h
+++ b/gtk2_ardour/gain_meter.h
@@ -39,6 +39,7 @@
#include <gtkmm2ext/slider_controller.h>
#include "enums.h"
+#include "level_meter.h"
namespace ARDOUR {
class IO;
@@ -63,7 +64,6 @@ class GainMeter : public Gtk::VBox
void update_gain_sensitive ();
void update_meters ();
- void update_meters_falloff ();
void effective_gain_display ();
@@ -75,7 +75,11 @@ class GainMeter : public Gtk::VBox
void set_meter_strip_name (const char * name);
void set_fader_name (const char * name);
- void clear_meters ();
+ /* should probably switch to using the shared_ptr that underlies
+ all this stuff
+ */
+
+ PBD::Controllable* get_controllable() { return _io->gain_control().get(); }
private:
@@ -93,6 +97,7 @@ class GainMeter : public Gtk::VBox
Gtk::HBox gain_display_box;
Gtk::HBox fader_box;
Gtk::DrawingArea meter_metric_area;
+ LevelMeter *level_meter;
sigc::connection gain_watching;
@@ -129,28 +134,10 @@ class GainMeter : public Gtk::VBox
void gain_activated ();
bool gain_focused (GdkEventFocus*);
- struct MeterInfo {
- Gtkmm2ext::FastMeter *meter;
- gint16 width;
- int length;
- bool packed;
-
- MeterInfo() {
- meter = 0;
- width = 0;
- length = 0;
- packed = false;
- }
- };
-
- guint16 regular_meter_width;
- static const guint16 thin_meter_width = 2;
- vector<MeterInfo> meters;
float max_peak;
Gtk::VBox* fader_vbox;
Gtk::HBox hbox;
- Gtk::HBox meter_packer;
void gain_adjusted ();
void gain_changed ();
@@ -161,7 +148,6 @@ class GainMeter : public Gtk::VBox
void hide_all_meters ();
gint meter_button_press (GdkEventButton*, uint32_t);
- gint meter_button_release (GdkEventButton*, uint32_t);
bool peak_button_release (GdkEventButton*);
bool gain_key_press (GdkEventKey*);
diff --git a/gtk2_ardour/icons/application-x-ardour2.png b/gtk2_ardour/icons/application-x-ardour2.png
deleted file mode 100644
index 536b90fe82..0000000000
--- a/gtk2_ardour/icons/application-x-ardour2.png
+++ /dev/null
Binary files differ
diff --git a/gtk2_ardour/icons/application-x-ardour_16px.png b/gtk2_ardour/icons/application-x-ardour_16px.png
new file mode 100644
index 0000000000..15181df755
--- /dev/null
+++ b/gtk2_ardour/icons/application-x-ardour_16px.png
Binary files differ
diff --git a/gtk2_ardour/icons/application-x-ardour_22px.png b/gtk2_ardour/icons/application-x-ardour_22px.png
new file mode 100644
index 0000000000..6b58f1c284
--- /dev/null
+++ b/gtk2_ardour/icons/application-x-ardour_22px.png
Binary files differ
diff --git a/gtk2_ardour/icons/application-x-ardour_32px.png b/gtk2_ardour/icons/application-x-ardour_32px.png
new file mode 100644
index 0000000000..55dca2c718
--- /dev/null
+++ b/gtk2_ardour/icons/application-x-ardour_32px.png
Binary files differ
diff --git a/gtk2_ardour/icons/application-x-ardour_48px.png b/gtk2_ardour/icons/application-x-ardour_48px.png
new file mode 100644
index 0000000000..f74297e6c7
--- /dev/null
+++ b/gtk2_ardour/icons/application-x-ardour_48px.png
Binary files differ
diff --git a/gtk2_ardour/io_selector.cc b/gtk2_ardour/io_selector.cc
index cecea98470..f0d589c138 100644
--- a/gtk2_ardour/io_selector.cc
+++ b/gtk2_ardour/io_selector.cc
@@ -45,6 +45,13 @@ IOSelector::IOSelector (ARDOUR::Session& session, boost::shared_ptr<ARDOUR::IO>
} else {
_io->output_changed.connect (mem_fun(*this, &IOSelector::ports_changed));
}
+
+#ifdef FIXME
+ /* these got lost in a merge from 2.0 */
+ set_button_sensitivity ();
+ io->name_changed.connect (mem_fun(*this, &IOSelector::name_changed));
+#endif
+
}
@@ -88,7 +95,6 @@ IOSelector::get_state (int r, std::string const & p) const
}
int k = 0;
-
for (vector<string>::iterator i = connections.begin(); i != connections.end(); ++i) {
if ((*i)== p) {
diff --git a/gtk2_ardour/level_meter.cc b/gtk2_ardour/level_meter.cc
index cc1df9add5..8a05d8da56 100644
--- a/gtk2_ardour/level_meter.cc
+++ b/gtk2_ardour/level_meter.cc
@@ -67,6 +67,7 @@ LevelMeter::LevelMeter (boost::shared_ptr<IO> io, Session& s)
Config->ParameterChanged.connect (mem_fun (*this, &LevelMeter::parameter_changed));
UI::instance()->theme_changed.connect (mem_fun(*this, &LevelMeter::on_theme_changed));
ColorsChanged.connect (mem_fun (*this, &LevelMeter::color_handler));
+ max_peak = minus_infinity();
}
void
@@ -84,7 +85,7 @@ LevelMeter::~LevelMeter ()
}
}
-void
+float
LevelMeter::update_meters ()
{
vector<MeterInfo>::iterator i;
@@ -96,8 +97,12 @@ LevelMeter::update_meters ()
peak = _io->peak_meter().peak_power (n);
(*i).meter->set (log_meter (peak));
mpeak = _io->peak_meter().max_peak_power(n);
+ if (mpeak > max_peak) {
+ max_peak = mpeak;
+ }
}
}
+ return max_peak;
}
void
@@ -134,9 +139,10 @@ LevelMeter::hide_all_meters ()
}
void
-LevelMeter::setup_meters (int len)
+LevelMeter::setup_meters (int len, int initial_width)
{
uint32_t nmeters = _io->n_outputs().n_total();
+ regular_meter_width = initial_width;
guint16 width;
hide_all_meters ();
@@ -191,6 +197,7 @@ LevelMeter::setup_meters (int len)
meters[n].width = width;
meters[n].length = len;
meters[n].meter->add_events (Gdk::BUTTON_RELEASE_MASK);
+ meters[n].meter->signal_button_release_event().connect (bind (mem_fun(*this, &LevelMeter::meter_button_release), n));
}
pack_end (*meters[n].meter, false, false);
@@ -199,13 +206,24 @@ LevelMeter::setup_meters (int len)
}
show();
color_changed = false;
-}
+}
+
+gint
+LevelMeter::meter_button_release (GdkEventButton* ev, uint32_t which)
+{
+ if (ev->button == 1) {
+ clear_meters();
+ }
+ return true;
+}
+
void LevelMeter::clear_meters ()
{
for (vector<MeterInfo>::iterator i = meters.begin(); i < meters.end(); i++) {
(*i).meter->clear();
}
+ max_peak = minus_infinity();
}
void LevelMeter::hide_meters ()
diff --git a/gtk2_ardour/level_meter.h b/gtk2_ardour/level_meter.h
index 240cc4b785..ce0aa125cb 100644
--- a/gtk2_ardour/level_meter.h
+++ b/gtk2_ardour/level_meter.h
@@ -61,11 +61,11 @@ class LevelMeter : public Gtk::HBox
void update_gain_sensitive ();
- void update_meters ();
+ float update_meters ();
void update_meters_falloff ();
void clear_meters ();
void hide_meters ();
- void setup_meters (int len=0);
+ void setup_meters (int len=0, int width=3);
private:
@@ -89,13 +89,13 @@ class LevelMeter : public Gtk::HBox
}
};
- static const guint16 regular_meter_width = 3;
+ guint16 regular_meter_width;
static const guint16 thin_meter_width = 2;
vector<MeterInfo> meters;
-
- //Gtk::HBox meter_packer;
+ float max_peak;
void hide_all_meters ();
+ gint meter_button_release (GdkEventButton*, uint32_t);
void parameter_changed (const char*);
diff --git a/gtk2_ardour/mixer_ui.cc b/gtk2_ardour/mixer_ui.cc
index a7bf2a3f97..6754581b43 100644
--- a/gtk2_ardour/mixer_ui.cc
+++ b/gtk2_ardour/mixer_ui.cc
@@ -246,6 +246,8 @@ Mixer_UI::Mixer_UI ()
list_hpane.show();
track_display.show();
group_display.show();
+
+ auto_rebinding = FALSE;
}
Mixer_UI::~Mixer_UI ()
@@ -732,8 +734,97 @@ Mixer_UI::redisplay_track_list ()
Route::SyncOrderKeys (); // EMIT SIGNAL
ignore_sync = false;
}
+
+ // Rebind all of the midi controls automatically
+
+ if (auto_rebinding)
+ auto_rebind_midi_controls ();
+
+}
+
+void
+Mixer_UI::set_auto_rebinding( bool val )
+{
+ if( val == TRUE )
+ {
+ auto_rebinding = TRUE;
+ Session::AutoBindingOff();
+ }
+ else
+ {
+ auto_rebinding = FALSE;
+ Session::AutoBindingOn();
+ }
}
+void
+Mixer_UI::toggle_auto_rebinding()
+{
+ if (auto_rebinding)
+ {
+ set_auto_rebinding( FALSE );
+ }
+
+ else
+ {
+ set_auto_rebinding( TRUE );
+ }
+
+ auto_rebind_midi_controls();
+}
+
+void
+Mixer_UI::auto_rebind_midi_controls ()
+{
+ TreeModel::Children rows = track_model->children();
+ TreeModel::Children::iterator i;
+ int pos;
+
+ // Create bindings for all visible strips and remove those that are not visible
+ pos = 1; // 0 is reserved for the master strip
+ for (i = rows.begin(); i != rows.end(); ++i) {
+ MixerStrip* strip = (*i)[track_columns.strip];
+
+ if ( (*i)[track_columns.visible] == true ) { // add bindings for
+ // make the actual binding
+ //cout<<"Auto Binding: Visible Strip Found: "<<strip->name()<<endl;
+
+ int controlValue = pos;
+ if( strip->route()->is_master() ) {
+ controlValue = 0;
+ }
+ else {
+ pos++;
+ }
+
+ PBD::Controllable::CreateBinding ( strip->solo_button->get_controllable(), controlValue, 0);
+ PBD::Controllable::CreateBinding ( strip->mute_button->get_controllable(), controlValue, 1);
+
+ if( strip->is_audio_track() ) {
+ PBD::Controllable::CreateBinding ( strip->rec_enable_button->get_controllable(), controlValue, 2);
+ }
+
+ PBD::Controllable::CreateBinding ( strip->gpm.get_controllable(), controlValue, 3);
+ PBD::Controllable::CreateBinding ( strip->panners.get_controllable(), controlValue, 4);
+
+ }
+ else { // Remove any existing binding
+ PBD::Controllable::DeleteBinding ( strip->solo_button->get_controllable() );
+ PBD::Controllable::DeleteBinding ( strip->mute_button->get_controllable() );
+
+ if( strip->is_audio_track() ) {
+ PBD::Controllable::DeleteBinding ( strip->rec_enable_button->get_controllable() );
+ }
+
+ PBD::Controllable::DeleteBinding ( strip->gpm.get_controllable() );
+ PBD::Controllable::DeleteBinding ( strip->panners.get_controllable() ); // This only takes the first panner if there are multiples...
+ }
+
+ } // for
+
+}
+
+
struct SignalOrderRouteSorter {
bool operator() (boost::shared_ptr<Route> a, boost::shared_ptr<Route> b) {
/* use of ">" forces the correct sort order */
@@ -1089,6 +1180,7 @@ Mixer_UI::mix_group_row_change (const Gtk::TreeModel::Path& path,const Gtk::Tree
if (name != group->name()) {
group->set_name (name);
}
+
}
void
diff --git a/gtk2_ardour/mixer_ui.h b/gtk2_ardour/mixer_ui.h
index 5d00acff5b..01460b61dc 100644
--- a/gtk2_ardour/mixer_ui.h
+++ b/gtk2_ardour/mixer_ui.h
@@ -75,6 +75,8 @@ class Mixer_UI : public Gtk::Window
void hide_strip (MixerStrip *);
void ensure_float (Gtk::Window&);
+ void toggle_auto_rebinding ();
+ void set_auto_rebinding(bool);
RouteRedirectSelection& selection() { return _selection; }
@@ -129,6 +131,9 @@ class Mixer_UI : public Gtk::Window
void unselect_all_audiobus_strips ();
void select_all_audiobus_strips ();
+ void auto_rebind_midi_controls ();
+ bool auto_rebinding;
+
void strip_select_op (bool audiotrack, bool select);
void select_strip_op (MixerStrip*, bool select);
diff --git a/gtk2_ardour/mnemonic-us.bindings.in b/gtk2_ardour/mnemonic-us.bindings.in
index 7fc7a664d0..2eafa6e0ad 100644
--- a/gtk2_ardour/mnemonic-us.bindings.in
+++ b/gtk2_ardour/mnemonic-us.bindings.in
@@ -57,6 +57,7 @@
(gtk_accel_path "<Actions>/Editor/redo" "<%PRIMARY%>r")
(gtk_accel_path "<Actions>/Transport/Record" "<%TERTIARY%>r")
(gtk_accel_path "<Actions>/MouseMode/set-mouse-mode-timefx" "t")
+(gtk_accel_path "<Actions>/Editor/insert-time" "<%PRIMARY%>t")
(gtk_accel_path "<Actions>/Editor/select-all-between-cursors" "u")
(gtk_accel_path "<Actions>/Editor/insert-region" "i")
(gtk_accel_path "<Actions>/Editor/invert-selection" "<%TERTIARY%>i")
diff --git a/gtk2_ardour/panner_ui.cc b/gtk2_ardour/panner_ui.cc
index d3de4a1aaa..d4f0d9eeca 100644
--- a/gtk2_ardour/panner_ui.cc
+++ b/gtk2_ardour/panner_ui.cc
@@ -166,6 +166,12 @@ PannerUI::PannerUI (boost::shared_ptr<IO> io, Session& s)
show();
}
+PBD::Controllable*
+PannerUI::get_controllable()
+{
+ return pan_bars[0]->get_controllable();
+}
+
bool
PannerUI::panning_link_button_press (GdkEventButton* ev)
{
diff --git a/gtk2_ardour/panner_ui.h b/gtk2_ardour/panner_ui.h
index d587359ecd..093800387d 100644
--- a/gtk2_ardour/panner_ui.h
+++ b/gtk2_ardour/panner_ui.h
@@ -68,9 +68,11 @@ class PannerUI : public Gtk::HBox
void effective_pan_display ();
void set_meter_strip_name (string name);
+ PBD::Controllable* get_controllable();
private:
friend class MixerStrip;
+
boost::shared_ptr<ARDOUR::IO> _io;
ARDOUR::Session& _session;
diff --git a/gtk2_ardour/plugin_ui.cc b/gtk2_ardour/plugin_ui.cc
index 5813c644fb..014638e9cd 100644
--- a/gtk2_ardour/plugin_ui.cc
+++ b/gtk2_ardour/plugin_ui.cc
@@ -66,6 +66,7 @@ PluginUIWindow::PluginUIWindow (Gtk::Window* win, boost::shared_ptr<PluginInsert
{
bool have_gui = false;
non_gtk_gui = false;
+ was_visible = false;
Label* label = manage (new Label());
label->set_markup ("<b>THIS IS THE PLUGIN UI</b>");
@@ -159,7 +160,6 @@ PluginUIWindow::on_show ()
Window::on_show ();
if (parent) {
- cerr << "plugin becomes transient for " << parent << endl;
// set_transient_for (*parent);
}
}
@@ -221,9 +221,13 @@ PluginUIWindow::app_activated (bool yn)
cerr << "APP activated ? " << yn << endl;
if (_pluginui) {
if (yn) {
- _pluginui->activate ();
- present ();
+ if (was_visible) {
+ _pluginui->activate ();
+ present ();
+ was_visible = true;
+ }
} else {
+ was_visible = is_visible();
hide ();
_pluginui->deactivate ();
}
diff --git a/gtk2_ardour/plugin_ui.h b/gtk2_ardour/plugin_ui.h
index 2214b4aa50..65b7b0d7fb 100644
--- a/gtk2_ardour/plugin_ui.h
+++ b/gtk2_ardour/plugin_ui.h
@@ -224,6 +224,8 @@ class PluginUIWindow : public Gtk::Window
Gtk::Window* parent;
Gtk::VBox vbox;
bool non_gtk_gui;
+ bool was_visible;
+
void app_activated (bool);
void plugin_going_away ();
diff --git a/gtk2_ardour/po/fr_FR.po b/gtk2_ardour/po/fr_FR.po
index 2c4e2a0168..a0e4a6da3a 100644
--- a/gtk2_ardour/po/fr_FR.po
+++ b/gtk2_ardour/po/fr_FR.po
@@ -1,22 +1,22 @@
-# translation of fr_FR.po to français
# French translation of gtk-ardour.
-# Copyright (C) 2004 Paul Davis
+# Copyright (C) 2008 Paul Davis
# This file is distributed under the same license as the gtk-ardour package.
# Alain Fréhel <alain.frehel@free.fr>, 2005.
-# Christophe Combelles <ccomb@free.fr>, 2005, 2006, 2007
+# Christophe Combelles <ccomb@free.fr>, 2005, 2006, 2007, 2008
#
#
msgid ""
msgstr ""
-"Project-Id-Version: Ardour 2.0rc1\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-04-08 11:00+0200\n"
-"PO-Revision-Date: 2007-04-09 16:14+0200\n"
+"Project-Id-Version: Ardour 2.3\n"
+"Report-Msgid-Bugs-To: ardour-dev@lists.ardour.org\n"
+"POT-Creation-Date: 2004-02-17 01:25+0100\n"
+"PO-Revision-Date: 2008-03-16 19:57+0100\n"
"Last-Translator: Christophe Combelles <ccomb@free.fr>\n"
"Language-Team: French\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n>1;"
#: gtk2_ardour/about.cc:120
msgid "Paul Davis"
@@ -154,17 +154,34 @@ msgstr "John Anderson"
msgid "Nedko Arnaudov"
msgstr "Nedko Arnaudov"
-#: gtk2_ardour/about.cc:158
+#: gtk2_ardour/about.cc:154
+msgid "Carl Hetherington"
+msgstr "Carl Hetherington"
+
+#: gtk2_ardour/about.cc:155
+msgid "Colin Fletcher"
+msgstr "Colin Fletcher"
+
+#: gtk2_ardour/about.cc:156
+msgid "Roland Stigge"
+msgstr "Roland Stigge"
+
+#: gtk2_ardour/about.cc:157
+msgid "Audun Halland"
+msgstr "Audun Halland"
+
+#: gtk2_ardour/about.cc:162
msgid ""
"French:\n"
"\tAlain Fréhel <alain.frehel@free.fr>\n"
"\tChristophe Combelles <ccomb@free.fr>\n"
msgstr ""
"français :\n"
-"\tAlain Fréhel <alain.frehel@free.fr>\n"
"\tChristophe Combelles <ccomb@free.fr>\n"
+"\tAlain Fréhel <alain.frehel@free.fr>\n"
+""
-#: gtk2_ardour/about.cc:159
+#: gtk2_ardour/about.cc:163
msgid ""
"German:\n"
"\tKarsten Petersen <kapet@kapet.de>\n"
@@ -174,7 +191,7 @@ msgstr ""
"\tKarsten Petersen <kapet@kapet.de>\n"
"\tSebastian Arnold <mail@sebastian-arnold.net>\n"
-#: gtk2_ardour/about.cc:160
+#: gtk2_ardour/about.cc:164
msgid ""
"Italian:\n"
"\tFilippo Pappalardo <filippo@email.it>\n"
@@ -182,7 +199,7 @@ msgstr ""
"italien :\n"
"\tFilippo Pappalardo <filippo@email.it>\n"
-#: gtk2_ardour/about.cc:161
+#: gtk2_ardour/about.cc:165
msgid ""
"Portuguese:\n"
"\tRui Nuno Capela <rncbc@rncbc.org>\n"
@@ -190,7 +207,7 @@ msgstr ""
"portugais :\n"
"\tRui Nuno Capela <rncbc@rncbc.org>\n"
-#: gtk2_ardour/about.cc:162
+#: gtk2_ardour/about.cc:166
msgid ""
"Brazilian Portuguese:\n"
"\tAlexander da Franca Fernandes <alexander@nautae.eti.br>\n"
@@ -200,7 +217,7 @@ msgstr ""
"\tAlexander da Franca Fernandes <alexander@nautae.eti.br>\n"
"\tChris Ross <chris@tebibyte.org>\n"
-#: gtk2_ardour/about.cc:164
+#: gtk2_ardour/about.cc:168
msgid ""
"Spanish:\n"
"\t Alex Krohn <alexkrohn@fastmail.fm>\n"
@@ -208,7 +225,7 @@ msgstr ""
"espagnol :\n"
"\t Alex Krohn <alexkrohn@fastmail.fm>\n"
-#: gtk2_ardour/about.cc:165
+#: gtk2_ardour/about.cc:169
msgid ""
"Russian:\n"
"\t Igor Blinov <pitstop@nm.ru>\n"
@@ -216,11 +233,19 @@ msgstr ""
"russe :\n"
"\t Igor Blinov <pitstop@nm.ru>\n"
-#: gtk2_ardour/about.cc:193
-msgid "Copyright (C) 1999-2007 Paul Davis\n"
-msgstr "Copyright © 1999-2007 Paul Davis\n"
+#: gtk2_ardour/about.cc:170
+msgid ""
+"Greek:\n"
+"\t Klearchos Gourgourinis <muadib@in.gr>\n"
+msgstr ""
+"grec :\n"
+"\t Klearchos Gourgourinis <muadib@in.gr>\n"
+
+#: gtk2_ardour/about.cc:198
+msgid "Copyright (C) 1999-2008 Paul Davis\n"
+msgstr "Copyright © 1999-2008 Paul Davis\n"
-#: gtk2_ardour/about.cc:194
+#: gtk2_ardour/about.cc:199
msgid ""
"Ardour comes with ABSOLUTELY NO WARRANTY\n"
"This is free software, and you are welcome to redistribute it\n"
@@ -230,11 +255,11 @@ msgstr ""
"C'est un logiciel libre et vous êtes encouragé à le distribuer\n"
"sous certaines conditions ; voir le fichier COPYING pour les détails.\n"
-#: gtk2_ardour/about.cc:199
+#: gtk2_ardour/about.cc:204
msgid "visit http://www.ardour.org/"
msgstr "visitez http://www.ardour.org"
-#: gtk2_ardour/about.cc:200
+#: gtk2_ardour/about.cc:205
msgid ""
"%1\n"
"(built from revision %2)"
@@ -242,89 +267,223 @@ msgstr ""
"%1\n"
"(revision %2)"
-#: gtk2_ardour/actions.cc:76
+#: gtk2_ardour/actions.cc:78
msgid "badly formatted UI definition file"
msgstr "fichier de définition d'IHM mal formatté"
-#: gtk2_ardour/actions.cc:78
+#: gtk2_ardour/actions.cc:80
msgid "Ardour menu definition file not found"
msgstr "fichier de définition du menu d'Ardour non trouvé"
-#: gtk2_ardour/actions.cc:82
+#: gtk2_ardour/actions.cc:84
msgid "ardour will not work without a valid ardour.menus file"
msgstr "ardour ne fonctionnera pas sans un fichier ardour.menus valide"
-#: gtk2_ardour/actions.cc:234
+#: gtk2_ardour/actions.cc:265
msgid "programmer error: %1 %2"
msgstr "programmer error: %1 %2"
-#: gtk2_ardour/actions.cc:253
+#: gtk2_ardour/actions.cc:284
msgid "Unknown action name: %1"
msgstr "Nom d'action inconnu : %1"
-#: gtk2_ardour/add_route_dialog.cc:40 gtk2_ardour/add_route_dialog.cc:195
+#: gtk2_ardour/add_route_dialog.cc:41 gtk2_ardour/add_route_dialog.cc:219
msgid "Mono"
msgstr "mono"
-#: gtk2_ardour/add_route_dialog.cc:41 gtk2_ardour/add_route_dialog.cc:197
+#: gtk2_ardour/add_route_dialog.cc:42 gtk2_ardour/add_route_dialog.cc:221
msgid "Stereo"
msgstr "stéréo"
-#: gtk2_ardour/add_route_dialog.cc:42
+#: gtk2_ardour/add_route_dialog.cc:43
msgid "3 Channels"
msgstr "3 voies"
-#: gtk2_ardour/add_route_dialog.cc:43
+#: gtk2_ardour/add_route_dialog.cc:44
msgid "4 Channels"
msgstr "4 voies"
-#: gtk2_ardour/add_route_dialog.cc:44
+#: gtk2_ardour/add_route_dialog.cc:45
msgid "6 Channels"
msgstr "6 voies"
-#: gtk2_ardour/add_route_dialog.cc:45
+#: gtk2_ardour/add_route_dialog.cc:46
msgid "8 Channels"
msgstr "8 voies"
-#: gtk2_ardour/add_route_dialog.cc:46
+#: gtk2_ardour/add_route_dialog.cc:47
msgid "Manual Setup"
msgstr "Config manuelle"
-#: gtk2_ardour/add_route_dialog.cc:51 gtk2_ardour/add_route_dialog.cc:176
-#: gtk2_ardour/editor.cc:128 gtk2_ardour/editor.cc:2994
-#: gtk2_ardour/editor_actions.cc:288 gtk2_ardour/time_axis_view.cc:589
+#: gtk2_ardour/add_route_dialog.cc:52 gtk2_ardour/add_route_dialog.cc:200
+#: gtk2_ardour/time_axis_view.cc:601
msgid "Normal"
msgstr "Normal"
-#: gtk2_ardour/add_route_dialog.cc:52 gtk2_ardour/add_route_dialog.cc:178
+#: gtk2_ardour/add_route_dialog.cc:53 gtk2_ardour/add_route_dialog.cc:202
msgid "Tape"
msgstr "Bande"
-#: gtk2_ardour/add_route_dialog.cc:61
+#: gtk2_ardour/add_route_dialog.cc:62
msgid "ardour: add track/bus"
msgstr "ardour : ajouter piste ou bus"
-#: gtk2_ardour/add_route_dialog.cc:62 gtk2_ardour/editor_route_list.cc:72
+#: gtk2_ardour/add_route_dialog.cc:63
msgid "Tracks"
msgstr "Pistes"
-#: gtk2_ardour/add_route_dialog.cc:63 gtk2_ardour/editor_route_list.cc:69
+#: gtk2_ardour/add_route_dialog.cc:64
msgid "Busses"
msgstr "Bus"
-#: gtk2_ardour/add_route_dialog.cc:95 gtk2_ardour/plugin_ui.cc:151
+#: gtk2_ardour/add_route_dialog.cc:113 gtk2_ardour/plugin_ui.cc:252
msgid "Add"
msgstr "Ajouter"
-#: gtk2_ardour/add_route_dialog.cc:113
+#: gtk2_ardour/add_route_dialog.cc:131
msgid "Name (template)"
msgstr "Nom (modèle)"
-#: gtk2_ardour/add_route_dialog.cc:119
+#: gtk2_ardour/add_route_dialog.cc:137
msgid "Channel Configuration"
msgstr "Configuration"
-#: gtk2_ardour/ardour_ui.cc:110
+#: gtk2_ardour/ardour_ui2.cc:62
+msgid "UI: cannot setup editor"
+msgstr "IHM : impossible d'initialiser l'éditeur"
+
+#: gtk2_ardour/ardour_ui2.cc:67
+msgid "UI: cannot setup mixer"
+msgstr "IHM : impossible d'initialiser la console de mixage"
+
+#: gtk2_ardour/ardour_ui2.cc:110
+msgid "[ERROR]: "
+msgstr "[ERREUR]: "
+
+#: gtk2_ardour/ardour_ui2.cc:112
+msgid "[WARNING]: "
+msgstr "[AVERTISSEMENT]: "
+
+#: gtk2_ardour/ardour_ui2.cc:114
+msgid "[INFO]: "
+msgstr "[INFO]: "
+
+#: gtk2_ardour/ardour_ui2.cc:282
+msgid "Play from playhead"
+msgstr "Démarrer la lecture"
+
+#: gtk2_ardour/ardour_ui2.cc:283
+msgid "Stop playback"
+msgstr "Stopper la lecture"
+
+#: gtk2_ardour/ardour_ui2.cc:284
+msgid "Play range/selection"
+msgstr "Lire la zone de sélection"
+
+#: gtk2_ardour/ardour_ui2.cc:285
+msgid "Go to start of session"
+msgstr "début de la session"
+
+#: gtk2_ardour/ardour_ui2.cc:286
+msgid "Go to end of session"
+msgstr "fin de session"
+
+#: gtk2_ardour/ardour_ui2.cc:287
+msgid "Play loop range"
+msgstr "Lire la boucle"
+
+#: gtk2_ardour/ardour_ui2.cc:289
+msgid "Return to last playback start when stopped"
+msgstr "Revenir en début de lecture lors de l'arrêt"
+
+#: gtk2_ardour/ardour_ui2.cc:290
+msgid "Start playback after any locate"
+msgstr "Démarrer quand la tête de lecture est déplacée"
+
+#: gtk2_ardour/ardour_ui2.cc:291
+msgid "Be sensible about input monitoring"
+msgstr "Monitoring d'entrée automatique"
+
+#: gtk2_ardour/ardour_ui2.cc:292
+msgid "Start recording at auto-punch start"
+msgstr "Ne démarrer l'enregistrement qu'au point punch-in"
+
+#: gtk2_ardour/ardour_ui2.cc:293
+msgid "Stop recording at auto-punch end"
+msgstr "Arrêter l'enregistrement au point punch-out"
+
+#: gtk2_ardour/ardour_ui2.cc:294
+msgid "Enable/Disable audio click"
+msgstr "activer/désactiver le métronome"
+
+#: gtk2_ardour/ardour_ui2.cc:295
+msgid "Positional sync source"
+msgstr "Source de synchro de position"
+
+#: gtk2_ardour/ardour_ui2.cc:296
+msgid "Does Ardour control the time?"
+msgstr "Est-ce qu'Ardour contrôle l'horloge ?"
+
+#: gtk2_ardour/ardour_ui2.cc:297
+msgid "Shuttle speed control"
+msgstr "Variateur de vitesse"
+
+#: gtk2_ardour/ardour_ui2.cc:298
+#, c-format
+msgid "Select semitones or %%-age for speed display"
+msgstr "Vitesse affichée en pourcentage ou en demi-tons"
+
+#: gtk2_ardour/ardour_ui2.cc:299
+msgid "Current transport speed"
+msgstr "Vitesse de lecture actuelle"
+
+#: gtk2_ardour/ardour_ui2.cc:320
+msgid "Primary clock"
+msgstr "Horloge principale"
+
+#: gtk2_ardour/ardour_ui2.cc:321
+msgid "secondary clock"
+msgstr "Horloge secondaire"
+
+#: gtk2_ardour/ardour_ui2.cc:347
+msgid ""
+"When active, something is soloed.\n"
+"Click to de-solo everything"
+msgstr ""
+"Actif lorsque quelque chose est en solo\n"
+"Cliquez pour désactiver tous les solos."
+
+#: gtk2_ardour/ardour_ui2.cc:348
+msgid ""
+"When active, auditioning is taking place\n"
+"Click to stop the audition"
+msgstr ""
+"Actif lorsqu'une écoute est en cours\n"
+"Cliquez pour stopper l'écoute."
+
+#: gtk2_ardour/ardour_ui2.cc:376 gtk2_ardour/ardour_ui2.cc:826
+#: gtk2_ardour/ardour_ui2.cc:882 gtk2_ardour/ardour_ui_options.cc:1070
+msgid "sprung"
+msgstr "ressort"
+
+#: gtk2_ardour/ardour_ui2.cc:377 gtk2_ardour/ardour_ui2.cc:828
+#: gtk2_ardour/ardour_ui_options.cc:1081
+msgid "wheel"
+msgstr "molette"
+
+#: gtk2_ardour/ardour_ui2.cc:596
+msgid "Maximum speed"
+msgstr "Vitesse maximale"
+
+#: gtk2_ardour/ardour_ui2.cc:838 gtk2_ardour/ardour_ui2.cc:861
+msgid "stop"
+msgstr "Stop"
+
+#: gtk2_ardour/ardour_ui2.cc:880
+msgid "-0.55"
+msgstr "-0.55"
+
+#: gtk2_ardour/ardour_ui.cc:115
msgid ""
"pre\n"
"roll"
@@ -332,7 +491,7 @@ msgstr ""
"pré\n"
"roll"
-#: gtk2_ardour/ardour_ui.cc:111
+#: gtk2_ardour/ardour_ui.cc:116
msgid ""
"post\n"
"roll"
@@ -340,36 +499,36 @@ msgstr ""
"post\n"
"roll"
-#: gtk2_ardour/ardour_ui.cc:137
+#: gtk2_ardour/ardour_ui.cc:142
msgid "% "
msgstr "% "
-#: gtk2_ardour/ardour_ui.cc:139 gtk2_ardour/ardour_ui_ed.cc:294
+#: gtk2_ardour/ardour_ui.cc:144 gtk2_ardour/ardour_ui_ed.cc:306
msgid "Punch In"
msgstr "Punch In"
-#: gtk2_ardour/ardour_ui.cc:140 gtk2_ardour/ardour_ui_ed.cc:297
+#: gtk2_ardour/ardour_ui.cc:145 gtk2_ardour/ardour_ui_ed.cc:309
msgid "Punch Out"
msgstr "Punch Out"
-#: gtk2_ardour/ardour_ui.cc:141 gtk2_ardour/ardour_ui_ed.cc:309
+#: gtk2_ardour/ardour_ui.cc:146 gtk2_ardour/ardour_ui_ed.cc:321
msgid "Auto Return"
msgstr "retour auto"
-#: gtk2_ardour/ardour_ui.cc:142 gtk2_ardour/ardour_ui_ed.cc:306
+#: gtk2_ardour/ardour_ui.cc:147 gtk2_ardour/ardour_ui_ed.cc:318
msgid "Auto Play"
msgstr "Lecture auto"
-#: gtk2_ardour/ardour_ui.cc:143 gtk2_ardour/ardour_ui_ed.cc:303
+#: gtk2_ardour/ardour_ui.cc:148 gtk2_ardour/ardour_ui_ed.cc:315
msgid "Auto Input"
msgstr "monit. auto"
-#: gtk2_ardour/ardour_ui.cc:144 gtk2_ardour/ardour_ui_ed.cc:300
-#: gtk2_ardour/option_editor.cc:133
+#: gtk2_ardour/ardour_ui.cc:149 gtk2_ardour/ardour_ui_ed.cc:312
+#: gtk2_ardour/option_editor.cc:147
msgid "Click"
msgstr "Métronome"
-#: gtk2_ardour/ardour_ui.cc:145
+#: gtk2_ardour/ardour_ui.cc:150
msgid ""
"time\n"
"master"
@@ -377,15 +536,69 @@ msgstr ""
"Horloge\n"
"maître"
-#: gtk2_ardour/ardour_ui.cc:147
+#: gtk2_ardour/ardour_ui.cc:152
msgid "AUDITION"
msgstr "EN ÉCOUTE"
-#: gtk2_ardour/ardour_ui.cc:148
+#: gtk2_ardour/ardour_ui.cc:153
msgid "SOLO"
msgstr "SOLO"
-#: gtk2_ardour/ardour_ui.cc:476
+#: gtk2_ardour/ardour_ui.cc:155
+msgid "Errors"
+msgstr "Erreurs"
+
+#: gtk2_ardour/ardour_ui.cc:250
+msgid "could not initialize Ardour."
+msgstr "impossible d'initialiser Ardour."
+
+#: gtk2_ardour/ardour_ui.cc:274
+msgid "Starting audio engine"
+msgstr "Démarrage du moteur audio"
+
+#: gtk2_ardour/ardour_ui.cc:574
+msgid "Ardour could not start JACK"
+msgstr "Ardour n'a pas pu démarrer Jack"
+
+#: gtk2_ardour/ardour_ui.cc:576
+msgid "Ardour could not connect to JACK."
+msgstr "Impossible de se connecter à JACK"
+
+#: gtk2_ardour/ardour_ui.cc:585
+msgid ""
+"There are several possible reasons:\n"
+"\n"
+"1) You requested audio parameters that are not supported..\n"
+"2) JACK is running as another user.\n"
+"\n"
+"Please consider the possibilities, and perhaps try different parameters."
+msgstr ""
+"Il y a plusieurs raisons possibles :\n"
+"\n"
+"1) Vous avez demandé des réglages audio non pris en charge.\n"
+"2) JACK tourne sous un autre utilisateur.\n"
+"\n"
+"Vérifiez les deux points ci-dessus, et essayez peut-être d'autres paramètres."
+
+#: gtk2_ardour/ardour_ui.cc:592
+msgid ""
+"There are several possible reasons:\n"
+"\n"
+"1) JACK is not running.\n"
+"2) JACK is running as another user, perhaps root.\n"
+"3) There is already another client called \"ardour\".\n"
+"\n"
+"Please consider the possibilities, and perhaps (re)start JACK."
+msgstr ""
+"Il y a plusieurs raisons possibles :\n"
+"\n"
+"1) JACK n'est pas lancé.\n"
+"2) JACK tourne sous un autre utilisateur, peut-être root.\n"
+"3) Il y a un autre programme client appelé \"ardour\".\n"
+"\n"
+"Veuillez étudier ces possibilités, et peut-être (re)lancer JACK."
+
+#: gtk2_ardour/ardour_ui.cc:681
msgid ""
"WARNING: Your system has a limit for maximum amount of locked memory. This "
"might cause Ardour to run out of memory before your system runs out of "
@@ -394,19 +607,23 @@ msgid ""
"You can view the memory limit with 'ulimit -l', and it is normally "
"controlled by /etc/security/limits.conf"
msgstr ""
-"AVERTISSEMENT : votre système possède une limite supérieure pour la quantité maximale de mémoire verrouillée. Ceci peut empêcher Ardour d'accéder à toute la mémoire disponible sur votre système.\n"
+"AVERTISSEMENT : votre système possède une limite supérieure pour la quantité "
+"maximale de mémoire verrouillée. Ceci peut empêcher Ardour d'accéder à toute "
+"la mémoire disponible sur votre système.\n"
"\n"
-"Vous pouvez connaître la limite actuelle avec la commande « ulimit -l » et celle-ci est habituellement contrôlée par le fichier /etc/security/limits.conf."
+"Vous pouvez connaître la limite actuelle avec la commande « ulimit -l » et "
+"celle-ci est habituellement contrôlée par le fichier /etc/security/limits."
+"conf."
-#: gtk2_ardour/ardour_ui.cc:484
+#: gtk2_ardour/ardour_ui.cc:689
msgid "Do not show this window again"
msgstr "Ne plus afficher cette fenêtre"
-#: gtk2_ardour/ardour_ui.cc:505
+#: gtk2_ardour/ardour_ui.cc:718
msgid "quit"
msgstr "quitter"
-#: gtk2_ardour/ardour_ui.cc:514
+#: gtk2_ardour/ardour_ui.cc:727
msgid ""
"Ardour was unable to save your session.\n"
"\n"
@@ -420,31 +637,31 @@ msgstr ""
"\n"
"cliquez sur le bouton « Quitter sans enregistrer »."
-#: gtk2_ardour/ardour_ui.cc:538
+#: gtk2_ardour/ardour_ui.cc:752
msgid "ardour: save session?"
msgstr "ardour : enregistrer la session ?"
-#: gtk2_ardour/ardour_ui.cc:545
+#: gtk2_ardour/ardour_ui.cc:759
msgid "Don't %1"
msgstr "Ne pas %1"
-#: gtk2_ardour/ardour_ui.cc:547
+#: gtk2_ardour/ardour_ui.cc:761
msgid "Just %1"
msgstr "%1 sans enregistrer"
-#: gtk2_ardour/ardour_ui.cc:549
+#: gtk2_ardour/ardour_ui.cc:763
msgid "Save and %1"
msgstr "Enregistrer et %1"
-#: gtk2_ardour/ardour_ui.cc:561
+#: gtk2_ardour/ardour_ui.cc:775
msgid "session"
msgstr "La session"
-#: gtk2_ardour/ardour_ui.cc:563
+#: gtk2_ardour/ardour_ui.cc:777
msgid "snapshot"
msgstr "Le cliché"
-#: gtk2_ardour/ardour_ui.cc:565
+#: gtk2_ardour/ardour_ui.cc:779
msgid ""
"The %1\"%2\"\n"
"has not been saved.\n"
@@ -461,86 +678,94 @@ msgstr ""
"\n"
"Que voulez-vous faire ?"
-#: gtk2_ardour/ardour_ui.cc:579
+#: gtk2_ardour/ardour_ui.cc:793
msgid "Prompter"
msgstr "Question"
-#: gtk2_ardour/ardour_ui.cc:639
+#: gtk2_ardour/ardour_ui.cc:855
#, c-format
msgid "disconnected"
msgstr "déconnecté"
-#: gtk2_ardour/ardour_ui.cc:646
+#: gtk2_ardour/ardour_ui.cc:862
#, c-format
msgid "%.1f kHz / %4.1f ms"
msgstr "%.1f kHz / %4.1f ms"
-#: gtk2_ardour/ardour_ui.cc:650
+#: gtk2_ardour/ardour_ui.cc:866
#, c-format
msgid "%u kHz / %4.1f ms"
msgstr "%u kHz/%4.1f ms"
-#: gtk2_ardour/ardour_ui.cc:663
+#: gtk2_ardour/ardour_ui.cc:879
#, c-format
msgid "DSP: %5.1f%%"
msgstr "DSP=%5.1f%%"
-#: gtk2_ardour/ardour_ui.cc:673
+#: gtk2_ardour/ardour_ui.cc:889
#, c-format
msgid "Buffers p:%<PRIu32>%% c:%<PRIu32>%%"
msgstr "Buffers: (lect=%<PRIu32>%% enr=%<PRIu32>%%)"
-#: gtk2_ardour/ardour_ui.cc:701
+#: gtk2_ardour/ardour_ui.cc:917
msgid "Disk: 24hrs+"
msgstr "Reste : +24h"
-#: gtk2_ardour/ardour_ui.cc:721
+#: gtk2_ardour/ardour_ui.cc:937
#, c-format
msgid "Disk: %02dh:%02dm:%02ds"
msgstr "Reste %02dh %02dmin %02ds"
-#: gtk2_ardour/ardour_ui.cc:834 gtk2_ardour/new_session_dialog.cc:362
+#: gtk2_ardour/ardour_ui.cc:1057 gtk2_ardour/new_session_dialog.cc:390
msgid "Recent Sessions"
msgstr "Sessions récentes"
-#: gtk2_ardour/ardour_ui.cc:927
+#: gtk2_ardour/ardour_ui.cc:1163
+msgid ""
+"Ardour is not connected to JACK\n"
+"You cannot open or close sessions in this condition"
+msgstr ""
+"Ardour n'est pas connecté à JACK\n"
+"Il n'est pas possible d'ouvrir ni de fermer des sessions dans ces conditions."
+
+#: gtk2_ardour/ardour_ui.cc:1188
msgid "open session"
msgstr "Ouvrir une session"
-#: gtk2_ardour/ardour_ui.cc:933
+#: gtk2_ardour/ardour_ui.cc:1195
msgid "Ardour sessions"
msgstr "Sessions Ardour"
-#: gtk2_ardour/ardour_ui.cc:966
+#: gtk2_ardour/ardour_ui.cc:1228
msgid "Patience is a virtue.\n"
msgstr "La patience est une vertu.\n"
-#: gtk2_ardour/ardour_ui.cc:976
+#: gtk2_ardour/ardour_ui.cc:1238
msgid "You cannot add a track or bus without a session already loaded."
msgstr ""
"Vous ne pouvez pas ajouter une piste ou un bus sans avoir ouvert une session."
-#: gtk2_ardour/ardour_ui.cc:986 gtk2_ardour/ardour_ui.cc:999
+#: gtk2_ardour/ardour_ui.cc:1248 gtk2_ardour/ardour_ui.cc:1261
msgid "could not create a new audio track"
msgstr "impossible de créer une nouvelle piste audio"
-#: gtk2_ardour/ardour_ui.cc:988
+#: gtk2_ardour/ardour_ui.cc:1250
msgid "could only create %1 of %2 new audio %3"
msgstr "Ardour n'a pu créer que %1 %3 audio au lieu de %2"
-#: gtk2_ardour/ardour_ui.cc:989
+#: gtk2_ardour/ardour_ui.cc:1251
msgid "tracks"
msgstr "pistes"
-#: gtk2_ardour/ardour_ui.cc:989
+#: gtk2_ardour/ardour_ui.cc:1251
msgid "busses"
msgstr "bus"
-#: gtk2_ardour/ardour_ui.cc:1001
+#: gtk2_ardour/ardour_ui.cc:1263
msgid "could not create %1 new audio tracks"
msgstr "impossible de créer %1 nouvelles pistes audios"
-#: gtk2_ardour/ardour_ui.cc:1022
+#: gtk2_ardour/ardour_ui.cc:1283
msgid ""
"There are insufficient JACK ports available\n"
"to create a new track or bus.\n"
@@ -552,7 +777,7 @@ msgstr ""
"Vous devriez enregistrer la session, quitter, puis\n"
"redémarrer JACK avec plus de ports."
-#: gtk2_ardour/ardour_ui.cc:1142
+#: gtk2_ardour/ardour_ui.cc:1404
msgid ""
"Please create 1 or more track\n"
"before trying to record.\n"
@@ -561,7 +786,7 @@ msgstr ""
"Pour pouvoir enregistrer, vous devez ajouter au moins une piste.\n"
"Rendez-vous dans le menu « Session »."
-#: gtk2_ardour/ardour_ui.cc:1387
+#: gtk2_ardour/ardour_ui.cc:1659
msgid ""
"JACK has either been shutdown or it\n"
"disconnected Ardour because Ardour\n"
@@ -573,39 +798,50 @@ msgstr ""
"Vous devriez enregistrer la session\n"
"ou essayer de reconnecter Ardour à JACK."
-#: gtk2_ardour/ardour_ui.cc:1404
+#: gtk2_ardour/ardour_ui.cc:1677
msgid "Unable to start the session running"
msgstr "Impossible de lancer la session"
-#: gtk2_ardour/ardour_ui.cc:1504 gtk2_ardour/ardour_ui.cc:1523
-#: gtk2_ardour/audio_clock.cc:461
+#: gtk2_ardour/ardour_ui.cc:1768 gtk2_ardour/ardour_ui.cc:1787
+#: gtk2_ardour/audio_clock.cc:508
msgid "none"
msgstr "aucun"
-#: gtk2_ardour/ardour_ui.cc:1513 gtk2_ardour/ardour_ui.cc:1532
+#: gtk2_ardour/ardour_ui.cc:1777 gtk2_ardour/ardour_ui.cc:1796
msgid "off"
msgstr "stop"
-#: gtk2_ardour/ardour_ui.cc:1558
+#: gtk2_ardour/ardour_ui.cc:1822
msgid "Name of New Snapshot"
msgstr "Nom du nouveau cliché :"
-#: gtk2_ardour/ardour_ui.cc:1698
+#: gtk2_ardour/ardour_ui.cc:1974
msgid "Name for mix template:"
msgstr "Nom du modèle de session :"
-#: gtk2_ardour/ardour_ui.cc:1699
+#: gtk2_ardour/ardour_ui.cc:1975
msgid "-template"
msgstr "-modèle"
-#: gtk2_ardour/ardour_ui.cc:1723 gtk2_ardour/ardour_ui.cc:1740
+#: gtk2_ardour/ardour_ui.cc:2004
msgid ""
-"Ardour is not connected to JACK at this time. Creating new sessions is not "
-"possible."
+"Welcome to Ardour.\n"
+"\n"
+"The program will take a bit longer to start up\n"
+"while the system fonts are checked.\n"
+"\n"
+"This will only be done once, and you will\n"
+"not see this message again\n"
msgstr ""
-"Ardour n'est pas connecté à JACK. Il n'est pas possible de créer de nouvelles sessions."
+"Bienvenue dans Ardour.\n"
+"\n"
+"Le programme va prendre un peu de temps à démarrer,\n"
+"le temps que les polices de caractère soient analysées.\n"
+"\n"
+"Ceci ne sera effectué qu'une fois,\n"
+"et vous ne verrez plus ce message par la suite.\n"
-#: gtk2_ardour/ardour_ui.cc:1833
+#: gtk2_ardour/ardour_ui.cc:2091
msgid ""
"This session\n"
"%1\n"
@@ -615,7 +851,7 @@ msgstr ""
"%1\n"
"Voulez-vous l'ouvrir ?"
-#: gtk2_ardour/ardour_ui.cc:1956
+#: gtk2_ardour/ardour_ui.cc:2420
msgid ""
"You do not have write access to this session.\n"
"This prevents the session from being loaded."
@@ -623,19 +859,31 @@ msgstr ""
"Vous n'avez pas les droits d'écriture sur cette session.\n"
"La session ne peut pas être chargée."
-#: gtk2_ardour/ardour_ui.cc:1968
+#: gtk2_ardour/ardour_ui.cc:2427
+msgid "Please wait while Ardour loads your session"
+msgstr "Veuillez patienter pendant le chargement de votre session"
+
+#: gtk2_ardour/ardour_ui.cc:2443 gtk2_ardour/ardour_ui.cc:2469
+msgid "Loading Error"
+msgstr "Erreur de chargement"
+
+#: gtk2_ardour/ardour_ui.cc:2444 gtk2_ardour/ardour_ui.cc:2470
+msgid "Click the OK button to try again."
+msgstr "Cliquez sur le bouton OK pour réessayer."
+
+#: gtk2_ardour/ardour_ui.cc:2464
msgid "Session \"%1 (snapshot %2)\" did not load successfully"
msgstr "La session « %1 (cliché %2) » ne s'est pas chargée correctement"
-#: gtk2_ardour/ardour_ui.cc:2018
+#: gtk2_ardour/ardour_ui.cc:2544
msgid "Could not create session in \"%1\""
msgstr "Impossible de créer une session dans « %1 »"
-#: gtk2_ardour/ardour_ui.cc:2078
+#: gtk2_ardour/ardour_ui.cc:2631
msgid "No audio files were ready for cleanup"
msgstr "Aucun fichier audio n'est susceptible d'être nettoyé"
-#: gtk2_ardour/ardour_ui.cc:2082
+#: gtk2_ardour/ardour_ui.cc:2635
msgid ""
"If this seems suprising, \n"
"check for any existing snapshots.\n"
@@ -646,23 +894,23 @@ msgstr ""
"Ceux-ci peuvent contenir des régions ayant besoin de certains\n"
"fichiers audio inutilisés pour exister."
-#: gtk2_ardour/ardour_ui.cc:2091
+#: gtk2_ardour/ardour_ui.cc:2644
msgid "ardour: cleanup"
msgstr "ardour : nettoyage"
-#: gtk2_ardour/ardour_ui.cc:2127 gtk2_ardour/ardour_ui.cc:2133
+#: gtk2_ardour/ardour_ui.cc:2680 gtk2_ardour/ardour_ui.cc:2686
msgid "files were"
msgstr " "
-#: gtk2_ardour/ardour_ui.cc:2129 gtk2_ardour/ardour_ui.cc:2135
+#: gtk2_ardour/ardour_ui.cc:2682 gtk2_ardour/ardour_ui.cc:2688
msgid "file was"
msgstr " "
-#: gtk2_ardour/ardour_ui.cc:2176
+#: gtk2_ardour/ardour_ui.cc:2729
msgid "Are you sure you want to cleanup?"
msgstr "Voulez-vous vraiment lancer le nettoyage ?"
-#: gtk2_ardour/ardour_ui.cc:2181
+#: gtk2_ardour/ardour_ui.cc:2734
msgid ""
"Cleanup is a destructive operation.\n"
"ALL undo/redo information will be lost if you cleanup.\n"
@@ -671,22 +919,21 @@ msgid ""
msgstr ""
"Le nettoyage est une opération destructrice.\n"
"TOUTES les opérations d'annulation seront perdues.\n"
-"Les fichiers audio inutilisés seront déplacés dans un dossier « dead_sounds "
-"»."
+"Les fichiers audio inutilisés seront déplacés dans un dossier « dead_sounds »."
-#: gtk2_ardour/ardour_ui.cc:2187
+#: gtk2_ardour/ardour_ui.cc:2740
msgid "Clean Up"
msgstr "Nettoyer"
-#: gtk2_ardour/ardour_ui.cc:2190
+#: gtk2_ardour/ardour_ui.cc:2743
msgid "CleanupDialog"
msgstr "Fenêtre de nettoyage"
-#: gtk2_ardour/ardour_ui.cc:2218
+#: gtk2_ardour/ardour_ui.cc:2771
msgid "cleaned files"
msgstr "fichiers nettoyés"
-#: gtk2_ardour/ardour_ui.cc:2219
+#: gtk2_ardour/ardour_ui.cc:2772
msgid ""
"The following %1 %2 not in use and \n"
"have been moved to:\n"
@@ -703,11 +950,11 @@ msgstr ""
"un espace supplémentaire de\n"
"%4 %5bytes.\n"
-#: gtk2_ardour/ardour_ui.cc:2247
+#: gtk2_ardour/ardour_ui.cc:2800
msgid "deleted file"
msgstr "fichier effacé"
-#: gtk2_ardour/ardour_ui.cc:2248
+#: gtk2_ardour/ardour_ui.cc:2801
msgid ""
"The following %1 %2 deleted from\n"
"%3,\n"
@@ -717,12 +964,12 @@ msgstr ""
"%3,\n"
"%4 %5octets d'espace disque ont été libérés."
-#: gtk2_ardour/ardour_ui.cc:2366
+#: gtk2_ardour/ardour_ui.cc:2919
msgid "Recording was stopped because your system could not keep up."
msgstr ""
"L'enregistrement s'est arrêté car votre système n'était pas assez rapide."
-#: gtk2_ardour/ardour_ui.cc:2377
+#: gtk2_ardour/ardour_ui.cc:2930
msgid ""
"The disk system on your computer\n"
"was not able to keep up with Ardour.\n"
@@ -731,7 +978,7 @@ msgid ""
"quickly enough to keep up with recording.\n"
msgstr "Le disque dur n'est pas assez rapide en écriture.\n"
-#: gtk2_ardour/ardour_ui.cc:2396
+#: gtk2_ardour/ardour_ui.cc:2949
msgid ""
"The disk system on your computer\n"
"was not able to keep up with Ardour.\n"
@@ -740,7 +987,11 @@ msgid ""
"quickly enough to keep up with playback.\n"
msgstr "Le disque dur n'est pas assez rapide en lecture.\n"
-#: gtk2_ardour/ardour_ui.cc:2417
+#: gtk2_ardour/ardour_ui.cc:2971
+msgid "Crash Recovery"
+msgstr "Récupération après un crash"
+
+#: gtk2_ardour/ardour_ui.cc:2972
msgid ""
"This session appears to have been in\n"
"middle of recording when ardour or\n"
@@ -755,762 +1006,744 @@ msgstr ""
"\n"
"Vous pouvez récupérer ou ignorer les données de l'enregistrement.\n"
-#: gtk2_ardour/ardour_ui.cc:2427
-msgid "Recover from crash"
-msgstr "Récupérer les données"
-
-#: gtk2_ardour/ardour_ui.cc:2428
+#: gtk2_ardour/ardour_ui.cc:2984
msgid "Ignore crash data"
msgstr "Ignorer les données"
-#: gtk2_ardour/ardour_ui.cc:2446
-msgid "Could not disconnect from JACK"
-msgstr "Impossible de se déconnecter de JACK"
-
-#: gtk2_ardour/ardour_ui.cc:2459
-msgid "Could not reconnect to JACK"
-msgstr "Impossible de se reconnecter à JACK"
-
-#: gtk2_ardour/ardour_ui2.cc:62
-msgid "UI: cannot setup editor"
-msgstr "IHM : impossible d'initialiser l'éditeur"
-
-#: gtk2_ardour/ardour_ui2.cc:67
-msgid "UI: cannot setup mixer"
-msgstr "IHM : impossible d'initialiser la console de mixage"
-
-#: gtk2_ardour/ardour_ui2.cc:243
-msgid "Play from playhead"
-msgstr "Démarrer la lecture"
-
-#: gtk2_ardour/ardour_ui2.cc:244
-msgid "Stop playback"
-msgstr "Stopper la lecture"
-
-#: gtk2_ardour/ardour_ui2.cc:245
-msgid "Play range/selection"
-msgstr "Lire la zone de sélection"
-
-#: gtk2_ardour/ardour_ui2.cc:246
-msgid "Go to start of session"
-msgstr "début de la session"
-
-#: gtk2_ardour/ardour_ui2.cc:247
-msgid "Go to end of session"
-msgstr "fin de session"
-
-#: gtk2_ardour/ardour_ui2.cc:248
-msgid "Play loop range"
-msgstr "Lire la boucle"
-
-#: gtk2_ardour/ardour_ui2.cc:250
-msgid "Return to last playback start when stopped"
-msgstr "Revenir en début de lecture lors de l'arrêt"
-
-#: gtk2_ardour/ardour_ui2.cc:251
-msgid "Start playback after any locate"
-msgstr "Démarrer quand la tête de lecture est déplacée"
-
-#: gtk2_ardour/ardour_ui2.cc:252
-msgid "Be sensible about input monitoring"
-msgstr "Monitoring d'entrée automatique"
-
-#: gtk2_ardour/ardour_ui2.cc:253
-msgid "Start recording at auto-punch start"
-msgstr "Ne démarrer l'enregistrement qu'au point punch-in"
-
-#: gtk2_ardour/ardour_ui2.cc:254
-msgid "Stop recording at auto-punch end"
-msgstr "Arrêter l'enregistrement au point punch-out"
-
-#: gtk2_ardour/ardour_ui2.cc:255
-msgid "Enable/Disable audio click"
-msgstr "(dés)activer le métronome"
-
-#: gtk2_ardour/ardour_ui2.cc:256
-msgid "Positional sync source"
-msgstr "Source de synchro de position"
-
-#: gtk2_ardour/ardour_ui2.cc:257
-msgid "Does Ardour control the time?"
-msgstr "Est-ce qu'Ardour contrôle l'horloge ?"
-
-#: gtk2_ardour/ardour_ui2.cc:258
-msgid "Shuttle speed control"
-msgstr "Variateur de vitesse"
-
-#: gtk2_ardour/ardour_ui2.cc:259
-#, c-format
-msgid "Select semitones or %%-age for speed display"
-msgstr "Vitesse affichée en %% ou en demi-tons"
-
-#: gtk2_ardour/ardour_ui2.cc:260
-msgid "Current transport speed"
-msgstr "Vitesse de lecture actuelle"
-
-#: gtk2_ardour/ardour_ui2.cc:280
-msgid "Primary clock"
-msgstr "Horloge principale"
-
-#: gtk2_ardour/ardour_ui2.cc:281
-msgid "secondary clock"
-msgstr "Horloge secondaire"
+#: gtk2_ardour/ardour_ui.cc:2985
+msgid "Recover from crash"
+msgstr "Récupérer les données"
-#: gtk2_ardour/ardour_ui2.cc:307
-msgid ""
-"When active, something is soloed.\n"
-"Click to de-solo everything"
-msgstr ""
-"Actif lorsque quelque chose est en solo\n"
-"Cliquez pour désactiver tous les solos."
+#: gtk2_ardour/ardour_ui.cc:3005
+msgid "Sample Rate Mismatch"
+msgstr "Mauvais taux d'échantillonnage "
-#: gtk2_ardour/ardour_ui2.cc:308
+#: gtk2_ardour/ardour_ui.cc:3006
msgid ""
-"When active, auditioning is taking place\n"
-"Click to stop the audition"
+"This session was created with a sample rate of %1 Hz\n"
+"\n"
+"The audioengine is currently running at %2 Hz\n"
msgstr ""
-"Actif lorsqu'une écoute est en cours\n"
-"Cliquez pour stopper l'écoute."
-
-#: gtk2_ardour/ardour_ui2.cc:336 gtk2_ardour/ardour_ui2.cc:775
-#: gtk2_ardour/ardour_ui2.cc:831 gtk2_ardour/ardour_ui_options.cc:918
-msgid "sprung"
-msgstr "ressort"
+"Cette session a été crée avec un taux d'échantillonnage de %1 Hz\n"
+"\n"
+"Le moteur audio fonctionne actuellement à %2 Hz\n"
-#: gtk2_ardour/ardour_ui2.cc:337 gtk2_ardour/ardour_ui2.cc:777
-#: gtk2_ardour/ardour_ui_options.cc:929
-msgid "wheel"
-msgstr "molette"
+#: gtk2_ardour/ardour_ui.cc:3015
+msgid "Do not load session"
+msgstr "Ne pas charger la session"
-#: gtk2_ardour/ardour_ui2.cc:545
-msgid "Maximum speed"
-msgstr "Vitesse maximale"
+#: gtk2_ardour/ardour_ui.cc:3016
+msgid "Load session anyway"
+msgstr "Charger quand-même la session"
-#: gtk2_ardour/ardour_ui2.cc:787 gtk2_ardour/ardour_ui2.cc:810
-msgid "stop"
-msgstr "Stop"
+#: gtk2_ardour/ardour_ui.cc:3037
+msgid "Could not disconnect from JACK"
+msgstr "Impossible de se déconnecter de JACK"
-#: gtk2_ardour/ardour_ui2.cc:829
-msgid "-0.55"
-msgstr "-0.55"
+#: gtk2_ardour/ardour_ui.cc:3050
+msgid "Could not reconnect to JACK"
+msgstr "Impossible de se reconnecter à JACK"
-#: gtk2_ardour/ardour_ui_dependents.cc:84
+#: gtk2_ardour/ardour_ui_dependents.cc:87
msgid "Ardour key bindings file not found at \"%1\" or contains errors."
-msgstr "Le fichier des raccourcis claviers d'Ardour est absent de \"%1\" ou il contient des erreurs."
+msgstr ""
+"Le fichier des raccourcis claviers d'Ardour est absent de \"%1\" ou il "
+"contient des erreurs."
-#: gtk2_ardour/ardour_ui_dialogs.cc:163 gtk2_ardour/playlist_selector.cc:73
+#: gtk2_ardour/ardour_ui_dialogs.cc:170 gtk2_ardour/playlist_selector.cc:73
msgid "close"
msgstr "fermer"
-#: gtk2_ardour/ardour_ui_ed.cc:81
+#: gtk2_ardour/ardour_ui_ed.cc:84
msgid "Session"
msgstr "Session"
-#: gtk2_ardour/ardour_ui_ed.cc:82 gtk2_ardour/ardour_ui_ed.cc:143
-#: gtk2_ardour/editor.cc:1625 gtk2_ardour/export_dialog.cc:125
-#: gtk2_ardour/export_dialog.cc:352 gtk2_ardour/export_dialog.cc:1061
-#: gtk2_ardour/export_dialog.cc:1065
-msgid "Export"
-msgstr "Exporter"
+#: gtk2_ardour/ardour_ui_ed.cc:85
+msgid "Import/Export"
+msgstr "Import/Export"
-#: gtk2_ardour/ardour_ui_ed.cc:83
+#: gtk2_ardour/ardour_ui_ed.cc:86 gtk2_ardour/editor.cc:595
+#: gtk2_ardour/editor.cc:666
+msgid "Regions"
+msgstr "Régions"
+
+#: gtk2_ardour/ardour_ui_ed.cc:87
msgid "Cleanup"
msgstr "Nettoyer"
-#: gtk2_ardour/ardour_ui_ed.cc:84 gtk2_ardour/option_editor.cc:130
+#: gtk2_ardour/ardour_ui_ed.cc:88 gtk2_ardour/option_editor.cc:144
msgid "Sync"
msgstr "Synchro"
-#: gtk2_ardour/ardour_ui_ed.cc:85 gtk2_ardour/ardour_ui_ed.cc:86
+#: gtk2_ardour/ardour_ui_ed.cc:89 gtk2_ardour/ardour_ui_ed.cc:90
+#: gtk2_ardour/engine_dialog.cc:343
msgid "Options"
msgstr "Options"
-#: gtk2_ardour/ardour_ui_ed.cc:87
+#: gtk2_ardour/ardour_ui_ed.cc:91
msgid "Help"
msgstr "Aide"
-#: gtk2_ardour/ardour_ui_ed.cc:88
+#: gtk2_ardour/ardour_ui_ed.cc:92
msgid "KeyMouse Actions"
msgstr "Souris"
-#: gtk2_ardour/ardour_ui_ed.cc:89
+#: gtk2_ardour/ardour_ui_ed.cc:93
msgid "Audio File Format"
msgstr "Format de fichiers audio"
-#: gtk2_ardour/ardour_ui_ed.cc:90
+#: gtk2_ardour/ardour_ui_ed.cc:94
msgid "Header"
msgstr "En-tête"
-#: gtk2_ardour/ardour_ui_ed.cc:91
+#: gtk2_ardour/ardour_ui_ed.cc:95
msgid "Data"
msgstr "Contenu"
-#: gtk2_ardour/ardour_ui_ed.cc:92
+#: gtk2_ardour/ardour_ui_ed.cc:96
msgid "Control Surfaces"
-msgstr "Télécommandes"
+msgstr "Surfaces de contrôle"
-#: gtk2_ardour/ardour_ui_ed.cc:93
+#: gtk2_ardour/ardour_ui_ed.cc:97
msgid "Metering"
msgstr "VU-mètre"
-#: gtk2_ardour/ardour_ui_ed.cc:94
+#: gtk2_ardour/ardour_ui_ed.cc:98
msgid "Fall off rate"
msgstr "Taux de chute"
-#: gtk2_ardour/ardour_ui_ed.cc:95
+#: gtk2_ardour/ardour_ui_ed.cc:99
msgid "Hold Time"
msgstr "Temps de maintien"
-#: gtk2_ardour/ardour_ui_ed.cc:99 gtk2_ardour/route_time_axis.cc:1308
-#: gtk2_ardour/new_session_dialog.cc:619
+#: gtk2_ardour/ardour_ui_ed.cc:100
+msgid "Denormal Handling"
+msgstr "échantillons dénormalisés"
+
+#: gtk2_ardour/ardour_ui_ed.cc:104 gtk2_ardour/new_session_dialog.cc:841
+#: gtk2_ardour/route_time_axis.cc:1345
msgid "New"
msgstr "Nouvelle..."
-#: gtk2_ardour/ardour_ui_ed.cc:101 gtk2_ardour/new_session_dialog.cc:606
+#: gtk2_ardour/ardour_ui_ed.cc:106 gtk2_ardour/new_session_dialog.cc:821
+#: gtk2_ardour/new_session_dialog.cc:833
msgid "Open"
msgstr "Ouvrir..."
-#: gtk2_ardour/ardour_ui_ed.cc:102
+#: gtk2_ardour/ardour_ui_ed.cc:107
msgid "Recent"
msgstr "Sessions récentes..."
-#: gtk2_ardour/ardour_ui_ed.cc:103 gtk2_ardour/io_selector.cc:59
+#: gtk2_ardour/ardour_ui_ed.cc:108 gtk2_ardour/io_selector.cc:59
#: gtk2_ardour/io_selector.cc:747 gtk2_ardour/connection_editor.cc:58
msgid "Close"
msgstr "Fermer"
-#: gtk2_ardour/ardour_ui_ed.cc:106 gtk2_ardour/route_params_ui.cc:513
+#: gtk2_ardour/ardour_ui_ed.cc:111 gtk2_ardour/route_params_ui.cc:513
msgid "Add Track/Bus"
msgstr "Ajouter piste ou bus..."
-#: gtk2_ardour/ardour_ui_ed.cc:118
+#: gtk2_ardour/ardour_ui_ed.cc:123
msgid "Connect"
msgstr "Connecter"
-#: gtk2_ardour/ardour_ui_ed.cc:126
+#: gtk2_ardour/ardour_ui_ed.cc:131
msgid "Snapshot"
msgstr "Prendre un cliché..."
-#: gtk2_ardour/ardour_ui_ed.cc:129
+#: gtk2_ardour/ardour_ui_ed.cc:134
msgid "Save Template..."
msgstr "Enregistrer comme modèle..."
-#: gtk2_ardour/ardour_ui_ed.cc:132
+#: gtk2_ardour/ardour_ui_ed.cc:137
msgid "Export session to audiofile..."
msgstr "la session vers un fichier audio..."
-#: gtk2_ardour/ardour_ui_ed.cc:135
+#: gtk2_ardour/ardour_ui_ed.cc:140
msgid "Export selection to audiofile..."
msgstr "la sélection vers un fichier audio..."
-#: gtk2_ardour/ardour_ui_ed.cc:139
+#: gtk2_ardour/ardour_ui_ed.cc:144
msgid "Export range markers to audiofile..."
msgstr "les intervalles vers des fichiers audio..."
-#: gtk2_ardour/ardour_ui_ed.cc:146
+#: gtk2_ardour/ardour_ui_ed.cc:148 gtk2_ardour/editor.cc:1734
+#: gtk2_ardour/export_dialog.cc:125 gtk2_ardour/export_dialog.cc:374
+#: gtk2_ardour/export_dialog.cc:1122 gtk2_ardour/export_dialog.cc:1126
+msgid "Export"
+msgstr "Exporter"
+
+#: gtk2_ardour/ardour_ui_ed.cc:151
msgid "Cleanup unused sources"
msgstr "les fichiers audio inutilisés..."
-#: gtk2_ardour/ardour_ui_ed.cc:148
+#: gtk2_ardour/ardour_ui_ed.cc:153
msgid "Flush wastebasket"
msgstr "Vider la corbeille..."
-#: gtk2_ardour/ardour_ui_ed.cc:154
+#: gtk2_ardour/ardour_ui_ed.cc:159
msgid "JACK"
msgstr "JACK"
-#: gtk2_ardour/ardour_ui_ed.cc:155
+#: gtk2_ardour/ardour_ui_ed.cc:160
msgid "Latency"
msgstr "Latence (trames/période)"
-#: gtk2_ardour/ardour_ui_ed.cc:157
+#: gtk2_ardour/ardour_ui_ed.cc:162
msgid "Reconnect"
msgstr "Reconnecter"
-#: gtk2_ardour/ardour_ui_ed.cc:160 gtk2_ardour/mixer_strip.cc:510
-#: gtk2_ardour/mixer_strip.cc:572
+#: gtk2_ardour/ardour_ui_ed.cc:165 gtk2_ardour/mixer_strip.cc:504
+#: gtk2_ardour/mixer_strip.cc:566
msgid "Disconnect"
msgstr "Déconnecter"
-#: gtk2_ardour/ardour_ui_ed.cc:187
+#: gtk2_ardour/ardour_ui_ed.cc:192
msgid "Windows"
msgstr "Fenêtres"
-#: gtk2_ardour/ardour_ui_ed.cc:188
+#: gtk2_ardour/ardour_ui_ed.cc:193
msgid "Quit"
msgstr "Quitter"
-#: gtk2_ardour/ardour_ui_ed.cc:192
+#: gtk2_ardour/ardour_ui_ed.cc:197
msgid "Maximise Editor Space"
msgstr "Plein écran"
-#: gtk2_ardour/ardour_ui_ed.cc:194
+#: gtk2_ardour/ardour_ui_ed.cc:199
msgid "Show Editor"
msgstr "Éditeur..."
-#: gtk2_ardour/ardour_ui_ed.cc:195
+#: gtk2_ardour/ardour_ui_ed.cc:200
msgid "Show Mixer"
msgstr "Console de mixage..."
-#: gtk2_ardour/ardour_ui_ed.cc:196 gtk2_ardour/option_editor.cc:103
-msgid "Options Editor"
-msgstr "Options..."
+#: gtk2_ardour/ardour_ui_ed.cc:201 gtk2_ardour/option_editor.cc:117
+msgid "Preferences"
+msgstr "Préférences"
-#: gtk2_ardour/ardour_ui_ed.cc:197 gtk2_ardour/route_params_ui.cc:143
+#: gtk2_ardour/ardour_ui_ed.cc:202 gtk2_ardour/route_params_ui.cc:143
#: gtk2_ardour/route_params_ui.cc:659
msgid "Track/Bus Inspector"
msgstr "Pistes et bus..."
-#: gtk2_ardour/ardour_ui_ed.cc:199 gtk2_ardour/connection_editor.cc:146
+#: gtk2_ardour/ardour_ui_ed.cc:204 gtk2_ardour/connection_editor.cc:146
#: gtk2_ardour/connection_editor.cc:147
msgid "Connections"
msgstr "Connexions..."
-#: gtk2_ardour/ardour_ui_ed.cc:201 gtk2_ardour/location_ui.cc:577
+#: gtk2_ardour/ardour_ui_ed.cc:206 gtk2_ardour/location_ui.cc:611
msgid "Locations"
msgstr "Repères et intervalles..."
-#: gtk2_ardour/ardour_ui_ed.cc:203
+#: gtk2_ardour/ardour_ui_ed.cc:208
msgid "Big Clock"
msgstr "Grande horloge..."
-#: gtk2_ardour/ardour_ui_ed.cc:205
+#: gtk2_ardour/ardour_ui_ed.cc:210
msgid "About"
msgstr "À propos..."
-#: gtk2_ardour/ardour_ui_ed.cc:206
-msgid "Colors"
-msgstr "Couleurs..."
+#: gtk2_ardour/ardour_ui_ed.cc:211
+msgid "Theme Manager"
+msgstr "Apparence..."
-#: gtk2_ardour/ardour_ui_ed.cc:208
+#: gtk2_ardour/ardour_ui_ed.cc:212
+msgid "Keybindings"
+msgstr "Raccourcis clavier"
+
+#: gtk2_ardour/ardour_ui_ed.cc:214
msgid "Add Audio Track"
msgstr "Ajouter une piste audio"
-#: gtk2_ardour/ardour_ui_ed.cc:210
+#: gtk2_ardour/ardour_ui_ed.cc:216
msgid "Add Audio Bus"
msgstr "Ajouter un bus audio"
-#: gtk2_ardour/ardour_ui_ed.cc:212
+#: gtk2_ardour/ardour_ui_ed.cc:218
msgid "Save"
msgstr "Enregistrer"
-#: gtk2_ardour/ardour_ui_ed.cc:214 gtk2_ardour/editor_actions.cc:258
+#: gtk2_ardour/ardour_ui_ed.cc:220 gtk2_ardour/editor_actions.cc:404
msgid "Remove Last Capture"
msgstr "Détruire le dernier enregistr."
-#: gtk2_ardour/ardour_ui_ed.cc:221
+#: gtk2_ardour/ardour_ui_ed.cc:227
msgid "Transport"
msgstr "Commandes"
-#: gtk2_ardour/ardour_ui_ed.cc:227 gtk2_ardour/sfdb_ui.cc:62
+#: gtk2_ardour/ardour_ui_ed.cc:233 gtk2_ardour/engine_dialog.cc:59
+#: gtk2_ardour/sfdb_ui.cc:178
msgid "Stop"
msgstr "Arrêter"
-#: gtk2_ardour/ardour_ui_ed.cc:230
+#: gtk2_ardour/ardour_ui_ed.cc:236
msgid "Roll"
msgstr "Roll"
-#: gtk2_ardour/ardour_ui_ed.cc:234
+#: gtk2_ardour/ardour_ui_ed.cc:240
msgid "Start/Stop"
msgstr "Lecture/Arrêt"
-#: gtk2_ardour/ardour_ui_ed.cc:237
+#: gtk2_ardour/ardour_ui_ed.cc:243
msgid "Stop + Forget Capture"
msgstr "Arrêt avec destruction"
-#: gtk2_ardour/ardour_ui_ed.cc:247
+#: gtk2_ardour/ardour_ui_ed.cc:253
msgid "Transition To Roll"
msgstr "Lecture avant"
-#: gtk2_ardour/ardour_ui_ed.cc:251
+#: gtk2_ardour/ardour_ui_ed.cc:257
msgid "Transition To Reverse"
msgstr "Lecture arrière"
-#: gtk2_ardour/ardour_ui_ed.cc:256
+#: gtk2_ardour/ardour_ui_ed.cc:262
msgid "Play Loop Range"
msgstr "Lire la boucle"
-#: gtk2_ardour/ardour_ui_ed.cc:259
+#: gtk2_ardour/ardour_ui_ed.cc:265
msgid "Play Selection"
msgstr "Lire la zone de sélection"
-#: gtk2_ardour/ardour_ui_ed.cc:263
+#: gtk2_ardour/ardour_ui_ed.cc:269
msgid "Enable Record"
msgstr "enregistrement"
-#: gtk2_ardour/ardour_ui_ed.cc:266
+#: gtk2_ardour/ardour_ui_ed.cc:271
+msgid "Start Recording"
+msgstr "Démarrer l'enregistrement"
+
+#: gtk2_ardour/ardour_ui_ed.cc:274
msgid "Rewind"
msgstr "Rembobiner"
-#: gtk2_ardour/ardour_ui_ed.cc:269
+#: gtk2_ardour/ardour_ui_ed.cc:277
msgid "Rewind (Slow)"
msgstr "Rembobiner (lent)"
-#: gtk2_ardour/ardour_ui_ed.cc:272
+#: gtk2_ardour/ardour_ui_ed.cc:280
msgid "Rewind (Fast)"
msgstr "Rembobiner (rapide)"
-#: gtk2_ardour/ardour_ui_ed.cc:275
+#: gtk2_ardour/ardour_ui_ed.cc:283
msgid "Forward"
msgstr "Avance rapide"
-#: gtk2_ardour/ardour_ui_ed.cc:278
+#: gtk2_ardour/ardour_ui_ed.cc:286
msgid "Forward (Slow)"
msgstr "Avancer (lent)"
-#: gtk2_ardour/ardour_ui_ed.cc:281
+#: gtk2_ardour/ardour_ui_ed.cc:289
msgid "Forward (Fast)"
msgstr "Avancer (rapide)"
-#: gtk2_ardour/ardour_ui_ed.cc:284
+#: gtk2_ardour/ardour_ui_ed.cc:292
msgid "Goto Zero"
msgstr "temps zéro"
-#: gtk2_ardour/ardour_ui_ed.cc:287
+#: gtk2_ardour/ardour_ui_ed.cc:295
msgid "Goto Start"
msgstr "début"
-#: gtk2_ardour/ardour_ui_ed.cc:290
+#: gtk2_ardour/ardour_ui_ed.cc:298
msgid "Goto End"
msgstr "fin"
-#: gtk2_ardour/ardour_ui_ed.cc:313
+#: gtk2_ardour/ardour_ui_ed.cc:302
+msgid "Focus On Clock"
+msgstr "Se fixer sur l'horloge"
+
+#: gtk2_ardour/ardour_ui_ed.cc:325
msgid "Sync startup to video"
msgstr "Sync début avec vidéo"
-#: gtk2_ardour/ardour_ui_ed.cc:314
+#: gtk2_ardour/ardour_ui_ed.cc:326
msgid "Time master"
msgstr "Horloge maître"
-#: gtk2_ardour/ardour_ui_ed.cc:317
+#: gtk2_ardour/ardour_ui_ed.cc:329
msgid "Toggle Record Enable Track1"
msgstr "Bascule Enregistrement piste 1"
-#: gtk2_ardour/ardour_ui_ed.cc:319
+#: gtk2_ardour/ardour_ui_ed.cc:331
msgid "Toggle Record Enable Track2"
msgstr "Bascule Enregistrement piste 2"
-#: gtk2_ardour/ardour_ui_ed.cc:321
+#: gtk2_ardour/ardour_ui_ed.cc:333
msgid "Toggle Record Enable Track3"
msgstr "Bascule Enregistrement piste 3"
-#: gtk2_ardour/ardour_ui_ed.cc:323
+#: gtk2_ardour/ardour_ui_ed.cc:335
msgid "Toggle Record Enable Track4"
msgstr "Bascule Enregistrement piste 4"
-#: gtk2_ardour/ardour_ui_ed.cc:325
+#: gtk2_ardour/ardour_ui_ed.cc:337
msgid "Toggle Record Enable Track5"
msgstr "Bascule Enregistrement piste 5"
-#: gtk2_ardour/ardour_ui_ed.cc:327
+#: gtk2_ardour/ardour_ui_ed.cc:339
msgid "Toggle Record Enable Track6"
msgstr "Bascule Enregistrement piste 6"
-#: gtk2_ardour/ardour_ui_ed.cc:329
+#: gtk2_ardour/ardour_ui_ed.cc:341
msgid "Toggle Record Enable Track7"
msgstr "Bascule Enregistrement piste 7"
-#: gtk2_ardour/ardour_ui_ed.cc:331
+#: gtk2_ardour/ardour_ui_ed.cc:343
msgid "Toggle Record Enable Track8"
msgstr "Bascule Enregistrement piste 8"
-#: gtk2_ardour/ardour_ui_ed.cc:333
+#: gtk2_ardour/ardour_ui_ed.cc:345
msgid "Toggle Record Enable Track9"
msgstr "Bascule Enregistrement piste 9"
-#: gtk2_ardour/ardour_ui_ed.cc:335
+#: gtk2_ardour/ardour_ui_ed.cc:347
msgid "Toggle Record Enable Track10"
msgstr "Bascule Enregistrement piste 10"
-#: gtk2_ardour/ardour_ui_ed.cc:337
+#: gtk2_ardour/ardour_ui_ed.cc:349
msgid "Toggle Record Enable Track11"
msgstr "Bascule Enregistrement piste 11"
-#: gtk2_ardour/ardour_ui_ed.cc:339
+#: gtk2_ardour/ardour_ui_ed.cc:351
msgid "Toggle Record Enable Track12"
msgstr "Bascule Enregistrement piste 12"
-#: gtk2_ardour/ardour_ui_ed.cc:341
+#: gtk2_ardour/ardour_ui_ed.cc:353
msgid "Toggle Record Enable Track13"
msgstr "Bascule Enregistrement piste 13"
-#: gtk2_ardour/ardour_ui_ed.cc:343
+#: gtk2_ardour/ardour_ui_ed.cc:355
msgid "Toggle Record Enable Track14"
msgstr "Bascule Enregistrement piste 14"
-#: gtk2_ardour/ardour_ui_ed.cc:345
+#: gtk2_ardour/ardour_ui_ed.cc:357
msgid "Toggle Record Enable Track15"
msgstr "Bascule Enregistrement piste 15"
-#: gtk2_ardour/ardour_ui_ed.cc:347
+#: gtk2_ardour/ardour_ui_ed.cc:359
msgid "Toggle Record Enable Track16"
msgstr "Bascule Enregistrement piste 16"
-#: gtk2_ardour/ardour_ui_ed.cc:349
+#: gtk2_ardour/ardour_ui_ed.cc:361
msgid "Toggle Record Enable Track17"
msgstr "Bascule Enregistrement piste 17"
-#: gtk2_ardour/ardour_ui_ed.cc:351
+#: gtk2_ardour/ardour_ui_ed.cc:363
msgid "Toggle Record Enable Track18"
msgstr "Bascule Enregistrement piste 18"
-#: gtk2_ardour/ardour_ui_ed.cc:353
+#: gtk2_ardour/ardour_ui_ed.cc:365
msgid "Toggle Record Enable Track19"
msgstr "Bascule Enregistrement piste 19"
-#: gtk2_ardour/ardour_ui_ed.cc:355
+#: gtk2_ardour/ardour_ui_ed.cc:367
msgid "Toggle Record Enable Track20"
msgstr "Bascule Enregistrement piste 20"
-#: gtk2_ardour/ardour_ui_ed.cc:357
+#: gtk2_ardour/ardour_ui_ed.cc:369
msgid "Toggle Record Enable Track21"
msgstr "Bascule Enregistrement piste 21"
-#: gtk2_ardour/ardour_ui_ed.cc:359
+#: gtk2_ardour/ardour_ui_ed.cc:371
msgid "Toggle Record Enable Track22"
msgstr "Bascule Enregistrement piste 22"
-#: gtk2_ardour/ardour_ui_ed.cc:361
+#: gtk2_ardour/ardour_ui_ed.cc:373
msgid "Toggle Record Enable Track23"
msgstr "Bascule Enregistrement piste 23"
-#: gtk2_ardour/ardour_ui_ed.cc:363
+#: gtk2_ardour/ardour_ui_ed.cc:375
msgid "Toggle Record Enable Track24"
msgstr "Bascule Enregistrement piste 24"
-#: gtk2_ardour/ardour_ui_ed.cc:365
+#: gtk2_ardour/ardour_ui_ed.cc:377
msgid "Toggle Record Enable Track25"
msgstr "Bascule Enregistrement piste 25"
-#: gtk2_ardour/ardour_ui_ed.cc:367
+#: gtk2_ardour/ardour_ui_ed.cc:379
msgid "Toggle Record Enable Track26"
msgstr "Bascule Enregistrement piste 26"
-#: gtk2_ardour/ardour_ui_ed.cc:369
+#: gtk2_ardour/ardour_ui_ed.cc:381
msgid "Toggle Record Enable Track27"
msgstr "Bascule Enregistrement piste 27"
-#: gtk2_ardour/ardour_ui_ed.cc:371
+#: gtk2_ardour/ardour_ui_ed.cc:383
msgid "Toggle Record Enable Track28"
msgstr "Bascule Enregistrement piste 28"
-#: gtk2_ardour/ardour_ui_ed.cc:373
+#: gtk2_ardour/ardour_ui_ed.cc:385
msgid "Toggle Record Enable Track29"
msgstr "Bascule Enregistrement piste 29"
-#: gtk2_ardour/ardour_ui_ed.cc:375
+#: gtk2_ardour/ardour_ui_ed.cc:387
msgid "Toggle Record Enable Track30"
msgstr "Bascule Enregistrement piste 30"
-#: gtk2_ardour/ardour_ui_ed.cc:377
+#: gtk2_ardour/ardour_ui_ed.cc:389
msgid "Toggle Record Enable Track31"
msgstr "Bascule Enregistrement piste 31"
-#: gtk2_ardour/ardour_ui_ed.cc:379
+#: gtk2_ardour/ardour_ui_ed.cc:391
msgid "Toggle Record Enable Track32"
msgstr "Bascule Enregistrement piste 32"
-#: gtk2_ardour/ardour_ui_ed.cc:384
+#: gtk2_ardour/ardour_ui_ed.cc:396
msgid "Percentage"
msgstr "pourcentage"
-#: gtk2_ardour/ardour_ui_ed.cc:385
+#: gtk2_ardour/ardour_ui_ed.cc:397
msgid "Semitones"
msgstr "demi-tons"
-#: gtk2_ardour/ardour_ui_ed.cc:389
+#: gtk2_ardour/ardour_ui_ed.cc:401
msgid "Send MTC"
msgstr "Envoi MTC (Midi Time Code)"
-#: gtk2_ardour/ardour_ui_ed.cc:391
+#: gtk2_ardour/ardour_ui_ed.cc:403
msgid "Send MMC"
msgstr "Envoi MMC (Midi Machine Control)"
-#: gtk2_ardour/ardour_ui_ed.cc:393
+#: gtk2_ardour/ardour_ui_ed.cc:405
msgid "Use MMC"
msgstr "Réception MMC (Midi Machine Control)"
-#: gtk2_ardour/ardour_ui_ed.cc:395
+#: gtk2_ardour/ardour_ui_ed.cc:407
msgid "Send MIDI feedback"
msgstr "Envoi des réponses MIDI"
-#: gtk2_ardour/ardour_ui_ed.cc:397
-msgid "Use MIDI control"
-msgstr "Réception des contrôles MIDI"
-
-#: gtk2_ardour/ardour_ui_ed.cc:400
+#: gtk2_ardour/ardour_ui_ed.cc:410
msgid "Use OSC"
msgstr "Utiliser OSC (OpenSound Control)"
-#: gtk2_ardour/ardour_ui_ed.cc:405
+#: gtk2_ardour/ardour_ui_ed.cc:415
+msgid "Sync Editor and Mixer track order"
+msgstr "Ordre des pistes identique entre éditeur et mixage"
+
+#: gtk2_ardour/ardour_ui_ed.cc:416
msgid "Stop plugins with transport"
msgstr "Arrêt des plugins lors des déplacements"
-#: gtk2_ardour/ardour_ui_ed.cc:406
+#: gtk2_ardour/ardour_ui_ed.cc:417
msgid "Verify remove last capture"
msgstr "Confirmer la destruction du dernier enregistr."
-#: gtk2_ardour/ardour_ui_ed.cc:407
+#: gtk2_ardour/ardour_ui_ed.cc:418
+msgid "Make periodic safety backups"
+msgstr "Sauvegardes de secours périodiques"
+
+#: gtk2_ardour/ardour_ui_ed.cc:419
msgid "Stop recording on xrun"
msgstr "Arrêt d'enregistr. en cas de désynchro (xrun)"
-#: gtk2_ardour/ardour_ui_ed.cc:408
+#: gtk2_ardour/ardour_ui_ed.cc:420
msgid "Stop transport at session end"
msgstr "Stopper la lecture en fin de session"
-#: gtk2_ardour/ardour_ui_ed.cc:409
+#: gtk2_ardour/ardour_ui_ed.cc:421
msgid "-12dB gain reduce ffwd/rewind"
msgstr "-12 dB pendant le déplacement rapide"
-#: gtk2_ardour/ardour_ui_ed.cc:410
+#: gtk2_ardour/ardour_ui_ed.cc:422
msgid "Rec-enable stays engaged at stop"
msgstr "Rester en enregistrement à l'arrêt"
-#: gtk2_ardour/ardour_ui_ed.cc:411
+#: gtk2_ardour/ardour_ui_ed.cc:423
msgid "Region equivalents overlap"
msgstr "Chevauch. des régions équivalentes"
-#: gtk2_ardour/ardour_ui_ed.cc:413
+#: gtk2_ardour/ardour_ui_ed.cc:424
+msgid "Primary Clock delta to edit point"
+msgstr "delta d'Horloge Primaire au point d'édition"
+
+#: gtk2_ardour/ardour_ui_ed.cc:425
+msgid "Secondary Clock delta to edit point"
+msgstr "delta d'Horloge Secondaire au point d'édition"
+
+#: gtk2_ardour/ardour_ui_ed.cc:426
+msgid "Enable Editor Meters"
+msgstr "Activer les VU-mètres de l'éditeur"
+
+#: gtk2_ardour/ardour_ui_ed.cc:427
+msgid "Always copy imported files"
+msgstr "Toujours recopier les fichiers importés"
+
+#: gtk2_ardour/ardour_ui_ed.cc:428
+msgid "Use narrow mixer strips"
+msgstr "Tranches de mix étroites"
+
+#: gtk2_ardour/ardour_ui_ed.cc:432
+msgid "Use DC bias"
+msgstr "Utiliser la tension de polarisation"
+
+#: gtk2_ardour/ardour_ui_ed.cc:434
+msgid "No processor handling"
+msgstr "Aucun traitement"
+
+#: gtk2_ardour/ardour_ui_ed.cc:443 gtk2_ardour/ardour_ui_ed.cc:454
+msgid "Use FlushToZero"
+msgstr "Utiliser FlushToZero"
+
+#: gtk2_ardour/ardour_ui_ed.cc:445 gtk2_ardour/ardour_ui_ed.cc:459
+msgid "Use DenormalsAreZero"
+msgstr "Utiliser DenormalsAreZero"
+
+#: gtk2_ardour/ardour_ui_ed.cc:447 gtk2_ardour/ardour_ui_ed.cc:464
+msgid "Use FlushToZero & DenormalsAreZero"
+msgstr "Utiliser FlushToZero·&·DenormalsAreZero"
+
+#: gtk2_ardour/ardour_ui_ed.cc:470
msgid "Do not run plugins while recording"
msgstr "Arrêt des plugins à l'enregistrement"
-#: gtk2_ardour/ardour_ui_ed.cc:416
+#: gtk2_ardour/ardour_ui_ed.cc:472
msgid "Latched solo"
msgstr "Plusieurs solos possibles"
-#: gtk2_ardour/ardour_ui_ed.cc:418
+#: gtk2_ardour/ardour_ui_ed.cc:474
msgid "Show solo muting"
msgstr "Le solo montre les sourdines"
-#: gtk2_ardour/ardour_ui_ed.cc:426 gtk2_ardour/ardour_ui_ed.cc:434
-#: gtk2_ardour/audio_clock.cc:1805
+#: gtk2_ardour/ardour_ui_ed.cc:482 gtk2_ardour/ardour_ui_ed.cc:490
+#: gtk2_ardour/audio_clock.cc:1890
msgid "Off"
msgstr "(rien)"
-#: gtk2_ardour/ardour_ui_ed.cc:427 gtk2_ardour/editor.cc:1246
-#: gtk2_ardour/editor.cc:1263
+#: gtk2_ardour/ardour_ui_ed.cc:483 gtk2_ardour/editor.cc:1345
+#: gtk2_ardour/editor.cc:1348 gtk2_ardour/editor.cc:1367
+#: gtk2_ardour/editor.cc:1370
msgid "Slowest"
msgstr "Très lent"
-#: gtk2_ardour/ardour_ui_ed.cc:428 gtk2_ardour/editor.cc:1247
-#: gtk2_ardour/editor.cc:1264
+#: gtk2_ardour/ardour_ui_ed.cc:484 gtk2_ardour/editor.cc:1349
+#: gtk2_ardour/editor.cc:1371
msgid "Slow"
msgstr "Lent"
-#: gtk2_ardour/ardour_ui_ed.cc:429 gtk2_ardour/ardour_ui_ed.cc:436
+#: gtk2_ardour/ardour_ui_ed.cc:485 gtk2_ardour/ardour_ui_ed.cc:492
msgid "Medium"
msgstr "Moyen"
-#: gtk2_ardour/ardour_ui_ed.cc:430 gtk2_ardour/editor.cc:1248
-#: gtk2_ardour/editor.cc:1265
+#: gtk2_ardour/ardour_ui_ed.cc:486 gtk2_ardour/editor.cc:1350
+#: gtk2_ardour/editor.cc:1372 gtk2_ardour/sfdb_ui.cc:1070
+#: gtk2_ardour/sfdb_ui.cc:1151
msgid "Fast"
msgstr "Rapide"
-#: gtk2_ardour/ardour_ui_ed.cc:431
+#: gtk2_ardour/ardour_ui_ed.cc:487
msgid "Faster"
msgstr "Plus rapide"
-#: gtk2_ardour/ardour_ui_ed.cc:432 gtk2_ardour/editor.cc:1249
-#: gtk2_ardour/editor.cc:1266
+#: gtk2_ardour/ardour_ui_ed.cc:488 gtk2_ardour/editor.cc:1351
+#: gtk2_ardour/editor.cc:1373 gtk2_ardour/sfdb_ui.cc:1071
msgid "Fastest"
msgstr "Très rapide"
-#: gtk2_ardour/ardour_ui_ed.cc:435 gtk2_ardour/editor_actions.cc:58
+#: gtk2_ardour/ardour_ui_ed.cc:491 gtk2_ardour/editor_actions.cc:79
msgid "Short"
msgstr "Court"
-#: gtk2_ardour/ardour_ui_ed.cc:437
+#: gtk2_ardour/ardour_ui_ed.cc:493
msgid "Long"
msgstr "Long"
-#: gtk2_ardour/ardour_ui_ed.cc:455
+#: gtk2_ardour/ardour_ui_ed.cc:512
msgid "Hardware monitoring"
msgstr "Monitoring matériel"
-#: gtk2_ardour/ardour_ui_ed.cc:456
+#: gtk2_ardour/ardour_ui_ed.cc:513
msgid "Software monitoring"
msgstr "Monitoring logiciel"
-#: gtk2_ardour/ardour_ui_ed.cc:457
+#: gtk2_ardour/ardour_ui_ed.cc:514
msgid "External monitoring"
msgstr "Monitoring externe"
-#: gtk2_ardour/ardour_ui_ed.cc:461
+#: gtk2_ardour/ardour_ui_ed.cc:518
msgid "Solo in-place"
msgstr "Solo en direct"
-#: gtk2_ardour/ardour_ui_ed.cc:463
+#: gtk2_ardour/ardour_ui_ed.cc:520
msgid "Solo via bus"
msgstr "Solo via le bus"
-#: gtk2_ardour/ardour_ui_ed.cc:468
+#: gtk2_ardour/ardour_ui_ed.cc:525
msgid "Auto-connect inputs to physical inputs"
msgstr "entrées audio → pistes Ardour"
-#: gtk2_ardour/ardour_ui_ed.cc:470
+#: gtk2_ardour/ardour_ui_ed.cc:527
msgid "Manually connect inputs"
msgstr "Pas d'entrées automatiques"
-#: gtk2_ardour/ardour_ui_ed.cc:475
+#: gtk2_ardour/ardour_ui_ed.cc:532
msgid "Auto-connect outputs to physical outs"
msgstr "Pistes Ardour → sorties physiques"
-#: gtk2_ardour/ardour_ui_ed.cc:477
+#: gtk2_ardour/ardour_ui_ed.cc:534
msgid "Auto-connect outputs to master bus"
msgstr "Pistes ardour → bus général"
-#: gtk2_ardour/ardour_ui_ed.cc:479
+#: gtk2_ardour/ardour_ui_ed.cc:536
msgid "Manually connect outputs"
msgstr "Pas de sorties automatiques"
-#: gtk2_ardour/ardour_ui_ed.cc:484
+#: gtk2_ardour/ardour_ui_ed.cc:541
msgid "Remote ID assigned by User"
msgstr "identifiant assigné manuellement"
-#: gtk2_ardour/ardour_ui_ed.cc:486
+#: gtk2_ardour/ardour_ui_ed.cc:543
msgid "Remote ID follows order of Mixer"
msgstr "identifiant donné par la Console de mixage"
-#: gtk2_ardour/ardour_ui_ed.cc:488
+#: gtk2_ardour/ardour_ui_ed.cc:545
msgid "Remote ID follows order of Editor"
msgstr "identifiant donné par l'Éditeur"
-#: gtk2_ardour/ardour_ui_ed.cc:637 gtk2_ardour/ladspa_pluginui.cc:168
+#: gtk2_ardour/ardour_ui_ed.cc:694 gtk2_ardour/generic_pluginui.cc:171
msgid "Controls"
msgstr "contrôles"
-#: gtk2_ardour/ardour_ui_ed.cc:641
+#: gtk2_ardour/ardour_ui_ed.cc:698
msgid "Feedback"
-msgstr "Motorisation"
+msgstr "Envoi des commandes à l'appareil"
-#: gtk2_ardour/ardour_ui_ed.cc:725
+#: gtk2_ardour/ardour_ui_ed.cc:804
msgid "Clock"
msgstr "Horloge"
-#: gtk2_ardour/ardour_ui_options.cc:112 gtk2_ardour/ardour_ui_options.cc:139
-#: gtk2_ardour/editor_actions.cc:725 gtk2_ardour/editor_actions.cc:953
-#: gtk2_ardour/editor_actions.cc:966 gtk2_ardour/editor_actions.cc:1030
-#: gtk2_ardour/sfdb_ui.cc:536 gtk2_ardour/audio_streamview.cc:173
+#: gtk2_ardour/ardour_ui_options.cc:119 gtk2_ardour/ardour_ui_options.cc:149
+#: gtk2_ardour/audio_streamview.cc:172 gtk2_ardour/editor_actions.cc:901
+#: gtk2_ardour/editor_actions.cc:1260 gtk2_ardour/editor_actions.cc:1273
+#: gtk2_ardour/editor_actions.cc:1337 gtk2_ardour/engine_dialog.cc:997
msgid "programming error: %1"
msgstr "programming error: %1"
-#: gtk2_ardour/ardour_ui_options.cc:218
+#: gtk2_ardour/ardour_ui_options.cc:228
msgid "programming error: unknown solo model in ARDOUR_UI::set_solo_model: %1"
msgstr "programming error: unknown solo model in ARDOUR_UI::set_solo_model: %1"
-#: gtk2_ardour/ardour_ui_options.cc:251
+#: gtk2_ardour/ardour_ui_options.cc:261
msgid ""
"programming error: unknown remote model in ARDOUR_UI::set_remote_model: %1"
msgstr ""
"programming error: unknown remote model in ARDOUR_UI::set_remote_model: %1"
-#: gtk2_ardour/ardour_ui_options.cc:285
+#: gtk2_ardour/ardour_ui_options.cc:295
msgid ""
"programming error: unknown monitor model in ARDOUR_UI::set_monitor_model: %1"
msgstr ""
"programming error: unknown monitor model in ARDOUR_UI::set_monitor_model: %1"
-#: gtk2_ardour/ardour_ui_options.cc:577
+#: gtk2_ardour/ardour_ui_options.cc:334
+msgid ""
+"programming error: unknown denormal model in ARDOUR_UI::set_denormal_model: %"
+"1"
+msgstr ""
+"programming error: unknown denormal model in ARDOUR_UI::set_denormal_model: %"
+"1"
+
+#: gtk2_ardour/ardour_ui_options.cc:705
msgid ""
"programming error: unknown file header format passed to ARDOUR_UI::"
"map_file_data_format: %1"
@@ -1518,7 +1751,7 @@ msgstr ""
"programming error: unknown file header format passed to ARDOUR_UI::"
"map_file_data_format: %1"
-#: gtk2_ardour/ardour_ui_options.cc:609
+#: gtk2_ardour/ardour_ui_options.cc:741
msgid ""
"programming error: unknown file data format passed to ARDOUR_UI::"
"map_file_data_format: %1"
@@ -1526,261 +1759,120 @@ msgstr ""
"programming error: unknown file data format passed to ARDOUR_UI::"
"map_file_data_format: %1"
-#: gtk2_ardour/ardour_ui_options.cc:940
+#: gtk2_ardour/ardour_ui_options.cc:1092
msgid "ST"
msgstr "½ton"
-#: gtk2_ardour/audio_clock.cc:1801 gtk2_ardour/editor.cc:181
+#: gtk2_ardour/audio_clock.cc:1886 gtk2_ardour/editor.cc:192
+#: gtk2_ardour/editor_rulers.cc:410
msgid "Timecode"
msgstr "Timecode"
-#: gtk2_ardour/audio_clock.cc:1802 gtk2_ardour/editor.cc:180
-#: gtk2_ardour/editor_rulers.cc:395
+#: gtk2_ardour/audio_clock.cc:1887 gtk2_ardour/editor.cc:191
+#: gtk2_ardour/editor_rulers.cc:422
msgid "Bars:Beats"
msgstr "mesures:temps"
-#: gtk2_ardour/audio_clock.cc:1803
+#: gtk2_ardour/audio_clock.cc:1888
msgid "Minutes:Seconds"
msgstr "minutes:secondes"
-#: gtk2_ardour/audio_clock.cc:1804
-msgid "Audio Frames"
-msgstr "trames audio"
-
-#: gtk2_ardour/audio_clock.cc:1807
-msgid "Mode"
-msgstr "Mode"
-
-#: gtk2_ardour/route_time_axis.cc:87
-msgid "m"
-msgstr "m"
-
-#: gtk2_ardour/route_time_axis.cc:87
-msgid "s"
-msgstr "s"
-
-#: gtk2_ardour/route_time_axis.cc:87
-msgid "r"
-msgstr "r"
-
-#: gtk2_ardour/route_time_axis.cc:91
-msgid "g"
-msgstr "g"
+#: gtk2_ardour/audio_clock.cc:1889 gtk2_ardour/editor.cc:193
+#: gtk2_ardour/editor_rulers.cc:416
+msgid "Samples"
+msgstr "Échantillons"
-#: gtk2_ardour/route_time_axis.cc:92
-msgid "p"
-msgstr "p"
-
-#: gtk2_ardour/route_time_axis.cc:93 gtk2_ardour/automation_time_axis.cc:36
-#: gtk2_ardour/visual_time_axis.cc:73
-msgid "h"
-msgstr "h"
-
-#: gtk2_ardour/route_time_axis.cc:94
-msgid "a"
-msgstr "a"
-
-#: gtk2_ardour/route_time_axis.cc:95 gtk2_ardour/visual_time_axis.cc:72
-msgid "v"
-msgstr "v"
-
-#: gtk2_ardour/route_time_axis.cc:148 gtk2_ardour/mixer_strip.cc:86
-msgid "Record"
-msgstr "Enregistrement"
-
-#: gtk2_ardour/route_time_axis.cc:156 gtk2_ardour/editor_actions.cc:38
-#: gtk2_ardour/mixer_strip.cc:86 gtk2_ardour/mixer_strip.cc:426
-msgid "Solo"
-msgstr "Solo"
-
-#: gtk2_ardour/route_time_axis.cc:157 gtk2_ardour/editor.cc:1549
-#: gtk2_ardour/editor.cc:1639 gtk2_ardour/mixer_strip.cc:86
-#: gtk2_ardour/mixer_strip.cc:425 gtk2_ardour/panner_ui.cc:404
-msgid "Mute"
-msgstr "Muet"
-
-#: gtk2_ardour/route_time_axis.cc:158
-msgid "Edit Group"
-msgstr "Groupe"
-
-#: gtk2_ardour/route_time_axis.cc:159 gtk2_ardour/visual_time_axis.cc:91
-msgid "Display Height"
-msgstr "hauteur de piste"
-
-#: gtk2_ardour/route_time_axis.cc:160
-msgid "Playlist"
-msgstr "Liste de lecture"
-
-#: gtk2_ardour/route_time_axis.cc:161 gtk2_ardour/route_time_axis.cc:414
-msgid "Automation"
-msgstr "Automatisation"
-
-#: gtk2_ardour/route_time_axis.cc:162 gtk2_ardour/visual_time_axis.cc:92
-msgid "Visual options"
-msgstr "Options d'affichage"
-
-#: gtk2_ardour/route_time_axis.cc:163 gtk2_ardour/visual_time_axis.cc:93
-msgid "Hide this track"
-msgstr "Cacher la piste"
-
-#: gtk2_ardour/route_time_axis.cc:265 gtk2_ardour/mixer_strip.cc:910
-msgid "No group"
-msgstr "Aucun groupe"
-
-#: gtk2_ardour/route_time_axis.cc:375
-msgid "Show all automation"
-msgstr "afficher toute l'automatisation"
-
-#: gtk2_ardour/route_time_axis.cc:378
-msgid "Show existing automation"
-msgstr "afficher l'automatisation existante"
-
-#: gtk2_ardour/route_time_axis.cc:381
-msgid "Hide all automation"
-msgstr "cacher toute l'automatisation"
-
-#: gtk2_ardour/route_time_axis.cc:384
-msgid "Plugins"
-msgstr "Plugins"
-
-#: gtk2_ardour/route_time_axis.cc:405 gtk2_ardour/automation_time_axis.cc:431
-#: gtk2_ardour/imageframe_time_axis.cc:254 gtk2_ardour/marker_time_axis.cc:210
-msgid "Height"
-msgstr "Hauteur"
-
-#: gtk2_ardour/route_time_axis.cc:406 gtk2_ardour/color_manager.cc:41
-#: gtk2_ardour/imageframe_time_axis.cc:255 gtk2_ardour/marker_time_axis.cc:211
-msgid "Color"
-msgstr "Couleur"
-
-#: gtk2_ardour/route_time_axis.cc:411 gtk2_ardour/mixer_strip.cc:995
-msgid "Remote Control ID"
-msgstr "Identifiant de contrôleur"
-
-#: gtk2_ardour/route_time_axis.cc:429
-msgid "Align with existing material"
-msgstr "aligner avec le contenu actuel"
-
-#: gtk2_ardour/route_time_axis.cc:435
-msgid "Align with capture time"
-msgstr "aligner avec l'enregistrement"
-
-#: gtk2_ardour/route_time_axis.cc:441
-msgid "Alignment"
-msgstr "Alignement"
-
-#: gtk2_ardour/route_time_axis.cc:447
-msgid "Normal mode"
-msgstr "Mode normal"
-
-#: gtk2_ardour/route_time_axis.cc:450
-msgid "Tape mode"
-msgstr "Mode cassette"
-
-#: gtk2_ardour/route_time_axis.cc:466 gtk2_ardour/editor.cc:487
-#: gtk2_ardour/editor_actions.cc:61 gtk2_ardour/mixer_strip.cc:984
-#: gtk2_ardour/mixer_ui.cc:108
-msgid "Active"
-msgstr "Actif"
+#: gtk2_ardour/audio_region_editor.cc:48
+msgid "NAME:"
+msgstr "NOM :"
-#: gtk2_ardour/route_time_axis.cc:471 gtk2_ardour/editor.cc:1729
-#: gtk2_ardour/editor.cc:3439 gtk2_ardour/editor_actions.cc:328
-#: gtk2_ardour/editor_markers.cc:529 gtk2_ardour/imageframe_time_axis.cc:258
-#: gtk2_ardour/location_ui.cc:58 gtk2_ardour/marker_time_axis.cc:214
-#: gtk2_ardour/mixer_strip.cc:998
-msgid "Remove"
-msgstr "Supprimer"
+#: gtk2_ardour/audio_region_editor.cc:49
+msgid "play"
+msgstr "lire"
-#: gtk2_ardour/route_time_axis.cc:496 gtk2_ardour/route_time_axis.cc:551
-#: gtk2_ardour/route_time_axis.cc:816 gtk2_ardour/editor_actions.cc:1017
-msgid "programming error: %1 %2"
-msgstr "programming error: %1 %2"
+#: gtk2_ardour/audio_region_editor.cc:68
+msgid "audition this region"
+msgstr "écouter cette région"
-#: gtk2_ardour/route_time_axis.cc:840
-msgid "Name for playlist"
-msgstr "Nom de la liste de lecture"
+#: gtk2_ardour/audio_region_editor.cc:83
+msgid "START:"
+msgstr "début :"
-#: gtk2_ardour/route_time_axis.cc:842 gtk2_ardour/route_time_axis.cc:1305
-#: gtk2_ardour/editor.cc:3444 gtk2_ardour/editor_markers.cc:875
-#: gtk2_ardour/editor_mouse.cc:4752 gtk2_ardour/imageframe_time_axis.cc:247
-#: gtk2_ardour/marker_time_axis.cc:207 gtk2_ardour/mixer_strip.cc:982
-#: gtk2_ardour/redirect_box.cc:825 gtk2_ardour/redirect_box.cc:1155
-#: gtk2_ardour/route_ui.cc:807 gtk2_ardour/visual_time_axis.cc:330
-msgid "Rename"
-msgstr "Renommer"
+#: gtk2_ardour/audio_region_editor.cc:85
+msgid "END:"
+msgstr "fin :"
-#: gtk2_ardour/route_time_axis.cc:884 gtk2_ardour/route_time_axis.cc:930
-msgid "Name for Playlist"
-msgstr "Nom de la liste de lecture"
+#: gtk2_ardour/audio_region_editor.cc:87
+msgid "LENGTH:"
+msgstr "longueur :"
-#: gtk2_ardour/route_time_axis.cc:1133 gtk2_ardour/visual_time_axis.cc:340
-#: gtk2_ardour/visual_time_axis.cc:387
-msgid "A track already exists with that name"
-msgstr "Une piste portant le même nom existe déjà"
+#: gtk2_ardour/audio_region_editor.cc:123
+msgid "Region %1"
+msgstr "Région %1"
-#: gtk2_ardour/route_time_axis.cc:1309
-msgid "New Copy"
-msgstr "Nouvelle copie"
+#: gtk2_ardour/audio_region_editor.cc:204
+msgid "change region start position"
+msgstr "changer le début de la région"
-#: gtk2_ardour/route_time_axis.cc:1311
-msgid "Clear Current"
-msgstr "Effacer actuelle"
+#: gtk2_ardour/audio_region_editor.cc:221
+msgid "change region end position"
+msgstr "changer la fin de la région"
-#: gtk2_ardour/route_time_axis.cc:1314
-msgid "Select from all ..."
-msgstr "Choisir..."
+#: gtk2_ardour/audio_region_editor.cc:242
+msgid "change region length"
+msgstr "changer la longueur de la région"
-#: gtk2_ardour/route_time_axis.cc:1520 gtk2_ardour/editor.cc:1271
-#: gtk2_ardour/selection.cc:661 gtk2_ardour/selection.cc:700
-msgid "programming error: "
-msgstr "programming error: "
+#: gtk2_ardour/audio_region_view.cc:927
+msgid "add gain control point"
+msgstr "ajout d'un point de contrôle de gain"
-#: gtk2_ardour/audio_time_axis.cc:213
+#: gtk2_ardour/audio_time_axis.cc:214
msgid "Fader"
msgstr "Atténuateur"
-#: gtk2_ardour/audio_time_axis.cc:218
+#: gtk2_ardour/audio_time_axis.cc:219
msgid "Pan"
msgstr "panoramique"
-#: gtk2_ardour/audio_time_axis.cc:233
+#: gtk2_ardour/audio_time_axis.cc:235
msgid "Hide all crossfades"
msgstr "Cacher les fondus enchaînés"
-#: gtk2_ardour/audio_time_axis.cc:234
+#: gtk2_ardour/audio_time_axis.cc:236
msgid "Show all crossfades"
msgstr "afficher tous les fondus enchaînés"
-#: gtk2_ardour/audio_time_axis.cc:241
+#: gtk2_ardour/audio_time_axis.cc:244
msgid "Show waveforms"
msgstr "Afficher les formes d'ondes"
-#: gtk2_ardour/audio_time_axis.cc:251
+#: gtk2_ardour/audio_time_axis.cc:254
msgid "Traditional"
msgstr "Traditionnel"
-#: gtk2_ardour/audio_time_axis.cc:254
+#: gtk2_ardour/audio_time_axis.cc:258
msgid "Rectified"
msgstr "Redressé"
-#: gtk2_ardour/audio_time_axis.cc:261 gtk2_ardour/editor.cc:1245
-#: gtk2_ardour/editor.cc:1262
+#: gtk2_ardour/audio_time_axis.cc:268 gtk2_ardour/editor.cc:1344
+#: gtk2_ardour/editor.cc:1347 gtk2_ardour/editor.cc:1366
+#: gtk2_ardour/editor.cc:1369
msgid "Linear"
msgstr "Linéaire"
-#: gtk2_ardour/audio_time_axis.cc:264
+#: gtk2_ardour/audio_time_axis.cc:271
msgid "Logarithmic"
msgstr "logarithmique"
-#: gtk2_ardour/audio_time_axis.cc:281
+#: gtk2_ardour/audio_time_axis.cc:290
msgid "Waveform"
msgstr "Forme d'onde"
-#: gtk2_ardour/audio_time_axis.cc:353
+#: gtk2_ardour/audio_time_axis.cc:362
msgid "gain"
msgstr "gain"
-#: gtk2_ardour/audio_time_axis.cc:393
+#: gtk2_ardour/audio_time_axis.cc:402
msgid "pan"
msgstr "panoramique"
@@ -1792,81 +1884,93 @@ msgstr "déplacement d'événement d'automatisation"
msgid "automation range drag"
msgstr "déplacement d'intervalle d'automatisation"
-#: gtk2_ardour/automation_line.cc:1021 gtk2_ardour/region_gain_line.cc:64
+#: gtk2_ardour/automation_line.cc:1021 gtk2_ardour/region_gain_line.cc:83
msgid "remove control point"
msgstr "retrait de point de contrôle"
-#: gtk2_ardour/automation_time_axis.cc:37 gtk2_ardour/editor_ops.cc:2650
+#: gtk2_ardour/automation_time_axis.cc:55 gtk2_ardour/route_time_axis.cc:94
+#: gtk2_ardour/visual_time_axis.cc:73
+msgid "h"
+msgstr "h"
+
+#: gtk2_ardour/automation_time_axis.cc:56 gtk2_ardour/editor_ops.cc:3551
msgid "clear"
msgstr "effacer"
-#: gtk2_ardour/automation_time_axis.cc:78
+#: gtk2_ardour/automation_time_axis.cc:97
msgid "track height"
msgstr "hauteur de piste"
-#: gtk2_ardour/automation_time_axis.cc:79
+#: gtk2_ardour/automation_time_axis.cc:98
msgid "automation state"
msgstr "état de l'automatisation"
-#: gtk2_ardour/automation_time_axis.cc:80
+#: gtk2_ardour/automation_time_axis.cc:99
msgid "clear track"
msgstr "effacer la piste"
-#: gtk2_ardour/automation_time_axis.cc:81
+#: gtk2_ardour/automation_time_axis.cc:100
msgid "hide track"
msgstr "cacher la piste"
-#: gtk2_ardour/automation_time_axis.cc:188
-#: gtk2_ardour/automation_time_axis.cc:217
-#: gtk2_ardour/automation_time_axis.cc:442 gtk2_ardour/gain_meter.cc:159
-#: gtk2_ardour/ladspa_pluginui.cc:332 gtk2_ardour/ladspa_pluginui.cc:576
+#: gtk2_ardour/automation_time_axis.cc:207
+#: gtk2_ardour/automation_time_axis.cc:236
+#: gtk2_ardour/automation_time_axis.cc:461 gtk2_ardour/gain_meter.cc:160
+#: gtk2_ardour/generic_pluginui.cc:335 gtk2_ardour/generic_pluginui.cc:606
#: gtk2_ardour/panner_ui.cc:88
msgid "Manual"
msgstr "Manuel"
-#: gtk2_ardour/automation_time_axis.cc:190
-#: gtk2_ardour/automation_time_axis.cc:228
-#: gtk2_ardour/automation_time_axis.cc:446 gtk2_ardour/editor.cc:1807
-#: gtk2_ardour/editor.cc:1888 gtk2_ardour/gain_meter.cc:161
-#: gtk2_ardour/ladspa_pluginui.cc:335 gtk2_ardour/ladspa_pluginui.cc:578
-#: gtk2_ardour/panner_ui.cc:90 gtk2_ardour/sfdb_ui.cc:61
+#: gtk2_ardour/automation_time_axis.cc:209
+#: gtk2_ardour/automation_time_axis.cc:247
+#: gtk2_ardour/automation_time_axis.cc:465 gtk2_ardour/editor.cc:1954
+#: gtk2_ardour/editor.cc:2037 gtk2_ardour/gain_meter.cc:162
+#: gtk2_ardour/generic_pluginui.cc:338 gtk2_ardour/generic_pluginui.cc:608
+#: gtk2_ardour/panner_ui.cc:90
msgid "Play"
msgstr "Lire"
-#: gtk2_ardour/automation_time_axis.cc:192
-#: gtk2_ardour/automation_time_axis.cc:239
-#: gtk2_ardour/automation_time_axis.cc:450 gtk2_ardour/gain_meter.cc:163
-#: gtk2_ardour/ladspa_pluginui.cc:338 gtk2_ardour/ladspa_pluginui.cc:580
+#: gtk2_ardour/automation_time_axis.cc:211
+#: gtk2_ardour/automation_time_axis.cc:258
+#: gtk2_ardour/automation_time_axis.cc:469 gtk2_ardour/gain_meter.cc:164
+#: gtk2_ardour/generic_pluginui.cc:341 gtk2_ardour/generic_pluginui.cc:610
#: gtk2_ardour/panner_ui.cc:92
msgid "Write"
msgstr "écrire"
-#: gtk2_ardour/automation_time_axis.cc:194
-#: gtk2_ardour/automation_time_axis.cc:250
-#: gtk2_ardour/automation_time_axis.cc:454 gtk2_ardour/gain_meter.cc:165
-#: gtk2_ardour/ladspa_pluginui.cc:341 gtk2_ardour/ladspa_pluginui.cc:582
+#: gtk2_ardour/automation_time_axis.cc:213
+#: gtk2_ardour/automation_time_axis.cc:269
+#: gtk2_ardour/automation_time_axis.cc:473 gtk2_ardour/gain_meter.cc:166
+#: gtk2_ardour/generic_pluginui.cc:344 gtk2_ardour/generic_pluginui.cc:612
#: gtk2_ardour/panner_ui.cc:94
msgid "Touch"
msgstr "Reprise"
-#: gtk2_ardour/automation_time_axis.cc:261 gtk2_ardour/ladspa_pluginui.cc:344
+#: gtk2_ardour/automation_time_axis.cc:280 gtk2_ardour/generic_pluginui.cc:347
msgid "???"
msgstr "???"
-#: gtk2_ardour/automation_time_axis.cc:275
+#: gtk2_ardour/automation_time_axis.cc:294
msgid "clear automation"
msgstr "effacer l'automatisation"
-#: gtk2_ardour/automation_time_axis.cc:433 gtk2_ardour/editor_actions.cc:326
+#: gtk2_ardour/automation_time_axis.cc:450
+#: gtk2_ardour/imageframe_time_axis.cc:254 gtk2_ardour/marker_time_axis.cc:210
+#: gtk2_ardour/route_time_axis.cc:423
+msgid "Height"
+msgstr "Hauteur"
+
+#: gtk2_ardour/automation_time_axis.cc:452 gtk2_ardour/editor_actions.cc:488
+#: gtk2_ardour/editor_markers.cc:588
msgid "Hide"
msgstr "Cacher"
-#: gtk2_ardour/automation_time_axis.cc:435 gtk2_ardour/crossfade_edit.cc:78
-#: gtk2_ardour/redirect_box.cc:1147 gtk2_ardour/connection_editor.cc:56
+#: gtk2_ardour/automation_time_axis.cc:454 gtk2_ardour/crossfade_edit.cc:77
+#: gtk2_ardour/redirect_box.cc:1178 gtk2_ardour/connection_editor.cc:56
msgid "Clear"
msgstr "Effacer"
-#: gtk2_ardour/automation_time_axis.cc:458
+#: gtk2_ardour/automation_time_axis.cc:477
msgid "State"
msgstr "État"
@@ -1970,7 +2074,7 @@ msgstr "nombre de pixels du contour"
#: gtk2_ardour/canvas-simplerect.c:159
msgid "outline what"
-msgstr "surligne quoi"
+msgstr "surligner quoi"
#: gtk2_ardour/canvas-simplerect.c:160
msgid "which boundaries to outline (mask)"
@@ -2008,1497 +2112,1136 @@ msgstr "couleur RGBA remplissage"
msgid "color of fill"
msgstr "couleur du remplissage"
-#: gtk2_ardour/color_manager.cc:40
-msgid "Object"
-msgstr "Objet"
-
-#: gtk2_ardour/color_manager.cc:78
-msgid "cannot open color definition file %1: %2"
-msgstr "impossible d'ouvrir le fichier de définition de couleurs %1 : %2"
-
-#: gtk2_ardour/crossfade_edit.cc:75
+#: gtk2_ardour/crossfade_edit.cc:74
msgid "ardour: x-fade edit"
-msgstr "ardour : édition fondu enchaîné"
+msgstr "ardour : édition de fondu enchaîné"
-#: gtk2_ardour/crossfade_edit.cc:79 gtk2_ardour/panner_ui.cc:420
+#: gtk2_ardour/crossfade_edit.cc:78 gtk2_ardour/panner_ui.cc:420
msgid "Reset"
msgstr "Réinitialiser"
-#: gtk2_ardour/crossfade_edit.cc:80
+#: gtk2_ardour/crossfade_edit.cc:79
msgid "Fade"
msgstr "Fondu"
-#: gtk2_ardour/crossfade_edit.cc:81
+#: gtk2_ardour/crossfade_edit.cc:80
msgid "Out (dry)"
msgstr "descente (brute)"
-#: gtk2_ardour/crossfade_edit.cc:82
+#: gtk2_ardour/crossfade_edit.cc:81
msgid "Out"
msgstr "descente"
-#: gtk2_ardour/crossfade_edit.cc:83
+#: gtk2_ardour/crossfade_edit.cc:82
msgid "In (dry)"
msgstr "montée (brute)"
-#: gtk2_ardour/crossfade_edit.cc:84
+#: gtk2_ardour/crossfade_edit.cc:83
msgid "In"
msgstr "montée"
-#: gtk2_ardour/crossfade_edit.cc:86
+#: gtk2_ardour/crossfade_edit.cc:85
msgid "With Pre-roll"
msgstr "Avec pré-roll"
-#: gtk2_ardour/crossfade_edit.cc:87
+#: gtk2_ardour/crossfade_edit.cc:86
msgid "With Post-roll"
msgstr "Avec post-roll"
-#: gtk2_ardour/crossfade_edit.cc:95
+#: gtk2_ardour/crossfade_edit.cc:94
msgid "Fade In"
msgstr "Type de montée"
-#: gtk2_ardour/crossfade_edit.cc:96
+#: gtk2_ardour/crossfade_edit.cc:95
msgid "Fade Out"
msgstr "Type de descente"
-#: gtk2_ardour/crossfade_edit.cc:172 gtk2_ardour/editor.cc:1624
-#: gtk2_ardour/editor_actions.cc:324 gtk2_ardour/option_editor.cc:134
+#: gtk2_ardour/crossfade_edit.cc:171 gtk2_ardour/editor_actions.cc:486
+#: gtk2_ardour/editor.cc:1733 gtk2_ardour/option_editor.cc:148
msgid "Audition"
msgstr "écoute"
-#: gtk2_ardour/editor.cc:104 gtk2_ardour/editor.cc:2978
-#: gtk2_ardour/editor_actions.cc:402 gtk2_ardour/export_dialog.cc:78
-#: gtk2_ardour/export_dialog.cc:92 gtk2_ardour/export_dialog.cc:895
-#: gtk2_ardour/export_dialog.cc:1227 gtk2_ardour/route_ui.cc:506
-msgid "None"
-msgstr "(aucun)"
-
-#: gtk2_ardour/editor.cc:105 gtk2_ardour/editor.cc:2966
-msgid "CD Frames"
-msgstr "trames de CD"
-
-#: gtk2_ardour/editor.cc:106 gtk2_ardour/editor.cc:2968
-msgid "SMPTE Frames"
-msgstr "trames SMPTE"
-
-#: gtk2_ardour/editor.cc:107 gtk2_ardour/editor.cc:2970
-msgid "SMPTE Seconds"
-msgstr "secondes SMPTE"
-
-#: gtk2_ardour/editor.cc:108 gtk2_ardour/editor.cc:2972
-msgid "SMPTE Minutes"
-msgstr "minutes SMPTE"
-
-#: gtk2_ardour/editor.cc:109 gtk2_ardour/editor.cc:2974
-msgid "Seconds"
-msgstr "secondes"
-
-#: gtk2_ardour/editor.cc:110 gtk2_ardour/editor.cc:2976
-msgid "Minutes"
-msgstr "minutes"
-
-#: gtk2_ardour/editor.cc:111 gtk2_ardour/editor.cc:2948
-msgid "Beats/32"
-msgstr "32ème de temps"
-
-#: gtk2_ardour/editor.cc:112 gtk2_ardour/editor.cc:2946
-msgid "Beats/16"
-msgstr "16ème de temps"
-
-#: gtk2_ardour/editor.cc:113 gtk2_ardour/editor.cc:2944
-msgid "Beats/8"
-msgstr "8ème de temps"
-
-#: gtk2_ardour/editor.cc:114 gtk2_ardour/editor.cc:2942
-msgid "Beats/4"
-msgstr "quart de temps"
-
-#: gtk2_ardour/editor.cc:115 gtk2_ardour/editor.cc:2940
-msgid "Beats/3"
-msgstr "tiers de temps"
-
-#: gtk2_ardour/editor.cc:116 gtk2_ardour/editor.cc:2950
-msgid "Beats"
-msgstr "temps"
-
-#: gtk2_ardour/editor.cc:117 gtk2_ardour/editor.cc:2952
-msgid "Bars"
-msgstr "mesures"
-
-#: gtk2_ardour/editor.cc:118 gtk2_ardour/editor.cc:2954
-msgid "Marks"
-msgstr "Repères"
-
-#: gtk2_ardour/editor.cc:119 gtk2_ardour/editor.cc:138
-#: gtk2_ardour/editor.cc:2956 gtk2_ardour/editor.cc:3021
-msgid "Edit Cursor"
-msgstr "curseur d'édition"
-
-#: gtk2_ardour/editor.cc:120 gtk2_ardour/editor.cc:2958
-msgid "Region starts"
-msgstr "débuts de régions"
-
-#: gtk2_ardour/editor.cc:121 gtk2_ardour/editor.cc:2960
-msgid "Region ends"
-msgstr "fins de régions"
-
-#: gtk2_ardour/editor.cc:122 gtk2_ardour/editor.cc:2964
-msgid "Region syncs"
-msgstr "synchro de régions"
-
-#: gtk2_ardour/editor.cc:123 gtk2_ardour/editor.cc:2962
-msgid "Region bounds"
-msgstr "limites de régions"
-
-#: gtk2_ardour/editor.cc:129 gtk2_ardour/editor.cc:2996
-#: gtk2_ardour/editor_actions.cc:289
-msgid "Magnetic"
-msgstr "Magnétique"
-
-#: gtk2_ardour/editor.cc:134 gtk2_ardour/editor.cc:3013
-#: gtk2_ardour/export_dialog.cc:142 gtk2_ardour/export_dialog.cc:158
-#: gtk2_ardour/export_dialog.cc:1070 gtk2_ardour/export_dialog.cc:1074
-msgid "Left"
-msgstr "gauche"
-
-#: gtk2_ardour/editor.cc:135 gtk2_ardour/editor.cc:3015
-#: gtk2_ardour/export_dialog.cc:143 gtk2_ardour/export_dialog.cc:159
-msgid "Right"
-msgstr "droite"
-
-#: gtk2_ardour/editor.cc:136 gtk2_ardour/editor.cc:3017
-msgid "Center"
-msgstr "centre"
-
-#: gtk2_ardour/editor.cc:137 gtk2_ardour/editor.cc:3019
-msgid "Playhead"
-msgstr "tête de lecture"
-
-#: gtk2_ardour/editor.cc:179
-msgid "Mins:Secs"
-msgstr "min:s"
-
-#: gtk2_ardour/editor.cc:182 gtk2_ardour/editor_rulers.cc:389
-msgid "Frames"
-msgstr "trames"
-
-#: gtk2_ardour/editor.cc:183 gtk2_ardour/editor_rulers.cc:409
-msgid "Tempo"
-msgstr "tempo"
-
-#: gtk2_ardour/editor.cc:184 gtk2_ardour/editor_rulers.cc:403
-msgid "Meter"
-msgstr "mesure"
-
-#: gtk2_ardour/editor.cc:185 gtk2_ardour/editor_rulers.cc:415
-msgid "Location Markers"
-msgstr "repères"
-
-#: gtk2_ardour/editor.cc:186 gtk2_ardour/editor_rulers.cc:421
-msgid "Range Markers"
-msgstr "intervalles"
-
-#: gtk2_ardour/editor.cc:187 gtk2_ardour/editor_rulers.cc:427
-msgid "Loop/Punch Ranges"
-msgstr "boucle et punch-in/out"
-
-#: gtk2_ardour/editor.cc:205
-msgid "mode"
-msgstr "mode"
-
-#: gtk2_ardour/editor.cc:206
-msgid "automation"
-msgstr "automatisation"
-
-#: gtk2_ardour/editor.cc:462 gtk2_ardour/editor.cc:488
-#: gtk2_ardour/editor_actions.cc:63 gtk2_ardour/mixer_ui.cc:83
-#: gtk2_ardour/mixer_ui.cc:109 gtk2_ardour/analysis_window.cc:63
-msgid "Show"
-msgstr "Afficher"
-
-#: gtk2_ardour/editor.cc:463 gtk2_ardour/editor.cc:486
-msgid "Name"
-msgstr "Nom"
-
-#: gtk2_ardour/editor.cc:561 gtk2_ardour/editor.cc:628
-msgid "Regions"
-msgstr "Régions"
-
-#: gtk2_ardour/editor.cc:600 gtk2_ardour/editor.cc:640
-msgid "Chunks"
-msgstr "Fragments"
-
-#: gtk2_ardour/editor.cc:631
-msgid "Tracks/Busses"
-msgstr "Pistes / Bus"
-
-#: gtk2_ardour/editor.cc:634
-msgid "Snapshots"
-msgstr "Clichés"
-
-#: gtk2_ardour/editor.cc:637
-msgid "Edit Groups"
-msgstr "Groupes"
-
-#: gtk2_ardour/editor.cc:688
-msgid "Nudge Region/Selection Forwards"
-msgstr "Décaler vers la droite (région ou sélection)"
-
-#: gtk2_ardour/editor.cc:689
-msgid "Nudge Region/Selection Backwards"
-msgstr "Décaler vers la gauche (région ou sélection)"
-
-#: gtk2_ardour/editor.cc:719 gtk2_ardour/editor_mixer.cc:352
-msgid "Editor"
-msgstr "Éditeur"
-
-#: gtk2_ardour/editor.cc:1095 gtk2_ardour/editor.cc:1103
-#: gtk2_ardour/editor_markers.cc:919
-msgid "Loop"
-msgstr "Boucle"
-
-#: gtk2_ardour/editor.cc:1108 gtk2_ardour/editor.cc:1116
-#: gtk2_ardour/editor_markers.cc:947
-msgid "Punch"
-msgstr "Punch in/out"
-
-#: gtk2_ardour/editor.cc:1226 gtk2_ardour/editor_mouse.cc:1691
-msgid "programming error: fade in canvas item has no regionview data pointer!"
-msgstr "programming error: fade in canvas item has no regionview data pointer!"
-
-#: gtk2_ardour/editor.cc:1238 gtk2_ardour/editor.cc:1255
-#: gtk2_ardour/redirect_box.cc:1163
-msgid "Deactivate"
-msgstr "Désactiver"
-
-#: gtk2_ardour/editor.cc:1240 gtk2_ardour/editor.cc:1257
-#: gtk2_ardour/redirect_box.cc:1161
-msgid "Activate"
-msgstr "Activer"
-
-#: gtk2_ardour/editor.cc:1378 gtk2_ardour/editor.cc:1386
-#: gtk2_ardour/editor_ops.cc:2543
-msgid "Freeze"
-msgstr "Bloquer"
-
-#: gtk2_ardour/editor.cc:1382
-msgid "Unfreeze"
-msgstr "Débloquer"
-
-#: gtk2_ardour/editor.cc:1551
-msgid "Unmute"
-msgstr "Réactiver"
-
-#: gtk2_ardour/editor.cc:1555 gtk2_ardour/editor.cc:1852
-#: gtk2_ardour/editor_actions.cc:28 gtk2_ardour/editor_markers.cc:528
-#: gtk2_ardour/mixer_strip.cc:508 gtk2_ardour/mixer_strip.cc:570
-#: gtk2_ardour/redirect_box.cc:1169
+#: gtk2_ardour/editor_actions.cc:47 gtk2_ardour/editor.cc:1663
+#: gtk2_ardour/editor.cc:2001 gtk2_ardour/editor_markers.cc:651
+#: gtk2_ardour/mixer_strip.cc:502 gtk2_ardour/mixer_strip.cc:564
+#: gtk2_ardour/redirect_box.cc:1204
msgid "Edit"
msgstr "Édition"
-#: gtk2_ardour/editor.cc:1560
-msgid "Convert to short"
-msgstr "Convertir en fondu rapide"
-
-#: gtk2_ardour/editor.cc:1562
-msgid "Convert to full"
-msgstr "Convertir en fondu long"
-
-#: gtk2_ardour/editor.cc:1573
-msgid "Crossfade"
-msgstr "Fondu enchaîné"
-
-#: gtk2_ardour/editor.cc:1616
-msgid "Popup region editor"
-msgstr "Éditeur de région..."
-
-#: gtk2_ardour/editor.cc:1617
-msgid "Raise to top layer"
-msgstr "Monter tout en haut"
-
-#: gtk2_ardour/editor.cc:1618
-msgid "Lower to bottom layer"
-msgstr "Descendre tout en bas"
-
-#: gtk2_ardour/editor.cc:1620
-msgid "Define sync point"
-msgstr "Placer le point de synchro"
-
-#: gtk2_ardour/editor.cc:1621
-msgid "Remove sync point"
-msgstr "Enlever le point de synchro"
-
-#: gtk2_ardour/editor.cc:1626
-msgid "Bounce"
-msgstr "Copier vers un fichier audio (bounce)"
-
-#: gtk2_ardour/editor.cc:1629
-msgid "Analyze region"
-msgstr "Analyse la région"
-
-#: gtk2_ardour/editor.cc:1634
-msgid "Lock"
-msgstr "Verrouiller"
-
-#: gtk2_ardour/editor.cc:1644
-msgid "Opaque"
-msgstr "Opaque"
-
-#: gtk2_ardour/editor.cc:1650
-msgid "Original position"
-msgstr "Remettre à sa position d'origine"
-
-#: gtk2_ardour/editor.cc:1662
-msgid "Reset Envelope"
-msgstr "Réinitialiser l'enveloppe"
-
-#: gtk2_ardour/editor.cc:1664
-msgid "Envelope Visible"
-msgstr "Enveloppe Visible"
-
-#: gtk2_ardour/editor.cc:1671
-msgid "Envelope Active"
-msgstr "Enveloppe Active"
-
-#: gtk2_ardour/editor.cc:1681
-msgid "DeNormalize"
-msgstr "Dénormaliser"
-
-#: gtk2_ardour/editor.cc:1683
-msgid "Normalize"
-msgstr "Normaliser"
-
-#: gtk2_ardour/editor.cc:1686
-msgid "Reverse"
-msgstr "Inverser"
-
-#: gtk2_ardour/editor.cc:1692 gtk2_ardour/editor.cc:1774
-msgid "Add Range Markers"
-msgstr "Ajoute des repères d'intervalle"
-
-#: gtk2_ardour/editor.cc:1693
-msgid "Set Range Selection"
-msgstr "zone de sélection depuis la région"
-
-#: gtk2_ardour/editor.cc:1702
-msgid "Nudge fwd"
-msgstr "Décaler à droite"
-
-#: gtk2_ardour/editor.cc:1703
-msgid "Nudge bwd"
-msgstr "Décaler à gauche"
-
-#: gtk2_ardour/editor.cc:1704
-msgid "Nudge fwd by capture offset"
-msgstr "Décaler à droite de l'offset de capture"
-
-#: gtk2_ardour/editor.cc:1705
-msgid "Nudge bwd by capture offset"
-msgstr "Décaler à gauche de l'offset de capture"
-
-#: gtk2_ardour/editor.cc:1707 gtk2_ardour/editor.cc:1872
-#: gtk2_ardour/editor.cc:1928
-msgid "Nudge"
-msgstr "décaler"
-
-#: gtk2_ardour/editor.cc:1714
-msgid "Start to edit cursor"
-msgstr "début au curseur d'édition"
-
-#: gtk2_ardour/editor.cc:1715
-msgid "Edit cursor to end"
-msgstr "fin au curseur d'édition"
-
-#: gtk2_ardour/editor.cc:1717 gtk2_ardour/gain_meter.cc:168
-#: gtk2_ardour/gain_meter.cc:880 gtk2_ardour/panner_ui.cc:97
-#: gtk2_ardour/panner_ui.cc:780
-msgid "Trim"
-msgstr "Raccourcir"
-
-#: gtk2_ardour/editor.cc:1720
-msgid "Split"
-msgstr "Séparer"
-
-#: gtk2_ardour/editor.cc:1723
-msgid "Make mono regions"
-msgstr "Créer des régions mono"
-
-#: gtk2_ardour/editor.cc:1726
-msgid "Duplicate"
-msgstr "Dupliquer"
-
-#: gtk2_ardour/editor.cc:1727
-msgid "Fill Track"
-msgstr "Remplir la piste"
-
-#: gtk2_ardour/editor.cc:1759
-msgid "Play range"
-msgstr "Lire"
-
-#: gtk2_ardour/editor.cc:1760
-msgid "Loop range"
-msgstr "Lire en boucle"
-
-#: gtk2_ardour/editor.cc:1764
-msgid "Analyze range"
-msgstr "Analyse la zone de sélection"
-
-#: gtk2_ardour/editor.cc:1768
-msgid "Separate range to track"
-msgstr "Découper la région"
-
-#: gtk2_ardour/editor.cc:1769
-msgid "Separate range to region list"
-msgstr "Copier vers la liste des régions"
-
-#: gtk2_ardour/editor.cc:1772
-msgid "Select all in range"
-msgstr "Sélectionner tout dans la zone"
-
-#: gtk2_ardour/editor.cc:1775 gtk2_ardour/editor.cc:1820
-msgid "Set range to loop range"
-msgstr "Créer l'intervalle de boucle"
-
-#: gtk2_ardour/editor.cc:1776 gtk2_ardour/editor.cc:1821
-msgid "Set range to punch range"
-msgstr "Créer l'intervalle de punch in/out"
-
-#: gtk2_ardour/editor.cc:1778
-msgid "Crop region to range"
-msgstr "Raccourcir la région à la zone"
-
-#: gtk2_ardour/editor.cc:1779
-msgid "Fill range with region"
-msgstr "Remplir avec la région choisie dans la liste"
-
-#: gtk2_ardour/editor.cc:1780
-msgid "Duplicate range"
-msgstr "Dupliquer"
-
-#: gtk2_ardour/editor.cc:1781
-msgid "Create chunk from range"
-msgstr "Nouveau fragment depuis la sélection"
-
-#: gtk2_ardour/editor.cc:1783
-msgid "Bounce range"
-msgstr "Copier la sélection vers un fichier audio (bounce)"
-
-#: gtk2_ardour/editor.cc:1784
-msgid "Export range"
-msgstr "Exporter"
-
-#: gtk2_ardour/editor.cc:1786
-msgid "Range"
-msgstr "Zone de sélection"
-
-#: gtk2_ardour/editor.cc:1801 gtk2_ardour/editor.cc:1886
-msgid "Play from edit cursor"
-msgstr "Lire depuis le curseur d'édition"
-
-#: gtk2_ardour/editor.cc:1802 gtk2_ardour/editor.cc:1887
-msgid "Play from start"
-msgstr "Lire depuis le début"
-
-#: gtk2_ardour/editor.cc:1803
-msgid "Play region"
-msgstr "Lire la région"
-
-#: gtk2_ardour/editor.cc:1805
-msgid "Loop Region"
-msgstr "Lire la région en boucle"
-
-#: gtk2_ardour/editor.cc:1815 gtk2_ardour/editor.cc:1896
-msgid "Select All in track"
-msgstr "Sélectionner tout dans la piste"
-
-#: gtk2_ardour/editor.cc:1816 gtk2_ardour/editor.cc:1897
-#: gtk2_ardour/redirect_box.cc:1157
-msgid "Select All"
-msgstr "Sélectionner tout"
-
-#: gtk2_ardour/editor.cc:1817 gtk2_ardour/editor.cc:1898
-msgid "Invert selection in track"
-msgstr "Inverser la sélection dans la piste"
-
-#: gtk2_ardour/editor.cc:1818 gtk2_ardour/editor.cc:1899
-msgid "Invert selection"
-msgstr "inverser la sélection"
-
-#: gtk2_ardour/editor.cc:1823 gtk2_ardour/editor.cc:1901
-msgid "Select all after edit cursor"
-msgstr "Sélectionner tout après le curseur d'édition"
-
-#: gtk2_ardour/editor.cc:1824 gtk2_ardour/editor.cc:1902
-msgid "Select all before edit cursor"
-msgstr "sélectionner tout avant le curseur d'édition"
-
-#: gtk2_ardour/editor.cc:1825 gtk2_ardour/editor.cc:1903
-msgid "Select all after playhead"
-msgstr "Sélectionner tout après la tête de lecture"
-
-#: gtk2_ardour/editor.cc:1826 gtk2_ardour/editor.cc:1904
-msgid "Select all before playhead"
-msgstr "Sélectionner tout avant la tête de lecture"
-
-#: gtk2_ardour/editor.cc:1827
-msgid "Select all between cursors"
-msgstr "Sélectionner tout entre les 2 curseurs"
-
-#: gtk2_ardour/editor.cc:1830 gtk2_ardour/editor.cc:1906
+#: gtk2_ardour/editor_actions.cc:48 gtk2_ardour/editor.cc:1980
+#: gtk2_ardour/editor.cc:2055
msgid "Select"
msgstr "Sélectionner"
-#: gtk2_ardour/editor.cc:1838 gtk2_ardour/editor.cc:1914
-#: gtk2_ardour/editor_actions.cc:217 gtk2_ardour/redirect_box.cc:1150
-msgid "Cut"
-msgstr "Couper"
-
-#: gtk2_ardour/editor.cc:1839 gtk2_ardour/editor.cc:1915
-#: gtk2_ardour/editor_actions.cc:222 gtk2_ardour/redirect_box.cc:1152
-msgid "Copy"
-msgstr "Copier"
-
-#: gtk2_ardour/editor.cc:1840
-msgid "Paste at edit cursor"
-msgstr "Coller au curseur d'édition"
-
-#: gtk2_ardour/editor.cc:1841
-msgid "Paste at mouse"
-msgstr "Coller au pointeur de la souris"
-
-#: gtk2_ardour/editor.cc:1845
-msgid "Align"
-msgstr "Aligner"
-
-#: gtk2_ardour/editor.cc:1846
-msgid "Align Relative"
-msgstr "Aligner relativement"
-
-#: gtk2_ardour/editor.cc:1850
-msgid "Insert chunk"
-msgstr "Insérer un fragment"
-
-#: gtk2_ardour/editor.cc:1857
-msgid "Insert Selected Region"
-msgstr "Insérer la région sélectionnée"
-
-#: gtk2_ardour/editor.cc:1858
-msgid "Insert Existing Audio"
-msgstr "Insérer des fichiers audio externes"
+#: gtk2_ardour/editor_actions.cc:49
+msgid "Select Regions"
+msgstr "Sélection de régions"
-#: gtk2_ardour/editor.cc:1867 gtk2_ardour/editor.cc:1923
-msgid "Nudge entire track fwd"
-msgstr "Décaler toute la piste à droite"
-
-#: gtk2_ardour/editor.cc:1868 gtk2_ardour/editor.cc:1924
-msgid "Nudge track after edit cursor fwd"
-msgstr "Décaler à droite les régions après le curseur"
-
-#: gtk2_ardour/editor.cc:1869 gtk2_ardour/editor.cc:1925
-msgid "Nudge entire track bwd"
-msgstr "Décaler toute la piste à gauche"
-
-#: gtk2_ardour/editor.cc:1870 gtk2_ardour/editor.cc:1926
-msgid "Nudge track after edit cursor bwd"
-msgstr "Décaler à gauche les régions après le curseur"
-
-#: gtk2_ardour/editor.cc:1916 gtk2_ardour/editor_actions.cc:224
-#: gtk2_ardour/redirect_box.cc:1154
-msgid "Paste"
-msgstr "Coller"
-
-#: gtk2_ardour/editor.cc:2501
-msgid "Select/Move Objects"
-msgstr "pour sélectionner ou déplacer des objets"
-
-#: gtk2_ardour/editor.cc:2502
-msgid "Select/Move Ranges"
-msgstr "pour travailler sur la zone de sélection"
-
-#: gtk2_ardour/editor.cc:2503
-msgid "Draw Gain Automation"
-msgstr "pour dessiner la courbe de gain"
-
-#: gtk2_ardour/editor.cc:2504
-msgid "Select Zoom Range"
-msgstr "pour sélectionner l'intervalle de zoom"
-
-#: gtk2_ardour/editor.cc:2505
-msgid "Stretch/Shrink Regions"
-msgstr "pour étirer ou contracter des régions"
-
-#: gtk2_ardour/editor.cc:2506
-msgid "Listen to Specific Regions"
-msgstr "pour écouter les régions une par une"
-
-#: gtk2_ardour/editor.cc:2536 gtk2_ardour/editor_actions.cc:143
-msgid "Zoom In"
-msgstr "zoom avant"
-
-#: gtk2_ardour/editor.cc:2542 gtk2_ardour/editor_actions.cc:141
-msgid "Zoom Out"
-msgstr "zoom arrière"
-
-#: gtk2_ardour/editor.cc:2548 gtk2_ardour/editor_actions.cc:145
-msgid "Zoom to Session"
-msgstr "montrer toute la session"
-
-#: gtk2_ardour/editor.cc:2554
-msgid "Zoom focus"
-msgstr "zoomer vers"
+#: gtk2_ardour/editor_actions.cc:50
+msgid "Select Range Operations"
+msgstr "Opérations sur zone de sélection"
-#: gtk2_ardour/editor.cc:2570
-msgid "Unit to snap cursors and ranges to"
-msgstr "Unité d'alignement des curseurs et zones"
-
-#: gtk2_ardour/editor.cc:2818 gtk2_ardour/editor_actions.cc:207
-msgid "Undo"
-msgstr "Annuler"
-
-#: gtk2_ardour/editor.cc:2820
-msgid "Undo (%1)"
-msgstr "Annuler (%1)"
-
-#: gtk2_ardour/editor.cc:2827 gtk2_ardour/editor_actions.cc:209
-msgid "Redo"
-msgstr "Refaire"
-
-#: gtk2_ardour/editor.cc:2829
-msgid "Redo (%1)"
-msgstr "Refaire (%1)"
-
-#: gtk2_ardour/editor.cc:2843
-msgid "Duplicate how many times?"
-msgstr "Dupliquer combien de fois ?"
-
-#: gtk2_ardour/editor.cc:2925
-msgid "Splice Edit"
-msgstr "adjacent"
-
-#: gtk2_ardour/editor.cc:2927
-msgid "Slide Edit"
-msgstr "superposable"
-
-#: gtk2_ardour/editor.cc:3281
-msgid ""
-"Playlist %1 is currently unused.\n"
-"If left alone, no audio files used by it will be cleaned.\n"
-"If deleted, audio files used by it alone by will cleaned."
-msgstr ""
-"La liste de lecture %1 n'est pas utilisée.\n"
-"Si vous la conservez, aucun fichier audio qu'elle utilise ne sera nettoyé.\n"
-"Si vous l'effacez, les fichiers audio qu'elle seule utilise seront nettoyés."
-
-#: gtk2_ardour/editor.cc:3291
-msgid "Delete playlist"
-msgstr "Supprimer la liste de lecture"
-
-#: gtk2_ardour/editor.cc:3292
-msgid "Keep playlist"
-msgstr "Garder la liste de lecture"
-
-#: gtk2_ardour/editor.cc:3293 gtk2_ardour/editor_audio_import.cc:366
-#: gtk2_ardour/editor_ops.cc:1756 gtk2_ardour/editor_timefx.cc:77
-#: gtk2_ardour/export_dialog.cc:973 gtk2_ardour/io_selector.cc:60
-#: gtk2_ardour/io_selector.cc:748 gtk2_ardour/redirect_box.cc:977
-#: gtk2_ardour/tempo_dialog.cc:22 gtk2_ardour/tempo_dialog.cc:41
-#: gtk2_ardour/tempo_dialog.cc:158 gtk2_ardour/tempo_dialog.cc:176
-#: gtk2_ardour/connection_editor.cc:59
-msgid "Cancel"
-msgstr "Annuler"
-
-#: gtk2_ardour/editor.cc:3461
-msgid "New name of snapshot"
-msgstr "Nouveau nom du cliché"
-
-#: gtk2_ardour/editor.cc:3479
-msgid ""
-"Do you really want to remove snapshot \"%1\" ?\n"
-"(cannot be undone)"
-msgstr ""
-"Voulez-vous vraiment supprimer le cliché « %1 » ?\n"
-"(cela ne pourra pas être annulé)"
-
-#: gtk2_ardour/editor.cc:3481 gtk2_ardour/editor_ops.cc:181
-#: gtk2_ardour/editor_ops.cc:3162 gtk2_ardour/route_ui.cc:783
-#: gtk2_ardour/visual_time_axis.cc:282
-msgid "No, do nothing."
-msgstr "Non, ne rien faire"
-
-#: gtk2_ardour/editor.cc:3482 gtk2_ardour/route_ui.cc:784
-#: gtk2_ardour/visual_time_axis.cc:283
-msgid "Yes, remove it."
-msgstr "Oui, supprimer"
-
-#: gtk2_ardour/editor.cc:3586
-msgid "new playlists"
-msgstr "nouvelles listes de lecture"
-
-#: gtk2_ardour/editor.cc:3594
-msgid "copy playlists"
-msgstr "copier les listes de lecture"
-
-#: gtk2_ardour/editor.cc:3602
-msgid "clear playlists"
-msgstr "effacer les listes de lecture"
-
-#: gtk2_ardour/editor_actions.cc:29
-msgid "Select regions"
-msgstr "sélectionner"
-
-#: gtk2_ardour/editor_actions.cc:30
-msgid "Select range operations"
-msgstr "zone de sélection"
-
-#: gtk2_ardour/editor_actions.cc:31
-msgid "Move edit cursor"
-msgstr "curseur d'édition"
+#: gtk2_ardour/editor_actions.cc:51
+msgid "Move Selected Marker"
+msgstr "Déplacer le repère sélectionné"
-#: gtk2_ardour/editor_actions.cc:32
+#: gtk2_ardour/editor_actions.cc:52
msgid "Region operations"
msgstr "régions"
-#: gtk2_ardour/editor_actions.cc:33
+#: gtk2_ardour/editor_actions.cc:53
msgid "Tools"
msgstr "Outils"
-#: gtk2_ardour/editor_actions.cc:34
+#: gtk2_ardour/editor_actions.cc:54
msgid "View"
msgstr "Affichage"
-#: gtk2_ardour/editor_actions.cc:35
+#: gtk2_ardour/editor_actions.cc:55
msgid "ZoomFocus"
msgstr "zoomer vers"
-#: gtk2_ardour/editor_actions.cc:36
+#: gtk2_ardour/editor_actions.cc:56
msgid "Meter hold"
-msgstr "Maintien de la crête de vu-mètre"
+msgstr "Maintien de la crête de VU-mètre"
-#: gtk2_ardour/editor_actions.cc:37
+#: gtk2_ardour/editor_actions.cc:57
msgid "Meter falloff"
-msgstr "Taux de chute du vu-mètre"
+msgstr "Taux de chute du VU-mètre"
+
+#: gtk2_ardour/editor_actions.cc:58 gtk2_ardour/mixer_strip.cc:88
+#: gtk2_ardour/mixer_strip.cc:422 gtk2_ardour/route_time_axis.cc:168
+msgid "Solo"
+msgstr "Solo"
-#: gtk2_ardour/editor_actions.cc:39
+#: gtk2_ardour/editor_actions.cc:59
msgid "Crossfades"
msgstr "Fondus enchaînés"
-#: gtk2_ardour/editor_actions.cc:40
+#: gtk2_ardour/editor_actions.cc:60
msgid "Monitoring"
msgstr "Monitoring"
-#: gtk2_ardour/editor_actions.cc:41
+#: gtk2_ardour/editor_actions.cc:61
msgid "Autoconnect"
msgstr "Connexions automatiques"
-#: gtk2_ardour/editor_actions.cc:42
+#: gtk2_ardour/editor_actions.cc:62
msgid "Layering"
msgstr "Empilement des régions"
-#: gtk2_ardour/editor_actions.cc:43
+#: gtk2_ardour/editor_actions.cc:63
msgid "Timecode fps"
msgstr "Timecode (trames/s)"
-#: gtk2_ardour/editor_actions.cc:44
+#: gtk2_ardour/editor_actions.cc:64
msgid "Pullup / Pulldown"
msgstr "Pullup / Pulldown"
-#: gtk2_ardour/editor_actions.cc:45
+#: gtk2_ardour/editor_actions.cc:65
msgid "Subframes"
msgstr "Sous-trames"
-#: gtk2_ardour/editor_actions.cc:46
-msgid "Add Existing Audio"
-msgstr "Importer"
+#: gtk2_ardour/editor_actions.cc:66
+msgid "Locate To Markers"
+msgstr "Placement aux repères"
-#: gtk2_ardour/editor_actions.cc:51
+#: gtk2_ardour/editor_actions.cc:70
+msgid "Link Region/Track Selection"
+msgstr "Lier la sélection région/piste"
+
+#: gtk2_ardour/editor_actions.cc:72
msgid "Show Editor Mixer"
msgstr "Afficher la tranche de mix"
-#: gtk2_ardour/editor_actions.cc:56
+#: gtk2_ardour/editor_actions.cc:77
msgid "Span Entire Overlap"
msgstr "Long (toute la zone de recouvrement)"
-#: gtk2_ardour/editor_actions.cc:65
+#: gtk2_ardour/editor_actions.cc:82 gtk2_ardour/editor.cc:521
+#: gtk2_ardour/mixer_strip.cc:980 gtk2_ardour/mixer_ui.cc:116
+#: gtk2_ardour/plugin_ui.cc:316 gtk2_ardour/route_time_axis.cc:486
+msgid "Active"
+msgstr "Actif"
+
+#: gtk2_ardour/editor_actions.cc:84 gtk2_ardour/editor.cc:495
+#: gtk2_ardour/editor.cc:522 gtk2_ardour/mixer_ui.cc:90
+#: gtk2_ardour/mixer_ui.cc:117 gtk2_ardour/analysis_window.cc:63
+msgid "Show"
+msgstr "Afficher"
+
+#: gtk2_ardour/editor_actions.cc:86
msgid "Created Automatically"
msgstr "créé automatiquement"
-#: gtk2_ardour/editor_actions.cc:68
+#: gtk2_ardour/editor_actions.cc:89
+msgid "Playhead to Next Region Boundary"
+msgstr "Tête de lecture vers limite de région suiv."
+
+#: gtk2_ardour/editor_actions.cc:91
+msgid "Playhead to Previous Region Boundary"
+msgstr "Tête de lecture vers limite de région préc."
+
+#: gtk2_ardour/editor_actions.cc:94
msgid "Playhead to Next Region Start"
msgstr "début de la région suivante"
-#: gtk2_ardour/editor_actions.cc:70
+#: gtk2_ardour/editor_actions.cc:96
msgid "Playhead to Next Region End"
msgstr "fin de la région suivante"
-#: gtk2_ardour/editor_actions.cc:72
+#: gtk2_ardour/editor_actions.cc:98
msgid "Playhead to Next Region Sync"
msgstr "synchro de la région suivante"
-#: gtk2_ardour/editor_actions.cc:75
+#: gtk2_ardour/editor_actions.cc:101
msgid "Playhead to Previous Region Start"
msgstr "début de la région précédente"
-#: gtk2_ardour/editor_actions.cc:77
+#: gtk2_ardour/editor_actions.cc:103
msgid "Playhead to Previous Region End"
msgstr "fin de la région précédente"
-#: gtk2_ardour/editor_actions.cc:79
+#: gtk2_ardour/editor_actions.cc:105
msgid "Playhead to Previous Region Sync"
msgstr "synchro de la région précédente"
-#: gtk2_ardour/editor_actions.cc:82
-msgid "Edit Cursor to Next Region Start"
-msgstr "début de la région suivante"
+#: gtk2_ardour/editor_actions.cc:108
+msgid "to Next Region Boundary"
+msgstr "vers limite de région suiv."
-#: gtk2_ardour/editor_actions.cc:84
-msgid "Edit Cursor to Next Region End"
-msgstr "fin de la région suivante"
+#: gtk2_ardour/editor_actions.cc:110
+msgid "to Previous Region Boundary"
+msgstr "vers limite de région préc."
-#: gtk2_ardour/editor_actions.cc:86
-msgid "Edit Cursor to Next Region Sync"
-msgstr "synchro de la région suivante"
+#: gtk2_ardour/editor_actions.cc:113
+msgid "to Next Region Start"
+msgstr "vers début de région suivante"
-#: gtk2_ardour/editor_actions.cc:89
-msgid "Edit Cursor to Previous Region Start"
-msgstr "début de la région précédente"
+#: gtk2_ardour/editor_actions.cc:115
+msgid "to Next Region End"
+msgstr "vers fin de région suivante"
-#: gtk2_ardour/editor_actions.cc:91
-msgid "Edit Cursor to Previous Region End"
-msgstr "fin de la région précédente"
+#: gtk2_ardour/editor_actions.cc:117
+msgid "to Next Region Sync"
+msgstr "vers sync. de la région suivante"
-#: gtk2_ardour/editor_actions.cc:93
-msgid "Edit Cursor to Previous Region Sync"
-msgstr "synchro de la région précédente"
+#: gtk2_ardour/editor_actions.cc:120
+msgid "to Previous Region Start"
+msgstr "vers début de la région précédente"
-#: gtk2_ardour/editor_actions.cc:96
+#: gtk2_ardour/editor_actions.cc:122
+msgid "to Previous Region End"
+msgstr "vers fin de la région précédente"
+
+#: gtk2_ardour/editor_actions.cc:124
+msgid "to Previous Region Sync"
+msgstr "vers sync. de la région précédente"
+
+#: gtk2_ardour/editor_actions.cc:127
+msgid "to Range Start"
+msgstr "vers début de région"
+
+#: gtk2_ardour/editor_actions.cc:129
+msgid "to Range End"
+msgstr "vers fin de région"
+
+#: gtk2_ardour/editor_actions.cc:132
msgid "Playhead to Range Start"
msgstr "début de la région"
-#: gtk2_ardour/editor_actions.cc:98
+#: gtk2_ardour/editor_actions.cc:134
msgid "Playhead to Range End"
msgstr "fin de la région"
-#: gtk2_ardour/editor_actions.cc:101
-msgid "Edit Cursor to Range Start"
-msgstr "début de la région"
+#: gtk2_ardour/editor_actions.cc:137 gtk2_ardour/editor.cc:1963
+#: gtk2_ardour/editor.cc:2046 gtk2_ardour/redirect_box.cc:1192
+msgid "Select All"
+msgstr "Sélectionner tout"
-#: gtk2_ardour/editor_actions.cc:103
-msgid "Edit Cursor to Range End"
-msgstr "fin de la région"
+#: gtk2_ardour/editor_actions.cc:139 gtk2_ardour/redirect_box.cc:1193
+msgid "Deselect All"
+msgstr "désélectionner tout"
-#: gtk2_ardour/editor_actions.cc:106 gtk2_ardour/editor_selection.cc:726
-msgid "select all"
-msgstr "sélectionner tout"
+#: gtk2_ardour/editor_actions.cc:141
+msgid "Invert Selection"
+msgstr "Inverser la sélection"
-#: gtk2_ardour/editor_actions.cc:108
-msgid "Select All After Edit Cursor"
-msgstr "tout après le curseur d'édition"
+#: gtk2_ardour/editor_actions.cc:143 gtk2_ardour/editor.cc:1970
+msgid "Select All After Edit Point"
+msgstr "Tout après le point d'édition"
-#: gtk2_ardour/editor_actions.cc:110
-msgid "Select All Before Edit Cursor"
-msgstr "tout avant le curseur d'édition"
+#: gtk2_ardour/editor_actions.cc:145 gtk2_ardour/editor.cc:1971
+msgid "Select All Before Edit Point"
+msgstr "Tout avant le point d'édition"
-#: gtk2_ardour/editor_actions.cc:113
+#: gtk2_ardour/editor_actions.cc:148 gtk2_ardour/editor.cc:1972
msgid "Select All After Playhead"
-msgstr "tout après la tête de lecture"
+msgstr "Tout après la tête de lecture"
-#: gtk2_ardour/editor_actions.cc:115
+#: gtk2_ardour/editor_actions.cc:150 gtk2_ardour/editor.cc:1973
msgid "Select All Before Playhead"
-msgstr "tout avant la tête de lecture"
+msgstr "Tout avant la tête de lecture"
-#: gtk2_ardour/editor_actions.cc:117
-msgid "Select All Between Cursors"
-msgstr "tout entre les 2 curseurs"
+#: gtk2_ardour/editor_actions.cc:152 gtk2_ardour/editor.cc:1974
+msgid "Select All Between Playhead & Edit Point"
+msgstr "Tout entre tête de lecture et point d'édition"
-#: gtk2_ardour/editor_actions.cc:120
+#: gtk2_ardour/editor_actions.cc:154 gtk2_ardour/editor.cc:1975
+msgid "Select All Within Playhead & Edit Point"
+msgstr "Tout à l'intérieur entre tête de lecture et point d'édit."
+
+#: gtk2_ardour/editor_actions.cc:157 gtk2_ardour/editor.cc:1976
+msgid "Select Range Between Playhead & Edit Point"
+msgstr "tête de lecture jusqu'au point d'édition"
+
+#: gtk2_ardour/editor_actions.cc:160
msgid "Select All in Punch Range"
msgstr "tout dans l'intervalle de punch in/out"
-#: gtk2_ardour/editor_actions.cc:122
+#: gtk2_ardour/editor_actions.cc:162
msgid "Select All in Loop Range"
msgstr "tout dans l'intervalle de boucle"
-#: gtk2_ardour/editor_actions.cc:125
+#: gtk2_ardour/editor_actions.cc:165
+msgid "Select Next Track/Bus"
+msgstr "Sélectionner piste/bus suivant"
+
+#: gtk2_ardour/editor_actions.cc:167
+msgid "Select Previous Track/Bus"
+msgstr "Sélectionner piste/bus précédent"
+
+#: gtk2_ardour/editor_actions.cc:171
+msgid "Locate to Mark 1"
+msgstr "Se placer au repère 1"
+
+#: gtk2_ardour/editor_actions.cc:173
+msgid "Locate to Mark 2"
+msgstr "Se placer au repère 2"
+
+#: gtk2_ardour/editor_actions.cc:175
+msgid "Locate to Mark 3"
+msgstr "Se placer au repère 3"
+
+#: gtk2_ardour/editor_actions.cc:177
+msgid "Locate to Mark 4"
+msgstr "Se placer au repère 4"
+
+#: gtk2_ardour/editor_actions.cc:179
+msgid "Locate to Mark 5"
+msgstr "Se placer au repère 5"
+
+#: gtk2_ardour/editor_actions.cc:181
+msgid "Locate to Mark 6"
+msgstr "Se placer au repère 6"
+
+#: gtk2_ardour/editor_actions.cc:183
+msgid "Locate to Mark 7"
+msgstr "Se placer au repère 7"
+
+#: gtk2_ardour/editor_actions.cc:185
+msgid "Locate to Mark 8"
+msgstr "Se placer au repère 8"
+
+#: gtk2_ardour/editor_actions.cc:187
+msgid "Locate to Mark 9"
+msgstr "Se placer au repère 9"
+
+#: gtk2_ardour/editor_actions.cc:190
msgid "Jump Forward to Mark"
-msgstr "repère suivant"
+msgstr "Aller au repère suivant"
-#: gtk2_ardour/editor_actions.cc:127
+#: gtk2_ardour/editor_actions.cc:192
msgid "Jump Backward to Mark"
-msgstr "repère précédent"
+msgstr "Aller au repère précédent"
-#: gtk2_ardour/editor_actions.cc:129
+#: gtk2_ardour/editor_actions.cc:194
msgid "Add Mark from Playhead"
msgstr "créer un repère à la tête de lecture"
-#: gtk2_ardour/editor_actions.cc:132
+#: gtk2_ardour/editor_actions.cc:197
msgid "Nudge Forward"
msgstr "décaler vers la droite"
-#: gtk2_ardour/editor_actions.cc:134
+#: gtk2_ardour/editor_actions.cc:199
msgid "Nudge Next Forward"
msgstr "décaler suivant vers la droite"
-#: gtk2_ardour/editor_actions.cc:136
+#: gtk2_ardour/editor_actions.cc:201
msgid "Nudge Backward"
msgstr "Décaler vers la gauche"
-#: gtk2_ardour/editor_actions.cc:138
+#: gtk2_ardour/editor_actions.cc:203
msgid "Nudge Next Backward"
msgstr "décaler suivant vers la gauche"
-#: gtk2_ardour/editor_actions.cc:148
+#: gtk2_ardour/editor_actions.cc:206
+msgid "Nudge Playhead Forward"
+msgstr "Décaler la tête de lecture vers l'avant"
+
+#: gtk2_ardour/editor_actions.cc:208
+msgid "Nudge Playhead Backward"
+msgstr "Décaler la tête de lecture vers l'arrière"
+
+#: gtk2_ardour/editor_actions.cc:212 gtk2_ardour/editor.cc:2748
+msgid "Zoom Out"
+msgstr "Zoom arrière"
+
+#: gtk2_ardour/editor_actions.cc:214 gtk2_ardour/editor.cc:2742
+msgid "Zoom In"
+msgstr "Zoom avant"
+
+#: gtk2_ardour/editor_actions.cc:216 gtk2_ardour/editor.cc:2754
+msgid "Zoom to Session"
+msgstr "Montrer toute la session"
+
+#: gtk2_ardour/editor_actions.cc:218
+msgid "Zoom to Region"
+msgstr "Montrer toute la session"
+
+#: gtk2_ardour/editor_actions.cc:220
+msgid "Toggle Zoom State"
+msgstr "Commuter l'état du zoom"
+
+#: gtk2_ardour/editor_actions.cc:223
msgid "Scroll Tracks Up"
msgstr "monter d'une page"
-#: gtk2_ardour/editor_actions.cc:150
+#: gtk2_ardour/editor_actions.cc:225
msgid "Scroll Tracks Down"
msgstr "descendre d'une page"
-#: gtk2_ardour/editor_actions.cc:152
+#: gtk2_ardour/editor_actions.cc:227
msgid "Step Tracks Up"
msgstr "défiler vers le haut"
-#: gtk2_ardour/editor_actions.cc:154
+#: gtk2_ardour/editor_actions.cc:229
msgid "Step Tracks Down"
msgstr "défiler vers le bas"
-#: gtk2_ardour/editor_actions.cc:157
+#: gtk2_ardour/editor_actions.cc:232
msgid "Scroll Backward"
msgstr "défiler en arrière"
-#: gtk2_ardour/editor_actions.cc:159
+#: gtk2_ardour/editor_actions.cc:234
msgid "Scroll Forward"
msgstr "défiler en avant"
-#: gtk2_ardour/editor_actions.cc:161
+#: gtk2_ardour/editor_actions.cc:236
msgid "goto"
msgstr "aller à"
-#: gtk2_ardour/editor_actions.cc:163
-msgid "Center Playhead"
-msgstr "centrer sur la tête de lecture"
+#: gtk2_ardour/editor_actions.cc:238 gtk2_ardour/editor_actions.cc:240
+msgid "to Center"
+msgstr "vers le centre"
-#: gtk2_ardour/editor_actions.cc:165
-msgid "Center Edit Cursor"
-msgstr "centrer sur le curseur d'édition"
-
-#: gtk2_ardour/editor_actions.cc:168
+#: gtk2_ardour/editor_actions.cc:243
msgid "Playhead forward"
msgstr "tête de lecture en avant"
-#: gtk2_ardour/editor_actions.cc:170
+#: gtk2_ardour/editor_actions.cc:245
msgid "Playhead Backward"
msgstr "tête de lecture en arrière"
-#: gtk2_ardour/editor_actions.cc:173
-msgid "Playhead to Edit"
-msgstr "sur le curseur d'édition"
+#: gtk2_ardour/editor_actions.cc:248
+msgid "to Edit"
+msgstr "vers le point d'édition"
-#: gtk2_ardour/editor_actions.cc:175
-msgid "Edit to Playhead"
-msgstr "sur la tête de lecture"
+#: gtk2_ardour/editor_actions.cc:250
+msgid "to Playhead"
+msgstr "vers la tête de lecture"
+
+#: gtk2_ardour/editor_actions.cc:253
+msgid "Trim start at edit point"
+msgstr "Rogner le début jusqu'au point d'édition"
+
+#: gtk2_ardour/editor_actions.cc:255
+msgid "Trim end at edit point"
+msgstr "Rogner la fin jusqu'au point d'édition"
+
+#: gtk2_ardour/editor_actions.cc:258 gtk2_ardour/editor.cc:1857
+msgid "Start to edit point"
+msgstr "Début au point d'édition"
+
+#: gtk2_ardour/editor_actions.cc:260 gtk2_ardour/editor.cc:1858
+msgid "Edit point to end"
+msgstr "Point d'édition à la fin"
+
+#: gtk2_ardour/editor_actions.cc:262 gtk2_ardour/editor.cc:1859
+msgid "Trim To Loop"
+msgstr "Rogner aux repères de boucle"
+
+#: gtk2_ardour/editor_actions.cc:264 gtk2_ardour/editor.cc:1860
+msgid "Trim To Punch"
+msgstr "Rogner aux points de punch"
+
+#: gtk2_ardour/editor_actions.cc:267
+msgid "Set Loop From Edit Range"
+msgstr "Définir la boucle depuis l'intervalle"
-#: gtk2_ardour/editor_actions.cc:178
+#: gtk2_ardour/editor_actions.cc:269
+msgid "Set Loop From Region"
+msgstr "Définir la boucle depuis la région"
+
+#: gtk2_ardour/editor_actions.cc:271 gtk2_ardour/editor.cc:1952
+msgid "Loop Region"
+msgstr "Lire la région en boucle"
+
+#: gtk2_ardour/editor_actions.cc:273
+msgid "Set Punch From Edit Range"
+msgstr "Définir le punch depuis l'intervalle"
+
+#: gtk2_ardour/editor_actions.cc:275
+msgid "Set Punch From Region"
+msgstr "Définir le punch depuis la région"
+
+#: gtk2_ardour/editor_actions.cc:278
+msgid "Transpose"
+msgstr "Transposer"
+
+#: gtk2_ardour/editor_actions.cc:281
+msgid "Set Fade In Length"
+msgstr "Définir la durée de montée"
+
+#: gtk2_ardour/editor_actions.cc:283
+msgid "Toggle Fade In Active"
+msgstr "Commuter la montée"
+
+#: gtk2_ardour/editor_actions.cc:285
+msgid "Set Fade Out Length"
+msgstr "Définir la durée de descente"
+
+#: gtk2_ardour/editor_actions.cc:287
+msgid "Toggle Fade Out Active"
+msgstr "Commuter la descente"
+
+#: gtk2_ardour/editor_actions.cc:290
msgid "Align Regions Start"
msgstr "aligner le début des régions"
-#: gtk2_ardour/editor_actions.cc:180
+#: gtk2_ardour/editor_actions.cc:292
msgid "Align Regions Start Relative"
msgstr "aligner relativement le début des régions"
-#: gtk2_ardour/editor_actions.cc:182
+#: gtk2_ardour/editor_actions.cc:294
msgid "Align Regions End"
msgstr "aligner la fin des régions"
-#: gtk2_ardour/editor_actions.cc:184
+#: gtk2_ardour/editor_actions.cc:296
msgid "Align Regions End Relative"
msgstr "aligner relativement la fin des régions"
-#: gtk2_ardour/editor_actions.cc:187
+#: gtk2_ardour/editor_actions.cc:299
msgid "Align Regions Sync"
msgstr "aligner les synchro des régions"
-#: gtk2_ardour/editor_actions.cc:189
+#: gtk2_ardour/editor_actions.cc:301
msgid "Align Regions Sync Relative"
msgstr "aligner relativement les synchro des régions"
-#: gtk2_ardour/editor_actions.cc:192
-msgid "Audition at Mouse"
-msgstr "écoute à la souris"
+#: gtk2_ardour/editor_actions.cc:304
+msgid "Play From Edit Point"
+msgstr "Lire depuis le point d'édition"
-#: gtk2_ardour/editor_actions.cc:194
+#: gtk2_ardour/editor_actions.cc:306
+msgid "Play from Edit Point & Return"
+msgstr "Lire depuis le point d'édition et Revenir"
+
+#: gtk2_ardour/editor_actions.cc:309
+msgid "Play Edit Range"
+msgstr "Lire l'intervalle d'édition"
+
+#: gtk2_ardour/editor_actions.cc:310
+msgid "Play Selected Region(s)"
+msgstr "Lire les régions sélectionnées"
+
+#: gtk2_ardour/editor_actions.cc:312
msgid "Brush at Mouse"
msgstr "brosse à la souris"
-#: gtk2_ardour/editor_actions.cc:196
-msgid "Set Edit Cursor"
-msgstr "placer le curseur d'édition"
-
-#: gtk2_ardour/editor_actions.cc:198
+#: gtk2_ardour/editor_actions.cc:314
msgid "Mute/Unmute Region"
msgstr "région muette/active"
-#: gtk2_ardour/editor_actions.cc:200
+#: gtk2_ardour/editor_actions.cc:317
msgid "Set Playhead"
msgstr "placer la tête de lecture"
-#: gtk2_ardour/editor_actions.cc:202
+#: gtk2_ardour/editor_actions.cc:319
+msgid "Set Edit Point"
+msgstr "Placer le point d'édition"
+
+#: gtk2_ardour/editor_actions.cc:321 gtk2_ardour/rhythm_ferret.cc:42
msgid "Split Region"
-msgstr "découper la région"
+msgstr "Découper la région"
-#: gtk2_ardour/editor_actions.cc:204
+#: gtk2_ardour/editor_actions.cc:323
msgid "Set Region Sync Position"
-msgstr "placer la synchro de région"
+msgstr "Placer la synchro de région"
-#: gtk2_ardour/editor_actions.cc:212
+#: gtk2_ardour/editor_actions.cc:326 gtk2_ardour/editor.cc:3055
+msgid "Undo"
+msgstr "Annuler"
+
+#: gtk2_ardour/editor_actions.cc:328 gtk2_ardour/editor.cc:3064
+msgid "Redo"
+msgstr "Refaire"
+
+#: gtk2_ardour/editor_actions.cc:331
msgid "Export Session"
-msgstr "exporter la session..."
+msgstr "Exporter la session..."
-#: gtk2_ardour/editor_actions.cc:214
+#: gtk2_ardour/editor_actions.cc:333
msgid "Export Range"
-msgstr "exporter la zone de sélection..."
+msgstr "Exporter la zone de sélection..."
+
+#: gtk2_ardour/editor_actions.cc:336
+msgid "Separate"
+msgstr "Séparer"
+
+#: gtk2_ardour/editor_actions.cc:338 gtk2_ardour/editor_actions.cc:382
+msgid "Crop"
+msgstr "Découper"
+
+#: gtk2_ardour/editor_actions.cc:340 gtk2_ardour/editor.cc:1988
+#: gtk2_ardour/editor.cc:2063 gtk2_ardour/redirect_box.cc:1181
+msgid "Cut"
+msgstr "Couper"
-#: gtk2_ardour/editor_actions.cc:220 gtk2_ardour/connection_editor.cc:55
+#: gtk2_ardour/editor_actions.cc:343 gtk2_ardour/redirect_box.cc:1186
+#: gtk2_ardour/connection_editor.cc:55
msgid "Delete"
msgstr "Enlever"
-#: gtk2_ardour/editor_actions.cc:226
+#: gtk2_ardour/editor_actions.cc:345 gtk2_ardour/editor.cc:1989
+#: gtk2_ardour/editor.cc:2064 gtk2_ardour/redirect_box.cc:1183
+msgid "Copy"
+msgstr "Copier"
+
+#: gtk2_ardour/editor_actions.cc:347 gtk2_ardour/editor.cc:1990
+#: gtk2_ardour/editor.cc:2065 gtk2_ardour/redirect_box.cc:1189
+msgid "Paste"
+msgstr "Coller"
+
+#: gtk2_ardour/editor_actions.cc:349
msgid "Duplicate Region"
-msgstr "dupliquer la région"
+msgstr "Dupliquer la région"
+
+#: gtk2_ardour/editor_actions.cc:351
+msgid "Multi-Duplicate Region"
+msgstr "Multi-dupliquer la région"
-#: gtk2_ardour/editor_actions.cc:228
+#: gtk2_ardour/editor_actions.cc:353
msgid "Duplicate Range"
msgstr "dupliquer la zone de sélection"
-#: gtk2_ardour/editor_actions.cc:230
+#: gtk2_ardour/editor_actions.cc:355
msgid "Insert Region"
msgstr "Insérer une région"
-#: gtk2_ardour/editor_actions.cc:232
+#: gtk2_ardour/editor_actions.cc:357
msgid "Reverse Region"
msgstr "inverser la région"
-#: gtk2_ardour/editor_actions.cc:234
+#: gtk2_ardour/editor_actions.cc:359
msgid "Normalize Region"
msgstr "normaliser la région"
-#: gtk2_ardour/editor_actions.cc:236
-msgid "crop"
-msgstr "recadrer"
+#: gtk2_ardour/editor_actions.cc:362
+msgid "Boost Region Gain"
+msgstr "Booster le gain de la région"
+
+#: gtk2_ardour/editor_actions.cc:364
+msgid "Cut Region Gain"
+msgstr "Couper le gain de la région"
+
+#: gtk2_ardour/editor_actions.cc:367
+msgid "Set Tempo from Region=Bar"
+msgstr "Définir le tempo = région"
+
+#: gtk2_ardour/editor_actions.cc:369
+msgid "Set Tempo from Edit Range=Bar"
+msgstr "Définir le tempo = zone de sélection"
+
+#: gtk2_ardour/editor_actions.cc:372
+msgid "Split Regions At Percussion Onsets"
+msgstr "Découper les régions au début des percussions"
+
+#: gtk2_ardour/editor_actions.cc:374 gtk2_ardour/rhythm_ferret.cc:36
+msgid "Rhythm Ferret"
+msgstr "Fureteur de rythme"
+
+#: gtk2_ardour/editor_actions.cc:377
+msgid "Move Forward to Transient"
+msgstr "Avancer à l'éphémère suivant"
-#: gtk2_ardour/editor_actions.cc:238
+#: gtk2_ardour/editor_actions.cc:379
+msgid "Move Backwards to Transient"
+msgstr "Reculer à l'éphémère précédent"
+
+#: gtk2_ardour/editor_actions.cc:384
msgid "Insert Chunk"
msgstr "insérer un fragment"
-#: gtk2_ardour/editor_actions.cc:241
-msgid "Split at edit cursor"
-msgstr "découper au curseur d'édition"
+#: gtk2_ardour/editor_actions.cc:387
+msgid "Split At Edit Point"
+msgstr "Séparer au point d'édition"
-#: gtk2_ardour/editor_actions.cc:244
+#: gtk2_ardour/editor_actions.cc:390
msgid "Start Range"
-msgstr "zone de début"
+msgstr "Zone de début"
-#: gtk2_ardour/editor_actions.cc:246
+#: gtk2_ardour/editor_actions.cc:392
msgid "Finish Range"
-msgstr "zone de fin"
+msgstr "Zone de fin"
-#: gtk2_ardour/editor_actions.cc:248
+#: gtk2_ardour/editor_actions.cc:394
msgid "Finish add Range"
msgstr "Terminer l'ajout d'intervalle"
-#: gtk2_ardour/editor_actions.cc:251
+#: gtk2_ardour/editor_actions.cc:397 gtk2_ardour/editor.cc:1911
msgid "Extend Range to End of Region"
msgstr "étendre à la fin de la région"
-#: gtk2_ardour/editor_actions.cc:253
+#: gtk2_ardour/editor_actions.cc:399 gtk2_ardour/editor.cc:1912
msgid "Extend Range to Start of Region"
msgstr "étendre au début de la région"
-#: gtk2_ardour/editor_actions.cc:256
+#: gtk2_ardour/editor_actions.cc:402
msgid "Follow Playhead"
msgstr "suivre la tête de lecture"
-#: gtk2_ardour/editor_actions.cc:264
+#: gtk2_ardour/editor_actions.cc:410
msgid "Zoom Focus Left"
msgstr "la gauche"
-#: gtk2_ardour/editor_actions.cc:266
+#: gtk2_ardour/editor_actions.cc:412
msgid "Zoom Focus Right"
msgstr "la droite"
-#: gtk2_ardour/editor_actions.cc:268
+#: gtk2_ardour/editor_actions.cc:414
msgid "Zoom Focus Center"
msgstr "le centre"
-#: gtk2_ardour/editor_actions.cc:270
+#: gtk2_ardour/editor_actions.cc:416
msgid "Zoom Focus Playhead"
msgstr "la tête de lecture"
-#: gtk2_ardour/editor_actions.cc:272
+#: gtk2_ardour/editor_actions.cc:418
+msgid "Zoom Focus Mouse"
+msgstr "la souris"
+
+#: gtk2_ardour/editor_actions.cc:420
msgid "Zoom Focus Edit"
msgstr "le curseur d'édition"
-#: gtk2_ardour/editor_actions.cc:278
+#: gtk2_ardour/editor_actions.cc:426
msgid "Object Tool"
msgstr "outil d'objet"
-#: gtk2_ardour/editor_actions.cc:279
+#: gtk2_ardour/editor_actions.cc:427
msgid "Range Tool"
msgstr "outil de zone de sélection"
-#: gtk2_ardour/editor_actions.cc:280
+#: gtk2_ardour/editor_actions.cc:428
msgid "Gain Tool"
msgstr "outil de gain"
-#: gtk2_ardour/editor_actions.cc:281
+#: gtk2_ardour/editor_actions.cc:429
msgid "Zoom Tool"
msgstr "outil de zoom"
-#: gtk2_ardour/editor_actions.cc:282
+#: gtk2_ardour/editor_actions.cc:430
msgid "Timefx Tool"
msgstr "outil d'étirement/contraction"
-#: gtk2_ardour/editor_actions.cc:284
+#: gtk2_ardour/editor_actions.cc:433 gtk2_ardour/editor.cc:139
+#: gtk2_ardour/editor.cc:149 gtk2_ardour/editor.cc:2757
+#: gtk2_ardour/editor.cc:2783 gtk2_ardour/editor.cc:3322
+#: gtk2_ardour/editor.cc:3347
+msgid "Playhead"
+msgstr "tête de lecture"
+
+#: gtk2_ardour/editor_actions.cc:434 gtk2_ardour/editor.cc:141
+#: gtk2_ardour/editor.cc:150 gtk2_ardour/editor.cc:3349
+msgid "Mouse"
+msgstr "Souris"
+
+#: gtk2_ardour/editor_actions.cc:435 gtk2_ardour/editor.cc:140
+#: gtk2_ardour/editor.cc:3320 gtk2_ardour/marker_time_axis.cc:255
+msgid "Marker"
+msgstr "Repère"
+
+#: gtk2_ardour/editor_actions.cc:437
+msgid "Change edit point"
+msgstr "Changer le point d'édition"
+
+#: gtk2_ardour/editor_actions.cc:438
+msgid "Change edit point (w/Marker)"
+msgstr "Changer le point d'édition (avec repère)"
+
+#: gtk2_ardour/editor_actions.cc:440
+msgid "Splice"
+msgstr "Collant"
+
+#: gtk2_ardour/editor_actions.cc:441
+msgid "Slide"
+msgstr "Glissant"
+
+#: gtk2_ardour/editor_actions.cc:442
+msgid "Toggle Edit Mode"
+msgstr "Commuter le mode d'édition"
+
+#: gtk2_ardour/editor_actions.cc:444
msgid "Snap To"
msgstr "aligner sur"
-#: gtk2_ardour/editor_actions.cc:285
+#: gtk2_ardour/editor_actions.cc:445
msgid "Snap Mode"
msgstr "mode d'alignement"
-#: gtk2_ardour/editor_actions.cc:294
-msgid "Snap to frame"
-msgstr "aligner sur la trame"
+#: gtk2_ardour/editor_actions.cc:448 gtk2_ardour/editor.cc:132
+#: gtk2_ardour/editor.cc:3279
+msgid "No Grid"
+msgstr "Pas de grille"
+
+#: gtk2_ardour/editor_actions.cc:449 gtk2_ardour/editor.cc:133
+#: gtk2_ardour/editor.cc:3281
+msgid "Grid"
+msgstr "Grille"
-#: gtk2_ardour/editor_actions.cc:295
+#: gtk2_ardour/editor_actions.cc:450 gtk2_ardour/editor.cc:134
+#: gtk2_ardour/editor.cc:3283
+msgid "Magnetic"
+msgstr "Magnétique"
+
+#: gtk2_ardour/editor_actions.cc:452
+msgid "Next Snap Mode"
+msgstr "Mode d'alignement suivant"
+
+#: gtk2_ardour/editor_actions.cc:453
+msgid "Next Snap Choice"
+msgstr "Choix d'alignement suivant"
+
+#: gtk2_ardour/editor_actions.cc:458
msgid "Snap to cd frame"
msgstr "aligner sur la trame de CD"
-#: gtk2_ardour/editor_actions.cc:296
+#: gtk2_ardour/editor_actions.cc:459
msgid "Snap to SMPTE frame"
msgstr "aligner sur la trame SMPTE"
-#: gtk2_ardour/editor_actions.cc:297
+#: gtk2_ardour/editor_actions.cc:460
msgid "Snap to SMPTE seconds"
msgstr "aligner sur les secondes SMPTE"
-#: gtk2_ardour/editor_actions.cc:298
+#: gtk2_ardour/editor_actions.cc:461
msgid "Snap to SMPTE minutes"
msgstr "aligner sur les minutes SMPTE"
-#: gtk2_ardour/editor_actions.cc:299
+#: gtk2_ardour/editor_actions.cc:462
msgid "Snap to seconds"
msgstr "aligner sur les secondes"
-#: gtk2_ardour/editor_actions.cc:300
+#: gtk2_ardour/editor_actions.cc:463
msgid "Snap to minutes"
msgstr "aligner sur les minutes"
-#: gtk2_ardour/editor_actions.cc:301
+#: gtk2_ardour/editor_actions.cc:464
msgid "Snap to thirtyseconds"
msgstr "aligner sur les 32ème de seconde"
-#: gtk2_ardour/editor_actions.cc:302
+#: gtk2_ardour/editor_actions.cc:465
msgid "Snap to asixteenthbeat"
msgstr "aligner sur un 16ème de temps"
-#: gtk2_ardour/editor_actions.cc:303
+#: gtk2_ardour/editor_actions.cc:466
msgid "Snap to eighths"
msgstr "aligner sur les 8ème de temps"
-#: gtk2_ardour/editor_actions.cc:304
+#: gtk2_ardour/editor_actions.cc:467
msgid "Snap to quarters"
msgstr "aligner sur les quart de temps"
-#: gtk2_ardour/editor_actions.cc:305
+#: gtk2_ardour/editor_actions.cc:468
msgid "Snap to thirds"
msgstr "aligner sur les triolets"
-#: gtk2_ardour/editor_actions.cc:306
+#: gtk2_ardour/editor_actions.cc:469
msgid "Snap to beat"
msgstr "les temps"
-#: gtk2_ardour/editor_actions.cc:307
+#: gtk2_ardour/editor_actions.cc:470
msgid "Snap to bar"
msgstr "les mesures"
-#: gtk2_ardour/editor_actions.cc:308
+#: gtk2_ardour/editor_actions.cc:471
msgid "Snap to mark"
msgstr "aligner sur le repère"
-#: gtk2_ardour/editor_actions.cc:309
-msgid "Snap to edit cursor"
-msgstr "aligner sur le curseur d'édition"
-
-#: gtk2_ardour/editor_actions.cc:310
+#: gtk2_ardour/editor_actions.cc:472
msgid "Snap to region start"
msgstr "aligner sur le début de région"
-#: gtk2_ardour/editor_actions.cc:311
+#: gtk2_ardour/editor_actions.cc:473
msgid "Snap to region end"
msgstr "aligner sur la fin de région"
-#: gtk2_ardour/editor_actions.cc:312
+#: gtk2_ardour/editor_actions.cc:474
msgid "Snap to region sync"
msgstr "aligne sur la synchro de région"
-#: gtk2_ardour/editor_actions.cc:313
+#: gtk2_ardour/editor_actions.cc:475
msgid "Snap to region boundary"
msgstr "aligner sur les limites de région"
-#: gtk2_ardour/editor_actions.cc:322
+#: gtk2_ardour/editor_actions.cc:484
msgid "Sort"
msgstr "trier"
-#: gtk2_ardour/editor_actions.cc:330
+#: gtk2_ardour/editor_actions.cc:490 gtk2_ardour/editor.cc:1875
+#: gtk2_ardour/editor.cc:3769 gtk2_ardour/editor_markers.cc:596
+#: gtk2_ardour/editor_markers.cc:652 gtk2_ardour/imageframe_time_axis.cc:258
+#: gtk2_ardour/location_ui.cc:58 gtk2_ardour/marker_time_axis.cc:214
+#: gtk2_ardour/mixer_strip.cc:999 gtk2_ardour/route_time_axis.cc:491
+msgid "Remove"
+msgstr "Supprimer"
+
+#: gtk2_ardour/editor_actions.cc:492
msgid "Show all"
msgstr "afficher tout"
-#: gtk2_ardour/editor_actions.cc:331
+#: gtk2_ardour/editor_actions.cc:493
msgid "Show automatic regions"
msgstr "afficher les régions automatiques"
-#: gtk2_ardour/editor_actions.cc:333
+#: gtk2_ardour/editor_actions.cc:495
msgid "Ascending"
msgstr "croissant"
-#: gtk2_ardour/editor_actions.cc:335
+#: gtk2_ardour/editor_actions.cc:497
msgid "Descending"
msgstr "décroissant"
-#: gtk2_ardour/editor_actions.cc:338
+#: gtk2_ardour/editor_actions.cc:500
msgid "By Region Name"
msgstr "par nom de région"
-#: gtk2_ardour/editor_actions.cc:340
+#: gtk2_ardour/editor_actions.cc:502
msgid "By Region Length"
msgstr "par longueur de région"
-#: gtk2_ardour/editor_actions.cc:342
+#: gtk2_ardour/editor_actions.cc:504
msgid "By Region Position"
msgstr "par position de région"
-#: gtk2_ardour/editor_actions.cc:344
+#: gtk2_ardour/editor_actions.cc:506
msgid "By Region Timestamp"
msgstr "par date de région"
-#: gtk2_ardour/editor_actions.cc:346
+#: gtk2_ardour/editor_actions.cc:508
msgid "By Region Start in File"
msgstr "par début de région (dans le fichier)"
-#: gtk2_ardour/editor_actions.cc:348
+#: gtk2_ardour/editor_actions.cc:510
msgid "By Region End in File"
msgstr "par fin de région (dans le fichier)"
-#: gtk2_ardour/editor_actions.cc:350
+#: gtk2_ardour/editor_actions.cc:512
msgid "By Source File Name"
msgstr "par nom de fichier source"
-#: gtk2_ardour/editor_actions.cc:352
+#: gtk2_ardour/editor_actions.cc:514
msgid "By Source File Length"
msgstr "par longueur de fichier source"
-#: gtk2_ardour/editor_actions.cc:354
+#: gtk2_ardour/editor_actions.cc:516
msgid "By Source File Creation Date"
msgstr "par date de création du fichier source"
-#: gtk2_ardour/editor_actions.cc:356
+#: gtk2_ardour/editor_actions.cc:518
msgid "By Source Filesystem"
msgstr "par système de fichier source"
-#: gtk2_ardour/editor_actions.cc:362
+#: gtk2_ardour/editor_actions.cc:524
+msgid "Add Existing Audio"
+msgstr "Importer"
+
+#: gtk2_ardour/editor_actions.cc:526
msgid "Add External Audio"
msgstr "importer des fichiers audio"
-#: gtk2_ardour/editor_actions.cc:364
-msgid "as Region(s)"
-msgstr "vers la liste des régions..."
-
-#: gtk2_ardour/editor_actions.cc:366
-msgid "as Tracks"
-msgstr "vers nouvelles pistes..."
-
-#: gtk2_ardour/editor_actions.cc:368
-msgid "as Tape Tracks"
-msgstr "vers nouvelles pistes (mode cassette)..."
-
-#: gtk2_ardour/editor_actions.cc:370
-msgid "to Tracks"
-msgstr "vers les pistes sélectionnées..."
-
-#: gtk2_ardour/editor_actions.cc:373
+#: gtk2_ardour/editor_actions.cc:529
msgid "Show Waveforms"
msgstr "formes d'onde"
-#: gtk2_ardour/editor_actions.cc:374
+#: gtk2_ardour/editor_actions.cc:530
msgid "Show Waveforms While Recording"
msgstr "formes d'onde pendant l'enregistr."
-#: gtk2_ardour/editor_actions.cc:375
+#: gtk2_ardour/editor_actions.cc:531
msgid "Show Measures"
msgstr "montrer les barres de mesures"
-#: gtk2_ardour/editor_actions.cc:379
+#: gtk2_ardour/editor_actions.cc:535
+msgid "Show Logo"
+msgstr "Afficher le logo"
+
+#: gtk2_ardour/editor_actions.cc:541
msgid "Later is Higher"
msgstr "ultérieures au dessus"
-#: gtk2_ardour/editor_actions.cc:380
+#: gtk2_ardour/editor_actions.cc:542
msgid "Most Recently Moved/Added is Higher"
msgstr "déplacées/ajoutées au dessus"
-#: gtk2_ardour/editor_actions.cc:381
+#: gtk2_ardour/editor_actions.cc:543
msgid "Most Recently Added is Higher"
msgstr "ajoutées au dessus"
-#: gtk2_ardour/editor_actions.cc:385
+#: gtk2_ardour/editor_actions.cc:547
msgid "23.976"
msgstr "23.976"
-#: gtk2_ardour/editor_actions.cc:386
+#: gtk2_ardour/editor_actions.cc:548
msgid "24"
msgstr "24"
-#: gtk2_ardour/editor_actions.cc:387
+#: gtk2_ardour/editor_actions.cc:549
msgid "24.976"
msgstr "24.976"
-#: gtk2_ardour/editor_actions.cc:388
+#: gtk2_ardour/editor_actions.cc:550
msgid "25"
msgstr "25"
-#: gtk2_ardour/editor_actions.cc:389
+#: gtk2_ardour/editor_actions.cc:551
msgid "29.97"
msgstr "29.97"
-#: gtk2_ardour/editor_actions.cc:390
+#: gtk2_ardour/editor_actions.cc:552
msgid "29.97 drop"
msgstr "29.97 drop"
-#: gtk2_ardour/editor_actions.cc:391
+#: gtk2_ardour/editor_actions.cc:553
msgid "30"
msgstr "30"
-#: gtk2_ardour/editor_actions.cc:392
+#: gtk2_ardour/editor_actions.cc:554
msgid "30 drop"
msgstr "30 drop"
-#: gtk2_ardour/editor_actions.cc:393
+#: gtk2_ardour/editor_actions.cc:555
msgid "59.94"
msgstr "59.94"
-#: gtk2_ardour/editor_actions.cc:394
+#: gtk2_ardour/editor_actions.cc:556
msgid "60"
msgstr "60"
-#: gtk2_ardour/editor_actions.cc:398
+#: gtk2_ardour/editor_actions.cc:560
msgid "+4.1667% + 0.1%"
msgstr "+4.1667% + 0.1%"
-#: gtk2_ardour/editor_actions.cc:399
+#: gtk2_ardour/editor_actions.cc:561
msgid "+4.1667%"
msgstr "+4.1667%"
-#: gtk2_ardour/editor_actions.cc:400
+#: gtk2_ardour/editor_actions.cc:562
msgid "+4.1667% - 0.1%"
msgstr "+4.1667% - 0.1%"
-#: gtk2_ardour/editor_actions.cc:401
+#: gtk2_ardour/editor_actions.cc:563
msgid "+ 0.1%"
msgstr "+ 0.1%"
-#: gtk2_ardour/editor_actions.cc:403
+#: gtk2_ardour/editor_actions.cc:564 gtk2_ardour/engine_dialog.cc:101
+#: gtk2_ardour/engine_dialog.cc:106 gtk2_ardour/engine_dialog.cc:495
+#: gtk2_ardour/export_dialog.cc:78 gtk2_ardour/export_dialog.cc:92
+#: gtk2_ardour/export_dialog.cc:956 gtk2_ardour/export_dialog.cc:1294
+#: gtk2_ardour/route_ui.cc:513
+msgid "None"
+msgstr "(aucun)"
+
+#: gtk2_ardour/editor_actions.cc:565
msgid "- 0.1%"
msgstr "- 0.1%"
-#: gtk2_ardour/editor_actions.cc:404
+#: gtk2_ardour/editor_actions.cc:566
msgid "-4.1667% + 0.1%"
msgstr "-4.1667% + 0.1%"
-#: gtk2_ardour/editor_actions.cc:405
+#: gtk2_ardour/editor_actions.cc:567
msgid "-4.1667%"
msgstr "-4.1667%"
-#: gtk2_ardour/editor_actions.cc:406
+#: gtk2_ardour/editor_actions.cc:568
msgid "-4.1667% - 0.1%"
msgstr "-4.1667% - 0.1%"
-#: gtk2_ardour/editor_actions.cc:410
+#: gtk2_ardour/editor_actions.cc:572
msgid "80 per frame"
msgstr "80 par trame"
-#: gtk2_ardour/editor_actions.cc:411
+#: gtk2_ardour/editor_actions.cc:574
msgid "100 per frame"
msgstr "100 par trame"
-#: gtk2_ardour/editor_actions.cc:714 gtk2_ardour/editor_actions.cc:759
-#: gtk2_ardour/editor_actions.cc:770 gtk2_ardour/editor_actions.cc:814
-#: gtk2_ardour/editor_actions.cc:824
+#: gtk2_ardour/editor_actions.cc:890 gtk2_ardour/editor_actions.cc:999
+#: gtk2_ardour/editor_actions.cc:1010 gtk2_ardour/editor_actions.cc:1063
+#: gtk2_ardour/editor_actions.cc:1074 gtk2_ardour/editor_actions.cc:1121
+#: gtk2_ardour/editor_actions.cc:1131
msgid "programming error: %1: %2"
msgstr "programming error: %1: %2"
-#: gtk2_ardour/editor_actions.cc:985
+#: gtk2_ardour/editor_actions.cc:1292
msgid "Configuraton is using unhandled subframes per frame value: %1"
-msgstr "La configuration utilise une valeur non prise en charge de sous-trames par trame : %1"
+msgstr ""
+"La configuration utilise une valeur non prise en charge de sous-trames par "
+"trame : %1"
-#: gtk2_ardour/editor_audio_import.cc:84
+#: gtk2_ardour/editor_actions.cc:1324 gtk2_ardour/route_time_axis.cc:516
+#: gtk2_ardour/route_time_axis.cc:571 gtk2_ardour/route_time_axis.cc:840
+msgid "programming error: %1 %2"
+msgstr "programming error: %1 %2"
+
+#: gtk2_ardour/editor_audio_import.cc:71 gtk2_ardour/editor_audio_import.cc:92
msgid "You can't import or embed an audiofile until you have a session loaded."
msgstr ""
"Vous ne pouvez pas importer ou lier un fichier audio avant d'avoir chargé "
"une session."
-#: gtk2_ardour/editor_audio_import.cc:89
-msgid "Add existing audio to session"
-msgstr "Import de fichiers audio dans la session"
-
-#: gtk2_ardour/editor_audio_import.cc:176
-msgid "Import as a %1 region"
-msgstr "Importer comme région %1"
-
-#: gtk2_ardour/editor_audio_import.cc:177
-msgid "multichannel"
-msgstr "multivoies"
-
-#: gtk2_ardour/editor_audio_import.cc:177 gtk2_ardour/export_dialog.cc:86
-msgid "stereo"
-msgstr "stéréo"
-
-#: gtk2_ardour/editor_audio_import.cc:178
-msgid "Import as multiple regions"
-msgstr "importer vers des régions multiples"
-
-#: gtk2_ardour/editor_audio_import.cc:180
-msgid ""
-"Paired files detected (%1, %2 ...).\n"
-"Do you want to:"
-msgstr ""
-"Paire de fichiers détectée (%1, %2 ...).\n"
-"Voulez-vous :"
+#: gtk2_ardour/editor_audio_import.cc:77
+#: gtk2_ardour/editor_audio_import.cc:110
+msgid "Add existing audio"
+msgstr "Ajouter l'audio existant"
-#: gtk2_ardour/editor_audio_import.cc:226
+#: gtk2_ardour/editor_audio_import.cc:370
msgid "importing %1"
msgstr "importation de %1"
-#: gtk2_ardour/editor_audio_import.cc:232
+#: gtk2_ardour/editor_audio_import.cc:376
msgid "Cancel Import"
msgstr "Annuler l'importation"
-#: gtk2_ardour/editor_audio_import.cc:332
+#: gtk2_ardour/editor_audio_import.cc:479
msgid "Editor: cannot open file \"%1\", (%2)"
msgstr "Éditeur : impossible d'ouvrir le fichier « %1 » (%2)"
-#: gtk2_ardour/editor_audio_import.cc:340
+#: gtk2_ardour/editor_audio_import.cc:487
msgid "Cancel entire import"
msgstr "Annuler toute l'importation"
-#: gtk2_ardour/editor_audio_import.cc:341
+#: gtk2_ardour/editor_audio_import.cc:488
msgid "Don't embed it"
msgstr "Ne pas le lier"
-#: gtk2_ardour/editor_audio_import.cc:342
+#: gtk2_ardour/editor_audio_import.cc:489
msgid "Embed all without questions"
msgstr "Lier tout sans poser de question"
-#: gtk2_ardour/editor_audio_import.cc:345
-#: gtk2_ardour/editor_audio_import.cc:370
+#: gtk2_ardour/editor_audio_import.cc:492
+#: gtk2_ardour/editor_audio_import.cc:519
msgid ""
"%1\n"
"This audiofile's sample rate doesn't match the session sample rate!"
@@ -3507,47 +3250,688 @@ msgstr ""
"La fréquence d'échantillonnage de ce fichier audio ne correspond pas à celle "
"de la session !"
-#: gtk2_ardour/editor_audio_import.cc:367
+#: gtk2_ardour/editor_audio_import.cc:515 gtk2_ardour/editor.cc:3623
+#: gtk2_ardour/editor_ops.cc:5128 gtk2_ardour/editor_timefx.cc:88
+#: gtk2_ardour/export_dialog.cc:1034 gtk2_ardour/io_selector.cc:60
+#: gtk2_ardour/io_selector.cc:748 gtk2_ardour/redirect_box.cc:1022
+#: gtk2_ardour/tempo_dialog.cc:41 gtk2_ardour/tempo_dialog.cc:60
+#: gtk2_ardour/tempo_dialog.cc:260 gtk2_ardour/tempo_dialog.cc:277
+#: gtk2_ardour/connection_editor.cc:59
+msgid "Cancel"
+msgstr "Annuler"
+
+#: gtk2_ardour/editor_audio_import.cc:516
msgid "Embed it anyway"
msgstr "Lier quand même"
-#: gtk2_ardour/editor_audio_import.cc:417
+#: gtk2_ardour/editor_audio_import.cc:561
msgid "could not open %1"
msgstr "impossible d'ouvrir %1"
-#: gtk2_ardour/editor_audio_import.cc:464
+#: gtk2_ardour/editor_audio_import.cc:691
msgid "insert sndfile"
msgstr "Insérer un fichier audio"
-#: gtk2_ardour/editor_canvas.cc:118
+#: gtk2_ardour/editor_canvas.cc:129
msgid "VerboseCanvasCursor"
msgstr "VerboseCanvasCursor"
-#: gtk2_ardour/editor_canvas.cc:267
-msgid "edit cursor color not defined, check your ardour.colors file!"
-msgstr "Pas de couleur définie pour le curseur d'édition. Vérifiez votre fichier ardour.colors !"
+#: gtk2_ardour/editor.cc:110 gtk2_ardour/editor.cc:3253
+msgid "CD Frames"
+msgstr "trames de CD"
+
+#: gtk2_ardour/editor.cc:111 gtk2_ardour/editor.cc:3255
+msgid "SMPTE Frames"
+msgstr "trames SMPTE"
+
+#: gtk2_ardour/editor.cc:112 gtk2_ardour/editor.cc:2771
+#: gtk2_ardour/editor.cc:3257
+msgid "SMPTE Seconds"
+msgstr "secondes SMPTE"
+
+#: gtk2_ardour/editor.cc:113 gtk2_ardour/editor.cc:3259
+msgid "SMPTE Minutes"
+msgstr "minutes SMPTE"
+
+#: gtk2_ardour/editor.cc:114 gtk2_ardour/editor.cc:3261
+msgid "Seconds"
+msgstr "secondes"
+
+#: gtk2_ardour/editor.cc:115 gtk2_ardour/editor.cc:3263
+msgid "Minutes"
+msgstr "minutes"
+
+#: gtk2_ardour/editor.cc:116 gtk2_ardour/editor.cc:3237
+msgid "Beats/32"
+msgstr "32ème de temps"
+
+#: gtk2_ardour/editor.cc:117 gtk2_ardour/editor.cc:3235
+msgid "Beats/16"
+msgstr "16ème de temps"
+
+#: gtk2_ardour/editor.cc:118 gtk2_ardour/editor.cc:3233
+msgid "Beats/8"
+msgstr "8ème de temps"
+
+#: gtk2_ardour/editor.cc:119 gtk2_ardour/editor.cc:3231
+msgid "Beats/4"
+msgstr "quart de temps"
+
+#: gtk2_ardour/editor.cc:120 gtk2_ardour/editor.cc:3229
+msgid "Beats/3"
+msgstr "tiers de temps"
+
+#: gtk2_ardour/editor.cc:121 gtk2_ardour/editor.cc:3239
+msgid "Beats"
+msgstr "temps"
+
+#: gtk2_ardour/editor.cc:122 gtk2_ardour/editor.cc:3241
+msgid "Bars"
+msgstr "mesures"
+
+#: gtk2_ardour/editor.cc:123 gtk2_ardour/editor.cc:3243
+msgid "Marks"
+msgstr "Repères"
+
+#: gtk2_ardour/editor.cc:124 gtk2_ardour/editor.cc:3245
+msgid "Region starts"
+msgstr "débuts de régions"
+
+#: gtk2_ardour/editor.cc:125 gtk2_ardour/editor.cc:3247
+msgid "Region ends"
+msgstr "fins de régions"
+
+#: gtk2_ardour/editor.cc:126 gtk2_ardour/editor.cc:3251
+msgid "Region syncs"
+msgstr "synchro de régions"
+
+#: gtk2_ardour/editor.cc:127 gtk2_ardour/editor.cc:3249
+msgid "Region bounds"
+msgstr "limites de régions"
+
+#: gtk2_ardour/editor.cc:146 gtk2_ardour/editor.cc:3341
+#: gtk2_ardour/export_dialog.cc:142 gtk2_ardour/export_dialog.cc:158
+#: gtk2_ardour/export_dialog.cc:1131 gtk2_ardour/export_dialog.cc:1135
+msgid "Left"
+msgstr "gauche"
+
+#: gtk2_ardour/editor.cc:147 gtk2_ardour/editor.cc:3343
+#: gtk2_ardour/export_dialog.cc:143 gtk2_ardour/export_dialog.cc:159
+msgid "Right"
+msgstr "droite"
+
+#: gtk2_ardour/editor.cc:148 gtk2_ardour/editor.cc:3345
+msgid "Center"
+msgstr "centre"
+
+#: gtk2_ardour/editor.cc:151 gtk2_ardour/editor.cc:3351
+msgid "Edit Point"
+msgstr "Point d'édition"
+
+#: gtk2_ardour/editor.cc:157
+msgid "Mushy"
+msgstr "Bouillonnant"
+
+#: gtk2_ardour/editor.cc:158
+msgid "Smooth"
+msgstr "Lisse"
+
+#: gtk2_ardour/editor.cc:159
+msgid "Balanced multitimbral mixture"
+msgstr "Mélange polyphonique équilibré"
+
+#: gtk2_ardour/editor.cc:160
+msgid "Unpitched percussion with stable notes"
+msgstr "Percussion atonale à sons stables"
+
+#: gtk2_ardour/editor.cc:161
+msgid "Crisp monophonic instrumental"
+msgstr "instrumental monophonique précis"
+
+#: gtk2_ardour/editor.cc:162
+msgid "Unpitched solo percussion"
+msgstr "Percussion solo atonale"
+
+#: gtk2_ardour/editor.cc:190
+msgid "Mins:Secs"
+msgstr "min:s"
+
+#: gtk2_ardour/editor.cc:194 gtk2_ardour/editor_rulers.cc:436
+#: gtk2_ardour/tempo_dialog.cc:39 gtk2_ardour/tempo_dialog.cc:58
+msgid "Tempo"
+msgstr "tempo"
+
+#: gtk2_ardour/editor.cc:195 gtk2_ardour/editor_rulers.cc:430
+#: gtk2_ardour/tempo_dialog.cc:258 gtk2_ardour/tempo_dialog.cc:275
+msgid "Meter"
+msgstr "mesure"
+
+#: gtk2_ardour/editor.cc:196 gtk2_ardour/editor_rulers.cc:442
+msgid "Location Markers"
+msgstr "repères"
+
+#: gtk2_ardour/editor.cc:197 gtk2_ardour/editor_rulers.cc:449
+msgid "Range Markers"
+msgstr "intervalles"
+
+#: gtk2_ardour/editor.cc:198 gtk2_ardour/editor_rulers.cc:462
+msgid "Loop/Punch Ranges"
+msgstr "boucle et punch-in/out"
+
+#: gtk2_ardour/editor.cc:199 gtk2_ardour/editor_rulers.cc:456
+msgid "CD Markers"
+msgstr "Marqueurs de CD"
+
+#: gtk2_ardour/editor.cc:217
+msgid "mode"
+msgstr "mode"
+
+#: gtk2_ardour/editor.cc:218
+msgid "automation"
+msgstr "automatisation"
+
+#: gtk2_ardour/editor.cc:496 gtk2_ardour/editor.cc:520
+msgid "Name"
+msgstr "Nom"
+
+#: gtk2_ardour/editor.cc:638 gtk2_ardour/editor.cc:680
+msgid "Chunks"
+msgstr "Fragments"
+
+#: gtk2_ardour/editor.cc:669
+msgid "Tracks/Busses"
+msgstr "Pistes / Bus"
+
+#: gtk2_ardour/editor.cc:672
+msgid "Snapshots"
+msgstr "Clichés"
+
+#: gtk2_ardour/editor.cc:675
+msgid "Edit Groups"
+msgstr "Groupes"
+
+#: gtk2_ardour/editor.cc:739
+msgid "Nudge Region/Selection Forwards"
+msgstr "Décaler vers la droite (région ou sélection)"
+
+#: gtk2_ardour/editor.cc:740
+msgid "Nudge Region/Selection Backwards"
+msgstr "Décaler vers la gauche (région ou sélection)"
+
+#: gtk2_ardour/editor.cc:770 gtk2_ardour/editor_mixer.cc:358
+msgid "Editor"
+msgstr "Éditeur"
+
+#: gtk2_ardour/editor.cc:1179 gtk2_ardour/editor.cc:1187
+#: gtk2_ardour/editor.cc:4225 gtk2_ardour/editor.cc:4253
+msgid "Loop"
+msgstr "Boucle"
+
+#: gtk2_ardour/editor.cc:1192 gtk2_ardour/editor.cc:1200
+msgid "Punch"
+msgstr "Punch in/out"
+
+#: gtk2_ardour/editor.cc:1324 gtk2_ardour/editor_mouse.cc:1831
+msgid "programming error: fade in canvas item has no regionview data pointer!"
+msgstr "programming error: fade in canvas item has no regionview data pointer!"
+
+#: gtk2_ardour/editor.cc:1336 gtk2_ardour/editor.cc:1358
+#: gtk2_ardour/redirect_box.cc:1198
+msgid "Deactivate"
+msgstr "Désactiver"
+
+#: gtk2_ardour/editor.cc:1338 gtk2_ardour/editor.cc:1360
+#: gtk2_ardour/redirect_box.cc:1196
+msgid "Activate"
+msgstr "Activer"
+
+#: gtk2_ardour/editor.cc:1378 gtk2_ardour/route_time_axis.cc:1556
+#: gtk2_ardour/selection.cc:710 gtk2_ardour/selection.cc:749
+msgid "programming error: "
+msgstr "programming error: "
+
+#: gtk2_ardour/editor.cc:1485 gtk2_ardour/editor.cc:1493
+#: gtk2_ardour/editor_ops.cc:3444
+msgid "Freeze"
+msgstr "Bloquer"
+
+#: gtk2_ardour/editor.cc:1489
+msgid "Unfreeze"
+msgstr "Débloquer"
+
+#: gtk2_ardour/editor.cc:1657 gtk2_ardour/editor.cc:1766
+#: gtk2_ardour/mixer_strip.cc:88 gtk2_ardour/mixer_strip.cc:421
+#: gtk2_ardour/panner_ui.cc:404 gtk2_ardour/route_time_axis.cc:169
+msgid "Mute"
+msgstr "Muet"
+
+#: gtk2_ardour/editor.cc:1659
+msgid "Unmute"
+msgstr "Réactiver"
+
+#: gtk2_ardour/editor.cc:1668
+msgid "Convert to short"
+msgstr "Convertir en fondu rapide"
+
+#: gtk2_ardour/editor.cc:1670
+msgid "Convert to full"
+msgstr "Convertir en fondu long"
+
+#: gtk2_ardour/editor.cc:1681
+msgid "Crossfade"
+msgstr "Fondu enchaîné"
+
+#: gtk2_ardour/editor.cc:1724 gtk2_ardour/editor.cc:3774
+#: gtk2_ardour/editor_markers.cc:590 gtk2_ardour/editor_markers.cc:1022
+#: gtk2_ardour/editor_mouse.cc:5128 gtk2_ardour/imageframe_time_axis.cc:247
+#: gtk2_ardour/marker_time_axis.cc:207 gtk2_ardour/mixer_strip.cc:978
+#: gtk2_ardour/redirect_box.cc:860 gtk2_ardour/redirect_box.cc:1190
+#: gtk2_ardour/route_time_axis.cc:866 gtk2_ardour/route_time_axis.cc:1342
+#: gtk2_ardour/route_ui.cc:814 gtk2_ardour/visual_time_axis.cc:330
+msgid "Rename"
+msgstr "Renommer"
+
+#: gtk2_ardour/editor.cc:1725
+msgid "Popup region editor"
+msgstr "Éditeur de région..."
+
+#: gtk2_ardour/editor.cc:1726
+msgid "Raise to top layer"
+msgstr "Monter tout en haut"
+
+#: gtk2_ardour/editor.cc:1727
+msgid "Lower to bottom layer"
+msgstr "Descendre tout en bas"
+
+#: gtk2_ardour/editor.cc:1729
+msgid "Define sync point"
+msgstr "Placer le point de synchro"
+
+#: gtk2_ardour/editor.cc:1730
+msgid "Remove sync point"
+msgstr "Enlever le point de synchro"
+
+#: gtk2_ardour/editor.cc:1735
+msgid "Bounce"
+msgstr "Copier vers un fichier audio (bounce)"
+
+#: gtk2_ardour/editor.cc:1738
+msgid "Analyze region"
+msgstr "Analyse la région"
+
+#: gtk2_ardour/editor.cc:1745 gtk2_ardour/editor_markers.cc:591
+msgid "Lock"
+msgstr "Verrouiller"
+
+#: gtk2_ardour/editor.cc:1752
+msgid "Glue to Bars&Beats"
+msgstr "Coller aux mesures/temps"
+
+#: gtk2_ardour/editor.cc:1776
+msgid "Opaque"
+msgstr "Opaque"
+
+#: gtk2_ardour/editor.cc:1786
+msgid "Original position"
+msgstr "Remettre à sa position d'origine"
+
+#: gtk2_ardour/editor.cc:1799
+msgid "Reset Envelope"
+msgstr "Réinitialiser l'enveloppe"
-#: gtk2_ardour/editor_canvas.cc:272
-msgid "playhead color not defined, check your ardour.colors file!"
-msgstr "Pas de couleur définie pour la tête de lecture. Vérifiez votre fichier ardour.colors !"
+#: gtk2_ardour/editor.cc:1801
+msgid "Envelope Visible"
+msgstr "Enveloppe Visible"
+
+#: gtk2_ardour/editor.cc:1810
+msgid "Envelope Active"
+msgstr "Enveloppe Active"
+
+#: gtk2_ardour/editor.cc:1824
+msgid "DeNormalize"
+msgstr "Dénormaliser"
+
+#: gtk2_ardour/editor.cc:1826
+msgid "Normalize"
+msgstr "Normaliser"
-#: gtk2_ardour/editor_edit_groups.cc:52 gtk2_ardour/mixer_ui.cc:765
+#: gtk2_ardour/editor.cc:1830
+msgid "Reverse"
+msgstr "Inverser"
+
+#: gtk2_ardour/editor.cc:1835 gtk2_ardour/editor.cc:1926
+msgid "Add Range Markers"
+msgstr "Ajoute des repères d'intervalle"
+
+#: gtk2_ardour/editor.cc:1836
+msgid "Set Range Selection"
+msgstr "zone de sélection depuis la région"
+
+#: gtk2_ardour/editor.cc:1845
+msgid "Nudge fwd"
+msgstr "Décaler à droite"
+
+#: gtk2_ardour/editor.cc:1846
+msgid "Nudge bwd"
+msgstr "Décaler à gauche"
+
+#: gtk2_ardour/editor.cc:1847
+msgid "Nudge fwd by capture offset"
+msgstr "Décaler à droite de l'offset de capture"
+
+#: gtk2_ardour/editor.cc:1848
+msgid "Nudge bwd by capture offset"
+msgstr "Décaler à gauche de l'offset de capture"
+
+#: gtk2_ardour/editor.cc:1850 gtk2_ardour/editor.cc:2021
+#: gtk2_ardour/editor.cc:2077
+msgid "Nudge"
+msgstr "décaler"
+
+#: gtk2_ardour/editor.cc:1862 gtk2_ardour/gain_meter.cc:169
+#: gtk2_ardour/gain_meter.cc:903 gtk2_ardour/panner_ui.cc:97
+#: gtk2_ardour/panner_ui.cc:780
+msgid "Trim"
+msgstr "Rogner"
+
+#: gtk2_ardour/editor.cc:1865
+msgid "Split"
+msgstr "Séparer"
+
+#: gtk2_ardour/editor.cc:1868
+msgid "Make mono regions"
+msgstr "Créer des régions mono"
+
+#: gtk2_ardour/editor.cc:1871 gtk2_ardour/editor.cc:3119
+msgid "Duplicate"
+msgstr "Dupliquer"
+
+#: gtk2_ardour/editor.cc:1872
+msgid "Multi-Duplicate"
+msgstr "Multi-dupliquer"
+
+#: gtk2_ardour/editor.cc:1873
+msgid "Fill Track"
+msgstr "Remplir la piste"
+
+#: gtk2_ardour/editor.cc:1902
+msgid "Play range"
+msgstr "Lire"
+
+#: gtk2_ardour/editor.cc:1903
+msgid "Loop range"
+msgstr "Lire en boucle"
+
+#: gtk2_ardour/editor.cc:1907
+msgid "Analyze range"
+msgstr "Analyse la zone de sélection"
+
+#: gtk2_ardour/editor.cc:1915
+msgid "Convert to region in-place"
+msgstr "Convertir en region (sur place)"
+
+#: gtk2_ardour/editor.cc:1916
+msgid "Convert to region in region list"
+msgstr "Convertir en région (vers la liste des régions)"
+
+#: gtk2_ardour/editor.cc:1919
+msgid "Select all in range"
+msgstr "Sélectionner tout dans la zone"
+
+#: gtk2_ardour/editor.cc:1922
+msgid "Set loop from selection"
+msgstr "sélection → boucle"
+
+#: gtk2_ardour/editor.cc:1923
+msgid "Set punch from selection"
+msgstr "sélection → punch"
+
+#: gtk2_ardour/editor.cc:1928
+msgid "Crop region to range"
+msgstr "Raccourcir la région à la zone"
+
+#: gtk2_ardour/editor.cc:1929
+msgid "Fill range with region"
+msgstr "Remplir avec la région choisie dans la liste"
+
+#: gtk2_ardour/editor.cc:1930
+msgid "Duplicate range"
+msgstr "Dupliquer"
+
+#: gtk2_ardour/editor.cc:1931
+msgid "Create chunk from range"
+msgstr "sélection → nouveau fragment"
+
+#: gtk2_ardour/editor.cc:1933
+msgid "Bounce range"
+msgstr "Copier la sélection vers un fichier audio (bounce)"
+
+#: gtk2_ardour/editor.cc:1934
+msgid "Export range"
+msgstr "Exporter"
+
+#: gtk2_ardour/editor.cc:1948 gtk2_ardour/editor.cc:2035
+msgid "Play from edit point"
+msgstr "Lire depuis le point d'édition"
+
+#: gtk2_ardour/editor.cc:1949 gtk2_ardour/editor.cc:2036
+msgid "Play from start"
+msgstr "Lire depuis le début"
+
+#: gtk2_ardour/editor.cc:1950
+msgid "Play region"
+msgstr "Lire la région"
+
+#: gtk2_ardour/editor.cc:1962 gtk2_ardour/editor.cc:2045
+msgid "Select All in track"
+msgstr "Sélectionner tout dans la piste"
+
+#: gtk2_ardour/editor.cc:1964 gtk2_ardour/editor.cc:2047
+msgid "Invert selection in track"
+msgstr "Inverser la sélection dans la piste"
+
+#: gtk2_ardour/editor.cc:1965 gtk2_ardour/editor.cc:2048
+msgid "Invert selection"
+msgstr "inverser la sélection"
+
+#: gtk2_ardour/editor.cc:1967
+msgid "Set range to loop range"
+msgstr "Créer l'intervalle de boucle"
+
+#: gtk2_ardour/editor.cc:1968
+msgid "Set range to punch range"
+msgstr "Créer l'intervalle de punch in/out"
+
+#: gtk2_ardour/editor.cc:1994
+msgid "Align"
+msgstr "Aligner"
+
+#: gtk2_ardour/editor.cc:1995
+msgid "Align Relative"
+msgstr "Aligner relativement"
+
+#: gtk2_ardour/editor.cc:1999
+msgid "Insert chunk"
+msgstr "Insérer un fragment"
+
+#: gtk2_ardour/editor.cc:2006
+msgid "Insert Selected Region"
+msgstr "Insérer la région sélectionnée"
+
+#: gtk2_ardour/editor.cc:2007
+msgid "Insert Existing Audio"
+msgstr "Insérer des fichiers audio externes"
+
+#: gtk2_ardour/editor.cc:2016 gtk2_ardour/editor.cc:2072
+msgid "Nudge entire track fwd"
+msgstr "Décaler toute la piste à droite"
+
+#: gtk2_ardour/editor.cc:2017 gtk2_ardour/editor.cc:2073
+msgid "Nudge track after edit point fwd"
+msgstr "Décaler la piste à droite après le point d'édition"
+
+#: gtk2_ardour/editor.cc:2018 gtk2_ardour/editor.cc:2074
+msgid "Nudge entire track bwd"
+msgstr "Décaler toute la piste à gauche"
+
+#: gtk2_ardour/editor.cc:2019 gtk2_ardour/editor.cc:2075
+msgid "Nudge track after edit point bwd"
+msgstr "Décaler la piste à gauche après le point d'édition"
+
+#: gtk2_ardour/editor.cc:2050
+msgid "Select all after edit point"
+msgstr "Sélectionner tout après le point d'édition"
+
+#: gtk2_ardour/editor.cc:2051
+msgid "Select all before edit point"
+msgstr "sélectionner tout avant le point d'édition"
+
+#: gtk2_ardour/editor.cc:2052
+msgid "Select all after playhead"
+msgstr "Sélectionner tout après la tête de lecture"
+
+#: gtk2_ardour/editor.cc:2053
+msgid "Select all before playhead"
+msgstr "Sélectionner tout avant la tête de lecture"
+
+#: gtk2_ardour/editor.cc:2707
+msgid "Select/Move Objects"
+msgstr "pour sélectionner ou déplacer des objets"
+
+#: gtk2_ardour/editor.cc:2708
+msgid "Select/Move Ranges"
+msgstr "pour travailler sur la zone de sélection"
+
+#: gtk2_ardour/editor.cc:2709
+msgid "Draw Gain Automation"
+msgstr "pour dessiner la courbe de gain"
+
+#: gtk2_ardour/editor.cc:2710
+msgid "Select Zoom Range"
+msgstr "pour sélectionner l'intervalle de zoom"
+
+#: gtk2_ardour/editor.cc:2711
+msgid "Stretch/Shrink Regions"
+msgstr "pour étirer ou contracter des régions"
+
+#: gtk2_ardour/editor.cc:2712
+msgid "Listen to Specific Regions"
+msgstr "pour écouter les régions une par une"
+
+#: gtk2_ardour/editor.cc:2760
+msgid "Zoom focus"
+msgstr "Zoomer vers"
+
+#: gtk2_ardour/editor.cc:2774
+msgid "Snap/Grid Units"
+msgstr "Unités d'align/grille"
+
+#: gtk2_ardour/editor.cc:2777
+msgid "Magnetic Snap"
+msgstr "Alignement magnétique"
+
+#: gtk2_ardour/editor.cc:2780
+msgid "Snap/Grid Mode"
+msgstr "Mode d'alignement/grille"
+
+#: gtk2_ardour/editor.cc:2786
+msgid "Edit point"
+msgstr "Point d'édition"
+
+#: gtk2_ardour/editor.cc:2936
+msgid "malformed URL passed to drag-n-drop code"
+msgstr "URL incorrecte transmise"
+
+#: gtk2_ardour/editor.cc:3057
+msgid "Undo (%1)"
+msgstr "Annuler (%1)"
+
+#: gtk2_ardour/editor.cc:3066
+msgid "Redo (%1)"
+msgstr "Refaire (%1)"
+
+#: gtk2_ardour/editor.cc:3096
+msgid "Number of Duplications:"
+msgstr "Nombre de duplications :"
+
+#: gtk2_ardour/editor.cc:3214
+msgid "Splice Edit"
+msgstr "adjacent"
+
+#: gtk2_ardour/editor.cc:3216
+msgid "Slide Edit"
+msgstr "superposable"
+
+#: gtk2_ardour/editor.cc:3611
+msgid ""
+"Playlist %1 is currently unused.\n"
+"If left alone, no audio files used by it will be cleaned.\n"
+"If deleted, audio files used by it alone by will cleaned."
+msgstr ""
+"La liste de lecture %1 n'est pas utilisée.\n"
+"Si vous la conservez, aucun fichier audio qu'elle utilise ne sera nettoyé.\n"
+"Si vous l'effacez, les fichiers audio qu'elle seule utilise seront nettoyés."
+
+#: gtk2_ardour/editor.cc:3621
+msgid "Delete playlist"
+msgstr "Supprimer la liste de lecture"
+
+#: gtk2_ardour/editor.cc:3622
+msgid "Keep playlist"
+msgstr "Garder la liste de lecture"
+
+#: gtk2_ardour/editor.cc:3791
+msgid "New name of snapshot"
+msgstr "Nouveau nom du cliché"
+
+#: gtk2_ardour/editor.cc:3809
+msgid ""
+"Do you really want to remove snapshot \"%1\" ?\n"
+"(cannot be undone)"
+msgstr ""
+"Voulez-vous vraiment supprimer le cliché « %1 » ?\n"
+"(cela ne pourra pas être annulé)"
+
+#: gtk2_ardour/editor.cc:3811 gtk2_ardour/editor_ops.cc:215
+#: gtk2_ardour/editor_ops.cc:4103 gtk2_ardour/route_ui.cc:790
+#: gtk2_ardour/visual_time_axis.cc:282
+msgid "No, do nothing."
+msgstr "Non, ne rien faire"
+
+#: gtk2_ardour/editor.cc:3812 gtk2_ardour/route_ui.cc:791
+#: gtk2_ardour/visual_time_axis.cc:283
+msgid "Yes, remove it."
+msgstr "Oui, supprimer"
+
+#: gtk2_ardour/editor.cc:3922
+msgid "new playlists"
+msgstr "nouvelles listes de lecture"
+
+#: gtk2_ardour/editor.cc:3937
+msgid "copy playlists"
+msgstr "copier les listes de lecture"
+
+#: gtk2_ardour/editor.cc:3952
+msgid "clear playlists"
+msgstr "effacer les listes de lecture"
+
+#: gtk2_ardour/editor_edit_groups.cc:52 gtk2_ardour/mixer_ui.cc:846
msgid "Activate All"
msgstr "Activer tout"
-#: gtk2_ardour/editor_edit_groups.cc:53 gtk2_ardour/mixer_ui.cc:766
+#: gtk2_ardour/editor_edit_groups.cc:53 gtk2_ardour/mixer_ui.cc:847
msgid "Disable All"
msgstr "désactiver tout"
-#: gtk2_ardour/editor_edit_groups.cc:55 gtk2_ardour/mixer_ui.cc:768
+#: gtk2_ardour/editor_edit_groups.cc:55 gtk2_ardour/mixer_ui.cc:849
msgid "Add group"
msgstr "ajouter un groupe"
-#: gtk2_ardour/editor_edit_groups.cc:228 gtk2_ardour/mixer_ui.cc:1009
+#: gtk2_ardour/editor_edit_groups.cc:228 gtk2_ardour/mixer_ui.cc:1090
msgid "unnamed"
msgstr "(sans nom)"
-#: gtk2_ardour/editor_edit_groups.cc:257 gtk2_ardour/mixer_ui.cc:863
+#: gtk2_ardour/editor_edit_groups.cc:257 gtk2_ardour/mixer_ui.cc:944
msgid "-all-"
msgstr "-(tout)-"
@@ -3561,7 +3945,7 @@ msgstr ""
"\n"
"Sélectionnez une zone en utilisant le mode « sélection »"
-#: gtk2_ardour/editor_export_audio.cc:111
+#: gtk2_ardour/editor_export_audio.cc:109
msgid ""
"There are no ranges to export.\n"
"\n"
@@ -3579,200 +3963,193 @@ msgstr "programming error: no ImageFrameView selected"
msgid "programming error: no MarkerView selected"
msgstr "programming error: no MarkerView selected"
-#: gtk2_ardour/editor_keyboard.cc:104
+#: gtk2_ardour/editor_keyboard.cc:82
msgid "mute region"
msgstr "rendre la région muette"
-#: gtk2_ardour/editor_keys.cc:45
-msgid "keyboard selection"
-msgstr "sélection au clavier"
-
-#: gtk2_ardour/editor_markers.cc:296 gtk2_ardour/editor_ops.cc:1250
-#: gtk2_ardour/editor_ops.cc:1267 gtk2_ardour/editor_ops.cc:1286
-#: gtk2_ardour/location_ui.cc:782
+#: gtk2_ardour/editor_markers.cc:399 gtk2_ardour/editor_ops.cc:1858
+#: gtk2_ardour/editor_ops.cc:1875 gtk2_ardour/editor_ops.cc:1904
+#: gtk2_ardour/location_ui.cc:823
msgid "add marker"
msgstr "ajouter un repère"
-#: gtk2_ardour/editor_markers.cc:312 gtk2_ardour/editor_markers.cc:376
-#: gtk2_ardour/editor_markers.cc:553 gtk2_ardour/editor_markers.cc:571
-#: gtk2_ardour/editor_markers.cc:589 gtk2_ardour/editor_markers.cc:608
-#: gtk2_ardour/editor_markers.cc:627 gtk2_ardour/editor_markers.cc:657
-#: gtk2_ardour/editor_markers.cc:685 gtk2_ardour/editor_markers.cc:713
-#: gtk2_ardour/editor_markers.cc:752 gtk2_ardour/editor_markers.cc:777
-#: gtk2_ardour/editor_markers.cc:804 gtk2_ardour/editor_markers.cc:827
-#: gtk2_ardour/editor_markers.cc:846 gtk2_ardour/editor_mouse.cc:2015
-#: gtk2_ardour/editor_mouse.cc:4351
+#: gtk2_ardour/editor_markers.cc:423 gtk2_ardour/editor_markers.cc:491
+#: gtk2_ardour/editor_markers.cc:676 gtk2_ardour/editor_markers.cc:694
+#: gtk2_ardour/editor_markers.cc:712 gtk2_ardour/editor_markers.cc:731
+#: gtk2_ardour/editor_markers.cc:750 gtk2_ardour/editor_markers.cc:780
+#: gtk2_ardour/editor_markers.cc:808 gtk2_ardour/editor_markers.cc:836
+#: gtk2_ardour/editor_markers.cc:874 gtk2_ardour/editor_markers.cc:899
+#: gtk2_ardour/editor_markers.cc:926 gtk2_ardour/editor_markers.cc:949
+#: gtk2_ardour/editor_markers.cc:969 gtk2_ardour/editor_markers.cc:993
+#: gtk2_ardour/editor_mouse.cc:2149 gtk2_ardour/editor_mouse.cc:4700
msgid "programming error: marker canvas item has no marker object pointer!"
msgstr "programming error: marker canvas item has no marker object pointer!"
-#: gtk2_ardour/editor_markers.cc:326 gtk2_ardour/location_ui.cc:660
+#: gtk2_ardour/editor_markers.cc:441 gtk2_ardour/location_ui.cc:699
msgid "remove marker"
msgstr "enlever le repère"
-#: gtk2_ardour/editor_markers.cc:467
-msgid "Locate to Mark"
-msgstr "Placer la tête de lecture ici"
-
-#: gtk2_ardour/editor_markers.cc:468
-msgid "Play from Mark"
-msgstr "Lire depuis ce repère"
+#: gtk2_ardour/editor_markers.cc:582
+msgid "Locate to here"
+msgstr "Se placer ici"
-#: gtk2_ardour/editor_markers.cc:469
-msgid "Set Mark from Playhead"
-msgstr "nouv. repère à la tête de lect."
+#: gtk2_ardour/editor_markers.cc:583
+msgid "Play from here"
+msgstr "Lire à partir ici"
-#: gtk2_ardour/editor_markers.cc:473
-msgid "Hide Mark"
-msgstr "cacher le repère"
+#: gtk2_ardour/editor_markers.cc:584
+msgid "Move Mark to Playhead"
+msgstr "Déplacer le repère à la tête de lecture"
-#: gtk2_ardour/editor_markers.cc:475 gtk2_ardour/editor_markers.cc:864
-msgid "Rename Mark"
-msgstr "renommer le repère"
+#: gtk2_ardour/editor_markers.cc:592
+msgid "Unlock"
+msgstr "Déverrouiller"
-#: gtk2_ardour/editor_markers.cc:476
-msgid "Remove Mark"
-msgstr "enlever le repère"
+#: gtk2_ardour/editor_markers.cc:614
+msgid "Play Range"
+msgstr "lire l'intervalle"
-#: gtk2_ardour/editor_markers.cc:494
+#: gtk2_ardour/editor_markers.cc:615
msgid "Locate to Range Mark"
msgstr "placer la tête de lecture ici"
-#: gtk2_ardour/editor_markers.cc:495
+#: gtk2_ardour/editor_markers.cc:616
msgid "Play from Range Mark"
msgstr "lire depuis ce repère"
-#: gtk2_ardour/editor_markers.cc:497
-msgid "Play Range"
-msgstr "lire l'intervalle"
-
-#: gtk2_ardour/editor_markers.cc:498
+#: gtk2_ardour/editor_markers.cc:618
msgid "Loop Range"
msgstr "lire en boucle"
-#: gtk2_ardour/editor_markers.cc:500
+#: gtk2_ardour/editor_markers.cc:620
msgid "Set Range Mark from Playhead"
msgstr "placer sur la tête de lecture"
-#: gtk2_ardour/editor_markers.cc:501
+#: gtk2_ardour/editor_markers.cc:622
msgid "Set Range from Range Selection"
msgstr "aligner sur la zone de sélection"
-#: gtk2_ardour/editor_markers.cc:505
+#: gtk2_ardour/editor_markers.cc:628
msgid "Hide Range"
msgstr "cacher"
-#: gtk2_ardour/editor_markers.cc:507 gtk2_ardour/editor_markers.cc:866
+#: gtk2_ardour/editor_markers.cc:629 gtk2_ardour/editor_markers.cc:1013
msgid "Rename Range"
msgstr "renommer"
-#: gtk2_ardour/editor_markers.cc:508
+#: gtk2_ardour/editor_markers.cc:630
msgid "Remove Range"
msgstr "enlever"
-#: gtk2_ardour/editor_markers.cc:513
+#: gtk2_ardour/editor_markers.cc:635
msgid "Separate Regions in Range"
msgstr "séparer la région"
-#: gtk2_ardour/editor_markers.cc:514
+#: gtk2_ardour/editor_markers.cc:636
msgid "Select All in Range"
msgstr "tout dans l'intervalle"
-#: gtk2_ardour/editor_markers.cc:515
+#: gtk2_ardour/editor_markers.cc:638
msgid "Select Range"
msgstr "Définit la zone de sélection"
-#: gtk2_ardour/editor_markers.cc:541
+#: gtk2_ardour/editor_markers.cc:664
msgid "Set Loop Range"
msgstr "Boucle"
-#: gtk2_ardour/editor_markers.cc:542
+#: gtk2_ardour/editor_markers.cc:665
msgid "Set Punch Range"
msgstr "Punch in→out"
-#: gtk2_ardour/editor_markers.cc:860
+#: gtk2_ardour/editor_markers.cc:1007
msgid "New Name:"
msgstr "nouveau nom :"
-#: gtk2_ardour/editor_markers.cc:888
+#: gtk2_ardour/editor_markers.cc:1011
+msgid "Rename Mark"
+msgstr "renommer le repère"
+
+#: gtk2_ardour/editor_markers.cc:1035
msgid "rename marker"
msgstr "renommer le repère"
-#: gtk2_ardour/editor_markers.cc:914
+#: gtk2_ardour/editor_markers.cc:1059
msgid "set loop range"
msgstr "définir l'intervalle de boucle"
-#: gtk2_ardour/editor_markers.cc:942
+#: gtk2_ardour/editor_markers.cc:1065
msgid "set punch range"
msgstr "définir l'intervalle de punch in/out"
-#: gtk2_ardour/editor_mouse.cc:105
+#: gtk2_ardour/editor_mouse.cc:144
msgid "Editor::event_frame() used on unhandled event type %1"
msgstr "Editor::event_frame() utilisé sur un événement non géré de type %1"
-#: gtk2_ardour/editor_mouse.cc:1539
+#: gtk2_ardour/editor_mouse.cc:1704
msgid "programming error: start_grab called without drag item"
msgstr "programming error: start_grab called without drag item"
-#: gtk2_ardour/editor_mouse.cc:1766
+#: gtk2_ardour/editor_mouse.cc:1906
msgid "change fade in length"
-msgstr "modifier la durée de la montée du fondu"
+msgstr "modifier la durée de montée"
-#: gtk2_ardour/editor_mouse.cc:1798
+#: gtk2_ardour/editor_mouse.cc:1939
msgid "programming error: fade out canvas item has no regionview data pointer!"
-msgstr "programming error: fade out canvas item has no regionview data pointer!"
+msgstr ""
+"programming error: fade out canvas item has no regionview data pointer!"
-#: gtk2_ardour/editor_mouse.cc:1883
+#: gtk2_ardour/editor_mouse.cc:2023
msgid "change fade out length"
-msgstr "modifier la durée de la descente du fondu"
+msgstr "modifier la durée de descente"
-#: gtk2_ardour/editor_mouse.cc:1915
+#: gtk2_ardour/editor_mouse.cc:2056
msgid "programming error: cursor canvas item has no cursor data pointer!"
msgstr "programming error: cursor canvas item has no cursor data pointer!"
-#: gtk2_ardour/editor_mouse.cc:2150
+#: gtk2_ardour/editor_mouse.cc:2311
msgid "move marker"
msgstr "déplacer le repère"
-#: gtk2_ardour/editor_mouse.cc:2178 gtk2_ardour/editor_mouse.cc:2209
-#: gtk2_ardour/editor_tempodisplay.cc:500
+#: gtk2_ardour/editor_mouse.cc:2344 gtk2_ardour/editor_mouse.cc:2376
+#: gtk2_ardour/editor_tempodisplay.cc:512
msgid ""
"programming error: meter marker canvas item has no marker object pointer!"
msgstr ""
"programming error: meter marker canvas item has no marker object pointer!"
-#: gtk2_ardour/editor_mouse.cc:2277
+#: gtk2_ardour/editor_mouse.cc:2444
msgid "copy meter mark"
msgstr "copier l'indicateur de mesure"
-#: gtk2_ardour/editor_mouse.cc:2288
+#: gtk2_ardour/editor_mouse.cc:2455
msgid "move meter mark"
msgstr "déplacer l'indicateur de mesure"
-#: gtk2_ardour/editor_mouse.cc:2304 gtk2_ardour/editor_mouse.cc:2337
-#: gtk2_ardour/editor_tempodisplay.cc:369
-#: gtk2_ardour/editor_tempodisplay.cc:449
-#: gtk2_ardour/editor_tempodisplay.cc:468
+#: gtk2_ardour/editor_mouse.cc:2471 gtk2_ardour/editor_mouse.cc:2505
+#: gtk2_ardour/editor_tempodisplay.cc:376
+#: gtk2_ardour/editor_tempodisplay.cc:461
+#: gtk2_ardour/editor_tempodisplay.cc:480
msgid ""
"programming error: tempo marker canvas item has no marker object pointer!"
msgstr ""
"programming error: tempo marker canvas item has no marker object pointer!"
-#: gtk2_ardour/editor_mouse.cc:2309 gtk2_ardour/editor_mouse.cc:2342
-#: gtk2_ardour/editor_tempodisplay.cc:374
-#: gtk2_ardour/editor_tempodisplay.cc:454
+#: gtk2_ardour/editor_mouse.cc:2476 gtk2_ardour/editor_mouse.cc:2510
+#: gtk2_ardour/editor_tempodisplay.cc:381
+#: gtk2_ardour/editor_tempodisplay.cc:466
msgid "programming error: marker for tempo is not a tempo marker!"
msgstr "programming error: marker for tempo is not a tempo marker!"
-#: gtk2_ardour/editor_mouse.cc:2409
+#: gtk2_ardour/editor_mouse.cc:2577
msgid "copy tempo mark"
msgstr "copier le changement tempo"
-#: gtk2_ardour/editor_mouse.cc:2420
+#: gtk2_ardour/editor_mouse.cc:2588
msgid "move tempo mark"
msgstr "déplacer le changement tempo"
-#: gtk2_ardour/editor_mouse.cc:2435 gtk2_ardour/editor_mouse.cc:2454
-#: gtk2_ardour/editor_mouse.cc:2467
+#: gtk2_ardour/editor_mouse.cc:2603 gtk2_ardour/editor_mouse.cc:2622
+#: gtk2_ardour/editor_mouse.cc:2635
msgid ""
"programming error: control point canvas item has no control point object "
"pointer!"
@@ -3780,95 +4157,91 @@ msgstr ""
"programming error: control point canvas item has no control point object "
"pointer!"
-#: gtk2_ardour/editor_mouse.cc:2573
+#: gtk2_ardour/editor_mouse.cc:2771
msgid "programming error: line canvas item has no line pointer!"
msgstr "programming error: line canvas item has no line pointer!"
-#: gtk2_ardour/editor_mouse.cc:2682
+#: gtk2_ardour/editor_mouse.cc:2910
msgid "move region(s)"
msgstr "déplacement de régions"
-#: gtk2_ardour/editor_mouse.cc:2746
+#: gtk2_ardour/editor_mouse.cc:2974
msgid "Drag region brush"
msgstr "brosse de glissé-déposé de région"
-#: gtk2_ardour/editor_mouse.cc:3274
+#: gtk2_ardour/editor_mouse.cc:3609
msgid "fixed time region copy"
msgstr "Copie verticale de région"
-#: gtk2_ardour/editor_mouse.cc:3276
+#: gtk2_ardour/editor_mouse.cc:3611
msgid "region copy"
msgstr "Copie de région"
-#: gtk2_ardour/editor_mouse.cc:3280
+#: gtk2_ardour/editor_mouse.cc:3615
msgid "fixed time region drag"
msgstr "Déplacement vertical de région"
-#: gtk2_ardour/editor_mouse.cc:3282
+#: gtk2_ardour/editor_mouse.cc:3617
msgid "region drag"
msgstr "Déplacement de région"
-#: gtk2_ardour/editor_mouse.cc:3670
+#: gtk2_ardour/editor_mouse.cc:4021
msgid "selection grab"
msgstr "capture de sélection"
-#: gtk2_ardour/editor_mouse.cc:3712
-msgid "cancel selection"
-msgstr "annuler la sélection"
-
-#: gtk2_ardour/editor_mouse.cc:3822
+#: gtk2_ardour/editor_mouse.cc:4171
msgid "range selection"
msgstr "sélection de zone"
-#: gtk2_ardour/editor_mouse.cc:3838
+#: gtk2_ardour/editor_mouse.cc:4187
msgid "trim selection start"
-msgstr "déplacement début de sélection"
+msgstr "rogner le début de la sélection"
-#: gtk2_ardour/editor_mouse.cc:3854
+#: gtk2_ardour/editor_mouse.cc:4203
msgid "trim selection end"
-msgstr "déplacement fin de sélection"
+msgstr "rogner la fin de la sélection"
-#: gtk2_ardour/editor_mouse.cc:3871
+#: gtk2_ardour/editor_mouse.cc:4220
msgid "move selection"
msgstr "déplacement sélection"
-#: gtk2_ardour/editor_mouse.cc:4260
+#: gtk2_ardour/editor_mouse.cc:4609
msgid "Start point trim"
-msgstr "déplacement point de départ"
+msgstr "Rogner le début"
-#: gtk2_ardour/editor_mouse.cc:4292
+#: gtk2_ardour/editor_mouse.cc:4641
msgid "End point trim"
-msgstr "déplacement point de fin"
+msgstr "Rogner la fin"
-#: gtk2_ardour/editor_mouse.cc:4335
+#: gtk2_ardour/editor_mouse.cc:4684
msgid "trimmed region"
-msgstr "région raccourcie"
+msgstr "région rognée"
-#: gtk2_ardour/editor_mouse.cc:4478
+#: gtk2_ardour/editor_mouse.cc:4847
msgid "new range marker"
msgstr "nouvel intervalle"
-#: gtk2_ardour/editor_mouse.cc:4720
+#: gtk2_ardour/editor_mouse.cc:5096
msgid "rubberband selection"
msgstr "sélection élastique"
-#: gtk2_ardour/editor_mouse.cc:4750
+#: gtk2_ardour/editor_mouse.cc:5126
msgid "Name for region:"
msgstr "Nom de la région :"
-#: gtk2_ardour/editor_mouse.cc:4814
+#: gtk2_ardour/editor_mouse.cc:5199
msgid "timestretch"
msgstr "déformation temporelle"
-#: gtk2_ardour/editor_ops.cc:116
+#: gtk2_ardour/editor_ops.cc:123
msgid "split"
msgstr "séparer"
-#: gtk2_ardour/editor_ops.cc:155
+#: gtk2_ardour/editor_ops.cc:189
msgid "remove region"
msgstr "enlever la région"
-#: gtk2_ardour/editor_ops.cc:175
+#: gtk2_ardour/editor_ops.cc:209
msgid ""
" This is destructive, will possibly delete audio files\n"
"It cannot be undone\n"
@@ -3878,169 +4251,179 @@ msgstr ""
"Elle ne pourra pas être annulée.\n"
"Voulez-vous vraiment détruire %1 ?"
-#: gtk2_ardour/editor_ops.cc:179
+#: gtk2_ardour/editor_ops.cc:213
msgid "these regions"
msgstr "ces régions"
-#: gtk2_ardour/editor_ops.cc:179
+#: gtk2_ardour/editor_ops.cc:213
msgid "this region"
msgstr "cette région"
-#: gtk2_ardour/editor_ops.cc:184
+#: gtk2_ardour/editor_ops.cc:218
msgid "Yes, destroy them."
msgstr "Oui, les détruire."
-#: gtk2_ardour/editor_ops.cc:186 gtk2_ardour/editor_ops.cc:3163
+#: gtk2_ardour/editor_ops.cc:220 gtk2_ardour/editor_ops.cc:4104
msgid "Yes, destroy it."
msgstr "Oui, la détruire"
-#: gtk2_ardour/editor_ops.cc:272 gtk2_ardour/editor_ops.cc:300
+#: gtk2_ardour/editor_ops.cc:306 gtk2_ardour/editor_ops.cc:334
msgid "extend selection"
msgstr "étendre la sélection"
-#: gtk2_ardour/editor_ops.cc:316 gtk2_ardour/editor_ops.cc:351
-#: gtk2_ardour/editor_ops.cc:396 gtk2_ardour/editor_ops.cc:423
+#: gtk2_ardour/editor_ops.cc:375
+msgid "nudge regions forward"
+msgstr "décaler les régions vers la droite"
+
+#: gtk2_ardour/editor_ops.cc:402 gtk2_ardour/editor_ops.cc:482
+msgid "nudge location forward"
+msgstr "décaler l'emplacement vers la droite"
+
+#: gtk2_ardour/editor_ops.cc:451
+msgid "nudge regions backward"
+msgstr "décaler les régions vers la gauche"
+
+#: gtk2_ardour/editor_ops.cc:537 gtk2_ardour/editor_ops.cc:567
msgid "nudge forward"
msgstr "décaler vers la droite"
-#: gtk2_ardour/editor_ops.cc:488
+#: gtk2_ardour/editor_ops.cc:634
msgid "build_region_boundary_cache called with snap_type = %1"
msgstr "build_region_boundary_cache appelé avec snap_type = %1"
-#: gtk2_ardour/editor_ops.cc:1407
+#: gtk2_ardour/editor_ops.cc:2025
msgid "clear markers"
msgstr "effacer les repères"
-#: gtk2_ardour/editor_ops.cc:1420
+#: gtk2_ardour/editor_ops.cc:2038
msgid "clear ranges"
msgstr "effacer les intervalles"
-#: gtk2_ardour/editor_ops.cc:1440
+#: gtk2_ardour/editor_ops.cc:2058
msgid "clear locations"
msgstr "effacer les repères temporels"
-#: gtk2_ardour/editor_ops.cc:1513
+#: gtk2_ardour/editor_ops.cc:2131
msgid "insert dragged region"
msgstr "glissé-déposé de région"
-#: gtk2_ardour/editor_ops.cc:1556
+#: gtk2_ardour/editor_ops.cc:2178
msgid "insert region"
msgstr "insertion de région"
-#: gtk2_ardour/editor_ops.cc:1755 gtk2_ardour/io_selector.cc:59
-#: gtk2_ardour/io_selector.cc:747 gtk2_ardour/connection_editor.cc:85
-msgid "OK"
-msgstr "OK"
-
-#: gtk2_ardour/editor_ops.cc:1763
+#: gtk2_ardour/editor_ops.cc:2397
msgid "Rename Region"
msgstr "renommer la région"
-#: gtk2_ardour/editor_ops.cc:2005 gtk2_ardour/editor_ops.cc:2064
+#: gtk2_ardour/editor_ops.cc:2401
+msgid "New name:"
+msgstr "Nouveau nom :"
+
+#: gtk2_ardour/editor_ops.cc:2734
msgid "separate"
msgstr "séparer"
-#: gtk2_ardour/editor_ops.cc:2128
+#: gtk2_ardour/editor_ops.cc:2863
msgid "trim to selection"
-msgstr "raccourcir à la sélection"
+msgstr "rogner à la sélection"
-#: gtk2_ardour/editor_ops.cc:2173
+#: gtk2_ardour/editor_ops.cc:2911
msgid "region fill"
msgstr "remplissage"
-#: gtk2_ardour/editor_ops.cc:2237
+#: gtk2_ardour/editor_ops.cc:2975
msgid "fill selection"
msgstr "remplir la sélection"
-#: gtk2_ardour/editor_ops.cc:2258
-msgid "Programming error. that region doesn't cover that position"
-msgstr "Programming error. that region doesn't cover that position"
-
-#: gtk2_ardour/editor_ops.cc:2261
-msgid "set region sync position"
-msgstr "placer la synchro de région"
+#: gtk2_ardour/editor_ops.cc:3014
+msgid "set sync point"
+msgstr "Placer le point de sync."
-#: gtk2_ardour/editor_ops.cc:2277
-msgid "Place the edit cursor at the desired sync point"
-msgstr "Placer le curseur d'édition au point de synchronisation voulu"
-
-#: gtk2_ardour/editor_ops.cc:2282
-msgid "set sync from edit cursor"
-msgstr "point de synchro au curseur d'édition"
-
-#: gtk2_ardour/editor_ops.cc:2295
+#: gtk2_ardour/editor_ops.cc:3034
msgid "remove sync"
msgstr "enlever le point de synchro"
-#: gtk2_ardour/editor_ops.cc:2310
+#: gtk2_ardour/editor_ops.cc:3054
msgid "naturalize"
msgstr "naturaliser"
-#: gtk2_ardour/editor_ops.cc:2375
+#: gtk2_ardour/editor_ops.cc:3156
msgid "align selection (relative)"
msgstr "aligner la sélection (relatif)"
-#: gtk2_ardour/editor_ops.cc:2404
+#: gtk2_ardour/editor_ops.cc:3196
msgid "align selection"
msgstr "aligner la sélection"
-#: gtk2_ardour/editor_ops.cc:2416
+#: gtk2_ardour/editor_ops.cc:3208
msgid "align region"
msgstr "aligner la région"
-#: gtk2_ardour/editor_ops.cc:2464 gtk2_ardour/editor_ops.cc:2490
-msgid "trim to edit"
-msgstr "raccourcir au curseur"
+#: gtk2_ardour/editor_ops.cc:3245
+msgid "trim to loop"
+msgstr "rogner à la sélection"
+
+#: gtk2_ardour/editor_ops.cc:3255
+msgid "trim to punch"
+msgstr "rogner au punch"
+
+#: gtk2_ardour/editor_ops.cc:3318
+msgid "trim region start to edit point"
+msgstr "Rogner le début de région jusqu'au point d'édit."
+
+#: gtk2_ardour/editor_ops.cc:3363
+msgid "trim region end to edit point"
+msgstr "Rogner la fin de région jusqu'au point d'édit."
-#: gtk2_ardour/editor_ops.cc:2549
+#: gtk2_ardour/editor_ops.cc:3450
msgid "Cancel Freeze"
msgstr "annuler le blocage"
-#: gtk2_ardour/editor_ops.cc:2592
+#: gtk2_ardour/editor_ops.cc:3493
msgid "bounce range"
msgstr "copier la sélection vers un fichier audio (bounce)"
-#: gtk2_ardour/editor_ops.cc:2644
+#: gtk2_ardour/editor_ops.cc:3545
msgid "cut"
msgstr "couper"
-#: gtk2_ardour/editor_ops.cc:2647
+#: gtk2_ardour/editor_ops.cc:3548
msgid "copy"
msgstr "copier"
-#: gtk2_ardour/editor_ops.cc:2660
+#: gtk2_ardour/editor_ops.cc:3579
msgid " objects"
msgstr " objets"
-#: gtk2_ardour/editor_ops.cc:2686
+#: gtk2_ardour/editor_ops.cc:3615
msgid " range"
msgstr " intervalle"
-#: gtk2_ardour/editor_ops.cc:2915
+#: gtk2_ardour/editor_ops.cc:3847
msgid "paste"
msgstr "coller"
-#: gtk2_ardour/editor_ops.cc:2957
+#: gtk2_ardour/editor_ops.cc:3896
msgid "paste chunk"
msgstr "coller le fragment"
-#: gtk2_ardour/editor_ops.cc:3000
+#: gtk2_ardour/editor_ops.cc:3940
msgid "duplicate region"
msgstr "dupliquer la région"
-#: gtk2_ardour/editor_ops.cc:3045
+#: gtk2_ardour/editor_ops.cc:3988
msgid "duplicate selection"
msgstr "dupliquer la sélection"
-#: gtk2_ardour/editor_ops.cc:3101
+#: gtk2_ardour/editor_ops.cc:4042
msgid "clear playlist"
msgstr "effacer la liste de lecture"
-#: gtk2_ardour/editor_ops.cc:3131
+#: gtk2_ardour/editor_ops.cc:4072
msgid "nudge track"
msgstr "décaler la piste"
-#: gtk2_ardour/editor_ops.cc:3159
+#: gtk2_ardour/editor_ops.cc:4100
msgid ""
"Do you really want to destroy the last capture?\n"
"(This is destructive and cannot be undone)"
@@ -4048,151 +4431,239 @@ msgstr ""
"Voulez-vous vraiment supprimer le dernier enregistrement ?\n"
"(cette opération est destructive et ne pourra pas être annulée)"
-#: gtk2_ardour/editor_ops.cc:3187
+#: gtk2_ardour/editor_ops.cc:4132
msgid "normalize"
msgstr "normaliser"
-#: gtk2_ardour/editor_ops.cc:3240
+#: gtk2_ardour/editor_ops.cc:4241
msgid "reverse regions"
msgstr "inverser les régions"
-#: gtk2_ardour/editor_ops.cc:3353
+#: gtk2_ardour/editor_ops.cc:4360
msgid "reset region gain"
msgstr "réinitialiser le gain"
-#: gtk2_ardour/editor_ops.cc:3442
+#: gtk2_ardour/editor_ops.cc:4498
+msgid "set fade in length"
+msgstr "définir la durée de montée"
+
+#: gtk2_ardour/editor_ops.cc:4505
+msgid "set fade out length"
+msgstr "définir la durée de descente"
+
+#: gtk2_ardour/editor_ops.cc:4553
+msgid "toggle fade in active"
+msgstr "Commute la montée"
+
+#: gtk2_ardour/editor_ops.cc:4553
+msgid "toggle fade out active"
+msgstr "Commute la descente"
+
+#: gtk2_ardour/editor_ops.cc:4603
msgid "set fade in shape"
-msgstr "règle la forme de la montée"
+msgstr "définir la forme de la montée"
-#: gtk2_ardour/editor_ops.cc:3466
+#: gtk2_ardour/editor_ops.cc:4636
msgid "set fade out shape"
-msgstr "règle la forme de la descente"
+msgstr "définir la forme de la descente"
-#: gtk2_ardour/editor_ops.cc:3490
+#: gtk2_ardour/editor_ops.cc:4668
msgid "set fade in active"
msgstr "active la montée"
-#: gtk2_ardour/editor_ops.cc:3514
+#: gtk2_ardour/editor_ops.cc:4702
msgid "set fade out active"
msgstr "active la descente"
-#: gtk2_ardour/editor_region_list.cc:108 gtk2_ardour/editor_region_list.cc:114
-#: gtk2_ardour/editor_region_list.cc:117 gtk2_ardour/location_ui.cc:57
+#: gtk2_ardour/editor_ops.cc:4849
+msgid "trim front"
+msgstr "Rogner en avant"
+
+#: gtk2_ardour/editor_ops.cc:4849
+msgid "trim back"
+msgstr "Rogner en arrière"
+
+#: gtk2_ardour/editor_ops.cc:4931
+msgid "set loop range from selection"
+msgstr "zone de sélection → intervalle de boucle"
+
+#: gtk2_ardour/editor_ops.cc:4953
+msgid "set loop range from edit range"
+msgstr "Définir la boucle depuis l'intervalle d'édition"
+
+#: gtk2_ardour/editor_ops.cc:4984
+msgid "set loop range from region"
+msgstr "Définir la boucle depuis la région"
+
+#: gtk2_ardour/editor_ops.cc:5002
+msgid "set punch range from selection"
+msgstr "Définir le punch depuis la sélection"
+
+#: gtk2_ardour/editor_ops.cc:5019
+msgid "set punch range from edit range"
+msgstr "Définir le punch depuis l'intervalle"
+
+#: gtk2_ardour/editor_ops.cc:5045
+msgid "set punch range from region"
+msgstr "Définir le punch depuis la région"
+
+#: gtk2_ardour/editor_ops.cc:5129
+msgid "Add new marker"
+msgstr "ajouter un repère"
+
+#: gtk2_ardour/editor_ops.cc:5130
+msgid "Set global tempo"
+msgstr "Définir le tempo global"
+
+#: gtk2_ardour/editor_ops.cc:5131
+msgid "Do you want to set the global tempo or add new tempo marker?"
+msgstr "Voulez-vous définir le tempo global ou ajouter un nouveau repère de tempo ?"
+
+#: gtk2_ardour/editor_ops.cc:5155
+msgid "set tempo from region"
+msgstr "Définir le tempo depuis la région"
+
+#: gtk2_ardour/editor_ops.cc:5189
+msgid "split regions"
+msgstr "Séparer les régions"
+
+#: gtk2_ardour/editor_region_list.cc:109 gtk2_ardour/editor_region_list.cc:113
+#: gtk2_ardour/editor_region_list.cc:116 gtk2_ardour/location_ui.cc:57
msgid "Hidden"
msgstr "Caché"
-#: gtk2_ardour/editor_region_list.cc:172
+#: gtk2_ardour/editor_region_list.cc:159
msgid " (MISSING)"
msgstr " (MANQUANT)"
-#: gtk2_ardour/editor_route_list.cc:101 gtk2_ardour/editor_route_list.cc:102
-#: gtk2_ardour/editor_route_list.cc:252
+#: gtk2_ardour/editor_route_list.cc:77 gtk2_ardour/editor_route_list.cc:78
+#: gtk2_ardour/editor_route_list.cc:264
msgid "editor"
msgstr "éditeur"
-#: gtk2_ardour/editor_route_list.cc:320 gtk2_ardour/mixer_ui.cc:728
+#: gtk2_ardour/editor_route_list.cc:338 gtk2_ardour/mixer_ui.cc:809
msgid "Show All"
msgstr "Tout montrer"
-#: gtk2_ardour/editor_route_list.cc:321 gtk2_ardour/mixer_ui.cc:729
+#: gtk2_ardour/editor_route_list.cc:339 gtk2_ardour/mixer_ui.cc:810
msgid "Hide All"
msgstr "Tout cacher"
-#: gtk2_ardour/editor_route_list.cc:322 gtk2_ardour/mixer_ui.cc:730
+#: gtk2_ardour/editor_route_list.cc:340 gtk2_ardour/mixer_ui.cc:811
msgid "Show All Audio Tracks"
msgstr "Afficher toutes les pistes"
-#: gtk2_ardour/editor_route_list.cc:323 gtk2_ardour/mixer_ui.cc:731
+#: gtk2_ardour/editor_route_list.cc:341 gtk2_ardour/mixer_ui.cc:812
msgid "Hide All Audio Tracks"
msgstr "cacher toutes les pistes"
-#: gtk2_ardour/editor_route_list.cc:324 gtk2_ardour/mixer_ui.cc:732
+#: gtk2_ardour/editor_route_list.cc:342 gtk2_ardour/mixer_ui.cc:813
msgid "Show All Audio Busses"
msgstr "afficher tous les bus"
-#: gtk2_ardour/editor_route_list.cc:325 gtk2_ardour/mixer_ui.cc:733
+#: gtk2_ardour/editor_route_list.cc:343 gtk2_ardour/mixer_ui.cc:814
msgid "Hide All Audio Busses"
msgstr "cacher tous les bus"
-#: gtk2_ardour/editor_rulers.cc:345
+#: gtk2_ardour/editor_rulers.cc:366
msgid "New location marker"
msgstr "Nouveau repère temporel"
-#: gtk2_ardour/editor_rulers.cc:346
+#: gtk2_ardour/editor_rulers.cc:367
msgid "Clear all locations"
msgstr "Supprimer tous les repères temporels"
-#: gtk2_ardour/editor_rulers.cc:347
+#: gtk2_ardour/editor_rulers.cc:368
msgid "Unhide locations"
msgstr "Réafficher les repères temporels"
-#: gtk2_ardour/editor_rulers.cc:352
+#: gtk2_ardour/editor_rulers.cc:373
msgid "Clear all ranges"
msgstr "Supprimer tous les intervalles"
-#: gtk2_ardour/editor_rulers.cc:353
+#: gtk2_ardour/editor_rulers.cc:374
msgid "Unhide ranges"
msgstr "Réafficher les intervalles"
-#: gtk2_ardour/editor_rulers.cc:362
+#: gtk2_ardour/editor_rulers.cc:384
+msgid "New CD track marker"
+msgstr "Nouveau marqueur de CD"
+
+#: gtk2_ardour/editor_rulers.cc:389
msgid "New Tempo"
msgstr "Nouveau tempo"
-#: gtk2_ardour/editor_rulers.cc:363
+#: gtk2_ardour/editor_rulers.cc:390
msgid "Clear tempo"
msgstr "Effacer le tempo"
-#: gtk2_ardour/editor_rulers.cc:368
+#: gtk2_ardour/editor_rulers.cc:395
msgid "New Meter"
msgstr "Nouveau type de mesure"
-#: gtk2_ardour/editor_rulers.cc:369
+#: gtk2_ardour/editor_rulers.cc:396
msgid "Clear meter"
msgstr "Effacer les types de mesure"
-#: gtk2_ardour/editor_rulers.cc:377
+#: gtk2_ardour/editor_rulers.cc:404
msgid "Min:Secs"
msgstr "h:min:sec"
-#: gtk2_ardour/editor_selection.cc:564 gtk2_ardour/editor_selection.cc:613
+#: gtk2_ardour/editor_selection.cc:739
msgid "set selected regions"
msgstr "sélection de régions"
-#: gtk2_ardour/editor_selection.cc:810
+#: gtk2_ardour/editor_selection.cc:849
+msgid "select all"
+msgstr "sélectionner tout"
+
+#: gtk2_ardour/editor_selection.cc:938
msgid "select all within"
msgstr "sélectionner tout dedans"
-#: gtk2_ardour/editor_selection.cc:840
-msgid "set selection from region"
-msgstr "zone de sélection sur la région"
-
-#: gtk2_ardour/editor_selection.cc:873
+#: gtk2_ardour/editor_selection.cc:996
msgid "set selection from range"
-msgstr "sélection depuis l'intervalle"
+msgstr "intervalle → zone de sélection"
-#: gtk2_ardour/editor_selection.cc:903
+#: gtk2_ardour/editor_selection.cc:1034
msgid "select all from range"
msgstr "sélectionner tout à partir de la zone"
-#: gtk2_ardour/editor_selection.cc:925
+#: gtk2_ardour/editor_selection.cc:1065
msgid "select all from punch"
msgstr "sélectionner tout depuis le point de punch in/out"
-#: gtk2_ardour/editor_selection.cc:947
+#: gtk2_ardour/editor_selection.cc:1096
msgid "select all from loop"
msgstr "sélectionner tout depuis la boucle"
-#: gtk2_ardour/editor_selection.cc:961
+#: gtk2_ardour/editor_selection.cc:1110
msgid "select all after cursor"
msgstr "sélectionner tout après le curseur"
-#: gtk2_ardour/editor_selection.cc:966
+#: gtk2_ardour/editor_selection.cc:1115
msgid "select all before cursor"
msgstr "sélectionner tout avant le curseur"
-#: gtk2_ardour/editor_selection.cc:996
-msgid "select all between cursors"
-msgstr "sélectionner tout entre les curseurs"
+#: gtk2_ardour/editor_selection.cc:1150
+msgid "select all after edit"
+msgstr "Sélectionner tout après le point d'édition"
+
+#: gtk2_ardour/editor_selection.cc:1155
+msgid "select all before edit"
+msgstr "sélectionner tout avant le point d'édition"
+
+#: gtk2_ardour/editor_selection.cc:1282
+msgid "No edit range defined"
+msgstr "Aucune plage d'édition définie"
+
+#: gtk2_ardour/editor_selection.cc:1288
+msgid ""
+"the edit point is Selected Marker\n"
+"but there is no selected marker."
+msgstr ""
+"Le point d'édition est un Repère Sélectionné\n"
+"mais il n'y a aucun repère sélectionné."
#: gtk2_ardour/editor_selection_list.cc:180
msgid "Name for Chunk:"
@@ -4210,100 +4681,386 @@ msgstr "Abandonner"
msgid "No selectable material found in the currently selected time range"
msgstr "Rien ne peut être sélectionné dans la zone choisie"
-#: gtk2_ardour/editor_tempodisplay.cc:290
-#: gtk2_ardour/editor_tempodisplay.cc:331
+#: gtk2_ardour/editor_tempodisplay.cc:293
+#: gtk2_ardour/editor_tempodisplay.cc:336
msgid "add"
msgstr "ajouter"
-#: gtk2_ardour/editor_tempodisplay.cc:312
+#: gtk2_ardour/editor_tempodisplay.cc:317
msgid "add tempo mark"
msgstr "ajouter un changement de tempo"
-#: gtk2_ardour/editor_tempodisplay.cc:353
+#: gtk2_ardour/editor_tempodisplay.cc:360
msgid "add meter mark"
msgstr "ajouter un indicateur de type de mesure"
-#: gtk2_ardour/editor_tempodisplay.cc:386
-#: gtk2_ardour/editor_tempodisplay.cc:415
+#: gtk2_ardour/editor_tempodisplay.cc:393
+#: gtk2_ardour/editor_tempodisplay.cc:422
msgid "done"
msgstr "terminé"
-#: gtk2_ardour/editor_tempodisplay.cc:404
-#: gtk2_ardour/editor_tempodisplay.cc:433
+#: gtk2_ardour/editor_tempodisplay.cc:411
+#: gtk2_ardour/editor_tempodisplay.cc:443
msgid "replace tempo mark"
msgstr "remplacer le changement de tempo"
-#: gtk2_ardour/editor_tempodisplay.cc:473
-#: gtk2_ardour/editor_tempodisplay.cc:505
+#: gtk2_ardour/editor_tempodisplay.cc:485
+#: gtk2_ardour/editor_tempodisplay.cc:517
msgid "programming error: marker for meter is not a meter marker!"
msgstr "programming error: marker for meter is not a meter marker!"
-#: gtk2_ardour/editor_tempodisplay.cc:483
-#: gtk2_ardour/editor_tempodisplay.cc:517
+#: gtk2_ardour/editor_tempodisplay.cc:495
+#: gtk2_ardour/editor_tempodisplay.cc:529
msgid "remove tempo mark"
msgstr "enlever le changement de tempo"
-#: gtk2_ardour/editor_timefx.cc:54
+#: gtk2_ardour/editor_timefx.cc:71
msgid "Quick but Ugly"
msgstr "rapide, basse qualité"
-#: gtk2_ardour/editor_timefx.cc:55
+#: gtk2_ardour/editor_timefx.cc:72
msgid "Skip Anti-aliasing"
msgstr "pas d'anti-crénelage"
-#: gtk2_ardour/editor_timefx.cc:59
-msgid "TimeStretchDialog"
-msgstr "TimeStretchDialog"
+#: gtk2_ardour/editor_timefx.cc:73
+msgid "Contents:"
+msgstr "Contenu :"
+
+#: gtk2_ardour/editor_timefx.cc:74
+msgid "Strict Linear"
+msgstr "Linéaire strict"
+
+#: gtk2_ardour/editor_timefx.cc:78
+msgid "TimeFXDialog"
+msgstr "TimeFXDialog"
-#: gtk2_ardour/editor_timefx.cc:62
-msgid "Timestretch"
+#: gtk2_ardour/editor_timefx.cc:82
+msgid "Pitch Shift"
+msgstr "Pitch shift"
+
+#: gtk2_ardour/editor_timefx.cc:84
+msgid "Time Stretch"
msgstr "Étirer / Contracter"
-#: gtk2_ardour/editor_timefx.cc:76
-msgid "Stretch/Shrink it"
-msgstr "allonger ou contracter"
+#: gtk2_ardour/editor_timefx.cc:100
+msgid "Octaves"
+msgstr "Octaves"
-#: gtk2_ardour/editor_timefx.cc:79 gtk2_ardour/editor_timefx.cc:80
-msgid "TimeStretchButton"
-msgstr "TimeStretchButton"
+#: gtk2_ardour/editor_timefx.cc:104
+msgid "Semitones (12TET)"
+msgstr "demi-tons"
-#: gtk2_ardour/editor_timefx.cc:81
-msgid "TimeStretchProgress"
-msgstr "TimeStretchProgress"
+#: gtk2_ardour/editor_timefx.cc:108
+msgid "Cents"
+msgstr "Cents"
-#: gtk2_ardour/editor_timefx.cc:145
-msgid "timestretch cannot be started - thread creation error"
+#: gtk2_ardour/editor_timefx.cc:114
+msgid "Shift"
msgstr ""
-"déformation temporelle impossible à démarrer – erreur de création de thread"
-#: gtk2_ardour/export_dialog.cc:59 gtk2_ardour/export_dialog.cc:401
-#: gtk2_ardour/export_dialog.cc:1029 gtk2_ardour/export_dialog.cc:1197
+#: gtk2_ardour/editor_timefx.cc:143 gtk2_ardour/editor_timefx.cc:144
+msgid "TimeFXButton"
+msgstr "TimeFXButton"
+
+#: gtk2_ardour/editor_timefx.cc:149
+msgid "Stretch/Shrink"
+msgstr "Étirer/Contracter"
+
+#: gtk2_ardour/editor_timefx.cc:154
+msgid "TimeFXProgress"
+msgstr "TimeFXProgress"
+
+#: gtk2_ardour/editor_timefx.cc:326
+msgid "timefx cannot be started - thread creation error"
+msgstr "timefx impossible à démarrer : erreur de création de thread"
+
+#: gtk2_ardour/editor_timefx.cc:407
+msgid "pitch shift"
+msgstr "pitch shift"
+
+#: gtk2_ardour/editor_timefx.cc:407
+msgid "time stretch"
+msgstr "étirement temporel"
+
+#: gtk2_ardour/engine_dialog.cc:49
+msgid "Realtime"
+msgstr "Temps réel"
+
+#: gtk2_ardour/engine_dialog.cc:50
+msgid "Do not lock memory"
+msgstr "Ne pas verrouiller la mémoire"
+
+#: gtk2_ardour/engine_dialog.cc:51
+msgid "Unlock memory"
+msgstr "Déverrouiller la mémoire"
+
+#: gtk2_ardour/engine_dialog.cc:52
+msgid "No zombies"
+msgstr "Pas de zombie"
+
+#: gtk2_ardour/engine_dialog.cc:53
+msgid "Provide monitor ports"
+msgstr "Fournir des ports de monitoring"
+
+#: gtk2_ardour/engine_dialog.cc:54
+msgid "Force 16 bit"
+msgstr "Forcer 16 bits"
+
+#: gtk2_ardour/engine_dialog.cc:55
+msgid "H/W monitoring"
+msgstr "Monitoring matériel"
+
+#: gtk2_ardour/engine_dialog.cc:56
+msgid "H/W metering"
+msgstr "VU-mètre matériel"
+
+#: gtk2_ardour/engine_dialog.cc:57
+msgid "Verbose output"
+msgstr "sortie détaillée"
+
+#: gtk2_ardour/engine_dialog.cc:58
+msgid "Start"
+msgstr "Démarrer"
+
+#: gtk2_ardour/engine_dialog.cc:77
+msgid "8000Hz"
+msgstr "8000Hz"
+
+#: gtk2_ardour/engine_dialog.cc:78
+msgid "22050Hz"
+msgstr "22050Hz"
+
+#: gtk2_ardour/engine_dialog.cc:79
+msgid "44100Hz"
+msgstr "44100Hz"
+
+#: gtk2_ardour/engine_dialog.cc:80
+msgid "48000Hz"
+msgstr "48000Hz"
+
+#: gtk2_ardour/engine_dialog.cc:81
+msgid "88200Hz"
+msgstr "88200Hz"
+
+#: gtk2_ardour/engine_dialog.cc:82
+msgid "96000Hz"
+msgstr "96000Hz"
+
+#: gtk2_ardour/engine_dialog.cc:83
+msgid "192000Hz"
+msgstr "192000Hz"
+
+#: gtk2_ardour/engine_dialog.cc:102 gtk2_ardour/engine_dialog.cc:496
+#: gtk2_ardour/export_dialog.cc:81 gtk2_ardour/export_dialog.cc:1298
+msgid "Triangular"
+msgstr "Triangulaire"
+
+#: gtk2_ardour/engine_dialog.cc:103 gtk2_ardour/engine_dialog.cc:498
+#: gtk2_ardour/export_dialog.cc:79 gtk2_ardour/export_dialog.cc:1296
+msgid "Rectangular"
+msgstr "Rectangulaire"
+
+#: gtk2_ardour/engine_dialog.cc:104 gtk2_ardour/engine_dialog.cc:500
+msgid "Shaped"
+msgstr "Remodelé"
+
+#: gtk2_ardour/engine_dialog.cc:129 gtk2_ardour/engine_dialog.cc:449
+#: gtk2_ardour/engine_dialog.cc:883
+msgid "Playback/Recording on 1 Device"
+msgstr "Lecture/Enregistrement sur 1 appareil"
+
+#: gtk2_ardour/engine_dialog.cc:130 gtk2_ardour/engine_dialog.cc:453
+#: gtk2_ardour/engine_dialog.cc:480 gtk2_ardour/engine_dialog.cc:886
+msgid "Playback/Recording on 2 Devices"
+msgstr "Lecture/Enregistrement sur 2 appareils"
+
+#: gtk2_ardour/engine_dialog.cc:131 gtk2_ardour/engine_dialog.cc:460
+#: gtk2_ardour/engine_dialog.cc:889
+msgid "Playback only"
+msgstr "Lecture seulement"
+
+#: gtk2_ardour/engine_dialog.cc:132 gtk2_ardour/engine_dialog.cc:462
+#: gtk2_ardour/engine_dialog.cc:891
+msgid "Recording only"
+msgstr "Enregistrement seulement"
+
+#: gtk2_ardour/engine_dialog.cc:141
+msgid "Driver"
+msgstr "Pilote"
+
+#: gtk2_ardour/engine_dialog.cc:146
+msgid "Interface"
+msgstr "Interface"
+
+#: gtk2_ardour/engine_dialog.cc:151 gtk2_ardour/export_dialog.cc:108
+msgid "Sample Rate"
+msgstr "échantillonnage"
+
+#: gtk2_ardour/engine_dialog.cc:156
+msgid "Buffer size"
+msgstr "taille du tampon"
+
+#: gtk2_ardour/engine_dialog.cc:162
+msgid "Number of buffers"
+msgstr "nombre de tampons"
+
+#: gtk2_ardour/engine_dialog.cc:169
+msgid "Approximate latency"
+msgstr "Latence approximative"
+
+#: gtk2_ardour/engine_dialog.cc:183
+msgid "Audio Mode"
+msgstr "Mode"
+
+#: gtk2_ardour/engine_dialog.cc:222
+msgid "Realtime Priority"
+msgstr "Priorité temps réel"
+
+#: gtk2_ardour/engine_dialog.cc:251 gtk2_ardour/engine_dialog.cc:375
+msgid "Ignore"
+msgstr "Ignorer"
+
+#: gtk2_ardour/engine_dialog.cc:259
+msgid "Client timeout"
+msgstr "délai d'expiration client"
+
+#: gtk2_ardour/engine_dialog.cc:265
+msgid "Number of ports"
+msgstr "Nombre de ports"
+
+#: gtk2_ardour/engine_dialog.cc:272
+msgid "Dither"
+msgstr "Interpolation"
+
+#: gtk2_ardour/engine_dialog.cc:282
+msgid ""
+"No JACK server found anywhere on this system. Please install JACK and restart"
+msgstr ""
+"Aucun serveur JACK n'a été trouvé sur le système. Veuillez installer JACK et "
+"recommencez"
+
+#: gtk2_ardour/engine_dialog.cc:290
+msgid "Server:"
+msgstr "Serveur :"
+
+#: gtk2_ardour/engine_dialog.cc:303
+msgid "Input device"
+msgstr "Interface d'entrée"
+
+#: gtk2_ardour/engine_dialog.cc:308
+msgid "Output device"
+msgstr "Interface de sortie"
+
+#: gtk2_ardour/engine_dialog.cc:314
+msgid "Input channels"
+msgstr "voies en entrée"
+
+#: gtk2_ardour/engine_dialog.cc:319
+msgid "Output channels"
+msgstr "voies en sortie"
+
+#: gtk2_ardour/engine_dialog.cc:324
+msgid "Hardware input latency (samples)"
+msgstr "Latence matérielle en entrée (échantillons)"
+
+#: gtk2_ardour/engine_dialog.cc:329
+msgid "Hardware output latency (samples)"
+msgstr "Latence matérielle en sortie (échantillons)"
+
+#: gtk2_ardour/engine_dialog.cc:342
+msgid "Device"
+msgstr "Interface audio"
+
+#: gtk2_ardour/engine_dialog.cc:344
+msgid "Advanced"
+msgstr "Avancé"
+
+#: gtk2_ardour/engine_dialog.cc:553
+msgid "cannot open JACK rc file %1 to store parameters"
+msgstr ""
+"Impossible d'ouvrir le fichier de configuration de JACK %1 pour y "
+"enregistrer les paramètres"
+
+#: gtk2_ardour/engine_dialog.cc:694
+msgid ""
+"You do not have any audio devices capable of\n"
+"simultaneous playback and recording.\n"
+"\n"
+"Please use Applications -> Utilities -> Audio MIDI Setup\n"
+"to create an \"aggregrate\" device, or install a suitable\n"
+"audio interface.\n"
+"\n"
+"Please send email to Apple and ask them why new Macs\n"
+"have no duplex audio device.\n"
+"\n"
+"Alternatively, if you really want just playback\n"
+"or recording but not both, start JACK before running\n"
+"Ardour and choose the relevant device then."
+msgstr ""
+"Vous n'avez pas de périphérique audio capable de lire et\n"
+"d'enregistrer en même temps.\n"
+"\n"
+"Allez dans Applications -> Utilitaires -> Config Audio MIDI\n"
+"pour créer un périphérique « agrégé » ou bien installez une\n"
+"interface audio appropriée.\n"
+"\n"
+"Ensuite, envoyez un mail à Apple et demandez-leur pourquoi\n"
+"les nouveaux Macs ne peuvent pas faire de duplex audio.\n"
+"\n"
+"Si vous voulez juste lire ou enregistrer mais pas\n"
+"les deux à la fois, démarrez Jack avant Ardour et choisissez\n"
+"le périphérique correspondant."
+
+#: gtk2_ardour/engine_dialog.cc:707
+msgid "No suitable audio devices"
+msgstr "Aucun périphérique audio approprié"
+
+#: gtk2_ardour/engine_dialog.cc:819
+msgid "No devices found for driver \"%1\""
+msgstr "Aucun périphérique trouvé pour le pilote « %1 »"
+
+#: gtk2_ardour/engine_dialog.cc:924
+msgid "JACK appears to be missing from the Ardour bundle"
+msgstr "Il semble que JACK soit absent du pack Ardour"
+
+#: gtk2_ardour/engine_dialog.cc:1148
+msgid "AudioSetup value for %1 is missing data"
+msgstr "La valeur « %1 » de la Config Audio est incomplète"
+
+#: gtk2_ardour/engine_dialog.cc:1228
+msgid "configuration files contain a JACK server path that doesn't exist (%1)"
+msgstr ""
+"Les fichiers de configuration contiennent un chemin vers JACK qui n'existe "
+"pas (%1)"
+
+#: gtk2_ardour/export_dialog.cc:59 gtk2_ardour/export_dialog.cc:423
+#: gtk2_ardour/export_dialog.cc:1090 gtk2_ardour/export_dialog.cc:1260
msgid "22.05kHz"
msgstr "22.05kHz"
-#: gtk2_ardour/export_dialog.cc:60 gtk2_ardour/export_dialog.cc:404
-#: gtk2_ardour/export_dialog.cc:419 gtk2_ardour/export_dialog.cc:1031
-#: gtk2_ardour/export_dialog.cc:1199
+#: gtk2_ardour/export_dialog.cc:60 gtk2_ardour/export_dialog.cc:426
+#: gtk2_ardour/export_dialog.cc:441 gtk2_ardour/export_dialog.cc:1092
+#: gtk2_ardour/export_dialog.cc:1262
msgid "44.1kHz"
msgstr "44.1kHz"
-#: gtk2_ardour/export_dialog.cc:61 gtk2_ardour/export_dialog.cc:407
-#: gtk2_ardour/export_dialog.cc:1033 gtk2_ardour/export_dialog.cc:1201
+#: gtk2_ardour/export_dialog.cc:61 gtk2_ardour/export_dialog.cc:429
+#: gtk2_ardour/export_dialog.cc:1094 gtk2_ardour/export_dialog.cc:1264
msgid "48kHz"
msgstr "48kHz"
-#: gtk2_ardour/export_dialog.cc:62 gtk2_ardour/export_dialog.cc:410
-#: gtk2_ardour/export_dialog.cc:1035 gtk2_ardour/export_dialog.cc:1203
+#: gtk2_ardour/export_dialog.cc:62 gtk2_ardour/export_dialog.cc:432
+#: gtk2_ardour/export_dialog.cc:1096 gtk2_ardour/export_dialog.cc:1266
msgid "88.2kHz"
msgstr "88.2kHz"
-#: gtk2_ardour/export_dialog.cc:63 gtk2_ardour/export_dialog.cc:413
-#: gtk2_ardour/export_dialog.cc:1037 gtk2_ardour/export_dialog.cc:1205
+#: gtk2_ardour/export_dialog.cc:63 gtk2_ardour/export_dialog.cc:435
+#: gtk2_ardour/export_dialog.cc:1098 gtk2_ardour/export_dialog.cc:1268
msgid "96kHz"
msgstr "96kHz"
-#: gtk2_ardour/export_dialog.cc:64 gtk2_ardour/export_dialog.cc:416
-#: gtk2_ardour/export_dialog.cc:1039 gtk2_ardour/export_dialog.cc:1207
+#: gtk2_ardour/export_dialog.cc:64 gtk2_ardour/export_dialog.cc:438
+#: gtk2_ardour/export_dialog.cc:1100 gtk2_ardour/export_dialog.cc:1270
msgid "192kHz"
msgstr "192kHz"
@@ -4311,36 +5068,32 @@ msgstr "192kHz"
msgid "best"
msgstr "la meilleure"
-#: gtk2_ardour/export_dialog.cc:70 gtk2_ardour/export_dialog.cc:1214
+#: gtk2_ardour/export_dialog.cc:70 gtk2_ardour/export_dialog.cc:1280
msgid "fastest"
msgstr "la plus rapide"
-#: gtk2_ardour/export_dialog.cc:71 gtk2_ardour/export_dialog.cc:1216
+#: gtk2_ardour/export_dialog.cc:71 gtk2_ardour/export_dialog.cc:1282
msgid "linear"
msgstr "linéaire"
-#: gtk2_ardour/export_dialog.cc:72 gtk2_ardour/export_dialog.cc:1218
+#: gtk2_ardour/export_dialog.cc:72 gtk2_ardour/export_dialog.cc:1284
msgid "better"
msgstr "bonne"
-#: gtk2_ardour/export_dialog.cc:73 gtk2_ardour/export_dialog.cc:1220
+#: gtk2_ardour/export_dialog.cc:73 gtk2_ardour/export_dialog.cc:1286
msgid "intermediate"
msgstr "moyenne"
-#: gtk2_ardour/export_dialog.cc:79 gtk2_ardour/export_dialog.cc:1229
-msgid "Rectangular"
-msgstr "Rectangulaire"
-
#: gtk2_ardour/export_dialog.cc:80
msgid "Shaped Noise"
msgstr "Remodelage (shaped noise)"
-#: gtk2_ardour/export_dialog.cc:81 gtk2_ardour/export_dialog.cc:1231
-msgid "Triangular"
-msgstr "Triangulaire"
+#: gtk2_ardour/export_dialog.cc:86
+msgid "stereo"
+msgstr "stéréo"
-#: gtk2_ardour/export_dialog.cc:87 gtk2_ardour/export_dialog.cc:488
-#: gtk2_ardour/export_dialog.cc:1057 gtk2_ardour/export_dialog.cc:1179
+#: gtk2_ardour/export_dialog.cc:87 gtk2_ardour/export_dialog.cc:510
+#: gtk2_ardour/export_dialog.cc:1118 gtk2_ardour/export_dialog.cc:1240
msgid "mono"
msgstr "mono"
@@ -4348,7 +5101,7 @@ msgstr "mono"
msgid "CUE"
msgstr "CUE"
-#: gtk2_ardour/export_dialog.cc:94
+#: gtk2_ardour/export_dialog.cc:94 gtk2_ardour/export_dialog.cc:926
msgid "TOC"
msgstr "TOC"
@@ -4376,10 +5129,6 @@ msgstr "échantillon"
msgid "Sample Endianness"
msgstr "ordre des bits"
-#: gtk2_ardour/export_dialog.cc:108
-msgid "Sample Rate"
-msgstr "échantillonnage"
-
#: gtk2_ardour/export_dialog.cc:109
msgid "Conversion Quality"
msgstr "conversion"
@@ -4392,8 +5141,8 @@ msgstr "interpolation"
msgid "Export CD Marker File Only"
msgstr "n'exporter qu'un fichier descripteur de CD"
-#: gtk2_ardour/export_dialog.cc:112 gtk2_ardour/option_editor.cc:84
-#: gtk2_ardour/option_editor.cc:85
+#: gtk2_ardour/export_dialog.cc:112 gtk2_ardour/option_editor.cc:98
+#: gtk2_ardour/option_editor.cc:99
msgid "Browse"
msgstr "Parcourir"
@@ -4402,53 +5151,52 @@ msgid "Specific tracks ..."
msgstr "Pistes spécifiques..."
#: gtk2_ardour/export_dialog.cc:141 gtk2_ardour/export_dialog.cc:157
-#: gtk2_ardour/mixer_strip.cc:124 gtk2_ardour/mixer_strip.cc:739
+#: gtk2_ardour/mixer_strip.cc:127 gtk2_ardour/mixer_strip.cc:733
msgid "Output"
msgstr "Sortie"
-#: gtk2_ardour/export_dialog.cc:635
+#: gtk2_ardour/export_dialog.cc:656
msgid "Editor: cannot open \"%1\" as export file for CD toc file"
msgstr "Editeur : impossible d'écrire l'index TOC du CD dans le fichier « %1 »"
-#: gtk2_ardour/export_dialog.cc:761
+#: gtk2_ardour/export_dialog.cc:790
msgid "Editor: cannot open \"%1\" as export file for CD cue file"
msgstr ""
"Editeur : impossible d'écrire le descripteur CUE du CD dans le fichier « %1 »"
-#: gtk2_ardour/export_dialog.cc:780
+#: gtk2_ardour/export_dialog.cc:809
msgid "WAV"
msgstr "WAV"
-#: gtk2_ardour/export_dialog.cc:914
+#: gtk2_ardour/export_dialog.cc:941
+msgid "Not connected to audioengine"
+msgstr "Non connecté au moteur audio"
+
+#: gtk2_ardour/export_dialog.cc:945
+msgid "Ardour cannot export audio when disconnected"
+msgstr "Ardour ne peut pas exporter d'audio s'il est déconnecté"
+
+#: gtk2_ardour/export_dialog.cc:975
msgid "Stop Export"
msgstr "Arrêter l'exportation"
-#: gtk2_ardour/export_dialog.cc:1133
+#: gtk2_ardour/export_dialog.cc:1194
msgid "Please enter a valid filename."
msgstr "veuillez entrer un nom de fichier valide"
-#: gtk2_ardour/export_dialog.cc:1143
+#: gtk2_ardour/export_dialog.cc:1204
msgid "Please specify a complete filename for the audio file."
msgstr "veuiller donner un nom complet pour le fichier audio"
-#: gtk2_ardour/export_dialog.cc:1149
+#: gtk2_ardour/export_dialog.cc:1210
msgid "File already exists, do you want to overwrite it?"
msgstr "Le fichier existe déjà. Voulez-vous l'écraser ?"
-#: gtk2_ardour/export_dialog.cc:1161
+#: gtk2_ardour/export_dialog.cc:1222
#: gtk2_ardour/export_range_markers_dialog.cc:160
msgid "Cannot write file in: "
msgstr "Impossible d'écrire le fichier dans :"
-#: gtk2_ardour/export_session_dialog.cc:29
-#: gtk2_ardour/export_region_dialog.cc:35
-msgid "Export to File"
-msgstr "exporter vers un fichier"
-
-#: gtk2_ardour/export_region_dialog.cc:34
-msgid "ardour: export region"
-msgstr "ardour : export d'une région"
-
#: gtk2_ardour/export_range_markers_dialog.cc:41
msgid "ardour: export ranges"
msgstr "ardour : export de régions"
@@ -4465,53 +5213,80 @@ msgstr "Veuillez entrer un nom de dossier valide."
msgid "Please select an existing target directory. Files are not allowed!"
msgstr "Veuillez sélectionner un dossier existant (pas un fichier)"
+#: gtk2_ardour/export_region_dialog.cc:34
+msgid "ardour: export region"
+msgstr "ardour : export d'une région"
+
+#: gtk2_ardour/export_region_dialog.cc:35
+#: gtk2_ardour/export_session_dialog.cc:29
+msgid "Export to File"
+msgstr "exporter vers un fichier"
+
#: gtk2_ardour/gain_automation_time_axis.cc:64
msgid "add gain automation event"
msgstr "ajout d'événement d'autom. de gain"
-#: gtk2_ardour/gain_meter.cc:112 gtk2_ardour/gain_meter.cc:330
-#: gtk2_ardour/gain_meter.cc:519 gtk2_ardour/gain_meter.cc:590
+#: gtk2_ardour/gain_meter.cc:114 gtk2_ardour/gain_meter.cc:345
+#: gtk2_ardour/gain_meter.cc:541 gtk2_ardour/gain_meter.cc:612
msgid "-inf"
msgstr "-inf"
-#: gtk2_ardour/gain_meter.cc:123
+#: gtk2_ardour/gain_meter.cc:125
msgid "Fader automation mode"
msgstr "mode d'automatisation du gain"
-#: gtk2_ardour/gain_meter.cc:124
+#: gtk2_ardour/gain_meter.cc:126
msgid "Fader automation type"
msgstr "type d'automatisation du gain"
-#: gtk2_ardour/gain_meter.cc:169 gtk2_ardour/gain_meter.cc:884
+#: gtk2_ardour/gain_meter.cc:170 gtk2_ardour/gain_meter.cc:907
#: gtk2_ardour/panner_ui.cc:98 gtk2_ardour/panner_ui.cc:784
msgid "Abs"
msgstr "abs"
-#: gtk2_ardour/gain_meter.cc:497
+#: gtk2_ardour/gain_meter.cc:519
msgid "-Inf"
msgstr "-inf"
-#: gtk2_ardour/gain_meter.cc:700 gtk2_ardour/gain_meter.cc:715
+#: gtk2_ardour/gain_meter.cc:723 gtk2_ardour/gain_meter.cc:738
msgid "meter point change"
-msgstr "changt source vu-mètre"
+msgstr "changt source VU-mètre"
-#: gtk2_ardour/gain_meter.cc:848 gtk2_ardour/mixer_strip.cc:449
+#: gtk2_ardour/gain_meter.cc:871 gtk2_ardour/mixer_strip.cc:443
#: gtk2_ardour/panner_ui.cc:748
msgid "M"
msgstr "M"
-#: gtk2_ardour/gain_meter.cc:851 gtk2_ardour/panner_ui.cc:751
+#: gtk2_ardour/gain_meter.cc:874 gtk2_ardour/panner_ui.cc:751
msgid "P"
msgstr "P"
-#: gtk2_ardour/gain_meter.cc:854 gtk2_ardour/panner_ui.cc:754
+#: gtk2_ardour/gain_meter.cc:877 gtk2_ardour/panner_ui.cc:754
msgid "T"
msgstr "T"
-#: gtk2_ardour/gain_meter.cc:857 gtk2_ardour/panner_ui.cc:757
+#: gtk2_ardour/gain_meter.cc:880 gtk2_ardour/panner_ui.cc:757
msgid "W"
msgstr "W"
+#: gtk2_ardour/generic_pluginui.cc:80
+msgid "<span size=\"large\">Presets</span>"
+msgstr "<span size=\"large\">réglages préféfinis</span>"
+
+#: gtk2_ardour/generic_pluginui.cc:208
+msgid "Plugin Editor: could not build control element for port %1"
+msgstr ""
+"Éditeur de plugin : impossible de construire l'élément de contrôle pour le "
+"port %1"
+
+#: gtk2_ardour/generic_pluginui.cc:298
+msgid "Automation control"
+msgstr "contrôle d'automatisation"
+
+#: gtk2_ardour/generic_pluginui.cc:305
+msgid "Mgnual"
+msgstr "Manuel"
+
#: gtk2_ardour/gtk-custom-ruler.c:126
msgid "Lower"
msgstr "inférieur"
@@ -4556,6 +5331,11 @@ msgstr "dessiner la position actuelle de la règle"
msgid "Image Compositor Socket has been shutdown/closed"
msgstr "Le socket du compositeur d'image a été arrêté ou fermé"
+#: gtk2_ardour/imageframe_time_axis.cc:255 gtk2_ardour/marker_time_axis.cc:211
+#: gtk2_ardour/route_time_axis.cc:424 gtk2_ardour/theme_manager.cc:53
+msgid "Color"
+msgstr "Couleur"
+
#: gtk2_ardour/imageframe_time_axis.cc:285
msgid "0.5 seconds"
msgstr "0,5 seconde"
@@ -4596,6 +5376,11 @@ msgstr "Trame d'image"
msgid "Rename Track"
msgstr "Renommer la piste"
+#: gtk2_ardour/io_selector.cc:59 gtk2_ardour/io_selector.cc:747
+#: gtk2_ardour/connection_editor.cc:85
+msgid "OK"
+msgstr "OK"
+
#: gtk2_ardour/io_selector.cc:61 gtk2_ardour/io_selector.cc:749
#: gtk2_ardour/connection_editor.cc:60 gtk2_ardour/connection_editor.cc:109
msgid "Rescan"
@@ -4649,23 +5434,41 @@ msgstr "Il n'y a plus de port JACK disponible"
msgid "ardour: "
msgstr "ardour : "
-#: gtk2_ardour/ladspa_pluginui.cc:77
-msgid "<span size=\"large\">Presets</span>"
-msgstr "<span size=\"large\">réglages préféfinis</span>"
+#: gtk2_ardour/keyeditor.cc:28
+msgid "Shortcut Editor"
+msgstr "Éditeur de raccourcis clavier"
-#: gtk2_ardour/ladspa_pluginui.cc:205
-msgid "Plugin Editor: could not build control element for port %1"
-msgstr ""
-"Éditeur de plugin : impossible de construire l'élément de contrôle pour le "
-"port %1"
+#: gtk2_ardour/keyeditor.cc:29
+msgid "Remove shortcut"
+msgstr "Enlever le raccourci"
-#: gtk2_ardour/ladspa_pluginui.cc:295
-msgid "Automation control"
-msgstr "contrôle d'automatisation"
+#: gtk2_ardour/keyeditor.cc:39
+msgid "Action"
+msgstr "Action"
-#: gtk2_ardour/ladspa_pluginui.cc:302
-msgid "Mgnual"
-msgstr "Manuel"
+#: gtk2_ardour/keyeditor.cc:40
+msgid "Shortcut"
+msgstr "Raccourci"
+
+#: gtk2_ardour/keyeditor.cc:60
+msgid "Select an action, then press the key(s) to (re)set its shortcut"
+msgstr "Sélectionnez une action, puis appuyez sur la touche pour définir le raccourci"
+
+#: gtk2_ardour/keyeditor.cc:264
+msgid "Command-"
+msgstr "Commande-"
+
+#: gtk2_ardour/keyeditor.cc:265
+msgid "Option-"
+msgstr "Option-"
+
+#: gtk2_ardour/keyeditor.cc:266
+msgid "Shift-"
+msgstr "Maj-"
+
+#: gtk2_ardour/keyeditor.cc:267
+msgid "Control-"
+msgstr "Ctrl-"
#: gtk2_ardour/location_ui.cc:49 gtk2_ardour/location_ui.cc:52
msgid "Set"
@@ -4687,79 +5490,43 @@ msgstr "SCMS"
msgid "Pre-Emphasis"
msgstr "Pré-accentuation"
-#: gtk2_ardour/location_ui.cc:571
+#: gtk2_ardour/location_ui.cc:430
+msgid "You cannot put a CD marker at the start of the session"
+msgstr "Vous ne pouvez pas poser un marqueur de CD au début de la session"
+
+#: gtk2_ardour/location_ui.cc:605
msgid "Add New Location"
msgstr "ajouter un repère temporel"
-#: gtk2_ardour/location_ui.cc:572
+#: gtk2_ardour/location_ui.cc:606
msgid "Add New Range"
msgstr "ajouter un intervalle"
-#: gtk2_ardour/location_ui.cc:608
+#: gtk2_ardour/location_ui.cc:642
msgid "Location (CD Index) Markers"
msgstr "Repères temporels (et index de CD)"
-#: gtk2_ardour/location_ui.cc:628
+#: gtk2_ardour/location_ui.cc:662
msgid "Range (CD Track) Markers"
msgstr "Intervalles (et plages de CD)"
-#: gtk2_ardour/location_ui.cc:801
+#: gtk2_ardour/location_ui.cc:842
msgid "add range marker"
msgstr "ajouter un intervalle"
-#: gtk2_ardour/main.cc:75
-msgid ""
-"Without a UI style file, ardour will look strange.\n"
-" Please set ARDOUR2_UI_RC to point to a valid UI style file"
-msgstr ""
-"Sans fichier de style pour son interface, Ardour aura une apparence "
-"bizarre.\n"
-"Veuillez faire pointer ARDOUR2_UI_RC vers un fichier de style valide"
-
-#: gtk2_ardour/main.cc:96
-msgid "Ardour could not connect to JACK."
-msgstr "Impossible de se connecter à JACK"
-
-#: gtk2_ardour/main.cc:100
-msgid ""
-"There are several possible reasons:\n"
-"\n"
-"1) JACK is not running.\n"
-"2) JACK is running as another user, perhaps root.\n"
-"3) There is already another client called \"ardour\".\n"
-"\n"
-"Please consider the possibilities, and perhaps (re)start JACK."
-msgstr ""
-"Il y a plusieurs raisons possibles :\n"
-"\n"
-"1) JACK n'est pas lancé.\n"
-"2) JACK tourne sous un autre utilisateur, peut-être root.\n"
-"3) Il y a un autre programme client appelé \"ardour\".\n"
-"\n"
-"Veuillez étudier ces possibilités, et peut-être (re)lancer JACK."
-
-#: gtk2_ardour/main.cc:144
-msgid "could not load command line session \"%1\""
-msgstr "impossible de charger la session indiquée en ligne de commande « %1 »"
+#: gtk2_ardour/main.cc:173
+msgid "cannot open pango.rc file %1"
+msgstr "impossible d'ouvrir le fichier pango %1"
-#: gtk2_ardour/main.cc:152
-msgid ""
-"\n"
-"\n"
-"No session named \"%1\" exists.\n"
-"To create it from the command line, start ardour as \"ardour --new %1"
-msgstr ""
-"\n"
-"\n"
-"Il n'existe pas de session nommée « %1 ».\n"
-"Pour la créer depuis la ligne de commande, lancez ardour en tapant ceci : "
-"\"ardour --new %1"
+#: gtk2_ardour/main.cc:250
+msgid "Key bindings file \"%1\" not found. Default bindings used instead"
+msgstr "Fichier de raccourcis clavier « %1 » non trouvé. Utilisation des raccourcis par défaut."
-#: gtk2_ardour/main.cc:225
+#: gtk2_ardour/main.cc:312
msgid "Ardour/GTK "
msgstr "Ardour/GTK"
-#: gtk2_ardour/main.cc:227
+#: gtk2_ardour/main.cc:314
msgid ""
"\n"
" (built using "
@@ -4767,15 +5534,15 @@ msgstr ""
"\n"
" (construit avec "
-#: gtk2_ardour/main.cc:230
+#: gtk2_ardour/main.cc:317
msgid " and GCC version "
msgstr " et GCC version "
-#: gtk2_ardour/main.cc:240
+#: gtk2_ardour/main.cc:327
msgid "Copyright (C) 1999-2007 Paul Davis"
msgstr "Copyright (C) 1999-2007 Paul Davis"
-#: gtk2_ardour/main.cc:241
+#: gtk2_ardour/main.cc:328
msgid ""
"Some portions Copyright (C) Steve Harris, Ari Johnson, Brett Viren, Joel "
"Baker"
@@ -4783,39 +5550,31 @@ msgstr ""
"Pour certaines parties, Copyright (C) Steve Harris, Ari Johnson, Brett "
"Viren, Joel Baker"
-#: gtk2_ardour/main.cc:243
+#: gtk2_ardour/main.cc:330
msgid "Ardour comes with ABSOLUTELY NO WARRANTY"
msgstr "Ardour est distribué sans AUCUNE GARANTIE"
-#: gtk2_ardour/main.cc:244
+#: gtk2_ardour/main.cc:331
msgid "not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
msgstr ""
"pas même de COMMERCIALISATION\n"
"ou d'ADÉQUATION À UN BUT PARTICULIER."
-#: gtk2_ardour/main.cc:245
+#: gtk2_ardour/main.cc:332
msgid "This is free software, and you are welcome to redistribute it "
msgstr "Ceci est un logiciel libre, et vous êtes encouragé à le distribuer "
-#: gtk2_ardour/main.cc:246
+#: gtk2_ardour/main.cc:333
msgid "under certain conditions; see the source for copying conditions."
msgstr ""
"sous certaines conditions ; voir le fichier source pour les conditions de "
"distribution."
-#: gtk2_ardour/main.cc:257
+#: gtk2_ardour/main.cc:344
msgid "could not create ARDOUR GUI"
msgstr "impossible de créer l'interface utilisateur d'Ardour"
-#: gtk2_ardour/main.cc:282
-msgid "Could not connect to JACK server as \"%1\""
-msgstr "Impossible de se connecter au serveur JACK en tant que « %1 »"
-
-#: gtk2_ardour/main.cc:289
-msgid "could not initialize Ardour."
-msgstr "impossible d'initialiser Ardour."
-
-#: gtk2_ardour/marker.cc:243
+#: gtk2_ardour/marker.cc:245
msgid "MarkerText"
msgstr "MarkerText"
@@ -4823,283 +5582,326 @@ msgstr "MarkerText"
msgid "Remove Marker"
msgstr "Enlever le repère"
-#: gtk2_ardour/marker_time_axis.cc:255
-msgid "Marker"
-msgstr "Marqueur"
+#: gtk2_ardour/midi_port_dialog.cc:22
+msgid "Port name"
+msgstr "Nom du port"
-#: gtk2_ardour/mixer_strip.cc:95 gtk2_ardour/mixer_strip.cc:140
-#: gtk2_ardour/mixer_strip.cc:1211
+#: gtk2_ardour/mixer_strip.cc:88 gtk2_ardour/route_time_axis.cc:154
+msgid "Record"
+msgstr "Enregistrement"
+
+#: gtk2_ardour/mixer_strip.cc:97 gtk2_ardour/mixer_strip.cc:143
+#: gtk2_ardour/mixer_strip.cc:1217
msgid "pre"
msgstr "pré"
-#: gtk2_ardour/mixer_strip.cc:96 gtk2_ardour/mixer_strip.cc:789
+#: gtk2_ardour/mixer_strip.cc:98 gtk2_ardour/mixer_strip.cc:786
msgid "Comments"
msgstr "commentaires"
-#: gtk2_ardour/mixer_strip.cc:119
+#: gtk2_ardour/mixer_strip.cc:122
msgid "Input"
msgstr "Entrée"
-#: gtk2_ardour/mixer_strip.cc:136 gtk2_ardour/mixer_strip.cc:1207
+#: gtk2_ardour/mixer_strip.cc:139 gtk2_ardour/mixer_strip.cc:1213
+#: gtk2_ardour/option_editor.cc:707
msgid "input"
msgstr "entrée"
-#: gtk2_ardour/mixer_strip.cc:144 gtk2_ardour/mixer_strip.cc:1215
+#: gtk2_ardour/mixer_strip.cc:147 gtk2_ardour/mixer_strip.cc:1221
msgid "post"
msgstr "post"
-#: gtk2_ardour/mixer_strip.cc:151
+#: gtk2_ardour/mixer_strip.cc:154
msgid "tupni"
msgstr "tupni"
-#: gtk2_ardour/mixer_strip.cc:199
+#: gtk2_ardour/mixer_strip.cc:202
msgid "Varispeed"
msgstr "molette"
-#: gtk2_ardour/mixer_strip.cc:225 gtk2_ardour/mixer_strip.cc:805
+#: gtk2_ardour/mixer_strip.cc:228 gtk2_ardour/mixer_strip.cc:802
msgid "Click to Add/Edit Comments"
msgstr "ajouter ou modifier des commentaires"
-#: gtk2_ardour/mixer_strip.cc:380
-msgid "unknown strip width \"%1\" in XML GUI information"
-msgstr ""
-"largeur de tranche inconnue « %1 » dans les données XML de l'interface "
-"utilisateur"
-
-#: gtk2_ardour/mixer_strip.cc:423
+#: gtk2_ardour/mixer_strip.cc:419
msgid "record"
msgstr "Enregistrement"
-#: gtk2_ardour/mixer_strip.cc:430
+#: gtk2_ardour/mixer_strip.cc:426
msgid "comments"
msgstr "commentaires"
-#: gtk2_ardour/mixer_strip.cc:433
+#: gtk2_ardour/mixer_strip.cc:429
msgid "*comments*"
msgstr "commentaires"
-#: gtk2_ardour/mixer_strip.cc:447
+#: gtk2_ardour/mixer_strip.cc:441
msgid "Rec"
msgstr "Enreg."
-#: gtk2_ardour/mixer_strip.cc:450
+#: gtk2_ardour/mixer_strip.cc:444
msgid "S"
msgstr "S"
-#: gtk2_ardour/mixer_strip.cc:454 gtk2_ardour/mixer_strip.cc:799
+#: gtk2_ardour/mixer_strip.cc:448 gtk2_ardour/mixer_strip.cc:796
msgid "Cmt"
msgstr "Cmt"
-#: gtk2_ardour/mixer_strip.cc:457 gtk2_ardour/mixer_strip.cc:796
+#: gtk2_ardour/mixer_strip.cc:451 gtk2_ardour/mixer_strip.cc:793
msgid "*Cmt*"
msgstr "*Cmt*"
-#: gtk2_ardour/mixer_strip.cc:496 gtk2_ardour/mixer_strip.cc:562
-#: gtk2_ardour/redirect_box.cc:1092
+#: gtk2_ardour/mixer_strip.cc:490 gtk2_ardour/mixer_strip.cc:556
+#: gtk2_ardour/redirect_box.cc:1122
msgid "Not connected to JACK - no I/O changes are possible"
msgstr "Non connecté à JACK – aucun changement d'entrée/sortie n'est possible"
-#: gtk2_ardour/mixer_strip.cc:596 gtk2_ardour/mixer_strip.cc:612
+#: gtk2_ardour/mixer_strip.cc:590 gtk2_ardour/mixer_strip.cc:606
msgid "could not register new ports required for that connection"
msgstr "impossible de définir les nouveaux ports requis pour cette connexion"
-#: gtk2_ardour/mixer_strip.cc:719
+#: gtk2_ardour/mixer_strip.cc:713
msgid " Input"
msgstr " entrée"
-#: gtk2_ardour/mixer_strip.cc:722
+#: gtk2_ardour/mixer_strip.cc:716
msgid "I"
msgstr "I"
-#: gtk2_ardour/mixer_strip.cc:742
+#: gtk2_ardour/mixer_strip.cc:736
msgid "O"
msgstr "O"
-#: gtk2_ardour/mixer_strip.cc:786
+#: gtk2_ardour/mixer_strip.cc:783
msgid "*Comments*"
msgstr "*commentaires*"
-#: gtk2_ardour/mixer_strip.cc:841
+#: gtk2_ardour/mixer_strip.cc:838
msgid ": comment editor"
msgstr ": éditeur de commentaires"
-#: gtk2_ardour/mixer_strip.cc:936
+#: gtk2_ardour/mixer_strip.cc:907 gtk2_ardour/route_time_axis.cc:284
+msgid "No group"
+msgstr "Aucun groupe"
+
+#: gtk2_ardour/mixer_strip.cc:933
msgid "Grp"
msgstr "Grp"
-#: gtk2_ardour/mixer_strip.cc:939
+#: gtk2_ardour/mixer_strip.cc:936
msgid "~G"
msgstr "~G"
-#: gtk2_ardour/mixer_strip.cc:988
+#: gtk2_ardour/mixer_strip.cc:984
msgid "Invert Polarity"
msgstr "inverser la polarité"
-#: gtk2_ardour/mixer_ui.cc:82
+#: gtk2_ardour/mixer_strip.cc:987
+msgid "Protect against denormals"
+msgstr "Protège contre les dénormalisations"
+
+#: gtk2_ardour/mixer_strip.cc:995 gtk2_ardour/route_time_axis.cc:432
+msgid "Remote Control ID"
+msgstr "Identifiant de contrôleur"
+
+#: gtk2_ardour/mixer_ui.cc:89
msgid "Strips"
msgstr "Tranches"
-#: gtk2_ardour/mixer_ui.cc:107
+#: gtk2_ardour/mixer_ui.cc:115
msgid "Group"
msgstr "Groupe"
-#: gtk2_ardour/mixer_ui.cc:207 gtk2_ardour/mixer_ui.cc:362
-#: gtk2_ardour/mixer_ui.cc:394
+#: gtk2_ardour/mixer_ui.cc:211 gtk2_ardour/mixer_ui.cc:423
+#: gtk2_ardour/mixer_ui.cc:455
msgid "Mixer"
msgstr "Console de mixage..."
-#: gtk2_ardour/mixer_ui.cc:601
-msgid "signal"
-msgstr "signal"
-
-#: gtk2_ardour/mixer_ui.cc:752
+#: gtk2_ardour/mixer_ui.cc:833
msgid "track display list item for renamed strip not found!"
msgstr ""
"élément de liste d'affichage de piste introuvable pour la tranche renommée !"
-#: gtk2_ardour/new_session_dialog.cc:44
+#: gtk2_ardour/new_session_dialog.cc:50
msgid "Name :"
msgstr "Nom de la session :"
-#: gtk2_ardour/new_session_dialog.cc:48 gtk2_ardour/new_session_dialog.cc:49
-#: gtk2_ardour/new_session_dialog.cc:50 gtk2_ardour/new_session_dialog.cc:51
+#: gtk2_ardour/new_session_dialog.cc:54 gtk2_ardour/new_session_dialog.cc:55
+#: gtk2_ardour/new_session_dialog.cc:56 gtk2_ardour/new_session_dialog.cc:57
msgid "channels"
msgstr "voies"
-#: gtk2_ardour/new_session_dialog.cc:69
+#: gtk2_ardour/new_session_dialog.cc:75
msgid "<b>Busses</b>"
msgstr "<b>Bus :</b>"
-#: gtk2_ardour/new_session_dialog.cc:70
+#: gtk2_ardour/new_session_dialog.cc:76
msgid "<b>Inputs</b>"
msgstr "<b>Entrées :</b>"
-#: gtk2_ardour/new_session_dialog.cc:71
+#: gtk2_ardour/new_session_dialog.cc:77
msgid "<b>Outputs</b>"
msgstr "<b>Sorties :</b>"
-#: gtk2_ardour/new_session_dialog.cc:73
+#: gtk2_ardour/new_session_dialog.cc:79
msgid "Create Folder In :"
msgstr "Créer le dossier dans :"
-#: gtk2_ardour/new_session_dialog.cc:75
+#: gtk2_ardour/new_session_dialog.cc:81
msgid "Template :"
msgstr "Modèle de session :"
-#: gtk2_ardour/new_session_dialog.cc:77
+#: gtk2_ardour/new_session_dialog.cc:83
msgid "Create Monitor Bus"
-msgstr "Bus d'écoute à "
+msgstr "Bus de monitoring à "
-#: gtk2_ardour/new_session_dialog.cc:84
+#: gtk2_ardour/new_session_dialog.cc:90
msgid "Create Master Bus"
msgstr "Bus de sortie à "
-#: gtk2_ardour/new_session_dialog.cc:86
+#: gtk2_ardour/new_session_dialog.cc:92
msgid "Automatically Connect to Physical Inputs"
msgstr "relier aux entrées matérielles"
-#: gtk2_ardour/new_session_dialog.cc:87 gtk2_ardour/new_session_dialog.cc:100
+#: gtk2_ardour/new_session_dialog.cc:93 gtk2_ardour/new_session_dialog.cc:106
msgid "Use only"
msgstr "Utiliser seulement"
-#: gtk2_ardour/new_session_dialog.cc:99
+#: gtk2_ardour/new_session_dialog.cc:105
msgid "Automatically Connect Outputs"
msgstr "relier les sorties..."
-#: gtk2_ardour/new_session_dialog.cc:108
+#: gtk2_ardour/new_session_dialog.cc:114
msgid "... to Master Bus"
msgstr "...au bus général"
-#: gtk2_ardour/new_session_dialog.cc:109
+#: gtk2_ardour/new_session_dialog.cc:115
msgid "... to Physical Outputs"
msgstr "...aux sorties matérielles"
-#: gtk2_ardour/new_session_dialog.cc:115
+#: gtk2_ardour/new_session_dialog.cc:121
msgid "Advanced Options"
msgstr "Options..."
-#: gtk2_ardour/new_session_dialog.cc:123
+#: gtk2_ardour/new_session_dialog.cc:129
msgid "Recent:"
msgstr "Sessions récentes :"
-#: gtk2_ardour/new_session_dialog.cc:160
+#: gtk2_ardour/new_session_dialog.cc:166
msgid "Browse:"
msgstr "Autre session :"
-#: gtk2_ardour/new_session_dialog.cc:338
-msgid "New Session"
-msgstr "Créer une session"
-
-#: gtk2_ardour/new_session_dialog.cc:340
-msgid "Open Session"
-msgstr "Ouvrir une session"
-
-#: gtk2_ardour/new_session_dialog.cc:347
+#: gtk2_ardour/new_session_dialog.cc:378
msgid "Session Control"
msgstr "ardour : gestion des sessions"
-#: gtk2_ardour/new_session_dialog.cc:390
+#: gtk2_ardour/new_session_dialog.cc:418
msgid "select template"
msgstr "choix du modèle"
-#: gtk2_ardour/new_session_dialog.cc:396
+#: gtk2_ardour/new_session_dialog.cc:424
msgid "select session file"
msgstr "sélection du fichier de session"
-#: gtk2_ardour/new_session_dialog.cc:405
+#: gtk2_ardour/new_session_dialog.cc:433
msgid "select directory"
msgstr "sélection d'un dossier"
-#: gtk2_ardour/option_editor.cc:74
+#: gtk2_ardour/new_session_dialog.cc:492
+msgid "Audio Setup"
+msgstr "Config audio"
+
+#: gtk2_ardour/new_session_dialog.cc:516
+msgid "New Session"
+msgstr "Créer une session"
+
+#: gtk2_ardour/new_session_dialog.cc:521
+msgid "Open Session"
+msgstr "Ouvrir une session"
+
+#: gtk2_ardour/option_editor.cc:77
+msgid "Limit undo history"
+msgstr "Limiter la taille de l'historique d'annulation"
+
+#: gtk2_ardour/option_editor.cc:78
+msgid "Save undo history"
+msgstr "Enregistrer l'historique d'annulation"
+
+#: gtk2_ardour/option_editor.cc:83
msgid "SMPTE offset is negative"
msgstr "décalage négatif"
-#: gtk2_ardour/option_editor.cc:131
+#: gtk2_ardour/option_editor.cc:84
+msgid "Timecode source is sample-clock synced"
+msgstr "La source de Timecode est synchronisée au niveau de l'échantillon"
+
+#: gtk2_ardour/option_editor.cc:93
+msgid "Add new MIDI port"
+msgstr "Ajouter un nouveau port MIDI"
+
+#: gtk2_ardour/option_editor.cc:145
msgid "Paths/Files"
msgstr "Chemins/Fichiers"
-#: gtk2_ardour/option_editor.cc:132
+#: gtk2_ardour/option_editor.cc:146
msgid "Kbd/Mouse"
msgstr "Clavier/Souris"
-#: gtk2_ardour/option_editor.cc:135
-msgid "Layers & Fades"
-msgstr "Calques/Fondus"
+#: gtk2_ardour/option_editor.cc:149
+msgid "Misc"
+msgstr "Divers"
-#: gtk2_ardour/option_editor.cc:139
+#: gtk2_ardour/option_editor.cc:152
msgid "MIDI"
-msgstr "périph. MIDI"
+msgstr "ports MIDI"
-#: gtk2_ardour/option_editor.cc:227
+#: gtk2_ardour/option_editor.cc:222
msgid "session RAID path"
msgstr "chemin vers la session (RAID de préférence)"
-#: gtk2_ardour/option_editor.cc:243 gtk2_ardour/option_editor.cc:249
-#: gtk2_ardour/option_editor.cc:671 gtk2_ardour/option_editor.cc:691
+#: gtk2_ardour/option_editor.cc:238 gtk2_ardour/option_editor.cc:244
+#: gtk2_ardour/option_editor.cc:933 gtk2_ardour/option_editor.cc:953
msgid "internal"
msgstr "interne"
-#: gtk2_ardour/option_editor.cc:262
+#: gtk2_ardour/option_editor.cc:257
msgid "Short crossfade length (msecs)"
msgstr "durée du fondu court (ms)"
-#: gtk2_ardour/option_editor.cc:274
+#: gtk2_ardour/option_editor.cc:269
msgid "Destructive crossfade length (msecs)"
msgstr "longueur du fondu destructif (ms)"
-#: gtk2_ardour/option_editor.cc:334
+#: gtk2_ardour/option_editor.cc:288
+msgid "History depth (commands)"
+msgstr "Profondeur d'historique (commandes)"
+
+#: gtk2_ardour/option_editor.cc:309
+msgid "Saved history depth (commands)"
+msgstr "Profondeur enregistrée (commandes)"
+
+#: gtk2_ardour/option_editor.cc:407
msgid "SMPTE Offset"
msgstr "Décalage SMPTE"
-#: gtk2_ardour/option_editor.cc:382
+#: gtk2_ardour/option_editor.cc:480
+msgid "Inbound MMC Device ID"
+msgstr "identifiant de l'appareil MMC en entrée"
+
+#: gtk2_ardour/option_editor.cc:490
+msgid "Outbound MMC Device ID"
+msgstr "identifiant de l'appareil MMC en sortie"
+
+#: gtk2_ardour/option_editor.cc:522
msgid "Port"
msgstr "Port"
-#: gtk2_ardour/option_editor.cc:383
+#: gtk2_ardour/option_editor.cc:526
msgid "Offline"
msgstr "présence"
-#: gtk2_ardour/option_editor.cc:384
+#: gtk2_ardour/option_editor.cc:530
msgid ""
"Trace\n"
"Input"
@@ -5107,7 +5909,7 @@ msgstr ""
"voir entrée\n"
"dans la console"
-#: gtk2_ardour/option_editor.cc:385
+#: gtk2_ardour/option_editor.cc:534
msgid ""
"Trace\n"
"Output"
@@ -5115,51 +5917,53 @@ msgstr ""
"voir sortie\n"
"dans la console"
-#: gtk2_ardour/option_editor.cc:386
+#: gtk2_ardour/option_editor.cc:538
msgid "MTC"
msgstr "MTC"
-#: gtk2_ardour/option_editor.cc:387
+#: gtk2_ardour/option_editor.cc:542
msgid "MMC"
msgstr "MMC"
-#: gtk2_ardour/option_editor.cc:388
+#: gtk2_ardour/option_editor.cc:546
msgid ""
"MIDI Parameter\n"
"Control"
-msgstr "param.\nMIDI"
-
-#: gtk2_ardour/option_editor.cc:394
-msgid "MMC Device ID"
-msgstr "identifiant\nMMC"
+msgstr ""
+"param.\n"
+"MIDI"
-#: gtk2_ardour/option_editor.cc:406 gtk2_ardour/option_editor.cc:413
-#: gtk2_ardour/option_editor.cc:416 gtk2_ardour/option_editor.cc:561
+#: gtk2_ardour/option_editor.cc:585 gtk2_ardour/option_editor.cc:592
+#: gtk2_ardour/option_editor.cc:595 gtk2_ardour/option_editor.cc:808
msgid "online"
msgstr "actif"
-#: gtk2_ardour/option_editor.cc:413 gtk2_ardour/option_editor.cc:414
-#: gtk2_ardour/option_editor.cc:558
+#: gtk2_ardour/option_editor.cc:592 gtk2_ardour/option_editor.cc:593
+#: gtk2_ardour/option_editor.cc:805
msgid "offline"
msgstr "inactif"
-#: gtk2_ardour/option_editor.cc:624
+#: gtk2_ardour/option_editor.cc:709
+msgid "output"
+msgstr "sortie"
+
+#: gtk2_ardour/option_editor.cc:880
msgid "Choose Click"
msgstr "choix du clic"
-#: gtk2_ardour/option_editor.cc:643
+#: gtk2_ardour/option_editor.cc:902
msgid "Choose Click Emphasis"
msgstr "choix du clic accentué"
-#: gtk2_ardour/option_editor.cc:743
+#: gtk2_ardour/option_editor.cc:1005
msgid "Click audio file"
msgstr "son du clic :"
-#: gtk2_ardour/option_editor.cc:749
+#: gtk2_ardour/option_editor.cc:1011
msgid "Click emphasis audiofile"
msgstr "son du clic accentué :"
-#: gtk2_ardour/option_editor.cc:786
+#: gtk2_ardour/option_editor.cc:1048
msgid ""
"The auditioner is a dedicated mixer strip used\n"
"for listening to specific regions outside the context\n"
@@ -5172,36 +5976,36 @@ msgstr ""
"n'importe\n"
"quelle autre tranche de mixage."
-#: gtk2_ardour/option_editor.cc:859
+#: gtk2_ardour/option_editor.cc:1139
msgid "Edit using"
msgstr "Raccourci pour l'édition : utiliser la touche"
-#: gtk2_ardour/option_editor.cc:866 gtk2_ardour/option_editor.cc:893
+#: gtk2_ardour/option_editor.cc:1146 gtk2_ardour/option_editor.cc:1173
msgid "+ button"
msgstr "avec le bouton de la souris n°"
-#: gtk2_ardour/option_editor.cc:886
+#: gtk2_ardour/option_editor.cc:1166
msgid "Delete using"
msgstr "Raccourci pour l'effacement : utiliser la touche"
-#: gtk2_ardour/option_editor.cc:913
+#: gtk2_ardour/option_editor.cc:1193
msgid "Ignore snap using"
msgstr "Ignorer la grille d'alignement avec la touche"
-#: gtk2_ardour/opts.cc:46
+#: gtk2_ardour/opts.cc:50
msgid "Usage: "
msgstr "Utilisation :"
-#: gtk2_ardour/opts.cc:47
+#: gtk2_ardour/opts.cc:51
msgid " -v, --version Show version information\n"
msgstr ""
" -v, --version Affiche les informations de version\n"
-#: gtk2_ardour/opts.cc:48
+#: gtk2_ardour/opts.cc:52
msgid " -h, --help Print this message\n"
msgstr " -h, --help Affiche ce message\n"
-#: gtk2_ardour/opts.cc:49
+#: gtk2_ardour/opts.cc:53
msgid ""
" -b, --bindings Print all possible keyboard binding "
"names\n"
@@ -5209,11 +6013,7 @@ msgstr ""
" -b, --bindings Affiche tous les noms de raccourcis "
"clavier possibles\n"
-#: gtk2_ardour/opts.cc:50
-msgid " -n, --show-splash Show splash screen\n"
-msgstr " -n, --show-splash Afficher l'écran de démarrage\n"
-
-#: gtk2_ardour/opts.cc:51
+#: gtk2_ardour/opts.cc:54
msgid ""
" -c, --name name Use a specific jack client name, default "
"is ardour\n"
@@ -5221,7 +6021,24 @@ msgstr ""
" -c, --name nom Utiliser un nom de client jack différent. "
"La valeur par défaut est « ardour »\n"
-#: gtk2_ardour/opts.cc:52
+#: gtk2_ardour/opts.cc:55
+msgid ""
+" -d, --disable-plugins Disable all plugins in an existing "
+"session\n"
+msgstr ""
+" -d, --disable-plugins Désactive tous les plugins dans une session existante\n"
+
+#: gtk2_ardour/opts.cc:56
+msgid " -n, --show-splash Show splash screen\n"
+msgstr " -n, --show-splash Afficher l'écran de démarrage\n"
+
+#: gtk2_ardour/opts.cc:57
+msgid " -m, --menus file Use \"file\" for Ardour menus\n"
+msgstr ""
+" -m, --menus fichier Utiliser le « fichier » pour les menus "
+"d'Ardour menus\n"
+
+#: gtk2_ardour/opts.cc:58
msgid ""
" -N, --new session-name Create a new session from the command "
"line\n"
@@ -5229,34 +6046,38 @@ msgstr ""
" -N, --new nomsession Créer une nouvelle session depuis la "
"ligne de commande\n"
-#: gtk2_ardour/opts.cc:53
+#: gtk2_ardour/opts.cc:59
msgid " -O, --no-hw-optimizations Disable h/w specific optimizations\n"
-msgstr " -O, --no-hw-optimizations Désactiver les optimisations matérielles spécifiques\n"
+msgstr ""
+" -O, --no-hw-optimizations Désactiver les optimisations matérielles "
+"spécifiques\n"
-#: gtk2_ardour/opts.cc:54
-msgid " -S, --sync\t Draw the gui synchronously \n"
-msgstr " -S, --sync\t Dessiner l'interface graphique en mode synchrone\n"
+#: gtk2_ardour/opts.cc:60
+msgid " -S, --sync\t Draw the gui synchronously \n"
+msgstr ""
+" -S, --sync\t Dessiner l'interface graphique en mode "
+"synchrone\n"
-#: gtk2_ardour/opts.cc:56
+#: gtk2_ardour/opts.cc:62
msgid " -V, --novst Do not use VST support\n"
msgstr ""
"··-V,·--novst Désactiver la prise en charge des VST\n"
-#: gtk2_ardour/opts.cc:58
+#: gtk2_ardour/opts.cc:64
msgid " [session-name] Name of session to load\n"
msgstr " [nomsession] Nom de la session à charger\n"
-#: gtk2_ardour/opts.cc:59
+#: gtk2_ardour/opts.cc:65
msgid " -C, --curvetest filename Curve algorithm debugger\n"
msgstr " -C, --curvetest nomfichier Débogueur d'algorithme de courbe\n"
-#: gtk2_ardour/opts.cc:60
+#: gtk2_ardour/opts.cc:66
msgid ""
" -k, --keybindings filename Name of key bindings to load (default is "
"~/.ardour2/ardour.bindings)\n"
msgstr ""
-" -k, --keybindings nomfichier Nom du fichier des raccourcis claviers à charger (par défaut "
-"~/.ardour2/ardour.bindings)\n"
+" -k, --keybindings nomfichier Nom du fichier des raccourcis claviers "
+"à charger (par défaut ~/.ardour2/ardour.bindings)\n"
#: gtk2_ardour/pan_automation_time_axis.cc:69
msgid "You need to select which line to edit"
@@ -5267,7 +6088,7 @@ msgid "add pan automation event"
msgstr "ajout d'événement de pan."
#: gtk2_ardour/panner2d.cc:588 gtk2_ardour/panner_ui.cc:412
-#: gtk2_ardour/plugin_ui.cc:152
+#: gtk2_ardour/plugin_ui.cc:253 gtk2_ardour/plugin_ui.cc:314
msgid "Bypass"
msgstr "Court-circuiter"
@@ -5324,61 +6145,75 @@ msgstr "Autres pistes"
msgid "unassigned"
msgstr "non assigné"
-#: gtk2_ardour/plugin_selector.cc:43
+#: gtk2_ardour/plugin_selector.cc:50 gtk2_ardour/plugin_selector.cc:190
+msgid "Name contains"
+msgstr "Le nom contient"
+
+#: gtk2_ardour/plugin_selector.cc:51 gtk2_ardour/plugin_selector.cc:192
+msgid "Type contains"
+msgstr "Le type contient"
+
+#: gtk2_ardour/plugin_selector.cc:52 gtk2_ardour/plugin_selector.cc:194
+msgid "Author contains"
+msgstr "Le nom de l'auteur contient"
+
+#: gtk2_ardour/plugin_selector.cc:53 gtk2_ardour/plugin_selector.cc:196
+msgid "Library contains"
+msgstr "La bibliothèque contient"
+
+#: gtk2_ardour/plugin_selector.cc:58
msgid "ardour: plugins"
msgstr "ardour : plugins"
-#: gtk2_ardour/plugin_selector.cc:56
-msgid "Available LADSPA Plugins"
-msgstr "Plugins LADSPA disponibles"
+#: gtk2_ardour/plugin_selector.cc:70
+msgid "Available Plugins"
+msgstr "Plugins disponibles"
-#: gtk2_ardour/plugin_selector.cc:57
+#: gtk2_ardour/plugin_selector.cc:71
msgid "Type"
msgstr "Type"
-#: gtk2_ardour/plugin_selector.cc:58 gtk2_ardour/plugin_selector.cc:81
-#: gtk2_ardour/plugin_selector.cc:99
+#: gtk2_ardour/plugin_selector.cc:72
+msgid "Category"
+msgstr "Catégorie"
+
+#: gtk2_ardour/plugin_selector.cc:73
+msgid "Creator"
+msgstr "Créateur"
+
+#: gtk2_ardour/plugin_selector.cc:74
msgid "# Inputs"
msgstr "nb d'entrées"
-#: gtk2_ardour/plugin_selector.cc:59 gtk2_ardour/plugin_selector.cc:82
-#: gtk2_ardour/plugin_selector.cc:100
+#: gtk2_ardour/plugin_selector.cc:75
msgid "# Outputs"
msgstr "nb de sorties"
-#: gtk2_ardour/plugin_selector.cc:68
-msgid "Plugins to be Connected to Insert"
-msgstr "Plugins à connecter à l'insert"
-
-#: gtk2_ardour/plugin_selector.cc:80 gtk2_ardour/plugin_selector.cc:98
-msgid "Available plugins"
-msgstr "Plugins VST disponibles"
+#: gtk2_ardour/plugin_selector.cc:85
+msgid "Plugins to be connected"
+msgstr "Plugins à connecter"
-#: gtk2_ardour/plugin_selector.cc:117
+#: gtk2_ardour/plugin_selector.cc:98
msgid "Add a plugin to the effect list"
msgstr "Ajouter un plugin à la liste"
-#: gtk2_ardour/plugin_selector.cc:121
+#: gtk2_ardour/plugin_selector.cc:102
msgid "Remove a plugin from the effect list"
msgstr "Retirer un plugin de la liste"
-#: gtk2_ardour/plugin_selector.cc:123
+#: gtk2_ardour/plugin_selector.cc:104
msgid "Update available plugins"
msgstr "Rafraîchir les plugins disponibles"
-#: gtk2_ardour/plugin_selector.cc:146
-msgid "LADSPA"
-msgstr "LADSPA"
+#: gtk2_ardour/plugin_selector.cc:141
+msgid "Insert Plugin(s)"
+msgstr "Insérer des plugins"
-#: gtk2_ardour/plugin_selector.cc:150
-msgid "VST"
-msgstr "VST"
+#: gtk2_ardour/plugin_ui.cc:81
+msgid "Eh? LADSPA plugins don't have editors!"
+msgstr "Hein ? Les plugins LADSPA n'ont pas d'éditeur !"
-#: gtk2_ardour/plugin_selector.cc:155
-msgid "AudioUnit"
-msgstr "Unité audio"
-
-#: gtk2_ardour/plugin_ui.cc:84
+#: gtk2_ardour/plugin_ui.cc:86 gtk2_ardour/plugin_ui.cc:170
msgid ""
"unknown type of editor-supplying plugin (note: no VST support in this "
"version of ardour)"
@@ -5386,11 +6221,15 @@ msgstr ""
"type de plugin à éditeur inconnu (note : VST n'est pas pris en charge dans "
"cette version d'ardour)"
-#: gtk2_ardour/plugin_ui.cc:172
+#: gtk2_ardour/plugin_ui.cc:89
+msgid "unknown type of editor-supplying plugin"
+msgstr "type inconnu pour le plugin fournissant un éditeur"
+
+#: gtk2_ardour/plugin_ui.cc:273
msgid "Plugin preset %1 not found"
msgstr "Réglage de plugin « %1 » non trouvé"
-#: gtk2_ardour/plugin_ui.cc:182
+#: gtk2_ardour/plugin_ui.cc:283
msgid "Name of New Preset:"
msgstr "Nom du nouveau réglage :"
@@ -5410,11 +6249,11 @@ msgstr "Nouveau départ"
msgid "Show send controls"
msgstr "Afficher les contrôles de départ"
-#: gtk2_ardour/redirect_box.cc:412 gtk2_ardour/redirect_box.cc:707
+#: gtk2_ardour/redirect_box.cc:413 gtk2_ardour/redirect_box.cc:708
msgid "ardour: weird plugin dialog"
msgstr "ardour : boite de dialogue pour plugin"
-#: gtk2_ardour/redirect_box.cc:419
+#: gtk2_ardour/redirect_box.cc:420
msgid ""
"You attempted to add a plugin (%1).\n"
"The plugin has %2 inputs\n"
@@ -5431,7 +6270,7 @@ msgstr ""
"\n"
"C'est incohérent car vous allez jeter une partie du signal."
-#: gtk2_ardour/redirect_box.cc:431
+#: gtk2_ardour/redirect_box.cc:432
msgid ""
"You attempted to add a plugin (%1).\n"
"The plugin has %2 inputs\n"
@@ -5451,7 +6290,7 @@ msgstr ""
"C'est incohérent à moins que le plugin supporte les entrées latérales.\n"
"Une version future d'Ardour prendra en charge ce type de configuration."
-#: gtk2_ardour/redirect_box.cc:444
+#: gtk2_ardour/redirect_box.cc:445
msgid ""
"You attempted to add a plugin (%1).\n"
"\n"
@@ -5474,15 +6313,15 @@ msgstr ""
"\n"
"Ardour ne sait pas comment faire dans ce genre de situations.\n"
-#: gtk2_ardour/redirect_box.cc:541
+#: gtk2_ardour/redirect_box.cc:542
msgid "Pre-fader inserts, sends & plugins:"
msgstr "Insertions, départs et plugins pré-atténuation"
-#: gtk2_ardour/redirect_box.cc:544
+#: gtk2_ardour/redirect_box.cc:545
msgid "Post-fader inserts, sends & plugins:"
msgstr "Insertions, départs et plugins post-atténuation"
-#: gtk2_ardour/redirect_box.cc:710
+#: gtk2_ardour/redirect_box.cc:711
msgid ""
"You cannot reorder this set of redirects\n"
"in that way because the inputs and\n"
@@ -5492,11 +6331,11 @@ msgstr ""
"de cette façon car les entrées et les sorties ne fonctionnent\n"
"pas correctement."
-#: gtk2_ardour/redirect_box.cc:823
+#: gtk2_ardour/redirect_box.cc:858
msgid "rename redirect"
msgstr "renommer la redirection"
-#: gtk2_ardour/redirect_box.cc:899 gtk2_ardour/redirect_box.cc:948
+#: gtk2_ardour/redirect_box.cc:934 gtk2_ardour/redirect_box.cc:983
msgid ""
"Copying the set of redirects on the clipboard failed,\n"
"probably because the I/O configuration of the plugins\n"
@@ -5506,97 +6345,117 @@ msgstr ""
"probablement car la configuration d'entrées/sorties des plugins\n"
"ne correspond pas à la configuration de cette piste."
-#: gtk2_ardour/redirect_box.cc:970
+#: gtk2_ardour/redirect_box.cc:1006
+msgid ""
+"Do you really want to remove all pre-fader redirects from this track?\n"
+"(this cannot be undone)"
+msgstr ""
+"Voulez-vous vraiment enlever toutes les pré-redirections de cette piste ?\n"
+"(cela ne pourra pas être annulé)"
+
+#: gtk2_ardour/redirect_box.cc:1009
msgid ""
-"Do you really want to remove all redirects from this track?\n"
+"Do you really want to remove all post-fader redirects from this track?\n"
"(this cannot be undone)"
msgstr ""
-"Voulez-vous vraiment enlever toutes les redirections de cette piste ?\n"
+"Voulez-vous vraiment enlever toutes les post-redirections de cette piste ?\n"
"(cela ne pourra pas être annulé)"
-#: gtk2_ardour/redirect_box.cc:973
+#: gtk2_ardour/redirect_box.cc:1014
msgid ""
-"Do you really want to remove all redirects from this bus?\n"
+"Do you really want to remove all pre-fader redirects from this bus?\n"
"(this cannot be undone)"
msgstr ""
-"Voulez-vous vraiment enlever toutes les redirections de ce bus ?\n"
+"Voulez-vous vraiment enlever toutes les pré-redirections de ce bus ?\n"
"(cela ne pourra pas être annulé)"
-#: gtk2_ardour/redirect_box.cc:978
+#: gtk2_ardour/redirect_box.cc:1017
+msgid ""
+"Do you really want to remove all post-fader redirects from this bus?\n"
+"(this cannot be undone)"
+msgstr ""
+"Voulez-vous vraiment enlever toutes les post-redirections de ce bus ?\n"
+"(cela ne pourra pas être annulé)"
+
+#: gtk2_ardour/redirect_box.cc:1023
msgid "Yes, remove them all"
-msgstr "Oui, les enlever."
+msgstr "Oui, les enlever"
-#: gtk2_ardour/redirect_box.cc:1140
+#: gtk2_ardour/redirect_box.cc:1171
msgid "New Plugin ..."
msgstr "Nouveau plugin..."
-#: gtk2_ardour/redirect_box.cc:1142
+#: gtk2_ardour/redirect_box.cc:1173
msgid "New Insert"
msgstr "Nouvelle insertion"
-#: gtk2_ardour/redirect_box.cc:1144
+#: gtk2_ardour/redirect_box.cc:1175
msgid "New Send ..."
msgstr "Nouveau départ..."
-#: gtk2_ardour/redirect_box.cc:1158
-msgid "Deselect All"
-msgstr "désélectionner tout"
-
-#: gtk2_ardour/redirect_box.cc:1165
+#: gtk2_ardour/redirect_box.cc:1200
msgid "Activate all"
msgstr "activer tout"
-#: gtk2_ardour/redirect_box.cc:1166
+#: gtk2_ardour/redirect_box.cc:1201
msgid "Deactivate all"
msgstr "désactiver tout"
-#: gtk2_ardour/redirect_box.cc:1349
+#: gtk2_ardour/redirect_box.cc:1394
msgid "%1: %2 (by %3)"
msgstr "%1: %2 (par %3)"
-#: gtk2_ardour/audio_region_editor.cc:48
-msgid "NAME:"
-msgstr "NOM :"
+#: gtk2_ardour/rhythm_ferret.cc:30
+msgid "Percussive Onset"
+msgstr "Début de percussion"
-#: gtk2_ardour/audio_region_editor.cc:49
-msgid "play"
-msgstr "lire"
+#: gtk2_ardour/rhythm_ferret.cc:31
+msgid "Note Onset"
+msgstr "Début de note"
-#: gtk2_ardour/audio_region_editor.cc:68
-msgid "audition this region"
-msgstr "écouter cette région"
+#: gtk2_ardour/rhythm_ferret.cc:38
+msgid "Operation"
+msgstr "Opération"
-#: gtk2_ardour/audio_region_editor.cc:83
-msgid "START:"
-msgstr "début :"
+#: gtk2_ardour/rhythm_ferret.cc:39
+msgid "Selection"
+msgstr "Sélection"
-#: gtk2_ardour/audio_region_editor.cc:85
-msgid "END:"
-msgstr "fin :"
+#: gtk2_ardour/rhythm_ferret.cc:40
+msgid "Analysis"
+msgstr "Analyse"
-#: gtk2_ardour/audio_region_editor.cc:87
-msgid "LENGTH:"
-msgstr "longueur :"
+#: gtk2_ardour/rhythm_ferret.cc:43
+msgid "Set Tempo Map"
+msgstr "Définir la carte du tempo"
-#: gtk2_ardour/audio_region_editor.cc:123
-msgid "Region %1"
-msgstr "Région %1"
+#: gtk2_ardour/rhythm_ferret.cc:44
+msgid "Conform Region"
+msgstr "Conformer la région"
-#: gtk2_ardour/audio_region_editor.cc:204
-msgid "change region start position"
-msgstr "changer le début de la région"
+#: gtk2_ardour/rhythm_ferret.cc:45
+msgid "Mode"
+msgstr "Mode"
-#: gtk2_ardour/audio_region_editor.cc:221
-msgid "change region end position"
-msgstr "changer la fin de la région"
+#: gtk2_ardour/rhythm_ferret.cc:48
+msgid "Threshold"
+msgstr "Seuil"
-#: gtk2_ardour/audio_region_editor.cc:242
-msgid "change region length"
-msgstr "changer la longueur de la région"
+#: gtk2_ardour/rhythm_ferret.cc:51
+msgid "Sensitivity"
+msgstr "Sensibilité"
-#: gtk2_ardour/audio_region_view.cc:911
-msgid "add gain control point"
-msgstr "ajout d'un point de contrôle de gain"
+#: gtk2_ardour/rhythm_ferret.cc:52
+msgid "Analyze"
+msgstr "Analyser"
+
+#: gtk2_ardour/rhythm_ferret.cc:55
+msgid "Trigger gap (msecs)"
+msgstr "Écart déclenchant (ms)"
+
+#: gtk2_ardour/rhythm_ferret.cc:263
+msgid "split regions (rhythm ferret)"
+msgstr "Séparer en régions"
#: gtk2_ardour/route_params_ui.cc:85
msgid "Tracks/Buses"
@@ -5623,59 +6482,172 @@ msgstr "PAS DE PISTE"
msgid "No Route Selected"
msgstr "Aucune route sélectionnée"
-#: gtk2_ardour/route_ui.cc:154
+#: gtk2_ardour/route_time_axis.cc:88
+msgid "m"
+msgstr "m"
+
+#: gtk2_ardour/route_time_axis.cc:88
+msgid "s"
+msgstr "s"
+
+#: gtk2_ardour/route_time_axis.cc:88
+msgid "r"
+msgstr "r"
+
+#: gtk2_ardour/route_time_axis.cc:92
+msgid "g"
+msgstr "g"
+
+#: gtk2_ardour/route_time_axis.cc:93
+msgid "p"
+msgstr "p"
+
+#: gtk2_ardour/route_time_axis.cc:95
+msgid "a"
+msgstr "a"
+
+#: gtk2_ardour/route_time_axis.cc:96 gtk2_ardour/visual_time_axis.cc:72
+msgid "v"
+msgstr "v"
+
+#: gtk2_ardour/route_time_axis.cc:170
+msgid "Edit Group"
+msgstr "Groupe"
+
+#: gtk2_ardour/route_time_axis.cc:171 gtk2_ardour/visual_time_axis.cc:91
+msgid "Display Height"
+msgstr "hauteur de piste"
+
+#: gtk2_ardour/route_time_axis.cc:172
+msgid "Playlist"
+msgstr "Liste de lecture"
+
+#: gtk2_ardour/route_time_axis.cc:173 gtk2_ardour/route_time_axis.cc:433
+msgid "Automation"
+msgstr "Automatisation"
+
+#: gtk2_ardour/route_time_axis.cc:174 gtk2_ardour/visual_time_axis.cc:92
+msgid "Visual options"
+msgstr "Options d'affichage"
+
+#: gtk2_ardour/route_time_axis.cc:175 gtk2_ardour/visual_time_axis.cc:93
+msgid "Hide this track"
+msgstr "Cacher la piste"
+
+#: gtk2_ardour/route_time_axis.cc:393
+msgid "Show all automation"
+msgstr "afficher toute l'automatisation"
+
+#: gtk2_ardour/route_time_axis.cc:396
+msgid "Show existing automation"
+msgstr "afficher l'automatisation existante"
+
+#: gtk2_ardour/route_time_axis.cc:399
+msgid "Hide all automation"
+msgstr "cacher toute l'automatisation"
+
+#: gtk2_ardour/route_time_axis.cc:402
+msgid "Plugins"
+msgstr "Plugins"
+
+#: gtk2_ardour/route_time_axis.cc:449
+msgid "Align with existing material"
+msgstr "aligner avec le contenu actuel"
+
+#: gtk2_ardour/route_time_axis.cc:455
+msgid "Align with capture time"
+msgstr "aligner avec l'enregistrement"
+
+#: gtk2_ardour/route_time_axis.cc:462
+msgid "Alignment"
+msgstr "Alignement"
+
+#: gtk2_ardour/route_time_axis.cc:466
+msgid "Normal mode"
+msgstr "Mode normal"
+
+#: gtk2_ardour/route_time_axis.cc:469
+msgid "Tape mode"
+msgstr "Mode bande"
+
+#: gtk2_ardour/route_time_axis.cc:864
+msgid "Name for playlist"
+msgstr "Nom de la liste de lecture"
+
+#: gtk2_ardour/route_time_axis.cc:908 gtk2_ardour/route_time_axis.cc:954
+msgid "Name for Playlist"
+msgstr "Nom de la liste de lecture"
+
+#: gtk2_ardour/route_time_axis.cc:1157 gtk2_ardour/visual_time_axis.cc:340
+#: gtk2_ardour/visual_time_axis.cc:387
+msgid "A track already exists with that name"
+msgstr "Une piste portant le même nom existe déjà"
+
+#: gtk2_ardour/route_time_axis.cc:1346
+msgid "New Copy"
+msgstr "Nouvelle copie"
+
+#: gtk2_ardour/route_time_axis.cc:1348
+msgid "Clear Current"
+msgstr "Effacer actuelle"
+
+#: gtk2_ardour/route_time_axis.cc:1351
+msgid "Select from all ..."
+msgstr "Choisir..."
+
+#: gtk2_ardour/route_ui.cc:156
msgid "mute change"
msgstr "modification de la sourdine"
-#: gtk2_ardour/route_ui.cc:232 gtk2_ardour/route_ui.cc:243
+#: gtk2_ardour/route_ui.cc:234 gtk2_ardour/route_ui.cc:245
msgid "solo change"
msgstr "modification du solo"
-#: gtk2_ardour/route_ui.cc:301
+#: gtk2_ardour/route_ui.cc:303
msgid "Not connected to JACK - cannot engage record"
msgstr "Non connecté à JACK – impossible d'enclencher l'enregistrement"
-#: gtk2_ardour/route_ui.cc:314
+#: gtk2_ardour/route_ui.cc:317
msgid "rec-enable change"
msgstr "(dés)activation d'enregistrement"
-#: gtk2_ardour/route_ui.cc:548
+#: gtk2_ardour/route_ui.cc:555
msgid "Solo-safe"
msgstr "bloquer le solo"
-#: gtk2_ardour/route_ui.cc:570
+#: gtk2_ardour/route_ui.cc:577
msgid "Pre Fader"
msgstr "Pré-atténuation"
-#: gtk2_ardour/route_ui.cc:577
+#: gtk2_ardour/route_ui.cc:584
msgid "Post Fader"
msgstr "Post-atténuation"
-#: gtk2_ardour/route_ui.cc:584
+#: gtk2_ardour/route_ui.cc:591
msgid "Control Outs"
msgstr "Sorties de contrôle"
-#: gtk2_ardour/route_ui.cc:591
+#: gtk2_ardour/route_ui.cc:598
msgid "Main Outs"
msgstr "Sorties principales"
-#: gtk2_ardour/route_ui.cc:628
+#: gtk2_ardour/route_ui.cc:635
msgid "mix group solo change"
msgstr "changt solo de groupe"
-#: gtk2_ardour/route_ui.cc:667
+#: gtk2_ardour/route_ui.cc:674
msgid "mix group mute change"
msgstr "changt sourdine de groupe"
-#: gtk2_ardour/route_ui.cc:684
+#: gtk2_ardour/route_ui.cc:691
msgid "mix group rec-enable change"
msgstr "changt d'activation d'enreg de groupe"
-#: gtk2_ardour/route_ui.cc:702 gtk2_ardour/visual_time_axis.cc:241
+#: gtk2_ardour/route_ui.cc:709 gtk2_ardour/visual_time_axis.cc:241
msgid "ardour: color selection"
msgstr "ardour : sélection de couleur"
-#: gtk2_ardour/route_ui.cc:778
+#: gtk2_ardour/route_ui.cc:785
msgid ""
"Do you really want to remove track \"%1\" ?\n"
"\n"
@@ -5686,7 +6658,7 @@ msgstr ""
"Vous pourrez aussi perdre la liste de lecture utilisée par cette piste.\n"
"(cela ne pourra pas être annulé)"
-#: gtk2_ardour/route_ui.cc:780
+#: gtk2_ardour/route_ui.cc:787
msgid ""
"Do you really want to remove bus \"%1\" ?\n"
"(cannot be undone)"
@@ -5694,231 +6666,336 @@ msgstr ""
"Voulez-vous vraiment supprimer le bus « %1 » ?\n"
"(cela ne pourra pas être annulé)"
-#: gtk2_ardour/route_ui.cc:805
+#: gtk2_ardour/route_ui.cc:812
msgid "New Name: "
msgstr "nouveau nom :"
-#: gtk2_ardour/sfdb_ui.cc:63
-msgid "Apply"
-msgstr "Appliquer"
+#: gtk2_ardour/sfdb_ui.cc:81
+msgid "programming error: unknown import mode string %1"
+msgstr "programming error: unknown import mode string %1"
-#: gtk2_ardour/sfdb_ui.cc:69
-msgid "Soundfile Info"
-msgstr "Informations sur le fichier audio"
+#: gtk2_ardour/sfdb_ui.cc:91 gtk2_ardour/sfdb_ui.cc:100
+msgid "as new tracks"
+msgstr "comme nouvelles pistes"
-#: gtk2_ardour/sfdb_ui.cc:72
-msgid "comma seperated tags"
-msgstr "tags séparées par des virgules"
+#: gtk2_ardour/sfdb_ui.cc:93
+msgid "to selected tracks"
+msgstr "ajouter aux pistes sélectionnées"
+
+#: gtk2_ardour/sfdb_ui.cc:95
+msgid "to region list"
+msgstr "ajouter à la liste des régions"
+
+#: gtk2_ardour/sfdb_ui.cc:97
+msgid "as new tape tracks"
+msgstr "ajouter comme nouvelles pistes bandes"
+
+#: gtk2_ardour/sfdb_ui.cc:109
+msgid "Auto-play"
+msgstr "Lecture auto"
+
+#: gtk2_ardour/sfdb_ui.cc:118 gtk2_ardour/sfdb_ui.cc:228
+msgid "<b>Soundfile Info</b>"
+msgstr "<b>Informations sur le fichier audio</b>"
+
+#: gtk2_ardour/sfdb_ui.cc:129
+msgid "Length:"
+msgstr "Longueur :"
#: gtk2_ardour/sfdb_ui.cc:130
-msgid "Length: n/a"
-msgstr "Longueur : n/a"
+msgid "Timestamp:"
+msgstr "Horodatage :"
#: gtk2_ardour/sfdb_ui.cc:131
-msgid "Format: n/a"
-msgstr "Format : n/a"
+msgid "Format:"
+msgstr "Format :"
#: gtk2_ardour/sfdb_ui.cc:132
-msgid "Channels: n/a"
-msgstr "Voies : n/a"
+msgid "Channels:"
+msgstr "Nb de voies :"
-#: gtk2_ardour/sfdb_ui.cc:133
-msgid "Samplerate: n/a"
-msgstr "Taux d'échantillonnage : n/a"
+#: gtk2_ardour/sfdb_ui.cc:133 gtk2_ardour/sfdb_ui.cc:248
+#: gtk2_ardour/sfdb_ui.cc:253
+msgid "Sample rate:"
+msgstr "Échantillonnage"
-#: gtk2_ardour/sfdb_ui.cc:134
-msgid "Timecode: n/a"
-msgstr "Timecode : n/a"
+#: gtk2_ardour/sfdb_ui.cc:165
+msgid "Tags:"
+msgstr "Tags :"
-#: gtk2_ardour/sfdb_ui.cc:144
-msgid "Length: %1"
-msgstr "Longueur : %1"
-
-#: gtk2_ardour/sfdb_ui.cc:146
-msgid "Channels: %1"
-msgstr "Voies : %1"
-
-#: gtk2_ardour/sfdb_ui.cc:147
-msgid "Samplerate: %1"
-msgstr "Taux d'échantillonnage : %1"
+#: gtk2_ardour/sfdb_ui.cc:175
+msgid "Play (double click)"
+msgstr "Lire"
-#: gtk2_ardour/sfdb_ui.cc:148
-msgid "Timecode: %1"
-msgstr "Timecode : %1"
+#: gtk2_ardour/sfdb_ui.cc:229 gtk2_ardour/sfdb_ui.cc:230
+#: gtk2_ardour/sfdb_ui.cc:231
+msgid "n/a"
+msgstr "n/a"
-#: gtk2_ardour/sfdb_ui.cc:188
+#: gtk2_ardour/sfdb_ui.cc:306
msgid "Could not read file: %1 (%2)."
msgstr "Impossible de lire le fichier « %1 » (%2)."
-#: gtk2_ardour/sfdb_ui.cc:206
+#: gtk2_ardour/sfdb_ui.cc:326
msgid "Could not access soundfile: "
msgstr "Impossible d'accéder au fichier audio : "
-#: gtk2_ardour/sfdb_ui.cc:255
+#: gtk2_ardour/sfdb_ui.cc:372
msgid "SoundFileBox: Could not tokenize string: "
msgstr "SoundFileBox : Could not tokenize string: "
-#: gtk2_ardour/sfdb_ui.cc:275
-msgid "Add to Region list"
-msgstr "ajouter à la liste des régions"
-
-#: gtk2_ardour/sfdb_ui.cc:276
-msgid "Add to selected Track(s)"
-msgstr "ajouter aux pistes sélectionnées"
-
-#: gtk2_ardour/sfdb_ui.cc:277
-msgid "Add as new Track(s)"
-msgstr "ajouter comme nouvelles pistes"
-
-#: gtk2_ardour/sfdb_ui.cc:278
-msgid "Add as new Tape Track(s)"
-msgstr "ajouter comme nouvelles pistes bandes"
-
-#: gtk2_ardour/sfdb_ui.cc:287
+#: gtk2_ardour/sfdb_ui.cc:392
msgid "Search"
msgstr "Recherche"
-#: gtk2_ardour/sfdb_ui.cc:302
+#: gtk2_ardour/sfdb_ui.cc:421
msgid "Paths"
msgstr "Chemins"
-#: gtk2_ardour/sfdb_ui.cc:304
-msgid "Files"
-msgstr "Fichiers"
+#: gtk2_ardour/sfdb_ui.cc:425
+msgid "Browse Files"
+msgstr "Parcours des fichiers"
+
+#: gtk2_ardour/sfdb_ui.cc:426
+msgid "Search Tags"
+msgstr "Recherche de tags"
-#: gtk2_ardour/sfdb_ui.cc:305
-msgid "Tags"
-msgstr "Tags"
+#: gtk2_ardour/sfdb_ui.cc:434
+msgid "Audio files"
+msgstr "Audio"
+
+#: gtk2_ardour/sfdb_ui.cc:437
+msgid "All files"
+msgstr "Tout"
-#: gtk2_ardour/sfdb_ui.cc:374
+#: gtk2_ardour/sfdb_ui.cc:598
msgid "SoundFileBrowser: Could not tokenize string: "
msgstr "SoundFileBrowser: Could not tokenize string: "
-#: gtk2_ardour/sfdb_ui.cc:432
-msgid "Split Channels"
-msgstr "Séparer les voies"
+#: gtk2_ardour/sfdb_ui.cc:766 gtk2_ardour/sfdb_ui.cc:1049
+#: gtk2_ardour/sfdb_ui.cc:1091
+msgid "one track per file"
+msgstr "une piste par fichier"
-#: gtk2_ardour/sfdb_ui.cc:435
-msgid "Create a region for each channel"
-msgstr "créer une région pour chaque voie"
+#: gtk2_ardour/sfdb_ui.cc:769 gtk2_ardour/sfdb_ui.cc:1092
+msgid "one track per channel"
+msgstr "une piste par canal"
-#: gtk2_ardour/sfdb_ui.cc:437
-msgid "Embed"
-msgstr "Lier"
+#: gtk2_ardour/sfdb_ui.cc:777 gtk2_ardour/sfdb_ui.cc:1094
+msgid "sequence files"
+msgstr "régions alignées"
-#: gtk2_ardour/sfdb_ui.cc:439
-msgid "Link to an external file"
-msgstr "Lier à un fichier audio externe"
+#: gtk2_ardour/sfdb_ui.cc:780 gtk2_ardour/sfdb_ui.cc:794
+#: gtk2_ardour/sfdb_ui.cc:1098
+msgid "all files in one region"
+msgstr "tout dans une région"
-#: gtk2_ardour/sfdb_ui.cc:441
-msgid "Import"
-msgstr "Importer"
+#: gtk2_ardour/sfdb_ui.cc:786 gtk2_ardour/sfdb_ui.cc:1096
+msgid "one region per file"
+msgstr "une région par fichier"
+
+#: gtk2_ardour/sfdb_ui.cc:789 gtk2_ardour/sfdb_ui.cc:1097
+msgid "one region per channel"
+msgstr "une région par voie"
+
+#: gtk2_ardour/sfdb_ui.cc:847
+msgid ""
+"One or more of the selected files\n"
+"cannot be used by Ardour"
+msgstr ""
+"un des fichiers sélectionnés\n"
+"ne peut pas être utilisé par Ardour"
+
+#: gtk2_ardour/sfdb_ui.cc:978
+msgid "Copy files to session"
+msgstr "Copier les fichiers vers le dossier de session"
+
+#: gtk2_ardour/sfdb_ui.cc:994 gtk2_ardour/sfdb_ui.cc:1129
+msgid "use file timestamp"
+msgstr "utiliser l'horodatage du fichier"
-#: gtk2_ardour/sfdb_ui.cc:443
-msgid "Copy a file to the session folder"
-msgstr "Copier un fichier vers le dossier de session"
+#: gtk2_ardour/sfdb_ui.cc:995 gtk2_ardour/sfdb_ui.cc:1131
+msgid "at edit point"
+msgstr "au point d'édition"
+
+#: gtk2_ardour/sfdb_ui.cc:996 gtk2_ardour/sfdb_ui.cc:1133
+msgid "at playhead"
+msgstr "sur la tête de lecture"
+
+#: gtk2_ardour/sfdb_ui.cc:997
+msgid "at session start"
+msgstr "sur le début de la session"
+
+#: gtk2_ardour/sfdb_ui.cc:1002
+msgid "Add files:"
+msgstr "Ajouter des fichiers :"
+
+#: gtk2_ardour/sfdb_ui.cc:1024
+msgid "Insert:"
+msgstr "Insérer :"
+
+#: gtk2_ardour/sfdb_ui.cc:1037
+msgid "Mapping:"
+msgstr "Placement :"
+
+#: gtk2_ardour/sfdb_ui.cc:1055
+msgid "Conversion Quality:"
+msgstr "Conversion :"
+
+#: gtk2_ardour/sfdb_ui.cc:1067 gtk2_ardour/sfdb_ui.cc:1145
+msgid "Best"
+msgstr "la meilleure"
+
+#: gtk2_ardour/sfdb_ui.cc:1068 gtk2_ardour/sfdb_ui.cc:1147
+msgid "Good"
+msgstr "bonne"
-#: gtk2_ardour/tempo_dialog.cc:17
+#: gtk2_ardour/sfdb_ui.cc:1069 gtk2_ardour/sfdb_ui.cc:1149
+msgid "Quick"
+msgstr "rapide"
+
+#: gtk2_ardour/sfdb_ui.cc:1093
+msgid "merge files"
+msgstr "fusionner les fichiers"
+
+#: gtk2_ardour/sfdb_ui.cc:1170
+msgid "programming error: %1 (%2)"
+msgstr "programming error: %1 (%2)"
+
+#: gtk2_ardour/splash.cc:40
+msgid "Ardour loading ..."
+msgstr "Chargement d'Ardour..."
+
+#: gtk2_ardour/tempo_dialog.cc:36
msgid "edit tempo"
msgstr "modifier le tempo"
-#: gtk2_ardour/tempo_dialog.cc:20 gtk2_ardour/tempo_dialog.cc:39
-msgid "Beats per minute"
-msgstr "battements par minute"
-
-#: gtk2_ardour/tempo_dialog.cc:23 gtk2_ardour/tempo_dialog.cc:42
-#: gtk2_ardour/tempo_dialog.cc:159 gtk2_ardour/tempo_dialog.cc:177
+#: gtk2_ardour/tempo_dialog.cc:42 gtk2_ardour/tempo_dialog.cc:61
+#: gtk2_ardour/tempo_dialog.cc:261 gtk2_ardour/tempo_dialog.cc:278
msgid "Bar"
msgstr "Mesure"
-#: gtk2_ardour/tempo_dialog.cc:24 gtk2_ardour/tempo_dialog.cc:43
-#: gtk2_ardour/tempo_dialog.cc:160 gtk2_ardour/tempo_dialog.cc:178
+#: gtk2_ardour/tempo_dialog.cc:43 gtk2_ardour/tempo_dialog.cc:62
+#: gtk2_ardour/tempo_dialog.cc:262 gtk2_ardour/tempo_dialog.cc:279
msgid "Beat"
msgstr "Temps"
-#: gtk2_ardour/tempo_dialog.cc:26 gtk2_ardour/tempo_dialog.cc:45
-#: gtk2_ardour/tempo_dialog.cc:161 gtk2_ardour/tempo_dialog.cc:179
+#: gtk2_ardour/tempo_dialog.cc:45 gtk2_ardour/tempo_dialog.cc:64
+#: gtk2_ardour/tempo_dialog.cc:263 gtk2_ardour/tempo_dialog.cc:280
msgid "Location"
msgstr "Emplacement"
-#: gtk2_ardour/tempo_dialog.cc:155 gtk2_ardour/tempo_dialog.cc:173
-msgid "Meter denominator"
-msgstr "Dénominateur de l'indicateur de mesure"
-
-#: gtk2_ardour/tempo_dialog.cc:156 gtk2_ardour/tempo_dialog.cc:174
-msgid "Beats per bar"
-msgstr "Temps par mesure"
-
-#: gtk2_ardour/tempo_dialog.cc:192 gtk2_ardour/tempo_dialog.cc:203
+#: gtk2_ardour/tempo_dialog.cc:77 gtk2_ardour/tempo_dialog.cc:94
+#: gtk2_ardour/tempo_dialog.cc:293 gtk2_ardour/tempo_dialog.cc:311
msgid "whole (1)"
msgstr "noire (1)"
-#: gtk2_ardour/tempo_dialog.cc:193 gtk2_ardour/tempo_dialog.cc:205
+#: gtk2_ardour/tempo_dialog.cc:78 gtk2_ardour/tempo_dialog.cc:96
+#: gtk2_ardour/tempo_dialog.cc:294 gtk2_ardour/tempo_dialog.cc:313
msgid "second (2)"
msgstr "croche (2)"
-#: gtk2_ardour/tempo_dialog.cc:194 gtk2_ardour/tempo_dialog.cc:207
+#: gtk2_ardour/tempo_dialog.cc:79 gtk2_ardour/tempo_dialog.cc:98
+#: gtk2_ardour/tempo_dialog.cc:295 gtk2_ardour/tempo_dialog.cc:315
msgid "third (3)"
msgstr "triolet (3)"
-#: gtk2_ardour/tempo_dialog.cc:195 gtk2_ardour/tempo_dialog.cc:209
-#: gtk2_ardour/tempo_dialog.cc:217
+#: gtk2_ardour/tempo_dialog.cc:80 gtk2_ardour/tempo_dialog.cc:100
+#: gtk2_ardour/tempo_dialog.cc:108 gtk2_ardour/tempo_dialog.cc:296
+#: gtk2_ardour/tempo_dialog.cc:317 gtk2_ardour/tempo_dialog.cc:325
msgid "quarter (4)"
msgstr "double croche (4)"
-#: gtk2_ardour/tempo_dialog.cc:196 gtk2_ardour/tempo_dialog.cc:211
+#: gtk2_ardour/tempo_dialog.cc:81 gtk2_ardour/tempo_dialog.cc:102
+#: gtk2_ardour/tempo_dialog.cc:297 gtk2_ardour/tempo_dialog.cc:319
msgid "eighth (8)"
msgstr "huitième (8)"
-#: gtk2_ardour/tempo_dialog.cc:197 gtk2_ardour/tempo_dialog.cc:213
+#: gtk2_ardour/tempo_dialog.cc:82 gtk2_ardour/tempo_dialog.cc:104
+#: gtk2_ardour/tempo_dialog.cc:298 gtk2_ardour/tempo_dialog.cc:321
msgid "sixteenth (16)"
msgstr "seizième (16)"
-#: gtk2_ardour/tempo_dialog.cc:198 gtk2_ardour/tempo_dialog.cc:215
+#: gtk2_ardour/tempo_dialog.cc:83 gtk2_ardour/tempo_dialog.cc:106
+#: gtk2_ardour/tempo_dialog.cc:299 gtk2_ardour/tempo_dialog.cc:323
msgid "thirty-second (32)"
msgstr "trente-deuxième (32)"
-#: gtk2_ardour/tempo_dialog.cc:376
+#: gtk2_ardour/tempo_dialog.cc:110
+msgid "Beats Per Minute:"
+msgstr "Battements par minute :"
+
+#: gtk2_ardour/tempo_dialog.cc:150
+msgid "Tempo Begins at:"
+msgstr "Le tempo démarre à :"
+
+#: gtk2_ardour/tempo_dialog.cc:231 gtk2_ardour/tempo_dialog.cc:481
msgid "garbaged note type entry (%1)"
msgstr "entrée type de note endommagée (%1)"
-#: gtk2_ardour/tempo_dialog.cc:386
+#: gtk2_ardour/tempo_dialog.cc:241 gtk2_ardour/tempo_dialog.cc:491
msgid "incomprehensible note type entry (%1)"
msgstr "entrée type de note incompréhensible (%1)"
-#: gtk2_ardour/time_axis_view.cc:111
+#: gtk2_ardour/tempo_dialog.cc:306
+msgid "thirtq-second (32)"
+msgstr "trente-deuxième (32)"
+
+#: gtk2_ardour/tempo_dialog.cc:327
+msgid "Note Value:"
+msgstr "Valeur de note :"
+
+#: gtk2_ardour/tempo_dialog.cc:328
+msgid "Beats Per Bar:"
+msgstr "Battements par mesure :"
+
+#: gtk2_ardour/tempo_dialog.cc:364
+msgid "Meter Begins at:"
+msgstr "Le repère de mesure démarre à :"
+
+#: gtk2_ardour/theme_manager.cc:52
+msgid "Object"
+msgstr "Objet"
+
+#: gtk2_ardour/theme_manager.cc:185
+msgid "Unable to find UI style file %1. Ardour will look strange"
+msgstr ""
+"Impossible de trouver le fichier de style de l'interface graphique « %1 ». "
+"Ardour va avoir l'air bizzare"
+
+#: gtk2_ardour/time_axis_view.cc:112
msgid "gTortnam"
msgstr "gTortnam"
-#: gtk2_ardour/time_axis_view.cc:586
+#: gtk2_ardour/time_axis_view.cc:598
msgid "Largest"
msgstr "Énorme"
-#: gtk2_ardour/time_axis_view.cc:587
+#: gtk2_ardour/time_axis_view.cc:599
msgid "Large"
msgstr "Très grand"
-#: gtk2_ardour/time_axis_view.cc:588
+#: gtk2_ardour/time_axis_view.cc:600
msgid "Larger"
msgstr "Grand"
-#: gtk2_ardour/time_axis_view.cc:590
+#: gtk2_ardour/time_axis_view.cc:602
msgid "Smaller"
msgstr "Petit"
-#: gtk2_ardour/time_axis_view.cc:591
+#: gtk2_ardour/time_axis_view.cc:603
msgid "Small"
msgstr "Très petit"
-#: gtk2_ardour/time_axis_view.cc:906
+#: gtk2_ardour/time_axis_view.cc:918
msgid "unknown track height name \"%1\" in XML GUI information"
msgstr "nom de hauteur de piste inconnu \"%1\" dans les données XML de l'IHM"
-#: gtk2_ardour/time_axis_view_item.cc:78
+#: gtk2_ardour/time_axis_view_item.cc:80
msgid "TimeAxisViewItemName"
msgstr "TimeAxisViewItemName"
-#: gtk2_ardour/time_axis_view_item.cc:330
+#: gtk2_ardour/time_axis_view_item.cc:332
msgid "new duration %1 frames is out of bounds for %2"
msgstr "la nouvelle durée %1 trames est hors limites pour %2"
@@ -5926,15 +7003,62 @@ msgstr "la nouvelle durée %1 trames est hors limites pour %2"
msgid "programming error: request for non-existent audio range (%1)!"
msgstr "programming error: request for non-existent audio range (%1)!"
-#: gtk2_ardour/utils.cc:131 gtk2_ardour/utils.cc:174
+#: gtk2_ardour/ui_config.cc:67
+msgid "loading default ui configuration file %1"
+msgstr ""
+"Chargement du fichier de style par défaut (%1) pour l'interface graphique"
+
+#: gtk2_ardour/ui_config.cc:70
+msgid "Ardour: cannot read default ui configuration file \"%1\""
+msgstr ""
+"Ardour : impossible de lire le fichier de configuration d'interface "
+"graphique « %1 »"
+
+#: gtk2_ardour/ui_config.cc:75
+msgid "Ardour: default ui configuration file \"%1\" not loaded successfully."
+msgstr ""
+"Ardour : le fichier par défaut (%1) pour la configuration de l'interface "
+"graphique n'a pas pu être chargé correctement."
+
+#: gtk2_ardour/ui_config.cc:93
+msgid "loading user ui configuration file %1"
+msgstr ""
+"chargement du fichier utilisateur (%1) pour la configuration de l'interface "
+"graphique"
+
+#: gtk2_ardour/ui_config.cc:96
+msgid "Ardour: cannot read ui configuration file \"%1\""
+msgstr ""
+"Ardour : impossible de lire le fichier (%1) pour la configuration de "
+"l'interface graphique"
+
+#: gtk2_ardour/ui_config.cc:101
+msgid "Ardour: user ui configuration file \"%1\" not loaded successfully."
+msgstr ""
+"Ardour : le fichier de l'utilisateur (%1) pour la configuration de "
+"l'interface graphique n'a pas pu être chargé correctement."
+
+#: gtk2_ardour/ui_config.cc:125
+msgid "UI config file %1 not saved"
+msgstr "Fichier « %1 » non enregistré (config interface)"
+
+#: gtk2_ardour/utils.cc:132 gtk2_ardour/utils.cc:175
msgid "bad XPM header %1"
msgstr "mauvais entête XPM %1"
-#: gtk2_ardour/utils.cc:313
+#: gtk2_ardour/utils.cc:314
msgid "missing RGBA style for \"%1\""
msgstr "style RGBA manquant pour « %1 »"
-#: gtk2_ardour/utils.cc:495
+#: gtk2_ardour/utils.cc:337
+msgid "no style found for %1, using red"
+msgstr "Aucun style trouvé pour %1 ; utilisation du rouge"
+
+#: gtk2_ardour/utils.cc:376
+msgid "unknown style attribute %1 requested for color; using \"red\""
+msgstr "Attribut de style inconnu « %1 » demandé pour la couleur ; Utilisation du rouge"
+
+#: gtk2_ardour/utils.cc:600
msgid "cannot find icon image for %1"
msgstr "Impossible de trouver les icônes pour %1"
@@ -6036,6 +7160,271 @@ msgstr "Piste"
msgid "Analyze data"
msgstr "analyser les données"
+#~ msgid "Could not connect to JACK server as \"%1\""
+#~ msgstr "Impossible de se connecter au serveur JACK en tant que « %1 »"
+
+#~ msgid "could not load command line session \"%1\""
+#~ msgstr ""
+#~ "impossible de charger la session indiquée en ligne de commande « %1 »"
+
+#~ msgid ""
+#~ "\n"
+#~ "\n"
+#~ "No session named \"%1\" exists.\n"
+#~ "To create it from the command line, start ardour as \"ardour --new %1"
+#~ msgstr ""
+#~ "\n"
+#~ "\n"
+#~ "Il n'existe pas de session nommée « %1 ».\n"
+#~ "Pour la créer depuis la ligne de commande, lancez ardour en tapant ceci : "
+#~ "\"ardour --new %1"
+
+#~ msgid "Files"
+#~ msgstr "Fichiers"
+
+#~ msgid "Setup"
+#~ msgstr "Paramètres"
+
+#~ msgid "Audio Frames"
+#~ msgstr "trames audio"
+
+#~ msgid "Edit Cursor"
+#~ msgstr "curseur d'édition"
+
+#~ msgid "Frames"
+#~ msgstr "trames"
+
+#~ msgid "Select all between cursors"
+#~ msgstr "Sélectionner tout entre les 2 curseurs"
+
+#~ msgid "Paste at edit cursor"
+#~ msgstr "Coller au curseur d'édition"
+
+#~ msgid "Paste at mouse"
+#~ msgstr "Coller au pointeur de la souris"
+
+#~ msgid "Unit to snap cursors and ranges to"
+#~ msgstr "Unité d'alignement des curseurs et zones"
+
+#~ msgid "Duplicate how many times?"
+#~ msgstr "Dupliquer combien de fois ?"
+
+#~ msgid "Move edit cursor"
+#~ msgstr "curseur d'édition"
+
+#~ msgid "Edit Cursor to Next Region Start"
+#~ msgstr "début de la région suivante"
+
+#~ msgid "Edit Cursor to Next Region End"
+#~ msgstr "fin de la région suivante"
+
+#~ msgid "Edit Cursor to Next Region Sync"
+#~ msgstr "synchro de la région suivante"
+
+#~ msgid "Edit Cursor to Previous Region Start"
+#~ msgstr "début de la région précédente"
+
+#~ msgid "Edit Cursor to Previous Region End"
+#~ msgstr "fin de la région précédente"
+
+#~ msgid "Edit Cursor to Previous Region Sync"
+#~ msgstr "synchro de la région précédente"
+
+#~ msgid "Edit Cursor to Range Start"
+#~ msgstr "début de la région"
+
+#~ msgid "Edit Cursor to Range End"
+#~ msgstr "fin de la région"
+
+#~ msgid "Select All Between Cursors"
+#~ msgstr "tout entre les 2 curseurs"
+
+#~ msgid "Center Playhead"
+#~ msgstr "centrer sur la tête de lecture"
+
+#~ msgid "Center Edit Cursor"
+#~ msgstr "centrer sur le curseur d'édition"
+
+#~ msgid "Playhead to Edit"
+#~ msgstr "sur le curseur d'édition"
+
+#~ msgid "Edit to Playhead"
+#~ msgstr "sur la tête de lecture"
+
+#~ msgid "Audition at Mouse"
+#~ msgstr "écoute à la souris"
+
+#~ msgid "crop"
+#~ msgstr "recadrer"
+
+#~ msgid "Snap to frame"
+#~ msgstr "aligner sur la trame"
+
+#~ msgid "Snap to edit cursor"
+#~ msgstr "aligner sur le curseur d'édition"
+
+#~ msgid "keyboard selection"
+#~ msgstr "sélection au clavier"
+
+#~ msgid "Hide Mark"
+#~ msgstr "cacher le repère"
+
+#~ msgid "Remove Mark"
+#~ msgstr "enlever le repère"
+
+#~ msgid "cancel selection"
+#~ msgstr "annuler la sélection"
+
+#~ msgid "Programming error. that region doesn't cover that position"
+#~ msgstr "Programming error. that region doesn't cover that position"
+
+#~ msgid "set region sync position"
+#~ msgstr "placer la synchro de région"
+
+#~ msgid "Place the edit cursor at the desired sync point"
+#~ msgstr "Placer le curseur d'édition au point de synchronisation voulu"
+
+#~ msgid "set sync from edit cursor"
+#~ msgstr "point de synchro au curseur d'édition"
+
+#~ msgid "select all between cursors"
+#~ msgstr "sélectionner tout entre les curseurs"
+
+#~ msgid "could not start JACK server: "
+#~ msgstr "Impossible de se démarrer le serveur JACK"
+
+#~ msgid "Available LADSPA Plugins"
+#~ msgstr "Plugins LADSPA disponibles"
+
+#~ msgid "LADSPA"
+#~ msgstr "LADSPA"
+
+#~ msgid "VST"
+#~ msgstr "VST"
+
+#~ msgid "AudioUnit"
+#~ msgstr "Unité audio"
+
+#~ msgid "Options Editor"
+#~ msgstr "Options..."
+
+#~ msgid "Colors"
+#~ msgstr "Couleurs..."
+
+#~ msgid "Use MIDI control"
+#~ msgstr "Réception des contrôles MIDI"
+
+#~ msgid "Separate range to track"
+#~ msgstr "Découper la région"
+
+#~ msgid "Range"
+#~ msgstr "Zone de sélection"
+
+#~ msgid "as Region(s)"
+#~ msgstr "vers la liste des régions..."
+
+#~ msgid "as Tracks"
+#~ msgstr "vers nouvelles pistes..."
+
+#~ msgid "as Tape Tracks"
+#~ msgstr "vers nouvelles pistes (mode cassette)..."
+
+#~ msgid "to Tracks"
+#~ msgstr "vers les pistes sélectionnées..."
+
+#~ msgid "Add existing audio to session"
+#~ msgstr "Import de fichiers audio dans la session"
+
+#~ msgid "Import as a %1 region"
+#~ msgstr "Importer comme région %1"
+
+#~ msgid "multichannel"
+#~ msgstr "multivoies"
+
+#~ msgid "Import as multiple regions"
+#~ msgstr "importer vers des régions multiples"
+
+#~ msgid ""
+#~ "Paired files detected (%1, %2 ...).\n"
+#~ "Do you want to:"
+#~ msgstr ""
+#~ "Paire de fichiers détectée (%1, %2 ...).\n"
+#~ "Voulez-vous :"
+
+#~ msgid "edit cursor color not defined, check your ardour.colors file!"
+#~ msgstr ""
+#~ "Pas de couleur définie pour le curseur d'édition. Vérifiez votre fichier "
+#~ "ardour.colors !"
+
+#~ msgid "playhead color not defined, check your ardour.colors file!"
+#~ msgstr ""
+#~ "Pas de couleur définie pour la tête de lecture. Vérifiez votre fichier "
+#~ "ardour.colors !"
+
+#~ msgid ""
+#~ "Without a UI style file, ardour will look strange.\n"
+#~ " Please set ARDOUR2_UI_RC to point to a valid UI style file"
+#~ msgstr ""
+#~ "Sans fichier de style pour son interface, Ardour aura une apparence "
+#~ "bizarre.\n"
+#~ "Veuillez faire pointer ARDOUR2_UI_RC vers un fichier de style valide"
+
+#~ msgid "unknown strip width \"%1\" in XML GUI information"
+#~ msgstr ""
+#~ "largeur de tranche inconnue « %1 » dans les données XML de l'interface "
+#~ "utilisateur"
+
+#~ msgid "signal"
+#~ msgstr "signal"
+
+#~ msgid "Layers & Fades"
+#~ msgstr "Calques/Fondus"
+
+#~ msgid "Apply"
+#~ msgstr "Appliquer"
+
+#~ msgid "comma seperated tags"
+#~ msgstr "tags séparées par des virgules"
+
+#~ msgid "Length: n/a"
+#~ msgstr "Longueur : n/a"
+
+#~ msgid "Format: n/a"
+#~ msgstr "Format : n/a"
+
+#~ msgid "Channels: n/a"
+#~ msgstr "Voies : n/a"
+
+#~ msgid "Samplerate: n/a"
+#~ msgstr "Taux d'échantillonnage : n/a"
+
+#~ msgid "Timecode: n/a"
+#~ msgstr "Timecode : n/a"
+
+#~ msgid "Channels: %1"
+#~ msgstr "Voies : %1"
+
+#~ msgid "Samplerate: %1"
+#~ msgstr "Taux d'échantillonnage : %1"
+
+#~ msgid "Timecode: %1"
+#~ msgstr "Timecode : %1"
+
+#~ msgid "Add as new Track(s)"
+#~ msgstr "ajouter comme nouvelles pistes"
+
+#~ msgid "Split Channels"
+#~ msgstr "Séparer les voies"
+
+#~ msgid "Embed"
+#~ msgstr "Lier"
+
+#~ msgid "Link to an external file"
+#~ msgstr "Lier à un fichier audio externe"
+
+#~ msgid "Import"
+#~ msgstr "Importer"
+
#~ msgid ""
#~ "%1\n"
#~ "(built with ardour/gtk %2.%3.%4 libardour: %5.%6.%7)"
@@ -6091,9 +7480,6 @@ msgstr "analyser les données"
#~ msgid "ardour: editor: "
#~ msgstr "Ardour : éditeur : "
-#~ msgid "Unlock"
-#~ msgstr "Déverrouiller"
-
#~ msgid "Destroy"
#~ msgstr "Détruire"
@@ -6102,9 +7488,6 @@ msgstr "analyser les données"
#~ "(Width of visible area)"
#~ msgstr "durée de la zone visible"
-#~ msgid "... as new track"
-#~ msgstr "...comme nouvelle piste"
-
#~ msgid "... as new region"
#~ msgstr "...comme nouvelle région"
@@ -6151,9 +7534,6 @@ msgstr "analyser les données"
#~ msgid "select on click"
#~ msgstr "sélectionner au clic"
-#~ msgid "select regions"
-#~ msgstr "sélectionner les régions"
-
#~ msgid "ardour: rename region"
#~ msgstr "ardour : renommer la région"
@@ -6211,9 +7591,6 @@ msgstr "analyser les données"
#~ msgid "You have %1 keys bound to \"mod5\""
#~ msgstr "%1 touches sont affectées à « mod5 »"
-#~ msgid "ardour: locations"
-#~ msgstr "ardour : repères et intervalles"
-
#~ msgid "ardour_locations"
#~ msgstr "ardour_locations"
@@ -6338,9 +7715,6 @@ msgstr "analyser les données"
#~ msgid "Field"
#~ msgstr "champ"
-#~ msgid "Value"
-#~ msgstr "valeur"
-
#~ msgid "resolution"
#~ msgstr "résolution"
diff --git a/gtk2_ardour/po/pl_PL.po b/gtk2_ardour/po/pl_PL.po
new file mode 100644
index 0000000000..263ae6f93f
--- /dev/null
+++ b/gtk2_ardour/po/pl_PL.po
@@ -0,0 +1,7894 @@
+# translation of gtk2_ardour.po to Polish
+# Copyright (C) YEAR "Paul Davis"
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Piotr Zaryk <pzaryk@gmail.com>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: gtk2_ardour\n"
+"Report-Msgid-Bugs-To: Piotr Zaryk <pzaryk@gmail.com>\n"
+"POT-Creation-Date: 2008-04-03 16:18+0200\n"
+"PO-Revision-Date: 2008-04-10 10:47+0100\n"
+"Last-Translator: Piotr Zaryk <pzaryk@gmail.com>\n"
+"Language-Team: Polish <pzaryk@gmail.com>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"X-Poedit-Language: Polish\n"
+"X-Poedit-Country: POLAND\n"
+
+#: gtk2_ardour/about.cc:120
+msgid "Paul Davis"
+msgstr "Paul Davis"
+
+#: gtk2_ardour/about.cc:121
+msgid "Jesse Chappell"
+msgstr "Jesse Chappell"
+
+#: gtk2_ardour/about.cc:122
+msgid "Taybin Rutkin"
+msgstr "Taybin Rutkin"
+
+#: gtk2_ardour/about.cc:123
+msgid "Marcus Andersson"
+msgstr "Marcus Andersson"
+
+#: gtk2_ardour/about.cc:124
+msgid "Jeremy Hall"
+msgstr "Jeremy Hall"
+
+#: gtk2_ardour/about.cc:125
+msgid "Steve Harris"
+msgstr "Steve Harris"
+
+#: gtk2_ardour/about.cc:126
+msgid "Tim Mayberry"
+msgstr "Tim Mayberry"
+
+#: gtk2_ardour/about.cc:127
+msgid "Mark Stewart"
+msgstr "Mark Stewart"
+
+#: gtk2_ardour/about.cc:128
+msgid "Sam Chessman"
+msgstr "Sam Chessman"
+
+#: gtk2_ardour/about.cc:129
+msgid "Jack O'Quin"
+msgstr "Jack O'Quin"
+
+#: gtk2_ardour/about.cc:130
+msgid "Matt Krai"
+msgstr "Matt Krai"
+
+#: gtk2_ardour/about.cc:131
+msgid "Ben Bell"
+msgstr "Ben Bell"
+
+#: gtk2_ardour/about.cc:132
+msgid "Gerard van Dongen"
+msgstr "Gerard van Dongen"
+
+#: gtk2_ardour/about.cc:133
+msgid "Thomas Charbonnel"
+msgstr "Thomas Charbonnel"
+
+#: gtk2_ardour/about.cc:134
+msgid "Nick Mainsbridge"
+msgstr "Nick Mainsbridge"
+
+#: gtk2_ardour/about.cc:135
+msgid "Colin Law"
+msgstr "Colin Law"
+
+#: gtk2_ardour/about.cc:136
+msgid "Sampo Savolainen"
+msgstr "Sampo Savolainen"
+
+#: gtk2_ardour/about.cc:137
+msgid "Joshua Leach"
+msgstr "Joshua Leach"
+
+#: gtk2_ardour/about.cc:138
+msgid "Rob Holland"
+msgstr "Rob Holland"
+
+#: gtk2_ardour/about.cc:139
+msgid "Per Sigmond"
+msgstr "Per Sigmond"
+
+#: gtk2_ardour/about.cc:140
+msgid "Doug Mclain"
+msgstr "Doug Mclain"
+
+#: gtk2_ardour/about.cc:141
+msgid "Petter Sundlöf"
+msgstr "Petter Sundlöf"
+
+#: gtk2_ardour/about.cc:142
+msgid "Thorsten Wilms"
+msgstr "Thorsten Wilms"
+
+#: gtk2_ardour/about.cc:143
+msgid "Ben Loftis"
+msgstr "Ben Loftis"
+
+#: gtk2_ardour/about.cc:144
+msgid "Stefan Kersten"
+msgstr "Stefan Kersten"
+
+#: gtk2_ardour/about.cc:145
+msgid "Christopher George"
+msgstr "Christopher George"
+
+#: gtk2_ardour/about.cc:146
+msgid "Robert Jordens"
+msgstr "Robert Jordens"
+
+#: gtk2_ardour/about.cc:147
+msgid "Dave Robillard"
+msgstr "Dave Robillard"
+
+#: gtk2_ardour/about.cc:148
+msgid "Hans Fugal"
+msgstr "Hans Fugal"
+
+#: gtk2_ardour/about.cc:149
+msgid "Brian Ahr"
+msgstr "Brian Ahr"
+
+#: gtk2_ardour/about.cc:150
+msgid "Nimal Ratnayake"
+msgstr "Nimal Ratnayake"
+
+#: gtk2_ardour/about.cc:151
+msgid "Mike Täht"
+msgstr "Mike Täht"
+
+#: gtk2_ardour/about.cc:152
+msgid "John Anderson"
+msgstr "John Anderson"
+
+#: gtk2_ardour/about.cc:153
+msgid "Nedko Arnaudov"
+msgstr "Nedko Arnaudov"
+
+#: gtk2_ardour/about.cc:154
+msgid "Carl Hetherington"
+msgstr "Carl Hetherington"
+
+#: gtk2_ardour/about.cc:155
+msgid "Colin Fletcher"
+msgstr "Colin Fletcher"
+
+#: gtk2_ardour/about.cc:156
+msgid "Roland Stigge"
+msgstr "Roland Stigge"
+
+#: gtk2_ardour/about.cc:157
+msgid "Audun Halland"
+msgstr "Audun Halland"
+
+#: gtk2_ardour/about.cc:158
+msgid "Armand Klenk"
+msgstr "Armand Klenk"
+
+#: gtk2_ardour/about.cc:163
+msgid ""
+"French:\n"
+"\tAlain Fréhel <alain.frehel@free.fr>\n"
+"\tChristophe Combelles <ccomb@free.fr>\n"
+msgstr ""
+"French:\n"
+"\tAlain Fréhel <alain.frehel@free.fr>\n"
+"\tChristophe Combelles <ccomb@free.fr>\n"
+
+#: gtk2_ardour/about.cc:164
+msgid ""
+"German:\n"
+"\tKarsten Petersen <kapet@kapet.de>\n"
+"\tSebastian Arnold <mail@sebastian-arnold.net>\n"
+msgstr ""
+"German:\n"
+"\tKarsten Petersen <kapet@kapet.de>\n"
+"\tSebastian Arnold <mail@sebastian-arnold.net>\n"
+
+#: gtk2_ardour/about.cc:165
+msgid ""
+"Italian:\n"
+"\tFilippo Pappalardo <filippo@email.it>\n"
+msgstr ""
+"Italian:\n"
+"\tFilippo Pappalardo <filippo@email.it>\n"
+
+#: gtk2_ardour/about.cc:166
+msgid ""
+"Portuguese:\n"
+"\tRui Nuno Capela <rncbc@rncbc.org>\n"
+msgstr ""
+"Portuguese:\n"
+"\tRui Nuno Capela <rncbc@rncbc.org>\n"
+
+#: gtk2_ardour/about.cc:167
+msgid ""
+"Brazilian Portuguese:\n"
+"\tAlexander da Franca Fernandes <alexander@nautae.eti.br>\n"
+"\tChris Ross <chris@tebibyte.org>\n"
+msgstr ""
+"Brazilian Portuguese:\n"
+"\tAlexander da Franca Fernandes <alexander@nautae.eti.br>\n"
+"\tChris Ross <chris@tebibyte.org>\n"
+
+#: gtk2_ardour/about.cc:169
+msgid ""
+"Spanish:\n"
+"\t Alex Krohn <alexkrohn@fastmail.fm>\n"
+msgstr ""
+"Spanish:\n"
+"\t Alex Krohn <alexkrohn@fastmail.fm>\n"
+
+#: gtk2_ardour/about.cc:170
+msgid ""
+"Russian:\n"
+"\t Igor Blinov <pitstop@nm.ru>\n"
+msgstr ""
+"Russian:\n"
+"\t Igor Blinov <pitstop@nm.ru>\n"
+
+#: gtk2_ardour/about.cc:171
+msgid ""
+"Greek:\n"
+"\t Klearchos Gourgourinis <muadib@in.gr>\n"
+msgstr ""
+"Greek:\n"
+"\t Klearchos Gourgourinis <muadib@in.gr>\n"
+
+#: gtk2_ardour/about.cc:199
+msgid "Copyright (C) 1999-2008 Paul Davis\n"
+msgstr "Prawa autorskie (C) 1999-2008 Paul Davis\n"
+
+#: gtk2_ardour/about.cc:200
+msgid ""
+"Ardour comes with ABSOLUTELY NO WARRANTY\n"
+"This is free software, and you are welcome to redistribute it\n"
+"under certain conditions; see the file COPYING for details.\n"
+msgstr ""
+"Na program Ardour nie udziela się ABSOLUTNIE ŻADNEJ GWARANCJI\n"
+"To jest wolne oprogramowanie i wolno Ci je rozpowszechniać\n"
+"na określonych warunkach - zobacz plik COPYING, by dowiedzieć się więcej.\n"
+
+#: gtk2_ardour/about.cc:205
+msgid "visit http://www.ardour.org/"
+msgstr "odwiedź http://www.ardour.org/"
+
+#: gtk2_ardour/about.cc:206
+msgid ""
+"%1\n"
+"(built from revision %2)"
+msgstr ""
+"%1\n"
+"(revision %2)"
+
+#: gtk2_ardour/actions.cc:79
+#: gtk2_ardour/actions.cc:80
+msgid "badly formatted UI definition file: %1"
+msgstr "niepoprawnie sformatowany plik definicji interfejsu użytkownika: %1"
+
+#: gtk2_ardour/actions.cc:82
+msgid "Ardour menu definition file not found"
+msgstr "Nie odnaleziono pliku definicji menu"
+
+#: gtk2_ardour/actions.cc:86
+msgid "ardour will not work without a valid ardour.menus file"
+msgstr "Ardour nie zadziała bez poprawnego pliku ardour.menus"
+
+#: gtk2_ardour/actions.cc:267
+msgid "programmer error: %1 %2"
+msgstr "błąd programisty: %1 %2"
+
+#: gtk2_ardour/actions.cc:286
+msgid "Unknown action name: %1"
+msgstr "Nieznana nazwa czynności: %1"
+
+#: gtk2_ardour/add_route_dialog.cc:41
+#: gtk2_ardour/add_route_dialog.cc:219
+msgid "Mono"
+msgstr "Mono"
+
+#: gtk2_ardour/add_route_dialog.cc:42
+#: gtk2_ardour/add_route_dialog.cc:221
+msgid "Stereo"
+msgstr "Stereo"
+
+#: gtk2_ardour/add_route_dialog.cc:43
+msgid "3 Channels"
+msgstr "3 kanały"
+
+#: gtk2_ardour/add_route_dialog.cc:44
+msgid "4 Channels"
+msgstr "4 kanały"
+
+#: gtk2_ardour/add_route_dialog.cc:45
+msgid "6 Channels"
+msgstr "6 kanałów"
+
+#: gtk2_ardour/add_route_dialog.cc:46
+msgid "8 Channels"
+msgstr "8 kanałów"
+
+#: gtk2_ardour/add_route_dialog.cc:47
+msgid "Manual Setup"
+msgstr "Ręczne Ustawienia"
+
+#: gtk2_ardour/add_route_dialog.cc:52
+#: gtk2_ardour/add_route_dialog.cc:200
+#: gtk2_ardour/editor_actions.cc:525
+#: gtk2_ardour/time_axis_view.cc:618
+msgid "Normal"
+msgstr "Normalny"
+
+#: gtk2_ardour/add_route_dialog.cc:53
+#: gtk2_ardour/add_route_dialog.cc:202
+msgid "Tape"
+msgstr "Taśma"
+
+#: gtk2_ardour/add_route_dialog.cc:62
+msgid "ardour: add track/bus"
+msgstr "Dodawanie ścieżek/szyn"
+
+#: gtk2_ardour/add_route_dialog.cc:63
+msgid "Tracks"
+msgstr "Ścieżki"
+
+#: gtk2_ardour/add_route_dialog.cc:64
+msgid "Busses"
+msgstr "Szyny"
+
+#: gtk2_ardour/add_route_dialog.cc:113
+#: gtk2_ardour/plugin_ui.cc:265
+msgid "Add"
+msgstr "Dodaj"
+
+#: gtk2_ardour/add_route_dialog.cc:131
+msgid "Name (template)"
+msgstr "Nazwa (szablon)"
+
+#: gtk2_ardour/add_route_dialog.cc:137
+msgid "Channel Configuration"
+msgstr "Konfiguracja kanałów"
+
+#: gtk2_ardour/ardour_ui2.cc:62
+msgid "UI: cannot setup editor"
+msgstr "UI: nie można ustawić edytora"
+
+#: gtk2_ardour/ardour_ui2.cc:67
+msgid "UI: cannot setup mixer"
+msgstr "UI: nie można ustawić miksera"
+
+#: gtk2_ardour/ardour_ui2.cc:110
+msgid "[ERROR]: "
+msgstr "[BÅAD]: "
+
+#: gtk2_ardour/ardour_ui2.cc:112
+msgid "[WARNING]: "
+msgstr "[OSTRZEŻENIE]: "
+
+#: gtk2_ardour/ardour_ui2.cc:114
+msgid "[INFO]: "
+msgstr "[INFORMACJA]: "
+
+#: gtk2_ardour/ardour_ui2.cc:282
+msgid "Play from playhead"
+msgstr "Odtwórz od położenia głowicy"
+
+#: gtk2_ardour/ardour_ui2.cc:283
+msgid "Stop playback"
+msgstr "Zatrzymaj odtwarzanie"
+
+#: gtk2_ardour/ardour_ui2.cc:284
+msgid "Play range/selection"
+msgstr "Odtwórz zakres/zaznaczenie"
+
+#: gtk2_ardour/ardour_ui2.cc:285
+msgid "Go to start of session"
+msgstr "Przejdź do początku sesji"
+
+#: gtk2_ardour/ardour_ui2.cc:286
+msgid "Go to end of session"
+msgstr "Przejdź do końca sesji"
+
+#: gtk2_ardour/ardour_ui2.cc:287
+msgid "Play loop range"
+msgstr "Zakres pętli"
+
+#: gtk2_ardour/ardour_ui2.cc:289
+msgid "Return to last playback start when stopped"
+msgstr "Powróć do początku ostatniego odtwarzania przy zatrzymaniu"
+
+#: gtk2_ardour/ardour_ui2.cc:290
+msgid "Start playback after any locate"
+msgstr "Rozpocznij odtwarzanie przy każdym ustaleniu położenia głowicy"
+
+#: gtk2_ardour/ardour_ui2.cc:291
+msgid "Be sensible about input monitoring"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui2.cc:292
+msgid "Start recording at auto-punch start"
+msgstr "Rozpocznij nagrywanie przy napotkaniu przełącznika"
+
+#: gtk2_ardour/ardour_ui2.cc:293
+msgid "Stop recording at auto-punch end"
+msgstr "Zatrzymaj nagrywanie na końcu przełącznika"
+
+#: gtk2_ardour/ardour_ui2.cc:294
+msgid "Enable/Disable audio click"
+msgstr "Włącz/wyłącz metronom"
+
+#: gtk2_ardour/ardour_ui2.cc:295
+msgid "Positional sync source"
+msgstr "Źródło synchronizacji pozycji"
+
+#: gtk2_ardour/ardour_ui2.cc:296
+msgid "Does Ardour control the time?"
+msgstr "Określa, czy Ardour kontroluje czas."
+
+#: gtk2_ardour/ardour_ui2.cc:297
+msgid "Shuttle speed control"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui2.cc:298
+#, c-format
+msgid "Select semitones or %%-age for speed display"
+msgstr "Wybierz półtony lub procenty dla wyświetlania prędkości"
+
+#: gtk2_ardour/ardour_ui2.cc:299
+msgid "Current transport speed"
+msgstr "Aktualna prędkość nagrywania i odtwarzania"
+
+#: gtk2_ardour/ardour_ui2.cc:320
+msgid "Primary clock"
+msgstr "Zegar podstawowy"
+
+#: gtk2_ardour/ardour_ui2.cc:321
+msgid "secondary clock"
+msgstr "zegar dodatkowy"
+
+#: gtk2_ardour/ardour_ui2.cc:347
+msgid ""
+"When active, something is soloed.\n"
+"Click to de-solo everything"
+msgstr ""
+"Gdy aktywne, gdzieś włączone jest solo.\n"
+"Kliknij by wyłączyć solo wszędzie."
+
+#: gtk2_ardour/ardour_ui2.cc:348
+msgid ""
+"When active, auditioning is taking place\n"
+"Click to stop the audition"
+msgstr ""
+"Gdy aktywne, odsłuchiwanie jest włączone\n"
+"Kliknij, by zatrzymać odsłuchiwanie."
+
+#: gtk2_ardour/ardour_ui2.cc:376
+#: gtk2_ardour/ardour_ui2.cc:826
+#: gtk2_ardour/ardour_ui2.cc:882
+#: gtk2_ardour/ardour_ui_options.cc:1152
+msgid "sprung"
+msgstr "sprężyna"
+
+#: gtk2_ardour/ardour_ui2.cc:377
+#: gtk2_ardour/ardour_ui2.cc:828
+#: gtk2_ardour/ardour_ui_options.cc:1163
+msgid "wheel"
+msgstr "koło"
+
+#: gtk2_ardour/ardour_ui2.cc:596
+msgid "Maximum speed"
+msgstr "Maksymalna prędkość"
+
+#: gtk2_ardour/ardour_ui2.cc:838
+#: gtk2_ardour/ardour_ui2.cc:861
+msgid "stop"
+msgstr "zatrz."
+
+#: gtk2_ardour/ardour_ui2.cc:880
+msgid "-0.55"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui.cc:114
+msgid ""
+"pre\n"
+"roll"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui.cc:115
+msgid ""
+"post\n"
+"roll"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui.cc:141
+msgid "% "
+msgstr "% "
+
+#: gtk2_ardour/ardour_ui.cc:143
+#: gtk2_ardour/ardour_ui_ed.cc:327
+msgid "Punch In"
+msgstr "Wejście przełącznika"
+
+#: gtk2_ardour/ardour_ui.cc:144
+#: gtk2_ardour/ardour_ui_ed.cc:330
+msgid "Punch Out"
+msgstr "Wyjście przełącznika"
+
+#: gtk2_ardour/ardour_ui.cc:145
+#: gtk2_ardour/ardour_ui_ed.cc:345
+msgid "Auto Return"
+msgstr "Autopowracanie"
+
+#: gtk2_ardour/ardour_ui.cc:146
+#: gtk2_ardour/ardour_ui_ed.cc:342
+msgid "Auto Play"
+msgstr "Autoodtwarzanie"
+
+#: gtk2_ardour/ardour_ui.cc:147
+#: gtk2_ardour/ardour_ui_ed.cc:339
+msgid "Auto Input"
+msgstr "Wejście dźwięku"
+
+#: gtk2_ardour/ardour_ui.cc:148
+#: gtk2_ardour/ardour_ui_ed.cc:336
+#: gtk2_ardour/option_editor.cc:151
+msgid "Click"
+msgstr "Metronom"
+
+#: gtk2_ardour/ardour_ui.cc:149
+msgid ""
+"time\n"
+"master"
+msgstr ""
+"zarzÄ…dzanie\n"
+"czasem"
+
+#: gtk2_ardour/ardour_ui.cc:151
+msgid "AUDITION"
+msgstr "ODSÅUCH"
+
+#: gtk2_ardour/ardour_ui.cc:152
+msgid "SOLO"
+msgstr "SOLO"
+
+#: gtk2_ardour/ardour_ui.cc:154
+msgid "Errors"
+msgstr "Błędy"
+
+#: gtk2_ardour/ardour_ui.cc:242
+msgid "could not initialize Ardour."
+msgstr "Nie można dokonać inicjalizacji programu."
+
+#: gtk2_ardour/ardour_ui.cc:268
+msgid "Starting audio engine"
+msgstr "Uruchamianie systemu dźwięku"
+
+#: gtk2_ardour/ardour_ui.cc:572
+msgid "Ardour could not start JACK"
+msgstr "Nie można połączyć się z JACK."
+
+#: gtk2_ardour/ardour_ui.cc:574
+msgid "Ardour could not connect to JACK."
+msgstr "Nie można połączyć się z JACK."
+
+#: gtk2_ardour/ardour_ui.cc:583
+msgid ""
+"There are several possible reasons:\n"
+"\n"
+"1) You requested audio parameters that are not supported..\n"
+"2) JACK is running as another user.\n"
+"\n"
+"Please consider the possibilities, and perhaps try different parameters."
+msgstr ""
+"Istnieje kilka możliwych przyczyn:\n"
+"\n"
+"1) Wprowadzono nieobsługiwane parametry dźwięku.\n"
+"2) JACK jest uruchomiony przez innego użytkownika.\n"
+"\n"
+"Należy rozważyć wszystkie możliwości i wypróbować inne ustawienia."
+
+#: gtk2_ardour/ardour_ui.cc:590
+msgid ""
+"There are several possible reasons:\n"
+"\n"
+"1) JACK is not running.\n"
+"2) JACK is running as another user, perhaps root.\n"
+"3) There is already another client called \"ardour\".\n"
+"\n"
+"Please consider the possibilities, and perhaps (re)start JACK."
+msgstr ""
+"Istnieje kilka możliwych przyczyn:\n"
+"\n"
+"1) JACK nie jest uruchomiony.\n"
+"2) JACK został uruchomiony przez innego użytkownika, prawdopodobnie przez administratora.\n"
+"3) Istnieje już inny klient o nazwie \"ardour\".\n"
+"\n"
+"Rozważ wszystkie możliwości i uruchom JACK (ponownie)."
+
+#: gtk2_ardour/ardour_ui.cc:638
+msgid "Ardour is ready for use"
+msgstr "Ardour jest gotowy do użycia"
+
+#: gtk2_ardour/ardour_ui.cc:680
+msgid ""
+"WARNING: Your system has a limit for maximum amount of locked memory. This might cause Ardour to run out of memory before your system runs out of memory. \n"
+"\n"
+"You can view the memory limit with 'ulimit -l', and it is normally controlled by /etc/security/limits.conf"
+msgstr ""
+"OSTRZEŻENIE: System posiada limit maksymalnego rozmiaru zablokowanej pamięci. Może to powodować, iż będzie brakować pamięci prędzej niż faktycznie skończy się ona w systemie. \n"
+"\n"
+"Można sprawdzić limit pamięci przy użyciu 'ulimit -l'. Standardowo limit ten jest kontrolowany przez /etc/security/limits.conf"
+
+#: gtk2_ardour/ardour_ui.cc:688
+msgid "Do not show this window again"
+msgstr "Nie pokazuj tego okna więcej"
+
+#: gtk2_ardour/ardour_ui.cc:717
+msgid "quit"
+msgstr "zakończ"
+
+#: gtk2_ardour/ardour_ui.cc:726
+msgid ""
+"Ardour was unable to save your session.\n"
+"\n"
+"If you still wish to quit, please use the\n"
+"\n"
+"\"Just quit\" option."
+msgstr ""
+"Nie można zapisać sesji.\n"
+"\n"
+"Można ją zakończyć przy użyciu\n"
+"\n"
+"opcji \"Po prostu zakończ\"."
+
+#: gtk2_ardour/ardour_ui.cc:751
+msgid "ardour: save session?"
+msgstr "Pytanie o zapisanie sesji"
+
+#: gtk2_ardour/ardour_ui.cc:758
+msgid "Don't %1"
+msgstr "Nie kończ"
+
+#: gtk2_ardour/ardour_ui.cc:760
+msgid "Just %1"
+msgstr "Po prostu %1"
+
+#: gtk2_ardour/ardour_ui.cc:762
+msgid "Save and %1"
+msgstr "Zapisz i %1"
+
+#: gtk2_ardour/ardour_ui.cc:774
+msgid "session"
+msgstr "Sesja"
+
+#: gtk2_ardour/ardour_ui.cc:776
+msgid "snapshot"
+msgstr "zrzut"
+
+#: gtk2_ardour/ardour_ui.cc:778
+msgid ""
+"The %1\"%2\"\n"
+"has not been saved.\n"
+"\n"
+"Any changes made this time\n"
+"will be lost unless you save it.\n"
+"\n"
+"What do you want to do?"
+msgstr ""
+"%1 \"%2\" nie została zapisana.\n"
+"\n"
+"Wszystkie dokonane zmiany zostanÄ… utracone\n"
+"w przypadku anulowania zapisu.\n"
+"\n"
+"Co zrobić?"
+
+#: gtk2_ardour/ardour_ui.cc:792
+msgid "Prompter"
+msgstr "Prompter"
+
+#: gtk2_ardour/ardour_ui.cc:854
+#, c-format
+msgid "disconnected"
+msgstr "rozłączono"
+
+#: gtk2_ardour/ardour_ui.cc:861
+#, c-format
+msgid "%.1f kHz / %4.1f ms"
+msgstr "%.1f kHz / %4.1f ms"
+
+#: gtk2_ardour/ardour_ui.cc:865
+#, c-format
+msgid "%u kHz / %4.1f ms"
+msgstr "%u kHz / %4.1f ms"
+
+#: gtk2_ardour/ardour_ui.cc:878
+#, c-format
+msgid "DSP: %5.1f%%"
+msgstr "DSP: %5.1f%%"
+
+#: gtk2_ardour/ardour_ui.cc:888
+#, c-format
+msgid "Buffers p:%<PRIu32>%% c:%<PRIu32>%%"
+msgstr "Bufory p:%<PRIu32>%% c:%<PRIu32>%%"
+
+#: gtk2_ardour/ardour_ui.cc:916
+msgid "Disk: 24hrs+"
+msgstr "Dysk: 24hrs+"
+
+#: gtk2_ardour/ardour_ui.cc:936
+#, c-format
+msgid "Disk: %02dh:%02dm:%02ds"
+msgstr "Dysk: %02dh:%02dm:%02ds"
+
+#: gtk2_ardour/ardour_ui.cc:1056
+#: gtk2_ardour/new_session_dialog.cc:391
+msgid "Recent Sessions"
+msgstr "Poprzednie sesje"
+
+#: gtk2_ardour/ardour_ui.cc:1162
+msgid ""
+"Ardour is not connected to JACK\n"
+"You cannot open or close sessions in this condition"
+msgstr ""
+"Ardour nie jest połączony z JACK.\n"
+"W tej sytuacji nie możesz otwierać lub zamykać sesji."
+
+#: gtk2_ardour/ardour_ui.cc:1187
+msgid "open session"
+msgstr "Otwieranie sesji"
+
+#: gtk2_ardour/ardour_ui.cc:1194
+msgid "Ardour sessions"
+msgstr "Sesje Ardour"
+
+#: gtk2_ardour/ardour_ui.cc:1227
+msgid "Patience is a virtue.\n"
+msgstr "Cierpliwość jest cnotą.\n"
+
+#: gtk2_ardour/ardour_ui.cc:1237
+msgid "You cannot add a track or bus without a session already loaded."
+msgstr "Nie możesz dodać ścieżki lub szyny bez otwierania sesji."
+
+#: gtk2_ardour/ardour_ui.cc:1247
+#: gtk2_ardour/ardour_ui.cc:1260
+msgid "could not create a new audio track"
+msgstr "nie można było utworzyć nowej ścieżki dźwiękowej"
+
+#: gtk2_ardour/ardour_ui.cc:1249
+msgid "could only create %1 of %2 new audio %3"
+msgstr "można było utworzyć jedynie %1 z %2 nowego audio %3"
+
+#: gtk2_ardour/ardour_ui.cc:1250
+#: gtk2_ardour/editor_ops.cc:5580
+msgid "tracks"
+msgstr "ścieżki"
+
+#: gtk2_ardour/ardour_ui.cc:1250
+#: gtk2_ardour/editor_ops.cc:5586
+msgid "busses"
+msgstr "szyny"
+
+#: gtk2_ardour/ardour_ui.cc:1262
+msgid "could not create %1 new audio tracks"
+msgstr "nie można było utworzyć %1 nowych ścieżek dźwiękowych"
+
+#: gtk2_ardour/ardour_ui.cc:1282
+msgid ""
+"There are insufficient JACK ports available\n"
+"to create a new track or bus.\n"
+"You should save Ardour, exit and\n"
+"restart JACK with more ports."
+msgstr ""
+
+#: gtk2_ardour/ardour_ui.cc:1404
+msgid ""
+"Please create 1 or more track\n"
+"before trying to record.\n"
+"Check the Session menu."
+msgstr ""
+"Należy utworzyć 1 lub więcej ścieżek\n"
+"przed rozpoczęciem nagrywania.\n"
+"Sprawdź menu Sesji."
+
+#: gtk2_ardour/ardour_ui.cc:1662
+msgid ""
+"JACK has either been shutdown or it\n"
+"disconnected Ardour because Ardour\n"
+"was not fast enough. You can save the\n"
+"session and/or try to reconnect to JACK ."
+msgstr "JACK został wyłączony albo odłączył program Ardour z powodu jego niewystarczającej szybkości. Można zapisać sesję i/lub spróbować połączyć ponownie z JACK."
+
+#: gtk2_ardour/ardour_ui.cc:1680
+msgid "Unable to start the session running"
+msgstr "Nie można wczytać sesji, gdyż jest aktualnie w użyciu."
+
+#: gtk2_ardour/ardour_ui.cc:1771
+#: gtk2_ardour/ardour_ui.cc:1790
+#: gtk2_ardour/audio_clock.cc:512
+#: gtk2_ardour/audio_clock.cc:513
+msgid "none"
+msgstr "brak"
+
+#: gtk2_ardour/ardour_ui.cc:1780
+#: gtk2_ardour/ardour_ui.cc:1799
+msgid "off"
+msgstr "wył"
+
+#: gtk2_ardour/ardour_ui.cc:1825
+msgid "Name of New Snapshot"
+msgstr "Nazwa zrzutu:"
+
+#: gtk2_ardour/ardour_ui.cc:1977
+msgid "Name for mix template:"
+msgstr "Nazwa szablonu miksu:"
+
+#: gtk2_ardour/ardour_ui.cc:1978
+msgid "-template"
+msgstr "-szablon"
+
+#: gtk2_ardour/ardour_ui.cc:2007
+msgid ""
+"Welcome to Ardour.\n"
+"\n"
+"The program will take a bit longer to start up\n"
+"while the system fonts are checked.\n"
+"\n"
+"This will only be done once, and you will\n"
+"not see this message again\n"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui.cc:2094
+msgid ""
+"This session\n"
+"%1\n"
+"already exists. Do you want to open it?"
+msgstr ""
+"Sesja\n"
+"%1\n"
+"już istnieje. Otworzyć ją?"
+
+#: gtk2_ardour/ardour_ui.cc:2454
+msgid ""
+"You do not have write access to this session.\n"
+"This prevents the session from being loaded."
+msgstr ""
+"Nie posiadasz dostępu do zapisu tej sesji.\n"
+"Uniemożliwia to wczytanie sesji."
+
+#: gtk2_ardour/ardour_ui.cc:2461
+msgid "Please wait while Ardour loads your session"
+msgstr "Proszę czekać. Trwa wczytywanie sesji..."
+
+#: gtk2_ardour/ardour_ui.cc:2476
+#: gtk2_ardour/ardour_ui.cc:2502
+msgid "Loading Error"
+msgstr "BÅ‚Ä…d wczytywania"
+
+#: gtk2_ardour/ardour_ui.cc:2477
+#: gtk2_ardour/ardour_ui.cc:2503
+msgid "Click the OK button to try again."
+msgstr ""
+
+#: gtk2_ardour/ardour_ui.cc:2497
+msgid "Session \"%1 (snapshot %2)\" did not load successfully"
+msgstr "Sesja \"%1 (zrzut %2)\" nie została załadowana poprawnie"
+
+#: gtk2_ardour/ardour_ui.cc:2576
+msgid "Could not create session in \"%1\""
+msgstr "Nie udało się utworzyć sesji w \"%1\""
+
+#: gtk2_ardour/ardour_ui.cc:2663
+msgid "No audio files were ready for cleanup"
+msgstr "Żadne pliki dźwiękowe nie były gotowe do wyczyszczenia"
+
+#: gtk2_ardour/ardour_ui.cc:2667
+msgid ""
+"If this seems suprising, \n"
+"check for any existing snapshots.\n"
+"These may still include regions that\n"
+"require some unused files to continue to exist."
+msgstr ""
+"Jeśli to wydaje się być zaskakujące, \n"
+"sprawdź istniejące zrzuty.\n"
+"Wciąż mogą zawierać obszary\n"
+"wymagające obecności nieużywanych plików."
+
+#: gtk2_ardour/ardour_ui.cc:2676
+msgid "ardour: cleanup"
+msgstr "Czyszczenie"
+
+#: gtk2_ardour/ardour_ui.cc:2712
+#: gtk2_ardour/ardour_ui.cc:2718
+msgid "files were"
+msgstr "pliki były"
+
+#: gtk2_ardour/ardour_ui.cc:2714
+#: gtk2_ardour/ardour_ui.cc:2720
+msgid "file was"
+msgstr "plik był"
+
+#: gtk2_ardour/ardour_ui.cc:2761
+msgid "Are you sure you want to cleanup?"
+msgstr "Na pewno wyczyścić?"
+
+#: gtk2_ardour/ardour_ui.cc:2766
+msgid ""
+"Cleanup is a destructive operation.\n"
+"ALL undo/redo information will be lost if you cleanup.\n"
+"After cleanup, unused audio files will be moved to a \"dead sounds\" location."
+msgstr ""
+"Czyszczenie powoduje usunięcie pewnych informacji.\n"
+"WSZYSTKIE informacje cofnij/powtórz zostaną usunięte w trakcie czyszczenia.\n"
+"Po czyszczeniu nieużywane pliki audio zostaną przeniesione do katalogu \"dead sounds\"."
+
+#: gtk2_ardour/ardour_ui.cc:2772
+msgid "Clean Up"
+msgstr "Wyczyść"
+
+#: gtk2_ardour/ardour_ui.cc:2775
+msgid "CleanupDialog"
+msgstr "Okno dialogowe czyszczenia"
+
+#: gtk2_ardour/ardour_ui.cc:2803
+msgid "cleaned files"
+msgstr "usunięte pliki"
+
+#: gtk2_ardour/ardour_ui.cc:2804
+msgid ""
+"The following %1 %2 not in use and \n"
+"have been moved to:\n"
+"%3. \n"
+"\n"
+"Flushing the wastebasket will \n"
+"release an additional\n"
+"%4 %5bytes of disk space.\n"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui.cc:2832
+msgid "deleted file"
+msgstr "usunięty plik"
+
+#: gtk2_ardour/ardour_ui.cc:2833
+msgid ""
+"The following %1 %2 deleted from\n"
+"%3,\n"
+"releasing %4 %5bytes of disk space"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui.cc:2958
+msgid "Recording was stopped because your system could not keep up."
+msgstr ""
+
+#: gtk2_ardour/ardour_ui.cc:2981
+msgid ""
+"The disk system on your computer\n"
+"was not able to keep up with Ardour.\n"
+"\n"
+"Specifically, it failed to write data to disk\n"
+"quickly enough to keep up with recording.\n"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui.cc:3000
+msgid ""
+"The disk system on your computer\n"
+"was not able to keep up with Ardour.\n"
+"\n"
+"Specifically, it failed to read data from disk\n"
+"quickly enough to keep up with playback.\n"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui.cc:3040
+msgid "Crash Recovery"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui.cc:3041
+msgid ""
+"This session appears to have been in\n"
+"middle of recording when ardour or\n"
+"the computer was shutdown.\n"
+"\n"
+"Ardour can recover any captured audio for\n"
+"you, or it can ignore it. Please decide\n"
+"what you would like to do.\n"
+msgstr ""
+"Ta sesja była prawdopodobnie w trakcie\n"
+"nagrywania, gdy ardour lub komputer\n"
+"został niespodziewanie wyłączony.\n"
+"\n"
+"Ardour może przywrócić nagranie dla Ciebie.\n"
+"Co chcesz zrobić?\n"
+
+#: gtk2_ardour/ardour_ui.cc:3053
+msgid "Ignore crash data"
+msgstr "Ignorowanie dane z awarii"
+
+#: gtk2_ardour/ardour_ui.cc:3054
+msgid "Recover from crash"
+msgstr "Przywróć dane z awarii"
+
+#: gtk2_ardour/ardour_ui.cc:3074
+msgid "Sample Rate Mismatch"
+msgstr "Błędna częstotliwość próbkowania"
+
+#: gtk2_ardour/ardour_ui.cc:3075
+msgid ""
+"This session was created with a sample rate of %1 Hz\n"
+"\n"
+"The audioengine is currently running at %2 Hz\n"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui.cc:3084
+msgid "Do not load session"
+msgstr "Nie Å‚aduj sesji"
+
+#: gtk2_ardour/ardour_ui.cc:3085
+msgid "Load session anyway"
+msgstr "Załaduj sesję mimo to"
+
+#: gtk2_ardour/ardour_ui.cc:3106
+msgid "Could not disconnect from JACK"
+msgstr "Nie można się rozłączyć z JACK"
+
+#: gtk2_ardour/ardour_ui.cc:3119
+msgid "Could not reconnect to JACK"
+msgstr "Nie udało się połączyć ponownie z JACK"
+
+#: gtk2_ardour/ardour_ui_dependents.cc:74
+msgid "Setup Editor"
+msgstr "Ustawianie edytora"
+
+#: gtk2_ardour/ardour_ui_dependents.cc:76
+msgid "Setup Mixer"
+msgstr "Ustawianie miksera"
+
+#: gtk2_ardour/ardour_ui_dependents.cc:81
+msgid "Reload Session History"
+msgstr "Wczytywanie historii sesji"
+
+#: gtk2_ardour/ardour_ui_dialogs.cc:169
+#: gtk2_ardour/playlist_selector.cc:73
+msgid "close"
+msgstr "zamknij"
+
+#: gtk2_ardour/ardour_ui_ed.cc:88
+msgid "Session"
+msgstr "Sesja"
+
+#: gtk2_ardour/ardour_ui_ed.cc:89
+msgid "Import/Export"
+msgstr "Importuj/Eksportuj"
+
+#: gtk2_ardour/ardour_ui_ed.cc:90
+msgid "Cleanup"
+msgstr "Wyczyść"
+
+#: gtk2_ardour/ardour_ui_ed.cc:91
+#: gtk2_ardour/editor_actions.cc:85
+#: gtk2_ardour/option_editor.cc:148
+msgid "Sync"
+msgstr "Synchronizacja"
+
+#: gtk2_ardour/ardour_ui_ed.cc:92
+#: gtk2_ardour/ardour_ui_ed.cc:93
+#: gtk2_ardour/engine_dialog.cc:343
+msgid "Options"
+msgstr "Opcje"
+
+#: gtk2_ardour/ardour_ui_ed.cc:94
+msgid "Help"
+msgstr "Pomoc"
+
+#: gtk2_ardour/ardour_ui_ed.cc:95
+msgid "Misc. Shortcuts"
+msgstr "Skróty"
+
+#: gtk2_ardour/ardour_ui_ed.cc:96
+msgid "Audio File Format"
+msgstr "Format pliku dźwiękowego"
+
+#: gtk2_ardour/ardour_ui_ed.cc:97
+#: gtk2_ardour/export_dialog.cc:105
+msgid "File Type"
+msgstr "Format pliku"
+
+#: gtk2_ardour/ardour_ui_ed.cc:98
+#: gtk2_ardour/export_dialog.cc:106
+msgid "Sample Format"
+msgstr "Format próbkowania"
+
+#: gtk2_ardour/ardour_ui_ed.cc:99
+msgid "Control Surfaces"
+msgstr "UrzÄ…dzenia sterujÄ…ce"
+
+#: gtk2_ardour/ardour_ui_ed.cc:100
+msgid "Metering"
+msgstr "Ustawienia metrum"
+
+#: gtk2_ardour/ardour_ui_ed.cc:101
+msgid "Fall off rate"
+msgstr "Tempo zmniejszania"
+
+#: gtk2_ardour/ardour_ui_ed.cc:102
+msgid "Hold Time"
+msgstr "Czas przytrzymania"
+
+#: gtk2_ardour/ardour_ui_ed.cc:103
+msgid "Denormal Handling"
+msgstr "Obsługa liczb zdenormalizowanych"
+
+#: gtk2_ardour/ardour_ui_ed.cc:107
+#: gtk2_ardour/new_session_dialog.cc:842
+#: gtk2_ardour/route_time_axis.cc:1376
+msgid "New"
+msgstr "Utwórz"
+
+#: gtk2_ardour/ardour_ui_ed.cc:109
+#: gtk2_ardour/new_session_dialog.cc:822
+#: gtk2_ardour/new_session_dialog.cc:834
+msgid "Open"
+msgstr "Otwórz"
+
+#: gtk2_ardour/ardour_ui_ed.cc:110
+msgid "Recent"
+msgstr "Poprzednia"
+
+#: gtk2_ardour/ardour_ui_ed.cc:111
+#: gtk2_ardour/io_selector.cc:59
+#: gtk2_ardour/io_selector.cc:749
+#: gtk2_ardour/connection_editor.cc:58
+msgid "Close"
+msgstr "Zamknij"
+
+#: gtk2_ardour/ardour_ui_ed.cc:114
+#: gtk2_ardour/route_params_ui.cc:513
+msgid "Add Track/Bus"
+msgstr "Dodaj ścieżkę/szynę"
+
+#: gtk2_ardour/ardour_ui_ed.cc:126
+msgid "Connect"
+msgstr "Połącz"
+
+#: gtk2_ardour/ardour_ui_ed.cc:134
+msgid "Snapshot"
+msgstr "Zrzut"
+
+#: gtk2_ardour/ardour_ui_ed.cc:137
+msgid "Save Template..."
+msgstr "Zapisz szablon"
+
+#: gtk2_ardour/ardour_ui_ed.cc:140
+msgid "Export session to audiofile..."
+msgstr "Sesję do pliku dźwiękowego..."
+
+#: gtk2_ardour/ardour_ui_ed.cc:143
+msgid "Export selection to audiofile..."
+msgstr "Zaznaczenie do pliku dźwiękowego..."
+
+#: gtk2_ardour/ardour_ui_ed.cc:147
+msgid "Export range markers to audiofile..."
+msgstr "Znaczniki zakresu do pliku dźwiękowego..."
+
+#: gtk2_ardour/ardour_ui_ed.cc:151
+#: gtk2_ardour/editor.cc:1775
+#: gtk2_ardour/export_dialog.cc:125
+#: gtk2_ardour/export_dialog.cc:374
+#: gtk2_ardour/export_dialog.cc:1122
+#: gtk2_ardour/export_dialog.cc:1126
+msgid "Export"
+msgstr "Eksportuj"
+
+#: gtk2_ardour/ardour_ui_ed.cc:154
+msgid "Cleanup unused sources"
+msgstr "Nieużywane zasoby"
+
+#: gtk2_ardour/ardour_ui_ed.cc:156
+msgid "Flush wastebasket"
+msgstr "Opróżnij kosz"
+
+#: gtk2_ardour/ardour_ui_ed.cc:162
+msgid "JACK"
+msgstr "JACK"
+
+#: gtk2_ardour/ardour_ui_ed.cc:163
+msgid "Latency"
+msgstr "Opóźnienie"
+
+#: gtk2_ardour/ardour_ui_ed.cc:165
+msgid "Reconnect"
+msgstr "Połącz ponownie"
+
+#: gtk2_ardour/ardour_ui_ed.cc:168
+#: gtk2_ardour/mixer_strip.cc:505
+#: gtk2_ardour/mixer_strip.cc:567
+msgid "Disconnect"
+msgstr "Rozłącz"
+
+#: gtk2_ardour/ardour_ui_ed.cc:195
+msgid "Window"
+msgstr "Okno"
+
+#: gtk2_ardour/ardour_ui_ed.cc:196
+msgid "Quit"
+msgstr "Zakończ"
+
+#: gtk2_ardour/ardour_ui_ed.cc:200
+msgid "Maximise Editor Space"
+msgstr "Maksymalizacja edytora"
+
+#: gtk2_ardour/ardour_ui_ed.cc:202
+msgid "Show Editor"
+msgstr "Edytor"
+
+#: gtk2_ardour/ardour_ui_ed.cc:203
+msgid "Show Mixer"
+msgstr "Mikser"
+
+#: gtk2_ardour/ardour_ui_ed.cc:204
+#: gtk2_ardour/option_editor.cc:121
+msgid "Preferences"
+msgstr "Preferencje"
+
+#: gtk2_ardour/ardour_ui_ed.cc:205
+#: gtk2_ardour/route_params_ui.cc:143
+#: gtk2_ardour/route_params_ui.cc:659
+msgid "Track/Bus Inspector"
+msgstr "Kontroler ścieżek/szyn"
+
+#: gtk2_ardour/ardour_ui_ed.cc:207
+#: gtk2_ardour/connection_editor.cc:146
+#: gtk2_ardour/connection_editor.cc:147
+msgid "Connections"
+msgstr "Połączenia"
+
+#: gtk2_ardour/ardour_ui_ed.cc:209
+#: gtk2_ardour/location_ui.cc:611
+msgid "Locations"
+msgstr "Położenia"
+
+#: gtk2_ardour/ardour_ui_ed.cc:211
+msgid "Big Clock"
+msgstr "Duży zegar"
+
+#: gtk2_ardour/ardour_ui_ed.cc:213
+msgid "About"
+msgstr "O programie"
+
+#: gtk2_ardour/ardour_ui_ed.cc:214
+msgid "Theme Manager"
+msgstr "Menedżer motywów"
+
+#: gtk2_ardour/ardour_ui_ed.cc:215
+msgid "Keybindings"
+msgstr "Skróty klawiszowe"
+
+#: gtk2_ardour/ardour_ui_ed.cc:217
+msgid "Add Audio Track"
+msgstr "Dodaj ścieżkę dźwiękową"
+
+#: gtk2_ardour/ardour_ui_ed.cc:219
+msgid "Add Audio Bus"
+msgstr "Dodaj szynę dźwiękową"
+
+#: gtk2_ardour/ardour_ui_ed.cc:221
+msgid "Save"
+msgstr "Zapisz"
+
+#: gtk2_ardour/ardour_ui_ed.cc:223
+#: gtk2_ardour/editor_actions.cc:502
+msgid "Remove Last Capture"
+msgstr "Usuń ostatnie nagranie"
+
+#: gtk2_ardour/ardour_ui_ed.cc:230
+msgid "Transport"
+msgstr "Nagrywanie i odtwarzanie"
+
+#: gtk2_ardour/ardour_ui_ed.cc:236
+#: gtk2_ardour/engine_dialog.cc:59
+#: gtk2_ardour/sfdb_ui.cc:184
+msgid "Stop"
+msgstr "Zatrzymaj"
+
+#: gtk2_ardour/ardour_ui_ed.cc:239
+msgid "Roll"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui_ed.cc:243
+msgid "Start/Stop"
+msgstr "Uruchom/Zatrzymaj"
+
+#: gtk2_ardour/ardour_ui_ed.cc:246
+msgid "Stop + Forget Capture"
+msgstr "Zatrzymaj i usuń nagranie"
+
+#: gtk2_ardour/ardour_ui_ed.cc:256
+msgid "Transition To Roll"
+msgstr "Do przodu"
+
+#: gtk2_ardour/ardour_ui_ed.cc:260
+msgid "Transition To Reverse"
+msgstr "Od tyłu"
+
+#: gtk2_ardour/ardour_ui_ed.cc:265
+msgid "Play Loop Range"
+msgstr "Odtwórz zakres pętli"
+
+#: gtk2_ardour/ardour_ui_ed.cc:268
+msgid "Play Selection"
+msgstr "Odtwórz zaznaczenie"
+
+#: gtk2_ardour/ardour_ui_ed.cc:272
+msgid "Enable Record"
+msgstr "WÅ‚Ä…cz nagrywanie"
+
+#: gtk2_ardour/ardour_ui_ed.cc:274
+msgid "Start Recording"
+msgstr "Rozpocznij nagrywanie"
+
+#: gtk2_ardour/ardour_ui_ed.cc:277
+msgid "Rewind"
+msgstr "Przewiń do tyłu"
+
+#: gtk2_ardour/ardour_ui_ed.cc:280
+msgid "Rewind (Slow)"
+msgstr "Przewiń do tyłu (powoli)"
+
+#: gtk2_ardour/ardour_ui_ed.cc:283
+msgid "Rewind (Fast)"
+msgstr "Przewiń do tyłu (szybko)"
+
+#: gtk2_ardour/ardour_ui_ed.cc:286
+msgid "Forward"
+msgstr "Przewiń do przodu"
+
+#: gtk2_ardour/ardour_ui_ed.cc:289
+msgid "Forward (Slow)"
+msgstr "Przewiń do przodu (powoli)"
+
+#: gtk2_ardour/ardour_ui_ed.cc:292
+msgid "Forward (Fast)"
+msgstr "Przewiń do przodu (szybko)"
+
+#: gtk2_ardour/ardour_ui_ed.cc:295
+msgid "Goto Zero"
+msgstr "Do punktu zerowego"
+
+#: gtk2_ardour/ardour_ui_ed.cc:298
+msgid "Goto Start"
+msgstr "Do poczÄ…tku"
+
+#: gtk2_ardour/ardour_ui_ed.cc:301
+msgid "Goto End"
+msgstr "Do końca"
+
+#: gtk2_ardour/ardour_ui_ed.cc:305
+msgid "Focus On Clock"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui_ed.cc:309
+#: gtk2_ardour/ardour_ui_ed.cc:318
+#: gtk2_ardour/editor_actions.cc:616
+msgid "Bars & Beats"
+msgstr "Takty i uderzenia"
+
+#: gtk2_ardour/ardour_ui_ed.cc:311
+#: gtk2_ardour/ardour_ui_ed.cc:320
+msgid "Minutes & Seconds"
+msgstr "Minuty i Sekundy"
+
+#: gtk2_ardour/ardour_ui_ed.cc:313
+#: gtk2_ardour/ardour_ui_ed.cc:322
+#: gtk2_ardour/audio_clock.cc:1925
+#: gtk2_ardour/editor_actions.cc:617
+#: gtk2_ardour/editor.cc:194
+msgid "Samples"
+msgstr "Próbki"
+
+#: gtk2_ardour/ardour_ui_ed.cc:315
+#: gtk2_ardour/ardour_ui_ed.cc:324
+#: gtk2_ardour/ardour_ui_ed.cc:512
+#: gtk2_ardour/ardour_ui_ed.cc:520
+#: gtk2_ardour/audio_clock.cc:1926
+msgid "Off"
+msgstr "Wyłączony"
+
+#: gtk2_ardour/ardour_ui_ed.cc:333
+msgid "Punch In/Out"
+msgstr "We/wy przełącznika"
+
+#: gtk2_ardour/ardour_ui_ed.cc:349
+msgid "Sync startup to video"
+msgstr "Synchronizuj poczÄ…tek z wideo"
+
+#: gtk2_ardour/ardour_ui_ed.cc:350
+msgid "Time master"
+msgstr "ZarzÄ…dzanie czasem"
+
+#: gtk2_ardour/ardour_ui_ed.cc:353
+msgid "Toggle Record Enable Track1"
+msgstr "Przełącz nagrywanie Ścieżki1"
+
+#: gtk2_ardour/ardour_ui_ed.cc:355
+msgid "Toggle Record Enable Track2"
+msgstr "Przełącz nagrywanie Ścieżki2"
+
+#: gtk2_ardour/ardour_ui_ed.cc:357
+msgid "Toggle Record Enable Track3"
+msgstr "Przełącz nagrywanie Ścieżki3"
+
+#: gtk2_ardour/ardour_ui_ed.cc:359
+msgid "Toggle Record Enable Track4"
+msgstr "Przełącz nagrywanie Ścieżki4"
+
+#: gtk2_ardour/ardour_ui_ed.cc:361
+msgid "Toggle Record Enable Track5"
+msgstr "Przełącz nagrywanie Ścieżki5"
+
+#: gtk2_ardour/ardour_ui_ed.cc:363
+msgid "Toggle Record Enable Track6"
+msgstr "Przełącz nagrywanie Ścieżki6"
+
+#: gtk2_ardour/ardour_ui_ed.cc:365
+msgid "Toggle Record Enable Track7"
+msgstr "Przełącz nagrywanie Ścieżki7"
+
+#: gtk2_ardour/ardour_ui_ed.cc:367
+msgid "Toggle Record Enable Track8"
+msgstr "Przełącz nagrywanie Ścieżki8"
+
+#: gtk2_ardour/ardour_ui_ed.cc:369
+msgid "Toggle Record Enable Track9"
+msgstr "Przełącz nagrywanie Ścieżki9"
+
+#: gtk2_ardour/ardour_ui_ed.cc:371
+msgid "Toggle Record Enable Track10"
+msgstr "Przełącz nagrywanie Ścieżki10"
+
+#: gtk2_ardour/ardour_ui_ed.cc:373
+msgid "Toggle Record Enable Track11"
+msgstr "Przełącz nagrywanie Ścieżki11"
+
+#: gtk2_ardour/ardour_ui_ed.cc:375
+msgid "Toggle Record Enable Track12"
+msgstr "Przełącz nagrywanie Ścieżki12"
+
+#: gtk2_ardour/ardour_ui_ed.cc:377
+msgid "Toggle Record Enable Track13"
+msgstr "Przełącz nagrywanie Ścieżki13"
+
+#: gtk2_ardour/ardour_ui_ed.cc:379
+msgid "Toggle Record Enable Track14"
+msgstr "Przełącz nagrywanie Ścieżki14"
+
+#: gtk2_ardour/ardour_ui_ed.cc:381
+msgid "Toggle Record Enable Track15"
+msgstr "Przełącz nagrywanie Ścieżki15"
+
+#: gtk2_ardour/ardour_ui_ed.cc:383
+msgid "Toggle Record Enable Track16"
+msgstr "Przełącz nagrywanie Ścieżki16"
+
+#: gtk2_ardour/ardour_ui_ed.cc:385
+msgid "Toggle Record Enable Track17"
+msgstr "Przełącz nagrywanie Ścieżki17"
+
+#: gtk2_ardour/ardour_ui_ed.cc:387
+msgid "Toggle Record Enable Track18"
+msgstr "Przełącz nagrywanie Ścieżki18"
+
+#: gtk2_ardour/ardour_ui_ed.cc:389
+msgid "Toggle Record Enable Track19"
+msgstr "Przełącz nagrywanie Ścieżki19"
+
+#: gtk2_ardour/ardour_ui_ed.cc:391
+msgid "Toggle Record Enable Track20"
+msgstr "Przełącz nagrywanie Ścieżki20"
+
+#: gtk2_ardour/ardour_ui_ed.cc:393
+msgid "Toggle Record Enable Track21"
+msgstr "Przełącz nagrywanie Ścieżki21"
+
+#: gtk2_ardour/ardour_ui_ed.cc:395
+msgid "Toggle Record Enable Track22"
+msgstr "Przełącz nagrywanie Ścieżki22"
+
+#: gtk2_ardour/ardour_ui_ed.cc:397
+msgid "Toggle Record Enable Track23"
+msgstr "Przełącz nagrywanie Ścieżki23"
+
+#: gtk2_ardour/ardour_ui_ed.cc:399
+msgid "Toggle Record Enable Track24"
+msgstr "Przełącz nagrywanie Ścieżki24"
+
+#: gtk2_ardour/ardour_ui_ed.cc:401
+msgid "Toggle Record Enable Track25"
+msgstr "Przełącz nagrywanie Ścieżki25"
+
+#: gtk2_ardour/ardour_ui_ed.cc:403
+msgid "Toggle Record Enable Track26"
+msgstr "Przełącz nagrywanie Ścieżki26"
+
+#: gtk2_ardour/ardour_ui_ed.cc:405
+msgid "Toggle Record Enable Track27"
+msgstr "Przełącz nagrywanie Ścieżki27"
+
+#: gtk2_ardour/ardour_ui_ed.cc:407
+msgid "Toggle Record Enable Track28"
+msgstr "Przełącz nagrywanie Ścieżki28"
+
+#: gtk2_ardour/ardour_ui_ed.cc:409
+msgid "Toggle Record Enable Track29"
+msgstr "Przełącz nagrywanie Ścieżki29"
+
+#: gtk2_ardour/ardour_ui_ed.cc:411
+msgid "Toggle Record Enable Track30"
+msgstr "Przełącz nagrywanie Ścieżki30"
+
+#: gtk2_ardour/ardour_ui_ed.cc:413
+msgid "Toggle Record Enable Track31"
+msgstr "Przełącz nagrywanie Ścieżki31"
+
+#: gtk2_ardour/ardour_ui_ed.cc:415
+msgid "Toggle Record Enable Track32"
+msgstr "Przełącz nagrywanie Ścieżki32"
+
+#: gtk2_ardour/ardour_ui_ed.cc:420
+msgid "Percentage"
+msgstr "Procenty"
+
+#: gtk2_ardour/ardour_ui_ed.cc:421
+msgid "Semitones"
+msgstr "Półtony"
+
+#: gtk2_ardour/ardour_ui_ed.cc:425
+msgid "Send MTC"
+msgstr "Wysyłanie MTC"
+
+#: gtk2_ardour/ardour_ui_ed.cc:427
+msgid "Send MMC"
+msgstr "Wysyłanie MMC"
+
+#: gtk2_ardour/ardour_ui_ed.cc:429
+msgid "Use MMC"
+msgstr "Używanie MMC"
+
+#: gtk2_ardour/ardour_ui_ed.cc:431
+msgid "Send MIDI feedback"
+msgstr "Sprzężenie zwrotne MIDI"
+
+#: gtk2_ardour/ardour_ui_ed.cc:434
+msgid "Use OSC"
+msgstr "OSC"
+
+#: gtk2_ardour/ardour_ui_ed.cc:438
+msgid "Tape Machine mode"
+msgstr "Tryb taśmowy"
+
+#: gtk2_ardour/ardour_ui_ed.cc:441
+msgid "Sync Editor and Mixer track order"
+msgstr "Synchronizacja kolejności ścieżek miksera i edytora"
+
+#: gtk2_ardour/ardour_ui_ed.cc:442
+msgid "Stop plugins with transport"
+msgstr "Zatrzymanie wtyczek przy zakończeniu nagrywania/odtwarzania"
+
+#: gtk2_ardour/ardour_ui_ed.cc:443
+msgid "Verify remove last capture"
+msgstr "Potwierdzanie usuwania ostatniego nagrania"
+
+#: gtk2_ardour/ardour_ui_ed.cc:444
+msgid "Make periodic safety backups"
+msgstr "Okresowe kopie bezpieczeństwa"
+
+#: gtk2_ardour/ardour_ui_ed.cc:445
+msgid "Stop recording on xrun"
+msgstr "Zatrzymaj nagrywanie przy xrun"
+
+#: gtk2_ardour/ardour_ui_ed.cc:446
+msgid "Create marker at xrun location"
+msgstr "Tworzenie znacznika w położeniu xrun"
+
+#: gtk2_ardour/ardour_ui_ed.cc:447
+msgid "Stop transport at session end"
+msgstr "Zatrzymaj nagrywanie i odtwarzanie na końcu sesji"
+
+#: gtk2_ardour/ardour_ui_ed.cc:448
+msgid "-12dB gain reduce ffwd/rewind"
+msgstr "Redukcja wzmocnienia o 12dB podczas przewijania"
+
+#: gtk2_ardour/ardour_ui_ed.cc:449
+msgid "Rec-enable stays engaged at stop"
+msgstr "Ustawienie nagrywania pozostaje włączone po zatrzymaniu"
+
+#: gtk2_ardour/ardour_ui_ed.cc:450
+msgid "Region equivalents overlap"
+msgstr "Nakładanie odpowiedników obszarów"
+
+#: gtk2_ardour/ardour_ui_ed.cc:451
+msgid "Primary Clock delta to edit point"
+msgstr "Zegar podstawowy wyświetla odstęp od wskaźnika"
+
+#: gtk2_ardour/ardour_ui_ed.cc:452
+msgid "Secondary Clock delta to edit point"
+msgstr "Zegar dodatkowy wyświetla odstęp od wskaźnika"
+
+#: gtk2_ardour/ardour_ui_ed.cc:453
+msgid "Enable Editor Meters"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui_ed.cc:454
+msgid "Always copy imported files"
+msgstr "Kopiowanie importowanych plików"
+
+#: gtk2_ardour/ardour_ui_ed.cc:455
+msgid "Rubberbanding Snaps to Grid"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui_ed.cc:456
+msgid "Auto-analyse new audio"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui_ed.cc:458
+msgid "Use narrow mixer strips"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui_ed.cc:462
+msgid "Use DC bias"
+msgstr "Używanie DC bias"
+
+#: gtk2_ardour/ardour_ui_ed.cc:464
+msgid "No processor handling"
+msgstr "Nieobsługiwane przez procesor"
+
+#: gtk2_ardour/ardour_ui_ed.cc:473
+#: gtk2_ardour/ardour_ui_ed.cc:484
+msgid "Use FlushToZero"
+msgstr "Użyj FlushToZero"
+
+#: gtk2_ardour/ardour_ui_ed.cc:475
+#: gtk2_ardour/ardour_ui_ed.cc:489
+msgid "Use DenormalsAreZero"
+msgstr "Użyj DenormalsAreZero"
+
+#: gtk2_ardour/ardour_ui_ed.cc:477
+#: gtk2_ardour/ardour_ui_ed.cc:494
+msgid "Use FlushToZero & DenormalsAreZero"
+msgstr "Użyj FlushToZero & DenormalsAreZero"
+
+#: gtk2_ardour/ardour_ui_ed.cc:500
+msgid "Do not run plugins while recording"
+msgstr "Brak uruchamiania wtyczek podczas nagrywania"
+
+#: gtk2_ardour/ardour_ui_ed.cc:502
+msgid "Latched solo"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui_ed.cc:504
+msgid "Show solo muting"
+msgstr "Wyświetlanie wyciszania solo"
+
+#: gtk2_ardour/ardour_ui_ed.cc:513
+#: gtk2_ardour/editor.cc:1386
+#: gtk2_ardour/editor.cc:1389
+#: gtk2_ardour/editor.cc:1408
+#: gtk2_ardour/editor.cc:1411
+msgid "Slowest"
+msgstr "Najwolniej"
+
+#: gtk2_ardour/ardour_ui_ed.cc:514
+#: gtk2_ardour/editor.cc:1390
+#: gtk2_ardour/editor.cc:1412
+msgid "Slow"
+msgstr "Wolno"
+
+#: gtk2_ardour/ardour_ui_ed.cc:515
+#: gtk2_ardour/ardour_ui_ed.cc:522
+msgid "Medium"
+msgstr "Åšrednio"
+
+#: gtk2_ardour/ardour_ui_ed.cc:516
+#: gtk2_ardour/editor.cc:1391
+#: gtk2_ardour/editor.cc:1413
+#: gtk2_ardour/sfdb_ui.cc:1262
+#: gtk2_ardour/sfdb_ui.cc:1343
+msgid "Fast"
+msgstr "Szybko"
+
+#: gtk2_ardour/ardour_ui_ed.cc:517
+msgid "Faster"
+msgstr "Szybciej"
+
+#: gtk2_ardour/ardour_ui_ed.cc:518
+#: gtk2_ardour/editor.cc:1392
+#: gtk2_ardour/editor.cc:1414
+#: gtk2_ardour/sfdb_ui.cc:1263
+msgid "Fastest"
+msgstr "Najszybciej"
+
+#: gtk2_ardour/ardour_ui_ed.cc:521
+#: gtk2_ardour/editor_actions.cc:108
+msgid "Short"
+msgstr "Krótko"
+
+#: gtk2_ardour/ardour_ui_ed.cc:523
+msgid "Long"
+msgstr "DÅ‚ugo"
+
+#: gtk2_ardour/ardour_ui_ed.cc:542
+msgid "Hardware monitoring"
+msgstr "Sprzętowe"
+
+#: gtk2_ardour/ardour_ui_ed.cc:543
+msgid "Software monitoring"
+msgstr "Programowe"
+
+#: gtk2_ardour/ardour_ui_ed.cc:544
+msgid "External monitoring"
+msgstr "Rozszerzone"
+
+#: gtk2_ardour/ardour_ui_ed.cc:548
+msgid "Solo in-place"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui_ed.cc:550
+msgid "Solo via bus"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui_ed.cc:555
+msgid "Auto-connect inputs to physical inputs"
+msgstr "ÅÄ…cz wejÅ›cia z wejÅ›ciami fizycznymi automatycznie"
+
+#: gtk2_ardour/ardour_ui_ed.cc:557
+msgid "Manually connect inputs"
+msgstr "ÅÄ…cz wejÅ›cia rÄ™cznie"
+
+#: gtk2_ardour/ardour_ui_ed.cc:562
+msgid "Auto-connect outputs to physical outs"
+msgstr "ÅÄ…cz wyjÅ›cia z wyjÅ›ciami fizycznymi automatycznie"
+
+#: gtk2_ardour/ardour_ui_ed.cc:564
+msgid "Auto-connect outputs to master bus"
+msgstr "ÅÄ…cz wyjÅ›cia z głównÄ… szynÄ… automatycznie"
+
+#: gtk2_ardour/ardour_ui_ed.cc:566
+msgid "Manually connect outputs"
+msgstr "ÅÄ…cz wyjÅ›cia rÄ™cznie"
+
+#: gtk2_ardour/ardour_ui_ed.cc:571
+msgid "Remote ID assigned by User"
+msgstr "ID urządzenia zdalnego przydzielone ręcznie"
+
+#: gtk2_ardour/ardour_ui_ed.cc:573
+msgid "Remote ID follows order of Mixer"
+msgstr "ID urządzenia zdalnego zgodne z kolejnością miksera"
+
+#: gtk2_ardour/ardour_ui_ed.cc:575
+msgid "Remote ID follows order of Editor"
+msgstr "ID urządzenia zdalnego zgodne z kolejnością edytora"
+
+#: gtk2_ardour/ardour_ui_ed.cc:578
+#, fuzzy
+msgid "Auto Rebind Controls"
+msgstr "Kontrola automatyzacji"
+
+#: gtk2_ardour/ardour_ui_ed.cc:728
+#: gtk2_ardour/generic_pluginui.cc:171
+msgid "Controls"
+msgstr "Sterowanie"
+
+#: gtk2_ardour/ardour_ui_ed.cc:732
+msgid "Feedback"
+msgstr "Sprzężenie zwrotne"
+
+#: gtk2_ardour/ardour_ui_ed.cc:838
+msgid "Clock"
+msgstr "Zegar"
+
+#: gtk2_ardour/ardour_ui_options.cc:119
+#: gtk2_ardour/ardour_ui_options.cc:149
+#: gtk2_ardour/audio_streamview.cc:172
+#: gtk2_ardour/editor_actions.cc:1150
+#: gtk2_ardour/editor_actions.cc:1509
+#: gtk2_ardour/editor_actions.cc:1522
+#: gtk2_ardour/editor_actions.cc:1586
+#: gtk2_ardour/engine_dialog.cc:997
+msgid "programming error: %1"
+msgstr "błąd programowania: %1"
+
+#: gtk2_ardour/ardour_ui_options.cc:228
+msgid "programming error: unknown solo model in ARDOUR_UI::set_solo_model: %1"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui_options.cc:261
+msgid "programming error: unknown remote model in ARDOUR_UI::set_remote_model: %1"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui_options.cc:295
+msgid "programming error: unknown monitor model in ARDOUR_UI::set_monitor_model: %1"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui_options.cc:334
+msgid "programming error: unknown denormal model in ARDOUR_UI::set_denormal_model: %1"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui_options.cc:775
+msgid "programming error: unknown file header format passed to ARDOUR_UI::map_file_data_format: %1"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui_options.cc:811
+msgid "programming error: unknown file data format passed to ARDOUR_UI::map_file_data_format: %1"
+msgstr ""
+
+#: gtk2_ardour/ardour_ui_options.cc:1174
+msgid "ST"
+msgstr "ST"
+
+#: gtk2_ardour/audio_clock.cc:1921
+#: gtk2_ardour/editor_actions.cc:618
+#: gtk2_ardour/editor.cc:193
+msgid "Timecode"
+msgstr "Zegar"
+
+#: gtk2_ardour/audio_clock.cc:1923
+#: gtk2_ardour/editor.cc:192
+msgid "Bars:Beats"
+msgstr "Takty:Uderzenia"
+
+#: gtk2_ardour/audio_clock.cc:1924
+msgid "Minutes:Seconds"
+msgstr "Minuty i sekundy"
+
+#: gtk2_ardour/audio_region_editor.cc:48
+msgid "NAME:"
+msgstr "NAZWA:"
+
+#: gtk2_ardour/audio_region_editor.cc:49
+msgid "play"
+msgstr "odtwórz"
+
+#: gtk2_ardour/audio_region_editor.cc:68
+msgid "audition this region"
+msgstr "przesłuchaj ten obszar"
+
+#: gtk2_ardour/audio_region_editor.cc:83
+msgid "START:"
+msgstr "POCZÄ„TEK:"
+
+#: gtk2_ardour/audio_region_editor.cc:85
+msgid "END:"
+msgstr "KONIEC:"
+
+#: gtk2_ardour/audio_region_editor.cc:87
+msgid "LENGTH:"
+msgstr "DÅUGOŚĆ:"
+
+#: gtk2_ardour/audio_region_editor.cc:123
+msgid "Region %1"
+msgstr "Obszar %1"
+
+#: gtk2_ardour/audio_region_editor.cc:204
+msgid "change region start position"
+msgstr "zmień pozycję początkową obszaru"
+
+#: gtk2_ardour/audio_region_editor.cc:221
+msgid "change region end position"
+msgstr "zmień pozycję końcową obszaru"
+
+#: gtk2_ardour/audio_region_editor.cc:242
+msgid "change region length"
+msgstr "zmień długość obszaru"
+
+#: gtk2_ardour/audio_region_view.cc:955
+msgid "add gain control point"
+msgstr "dodaj punkt kontrolny wzmocnienia"
+
+#: gtk2_ardour/audio_time_axis.cc:226
+msgid "Fader"
+msgstr "Wzmocnienie"
+
+#: gtk2_ardour/audio_time_axis.cc:231
+msgid "Pan"
+msgstr "Panorama"
+
+#: gtk2_ardour/audio_time_axis.cc:247
+msgid "Hide all crossfades"
+msgstr "Ukryj wszystkie przejścia krzyżowe"
+
+#: gtk2_ardour/audio_time_axis.cc:248
+msgid "Show all crossfades"
+msgstr "Wyświetlanie wszystkich przejść krzyżowych"
+
+#: gtk2_ardour/audio_time_axis.cc:256
+msgid "Show waveforms"
+msgstr "Wykres fali"
+
+#: gtk2_ardour/audio_time_axis.cc:266
+msgid "Traditional"
+msgstr "Tradycyjny"
+
+#: gtk2_ardour/audio_time_axis.cc:270
+msgid "Rectified"
+msgstr "Poprawiony"
+
+#: gtk2_ardour/audio_time_axis.cc:280
+#: gtk2_ardour/editor_actions.cc:699
+#: gtk2_ardour/editor.cc:1385
+#: gtk2_ardour/editor.cc:1388
+#: gtk2_ardour/editor.cc:1407
+#: gtk2_ardour/editor.cc:1410
+msgid "Linear"
+msgstr "Liniowy"
+
+#: gtk2_ardour/audio_time_axis.cc:283
+#: gtk2_ardour/editor_actions.cc:701
+msgid "Logarithmic"
+msgstr "Logarytmiczny"
+
+#: gtk2_ardour/audio_time_axis.cc:302
+msgid "Waveform"
+msgstr "Wykres fali"
+
+#: gtk2_ardour/audio_time_axis.cc:374
+msgid "gain"
+msgstr "wzmocnienie"
+
+#: gtk2_ardour/audio_time_axis.cc:414
+msgid "pan"
+msgstr "panorama"
+
+#: gtk2_ardour/automation_line.cc:610
+msgid "Ignoring illegal points on AutomationLine \"%1\""
+msgstr ""
+
+#: gtk2_ardour/automation_line.cc:800
+msgid "automation event move"
+msgstr "przesuń zdarzenie automatyki"
+
+#: gtk2_ardour/automation_line.cc:802
+msgid "automation range drag"
+msgstr "przeciÄ…gnij zakres automatyki"
+
+#: gtk2_ardour/automation_line.cc:1027
+#: gtk2_ardour/region_gain_line.cc:85
+msgid "remove control point"
+msgstr "usuń punkt kontrolny"
+
+#: gtk2_ardour/automation_time_axis.cc:55
+#: gtk2_ardour/route_time_axis.cc:104
+#: gtk2_ardour/visual_time_axis.cc:73
+msgid "h"
+msgstr ""
+
+#: gtk2_ardour/automation_time_axis.cc:56
+#: gtk2_ardour/editor_ops.cc:3575
+msgid "clear"
+msgstr "wyczyść"
+
+#: gtk2_ardour/automation_time_axis.cc:97
+msgid "track height"
+msgstr "rozmiar wyświetlania"
+
+#: gtk2_ardour/automation_time_axis.cc:98
+msgid "automation state"
+msgstr "stan automatyki"
+
+#: gtk2_ardour/automation_time_axis.cc:99
+msgid "clear track"
+msgstr "wyczyść ścieżkę"
+
+#: gtk2_ardour/automation_time_axis.cc:100
+msgid "hide track"
+msgstr "ukryj ścieżkę"
+
+#: gtk2_ardour/automation_time_axis.cc:207
+#: gtk2_ardour/automation_time_axis.cc:236
+#: gtk2_ardour/automation_time_axis.cc:461
+#: gtk2_ardour/gain_meter.cc:160
+#: gtk2_ardour/generic_pluginui.cc:335
+#: gtk2_ardour/generic_pluginui.cc:606
+#: gtk2_ardour/panner_ui.cc:88
+msgid "Manual"
+msgstr "Ręcznie"
+
+#: gtk2_ardour/automation_time_axis.cc:209
+#: gtk2_ardour/automation_time_axis.cc:247
+#: gtk2_ardour/automation_time_axis.cc:465
+#: gtk2_ardour/editor_actions.cc:69
+#: gtk2_ardour/editor.cc:1995
+#: gtk2_ardour/editor.cc:2078
+#: gtk2_ardour/gain_meter.cc:162
+#: gtk2_ardour/generic_pluginui.cc:338
+#: gtk2_ardour/generic_pluginui.cc:608
+#: gtk2_ardour/panner_ui.cc:90
+msgid "Play"
+msgstr "Odtwórz"
+
+#: gtk2_ardour/automation_time_axis.cc:211
+#: gtk2_ardour/automation_time_axis.cc:258
+#: gtk2_ardour/automation_time_axis.cc:469
+#: gtk2_ardour/gain_meter.cc:164
+#: gtk2_ardour/generic_pluginui.cc:341
+#: gtk2_ardour/generic_pluginui.cc:610
+#: gtk2_ardour/panner_ui.cc:92
+msgid "Write"
+msgstr "Zapisz"
+
+#: gtk2_ardour/automation_time_axis.cc:213
+#: gtk2_ardour/automation_time_axis.cc:269
+#: gtk2_ardour/automation_time_axis.cc:473
+#: gtk2_ardour/gain_meter.cc:166
+#: gtk2_ardour/generic_pluginui.cc:344
+#: gtk2_ardour/generic_pluginui.cc:612
+#: gtk2_ardour/panner_ui.cc:94
+msgid "Touch"
+msgstr "Dotyk"
+
+#: gtk2_ardour/automation_time_axis.cc:280
+#: gtk2_ardour/generic_pluginui.cc:347
+msgid "???"
+msgstr "???"
+
+#: gtk2_ardour/automation_time_axis.cc:294
+msgid "clear automation"
+msgstr "wyczyść automatyzację"
+
+#: gtk2_ardour/automation_time_axis.cc:450
+#: gtk2_ardour/editor_actions.cc:88
+#: gtk2_ardour/imageframe_time_axis.cc:254
+#: gtk2_ardour/marker_time_axis.cc:210
+#: gtk2_ardour/route_time_axis.cc:451
+msgid "Height"
+msgstr "Rozmiar"
+
+#: gtk2_ardour/automation_time_axis.cc:452
+#: gtk2_ardour/editor_actions.cc:651
+#: gtk2_ardour/editor_markers.cc:597
+msgid "Hide"
+msgstr "Ukryj"
+
+#: gtk2_ardour/automation_time_axis.cc:454
+#: gtk2_ardour/crossfade_edit.cc:77
+#: gtk2_ardour/redirect_box.cc:1181
+#: gtk2_ardour/connection_editor.cc:56
+msgid "Clear"
+msgstr "Wyczyść"
+
+#: gtk2_ardour/automation_time_axis.cc:477
+msgid "State"
+msgstr "Stan"
+
+#: gtk2_ardour/canvas-imageframe.c:104
+msgid "pixbuf"
+msgstr ""
+
+#: gtk2_ardour/canvas-imageframe.c:105
+msgid "the pixbuf"
+msgstr ""
+
+#: gtk2_ardour/canvas-imageframe.c:110
+msgid "x"
+msgstr ""
+
+#: gtk2_ardour/canvas-imageframe.c:111
+#: gtk2_ardour/canvas-simpleline.c:112
+#: gtk2_ardour/canvas-simplerect.c:108
+msgid "x coordinate of upper left corner of rect"
+msgstr ""
+
+#: gtk2_ardour/canvas-imageframe.c:120
+msgid "y"
+msgstr ""
+
+#: gtk2_ardour/canvas-imageframe.c:121
+#: gtk2_ardour/canvas-simpleline.c:122
+#: gtk2_ardour/canvas-simplerect.c:118
+msgid "y coordinate of upper left corner of rect "
+msgstr ""
+
+#: gtk2_ardour/canvas-imageframe.c:129
+msgid "width"
+msgstr "szerokość"
+
+#: gtk2_ardour/canvas-imageframe.c:130
+msgid "the width"
+msgstr "szerokość"
+
+#: gtk2_ardour/canvas-imageframe.c:139
+msgid "drawwidth"
+msgstr "szerokość rysowania"
+
+#: gtk2_ardour/canvas-imageframe.c:140
+msgid "drawn width"
+msgstr "zarysowana szerokość"
+
+#: gtk2_ardour/canvas-imageframe.c:148
+msgid "height"
+msgstr "wysokość"
+
+#: gtk2_ardour/canvas-imageframe.c:149
+msgid "the height"
+msgstr "wysokość"
+
+#: gtk2_ardour/canvas-imageframe.c:157
+msgid "anchor"
+msgstr "kotwica"
+
+#: gtk2_ardour/canvas-imageframe.c:158
+msgid "the anchor"
+msgstr "kotwica"
+
+#: gtk2_ardour/canvas-simpleline.c:111
+#: gtk2_ardour/canvas-simplerect.c:107
+msgid "x1"
+msgstr ""
+
+#: gtk2_ardour/canvas-simpleline.c:121
+#: gtk2_ardour/canvas-simplerect.c:117
+msgid "y1"
+msgstr ""
+
+#: gtk2_ardour/canvas-simpleline.c:132
+#: gtk2_ardour/canvas-simplerect.c:128
+msgid "x2"
+msgstr ""
+
+#: gtk2_ardour/canvas-simpleline.c:133
+#: gtk2_ardour/canvas-simplerect.c:129
+msgid "x coordinate of lower right corner of rect"
+msgstr ""
+
+#: gtk2_ardour/canvas-simpleline.c:142
+#: gtk2_ardour/canvas-simplerect.c:138
+msgid "y2"
+msgstr ""
+
+#: gtk2_ardour/canvas-simpleline.c:143
+#: gtk2_ardour/canvas-simplerect.c:139
+msgid "y coordinate of lower right corner of rect "
+msgstr ""
+
+#: gtk2_ardour/canvas-simpleline.c:151
+msgid "color rgba"
+msgstr "kolor rgba"
+
+#: gtk2_ardour/canvas-simpleline.c:152
+msgid "color of line"
+msgstr "kolor linii"
+
+#: gtk2_ardour/canvas-simplerect.c:149
+msgid "outline pixels"
+msgstr "piksele konturu"
+
+#: gtk2_ardour/canvas-simplerect.c:150
+msgid "width in pixels of outline"
+msgstr "szerokość konturu w pikselach"
+
+#: gtk2_ardour/canvas-simplerect.c:160
+msgid "outline what"
+msgstr "kontur"
+
+#: gtk2_ardour/canvas-simplerect.c:161
+msgid "which boundaries to outline (mask)"
+msgstr "granice do konturu (maska)"
+
+#: gtk2_ardour/canvas-simplerect.c:172
+msgid "fill"
+msgstr "wypełnij"
+
+#: gtk2_ardour/canvas-simplerect.c:173
+msgid "fill rectangle"
+msgstr "wypełnij prostokąt"
+
+#: gtk2_ardour/canvas-simplerect.c:180
+msgid "draw"
+msgstr "rysuj"
+
+#: gtk2_ardour/canvas-simplerect.c:181
+msgid "draw rectangle"
+msgstr "rysuj prostokÄ…t"
+
+#: gtk2_ardour/canvas-simplerect.c:189
+msgid "outline color rgba"
+msgstr "kolor rgba konturu"
+
+#: gtk2_ardour/canvas-simplerect.c:190
+msgid "color of outline"
+msgstr "kolor konturu"
+
+#: gtk2_ardour/canvas-simplerect.c:200
+msgid "fill color rgba"
+msgstr "kolor rgba wypełnienia"
+
+#: gtk2_ardour/canvas-simplerect.c:201
+msgid "color of fill"
+msgstr "kolor wypełnienia"
+
+#: gtk2_ardour/crossfade_edit.cc:74
+msgid "ardour: x-fade edit"
+msgstr "Zmiana płynnego przejścia"
+
+#: gtk2_ardour/crossfade_edit.cc:78
+#: gtk2_ardour/panner_ui.cc:426
+msgid "Reset"
+msgstr "Zresetuj"
+
+#: gtk2_ardour/crossfade_edit.cc:79
+#: gtk2_ardour/editor_actions.cc:56
+msgid "Fade"
+msgstr "Przejścia"
+
+#: gtk2_ardour/crossfade_edit.cc:80
+msgid "Out (dry)"
+msgstr "Wyjście (suche)"
+
+#: gtk2_ardour/crossfade_edit.cc:81
+msgid "Out"
+msgstr "Wyjście"
+
+#: gtk2_ardour/crossfade_edit.cc:82
+msgid "In (dry)"
+msgstr "Wejście (suche)"
+
+#: gtk2_ardour/crossfade_edit.cc:83
+msgid "In"
+msgstr "Wejście"
+
+#: gtk2_ardour/crossfade_edit.cc:85
+msgid "With Pre-roll"
+msgstr "Z Pre-roll"
+
+#: gtk2_ardour/crossfade_edit.cc:86
+msgid "With Post-roll"
+msgstr "Z Post-roll"
+
+#: gtk2_ardour/crossfade_edit.cc:94
+msgid "Fade In"
+msgstr "Stopniowe wzmocnienie"
+
+#: gtk2_ardour/crossfade_edit.cc:95
+msgid "Fade Out"
+msgstr "Stopniowe wyciszenie"
+
+#: gtk2_ardour/crossfade_edit.cc:171
+#: gtk2_ardour/editor_actions.cc:649
+#: gtk2_ardour/editor.cc:1774
+#: gtk2_ardour/option_editor.cc:152
+msgid "Audition"
+msgstr "Odsłuch"
+
+#: gtk2_ardour/editor_actions.cc:48
+#: gtk2_ardour/editor.cc:2035
+msgid "Align"
+msgstr "Wyrównaj"
+
+#: gtk2_ardour/editor_actions.cc:49
+msgid "Autoconnect"
+msgstr "Automatyczne Å‚Ä…czenie"
+
+#: gtk2_ardour/editor_actions.cc:50
+msgid "Crossfades"
+msgstr "Przejścia krzyżowe"
+
+#: gtk2_ardour/editor_actions.cc:51
+#: gtk2_ardour/editor.cc:1704
+#: gtk2_ardour/editor.cc:2042
+#: gtk2_ardour/editor_markers.cc:660
+#: gtk2_ardour/mixer_strip.cc:503
+#: gtk2_ardour/mixer_strip.cc:565
+#: gtk2_ardour/redirect_box.cc:1207
+msgid "Edit"
+msgstr "Edycja"
+
+#: gtk2_ardour/editor_actions.cc:52
+msgid "Move Selected Marker"
+msgstr "PrzenieÅ› znacznik"
+
+#: gtk2_ardour/editor_actions.cc:53
+msgid "Select Range Operations"
+msgstr "Operacje na zakresach"
+
+#: gtk2_ardour/editor_actions.cc:54
+msgid "Select Regions"
+msgstr "Zaznacz obszary"
+
+#: gtk2_ardour/editor_actions.cc:55
+msgid "Edit Point"
+msgstr "Punkt edycji"
+
+#: gtk2_ardour/editor_actions.cc:57
+#, fuzzy
+msgid "Latch"
+msgstr "Opóźnienie"
+
+#: gtk2_ardour/editor_actions.cc:58
+msgid "Layering"
+msgstr "Warstwy"
+
+#: gtk2_ardour/editor_actions.cc:59
+msgid "Link"
+msgstr "ÅÄ…cze"
+
+#: gtk2_ardour/editor_actions.cc:60
+#, fuzzy
+msgid "Locate To Markers"
+msgstr "Znaczniki położenia"
+
+#: gtk2_ardour/editor_actions.cc:61
+#: gtk2_ardour/editor_actions.cc:613
+msgid "Markers"
+msgstr "Znaczniki"
+
+#: gtk2_ardour/editor_actions.cc:62
+msgid "Meter falloff"
+msgstr "Zmniejszanie metrum"
+
+#: gtk2_ardour/editor_actions.cc:63
+msgid "Meter hold"
+msgstr "Przytrzymanie metrum"
+
+#: gtk2_ardour/editor_actions.cc:64
+msgid "Misc Options"
+msgstr "Różne"
+
+#: gtk2_ardour/editor_actions.cc:65
+msgid "Monitoring"
+msgstr "Monitorowanie"
+
+#: gtk2_ardour/editor_actions.cc:66
+#: gtk2_ardour/editor.cc:151
+#: gtk2_ardour/editor.cc:3446
+msgid "Active Mark"
+msgstr "Wskaźnik"
+
+#: gtk2_ardour/editor_actions.cc:67
+#: gtk2_ardour/editor_actions.cc:562
+#: gtk2_ardour/editor.cc:139
+#: gtk2_ardour/editor.cc:149
+#: gtk2_ardour/editor.cc:2847
+#: gtk2_ardour/editor.cc:2873
+#: gtk2_ardour/editor.cc:3417
+#: gtk2_ardour/editor.cc:3442
+msgid "Playhead"
+msgstr "GÅ‚owica"
+
+#: gtk2_ardour/editor_actions.cc:68
+#: gtk2_ardour/editor.cc:1891
+#: gtk2_ardour/editor.cc:2062
+#: gtk2_ardour/editor.cc:2118
+msgid "Nudge"
+msgstr "Pchnij"
+
+#: gtk2_ardour/editor_actions.cc:70
+msgid "Primary Clock"
+msgstr "Zegar podstawowy"
+
+#: gtk2_ardour/editor_actions.cc:71
+msgid "Pullup / Pulldown"
+msgstr ""
+
+#: gtk2_ardour/editor_actions.cc:72
+msgid "Region"
+msgstr "Obszar"
+
+#: gtk2_ardour/editor_actions.cc:73
+msgid "Region operations"
+msgstr "Operacje na obszarach"
+
+#: gtk2_ardour/editor_actions.cc:74
+msgid "Gain"
+msgstr "Wzmocnienie"
+
+#: gtk2_ardour/editor_actions.cc:75
+msgid "Rulers"
+msgstr "Linijki"
+
+#: gtk2_ardour/editor_actions.cc:76
+msgid "Scroll"
+msgstr "Przewijanie"
+
+#: gtk2_ardour/editor_actions.cc:77
+msgid "Secondary Clock"
+msgstr "Zegar dodatkowy"
+
+#: gtk2_ardour/editor_actions.cc:78
+#: gtk2_ardour/editor_actions.cc:79
+#: gtk2_ardour/editor.cc:2021
+#: gtk2_ardour/editor.cc:2096
+msgid "Select"
+msgstr "Zaznacz"
+
+#: gtk2_ardour/editor_actions.cc:80
+#: gtk2_ardour/editor_actions.cc:441
+msgid "Separate"
+msgstr "Oddziel"
+
+#: gtk2_ardour/editor_actions.cc:81
+#: gtk2_ardour/editor.cc:1201
+#: gtk2_ardour/editor.cc:1209
+#: gtk2_ardour/editor.cc:4320
+#: gtk2_ardour/editor.cc:4347
+msgid "Loop"
+msgstr "Pętla"
+
+#: gtk2_ardour/editor_actions.cc:82
+#: gtk2_ardour/editor.cc:1214
+#: gtk2_ardour/editor.cc:1222
+msgid "Punch"
+msgstr "Przełącznik"
+
+#: gtk2_ardour/editor_actions.cc:83
+#: gtk2_ardour/mixer_strip.cc:88
+#: gtk2_ardour/mixer_strip.cc:423
+#: gtk2_ardour/route_time_axis.cc:186
+msgid "Solo"
+msgstr "Solo"
+
+#: gtk2_ardour/editor_actions.cc:84
+msgid "Subframes"
+msgstr "Podklatki"
+
+#: gtk2_ardour/editor_actions.cc:86
+#: gtk2_ardour/editor_actions.cc:610
+#: gtk2_ardour/editor.cc:195
+#: gtk2_ardour/tempo_dialog.cc:39
+#: gtk2_ardour/tempo_dialog.cc:58
+msgid "Tempo"
+msgstr "Tempo"
+
+#: gtk2_ardour/editor_actions.cc:87
+msgid "Timecode fps"
+msgstr "Klatek na sekundÄ™ licznika czasu"
+
+#: gtk2_ardour/editor_actions.cc:89
+#: gtk2_ardour/analysis_window.cc:67
+msgid "Track"
+msgstr "Ścieżka"
+
+#: gtk2_ardour/editor_actions.cc:90
+msgid "Tools"
+msgstr "Narzędzia"
+
+#: gtk2_ardour/editor_actions.cc:91
+#: gtk2_ardour/editor.cc:1903
+#: gtk2_ardour/gain_meter.cc:169
+#: gtk2_ardour/gain_meter.cc:904
+#: gtk2_ardour/panner_ui.cc:97
+#: gtk2_ardour/panner_ui.cc:786
+msgid "Trim"
+msgstr "Przytnij"
+
+#: gtk2_ardour/editor_actions.cc:92
+msgid "View"
+msgstr "Widok"
+
+#: gtk2_ardour/editor_actions.cc:93
+msgid "Waveforms"
+msgstr "Wykres fali"
+
+#: gtk2_ardour/editor_actions.cc:94
+#: gtk2_ardour/editor_actions.cc:95
+msgid "Zoom"
+msgstr "Powiększenie"
+
+#: gtk2_ardour/editor_actions.cc:96
+msgid "Zoom Focus"
+msgstr "Powiększanie do"
+
+#: gtk2_ardour/editor_actions.cc:98
+msgid "Link Region/Track Selection"
+msgstr ""
+
+#: gtk2_ardour/editor_actions.cc:99
+msgid "Break drag"
+msgstr ""
+
+#: gtk2_ardour/editor_actions.cc:101
+msgid "Show Editor Mixer"
+msgstr "Mikser obok edytora"
+
+#: gtk2_ardour/editor_actions.cc:106
+msgid "Span Entire Overlap"
+msgstr "Obejmują wszystkie nakładające się fragmenty"
+
+#: gtk2_ardour/editor_actions.cc:111
+#: gtk2_ardour/editor.cc:526
+#: gtk2_ardour/mixer_strip.cc:977
+#: gtk2_ardour/mixer_ui.cc:116
+#: gtk2_ardour/plugin_ui.cc:338
+#: gtk2_ardour/route_time_axis.cc:514
+msgid "Active"
+msgstr "Aktywne"
+
+#: gtk2_ardour/editor_actions.cc:113
+#: gtk2_ardour/editor.cc:500
+#: gtk2_ardour/editor.cc:527
+#: gtk2_ardour/mixer_ui.cc:90
+#: gtk2_ardour/mixer_ui.cc:117
+#: gtk2_ardour/analysis_window.cc:68
+msgid "Show"
+msgstr "Wyświetl"
+
+#: gtk2_ardour/editor_actions.cc:115
+msgid "Created Automatically"
+msgstr "Tworzenie automatyczne"
+
+#: gtk2_ardour/editor_actions.cc:118
+msgid "Playhead to Next Region Boundary"
+msgstr "Do granicy następnego obszaru"
+
+#: gtk2_ardour/editor_actions.cc:120
+msgid "Playhead to Previous Region Boundary"
+msgstr "Do granicy poprzedniego obszaru"
+
+#: gtk2_ardour/editor_actions.cc:123
+msgid "Playhead to Next Region Start"
+msgstr "Do początku następnego obszaru"
+
+#: gtk2_ardour/editor_actions.cc:125
+msgid "Playhead to Next Region End"
+msgstr "Do końca następnego obszaru"
+
+#: gtk2_ardour/editor_actions.cc:127
+msgid "Playhead to Next Region Sync"
+msgstr "Do następnej synchronizacji obszaru"
+
+#: gtk2_ardour/editor_actions.cc:130
+msgid "Playhead to Previous Region Start"
+msgstr "Do poczÄ…tku poprzedniego obszaru"
+
+#: gtk2_ardour/editor_actions.cc:132
+msgid "Playhead to Previous Region End"
+msgstr "Do końca poprzedniego obszaru"
+
+#: gtk2_ardour/editor_actions.cc:134
+msgid "Playhead to Previous Region Sync"
+msgstr "Do poprzedniej synchronizacji obszaru"
+
+#: gtk2_ardour/editor_actions.cc:137
+msgid "to Next Region Boundary"
+msgstr "Do granic następnego obszaru"
+
+#: gtk2_ardour/editor_actions.cc:139
+msgid "to Previous Region Boundary"
+msgstr "Do granic poprzedniego obszaru"
+
+#: gtk2_ardour/editor_actions.cc:142
+msgid "to Next Region Start"
+msgstr "Do początku następnego obszaru"
+
+#: gtk2_ardour/editor_actions.cc:144
+msgid "to Next Region End"
+msgstr "Do końca następnego obszaru"
+
+#: gtk2_ardour/editor_actions.cc:146
+msgid "to Next Region Sync"
+msgstr "Do następnej synchronizacji obszaru"
+
+#: gtk2_ardour/editor_actions.cc:149
+msgid "to Previous Region Start"
+msgstr "Do poczÄ…tku poprzedniego obszaru"
+
+#: gtk2_ardour/editor_actions.cc:151
+msgid "to Previous Region End"
+msgstr "Do końca poprzedniego obszaru"
+
+#: gtk2_ardour/editor_actions.cc:153
+msgid "to Previous Region Sync"
+msgstr "Do poprzedniej synchronizacji obszaru"
+
+#: gtk2_ardour/editor_actions.cc:156
+msgid "to Range Start"
+msgstr "Do poczÄ…tku zakresu"
+
+#: gtk2_ardour/editor_actions.cc:158
+msgid "to Range End"
+msgstr "Do końca zakresu"
+
+#: gtk2_ardour/editor_actions.cc:161
+msgid "Playhead to Range Start"
+msgstr "GÅ‚owica do poczÄ…tku zakresu"
+
+#: gtk2_ardour/editor_actions.cc:163
+msgid "Playhead to Range End"
+msgstr "Głowica do końca zakresu"
+
+#: gtk2_ardour/editor_actions.cc:166
+#: gtk2_ardour/editor.cc:2004
+#: gtk2_ardour/editor.cc:2087
+#: gtk2_ardour/redirect_box.cc:1195
+msgid "Select All"
+msgstr "Wszystko"
+
+#: gtk2_ardour/editor_actions.cc:168
+#: gtk2_ardour/redirect_box.cc:1196
+msgid "Deselect All"
+msgstr "Nic"
+
+#: gtk2_ardour/editor_actions.cc:170
+msgid "Invert Selection"
+msgstr "Odwróć zaznaczenie"
+
+#: gtk2_ardour/editor_actions.cc:172
+#: gtk2_ardour/editor.cc:2011
+msgid "Select All After Edit Point"
+msgstr "Wszystko za punktem edycji"
+
+#: gtk2_ardour/editor_actions.cc:174
+#: gtk2_ardour/editor.cc:2012
+msgid "Select All Before Edit Point"
+msgstr "Wszystko przed punktem edycji"
+
+#: gtk2_ardour/editor_actions.cc:177
+#, fuzzy
+msgid "Select All Overlapping Edit Range"
+msgstr "Wszystko w zakresie"
+
+#: gtk2_ardour/editor_actions.cc:179
+#, fuzzy
+msgid "Select All Inside Edit Range"
+msgstr "Wszystko w zakresie"
+
+#: gtk2_ardour/editor_actions.cc:182
+#, fuzzy
+msgid "Select Edit Range"
+msgstr "Zaznacz zakres"
+
+#: gtk2_ardour/editor_actions.cc:185
+msgid "Select All in Punch Range"
+msgstr "Wszystko w zakresie przełącznika"
+
+#: gtk2_ardour/editor_actions.cc:187
+msgid "Select All in Loop Range"
+msgstr "Wszystko w zakresie pętli"
+
+#: gtk2_ardour/editor_actions.cc:190
+msgid "Select Next Track/Bus"
+msgstr "Zaznacz następną ścieżkę/szynę"
+
+#: gtk2_ardour/editor_actions.cc:192
+msgid "Select Previous Track/Bus"
+msgstr "Zaznacz poprzednią ścieżkę/szynę"
+
+#: gtk2_ardour/editor_actions.cc:196
+msgid "Locate to Mark 1"
+msgstr "Przejdź do znacznika 1"
+
+#: gtk2_ardour/editor_actions.cc:198
+msgid "Locate to Mark 2"
+msgstr "Przejdź do znacznika 2"
+
+#: gtk2_ardour/editor_actions.cc:200
+msgid "Locate to Mark 3"
+msgstr "Przejdź do znacznika 3"
+
+#: gtk2_ardour/editor_actions.cc:202
+msgid "Locate to Mark 4"
+msgstr "Przejdź do znacznika 4"
+
+#: gtk2_ardour/editor_actions.cc:204
+msgid "Locate to Mark 5"
+msgstr "Przejdź do znacznika 5"
+
+#: gtk2_ardour/editor_actions.cc:206
+msgid "Locate to Mark 6"
+msgstr "Przejdź do znacznika 6"
+
+#: gtk2_ardour/editor_actions.cc:208
+msgid "Locate to Mark 7"
+msgstr "Przejdź do znacznika 7"
+
+#: gtk2_ardour/editor_actions.cc:210
+msgid "Locate to Mark 8"
+msgstr "Przejdź do znacznika 8"
+
+#: gtk2_ardour/editor_actions.cc:212
+msgid "Locate to Mark 9"
+msgstr "Przejdź do znacznika 9"
+
+#: gtk2_ardour/editor_actions.cc:215
+msgid "Jump Forward to Mark"
+msgstr "Do następnego znacznika"
+
+#: gtk2_ardour/editor_actions.cc:217
+msgid "Jump Backward to Mark"
+msgstr "Do poprzedniego znacznika"
+
+#: gtk2_ardour/editor_actions.cc:219
+msgid "Add Mark from Playhead"
+msgstr "Dodaj znacznik w położeniu głowicy"
+
+#: gtk2_ardour/editor_actions.cc:222
+msgid "Nudge Forward"
+msgstr "Do przodu"
+
+#: gtk2_ardour/editor_actions.cc:224
+msgid "Nudge Next Forward"
+msgstr "Pchnij następny do przodu"
+
+#: gtk2_ardour/editor_actions.cc:226
+msgid "Nudge Backward"
+msgstr "Do tyłu"
+
+#: gtk2_ardour/editor_actions.cc:228
+msgid "Nudge Next Backward"
+msgstr "Pchnij następny do tyłu"
+
+#: gtk2_ardour/editor_actions.cc:231
+msgid "Nudge Playhead Forward"
+msgstr "Do przodu"
+
+#: gtk2_ardour/editor_actions.cc:233
+msgid "Nudge Playhead Backward"
+msgstr "Do tyłu"
+
+#: gtk2_ardour/editor_actions.cc:235
+msgid "Forward To Grid"
+msgstr "Do siatki z przodu"
+
+#: gtk2_ardour/editor_actions.cc:237
+msgid "Backward To Grid"
+msgstr "Do siatki z tyłu"
+
+#: gtk2_ardour/editor_actions.cc:241
+#: gtk2_ardour/editor.cc:2838
+msgid "Zoom Out"
+msgstr "Pomniejsz"
+
+#: gtk2_ardour/editor_actions.cc:243
+#: gtk2_ardour/editor.cc:2832
+msgid "Zoom In"
+msgstr "Powiększ"
+
+#: gtk2_ardour/editor_actions.cc:245
+#: gtk2_ardour/editor.cc:2844
+msgid "Zoom to Session"
+msgstr "Dopasuj do sesji"
+
+#: gtk2_ardour/editor_actions.cc:247
+msgid "Zoom to Region"
+msgstr "Powiększanie do obszaru"
+
+#: gtk2_ardour/editor_actions.cc:249
+msgid "Toggle Zoom State"
+msgstr ""
+
+#: gtk2_ardour/editor_actions.cc:252
+msgid "Scroll Tracks Up"
+msgstr "Przewiń ścieżki do góry"
+
+#: gtk2_ardour/editor_actions.cc:254
+msgid "Scroll Tracks Down"
+msgstr "Przewiń ścieżki na dół"
+
+#: gtk2_ardour/editor_actions.cc:256
+msgid "Step Tracks Up"
+msgstr "Przesuń ścieżki w górę"
+
+#: gtk2_ardour/editor_actions.cc:258
+msgid "Step Tracks Down"
+msgstr "Przesuń ścieżki w dół"
+
+#: gtk2_ardour/editor_actions.cc:261
+msgid "Scroll Backward"
+msgstr "Przewiń do tyłu"
+
+#: gtk2_ardour/editor_actions.cc:263
+msgid "Scroll Forward"
+msgstr "Przewiń do przodu"
+
+#: gtk2_ardour/editor_actions.cc:265
+msgid "goto"
+msgstr "przejdź do"
+
+#: gtk2_ardour/editor_actions.cc:267
+msgid "Center Playhead"
+msgstr "Wyśrodkuj"
+
+#: gtk2_ardour/editor_actions.cc:269
+msgid "Center Active Marker"
+msgstr "Wyśrodkuj wskaźnik"
+
+#: gtk2_ardour/editor_actions.cc:272
+msgid "Playhead Forward"
+msgstr "GÅ‚owica do przodu"
+
+#: gtk2_ardour/editor_actions.cc:274
+msgid "Playhead Backward"
+msgstr "Głowica do tyłu"
+
+#: gtk2_ardour/editor_actions.cc:277
+msgid "Playhead To Active Mark"
+msgstr "Do wskaźnika"
+
+#: gtk2_ardour/editor_actions.cc:279
+msgid "Active Mark To Playhead"
+msgstr "Do głowicy"
+
+#: gtk2_ardour/editor_actions.cc:282
+#, fuzzy
+msgid "Trim Start At Edit Point"
+msgstr "PoczÄ…tek do punktu edycji"
+
+#: gtk2_ardour/editor_actions.cc:285
+#, fuzzy
+msgid "Trim End At Edit Point"
+msgstr "Podziel w punkcie edycji"
+
+#: gtk2_ardour/editor_actions.cc:289
+#, fuzzy
+msgid "Start To Edit Point"
+msgstr "PoczÄ…tek do punktu edycji"
+
+#: gtk2_ardour/editor_actions.cc:292
+#, fuzzy
+msgid "Edit Point To End"
+msgstr "Punkt edycji do końca"
+
+#: gtk2_ardour/editor_actions.cc:295
+#: gtk2_ardour/editor.cc:1900
+msgid "Trim To Loop"
+msgstr "Do pętli"
+
+#: gtk2_ardour/editor_actions.cc:298
+#: gtk2_ardour/editor.cc:1901
+msgid "Trim To Punch"
+msgstr "Do przełącznika"
+
+#: gtk2_ardour/editor_actions.cc:302
+msgid "Set Loop From Edit Range"
+msgstr "Ustaw pętlę w zaznaczeniu"
+
+#: gtk2_ardour/editor_actions.cc:304
+msgid "Set Loop From Region"
+msgstr "Ustaw pętlę w obszarze"
+
+#: gtk2_ardour/editor_actions.cc:307
+#: gtk2_ardour/editor.cc:1993
+msgid "Loop Region"
+msgstr "Zapętl obszar"
+
+#: gtk2_ardour/editor_actions.cc:309
+msgid "Set Punch From Edit Range"
+msgstr "Ustaw przełącznik w zaznaczeniu"
+
+#: gtk2_ardour/editor_actions.cc:311
+msgid "Set Punch From Region"
+msgstr "Ustaw przełącznik w obszarze"
+
+#: gtk2_ardour/editor_actions.cc:314
+msgid "Transpose"
+msgstr "Transponuj"
+
+#: gtk2_ardour/editor_actions.cc:318
+msgid "Set Fade In Length"
+msgstr "Zmień długość stopniowego wzmocnienia"
+
+#: gtk2_ardour/editor_actions.cc:320
+msgid "Toggle Fade In Active"
+msgstr "Przełącz stopniowe wzmocnienie"
+
+#: gtk2_ardour/editor_actions.cc:322
+msgid "Set Fade Out Length"
+msgstr "Zmień długość stopniowego wyciszenia"
+
+#: gtk2_ardour/editor_actions.cc:324
+msgid "Toggle Fade Out Active"
+msgstr "Przełącz stopniowe wyciszenie"
+
+#: gtk2_ardour/editor_actions.cc:327
+msgid "Align Regions Start"
+msgstr ""
+
+#: gtk2_ardour/editor_actions.cc:330
+msgid "Align Regions Start Relative"
+msgstr ""
+
+#: gtk2_ardour/editor_actions.cc:333
+msgid "Align Regions End"
+msgstr ""
+
+#: gtk2_ardour/editor_actions.cc:336
+msgid "Align Regions End Relative"
+msgstr ""
+
+#: gtk2_ardour/editor_actions.cc:340
+msgid "Align Regions Sync"
+msgstr ""
+
+#: gtk2_ardour/editor_actions.cc:343
+msgid "Align Regions Sync Relative"
+msgstr ""
+
+#: gtk2_ardour/editor_actions.cc:347
+msgid "Play From Edit Point"
+msgstr "Od punktu edycji"
+
+#: gtk2_ardour/editor_actions.cc:349
+msgid "Play from Edit Point & Return"
+msgstr "Od punktu edycji i powróć"
+
+#: gtk2_ardour/editor_actions.cc:352
+msgid "Play Edit Range"
+msgstr "Zaznaczenie"
+
+#: gtk2_ardour/editor_actions.cc:353
+msgid "Play Selected Region(s)"
+msgstr "Zaznaczone obszary"
+
+#: gtk2_ardour/editor_actions.cc:356
+msgid "Brush at Mouse"
+msgstr "Pędzel"
+
+#: gtk2_ardour/editor_actions.cc:359
+msgid "Playhead to Mouse"
+msgstr "Do kursora myszy"
+
+#: gtk2_ardour/editor_actions.cc:361
+msgid "Active Marker to Mouse"
+msgstr "Do kursora myszy"
+
+#: gtk2_ardour/editor_actions.cc:364
+msgid "Duplicate Region"
+msgstr "Duplikuj"
+
+#: gtk2_ardour/editor_actions.cc:367
+msgid "Multi-Duplicate Region"
+msgstr "Powiel"
+
+#: gtk2_ardour/editor_actions.cc:370
+msgid "Duplicate Range"
+msgstr "Duplikuj"
+
+#: gtk2_ardour/editor_actions.cc:373
+msgid "Insert Region"
+msgstr "Wstaw"
+
+#: gtk2_ardour/editor_actions.cc:376
+msgid "Normalize Region"
+msgstr "Normalizuj"
+
+#: gtk2_ardour/editor_actions.cc:379
+#: gtk2_ardour/editor.cc:1765
+#: gtk2_ardour/editor.cc:3869
+#: gtk2_ardour/editor_markers.cc:599
+#: gtk2_ardour/editor_markers.cc:1031
+#: gtk2_ardour/editor_mouse.cc:5211
+#: gtk2_ardour/imageframe_time_axis.cc:247
+#: gtk2_ardour/marker_time_axis.cc:207
+#: gtk2_ardour/mixer_strip.cc:975
+#: gtk2_ardour/redirect_box.cc:864
+#: gtk2_ardour/redirect_box.cc:1193
+#: gtk2_ardour/route_time_axis.cc:897
+#: gtk2_ardour/route_time_axis.cc:1373
+#: gtk2_ardour/route_ui.cc:827
+#: gtk2_ardour/visual_time_axis.cc:330
+msgid "Rename"
+msgstr "Zmień nazwę"
+
+#: gtk2_ardour/editor_actions.cc:382
+msgid "Auto-Rename"
+msgstr "Automatyczna zmiana nazwy"
+
+#: gtk2_ardour/editor_actions.cc:385
+msgid "Boost Region Gain"
+msgstr "Zwiększ wzmocnienie"
+
+#: gtk2_ardour/editor_actions.cc:388
+msgid "Cut Region Gain"
+msgstr "Zmniejsz wzmocnienie"
+
+#: gtk2_ardour/editor_actions.cc:391
+#: gtk2_ardour/rhythm_ferret.cc:42
+msgid "Split Region"
+msgstr "Dzielenie obszaru"
+
+#: gtk2_ardour/editor_actions.cc:394
+msgid "Set Region Sync Position"
+msgstr "Ustaw pozycjÄ™ synchronizacji"
+
+#: gtk2_ardour/editor_actions.cc:397
+msgid "Remove Region Sync"
+msgstr "Usuń synchronizację"
+
+#: gtk2_ardour/editor_actions.cc:400
+msgid "Raise Region"
+msgstr "Przesuń do przodu"
+
+#: gtk2_ardour/editor_actions.cc:403
+msgid "Lower Region"
+msgstr "Przesuń do tyłu"
+
+#: gtk2_ardour/editor_actions.cc:406
+msgid "Export Region"
+msgstr "Eksportuj obszar"
+
+#: gtk2_ardour/editor_actions.cc:409
+msgid "Lock Region"
+msgstr "Zablokuj"
+
+#: gtk2_ardour/editor_actions.cc:412
+#, fuzzy
+msgid "Glue Region To Bars&Beats"
+msgstr "Takty:Uderzenia"
+
+#: gtk2_ardour/editor_actions.cc:415
+msgid "Move To Original Position"
+msgstr "PrzenieÅ› do pozycji poczÄ…tkowej"
+
+#: gtk2_ardour/editor_actions.cc:418
+#: gtk2_ardour/editor.cc:1871
+msgid "Reverse"
+msgstr "Odwróć"
+
+#: gtk2_ardour/editor_actions.cc:421
+#: gtk2_ardour/editor.cc:1909
+msgid "Make mono regions"
+msgstr "Ustaw obszary mono"
+
+#: gtk2_ardour/editor_actions.cc:424
+#: gtk2_ardour/editor.cc:1914
+msgid "Fill Track"
+msgstr "Wypełnij ścieżkę"
+
+#: gtk2_ardour/editor_actions.cc:427
+msgid "Mute/Unmute Region"
+msgstr "Wycisz/wyłącz wyciszenie"
+
+#: gtk2_ardour/editor_actions.cc:431
+#: gtk2_ardour/editor.cc:3145
+msgid "Undo"
+msgstr "Cofnij"
+
+#: gtk2_ardour/editor_actions.cc:433
+#: gtk2_ardour/editor.cc:3154
+msgid "Redo"
+msgstr "Powtórz"
+
+#: gtk2_ardour/editor_actions.cc:436
+msgid "Export Session"
+msgstr "Ekspor sesji"
+
+#: gtk2_ardour/editor_actions.cc:438
+msgid "Export Range"
+msgstr "Eksport zakresu"
+
+#: gtk2_ardour/editor_actions.cc:444
+#, fuzzy
+msgid "Separate Using Punch Range"
+msgstr "Oddziel obszar w zakresie"
+
+#: gtk2_ardour/editor_actions.cc:447
+#, fuzzy
+msgid "Separate Using Loop Range"
+msgstr "Oddziel obszar w zakresie"
+
+#: gtk2_ardour/editor_actions.cc:450
+#: gtk2_ardour/editor_actions.cc:480
+msgid "Crop"
+msgstr "Przytnij"
+
+#: gtk2_ardour/editor_actions.cc:453
+#: gtk2_ardour/editor.cc:2029
+#: gtk2_ardour/editor.cc:2104
+#: gtk2_ardour/redirect_box.cc:1184
+msgid "Cut"
+msgstr "Wytnij"
+
+#: gtk2_ardour/editor_actions.cc:456
+#: gtk2_ardour/redirect_box.cc:1189
+#: gtk2_ardour/connection_editor.cc:55
+msgid "Delete"
+msgstr "Usuń"
+
+#: gtk2_ardour/editor_actions.cc:458
+#: gtk2_ardour/editor.cc:2030
+#: gtk2_ardour/editor.cc:2105
+#: gtk2_ardour/redirect_box.cc:1186
+msgid "Copy"
+msgstr "Skopiuj"
+
+#: gtk2_ardour/editor_actions.cc:460
+#: gtk2_ardour/editor.cc:2031
+#: gtk2_ardour/editor.cc:2106
+#: gtk2_ardour/redirect_box.cc:1192
+msgid "Paste"
+msgstr "Wklej"
+
+#: gtk2_ardour/editor_actions.cc:463
+msgid "Set Tempo from Region=Bar"
+msgstr "Ustaw tempo od obszar=takt"
+
+#: gtk2_ardour/editor_actions.cc:466
+msgid "Set Tempo from Edit Range=Bar"
+msgstr "Ustaw tempo od zaznaczenie=takt"
+
+#: gtk2_ardour/editor_actions.cc:469
+msgid "Split Regions At Percussion Onsets"
+msgstr ""
+
+#: gtk2_ardour/editor_actions.cc:472
+#: gtk2_ardour/rhythm_ferret.cc:36
+msgid "Rhythm Ferret"
+msgstr ""
+
+#: gtk2_ardour/editor_actions.cc:475
+msgid "Move Forward to Transient"
+msgstr "Do następnego przejścia"
+
+#: gtk2_ardour/editor_actions.cc:477
+msgid "Move Backwards to Transient"
+msgstr "Do poprzedniego przejścia"
+
+#: gtk2_ardour/editor_actions.cc:482
+msgid "Insert Chunk"
+msgstr "Wstaw fragment"
+
+#: gtk2_ardour/editor_actions.cc:485
+msgid "Split At Edit Point"
+msgstr "Podziel w punkcie edycji"
+
+#: gtk2_ardour/editor_actions.cc:488
+msgid "Start Range"
+msgstr "Rozpocznij zakres"
+
+#: gtk2_ardour/editor_actions.cc:490
+msgid "Finish Range"
+msgstr "Zakończ zakres"
+
+#: gtk2_ardour/editor_actions.cc:492
+msgid "Finish add Range"
+msgstr "Zakończ dodawanie zakresu"
+
+#: gtk2_ardour/editor_actions.cc:495
+#: gtk2_ardour/editor.cc:1952
+msgid "Extend Range to End of Region"
+msgstr "Rozszerz zakres do końca obszaru"
+
+#: gtk2_ardour/editor_actions.cc:497
+#: gtk2_ardour/editor.cc:1953
+msgid "Extend Range to Start of Region"
+msgstr "Rozszerz zakres do poczÄ…tku obszaru "
+
+#: gtk2_ardour/editor_actions.cc:500
+msgid "Follow Playhead"
+msgstr "Podążanie za głowicą"
+
+#: gtk2_ardour/editor_actions.cc:505
+#: gtk2_ardour/editor_ops.cc:5651
+msgid "Insert Time"
+msgstr "Czas wstawienia"
+
+#: gtk2_ardour/editor_actions.cc:509
+msgid "Toggle Active"
+msgstr "Przełącz aktywność"
+
+#: gtk2_ardour/editor_actions.cc:512
+#: gtk2_ardour/editor_actions.cc:653
+#: gtk2_ardour/editor.cc:1916
+#: gtk2_ardour/editor.cc:3864
+#: gtk2_ardour/editor_markers.cc:605
+#: gtk2_ardour/editor_markers.cc:661
+#: gtk2_ardour/imageframe_time_axis.cc:258
+#: gtk2_ardour/location_ui.cc:58
+#: gtk2_ardour/marker_time_axis.cc:214
+#: gtk2_ardour/mixer_strip.cc:996
+#: gtk2_ardour/route_time_axis.cc:519
+msgid "Remove"
+msgstr "Usuń"
+
+#: gtk2_ardour/editor_actions.cc:516
+#: gtk2_ardour/time_axis_view.cc:615
+msgid "Largest"
+msgstr "Największy"
+
+#: gtk2_ardour/editor_actions.cc:519
+#: gtk2_ardour/time_axis_view.cc:617
+msgid "Larger"
+msgstr "Większy"
+
+#: gtk2_ardour/editor_actions.cc:522
+#: gtk2_ardour/time_axis_view.cc:616
+msgid "Large"
+msgstr "Duży"
+
+#: gtk2_ardour/editor_actions.cc:528
+#: gtk2_ardour/time_axis_view.cc:620
+msgid "Small"
+msgstr "Mały"
+
+#: gtk2_ardour/editor_actions.cc:532
+#: gtk2_ardour/time_axis_view.cc:619
+msgid "Smaller"
+msgstr "Mniejszy"
+
+#: gtk2_ardour/editor_actions.cc:539
+msgid "Zoom Focus Left"
+msgstr "Do lewej"
+
+#: gtk2_ardour/editor_actions.cc:541
+msgid "Zoom Focus Right"
+msgstr "Do prawej"
+
+#: gtk2_ardour/editor_actions.cc:543
+msgid "Zoom Focus Center"
+msgstr "Do środka"
+
+#: gtk2_ardour/editor_actions.cc:545
+msgid "Zoom Focus Playhead"
+msgstr "Do głowicy"
+
+#: gtk2_ardour/editor_actions.cc:547
+msgid "Zoom Focus Mouse"
+msgstr "Do kursora myszy"
+
+#: gtk2_ardour/editor_actions.cc:549
+msgid "Zoom Focus Edit"
+msgstr "Do wskaźnika"
+
+#: gtk2_ardour/editor_actions.cc:555
+msgid "Object Tool"
+msgstr "Narzędzie obiektów"
+
+#: gtk2_ardour/editor_actions.cc:556
+msgid "Range Tool"
+msgstr "Narzędzie zakresów"
+
+#: gtk2_ardour/editor_actions.cc:557
+msgid "Gain Tool"
+msgstr "Narzędzie wzmocnienia"
+
+#: gtk2_ardour/editor_actions.cc:558
+msgid "Zoom Tool"
+msgstr "Narzędzie powiększenia"
+
+#: gtk2_ardour/editor_actions.cc:559
+msgid "Timefx Tool"
+msgstr "Narzędzie rozciągania w czasie"
+
+#: gtk2_ardour/editor_actions.cc:563
+#: gtk2_ardour/editor.cc:141
+#: gtk2_ardour/editor.cc:150
+#: gtk2_ardour/editor.cc:3444
+msgid "Mouse"
+msgstr "Wskaźnik myszy"
+
+#: gtk2_ardour/editor_actions.cc:564
+#: gtk2_ardour/editor.cc:140
+#: gtk2_ardour/editor.cc:3415
+#: gtk2_ardour/marker_time_axis.cc:255
+msgid "Marker"
+msgstr "Znacznik"
+
+#: gtk2_ardour/editor_actions.cc:566
+msgid "Change edit point"
+msgstr "Zmień punkt edycji"
+
+#: gtk2_ardour/editor_actions.cc:567
+msgid "Change edit point (w/Marker)"
+msgstr "Zmień punkt edycji (w/Marker)"
+
+#: gtk2_ardour/editor_actions.cc:569
+msgid "Splice"
+msgstr "Klocek"
+
+#: gtk2_ardour/editor_actions.cc:570
+msgid "Slide"
+msgstr "Åšlizg"
+
+#: gtk2_ardour/editor_actions.cc:571
+#: gtk2_ardour/editor.cc:1786
+#: gtk2_ardour/editor_markers.cc:600
+msgid "Lock"
+msgstr "Zablokuj"
+
+#: gtk2_ardour/editor_actions.cc:572
+msgid "Toggle Edit Mode"
+msgstr "Przełącz tryb edycji"
+
+#: gtk2_ardour/editor_actions.cc:574
+msgid "Snap To"
+msgstr "PrzyciÄ…ganie"
+
+#: gtk2_ardour/editor_actions.cc:575
+msgid "Snap Mode"
+msgstr "Tryb przyciÄ…gania"
+
+#: gtk2_ardour/editor_actions.cc:578
+#: gtk2_ardour/editor.cc:132
+#: gtk2_ardour/editor.cc:3374
+msgid "No Grid"
+msgstr "Bez siatki"
+
+#: gtk2_ardour/editor_actions.cc:579
+#: gtk2_ardour/editor.cc:133
+#: gtk2_ardour/editor.cc:3376
+msgid "Grid"
+msgstr "Siatka"
+
+#: gtk2_ardour/editor_actions.cc:580
+#: gtk2_ardour/editor.cc:134
+#: gtk2_ardour/editor.cc:3378
+msgid "Magnetic"
+msgstr "PrzyciÄ…ganie"
+
+#: gtk2_ardour/editor_actions.cc:582
+#, fuzzy
+msgid "Next Snap Mode"
+msgstr "Tryb przyciÄ…gania"
+
+#: gtk2_ardour/editor_actions.cc:583
+msgid "Next Snap Choice"
+msgstr ""
+
+#: gtk2_ardour/editor_actions.cc:588
+msgid "Snap to cd frame"
+msgstr "Do klatek cd"
+
+#: gtk2_ardour/editor_actions.cc:589
+msgid "Snap to SMPTE frame"
+msgstr "Do klatek SMPTE"
+
+#: gtk2_ardour/editor_actions.cc:590
+msgid "Snap to SMPTE seconds"
+msgstr "Do sekund SMPTE"
+
+#: gtk2_ardour/editor_actions.cc:591
+msgid "Snap to SMPTE minutes"
+msgstr "Do minut SMPTE"
+
+#: gtk2_ardour/editor_actions.cc:592
+msgid "Snap to seconds"
+msgstr "Do sekund"
+
+#: gtk2_ardour/editor_actions.cc:593
+msgid "Snap to minutes"
+msgstr "Do minut"
+
+#: gtk2_ardour/editor_actions.cc:594
+msgid "Snap to thirtyseconds"
+msgstr "Do trzydziestodwójek"
+
+#: gtk2_ardour/editor_actions.cc:595
+msgid "Snap to asixteenthbeat"
+msgstr "Do szesnastek"
+
+#: gtk2_ardour/editor_actions.cc:596
+msgid "Snap to eighths"
+msgstr "Do ósemek"
+
+#: gtk2_ardour/editor_actions.cc:597
+msgid "Snap to quarters"
+msgstr "Do ćwierćnut"
+
+#: gtk2_ardour/editor_actions.cc:598
+msgid "Snap to thirds"
+msgstr "Do trzeciej części nuty"
+
+#: gtk2_ardour/editor_actions.cc:599
+msgid "Snap to beat"
+msgstr "Do uderzeń"
+
+#: gtk2_ardour/editor_actions.cc:600
+msgid "Snap to bar"
+msgstr "Do taktów"
+
+#: gtk2_ardour/editor_actions.cc:601
+msgid "Snap to mark"
+msgstr "Do znaczników"
+
+#: gtk2_ardour/editor_actions.cc:602
+msgid "Snap to region start"
+msgstr "Do poczÄ…tku obszaru"
+
+#: gtk2_ardour/editor_actions.cc:603
+msgid "Snap to region end"
+msgstr "Do końca obszaru"
+
+#: gtk2_ardour/editor_actions.cc:604
+msgid "Snap to region sync"
+msgstr "Do synchronizacji obszaru"
+
+#: gtk2_ardour/editor_actions.cc:605
+msgid "Snap to region boundary"
+msgstr "Do granic obszaru"
+
+#: gtk2_ardour/editor_actions.cc:611
+#: gtk2_ardour/editor.cc:196
+#: gtk2_ardour/tempo_dialog.cc:273
+#: gtk2_ardour/tempo_dialog.cc:288
+msgid "Meter"
+msgstr "Metrum"
+
+#: gtk2_ardour/editor_actions.cc:612
+msgid "Ranges"
+msgstr "Zakresy"
+
+#: gtk2_ardour/editor_actions.cc:614
+#: gtk2_ardour/editor.cc:200
+msgid "CD Markers"
+msgstr "Znaczniki CD"
+
+#: gtk2_ardour/editor_actions.cc:615
+msgid "Loop/Punch"
+msgstr "Pętla/przełącznik"
+
+#: gtk2_ardour/editor_actions.cc:619
+msgid "Min:Sec"
+msgstr "Minuty i sekundy"
+
+#: gtk2_ardour/editor_actions.cc:647
+msgid "Sort"
+msgstr "Sortuj"
+
+#: gtk2_ardour/editor_actions.cc:655
+msgid "Show all"
+msgstr "Wyświetl wszystko"
+
+#: gtk2_ardour/editor_actions.cc:656
+msgid "Show automatic regions"
+msgstr "Wyświetl obszary automatyczne"
+
+#: gtk2_ardour/editor_actions.cc:658
+msgid "Ascending"
+msgstr "RosnÄ…co"
+
+#: gtk2_ardour/editor_actions.cc:660
+msgid "Descending"
+msgstr "MalejÄ…co"
+
+#: gtk2_ardour/editor_actions.cc:663
+msgid "By Region Name"
+msgstr "Według nazwy obszaru"
+
+#: gtk2_ardour/editor_actions.cc:665
+msgid "By Region Length"
+msgstr "Według długości obszaru"
+
+#: gtk2_ardour/editor_actions.cc:667
+msgid "By Region Position"
+msgstr "Według pozycji obszaru"
+
+#: gtk2_ardour/editor_actions.cc:669
+msgid "By Region Timestamp"
+msgstr "Według timestamp obszaru"
+
+#: gtk2_ardour/editor_actions.cc:671
+msgid "By Region Start in File"
+msgstr "Według początku obszaru w pliku"
+
+#: gtk2_ardour/editor_actions.cc:673
+msgid "By Region End in File"
+msgstr "Według końca obszaru w pliku"
+
+#: gtk2_ardour/editor_actions.cc:675
+msgid "By Source File Name"
+msgstr "Według nazwy pliku źrodłowego"
+
+#: gtk2_ardour/editor_actions.cc:677
+msgid "By Source File Length"
+msgstr "Według długości pliku źródłowego"
+
+#: gtk2_ardour/editor_actions.cc:679
+msgid "By Source File Creation Date"
+msgstr "Według daty utworzenia pliku źródłowego"
+
+#: gtk2_ardour/editor_actions.cc:681
+msgid "By Source Filesystem"
+msgstr "Według systemu plików źródła"
+
+#: gtk2_ardour/editor_actions.cc:687
+msgid "Import"
+msgstr "Importuj"
+
+#: gtk2_ardour/editor_actions.cc:689
+msgid "Import to Region List"
+msgstr "Do poczÄ…tku obszaru"
+
+#: gtk2_ardour/editor_actions.cc:692
+msgid "Show Waveforms"
+msgstr "Wykres fali"
+
+#: gtk2_ardour/editor_actions.cc:694
+msgid "Show Waveforms While Recording"
+msgstr "Wykres fali podczas nagrywania"
+
+#: gtk2_ardour/editor_actions.cc:695
+msgid "Show Measures"
+msgstr "Linie"
+
+#: gtk2_ardour/editor_actions.cc:706
+msgid "Show Logo"
+msgstr "Wyświetlanie logo"
+
+#: gtk2_ardour/editor_actions.cc:712
+msgid "Later is Higher"
+msgstr "Późniejsza jest wyżej"
+
+#: gtk2_ardour/editor_actions.cc:713
+msgid "Most Recently Moved/Added is Higher"
+msgstr "Ostatnio przesunięta/dodana jest wyżej"
+
+#: gtk2_ardour/editor_actions.cc:714
+msgid "Most Recently Added is Higher"
+msgstr "Ostatnio dodana jest wyżej"
+
+#: gtk2_ardour/editor_actions.cc:718
+msgid "23.976"
+msgstr "23.976"
+
+#: gtk2_ardour/editor_actions.cc:719
+msgid "24"
+msgstr "24"
+
+#: gtk2_ardour/editor_actions.cc:720
+msgid "24.976"
+msgstr "24.976"
+
+#: gtk2_ardour/editor_actions.cc:721
+msgid "25"
+msgstr "25"
+
+#: gtk2_ardour/editor_actions.cc:722
+msgid "29.97"
+msgstr "29.97"
+
+#: gtk2_ardour/editor_actions.cc:723
+msgid "29.97 drop"
+msgstr "29.97 drop"
+
+#: gtk2_ardour/editor_actions.cc:724
+msgid "30"
+msgstr "30"
+
+#: gtk2_ardour/editor_actions.cc:725
+msgid "30 drop"
+msgstr "30 drop"
+
+#: gtk2_ardour/editor_actions.cc:726
+msgid "59.94"
+msgstr "59.94"
+
+#: gtk2_ardour/editor_actions.cc:727
+msgid "60"
+msgstr "60"
+
+#: gtk2_ardour/editor_actions.cc:731
+msgid "+4.1667% + 0.1%"
+msgstr "+4.1667% + 0.1%"
+
+#: gtk2_ardour/editor_actions.cc:732
+msgid "+4.1667%"
+msgstr "+4.1667%"
+
+#: gtk2_ardour/editor_actions.cc:733
+msgid "+4.1667% - 0.1%"
+msgstr "+4.1667% - 0.1%"
+
+#: gtk2_ardour/editor_actions.cc:734
+msgid "+ 0.1%"
+msgstr "+ 0.1%"
+
+#: gtk2_ardour/editor_actions.cc:735
+#: gtk2_ardour/engine_dialog.cc:101
+#: gtk2_ardour/engine_dialog.cc:106
+#: gtk2_ardour/engine_dialog.cc:495
+#: gtk2_ardour/export_dialog.cc:78
+#: gtk2_ardour/export_dialog.cc:92
+#: gtk2_ardour/export_dialog.cc:956
+#: gtk2_ardour/export_dialog.cc:1294
+#: gtk2_ardour/route_ui.cc:526
+msgid "None"
+msgstr "Brak"
+
+#: gtk2_ardour/editor_actions.cc:736
+msgid "- 0.1%"
+msgstr "- 0.1%"
+
+#: gtk2_ardour/editor_actions.cc:737
+msgid "-4.1667% + 0.1%"
+msgstr "-4.1667% + 0.1%"
+
+#: gtk2_ardour/editor_actions.cc:738
+msgid "-4.1667%"
+msgstr "-4.1667%"
+
+#: gtk2_ardour/editor_actions.cc:739
+msgid "-4.1667% - 0.1%"
+msgstr "-4.1667% - 0.1%"
+
+#: gtk2_ardour/editor_actions.cc:743
+msgid "80 per frame"
+msgstr "80 na klatkÄ™"
+
+#: gtk2_ardour/editor_actions.cc:745
+msgid "100 per frame"
+msgstr "100 na klatkÄ™"
+
+#: gtk2_ardour/editor_actions.cc:1139
+#: gtk2_ardour/editor_actions.cc:1248
+#: gtk2_ardour/editor_actions.cc:1259
+#: gtk2_ardour/editor_actions.cc:1312
+#: gtk2_ardour/editor_actions.cc:1323
+#: gtk2_ardour/editor_actions.cc:1370
+#: gtk2_ardour/editor_actions.cc:1380
+msgid "programming error: %1: %2"
+msgstr "błąd programowania: %1: %2"
+
+#: gtk2_ardour/editor_actions.cc:1541
+msgid "Configuraton is using unhandled subframes per frame value: %1"
+msgstr ""
+
+#: gtk2_ardour/editor_actions.cc:1573
+#: gtk2_ardour/route_time_axis.cc:544
+#: gtk2_ardour/route_time_axis.cc:599
+#: gtk2_ardour/route_time_axis.cc:871
+msgid "programming error: %1 %2"
+msgstr "błąd programowania: %1 %2"
+
+#: gtk2_ardour/editor_audio_import.cc:73
+#: gtk2_ardour/editor_audio_import.cc:94
+msgid "You can't import or embed an audiofile until you have a session loaded."
+msgstr "Nie możesz importować lub osadzać pliku dźwiękowego dopóki nie wczytasz sesji."
+
+#: gtk2_ardour/editor_audio_import.cc:79
+#: gtk2_ardour/editor_audio_import.cc:112
+msgid "Add existing audio"
+msgstr "Dodaj istniejÄ…ce audio"
+
+#: gtk2_ardour/editor_audio_import.cc:224
+msgid "The session already contains a source file named %1. This file will be imported as a new file, please confirm."
+msgstr ""
+
+#: gtk2_ardour/editor_audio_import.cc:226
+msgid "A source file %1 already exists. This operation will not update that source but import the file %2 as a new source, please confirm."
+msgstr ""
+
+#: gtk2_ardour/editor_audio_import.cc:495
+msgid "importing %1"
+msgstr "importowanie %1"
+
+#: gtk2_ardour/editor_audio_import.cc:500
+msgid "Cancel Import"
+msgstr "Anuluj import"
+
+#: gtk2_ardour/editor_audio_import.cc:604
+msgid "Editor: cannot open file \"%1\", (%2)"
+msgstr "Edytor: nie można otworzyć pliku \"%1\", (%2)"
+
+#: gtk2_ardour/editor_audio_import.cc:612
+msgid "Cancel entire import"
+msgstr "Anuluj cały import"
+
+#: gtk2_ardour/editor_audio_import.cc:613
+msgid "Don't embed it"
+msgstr "Nie osadzaj tego"
+
+#: gtk2_ardour/editor_audio_import.cc:614
+msgid "Embed all without questions"
+msgstr "Osadź wszystko bez zadawania pytań"
+
+#: gtk2_ardour/editor_audio_import.cc:617
+#: gtk2_ardour/editor_audio_import.cc:644
+msgid ""
+"%1\n"
+"This audiofile's sample rate doesn't match the session sample rate!"
+msgstr ""
+"%1\n"
+"Częstotliwość próbkowania tego pliku nie odpowiada częstotliwości próbkowania sesji!"
+
+#: gtk2_ardour/editor_audio_import.cc:640
+#: gtk2_ardour/editor.cc:3718
+#: gtk2_ardour/editor_ops.cc:5158
+#: gtk2_ardour/editor_timefx.cc:88
+#: gtk2_ardour/export_dialog.cc:1034
+#: gtk2_ardour/io_selector.cc:60
+#: gtk2_ardour/io_selector.cc:750
+#: gtk2_ardour/redirect_box.cc:1026
+#: gtk2_ardour/sfdb_ui.cc:741
+#: gtk2_ardour/tempo_dialog.cc:41
+#: gtk2_ardour/tempo_dialog.cc:60
+#: gtk2_ardour/tempo_dialog.cc:275
+#: gtk2_ardour/tempo_dialog.cc:290
+#: gtk2_ardour/connection_editor.cc:59
+msgid "Cancel"
+msgstr "Anuluj"
+
+#: gtk2_ardour/editor_audio_import.cc:641
+msgid "Embed it anyway"
+msgstr "Osadź mimo to"
+
+#: gtk2_ardour/editor_audio_import.cc:689
+msgid "could not open %1"
+msgstr "nie można otworzyć %1"
+
+#: gtk2_ardour/editor_audio_import.cc:819
+msgid "insert sndfile"
+msgstr "wstaw plik dźwiękowy"
+
+#: gtk2_ardour/editor_canvas.cc:138
+msgid "VerboseCanvasCursor"
+msgstr ""
+
+#: gtk2_ardour/editor.cc:110
+#: gtk2_ardour/editor.cc:3348
+msgid "CD Frames"
+msgstr "Klatki CD"
+
+#: gtk2_ardour/editor.cc:111
+#: gtk2_ardour/editor.cc:3350
+msgid "SMPTE Frames"
+msgstr "Klatki SMPTE"
+
+#: gtk2_ardour/editor.cc:112
+#: gtk2_ardour/editor.cc:2861
+#: gtk2_ardour/editor.cc:3352
+msgid "SMPTE Seconds"
+msgstr "Sekundy SMPTE"
+
+#: gtk2_ardour/editor.cc:113
+#: gtk2_ardour/editor.cc:3354
+msgid "SMPTE Minutes"
+msgstr "Minuty SMPTE"
+
+#: gtk2_ardour/editor.cc:114
+#: gtk2_ardour/editor.cc:3356
+msgid "Seconds"
+msgstr "Sekundy"
+
+#: gtk2_ardour/editor.cc:115
+#: gtk2_ardour/editor.cc:3358
+msgid "Minutes"
+msgstr "Minuty"
+
+#: gtk2_ardour/editor.cc:116
+#: gtk2_ardour/editor.cc:3332
+msgid "Beats/32"
+msgstr "Uderzenia/32"
+
+#: gtk2_ardour/editor.cc:117
+#: gtk2_ardour/editor.cc:3330
+msgid "Beats/16"
+msgstr "Uderzenia/16"
+
+#: gtk2_ardour/editor.cc:118
+#: gtk2_ardour/editor.cc:3328
+msgid "Beats/8"
+msgstr "Uderzenia/8"
+
+#: gtk2_ardour/editor.cc:119
+#: gtk2_ardour/editor.cc:3326
+msgid "Beats/4"
+msgstr "Uderzenia/4"
+
+#: gtk2_ardour/editor.cc:120
+#: gtk2_ardour/editor.cc:3324
+msgid "Beats/3"
+msgstr "Uderzenia/3"
+
+#: gtk2_ardour/editor.cc:121
+#: gtk2_ardour/editor.cc:3334
+msgid "Beats"
+msgstr "Uderzenia"
+
+#: gtk2_ardour/editor.cc:122
+#: gtk2_ardour/editor.cc:3336
+msgid "Bars"
+msgstr "Takty"
+
+#: gtk2_ardour/editor.cc:123
+#: gtk2_ardour/editor.cc:3338
+msgid "Marks"
+msgstr "Znaczniki"
+
+#: gtk2_ardour/editor.cc:124
+#: gtk2_ardour/editor.cc:3340
+msgid "Region starts"
+msgstr "PoczÄ…tek obszaru"
+
+#: gtk2_ardour/editor.cc:125
+#: gtk2_ardour/editor.cc:3342
+msgid "Region ends"
+msgstr "Koniec obszaru"
+
+#: gtk2_ardour/editor.cc:126
+#: gtk2_ardour/editor.cc:3346
+msgid "Region syncs"
+msgstr "Synchronizacja obszaru"
+
+#: gtk2_ardour/editor.cc:127
+#: gtk2_ardour/editor.cc:3344
+msgid "Region bounds"
+msgstr "Granice obszaru"
+
+#: gtk2_ardour/editor.cc:146
+#: gtk2_ardour/editor.cc:3436
+#: gtk2_ardour/export_dialog.cc:142
+#: gtk2_ardour/export_dialog.cc:158
+#: gtk2_ardour/export_dialog.cc:1131
+#: gtk2_ardour/export_dialog.cc:1135
+msgid "Left"
+msgstr "Lewa"
+
+#: gtk2_ardour/editor.cc:147
+#: gtk2_ardour/editor.cc:3438
+#: gtk2_ardour/export_dialog.cc:143
+#: gtk2_ardour/export_dialog.cc:159
+msgid "Right"
+msgstr "Prawa"
+
+#: gtk2_ardour/editor.cc:148
+#: gtk2_ardour/editor.cc:3440
+msgid "Center"
+msgstr "Åšrodek"
+
+#: gtk2_ardour/editor.cc:157
+msgid "Mushy"
+msgstr ""
+
+#: gtk2_ardour/editor.cc:158
+msgid "Smooth"
+msgstr "PÅ‚ynnie"
+
+#: gtk2_ardour/editor.cc:159
+msgid "Balanced multitimbral mixture"
+msgstr ""
+
+#: gtk2_ardour/editor.cc:160
+msgid "Unpitched percussion with stable notes"
+msgstr ""
+
+#: gtk2_ardour/editor.cc:161
+msgid "Crisp monophonic instrumental"
+msgstr ""
+
+#: gtk2_ardour/editor.cc:162
+msgid "Unpitched solo percussion"
+msgstr ""
+
+#: gtk2_ardour/editor.cc:191
+msgid "Mins:Secs"
+msgstr "min:s"
+
+#: gtk2_ardour/editor.cc:197
+msgid "Location Markers"
+msgstr "Znaczniki położenia"
+
+#: gtk2_ardour/editor.cc:198
+msgid "Range Markers"
+msgstr "Znaczniki zakresu"
+
+#: gtk2_ardour/editor.cc:199
+msgid "Loop/Punch Ranges"
+msgstr "Zakresy pętli/przełącznika"
+
+#: gtk2_ardour/editor.cc:218
+msgid "mode"
+msgstr "tryb"
+
+#: gtk2_ardour/editor.cc:219
+msgid "automation"
+msgstr "automatyka"
+
+#: gtk2_ardour/editor.cc:501
+#: gtk2_ardour/editor.cc:525
+msgid "Name"
+msgstr "Nazwa"
+
+#: gtk2_ardour/editor.cc:604
+#: gtk2_ardour/editor.cc:675
+msgid "Regions"
+msgstr "Obszar"
+
+#: gtk2_ardour/editor.cc:647
+#: gtk2_ardour/editor.cc:689
+msgid "Chunks"
+msgstr "Fragmenty"
+
+#: gtk2_ardour/editor.cc:678
+msgid "Tracks/Busses"
+msgstr "Ścieżki/szyny"
+
+#: gtk2_ardour/editor.cc:681
+msgid "Snapshots"
+msgstr "Zrzuty"
+
+#: gtk2_ardour/editor.cc:684
+msgid "Edit Groups"
+msgstr "Zmiany grup"
+
+#: gtk2_ardour/editor.cc:747
+msgid "Nudge Region/Selection Forwards"
+msgstr "Pchnij obszar/zaznaczenie w przód"
+
+#: gtk2_ardour/editor.cc:748
+msgid "Nudge Region/Selection Backwards"
+msgstr "Pchnij obszar/zaznaczenie w tył"
+
+#: gtk2_ardour/editor.cc:778
+#: gtk2_ardour/editor_mixer.cc:359
+msgid "Editor"
+msgstr "Edytor"
+
+#: gtk2_ardour/editor.cc:1365
+#: gtk2_ardour/editor_mouse.cc:1917
+msgid "programming error: fade in canvas item has no regionview data pointer!"
+msgstr ""
+
+#: gtk2_ardour/editor.cc:1377
+#: gtk2_ardour/editor.cc:1399
+#: gtk2_ardour/redirect_box.cc:1201
+msgid "Deactivate"
+msgstr "Wyłącz"
+
+#: gtk2_ardour/editor.cc:1379
+#: gtk2_ardour/editor.cc:1401
+#: gtk2_ardour/redirect_box.cc:1199
+msgid "Activate"
+msgstr "WÅ‚Ä…cz"
+
+#: gtk2_ardour/editor.cc:1419
+#: gtk2_ardour/route_time_axis.cc:1587
+#: gtk2_ardour/selection.cc:710
+#: gtk2_ardour/selection.cc:749
+msgid "programming error: "
+msgstr "błąd programowania:"
+
+#: gtk2_ardour/editor.cc:1526
+#: gtk2_ardour/editor.cc:1534
+#: gtk2_ardour/editor_ops.cc:3468
+msgid "Freeze"
+msgstr "Zamroź"
+
+#: gtk2_ardour/editor.cc:1530
+msgid "Unfreeze"
+msgstr "Odmroź"
+
+#: gtk2_ardour/editor.cc:1698
+#: gtk2_ardour/editor.cc:1807
+#: gtk2_ardour/mixer_strip.cc:88
+#: gtk2_ardour/mixer_strip.cc:422
+#: gtk2_ardour/panner_ui.cc:410
+#: gtk2_ardour/route_time_axis.cc:187
+msgid "Mute"
+msgstr "Wyciszenie"
+
+#: gtk2_ardour/editor.cc:1700
+msgid "Unmute"
+msgstr "Wył. wyciszenie"
+
+#: gtk2_ardour/editor.cc:1709
+msgid "Convert to short"
+msgstr "Konwertuj na krótki"
+
+#: gtk2_ardour/editor.cc:1711
+msgid "Convert to full"
+msgstr "Konwertuj na długi"
+
+#: gtk2_ardour/editor.cc:1722
+msgid "Crossfade"
+msgstr "Przejście krzyżowe"
+
+#: gtk2_ardour/editor.cc:1766
+msgid "Popup region editor"
+msgstr "Okno zmiany obszaru"
+
+#: gtk2_ardour/editor.cc:1767
+msgid "Raise to top layer"
+msgstr "PrzenieÅ› na wierzch"
+
+#: gtk2_ardour/editor.cc:1768
+msgid "Lower to bottom layer"
+msgstr "Przenieś na spód"
+
+#: gtk2_ardour/editor.cc:1770
+msgid "Define sync point"
+msgstr "Zdefiniuj punkt synchronizacji"
+
+#: gtk2_ardour/editor.cc:1771
+msgid "Remove sync point"
+msgstr "Usuń punkt synchronizacji"
+
+#: gtk2_ardour/editor.cc:1776
+msgid "Bounce"
+msgstr "Zgraj"
+
+#: gtk2_ardour/editor.cc:1779
+#: gtk2_ardour/editor.cc:1948
+msgid "Spectral Analysis"
+msgstr "Analiza spektrum"
+
+#: gtk2_ardour/editor.cc:1793
+msgid "Glue to Bars&Beats"
+msgstr "Przyklejenie do taktów i uderzeń"
+
+#: gtk2_ardour/editor.cc:1817
+msgid "Opaque"
+msgstr "Mętna"
+
+#: gtk2_ardour/editor.cc:1827
+msgid "Original position"
+msgstr "Pozycja poczÄ…tkowa"
+
+#: gtk2_ardour/editor.cc:1840
+msgid "Reset Envelope"
+msgstr "Resetuj obwiedniÄ™"
+
+#: gtk2_ardour/editor.cc:1842
+msgid "Envelope Visible"
+msgstr "Wyświetl obwiednię"
+
+#: gtk2_ardour/editor.cc:1851
+msgid "Envelope Active"
+msgstr "WÅ‚Ä…cz obwiedniÄ™"
+
+#: gtk2_ardour/editor.cc:1865
+msgid "DeNormalize"
+msgstr "Cofnij normalizacjÄ™"
+
+#: gtk2_ardour/editor.cc:1867
+msgid "Normalize"
+msgstr "Normalizuj"
+
+#: gtk2_ardour/editor.cc:1876
+#: gtk2_ardour/editor.cc:1967
+msgid "Add Range Markers"
+msgstr "Dodaj znaczniki zakresu"
+
+#: gtk2_ardour/editor.cc:1877
+msgid "Set Range Selection"
+msgstr "Ustaw zakres zaznaczenia"
+
+#: gtk2_ardour/editor.cc:1886
+msgid "Nudge fwd"
+msgstr "Do przodu"
+
+#: gtk2_ardour/editor.cc:1887
+msgid "Nudge bwd"
+msgstr "Do tyłu"
+
+#: gtk2_ardour/editor.cc:1888
+msgid "Nudge fwd by capture offset"
+msgstr "Do przodu wg wyrównania nagrania"
+
+#: gtk2_ardour/editor.cc:1889
+msgid "Nudge bwd by capture offset"
+msgstr "Do tyłu wg wyrównania nagrania"
+
+#: gtk2_ardour/editor.cc:1898
+msgid "Start to edit point"
+msgstr "PoczÄ…tek do punktu edycji"
+
+#: gtk2_ardour/editor.cc:1899
+msgid "Edit point to end"
+msgstr "Punkt edycji do końca"
+
+#: gtk2_ardour/editor.cc:1906
+msgid "Split"
+msgstr "Podziel"
+
+#: gtk2_ardour/editor.cc:1912
+#: gtk2_ardour/editor.cc:3209
+msgid "Duplicate"
+msgstr "Powiel"
+
+#: gtk2_ardour/editor.cc:1913
+msgid "Multi-Duplicate"
+msgstr "Powiel"
+
+#: gtk2_ardour/editor.cc:1943
+msgid "Play range"
+msgstr "Odtwórz zakres"
+
+#: gtk2_ardour/editor.cc:1944
+msgid "Loop range"
+msgstr "Zapętl zakres"
+
+#: gtk2_ardour/editor.cc:1956
+msgid "Convert to region in-place"
+msgstr ""
+
+#: gtk2_ardour/editor.cc:1957
+msgid "Convert to region in region list"
+msgstr ""
+
+#: gtk2_ardour/editor.cc:1960
+msgid "Select all in range"
+msgstr "Zaznasz cały obszar"
+
+#: gtk2_ardour/editor.cc:1963
+msgid "Set loop from selection"
+msgstr "Ustaw pętlę w miejscu zaznaczenia"
+
+#: gtk2_ardour/editor.cc:1964
+msgid "Set punch from selection"
+msgstr "Ustaw przełącznik w miejscu zaznaczenia"
+
+#: gtk2_ardour/editor.cc:1969
+msgid "Crop region to range"
+msgstr "Przytnij obszar do zakresu"
+
+#: gtk2_ardour/editor.cc:1970
+msgid "Fill range with region"
+msgstr "Wypełnij zakres obszarem"
+
+#: gtk2_ardour/editor.cc:1971
+msgid "Duplicate range"
+msgstr "Duplikuj zakres"
+
+#: gtk2_ardour/editor.cc:1972
+msgid "Create chunk from range"
+msgstr "Utwórz fragment z zakresu"
+
+#: gtk2_ardour/editor.cc:1974
+msgid "Bounce range"
+msgstr "Zgraj zakres"
+
+#: gtk2_ardour/editor.cc:1975
+msgid "Export range"
+msgstr "Eksportuj zakres"
+
+#: gtk2_ardour/editor.cc:1989
+#: gtk2_ardour/editor.cc:2076
+msgid "Play from edit point"
+msgstr "Od punktu edycji"
+
+#: gtk2_ardour/editor.cc:1990
+#: gtk2_ardour/editor.cc:2077
+msgid "Play from start"
+msgstr "Od poczÄ…tku"
+
+#: gtk2_ardour/editor.cc:1991
+msgid "Play region"
+msgstr "Obszar"
+
+#: gtk2_ardour/editor.cc:2003
+#: gtk2_ardour/editor.cc:2086
+msgid "Select All in track"
+msgstr "Całą ścieżkę"
+
+#: gtk2_ardour/editor.cc:2005
+#: gtk2_ardour/editor.cc:2088
+msgid "Invert selection in track"
+msgstr "Odwróć zaznaczenie ścieżki"
+
+#: gtk2_ardour/editor.cc:2006
+#: gtk2_ardour/editor.cc:2089
+msgid "Invert selection"
+msgstr "Odwróć zaznaczenie"
+
+#: gtk2_ardour/editor.cc:2008
+msgid "Set range to loop range"
+msgstr "Ustaw zakres jako zakres pętli"
+
+#: gtk2_ardour/editor.cc:2009
+msgid "Set range to punch range"
+msgstr "Ustaw zakres jako zakres przełącznika"
+
+#: gtk2_ardour/editor.cc:2013
+msgid "Select All After Playhead"
+msgstr "Wszystko za głowicą"
+
+#: gtk2_ardour/editor.cc:2014
+msgid "Select All Before Playhead"
+msgstr "Wszystko przed głowicą"
+
+#: gtk2_ardour/editor.cc:2015
+msgid "Select All Between Playhead & Edit Point"
+msgstr "Wszystko między głowicą a punktem edycji"
+
+#: gtk2_ardour/editor.cc:2016
+msgid "Select All Within Playhead & Edit Point"
+msgstr "Wszystko w obrębie głowicy i punktu edycji"
+
+#: gtk2_ardour/editor.cc:2017
+msgid "Select Range Between Playhead & Edit Point"
+msgstr "Ustaw zakres między głowicą a punktem edycji"
+
+#: gtk2_ardour/editor.cc:2036
+msgid "Align Relative"
+msgstr "Wyrównaj relatywnie"
+
+#: gtk2_ardour/editor.cc:2040
+msgid "Insert chunk"
+msgstr "Wstaw fragment"
+
+#: gtk2_ardour/editor.cc:2047
+msgid "Insert Selected Region"
+msgstr "Wstaw zaznaczony obszar"
+
+#: gtk2_ardour/editor.cc:2048
+msgid "Insert Existing Audio"
+msgstr "Wstaw istniejÄ…cy plik"
+
+#: gtk2_ardour/editor.cc:2057
+#: gtk2_ardour/editor.cc:2113
+msgid "Nudge entire track fwd"
+msgstr "Pchnij całą ścieżkę do przodu"
+
+#: gtk2_ardour/editor.cc:2058
+#: gtk2_ardour/editor.cc:2114
+msgid "Nudge track after edit point fwd"
+msgstr "Pchnij ścieżkę za punktem edycji do przodu"
+
+#: gtk2_ardour/editor.cc:2059
+#: gtk2_ardour/editor.cc:2115
+msgid "Nudge entire track bwd"
+msgstr "Pchnij całą ścieżkę do tyłu"
+
+#: gtk2_ardour/editor.cc:2060
+#: gtk2_ardour/editor.cc:2116
+msgid "Nudge track after edit point bwd"
+msgstr "Pchnij ścieżkę za punktem edycji do tyłu"
+
+#: gtk2_ardour/editor.cc:2091
+msgid "Select all after edit point"
+msgstr "Wszystko za punktem edycji"
+
+#: gtk2_ardour/editor.cc:2092
+msgid "Select all before edit point"
+msgstr "Wszystko przed punktem edycji"
+
+#: gtk2_ardour/editor.cc:2093
+msgid "Select all after playhead"
+msgstr "Wszystko za głowicą"
+
+#: gtk2_ardour/editor.cc:2094
+msgid "Select all before playhead"
+msgstr "Wszystko przed głowicą"
+
+#: gtk2_ardour/editor.cc:2797
+msgid "Select/Move Objects"
+msgstr "Zaznacza i przesuwa obiekty"
+
+#: gtk2_ardour/editor.cc:2798
+msgid "Select/Move Ranges"
+msgstr "Zaznacza przesuwa zakresy"
+
+#: gtk2_ardour/editor.cc:2799
+msgid "Draw Gain Automation"
+msgstr "Reguluje automatyzacjÄ™ wzmocnienia"
+
+#: gtk2_ardour/editor.cc:2800
+msgid "Select Zoom Range"
+msgstr "Ustawia zakres powiększania"
+
+#: gtk2_ardour/editor.cc:2801
+msgid "Stretch/Shrink Regions"
+msgstr "RozciÄ…ga i kurczy obszary"
+
+#: gtk2_ardour/editor.cc:2802
+msgid "Listen to Specific Regions"
+msgstr "Odtwarza określone obszary"
+
+#: gtk2_ardour/editor.cc:2850
+msgid "Zoom focus"
+msgstr "Powiększanie do"
+
+#: gtk2_ardour/editor.cc:2864
+msgid "Snap/Grid Units"
+msgstr ""
+
+#: gtk2_ardour/editor.cc:2867
+msgid "Magnetic Snap"
+msgstr "PrzyciÄ…ganie magnetyczne"
+
+#: gtk2_ardour/editor.cc:2870
+msgid "Snap/Grid Mode"
+msgstr "Tryb przyciÄ…gania"
+
+#: gtk2_ardour/editor.cc:2876
+msgid "Edit point"
+msgstr "Punkt edycji"
+
+#: gtk2_ardour/editor.cc:3026
+msgid "malformed URL passed to drag-n-drop code"
+msgstr ""
+
+#: gtk2_ardour/editor.cc:3147
+msgid "Undo (%1)"
+msgstr "Cofnij (%1)"
+
+#: gtk2_ardour/editor.cc:3156
+msgid "Redo (%1)"
+msgstr "Powtórz (%1)"
+
+#: gtk2_ardour/editor.cc:3186
+msgid "Number of Duplications:"
+msgstr "Liczba duplikatów:"
+
+#: gtk2_ardour/editor.cc:3307
+msgid "Splice Edit"
+msgstr "Edycja klockowa"
+
+#: gtk2_ardour/editor.cc:3309
+msgid "Slide Edit"
+msgstr "Edycja ślizgowa"
+
+#: gtk2_ardour/editor.cc:3311
+msgid "Lock Edit"
+msgstr "Edycja zablokowana"
+
+#: gtk2_ardour/editor.cc:3706
+msgid ""
+"Playlist %1 is currently unused.\n"
+"If left alone, no audio files used by it will be cleaned.\n"
+"If deleted, audio files used by it alone by will cleaned."
+msgstr ""
+
+#: gtk2_ardour/editor.cc:3716
+msgid "Delete playlist"
+msgstr "Usuń listę odtwarzania"
+
+#: gtk2_ardour/editor.cc:3717
+msgid "Keep playlist"
+msgstr "Zachowaj listÄ™ odtwarzania"
+
+#: gtk2_ardour/editor.cc:3886
+msgid "New name of snapshot"
+msgstr "Nazwa zrzutu"
+
+#: gtk2_ardour/editor.cc:3904
+msgid ""
+"Do you really want to remove snapshot \"%1\" ?\n"
+"(cannot be undone)"
+msgstr ""
+"Usunąć zrzut \"%1\" ?\n"
+"(tej operacji nie można cofnąć)"
+
+#: gtk2_ardour/editor.cc:3906
+#: gtk2_ardour/editor_ops.cc:215
+#: gtk2_ardour/editor_ops.cc:4133
+#: gtk2_ardour/editor_ops.cc:5608
+#: gtk2_ardour/route_ui.cc:803
+#: gtk2_ardour/visual_time_axis.cc:282
+msgid "No, do nothing."
+msgstr "Nie usuwaj niczego"
+
+#: gtk2_ardour/editor.cc:3907
+#: gtk2_ardour/editor_ops.cc:5612
+#: gtk2_ardour/route_ui.cc:804
+#: gtk2_ardour/visual_time_axis.cc:283
+msgid "Yes, remove it."
+msgstr "Tak, usuń."
+
+#: gtk2_ardour/editor.cc:4017
+msgid "new playlists"
+msgstr "nowe listy odtwarzania"
+
+#: gtk2_ardour/editor.cc:4032
+msgid "copy playlists"
+msgstr "skopiuj listy odtwarzania"
+
+#: gtk2_ardour/editor.cc:4047
+msgid "clear playlists"
+msgstr "wyczyść listy odtwarzania"
+
+#: gtk2_ardour/editor.cc:4552
+msgid "Please wait while Ardour loads visual data"
+msgstr "Proszę czekać na wczytanie danych wizualnych"
+
+#: gtk2_ardour/editor_edit_groups.cc:52
+#: gtk2_ardour/mixer_ui.cc:937
+msgid "Activate All"
+msgstr "WÅ‚Ä…cz wszystko"
+
+#: gtk2_ardour/editor_edit_groups.cc:53
+#: gtk2_ardour/mixer_ui.cc:938
+msgid "Disable All"
+msgstr "Wyłącz wszystko"
+
+#: gtk2_ardour/editor_edit_groups.cc:55
+#: gtk2_ardour/mixer_ui.cc:940
+msgid "Add group"
+msgstr "Dodaj grupÄ™"
+
+#: gtk2_ardour/editor_edit_groups.cc:228
+#: gtk2_ardour/mixer_ui.cc:1182
+msgid "unnamed"
+msgstr "bez nazwy"
+
+#: gtk2_ardour/editor_edit_groups.cc:257
+#: gtk2_ardour/mixer_ui.cc:1035
+msgid "-all-"
+msgstr "-wszystko-"
+
+#: gtk2_ardour/editor_export_audio.cc:66
+msgid ""
+"There is no selection to export.\n"
+"\n"
+"Select a selection using the range mouse mode"
+msgstr ""
+
+#: gtk2_ardour/editor_export_audio.cc:109
+msgid ""
+"There are no ranges to export.\n"
+"\n"
+"Create 1 or more ranges by dragging the mouse in the range bar"
+msgstr ""
+
+#: gtk2_ardour/editor_imageframe.cc:624
+#: gtk2_ardour/editor_imageframe.cc:654
+msgid "programming error: no ImageFrameView selected"
+msgstr ""
+
+#: gtk2_ardour/editor_imageframe.cc:847
+#: gtk2_ardour/editor_imageframe.cc:869
+msgid "programming error: no MarkerView selected"
+msgstr ""
+
+#: gtk2_ardour/editor_keyboard.cc:82
+msgid "mute region"
+msgstr "wycisz obszar"
+
+#: gtk2_ardour/editor_markers.cc:408
+#: gtk2_ardour/editor_ops.cc:1858
+#: gtk2_ardour/editor_ops.cc:1875
+#: gtk2_ardour/editor_ops.cc:1904
+#: gtk2_ardour/location_ui.cc:823
+msgid "add marker"
+msgstr "dodaj znacznik"
+
+#: gtk2_ardour/editor_markers.cc:432
+#: gtk2_ardour/editor_markers.cc:500
+#: gtk2_ardour/editor_markers.cc:685
+#: gtk2_ardour/editor_markers.cc:703
+#: gtk2_ardour/editor_markers.cc:721
+#: gtk2_ardour/editor_markers.cc:740
+#: gtk2_ardour/editor_markers.cc:759
+#: gtk2_ardour/editor_markers.cc:789
+#: gtk2_ardour/editor_markers.cc:817
+#: gtk2_ardour/editor_markers.cc:845
+#: gtk2_ardour/editor_markers.cc:883
+#: gtk2_ardour/editor_markers.cc:908
+#: gtk2_ardour/editor_markers.cc:935
+#: gtk2_ardour/editor_markers.cc:958
+#: gtk2_ardour/editor_markers.cc:978
+#: gtk2_ardour/editor_markers.cc:1002
+#: gtk2_ardour/editor_mouse.cc:2235
+#: gtk2_ardour/editor_mouse.cc:4783
+msgid "programming error: marker canvas item has no marker object pointer!"
+msgstr ""
+
+#: gtk2_ardour/editor_markers.cc:450
+#: gtk2_ardour/location_ui.cc:699
+msgid "remove marker"
+msgstr "usuń znacznik"
+
+#: gtk2_ardour/editor_markers.cc:591
+msgid "Locate to here"
+msgstr "PrzenieÅ› tutaj"
+
+#: gtk2_ardour/editor_markers.cc:592
+msgid "Play from here"
+msgstr "Odtwórz stąd"
+
+#: gtk2_ardour/editor_markers.cc:593
+msgid "Move Mark to Playhead"
+msgstr "Przesuń znacznik do głowicy"
+
+#: gtk2_ardour/editor_markers.cc:601
+msgid "Unlock"
+msgstr "Odblokuj"
+
+#: gtk2_ardour/editor_markers.cc:623
+msgid "Play Range"
+msgstr "Odtwórz zakres"
+
+#: gtk2_ardour/editor_markers.cc:624
+msgid "Locate to Range Mark"
+msgstr "Przenieś głowicę do znacznika zakresu"
+
+#: gtk2_ardour/editor_markers.cc:625
+msgid "Play from Range Mark"
+msgstr "Odtwórz od znacznika zakresu"
+
+#: gtk2_ardour/editor_markers.cc:627
+msgid "Loop Range"
+msgstr "Zapętl zakres"
+
+#: gtk2_ardour/editor_markers.cc:629
+msgid "Set Range Mark from Playhead"
+msgstr "Przenieś znacznik zakresu do głowicy"
+
+#: gtk2_ardour/editor_markers.cc:631
+msgid "Set Range from Range Selection"
+msgstr "Ustaw zakres według zaznaczenia"
+
+#: gtk2_ardour/editor_markers.cc:637
+msgid "Hide Range"
+msgstr "Ukryj zakres"
+
+#: gtk2_ardour/editor_markers.cc:638
+#: gtk2_ardour/editor_markers.cc:1022
+msgid "Rename Range"
+msgstr "Zmień nazwę zakresu"
+
+#: gtk2_ardour/editor_markers.cc:639
+msgid "Remove Range"
+msgstr "Usuń zakres"
+
+#: gtk2_ardour/editor_markers.cc:644
+msgid "Separate Regions in Range"
+msgstr "Oddziel obszar w zakresie"
+
+#: gtk2_ardour/editor_markers.cc:645
+msgid "Select All in Range"
+msgstr "Wszystko w zakresie"
+
+#: gtk2_ardour/editor_markers.cc:647
+msgid "Select Range"
+msgstr "Zaznacz zakres"
+
+#: gtk2_ardour/editor_markers.cc:673
+msgid "Set Loop Range"
+msgstr "Ustaw zakres pętli"
+
+#: gtk2_ardour/editor_markers.cc:674
+msgid "Set Punch Range"
+msgstr "Ustaw zakres przełącznika"
+
+#: gtk2_ardour/editor_markers.cc:1016
+msgid "New Name:"
+msgstr "Nazwa:"
+
+#: gtk2_ardour/editor_markers.cc:1020
+msgid "Rename Mark"
+msgstr "Zmień nazwę znacznika"
+
+#: gtk2_ardour/editor_markers.cc:1044
+msgid "rename marker"
+msgstr "zmień nazwę znacznika"
+
+#: gtk2_ardour/editor_markers.cc:1068
+msgid "set loop range"
+msgstr "ustaw zakres pętli"
+
+#: gtk2_ardour/editor_markers.cc:1074
+msgid "set punch range"
+msgstr "ustaw zakres przełącznika"
+
+#: gtk2_ardour/editor_mouse.cc:148
+msgid "Editor::event_frame() used on unhandled event type %1"
+msgstr ""
+
+#: gtk2_ardour/editor_mouse.cc:1800
+msgid "programming error: start_grab called without drag item"
+msgstr ""
+
+#: gtk2_ardour/editor_mouse.cc:1992
+msgid "change fade in length"
+msgstr "zmień długość stopniowego wzmocnienia"
+
+#: gtk2_ardour/editor_mouse.cc:2025
+msgid "programming error: fade out canvas item has no regionview data pointer!"
+msgstr ""
+
+#: gtk2_ardour/editor_mouse.cc:2109
+msgid "change fade out length"
+msgstr ""
+
+#: gtk2_ardour/editor_mouse.cc:2142
+msgid "programming error: cursor canvas item has no cursor data pointer!"
+msgstr ""
+
+#: gtk2_ardour/editor_mouse.cc:2397
+msgid "move marker"
+msgstr "przesuń znacznik"
+
+#: gtk2_ardour/editor_mouse.cc:2430
+#: gtk2_ardour/editor_mouse.cc:2462
+#: gtk2_ardour/editor_tempodisplay.cc:512
+msgid "programming error: meter marker canvas item has no marker object pointer!"
+msgstr ""
+
+#: gtk2_ardour/editor_mouse.cc:2530
+msgid "copy meter mark"
+msgstr "skopiuj oznaczenie metrum"
+
+#: gtk2_ardour/editor_mouse.cc:2541
+msgid "move meter mark"
+msgstr "przesuń oznaczenie metrum"
+
+#: gtk2_ardour/editor_mouse.cc:2557
+#: gtk2_ardour/editor_mouse.cc:2591
+#: gtk2_ardour/editor_tempodisplay.cc:376
+#: gtk2_ardour/editor_tempodisplay.cc:461
+#: gtk2_ardour/editor_tempodisplay.cc:480
+msgid "programming error: tempo marker canvas item has no marker object pointer!"
+msgstr ""
+
+#: gtk2_ardour/editor_mouse.cc:2562
+#: gtk2_ardour/editor_mouse.cc:2596
+#: gtk2_ardour/editor_tempodisplay.cc:381
+#: gtk2_ardour/editor_tempodisplay.cc:466
+msgid "programming error: marker for tempo is not a tempo marker!"
+msgstr ""
+
+#: gtk2_ardour/editor_mouse.cc:2663
+msgid "copy tempo mark"
+msgstr "kopiuj znacznik tempa"
+
+#: gtk2_ardour/editor_mouse.cc:2674
+msgid "move tempo mark"
+msgstr "przesuń znacznik tempa"
+
+#: gtk2_ardour/editor_mouse.cc:2689
+#: gtk2_ardour/editor_mouse.cc:2708
+#: gtk2_ardour/editor_mouse.cc:2721
+msgid "programming error: control point canvas item has no control point object pointer!"
+msgstr ""
+
+#: gtk2_ardour/editor_mouse.cc:2857
+msgid "programming error: line canvas item has no line pointer!"
+msgstr ""
+
+#: gtk2_ardour/editor_mouse.cc:2997
+msgid "move region(s)"
+msgstr "przesuń obszar(y)"
+
+#: gtk2_ardour/editor_mouse.cc:3063
+msgid "Drag region brush"
+msgstr ""
+
+#: gtk2_ardour/editor_mouse.cc:3714
+msgid "fixed time region copy"
+msgstr ""
+
+#: gtk2_ardour/editor_mouse.cc:3716
+msgid "region copy"
+msgstr ""
+
+#: gtk2_ardour/editor_mouse.cc:3720
+msgid "fixed time region drag"
+msgstr ""
+
+#: gtk2_ardour/editor_mouse.cc:3722
+msgid "region drag"
+msgstr ""
+
+#: gtk2_ardour/editor_mouse.cc:4103
+msgid "selection grab"
+msgstr ""
+
+#: gtk2_ardour/editor_mouse.cc:4254
+msgid "range selection"
+msgstr ""
+
+#: gtk2_ardour/editor_mouse.cc:4270
+msgid "trim selection start"
+msgstr "początek przycięcia"
+
+#: gtk2_ardour/editor_mouse.cc:4286
+msgid "trim selection end"
+msgstr "koniec przycięcia"
+
+#: gtk2_ardour/editor_mouse.cc:4303
+msgid "move selection"
+msgstr "przesuń zaznaczenie"
+
+#: gtk2_ardour/editor_mouse.cc:4692
+msgid "Start point trim"
+msgstr "Punkt początkowy przycięcia"
+
+#: gtk2_ardour/editor_mouse.cc:4724
+msgid "End point trim"
+msgstr "Punkt końcowy przycięcia"
+
+#: gtk2_ardour/editor_mouse.cc:4767
+msgid "trimmed region"
+msgstr "przycięty obszar"
+
+#: gtk2_ardour/editor_mouse.cc:4930
+msgid "new range marker"
+msgstr "nowy znacznik zakresu"
+
+#: gtk2_ardour/editor_mouse.cc:5179
+msgid "rubberband selection"
+msgstr ""
+
+#: gtk2_ardour/editor_mouse.cc:5209
+msgid "Name for region:"
+msgstr "Nazwa obszaru:"
+
+#: gtk2_ardour/editor_mouse.cc:5282
+msgid "timestretch"
+msgstr "rozciÄ…ganie w czasie"
+
+#: gtk2_ardour/editor_ops.cc:123
+msgid "split"
+msgstr "podziel"
+
+#: gtk2_ardour/editor_ops.cc:189
+msgid "remove region"
+msgstr "usuń obszar"
+
+#: gtk2_ardour/editor_ops.cc:209
+msgid ""
+" This is destructive, will possibly delete audio files\n"
+"It cannot be undone\n"
+"Do you really want to destroy %1 ?"
+msgstr ""
+
+#: gtk2_ardour/editor_ops.cc:213
+msgid "these regions"
+msgstr "te obszary"
+
+#: gtk2_ardour/editor_ops.cc:213
+msgid "this region"
+msgstr "ten obszar"
+
+#: gtk2_ardour/editor_ops.cc:218
+msgid "Yes, destroy them."
+msgstr "Tak, usuń je."
+
+#: gtk2_ardour/editor_ops.cc:220
+#: gtk2_ardour/editor_ops.cc:4134
+msgid "Yes, destroy it."
+msgstr "Tak, usuń go."
+
+#: gtk2_ardour/editor_ops.cc:306
+#: gtk2_ardour/editor_ops.cc:334
+msgid "extend selection"
+msgstr "rozszerz zanaczenie"
+
+#: gtk2_ardour/editor_ops.cc:375
+msgid "nudge regions forward"
+msgstr "pchnij obszary do przodu"
+
+#: gtk2_ardour/editor_ops.cc:402
+#: gtk2_ardour/editor_ops.cc:482
+msgid "nudge location forward"
+msgstr "pchnij pozycjÄ™ do przodu"
+
+#: gtk2_ardour/editor_ops.cc:451
+msgid "nudge regions backward"
+msgstr "pchnij obszar do tyłu"
+
+#: gtk2_ardour/editor_ops.cc:537
+#: gtk2_ardour/editor_ops.cc:567
+msgid "nudge forward"
+msgstr "pchnij do przodu"
+
+#: gtk2_ardour/editor_ops.cc:634
+msgid "build_region_boundary_cache called with snap_type = %1"
+msgstr ""
+
+#: gtk2_ardour/editor_ops.cc:2025
+msgid "clear markers"
+msgstr "wyczyść znaczniki"
+
+#: gtk2_ardour/editor_ops.cc:2038
+msgid "clear ranges"
+msgstr "wyczyść zakresy"
+
+#: gtk2_ardour/editor_ops.cc:2058
+msgid "clear locations"
+msgstr "wyczyść położenia"
+
+#: gtk2_ardour/editor_ops.cc:2131
+msgid "insert dragged region"
+msgstr "wstaw przeciągnięty obszar"
+
+#: gtk2_ardour/editor_ops.cc:2178
+msgid "insert region"
+msgstr "wstaw obszar"
+
+#: gtk2_ardour/editor_ops.cc:2402
+msgid "Rename Region"
+msgstr "Zmień nazwę obszaru"
+
+#: gtk2_ardour/editor_ops.cc:2406
+msgid "New name:"
+msgstr "Nazwa:"
+
+#: gtk2_ardour/editor_ops.cc:2739
+msgid "separate"
+msgstr "oddziel"
+
+#: gtk2_ardour/editor_ops.cc:2887
+msgid "trim to selection"
+msgstr "przytnij do zaznaczenia"
+
+#: gtk2_ardour/editor_ops.cc:2935
+msgid "region fill"
+msgstr "wypełnienie obszaru"
+
+#: gtk2_ardour/editor_ops.cc:2999
+msgid "fill selection"
+msgstr "wypełnij zaznaczenie"
+
+#: gtk2_ardour/editor_ops.cc:3038
+msgid "set sync point"
+msgstr "ustaw punkt synchronizacji"
+
+#: gtk2_ardour/editor_ops.cc:3058
+msgid "remove sync"
+msgstr "usuń synchronizację"
+
+#: gtk2_ardour/editor_ops.cc:3078
+msgid "naturalize"
+msgstr "naturalizuj"
+
+#: gtk2_ardour/editor_ops.cc:3180
+msgid "align selection (relative)"
+msgstr ""
+
+#: gtk2_ardour/editor_ops.cc:3220
+msgid "align selection"
+msgstr ""
+
+#: gtk2_ardour/editor_ops.cc:3232
+msgid "align region"
+msgstr ""
+
+#: gtk2_ardour/editor_ops.cc:3269
+msgid "trim to loop"
+msgstr "przytnij do pętli"
+
+#: gtk2_ardour/editor_ops.cc:3279
+msgid "trim to punch"
+msgstr "przytnij do przełącznika"
+
+#: gtk2_ardour/editor_ops.cc:3342
+msgid "trim region start to edit point"
+msgstr "przytnij poczÄ…tek obszaru do punktu edycji"
+
+#: gtk2_ardour/editor_ops.cc:3387
+msgid "trim region end to edit point"
+msgstr "przytnij koniec obszaru do punktu edycji"
+
+#: gtk2_ardour/editor_ops.cc:3474
+msgid "Cancel Freeze"
+msgstr "Anuluj zamrożenie"
+
+#: gtk2_ardour/editor_ops.cc:3517
+msgid "bounce range"
+msgstr "zgraj zakres"
+
+#: gtk2_ardour/editor_ops.cc:3569
+msgid "cut"
+msgstr "wytnij"
+
+#: gtk2_ardour/editor_ops.cc:3572
+msgid "copy"
+msgstr "skopiuj"
+
+#: gtk2_ardour/editor_ops.cc:3607
+msgid " objects"
+msgstr "obiekty"
+
+#: gtk2_ardour/editor_ops.cc:3643
+msgid " range"
+msgstr " zakres"
+
+#: gtk2_ardour/editor_ops.cc:3877
+msgid "paste"
+msgstr "wklej"
+
+#: gtk2_ardour/editor_ops.cc:3926
+msgid "paste chunk"
+msgstr "wklej fragment"
+
+#: gtk2_ardour/editor_ops.cc:3970
+msgid "duplicate region"
+msgstr "duplikuj obszar"
+
+#: gtk2_ardour/editor_ops.cc:4018
+msgid "duplicate selection"
+msgstr "duplikuj zaznaczenie"
+
+#: gtk2_ardour/editor_ops.cc:4072
+msgid "clear playlist"
+msgstr "wyczyść listę odtwarzania"
+
+#: gtk2_ardour/editor_ops.cc:4102
+msgid "nudge track"
+msgstr "pchnij ścieżkę"
+
+#: gtk2_ardour/editor_ops.cc:4130
+msgid ""
+"Do you really want to destroy the last capture?\n"
+"(This is destructive and cannot be undone)"
+msgstr ""
+"Na pewno usunąć ostatnie nagranie?\n"
+"(Ta operacja nie może zostać cofnięta)"
+
+#: gtk2_ardour/editor_ops.cc:4162
+msgid "normalize"
+msgstr "normalizuj"
+
+#: gtk2_ardour/editor_ops.cc:4271
+msgid "reverse regions"
+msgstr "odwróć obszary"
+
+#: gtk2_ardour/editor_ops.cc:4390
+msgid "reset region gain"
+msgstr "zresetuj wzmocnienie obszaru"
+
+#: gtk2_ardour/editor_ops.cc:4528
+msgid "set fade in length"
+msgstr "zmień długość stopniowego wzmocnienia"
+
+#: gtk2_ardour/editor_ops.cc:4535
+msgid "set fade out length"
+msgstr "zmień długość stopniowego wyciszenia"
+
+#: gtk2_ardour/editor_ops.cc:4583
+msgid "toggle fade in active"
+msgstr "włącz stopniowe wzmocnienie"
+
+#: gtk2_ardour/editor_ops.cc:4583
+msgid "toggle fade out active"
+msgstr "włącz stopniowe wyciszenie"
+
+#: gtk2_ardour/editor_ops.cc:4633
+msgid "set fade in shape"
+msgstr "ustaw kształt stopniowego wzmocnienia"
+
+#: gtk2_ardour/editor_ops.cc:4666
+msgid "set fade out shape"
+msgstr "ustaw kształt stopniowego wyciszenia"
+
+#: gtk2_ardour/editor_ops.cc:4698
+msgid "set fade in active"
+msgstr "włącz stopniowe wzmocnienie"
+
+#: gtk2_ardour/editor_ops.cc:4732
+msgid "set fade out active"
+msgstr "włącz stopniowe wyciszenie"
+
+#: gtk2_ardour/editor_ops.cc:4879
+msgid "trim front"
+msgstr "przytnij przód"
+
+#: gtk2_ardour/editor_ops.cc:4879
+msgid "trim back"
+msgstr "przytnij tył"
+
+#: gtk2_ardour/editor_ops.cc:4961
+msgid "set loop range from selection"
+msgstr "ustaw zakres pętli w miejscu zaznaczenia"
+
+#: gtk2_ardour/editor_ops.cc:4983
+msgid "set loop range from edit range"
+msgstr "ustaw zakres pętli w zaznaczeniu"
+
+#: gtk2_ardour/editor_ops.cc:5014
+msgid "set loop range from region"
+msgstr "ustaw zakres pętli w obszarze"
+
+#: gtk2_ardour/editor_ops.cc:5032
+msgid "set punch range from selection"
+msgstr "ustaw zakres przełącznika w miejscu zaznaczenia"
+
+#: gtk2_ardour/editor_ops.cc:5049
+msgid "set punch range from edit range"
+msgstr "ustaw zakres przełącznika w zaznaczeniu"
+
+#: gtk2_ardour/editor_ops.cc:5075
+msgid "set punch range from region"
+msgstr "ustaw zakres przełącznika w obszarze"
+
+#: gtk2_ardour/editor_ops.cc:5159
+msgid "Add new marker"
+msgstr "Dodaj nowy znacznik"
+
+#: gtk2_ardour/editor_ops.cc:5160
+msgid "Set global tempo"
+msgstr "Ustaw ogólne tempo"
+
+#: gtk2_ardour/editor_ops.cc:5161
+msgid "Do you want to set the global tempo or add new tempo marker?"
+msgstr ""
+
+#: gtk2_ardour/editor_ops.cc:5185
+msgid "set tempo from region"
+msgstr "Ustaw tempo dla obszaru"
+
+#: gtk2_ardour/editor_ops.cc:5219
+msgid "split regions"
+msgstr "podziel obszary"
+
+#: gtk2_ardour/editor_ops.cc:5264
+msgid ""
+"You are about to split\n"
+"%1\n"
+"into %2 pieces.\n"
+"This could take a long time."
+msgstr ""
+
+#: gtk2_ardour/editor_ops.cc:5271
+msgid "Call for the Ferret!"
+msgstr ""
+
+#: gtk2_ardour/editor_ops.cc:5272
+msgid ""
+"Press OK to continue with this split operation\n"
+"or ask the Ferret dialog to tune the analysis"
+msgstr ""
+
+#: gtk2_ardour/editor_ops.cc:5274
+msgid "Press OK to continue with this split operation"
+msgstr ""
+
+#: gtk2_ardour/editor_ops.cc:5277
+msgid "Excessive split?"
+msgstr ""
+
+#: gtk2_ardour/editor_ops.cc:5582
+msgid "track"
+msgstr "ścieżka"
+
+#: gtk2_ardour/editor_ops.cc:5588
+msgid "bus"
+msgstr "szyna"
+
+#: gtk2_ardour/editor_ops.cc:5593
+msgid ""
+"Do you really want to remove %1 %2 and %3 %4?\n"
+"(You may also lose the playlists associated with the %2)\n"
+"\n"
+"This action cannot be undone!"
+msgstr ""
+"Na pewno usunąć %1 %2 i %3 %4?\n"
+"\n"
+"Można również utracić listy odtwarzania powiązane z %2)\n"
+"\n"
+"Tej operacji nie można cofnąć!"
+
+#: gtk2_ardour/editor_ops.cc:5598
+msgid ""
+"Do you really want to remove %1 %2?\n"
+"(You may also lose the playlists associated with the %2)\n"
+"\n"
+"This action cannot be undone!"
+msgstr ""
+"Na pewno usunąć %1 %2?\n"
+"\n"
+"Można również utracić listy odtwarzania powiązane z %2)\n"
+"\n"
+"Tej operacji nie można cofnąć!"
+
+#: gtk2_ardour/editor_ops.cc:5604
+msgid "Do you really want to remove %1 %2?"
+msgstr "Na pewno usunąć %1 %2?"
+
+#: gtk2_ardour/editor_ops.cc:5610
+msgid "Yes, remove them."
+msgstr "Tak, usuń je."
+
+#: gtk2_ardour/editor_ops.cc:5655
+msgid "Stay in position"
+msgstr "Pozostanie w pozycji"
+
+#: gtk2_ardour/editor_ops.cc:5656
+msgid "Move"
+msgstr "Przesuń"
+
+#: gtk2_ardour/editor_ops.cc:5657
+msgid "Split & Later Section Moves"
+msgstr ""
+
+#: gtk2_ardour/editor_ops.cc:5658
+#, fuzzy
+msgid "Intersected regions should:"
+msgstr "Zaznaczone obszary"
+
+#: gtk2_ardour/editor_ops.cc:5659
+msgid "Move Glued Regions"
+msgstr "PrzenieÅ› przyklejone obszary"
+
+#: gtk2_ardour/editor_ops.cc:5730
+msgid "insert time"
+msgstr "wstaw czas"
+
+#: gtk2_ardour/editor_region_list.cc:112
+#: gtk2_ardour/editor_region_list.cc:116
+#: gtk2_ardour/editor_region_list.cc:119
+#: gtk2_ardour/location_ui.cc:57
+msgid "Hidden"
+msgstr "Ukryte"
+
+#: gtk2_ardour/editor_region_list.cc:162
+msgid " (MISSING)"
+msgstr "(BRAK)"
+
+#: gtk2_ardour/editor_route_list.cc:77
+#: gtk2_ardour/editor_route_list.cc:78
+#: gtk2_ardour/editor_route_list.cc:265
+msgid "editor"
+msgstr "edytor"
+
+#: gtk2_ardour/editor_route_list.cc:339
+#: gtk2_ardour/mixer_ui.cc:900
+msgid "Show All"
+msgstr "Wyświetl wszystko"
+
+#: gtk2_ardour/editor_route_list.cc:340
+#: gtk2_ardour/mixer_ui.cc:901
+msgid "Hide All"
+msgstr "Ukryj wszystko"
+
+#: gtk2_ardour/editor_route_list.cc:341
+#: gtk2_ardour/mixer_ui.cc:902
+msgid "Show All Audio Tracks"
+msgstr "Wyświetl wszystkie ścieżki audio"
+
+#: gtk2_ardour/editor_route_list.cc:342
+#: gtk2_ardour/mixer_ui.cc:903
+msgid "Hide All Audio Tracks"
+msgstr "Ukryj wszystkie ścieżki audio"
+
+#: gtk2_ardour/editor_route_list.cc:343
+#: gtk2_ardour/mixer_ui.cc:904
+msgid "Show All Audio Busses"
+msgstr "Wyświetl wszystkie szyny audio"
+
+#: gtk2_ardour/editor_route_list.cc:344
+#: gtk2_ardour/mixer_ui.cc:905
+msgid "Hide All Audio Busses"
+msgstr "Ukryj wszystkie szyny audio"
+
+#: gtk2_ardour/editor_rulers.cc:352
+msgid "New location marker"
+msgstr "Nowy znacznik położenia"
+
+#: gtk2_ardour/editor_rulers.cc:353
+msgid "Clear all locations"
+msgstr "Wyczyść wszystkie położenia"
+
+#: gtk2_ardour/editor_rulers.cc:354
+msgid "Unhide locations"
+msgstr "Wyświetl położenia"
+
+#: gtk2_ardour/editor_rulers.cc:359
+msgid "Clear all ranges"
+msgstr "Wyczyść wszystkie zakresy"
+
+#: gtk2_ardour/editor_rulers.cc:360
+msgid "Unhide ranges"
+msgstr "Wyświetl zakresy"
+
+#: gtk2_ardour/editor_rulers.cc:370
+msgid "New CD track marker"
+msgstr "Nowy znacznik zakresu (ścieżka CD)"
+
+#: gtk2_ardour/editor_rulers.cc:375
+msgid "New Tempo"
+msgstr "Nowe tempo"
+
+#: gtk2_ardour/editor_rulers.cc:376
+msgid "Clear tempo"
+msgstr "Wyczyść tempo"
+
+#: gtk2_ardour/editor_rulers.cc:381
+msgid "New Meter"
+msgstr "Nowe metrum"
+
+#: gtk2_ardour/editor_rulers.cc:382
+msgid "Clear meter"
+msgstr "Wyczyść metrum"
+
+#: gtk2_ardour/editor_selection.cc:727
+msgid "set selected regions"
+msgstr "ustaw zaznaczone obszary"
+
+#: gtk2_ardour/editor_selection.cc:869
+msgid "select all"
+msgstr "Zaznacz wszystko"
+
+#: gtk2_ardour/editor_selection.cc:958
+msgid "select all within"
+msgstr "zaznacz wszystko wewnÄ…trz"
+
+#: gtk2_ardour/editor_selection.cc:1018
+msgid "set selection from range"
+msgstr ""
+
+#: gtk2_ardour/editor_selection.cc:1058
+msgid "select all from range"
+msgstr ""
+
+#: gtk2_ardour/editor_selection.cc:1089
+msgid "select all from punch"
+msgstr ""
+
+#: gtk2_ardour/editor_selection.cc:1120
+msgid "select all from loop"
+msgstr ""
+
+#: gtk2_ardour/editor_selection.cc:1134
+msgid "select all after cursor"
+msgstr ""
+
+#: gtk2_ardour/editor_selection.cc:1139
+msgid "select all before cursor"
+msgstr ""
+
+#: gtk2_ardour/editor_selection.cc:1174
+msgid "select all after edit"
+msgstr "Zaznacz wszystko za edycjÄ…"
+
+#: gtk2_ardour/editor_selection.cc:1179
+msgid "select all before edit"
+msgstr "Zaznacz wszystko przed edycjÄ…"
+
+#: gtk2_ardour/editor_selection.cc:1306
+msgid "No edit range defined"
+msgstr ""
+
+#: gtk2_ardour/editor_selection.cc:1312
+msgid ""
+"the edit point is Selected Marker\n"
+"but there is no selected marker."
+msgstr ""
+
+#: gtk2_ardour/editor_selection_list.cc:180
+msgid "Name for Chunk:"
+msgstr "Nazwa fragmentu:"
+
+#: gtk2_ardour/editor_selection_list.cc:183
+msgid "Create Chunk"
+msgstr "Utwórz fragment"
+
+#: gtk2_ardour/editor_selection_list.cc:183
+msgid "Forget it"
+msgstr "Zapomnij"
+
+#: gtk2_ardour/editor_selection_list.cc:206
+msgid "No selectable material found in the currently selected time range"
+msgstr ""
+
+#: gtk2_ardour/editor_tempodisplay.cc:293
+#: gtk2_ardour/editor_tempodisplay.cc:336
+msgid "add"
+msgstr "dodaj"
+
+#: gtk2_ardour/editor_tempodisplay.cc:317
+msgid "add tempo mark"
+msgstr "dodaj znacznik tempa"
+
+#: gtk2_ardour/editor_tempodisplay.cc:360
+msgid "add meter mark"
+msgstr "dodaj oznaczenie metrum"
+
+#: gtk2_ardour/editor_tempodisplay.cc:393
+#: gtk2_ardour/editor_tempodisplay.cc:422
+msgid "done"
+msgstr "ukończono"
+
+#: gtk2_ardour/editor_tempodisplay.cc:411
+#: gtk2_ardour/editor_tempodisplay.cc:443
+msgid "replace tempo mark"
+msgstr "zamień znacznik tempa"
+
+#: gtk2_ardour/editor_tempodisplay.cc:485
+#: gtk2_ardour/editor_tempodisplay.cc:517
+msgid "programming error: marker for meter is not a meter marker!"
+msgstr ""
+
+#: gtk2_ardour/editor_tempodisplay.cc:495
+#: gtk2_ardour/editor_tempodisplay.cc:529
+msgid "remove tempo mark"
+msgstr "usuń znacznik tempa"
+
+#: gtk2_ardour/editor_timefx.cc:71
+msgid "Quick but Ugly"
+msgstr "Szybko i niedokładnie"
+
+#: gtk2_ardour/editor_timefx.cc:72
+msgid "Skip Anti-aliasing"
+msgstr "Pomiń anti-aliasing"
+
+#: gtk2_ardour/editor_timefx.cc:73
+msgid "Contents:"
+msgstr "Zawartość:"
+
+#: gtk2_ardour/editor_timefx.cc:74
+msgid "Strict Linear"
+msgstr "Liniowe"
+
+#: gtk2_ardour/editor_timefx.cc:78
+msgid "TimeFXDialog"
+msgstr "Okno rozciÄ…gania w czasie"
+
+#: gtk2_ardour/editor_timefx.cc:82
+msgid "Pitch Shift"
+msgstr ""
+
+#: gtk2_ardour/editor_timefx.cc:84
+msgid "Time Stretch"
+msgstr "RozciÄ…ganie w czasie"
+
+#: gtk2_ardour/editor_timefx.cc:100
+msgid "Octaves"
+msgstr "Oktawy"
+
+#: gtk2_ardour/editor_timefx.cc:104
+msgid "Semitones (12TET)"
+msgstr "Półtony (12TET)"
+
+#: gtk2_ardour/editor_timefx.cc:108
+msgid "Cents"
+msgstr ""
+
+#: gtk2_ardour/editor_timefx.cc:114
+msgid "Shift"
+msgstr ""
+
+#: gtk2_ardour/editor_timefx.cc:143
+#: gtk2_ardour/editor_timefx.cc:144
+msgid "TimeFXButton"
+msgstr ""
+
+#: gtk2_ardour/editor_timefx.cc:149
+msgid "Stretch/Shrink"
+msgstr "RozciÄ…gnij/skurcz"
+
+#: gtk2_ardour/editor_timefx.cc:154
+msgid "TimeFXProgress"
+msgstr ""
+
+#: gtk2_ardour/editor_timefx.cc:326
+msgid "timefx cannot be started - thread creation error"
+msgstr ""
+
+#: gtk2_ardour/editor_timefx.cc:407
+msgid "pitch shift"
+msgstr ""
+
+#: gtk2_ardour/editor_timefx.cc:407
+msgid "time stretch"
+msgstr "rozciÄ…ganie w czasie"
+
+#: gtk2_ardour/engine_dialog.cc:49
+msgid "Realtime"
+msgstr "Tryb czasu rzeczywistego"
+
+#: gtk2_ardour/engine_dialog.cc:50
+msgid "Do not lock memory"
+msgstr "Bez blokowania pamięci"
+
+#: gtk2_ardour/engine_dialog.cc:51
+msgid "Unlock memory"
+msgstr "Odblokowanie pamięci"
+
+#: gtk2_ardour/engine_dialog.cc:52
+msgid "No zombies"
+msgstr "Brak zombi"
+
+#: gtk2_ardour/engine_dialog.cc:53
+msgid "Provide monitor ports"
+msgstr "Monitorowanie portów"
+
+#: gtk2_ardour/engine_dialog.cc:54
+msgid "Force 16 bit"
+msgstr "Wymuszanie 16 bitów"
+
+#: gtk2_ardour/engine_dialog.cc:55
+msgid "H/W monitoring"
+msgstr "Monitorowanie H/W"
+
+#: gtk2_ardour/engine_dialog.cc:56
+msgid "H/W metering"
+msgstr "Odmierzanie H/W"
+
+#: gtk2_ardour/engine_dialog.cc:57
+msgid "Verbose output"
+msgstr "Złożone wyjście"
+
+#: gtk2_ardour/engine_dialog.cc:58
+msgid "Start"
+msgstr ""
+
+#: gtk2_ardour/engine_dialog.cc:77
+msgid "8000Hz"
+msgstr "8000Hz"
+
+#: gtk2_ardour/engine_dialog.cc:78
+msgid "22050Hz"
+msgstr "22050Hz"
+
+#: gtk2_ardour/engine_dialog.cc:79
+msgid "44100Hz"
+msgstr "44100Hz"
+
+#: gtk2_ardour/engine_dialog.cc:80
+msgid "48000Hz"
+msgstr "48000Hz"
+
+#: gtk2_ardour/engine_dialog.cc:81
+msgid "88200Hz"
+msgstr "88200Hz"
+
+#: gtk2_ardour/engine_dialog.cc:82
+msgid "96000Hz"
+msgstr "96000Hz"
+
+#: gtk2_ardour/engine_dialog.cc:83
+msgid "192000Hz"
+msgstr "192000Hz"
+
+#: gtk2_ardour/engine_dialog.cc:102
+#: gtk2_ardour/engine_dialog.cc:496
+#: gtk2_ardour/export_dialog.cc:81
+#: gtk2_ardour/export_dialog.cc:1298
+msgid "Triangular"
+msgstr "Triangular"
+
+#: gtk2_ardour/engine_dialog.cc:103
+#: gtk2_ardour/engine_dialog.cc:498
+#: gtk2_ardour/export_dialog.cc:79
+#: gtk2_ardour/export_dialog.cc:1296
+msgid "Rectangular"
+msgstr "Rectangular"
+
+#: gtk2_ardour/engine_dialog.cc:104
+#: gtk2_ardour/engine_dialog.cc:500
+msgid "Shaped"
+msgstr "Shaped"
+
+#: gtk2_ardour/engine_dialog.cc:129
+#: gtk2_ardour/engine_dialog.cc:449
+#: gtk2_ardour/engine_dialog.cc:883
+msgid "Playback/Recording on 1 Device"
+msgstr "Odtwarzanie/nagrywanie przy użyciu 1 urządzenia"
+
+#: gtk2_ardour/engine_dialog.cc:130
+#: gtk2_ardour/engine_dialog.cc:453
+#: gtk2_ardour/engine_dialog.cc:480
+#: gtk2_ardour/engine_dialog.cc:886
+msgid "Playback/Recording on 2 Devices"
+msgstr "Odtwarzanie/nagrywanie przy użyciu 2 urządzeń"
+
+#: gtk2_ardour/engine_dialog.cc:131
+#: gtk2_ardour/engine_dialog.cc:460
+#: gtk2_ardour/engine_dialog.cc:889
+msgid "Playback only"
+msgstr "Tylko odtwarzanie"
+
+#: gtk2_ardour/engine_dialog.cc:132
+#: gtk2_ardour/engine_dialog.cc:462
+#: gtk2_ardour/engine_dialog.cc:891
+msgid "Recording only"
+msgstr "Tylko nagrywanie"
+
+#: gtk2_ardour/engine_dialog.cc:141
+msgid "Driver"
+msgstr "Sterownik"
+
+#: gtk2_ardour/engine_dialog.cc:146
+msgid "Interface"
+msgstr "Interfejs"
+
+#: gtk2_ardour/engine_dialog.cc:151
+#: gtk2_ardour/export_dialog.cc:108
+msgid "Sample Rate"
+msgstr "Częstotliwość próbkowania"
+
+#: gtk2_ardour/engine_dialog.cc:156
+msgid "Buffer size"
+msgstr "Rozmiar bufora"
+
+#: gtk2_ardour/engine_dialog.cc:162
+msgid "Number of buffers"
+msgstr "Liczba buforów"
+
+#: gtk2_ardour/engine_dialog.cc:169
+msgid "Approximate latency"
+msgstr "Przybliżone opóźnienie"
+
+#: gtk2_ardour/engine_dialog.cc:183
+msgid "Audio Mode"
+msgstr "Tryb dźwięku"
+
+#: gtk2_ardour/engine_dialog.cc:222
+msgid "Realtime Priority"
+msgstr "Priorytet"
+
+#: gtk2_ardour/engine_dialog.cc:251
+#: gtk2_ardour/engine_dialog.cc:375
+msgid "Ignore"
+msgstr "Ignorowanie"
+
+#: gtk2_ardour/engine_dialog.cc:259
+msgid "Client timeout"
+msgstr "Limit czasu na opowiedź klienta"
+
+#: gtk2_ardour/engine_dialog.cc:265
+msgid "Number of ports"
+msgstr "Liczba portów"
+
+#: gtk2_ardour/engine_dialog.cc:272
+msgid "Dither"
+msgstr ""
+
+#: gtk2_ardour/engine_dialog.cc:282
+msgid "No JACK server found anywhere on this system. Please install JACK and restart"
+msgstr "Nie znaleziono serwera JACK w systemie. Proszę zainstalować JACK i spróbować ponownie."
+
+#: gtk2_ardour/engine_dialog.cc:290
+msgid "Server:"
+msgstr "Serwer:"
+
+#: gtk2_ardour/engine_dialog.cc:303
+msgid "Input device"
+msgstr "Urządzenie wejściowe"
+
+#: gtk2_ardour/engine_dialog.cc:308
+msgid "Output device"
+msgstr "Urządzenie wyjściowe"
+
+#: gtk2_ardour/engine_dialog.cc:314
+msgid "Input channels"
+msgstr "Kanały wejściowe"
+
+#: gtk2_ardour/engine_dialog.cc:319
+msgid "Output channels"
+msgstr "Kanały wyjściowe"
+
+#: gtk2_ardour/engine_dialog.cc:324
+msgid "Hardware input latency (samples)"
+msgstr "Sprzętowe opóźnienie dla wejścia (próbki)"
+
+#: gtk2_ardour/engine_dialog.cc:329
+msgid "Hardware output latency (samples)"
+msgstr "Sprzętowe opóźnienie dla wyjścia (próbki)"
+
+#: gtk2_ardour/engine_dialog.cc:342
+msgid "Device"
+msgstr "UrzÄ…dzenie"
+
+#: gtk2_ardour/engine_dialog.cc:344
+msgid "Advanced"
+msgstr "Zaawansowane"
+
+#: gtk2_ardour/engine_dialog.cc:553
+msgid "cannot open JACK rc file %1 to store parameters"
+msgstr ""
+
+#: gtk2_ardour/engine_dialog.cc:694
+msgid ""
+"You do not have any audio devices capable of\n"
+"simultaneous playback and recording.\n"
+"\n"
+"Please use Applications -> Utilities -> Audio MIDI Setup\n"
+"to create an \"aggregrate\" device, or install a suitable\n"
+"audio interface.\n"
+"\n"
+"Please send email to Apple and ask them why new Macs\n"
+"have no duplex audio device.\n"
+"\n"
+"Alternatively, if you really want just playback\n"
+"or recording but not both, start JACK before running\n"
+"Ardour and choose the relevant device then."
+msgstr ""
+
+#: gtk2_ardour/engine_dialog.cc:707
+msgid "No suitable audio devices"
+msgstr ""
+
+#: gtk2_ardour/engine_dialog.cc:819
+msgid "No devices found for driver \"%1\""
+msgstr "Brak urządzeń sterownika \"%1\""
+
+#: gtk2_ardour/engine_dialog.cc:924
+msgid "JACK appears to be missing from the Ardour bundle"
+msgstr ""
+
+#: gtk2_ardour/engine_dialog.cc:1148
+msgid "AudioSetup value for %1 is missing data"
+msgstr ""
+
+#: gtk2_ardour/engine_dialog.cc:1228
+msgid "configuration files contain a JACK server path that doesn't exist (%1)"
+msgstr "pliki konfiguracyjne zawierają nieistniejące położenie serwera JACK (%1)"
+
+#: gtk2_ardour/export_dialog.cc:59
+#: gtk2_ardour/export_dialog.cc:423
+#: gtk2_ardour/export_dialog.cc:1090
+#: gtk2_ardour/export_dialog.cc:1260
+msgid "22.05kHz"
+msgstr "22.05kHz"
+
+#: gtk2_ardour/export_dialog.cc:60
+#: gtk2_ardour/export_dialog.cc:426
+#: gtk2_ardour/export_dialog.cc:441
+#: gtk2_ardour/export_dialog.cc:1092
+#: gtk2_ardour/export_dialog.cc:1262
+msgid "44.1kHz"
+msgstr "44.1kHz"
+
+#: gtk2_ardour/export_dialog.cc:61
+#: gtk2_ardour/export_dialog.cc:429
+#: gtk2_ardour/export_dialog.cc:1094
+#: gtk2_ardour/export_dialog.cc:1264
+msgid "48kHz"
+msgstr "48kHz"
+
+#: gtk2_ardour/export_dialog.cc:62
+#: gtk2_ardour/export_dialog.cc:432
+#: gtk2_ardour/export_dialog.cc:1096
+#: gtk2_ardour/export_dialog.cc:1266
+msgid "88.2kHz"
+msgstr "88.2kHz"
+
+#: gtk2_ardour/export_dialog.cc:63
+#: gtk2_ardour/export_dialog.cc:435
+#: gtk2_ardour/export_dialog.cc:1098
+#: gtk2_ardour/export_dialog.cc:1268
+msgid "96kHz"
+msgstr "96kHz"
+
+#: gtk2_ardour/export_dialog.cc:64
+#: gtk2_ardour/export_dialog.cc:438
+#: gtk2_ardour/export_dialog.cc:1100
+#: gtk2_ardour/export_dialog.cc:1270
+msgid "192kHz"
+msgstr "192kHz"
+
+#: gtk2_ardour/export_dialog.cc:69
+msgid "best"
+msgstr "najlepsza"
+
+#: gtk2_ardour/export_dialog.cc:70
+#: gtk2_ardour/export_dialog.cc:1280
+msgid "fastest"
+msgstr "najszybsza"
+
+#: gtk2_ardour/export_dialog.cc:71
+#: gtk2_ardour/export_dialog.cc:1282
+msgid "linear"
+msgstr "linearna"
+
+#: gtk2_ardour/export_dialog.cc:72
+#: gtk2_ardour/export_dialog.cc:1284
+msgid "better"
+msgstr "lepsza"
+
+#: gtk2_ardour/export_dialog.cc:73
+#: gtk2_ardour/export_dialog.cc:1286
+msgid "intermediate"
+msgstr "średnia"
+
+#: gtk2_ardour/export_dialog.cc:80
+msgid "Shaped Noise"
+msgstr ""
+
+#: gtk2_ardour/export_dialog.cc:86
+msgid "stereo"
+msgstr "stereo"
+
+#: gtk2_ardour/export_dialog.cc:87
+#: gtk2_ardour/export_dialog.cc:510
+#: gtk2_ardour/export_dialog.cc:1118
+#: gtk2_ardour/export_dialog.cc:1240
+msgid "mono"
+msgstr "mono"
+
+#: gtk2_ardour/export_dialog.cc:93
+msgid "CUE"
+msgstr "CUE"
+
+#: gtk2_ardour/export_dialog.cc:94
+#: gtk2_ardour/export_dialog.cc:926
+msgid "TOC"
+msgstr "TOC"
+
+#: gtk2_ardour/export_dialog.cc:102
+msgid "Format"
+msgstr "Format"
+
+#: gtk2_ardour/export_dialog.cc:103
+msgid "CD Marker File Type"
+msgstr ""
+
+#: gtk2_ardour/export_dialog.cc:104
+msgid "Channels"
+msgstr "Kanały"
+
+#: gtk2_ardour/export_dialog.cc:107
+msgid "Sample Endianness"
+msgstr ""
+
+#: gtk2_ardour/export_dialog.cc:109
+msgid "Conversion Quality"
+msgstr "Jakość konwersji"
+
+#: gtk2_ardour/export_dialog.cc:110
+msgid "Dither Type"
+msgstr "Rodzaj ditheringu"
+
+#: gtk2_ardour/export_dialog.cc:111
+msgid "Export CD Marker File Only"
+msgstr ""
+
+#: gtk2_ardour/export_dialog.cc:112
+#: gtk2_ardour/option_editor.cc:102
+#: gtk2_ardour/option_editor.cc:103
+msgid "Browse"
+msgstr "PrzeglÄ…daj"
+
+#: gtk2_ardour/export_dialog.cc:113
+msgid "Specific tracks ..."
+msgstr "Określone ścieżki..."
+
+#: gtk2_ardour/export_dialog.cc:141
+#: gtk2_ardour/export_dialog.cc:157
+#: gtk2_ardour/mixer_strip.cc:128
+#: gtk2_ardour/mixer_strip.cc:730
+msgid "Output"
+msgstr "Wyjście"
+
+#: gtk2_ardour/export_dialog.cc:656
+msgid "Editor: cannot open \"%1\" as export file for CD toc file"
+msgstr ""
+
+#: gtk2_ardour/export_dialog.cc:790
+msgid "Editor: cannot open \"%1\" as export file for CD cue file"
+msgstr ""
+
+#: gtk2_ardour/export_dialog.cc:809
+msgid "WAV"
+msgstr "WAV"
+
+#: gtk2_ardour/export_dialog.cc:941
+msgid "Not connected to audioengine"
+msgstr "Brak połączenia z silnikiem dźwięku"
+
+#: gtk2_ardour/export_dialog.cc:945
+msgid "Ardour cannot export audio when disconnected"
+msgstr ""
+
+#: gtk2_ardour/export_dialog.cc:975
+msgid "Stop Export"
+msgstr "Zatrzymaj eksport"
+
+#: gtk2_ardour/export_dialog.cc:1194
+msgid "Please enter a valid filename."
+msgstr "Wpisz poprawnÄ… nazwÄ™ pliku."
+
+#: gtk2_ardour/export_dialog.cc:1204
+msgid "Please specify a complete filename for the audio file."
+msgstr "Określ kompletną nazwę dla pliku dźwiękowego."
+
+#: gtk2_ardour/export_dialog.cc:1210
+msgid "File already exists, do you want to overwrite it?"
+msgstr "Plik już istnieje. Zastąpić go?"
+
+#: gtk2_ardour/export_dialog.cc:1222
+#: gtk2_ardour/export_range_markers_dialog.cc:160
+msgid "Cannot write file in: "
+msgstr "Nie można zapisać pliku w: "
+
+#: gtk2_ardour/export_range_markers_dialog.cc:41
+msgid "ardour: export ranges"
+msgstr "Eksportowanie zakresów"
+
+#: gtk2_ardour/export_range_markers_dialog.cc:42
+msgid "Export to Directory"
+msgstr "Eksport do katalogu"
+
+#: gtk2_ardour/export_range_markers_dialog.cc:143
+msgid "Please enter a valid target directory."
+msgstr "Określ poprawny katalog docelowy."
+
+#: gtk2_ardour/export_range_markers_dialog.cc:151
+msgid "Please select an existing target directory. Files are not allowed!"
+msgstr "Wybierz istniejÄ…cy katalog docelowy."
+
+#: gtk2_ardour/export_region_dialog.cc:34
+msgid "ardour: export region"
+msgstr "Eksportowanie obszaru"
+
+#: gtk2_ardour/export_region_dialog.cc:35
+#: gtk2_ardour/export_session_dialog.cc:29
+msgid "Export to File"
+msgstr "Eksport do pliku"
+
+#: gtk2_ardour/gain_automation_time_axis.cc:64
+msgid "add gain automation event"
+msgstr "dodaj zdarzenie automatyki wzmocnienia"
+
+#: gtk2_ardour/gain_meter.cc:114
+#: gtk2_ardour/gain_meter.cc:346
+#: gtk2_ardour/gain_meter.cc:542
+#: gtk2_ardour/gain_meter.cc:613
+msgid "-inf"
+msgstr ""
+
+#: gtk2_ardour/gain_meter.cc:125
+msgid "Fader automation mode"
+msgstr "Tryb automatyzacji wzmocnienia"
+
+#: gtk2_ardour/gain_meter.cc:126
+msgid "Fader automation type"
+msgstr "Rodzaj automatyzacji wzmocnienia"
+
+#: gtk2_ardour/gain_meter.cc:170
+#: gtk2_ardour/gain_meter.cc:908
+#: gtk2_ardour/panner_ui.cc:98
+#: gtk2_ardour/panner_ui.cc:790
+msgid "Abs"
+msgstr ""
+
+#: gtk2_ardour/gain_meter.cc:520
+msgid "-Inf"
+msgstr ""
+
+#: gtk2_ardour/gain_meter.cc:724
+#: gtk2_ardour/gain_meter.cc:739
+msgid "meter point change"
+msgstr "miejsce zmiany metrum"
+
+#: gtk2_ardour/gain_meter.cc:872
+#: gtk2_ardour/mixer_strip.cc:444
+#: gtk2_ardour/panner_ui.cc:754
+msgid "M"
+msgstr ""
+
+#: gtk2_ardour/gain_meter.cc:875
+#: gtk2_ardour/panner_ui.cc:757
+msgid "P"
+msgstr ""
+
+#: gtk2_ardour/gain_meter.cc:878
+#: gtk2_ardour/panner_ui.cc:760
+msgid "T"
+msgstr ""
+
+#: gtk2_ardour/gain_meter.cc:881
+#: gtk2_ardour/panner_ui.cc:763
+msgid "W"
+msgstr ""
+
+#: gtk2_ardour/generic_pluginui.cc:80
+msgid "<span size=\"large\">Presets</span>"
+msgstr ""
+
+#: gtk2_ardour/generic_pluginui.cc:208
+msgid "Plugin Editor: could not build control element for port %1"
+msgstr ""
+
+#: gtk2_ardour/generic_pluginui.cc:298
+msgid "Automation control"
+msgstr "Kontrola automatyzacji"
+
+#: gtk2_ardour/generic_pluginui.cc:305
+msgid "Mgnual"
+msgstr ""
+
+#: gtk2_ardour/gtk-custom-ruler.c:126
+msgid "Lower"
+msgstr ""
+
+#: gtk2_ardour/gtk-custom-ruler.c:127
+msgid "Lower limit of ruler"
+msgstr ""
+
+#: gtk2_ardour/gtk-custom-ruler.c:136
+msgid "Upper"
+msgstr ""
+
+#: gtk2_ardour/gtk-custom-ruler.c:137
+msgid "Upper limit of ruler"
+msgstr ""
+
+#: gtk2_ardour/gtk-custom-ruler.c:146
+msgid "Position"
+msgstr "Pozycja"
+
+#: gtk2_ardour/gtk-custom-ruler.c:147
+msgid "Position of mark on the ruler"
+msgstr ""
+
+#: gtk2_ardour/gtk-custom-ruler.c:156
+msgid "Max Size"
+msgstr "Największy rozmiar"
+
+#: gtk2_ardour/gtk-custom-ruler.c:157
+msgid "Maximum size of the ruler"
+msgstr ""
+
+#: gtk2_ardour/gtk-custom-ruler.c:166
+msgid "Show Position"
+msgstr "Wyświetl pozycję"
+
+#: gtk2_ardour/gtk-custom-ruler.c:167
+msgid "Draw current ruler position"
+msgstr ""
+
+#: gtk2_ardour/imageframe_socket_handler.cc:126
+msgid "Image Compositor Socket has been shutdown/closed"
+msgstr ""
+
+#: gtk2_ardour/imageframe_time_axis.cc:255
+#: gtk2_ardour/marker_time_axis.cc:211
+#: gtk2_ardour/route_time_axis.cc:452
+#: gtk2_ardour/theme_manager.cc:53
+msgid "Color"
+msgstr "Kolor"
+
+#: gtk2_ardour/imageframe_time_axis.cc:285
+msgid "0.5 seconds"
+msgstr "0.5 sekundy"
+
+#: gtk2_ardour/imageframe_time_axis.cc:286
+#: gtk2_ardour/marker_time_axis.cc:241
+msgid "1 seconds"
+msgstr "1 sekunda"
+
+#: gtk2_ardour/imageframe_time_axis.cc:287
+#: gtk2_ardour/marker_time_axis.cc:242
+msgid "1.5 seconds"
+msgstr "1.5 sekundy"
+
+#: gtk2_ardour/imageframe_time_axis.cc:288
+#: gtk2_ardour/marker_time_axis.cc:243
+msgid "2 seconds"
+msgstr "2 sekundy"
+
+#: gtk2_ardour/imageframe_time_axis.cc:289
+#: gtk2_ardour/marker_time_axis.cc:244
+msgid "2.5 seconds"
+msgstr "2.5 sekundy"
+
+#: gtk2_ardour/imageframe_time_axis.cc:290
+#: gtk2_ardour/marker_time_axis.cc:245
+msgid "3 seconds"
+msgstr "3 sekundy"
+
+#: gtk2_ardour/imageframe_time_axis.cc:295
+#: gtk2_ardour/marker_time_axis.cc:250
+msgid "Duration (sec)"
+msgstr "Czas trwania (s)"
+
+#: gtk2_ardour/imageframe_time_axis.cc:300
+msgid "Remove Frame"
+msgstr "Usuń klatkę"
+
+#: gtk2_ardour/imageframe_time_axis.cc:303
+msgid "Image Frame"
+msgstr ""
+
+#: gtk2_ardour/imageframe_time_axis.cc:304
+#: gtk2_ardour/marker_time_axis.cc:256
+msgid "Rename Track"
+msgstr "Zmień nazwę ścieżki"
+
+#: gtk2_ardour/io_selector.cc:59
+#: gtk2_ardour/io_selector.cc:749
+#: gtk2_ardour/connection_editor.cc:85
+msgid "OK"
+msgstr "OK"
+
+#: gtk2_ardour/io_selector.cc:61
+#: gtk2_ardour/io_selector.cc:751
+#: gtk2_ardour/connection_editor.cc:60
+#: gtk2_ardour/connection_editor.cc:109
+msgid "Rescan"
+msgstr "Skanuj ponownie"
+
+#: gtk2_ardour/io_selector.cc:69
+msgid "%1 input"
+msgstr "%1 wejście"
+
+#: gtk2_ardour/io_selector.cc:71
+msgid "%1 output"
+msgstr "%1 wyjście"
+
+#: gtk2_ardour/io_selector.cc:143
+#: gtk2_ardour/route_params_ui.cc:103
+msgid "Inputs"
+msgstr "Wejścia"
+
+#: gtk2_ardour/io_selector.cc:143
+#: gtk2_ardour/route_params_ui.cc:104
+msgid "Outputs"
+msgstr "Wyjścia"
+
+#: gtk2_ardour/io_selector.cc:144
+msgid "Add Input"
+msgstr "Dodaj"
+
+#: gtk2_ardour/io_selector.cc:144
+msgid "Add Output"
+msgstr "Dodaj"
+
+#: gtk2_ardour/io_selector.cc:145
+msgid "Remove Input"
+msgstr "Usuń"
+
+#: gtk2_ardour/io_selector.cc:145
+msgid "Remove Output"
+msgstr "Usuń"
+
+#: gtk2_ardour/io_selector.cc:146
+msgid "Disconnect All"
+msgstr "Rozłącz wszystkie"
+
+#: gtk2_ardour/io_selector.cc:160
+msgid "Available connections"
+msgstr "Dostępne połączenia"
+
+#: gtk2_ardour/io_selector.cc:550
+#: gtk2_ardour/io_selector.cc:561
+msgid "There are no more JACK ports available."
+msgstr "Nie ma więcej dostępnych portów JACK."
+
+#: gtk2_ardour/io_selector.cc:755
+msgid "ardour: "
+msgstr "ardour: "
+
+#: gtk2_ardour/keyboard.cc:76
+#: gtk2_ardour/keyboard.cc:546
+msgid "Unknown"
+msgstr "Nieznany"
+
+#: gtk2_ardour/keyboard.cc:427
+msgid "your own"
+msgstr "własny"
+
+#: gtk2_ardour/keyboard.cc:491
+#: gtk2_ardour/keyboard.cc:515
+msgid "Default keybindings not found - Ardour will be hard to use!"
+msgstr ""
+
+#: gtk2_ardour/keyboard.cc:494
+#: gtk2_ardour/keyboard.cc:518
+msgid "Key bindings file \"%1\" not found. Default bindings used instead"
+msgstr ""
+
+#: gtk2_ardour/keyboard.cc:558
+msgid "Ardour key bindings file not found at \"%1\" or contains errors."
+msgstr "Nie znaleziono pliku strótów klawiaturowych w \"%1\" lub zawierał on błędy."
+
+#: gtk2_ardour/keyeditor.cc:28
+msgid "Shortcut Editor"
+msgstr "Edytor skrótów"
+
+#: gtk2_ardour/keyeditor.cc:29
+msgid "Remove shortcut"
+msgstr "Usuń skrót"
+
+#: gtk2_ardour/keyeditor.cc:39
+msgid "Action"
+msgstr "Czynność"
+
+#: gtk2_ardour/keyeditor.cc:40
+msgid "Shortcut"
+msgstr "Skrót"
+
+#: gtk2_ardour/keyeditor.cc:60
+msgid "Select an action, then press the key(s) to (re)set its shortcut"
+msgstr ""
+
+#: gtk2_ardour/keyeditor.cc:264
+msgid "Command-"
+msgstr "Komenda "
+
+#: gtk2_ardour/keyeditor.cc:265
+msgid "Option-"
+msgstr "Opcja "
+
+#: gtk2_ardour/keyeditor.cc:266
+msgid "Shift-"
+msgstr ""
+
+#: gtk2_ardour/keyeditor.cc:267
+msgid "Control-"
+msgstr "Sterowanie "
+
+#: gtk2_ardour/location_ui.cc:49
+#: gtk2_ardour/location_ui.cc:52
+msgid "Set"
+msgstr "Ustaw"
+
+#: gtk2_ardour/location_ui.cc:50
+#: gtk2_ardour/location_ui.cc:53
+msgid "Go"
+msgstr "Przejdź"
+
+#: gtk2_ardour/location_ui.cc:56
+msgid "CD"
+msgstr "CD"
+
+#: gtk2_ardour/location_ui.cc:59
+msgid "SCMS"
+msgstr "SCMS"
+
+#: gtk2_ardour/location_ui.cc:60
+msgid "Pre-Emphasis"
+msgstr "Przed naciskiem"
+
+#: gtk2_ardour/location_ui.cc:430
+msgid "You cannot put a CD marker at the start of the session"
+msgstr ""
+
+#: gtk2_ardour/location_ui.cc:605
+msgid "Add New Location"
+msgstr "Dodaj nowe położenie"
+
+#: gtk2_ardour/location_ui.cc:606
+msgid "Add New Range"
+msgstr "Dodaj nowy zakres"
+
+#: gtk2_ardour/location_ui.cc:642
+msgid "Location (CD Index) Markers"
+msgstr "Znaczniki położenia (CD Index)"
+
+#: gtk2_ardour/location_ui.cc:662
+msgid "Range (CD Track) Markers"
+msgstr "Znaczniki zakresu (CD Track)"
+
+#: gtk2_ardour/location_ui.cc:842
+msgid "add range marker"
+msgstr "dodaj znacznik zakresu"
+
+#: gtk2_ardour/main.cc:175
+msgid "cannot create user ardour folder %1 (%2)"
+msgstr ""
+
+#: gtk2_ardour/main.cc:183
+msgid "cannot open pango.rc file %1"
+msgstr "nie można otworzyć pliku pango.rc %1"
+
+#: gtk2_ardour/main.cc:270
+msgid "Ardour/GTK "
+msgstr "Ardour/GTK "
+
+#: gtk2_ardour/main.cc:272
+msgid ""
+"\n"
+" (built using "
+msgstr ""
+"\n"
+" (skompilowany przy użyciu "
+
+#: gtk2_ardour/main.cc:275
+msgid " and GCC version "
+msgstr " oraz GCC w wesji "
+
+#: gtk2_ardour/main.cc:285
+msgid "Copyright (C) 1999-2008 Paul Davis"
+msgstr "Copyright (C) 1999-2008 Paul Davis"
+
+#: gtk2_ardour/main.cc:286
+msgid "Some portions Copyright (C) Steve Harris, Ari Johnson, Brett Viren, Joel Baker"
+msgstr "Prawa autorskie do niektórych fragmentów (C) Steve Harris, Ari Johnson, Brett Viren, Joel Baker"
+
+#: gtk2_ardour/main.cc:288
+msgid "Ardour comes with ABSOLUTELY NO WARRANTY"
+msgstr "Na program Ardour nie udziela się ABSOLUTNIE ŻADNEJ GWARANCJI"
+
+#: gtk2_ardour/main.cc:289
+msgid "not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+msgstr ""
+
+#: gtk2_ardour/main.cc:290
+msgid "This is free software, and you are welcome to redistribute it "
+msgstr "To jest oprogramowanie darmowe i możesz je rozpowszechniać"
+
+#: gtk2_ardour/main.cc:291
+msgid "under certain conditions; see the source for copying conditions."
+msgstr "na ściśle określonych zasadach; zobacz plik COPYING by dowiedzieć się więcej."
+
+#: gtk2_ardour/main.cc:302
+msgid "could not create ARDOUR GUI"
+msgstr "Nie można utworzyć Ardour GUI"
+
+#: gtk2_ardour/marker.cc:245
+msgid "MarkerText"
+msgstr "Tekst znacznika"
+
+#: gtk2_ardour/marker_time_axis.cc:253
+msgid "Remove Marker"
+msgstr "Usuń znacznik"
+
+#: gtk2_ardour/midi_port_dialog.cc:22
+msgid "Port name"
+msgstr "Nazwa portu"
+
+#: gtk2_ardour/mixer_strip.cc:88
+#: gtk2_ardour/route_time_axis.cc:171
+msgid "Record"
+msgstr "Nagrywanie"
+
+#: gtk2_ardour/mixer_strip.cc:98
+#: gtk2_ardour/mixer_strip.cc:144
+#: gtk2_ardour/mixer_strip.cc:1222
+msgid "pre"
+msgstr "przed"
+
+#: gtk2_ardour/mixer_strip.cc:99
+#: gtk2_ardour/mixer_strip.cc:783
+msgid "Comments"
+msgstr "Komentarze"
+
+#: gtk2_ardour/mixer_strip.cc:123
+msgid "Input"
+msgstr "Wejście"
+
+#: gtk2_ardour/mixer_strip.cc:140
+#: gtk2_ardour/mixer_strip.cc:1218
+#: gtk2_ardour/option_editor.cc:739
+msgid "input"
+msgstr "wejście"
+
+#: gtk2_ardour/mixer_strip.cc:148
+#: gtk2_ardour/mixer_strip.cc:1226
+msgid "post"
+msgstr "za"
+
+#: gtk2_ardour/mixer_strip.cc:155
+msgid "tupni"
+msgstr ""
+
+#: gtk2_ardour/mixer_strip.cc:203
+msgid "Varispeed"
+msgstr ""
+
+#: gtk2_ardour/mixer_strip.cc:229
+#: gtk2_ardour/mixer_strip.cc:799
+msgid "Click to Add/Edit Comments"
+msgstr "Kliknij by dodać/edytować komentarze"
+
+#: gtk2_ardour/mixer_strip.cc:420
+msgid "record"
+msgstr "nagrywanie"
+
+#: gtk2_ardour/mixer_strip.cc:427
+msgid "comments"
+msgstr "komentarze"
+
+#: gtk2_ardour/mixer_strip.cc:430
+msgid "*comments*"
+msgstr "*komentarze*"
+
+#: gtk2_ardour/mixer_strip.cc:442
+msgid "Rec"
+msgstr "Nagr"
+
+#: gtk2_ardour/mixer_strip.cc:445
+msgid "S"
+msgstr ""
+
+#: gtk2_ardour/mixer_strip.cc:449
+#: gtk2_ardour/mixer_strip.cc:793
+msgid "Cmt"
+msgstr ""
+
+#: gtk2_ardour/mixer_strip.cc:452
+#: gtk2_ardour/mixer_strip.cc:790
+msgid "*Cmt*"
+msgstr ""
+
+#: gtk2_ardour/mixer_strip.cc:491
+#: gtk2_ardour/mixer_strip.cc:557
+#: gtk2_ardour/redirect_box.cc:1125
+msgid "Not connected to JACK - no I/O changes are possible"
+msgstr ""
+
+#: gtk2_ardour/mixer_strip.cc:591
+#: gtk2_ardour/mixer_strip.cc:607
+msgid "could not register new ports required for that connection"
+msgstr ""
+
+#: gtk2_ardour/mixer_strip.cc:710
+msgid " Input"
+msgstr " Wejście"
+
+#: gtk2_ardour/mixer_strip.cc:713
+msgid "I"
+msgstr ""
+
+#: gtk2_ardour/mixer_strip.cc:733
+msgid "O"
+msgstr ""
+
+#: gtk2_ardour/mixer_strip.cc:780
+msgid "*Comments*"
+msgstr "*Komentarze*"
+
+#: gtk2_ardour/mixer_strip.cc:835
+msgid ": comment editor"
+msgstr ": edytor komentarzy"
+
+#: gtk2_ardour/mixer_strip.cc:904
+#: gtk2_ardour/route_time_axis.cc:311
+msgid "No group"
+msgstr "Brak grupy"
+
+#: gtk2_ardour/mixer_strip.cc:930
+msgid "Grp"
+msgstr ""
+
+#: gtk2_ardour/mixer_strip.cc:933
+msgid "~G"
+msgstr ""
+
+#: gtk2_ardour/mixer_strip.cc:981
+msgid "Invert Polarity"
+msgstr "Odwróć polaryzację"
+
+#: gtk2_ardour/mixer_strip.cc:984
+msgid "Protect against denormals"
+msgstr "Chroń przed liczbami zdenormalizowanymi"
+
+#: gtk2_ardour/mixer_strip.cc:992
+#: gtk2_ardour/route_time_axis.cc:460
+msgid "Remote Control ID"
+msgstr "ID zdalnego sterowania"
+
+#: gtk2_ardour/mixer_ui.cc:89
+msgid "Strips"
+msgstr "Pas"
+
+#: gtk2_ardour/mixer_ui.cc:115
+msgid "Group"
+msgstr "Grupa"
+
+#: gtk2_ardour/mixer_ui.cc:211
+#: gtk2_ardour/mixer_ui.cc:425
+#: gtk2_ardour/mixer_ui.cc:457
+msgid "Mixer"
+msgstr "Mikser"
+
+#: gtk2_ardour/mixer_ui.cc:924
+msgid "track display list item for renamed strip not found!"
+msgstr ""
+
+#: gtk2_ardour/new_session_dialog.cc:51
+msgid "Name :"
+msgstr "Nazwa:"
+
+#: gtk2_ardour/new_session_dialog.cc:55
+#: gtk2_ardour/new_session_dialog.cc:56
+#: gtk2_ardour/new_session_dialog.cc:57
+#: gtk2_ardour/new_session_dialog.cc:58
+msgid "channels"
+msgstr " "
+
+#: gtk2_ardour/new_session_dialog.cc:76
+msgid "<b>Busses</b>"
+msgstr "<b>Szyny</b>"
+
+#: gtk2_ardour/new_session_dialog.cc:77
+msgid "<b>Inputs</b>"
+msgstr "<b>Wejścia</b>"
+
+#: gtk2_ardour/new_session_dialog.cc:78
+msgid "<b>Outputs</b>"
+msgstr "<b>Wyjścia</b>"
+
+#: gtk2_ardour/new_session_dialog.cc:80
+msgid "Create Folder In :"
+msgstr "Położenie folderu:"
+
+#: gtk2_ardour/new_session_dialog.cc:82
+msgid "Template :"
+msgstr "Szablon:"
+
+#: gtk2_ardour/new_session_dialog.cc:84
+msgid "Create Monitor Bus"
+msgstr "Tworzenie szyny monitorowania"
+
+#: gtk2_ardour/new_session_dialog.cc:91
+msgid "Create Master Bus"
+msgstr "Tworzenie głównej szyny"
+
+#: gtk2_ardour/new_session_dialog.cc:93
+msgid "Automatically Connect to Physical Inputs"
+msgstr "Automatyczne łączenie do wejść fizycznych"
+
+#: gtk2_ardour/new_session_dialog.cc:94
+#: gtk2_ardour/new_session_dialog.cc:107
+msgid "Use only"
+msgstr "Ilość używanych kanałów:"
+
+#: gtk2_ardour/new_session_dialog.cc:106
+msgid "Automatically Connect Outputs"
+msgstr "Automatyczne łączenie wyjść"
+
+#: gtk2_ardour/new_session_dialog.cc:115
+msgid "... to Master Bus"
+msgstr "do głównej szyny"
+
+#: gtk2_ardour/new_session_dialog.cc:116
+msgid "... to Physical Outputs"
+msgstr "do wyjść fizycznych"
+
+#: gtk2_ardour/new_session_dialog.cc:122
+msgid "Advanced Options"
+msgstr "Opcje zaawansowane"
+
+#: gtk2_ardour/new_session_dialog.cc:130
+msgid "Recent:"
+msgstr "Poprzednie:"
+
+#: gtk2_ardour/new_session_dialog.cc:167
+msgid "Browse:"
+msgstr "Położenie:"
+
+#: gtk2_ardour/new_session_dialog.cc:379
+msgid "Session Control"
+msgstr "Kontrola sesji"
+
+#: gtk2_ardour/new_session_dialog.cc:419
+msgid "select template"
+msgstr "Wybieranie szablonu"
+
+#: gtk2_ardour/new_session_dialog.cc:425
+msgid "select session file"
+msgstr "Wybieranie pliku sesji"
+
+#: gtk2_ardour/new_session_dialog.cc:434
+msgid "select directory"
+msgstr "Wybieranie folderu"
+
+#: gtk2_ardour/new_session_dialog.cc:493
+msgid "Audio Setup"
+msgstr "Ustawienia dźwięku"
+
+#: gtk2_ardour/new_session_dialog.cc:517
+msgid "New Session"
+msgstr "Nowa Sesja"
+
+#: gtk2_ardour/new_session_dialog.cc:522
+msgid "Open Session"
+msgstr "Otwieranie sesji"
+
+#: gtk2_ardour/option_editor.cc:81
+msgid "Limit undo history"
+msgstr "Limit historii operacji"
+
+#: gtk2_ardour/option_editor.cc:82
+msgid "Save undo history"
+msgstr "Zapisywanie historii operacji"
+
+#: gtk2_ardour/option_editor.cc:87
+msgid "SMPTE offset is negative"
+msgstr "Ujemne"
+
+#: gtk2_ardour/option_editor.cc:88
+msgid "Timecode source is sample-clock synced"
+msgstr ""
+
+#: gtk2_ardour/option_editor.cc:97
+msgid "Add new MIDI port"
+msgstr "Dodaj port"
+
+#: gtk2_ardour/option_editor.cc:149
+msgid "Paths/Files"
+msgstr "Położenia/Pliki"
+
+#: gtk2_ardour/option_editor.cc:150
+msgid "Kbd/Mouse"
+msgstr "Klawiatura/Mysz"
+
+#: gtk2_ardour/option_editor.cc:153
+msgid "Misc"
+msgstr "Różne"
+
+#: gtk2_ardour/option_editor.cc:156
+msgid "MIDI"
+msgstr "MIDI"
+
+#: gtk2_ardour/option_editor.cc:226
+msgid "session RAID path"
+msgstr "Położenie sesji RAID"
+
+#: gtk2_ardour/option_editor.cc:242
+#: gtk2_ardour/option_editor.cc:248
+#: gtk2_ardour/option_editor.cc:965
+#: gtk2_ardour/option_editor.cc:985
+msgid "internal"
+msgstr "wewnętrzny"
+
+#: gtk2_ardour/option_editor.cc:275
+msgid "Font Scaling"
+msgstr "Skalowanie czcionki"
+
+#: gtk2_ardour/option_editor.cc:289
+msgid "Short crossfade length (msecs)"
+msgstr "Długość krótkiego przejścia krzyżowego (ms)"
+
+#: gtk2_ardour/option_editor.cc:301
+msgid "Destructive crossfade length (msecs)"
+msgstr "Długość destruktywnego przejścia krzyżowego (ms)"
+
+#: gtk2_ardour/option_editor.cc:320
+msgid "History depth (commands)"
+msgstr "Ilość operacji:"
+
+#: gtk2_ardour/option_editor.cc:341
+msgid "Saved history depth (commands)"
+msgstr "Ilość zapisywanych operacji:"
+
+#: gtk2_ardour/option_editor.cc:439
+msgid "SMPTE Offset"
+msgstr "Wyrównanie SMPTE"
+
+#: gtk2_ardour/option_editor.cc:512
+msgid "Inbound MMC Device ID"
+msgstr "ID przychodzącego sygnału MMC"
+
+#: gtk2_ardour/option_editor.cc:522
+msgid "Outbound MMC Device ID"
+msgstr "ID wychodzącego sygnału MMC"
+
+#: gtk2_ardour/option_editor.cc:554
+msgid "Port"
+msgstr "Port"
+
+#: gtk2_ardour/option_editor.cc:558
+msgid "Offline"
+msgstr "Połączenie"
+
+#: gtk2_ardour/option_editor.cc:562
+msgid ""
+"Trace\n"
+"Input"
+msgstr ""
+"Namierzanie\n"
+"wejścia"
+
+#: gtk2_ardour/option_editor.cc:566
+msgid ""
+"Trace\n"
+"Output"
+msgstr ""
+"Namierzanie\n"
+"wyjścia"
+
+#: gtk2_ardour/option_editor.cc:570
+msgid "MTC"
+msgstr "MTC"
+
+#: gtk2_ardour/option_editor.cc:574
+msgid "MMC"
+msgstr "MMC"
+
+#: gtk2_ardour/option_editor.cc:578
+msgid ""
+"MIDI Parameter\n"
+"Control"
+msgstr "Kontrola parametrów"
+
+#: gtk2_ardour/option_editor.cc:617
+#: gtk2_ardour/option_editor.cc:624
+#: gtk2_ardour/option_editor.cc:627
+#: gtk2_ardour/option_editor.cc:840
+msgid "online"
+msgstr "połączono"
+
+#: gtk2_ardour/option_editor.cc:624
+#: gtk2_ardour/option_editor.cc:625
+#: gtk2_ardour/option_editor.cc:837
+msgid "offline"
+msgstr "rozłączono"
+
+#: gtk2_ardour/option_editor.cc:741
+msgid "output"
+msgstr "wyjście"
+
+#: gtk2_ardour/option_editor.cc:912
+msgid "Choose Click"
+msgstr "Wybór dźwięku"
+
+#: gtk2_ardour/option_editor.cc:934
+msgid "Choose Click Emphasis"
+msgstr "Wybór dźwięku akcentowanego uderzenia"
+
+#: gtk2_ardour/option_editor.cc:1037
+msgid "Click audio file"
+msgstr "Plik dźwiękowy uderzenia"
+
+#: gtk2_ardour/option_editor.cc:1043
+msgid "Click emphasis audiofile"
+msgstr "Plik dźwiękowy akcentowanego uderzenia"
+
+#: gtk2_ardour/option_editor.cc:1080
+msgid ""
+"The auditioner is a dedicated mixer strip used\n"
+"for listening to specific regions outside the context\n"
+"of the overall mix. It can be connected just like any\n"
+"other mixer strip."
+msgstr ""
+"Odsłuch to specjalny pas miksera używany do\n"
+"słuchania konkretnych obszarów poza kontekstem\n"
+"całego miksu. Może być połączony jak każdy inny\n"
+"pas miksera."
+
+#: gtk2_ardour/option_editor.cc:1171
+msgid "Edit using"
+msgstr "Zmienianie przy użyciu:"
+
+#: gtk2_ardour/option_editor.cc:1178
+#: gtk2_ardour/option_editor.cc:1205
+msgid "+ button"
+msgstr "i przycisk:"
+
+#: gtk2_ardour/option_editor.cc:1198
+msgid "Delete using"
+msgstr "Usuwanie przy użyciu:"
+
+#: gtk2_ardour/option_editor.cc:1225
+msgid "Ignore snap using"
+msgstr "Ignorowanie przyciągania przy użyciu:"
+
+#: gtk2_ardour/option_editor.cc:1242
+msgid "Keyboard layout"
+msgstr "Układ klawiatury"
+
+#: gtk2_ardour/opts.cc:50
+msgid "Usage: "
+msgstr "Użycie:"
+
+#: gtk2_ardour/opts.cc:51
+msgid " -v, --version Show version information\n"
+msgstr " -v, --version Wyświetl informacje o wersji\n"
+
+#: gtk2_ardour/opts.cc:52
+msgid " -h, --help Print this message\n"
+msgstr " -h, --help Wyświetl tę wiadomość\n"
+
+#: gtk2_ardour/opts.cc:53
+msgid " -b, --bindings Print all possible keyboard binding names\n"
+msgstr " -b, --bindings Wyświetl wszystkie możliwe nazwy skrótów klawiaturowych\n"
+
+#: gtk2_ardour/opts.cc:54
+msgid " -c, --name name Use a specific jack client name, default is ardour\n"
+msgstr " -c, --name nazwa Użyj określonej nazwy klienta jack, domyślna to ardour\n"
+
+#: gtk2_ardour/opts.cc:55
+msgid " -d, --disable-plugins Disable all plugins in an existing session\n"
+msgstr ""
+
+#: gtk2_ardour/opts.cc:56
+msgid " -n, --show-splash Show splash screen\n"
+msgstr " -n, --show-splash Wyświetl splash screen\n"
+
+#: gtk2_ardour/opts.cc:57
+msgid " -m, --menus file Use \"file\" for Ardour menus\n"
+msgstr " -m, --menus plik Użyj \"pliku\" dla menu Ardoura\n"
+
+#: gtk2_ardour/opts.cc:58
+msgid " -N, --new session-name Create a new session from the command line\n"
+msgstr " -N, --new nazwa-sesji Stwórz nową sesję z linii komend\n"
+
+#: gtk2_ardour/opts.cc:59
+msgid " -O, --no-hw-optimizations Disable h/w specific optimizations\n"
+msgstr " -O, --no-hw-optimizations Wyłącz określone optymalizacje h/w\n"
+
+#: gtk2_ardour/opts.cc:60
+msgid " -S, --sync\t Draw the gui synchronously \n"
+msgstr " -S, --sync\t Rysuj graficzny interfejs synchronicznie \n"
+
+#: gtk2_ardour/opts.cc:62
+msgid " -V, --novst Do not use VST support\n"
+msgstr " -V, --novst Nie używaj obsługi VST\n"
+
+#: gtk2_ardour/opts.cc:64
+msgid " [session-name] Name of session to load\n"
+msgstr " [nazwa-sesji] Nazwa sesji do wczytania\n"
+
+#: gtk2_ardour/opts.cc:65
+msgid " -C, --curvetest filename Curve algorithm debugger\n"
+msgstr " -C, --curvetest nazwa-pliku Algorytm krzywej debugera\n"
+
+#: gtk2_ardour/opts.cc:66
+msgid " -k, --keybindings filename Name of key bindings to load (default is ~/.ardour2/ardour.bindings)\n"
+msgstr " -k, --keybindings nazwa-pliku Nazwa pliku skrótów klawiaturowych do wczytania (domyślna to~/.ardour2/ardour.bindings)\n"
+
+#: gtk2_ardour/pan_automation_time_axis.cc:69
+msgid "You need to select which line to edit"
+msgstr "Musisz wybrać linię do edycji"
+
+#: gtk2_ardour/pan_automation_time_axis.cc:90
+msgid "add pan automation event"
+msgstr "dodaj zdarzanie automatyzacji panoramy"
+
+#: gtk2_ardour/panner2d.cc:588
+#: gtk2_ardour/panner_ui.cc:418
+#: gtk2_ardour/plugin_ui.cc:266
+#: gtk2_ardour/plugin_ui.cc:336
+msgid "Bypass"
+msgstr "Pomiń"
+
+#: gtk2_ardour/panner_ui.cc:58
+#: gtk2_ardour/panner_ui.cc:223
+msgid "link"
+msgstr "Å‚Ä…cze"
+
+#: gtk2_ardour/panner_ui.cc:69
+msgid "Pan automation mode"
+msgstr "Tryb automatyzacji panoramy"
+
+#: gtk2_ardour/panner_ui.cc:70
+msgid "Pan automation type"
+msgstr "Rodzaj automatyzacji panoramy"
+
+#: gtk2_ardour/panner_ui.cc:80
+msgid "panning link control"
+msgstr "kontrola Å‚Ä…czenia panoramowania"
+
+#: gtk2_ardour/panner_ui.cc:82
+msgid "panning link direction"
+msgstr "kierunek Å‚Ä…czenia panoramowania"
+
+#: gtk2_ardour/panner_ui.cc:226
+msgid "L"
+msgstr ""
+
+#: gtk2_ardour/panner_ui.cc:339
+#, c-format
+msgid "panner for channel %zu"
+msgstr "panorama kanału %zu"
+
+#: gtk2_ardour/panner_ui.cc:428
+msgid "Reset all"
+msgstr "Resetuj wszystko"
+
+#: gtk2_ardour/playlist_selector.cc:58
+msgid "Playlists"
+msgstr "Listy odtwarzania"
+
+#: gtk2_ardour/playlist_selector.cc:63
+msgid "Playlists grouped by track"
+msgstr "Listy odtwarzania ułożone wg ścieżek"
+
+#: gtk2_ardour/playlist_selector.cc:112
+msgid "Playlist for %1"
+msgstr "Lista odtwarzania dla %1"
+
+#: gtk2_ardour/playlist_selector.cc:126
+msgid "Other tracks"
+msgstr "Inne ścieżki"
+
+#: gtk2_ardour/playlist_selector.cc:143
+msgid "unassigned"
+msgstr "nieokreślono"
+
+#: gtk2_ardour/plugin_selector.cc:50
+#: gtk2_ardour/plugin_selector.cc:190
+msgid "Name contains"
+msgstr "Nazwa zawiera"
+
+#: gtk2_ardour/plugin_selector.cc:51
+#: gtk2_ardour/plugin_selector.cc:192
+msgid "Type contains"
+msgstr "Rodzaj zawiera"
+
+#: gtk2_ardour/plugin_selector.cc:52
+#: gtk2_ardour/plugin_selector.cc:194
+msgid "Author contains"
+msgstr "Autor zawiera"
+
+#: gtk2_ardour/plugin_selector.cc:53
+#: gtk2_ardour/plugin_selector.cc:196
+msgid "Library contains"
+msgstr "Biblioteka zawiera"
+
+#: gtk2_ardour/plugin_selector.cc:58
+msgid "ardour: plugins"
+msgstr "Wtyczki"
+
+#: gtk2_ardour/plugin_selector.cc:70
+msgid "Available Plugins"
+msgstr "Dostępne wtyczki"
+
+#: gtk2_ardour/plugin_selector.cc:71
+msgid "Type"
+msgstr "Rodzaj"
+
+#: gtk2_ardour/plugin_selector.cc:72
+msgid "Category"
+msgstr "Kategoria"
+
+#: gtk2_ardour/plugin_selector.cc:73
+msgid "Creator"
+msgstr "Kreator"
+
+#: gtk2_ardour/plugin_selector.cc:74
+msgid "# Inputs"
+msgstr "# Wejść"
+
+#: gtk2_ardour/plugin_selector.cc:75
+msgid "# Outputs"
+msgstr "# Wyjść"
+
+#: gtk2_ardour/plugin_selector.cc:85
+msgid "Plugins to be connected"
+msgstr "Wtyczki do podłączenia"
+
+#: gtk2_ardour/plugin_selector.cc:98
+msgid "Add a plugin to the effect list"
+msgstr "Dodaj wtyczke do listy efektów"
+
+#: gtk2_ardour/plugin_selector.cc:102
+msgid "Remove a plugin from the effect list"
+msgstr "Usuń wtyczkę z listy efektów"
+
+#: gtk2_ardour/plugin_selector.cc:104
+msgid "Update available plugins"
+msgstr "Odśwież listę dostępnych wtyczek"
+
+#: gtk2_ardour/plugin_selector.cc:141
+msgid "Insert Plugin(s)"
+msgstr "Wstaw wtyczkÄ™"
+
+#: gtk2_ardour/plugin_ui.cc:81
+msgid "Eh? LADSPA plugins don't have editors!"
+msgstr ""
+
+#: gtk2_ardour/plugin_ui.cc:86
+#: gtk2_ardour/plugin_ui.cc:180
+msgid "unknown type of editor-supplying plugin (note: no VST support in this version of ardour)"
+msgstr ""
+
+#: gtk2_ardour/plugin_ui.cc:89
+msgid "unknown type of editor-supplying plugin"
+msgstr ""
+
+#: gtk2_ardour/plugin_ui.cc:296
+msgid "Plugin preset %1 not found"
+msgstr ""
+
+#: gtk2_ardour/plugin_ui.cc:305
+msgid "Name of New Preset:"
+msgstr ""
+
+#: gtk2_ardour/redirect_automation_line.cc:53
+msgid "redirect automation created for non-plugin"
+msgstr ""
+
+#: gtk2_ardour/redirect_automation_time_axis.cc:95
+msgid "add automation event to "
+msgstr ""
+
+#: gtk2_ardour/redirect_box.cc:238
+msgid "New send"
+msgstr "Nowy wysył"
+
+#: gtk2_ardour/redirect_box.cc:239
+msgid "Show send controls"
+msgstr "Wyświetl ustawienia wysyłu"
+
+#: gtk2_ardour/redirect_box.cc:417
+#: gtk2_ardour/redirect_box.cc:712
+msgid "ardour: weird plugin dialog"
+msgstr ""
+
+#: gtk2_ardour/redirect_box.cc:424
+msgid ""
+"You attempted to add a plugin (%1).\n"
+"The plugin has %2 inputs\n"
+"but at the insertion point, there are\n"
+"%3 active signal streams.\n"
+"\n"
+"This makes no sense - you are throwing away\n"
+"part of the signal."
+msgstr ""
+
+#: gtk2_ardour/redirect_box.cc:436
+msgid ""
+"You attempted to add a plugin (%1).\n"
+"The plugin has %2 inputs\n"
+"but at the insertion point there are\n"
+"only %3 active signal streams.\n"
+"\n"
+"This makes no sense - unless the plugin supports\n"
+"side-chain inputs. A future version of Ardour will\n"
+"support this type of configuration."
+msgstr ""
+
+#: gtk2_ardour/redirect_box.cc:449
+msgid ""
+"You attempted to add a plugin (%1).\n"
+"\n"
+"The I/O configuration doesn't make sense:\n"
+"\n"
+"The plugin has %2 inputs and %3 outputs.\n"
+"The track/bus has %4 inputs and %5 outputs.\n"
+"The insertion point, has %6 active signals.\n"
+"\n"
+"Ardour does not understand what to do in such situations.\n"
+msgstr ""
+
+#: gtk2_ardour/redirect_box.cc:546
+msgid "Pre-fader inserts, sends & plugins:"
+msgstr ""
+
+#: gtk2_ardour/redirect_box.cc:549
+msgid "Post-fader inserts, sends & plugins:"
+msgstr ""
+
+#: gtk2_ardour/redirect_box.cc:715
+msgid ""
+"You cannot reorder this set of redirects\n"
+"in that way because the inputs and\n"
+"outputs do not work correctly."
+msgstr ""
+
+#: gtk2_ardour/redirect_box.cc:862
+msgid "rename redirect"
+msgstr "zmień nazwę przekierowania"
+
+#: gtk2_ardour/redirect_box.cc:938
+#: gtk2_ardour/redirect_box.cc:987
+msgid ""
+"Copying the set of redirects on the clipboard failed,\n"
+"probably because the I/O configuration of the plugins\n"
+"could not match the configuration of this track."
+msgstr ""
+
+#: gtk2_ardour/redirect_box.cc:1010
+msgid ""
+"Do you really want to remove all pre-fader redirects from this track?\n"
+"(this cannot be undone)"
+msgstr ""
+"Na pewno sunąć wszystkie przekierowania przed potencjometrem z tej ścieżki?\n"
+"(tej operacji nie można cofnąć)"
+
+#: gtk2_ardour/redirect_box.cc:1013
+msgid ""
+"Do you really want to remove all post-fader redirects from this track?\n"
+"(this cannot be undone)"
+msgstr ""
+"Na pewno sunąć wszystkie przekierowania za potencjometrem z tej ścieżki?\n"
+"(tej operacji nie można cofnąć)"
+
+#: gtk2_ardour/redirect_box.cc:1018
+msgid ""
+"Do you really want to remove all pre-fader redirects from this bus?\n"
+"(this cannot be undone)"
+msgstr ""
+"Na pewno usunąć wszystkie przekierowania przed potencjometrem z tej szyny?\n"
+"(tej operacji nie można cofnąć)"
+
+#: gtk2_ardour/redirect_box.cc:1021
+msgid ""
+"Do you really want to remove all post-fader redirects from this bus?\n"
+"(this cannot be undone)"
+msgstr ""
+"Na pewno sunąć wszystkie przekierowania za potencjometrem z tej szyny?\n"
+"(tej operacji nie można cofnąć)"
+
+#: gtk2_ardour/redirect_box.cc:1027
+msgid "Yes, remove them all"
+msgstr "Tak, usuń je wszystkie"
+
+#: gtk2_ardour/redirect_box.cc:1174
+msgid "New Plugin ..."
+msgstr "Nowa wtyczka..."
+
+#: gtk2_ardour/redirect_box.cc:1176
+msgid "New Insert"
+msgstr "Nowy przysył"
+
+#: gtk2_ardour/redirect_box.cc:1178
+msgid "New Send ..."
+msgstr "Nowy wysył..."
+
+#: gtk2_ardour/redirect_box.cc:1203
+msgid "Activate all"
+msgstr "WÅ‚Ä…cz wszystko"
+
+#: gtk2_ardour/redirect_box.cc:1204
+msgid "Deactivate all"
+msgstr "Wyłącz wszystko"
+
+#: gtk2_ardour/redirect_box.cc:1397
+msgid "%1: %2 (by %3)"
+msgstr ""
+
+#: gtk2_ardour/rhythm_ferret.cc:30
+msgid "Percussive Onset"
+msgstr "WystÄ…pienie perkusji"
+
+#: gtk2_ardour/rhythm_ferret.cc:31
+msgid "Note Onset"
+msgstr "WystÄ…pienie nuty"
+
+#: gtk2_ardour/rhythm_ferret.cc:38
+msgid "Operation"
+msgstr "Operacja"
+
+#: gtk2_ardour/rhythm_ferret.cc:39
+msgid "Selection"
+msgstr "Zaznaczenie"
+
+#: gtk2_ardour/rhythm_ferret.cc:40
+msgid "Analysis"
+msgstr "Analiza"
+
+#: gtk2_ardour/rhythm_ferret.cc:43
+msgid "Set Tempo Map"
+msgstr "Ustawienie mapy tempa"
+
+#: gtk2_ardour/rhythm_ferret.cc:44
+msgid "Conform Region"
+msgstr "Dostosowanie obszaru"
+
+#: gtk2_ardour/rhythm_ferret.cc:45
+msgid "Mode"
+msgstr "Tryb"
+
+#: gtk2_ardour/rhythm_ferret.cc:48
+msgid "Threshold"
+msgstr "Wartość progowa"
+
+#: gtk2_ardour/rhythm_ferret.cc:51
+msgid "Sensitivity"
+msgstr "Czułość"
+
+#: gtk2_ardour/rhythm_ferret.cc:52
+msgid "Analyze"
+msgstr "Analizuj"
+
+#: gtk2_ardour/rhythm_ferret.cc:55
+msgid "Trigger gap (msecs)"
+msgstr "Przerwa wywołania (ms)"
+
+#: gtk2_ardour/rhythm_ferret.cc:263
+msgid "split regions (rhythm ferret)"
+msgstr ""
+
+#: gtk2_ardour/route_params_ui.cc:85
+msgid "Tracks/Buses"
+msgstr "Ścieżki/szyny"
+
+#: gtk2_ardour/route_params_ui.cc:105
+msgid "Pre-fader Redirects"
+msgstr "Przekierowania przed potencjometrem"
+
+#: gtk2_ardour/route_params_ui.cc:106
+msgid "Post-fader Redirects"
+msgstr "Przekierowania za potencjometrem"
+
+#: gtk2_ardour/route_params_ui.cc:205
+msgid "route display list item for renamed route not found!"
+msgstr ""
+
+#: gtk2_ardour/route_params_ui.cc:452
+msgid "NO TRACK"
+msgstr "BRAK ŚCIEŻKI"
+
+#: gtk2_ardour/route_params_ui.cc:682
+#: gtk2_ardour/route_params_ui.cc:683
+msgid "No Route Selected"
+msgstr "Brak zaznaczonego szlaku"
+
+#: gtk2_ardour/route_time_axis.cc:98
+msgid "m"
+msgstr "w"
+
+#: gtk2_ardour/route_time_axis.cc:98
+msgid "s"
+msgstr "s"
+
+#: gtk2_ardour/route_time_axis.cc:98
+msgid "r"
+msgstr "n"
+
+#: gtk2_ardour/route_time_axis.cc:102
+msgid "g"
+msgstr "g"
+
+#: gtk2_ardour/route_time_axis.cc:103
+msgid "p"
+msgstr "L"
+
+#: gtk2_ardour/route_time_axis.cc:105
+msgid "a"
+msgstr "a"
+
+#: gtk2_ardour/route_time_axis.cc:106
+#: gtk2_ardour/visual_time_axis.cc:72
+msgid "v"
+msgstr "v"
+
+#: gtk2_ardour/route_time_axis.cc:188
+msgid "Edit Group"
+msgstr "Edycja grupy"
+
+#: gtk2_ardour/route_time_axis.cc:189
+#: gtk2_ardour/visual_time_axis.cc:91
+msgid "Display Height"
+msgstr "Rozmiar wyświetlania"
+
+#: gtk2_ardour/route_time_axis.cc:190
+msgid "Playlist"
+msgstr "Lista odtwarzania"
+
+#: gtk2_ardour/route_time_axis.cc:191
+#: gtk2_ardour/route_time_axis.cc:461
+msgid "Automation"
+msgstr "Automatyka"
+
+#: gtk2_ardour/route_time_axis.cc:192
+#: gtk2_ardour/visual_time_axis.cc:92
+msgid "Visual options"
+msgstr "Opcje wizualne"
+
+#: gtk2_ardour/route_time_axis.cc:193
+#: gtk2_ardour/visual_time_axis.cc:93
+msgid "Hide this track"
+msgstr "Ukryj tę ścieżkę"
+
+#: gtk2_ardour/route_time_axis.cc:421
+msgid "Show all automation"
+msgstr "Wyświetl całą automatykę"
+
+#: gtk2_ardour/route_time_axis.cc:424
+msgid "Show existing automation"
+msgstr "Wyświetl istniejącą automatykę"
+
+#: gtk2_ardour/route_time_axis.cc:427
+msgid "Hide all automation"
+msgstr "Ukryj całą automatykę"
+
+#: gtk2_ardour/route_time_axis.cc:430
+msgid "Plugins"
+msgstr "Wtyczki"
+
+#: gtk2_ardour/route_time_axis.cc:477
+msgid "Align with existing material"
+msgstr "Do istniejącego materiału"
+
+#: gtk2_ardour/route_time_axis.cc:483
+msgid "Align with capture time"
+msgstr "Z czasem nagrania"
+
+#: gtk2_ardour/route_time_axis.cc:490
+msgid "Alignment"
+msgstr "Wyrównanie"
+
+#: gtk2_ardour/route_time_axis.cc:494
+msgid "Normal mode"
+msgstr "Tryb standardowy"
+
+#: gtk2_ardour/route_time_axis.cc:497
+msgid "Tape mode"
+msgstr "Tryb taśmowy"
+
+#: gtk2_ardour/route_time_axis.cc:895
+msgid "Name for playlist"
+msgstr "Nazwa listy odtwarzania"
+
+#: gtk2_ardour/route_time_axis.cc:939
+#: gtk2_ardour/route_time_axis.cc:985
+msgid "Name for Playlist"
+msgstr "Nazwa listy odtwarzania"
+
+#: gtk2_ardour/route_time_axis.cc:1188
+#: gtk2_ardour/visual_time_axis.cc:340
+#: gtk2_ardour/visual_time_axis.cc:387
+msgid "A track already exists with that name"
+msgstr "Ścieżka o tej nazwie już istnieje"
+
+#: gtk2_ardour/route_time_axis.cc:1377
+msgid "New Copy"
+msgstr "Nowa kopia"
+
+#: gtk2_ardour/route_time_axis.cc:1379
+msgid "Clear Current"
+msgstr "Wyczyść aktualną"
+
+#: gtk2_ardour/route_time_axis.cc:1382
+msgid "Select from all ..."
+msgstr "Wybierz spośród wszystkich..."
+
+#: gtk2_ardour/route_ui.cc:160
+msgid "mute change"
+msgstr "zmiana ustawienia wyciszenia"
+
+#: gtk2_ardour/route_ui.cc:244
+#: gtk2_ardour/route_ui.cc:255
+msgid "solo change"
+msgstr "zmiana ustawienia solo"
+
+#: gtk2_ardour/route_ui.cc:316
+msgid "Not connected to JACK - cannot engage record"
+msgstr "Brak połączenia z JACK - nie można rozpocząć nagrywania"
+
+#: gtk2_ardour/route_ui.cc:330
+msgid "rec-enable change"
+msgstr "zmiana ustawienia nagrywania"
+
+#: gtk2_ardour/route_ui.cc:568
+msgid "Solo-safe"
+msgstr "Bezpieczne solo"
+
+#: gtk2_ardour/route_ui.cc:590
+msgid "Pre Fader"
+msgstr "Przed potencjometrem"
+
+#: gtk2_ardour/route_ui.cc:597
+msgid "Post Fader"
+msgstr "Za potencjometrem"
+
+#: gtk2_ardour/route_ui.cc:604
+msgid "Control Outs"
+msgstr ""
+
+#: gtk2_ardour/route_ui.cc:611
+msgid "Main Outs"
+msgstr "Główne wyjścia"
+
+#: gtk2_ardour/route_ui.cc:648
+msgid "mix group solo change"
+msgstr ""
+
+#: gtk2_ardour/route_ui.cc:687
+msgid "mix group mute change"
+msgstr ""
+
+#: gtk2_ardour/route_ui.cc:704
+msgid "mix group rec-enable change"
+msgstr ""
+
+#: gtk2_ardour/route_ui.cc:722
+#: gtk2_ardour/visual_time_axis.cc:241
+msgid "ardour: color selection"
+msgstr "Wybieranie koloru"
+
+#: gtk2_ardour/route_ui.cc:798
+msgid ""
+"Do you really want to remove track \"%1\" ?\n"
+"\n"
+"You may also lose the playlist used by this track.\n"
+"(cannot be undone)"
+msgstr ""
+"Na pewno usunąć tę ścieżkę \"%1\" ?\n"
+"\n"
+"Można również utracić listę odtwarzania używaną przez tę ścieżkę.\n"
+"(tej operacji nie można cofnąć)"
+
+#: gtk2_ardour/route_ui.cc:800
+msgid ""
+"Do you really want to remove bus \"%1\" ?\n"
+"(cannot be undone)"
+msgstr ""
+
+#: gtk2_ardour/route_ui.cc:825
+msgid "New Name: "
+msgstr "Nazwa: "
+
+#: gtk2_ardour/sfdb_ui.cc:77
+#: gtk2_ardour/sfdb_ui.cc:97
+#: gtk2_ardour/sfdb_ui.cc:106
+msgid "as new tracks"
+msgstr "jako nowe ścieżki"
+
+#: gtk2_ardour/sfdb_ui.cc:79
+#: gtk2_ardour/sfdb_ui.cc:99
+msgid "to selected tracks"
+msgstr "do zaznaczonych ścieżek"
+
+#: gtk2_ardour/sfdb_ui.cc:81
+#: gtk2_ardour/sfdb_ui.cc:101
+msgid "to region list"
+msgstr ""
+
+#: gtk2_ardour/sfdb_ui.cc:83
+#: gtk2_ardour/sfdb_ui.cc:103
+msgid "as new tape tracks"
+msgstr "jako nowe ścieżki taśmowe"
+
+#: gtk2_ardour/sfdb_ui.cc:87
+msgid "programming error: unknown import mode string %1"
+msgstr ""
+
+#: gtk2_ardour/sfdb_ui.cc:115
+msgid "Auto-play"
+msgstr "Autoodtwarzanie"
+
+#: gtk2_ardour/sfdb_ui.cc:124
+#: gtk2_ardour/sfdb_ui.cc:234
+msgid "<b>Soundfile Info</b>"
+msgstr "<b>Informacje o pliku dźwiękowym</b>"
+
+#: gtk2_ardour/sfdb_ui.cc:135
+msgid "Length:"
+msgstr "Długość:"
+
+#: gtk2_ardour/sfdb_ui.cc:136
+msgid "Timestamp:"
+msgstr ""
+
+#: gtk2_ardour/sfdb_ui.cc:137
+msgid "Format:"
+msgstr "Format:"
+
+#: gtk2_ardour/sfdb_ui.cc:138
+msgid "Channels:"
+msgstr "Kanały:"
+
+#: gtk2_ardour/sfdb_ui.cc:139
+#: gtk2_ardour/sfdb_ui.cc:254
+#: gtk2_ardour/sfdb_ui.cc:259
+msgid "Sample rate:"
+msgstr "Częstotliwość próbkowania:"
+
+#: gtk2_ardour/sfdb_ui.cc:171
+#: gtk2_ardour/sfdb_ui.cc:494
+msgid "Tags:"
+msgstr "Etykiety:"
+
+#: gtk2_ardour/sfdb_ui.cc:181
+msgid "Play (double click)"
+msgstr "Odtwórz"
+
+#: gtk2_ardour/sfdb_ui.cc:235
+#: gtk2_ardour/sfdb_ui.cc:236
+#: gtk2_ardour/sfdb_ui.cc:237
+msgid "n/a"
+msgstr ""
+
+#: gtk2_ardour/sfdb_ui.cc:312
+msgid "Could not read file: %1 (%2)."
+msgstr "Nie można odczytać pliku: %1 (%2)."
+
+#: gtk2_ardour/sfdb_ui.cc:332
+msgid "Could not access soundfile: "
+msgstr "Nie można uzyskać dostępu do pliku:"
+
+#: gtk2_ardour/sfdb_ui.cc:378
+msgid "SoundFileBox: Could not tokenize string: "
+msgstr ""
+
+#: gtk2_ardour/sfdb_ui.cc:400
+msgid "Search"
+msgstr "Szukaj"
+
+#: gtk2_ardour/sfdb_ui.cc:401
+#: gtk2_ardour/sfdb_ui.cc:795
+msgid "Start Downloading"
+msgstr "Rozpocznij pobieranie"
+
+#: gtk2_ardour/sfdb_ui.cc:416
+msgid "Audio files"
+msgstr "Pliki dźwiękowe"
+
+#: gtk2_ardour/sfdb_ui.cc:419
+msgid "All files"
+msgstr "Wszystkie pliki"
+
+#: gtk2_ardour/sfdb_ui.cc:430
+msgid "Browse Files"
+msgstr "Przeglądanie plików"
+
+#: gtk2_ardour/sfdb_ui.cc:456
+#: gtk2_ardour/sfdb_ui.cc:509
+msgid "Paths"
+msgstr "Ścieżki"
+
+#: gtk2_ardour/sfdb_ui.cc:465
+msgid "Search Tags"
+msgstr "Wyszukiwanie etykiet"
+
+#: gtk2_ardour/sfdb_ui.cc:486
+msgid "User:"
+msgstr "Użytkownik:"
+
+#: gtk2_ardour/sfdb_ui.cc:490
+msgid "Password:"
+msgstr "Hasło:"
+
+#: gtk2_ardour/sfdb_ui.cc:519
+msgid "Search Freesound"
+msgstr ""
+
+#: gtk2_ardour/sfdb_ui.cc:701
+msgid "SoundFileBrowser: Could not tokenize string: "
+msgstr ""
+
+#: gtk2_ardour/sfdb_ui.cc:737
+msgid "Cancelling.."
+msgstr "Anulowanie..."
+
+#: gtk2_ardour/sfdb_ui.cc:962
+#: gtk2_ardour/sfdb_ui.cc:1241
+#: gtk2_ardour/sfdb_ui.cc:1283
+msgid "one track per file"
+msgstr "jedna ścieżka na plik"
+
+#: gtk2_ardour/sfdb_ui.cc:965
+#: gtk2_ardour/sfdb_ui.cc:1284
+msgid "one track per channel"
+msgstr "jedna ścieżka na kanał"
+
+#: gtk2_ardour/sfdb_ui.cc:973
+#: gtk2_ardour/sfdb_ui.cc:1286
+msgid "sequence files"
+msgstr ""
+
+#: gtk2_ardour/sfdb_ui.cc:976
+#: gtk2_ardour/sfdb_ui.cc:990
+#: gtk2_ardour/sfdb_ui.cc:1290
+msgid "all files in one region"
+msgstr ""
+
+#: gtk2_ardour/sfdb_ui.cc:982
+#: gtk2_ardour/sfdb_ui.cc:1288
+msgid "one region per file"
+msgstr ""
+
+#: gtk2_ardour/sfdb_ui.cc:985
+#: gtk2_ardour/sfdb_ui.cc:1289
+msgid "one region per channel"
+msgstr ""
+
+#: gtk2_ardour/sfdb_ui.cc:1043
+msgid ""
+"One or more of the selected files\n"
+"cannot be used by Ardour"
+msgstr ""
+
+#: gtk2_ardour/sfdb_ui.cc:1170
+msgid "Copy files to session"
+msgstr "Skopiuj pliki do sesji"
+
+#: gtk2_ardour/sfdb_ui.cc:1186
+#: gtk2_ardour/sfdb_ui.cc:1321
+msgid "use file timestamp"
+msgstr ""
+
+#: gtk2_ardour/sfdb_ui.cc:1187
+#: gtk2_ardour/sfdb_ui.cc:1323
+msgid "at edit point"
+msgstr "od punktu edycji"
+
+#: gtk2_ardour/sfdb_ui.cc:1188
+#: gtk2_ardour/sfdb_ui.cc:1325
+msgid "at playhead"
+msgstr "od głowicy"
+
+#: gtk2_ardour/sfdb_ui.cc:1189
+msgid "at session start"
+msgstr "od poczÄ…tku sesji"
+
+#: gtk2_ardour/sfdb_ui.cc:1194
+msgid "Add files:"
+msgstr "Dodaj pliki:"
+
+#: gtk2_ardour/sfdb_ui.cc:1216
+msgid "Insert:"
+msgstr "Wstaw:"
+
+#: gtk2_ardour/sfdb_ui.cc:1229
+msgid "Mapping:"
+msgstr "Mapowanie:"
+
+#: gtk2_ardour/sfdb_ui.cc:1247
+msgid "Conversion Quality:"
+msgstr "Jakość konwersji:"
+
+#: gtk2_ardour/sfdb_ui.cc:1259
+#: gtk2_ardour/sfdb_ui.cc:1337
+msgid "Best"
+msgstr "Najlepsza"
+
+#: gtk2_ardour/sfdb_ui.cc:1260
+#: gtk2_ardour/sfdb_ui.cc:1339
+msgid "Good"
+msgstr "Dobra"
+
+#: gtk2_ardour/sfdb_ui.cc:1261
+#: gtk2_ardour/sfdb_ui.cc:1341
+msgid "Quick"
+msgstr "Szybka"
+
+#: gtk2_ardour/sfdb_ui.cc:1285
+msgid "merge files"
+msgstr "połącz pliki"
+
+#: gtk2_ardour/sfdb_ui.cc:1362
+msgid "programming error: %1 (%2)"
+msgstr ""
+
+#: gtk2_ardour/splash.cc:42
+msgid "Ardour loading ..."
+msgstr "Wczytywanie..."
+
+#: gtk2_ardour/tempo_dialog.cc:36
+msgid "edit tempo"
+msgstr "zmień tempo"
+
+#: gtk2_ardour/tempo_dialog.cc:42
+#: gtk2_ardour/tempo_dialog.cc:61
+msgid "Bar"
+msgstr "Takt"
+
+#: gtk2_ardour/tempo_dialog.cc:43
+#: gtk2_ardour/tempo_dialog.cc:62
+msgid "Beat"
+msgstr "Uderzenie"
+
+#: gtk2_ardour/tempo_dialog.cc:45
+#: gtk2_ardour/tempo_dialog.cc:64
+#: gtk2_ardour/tempo_dialog.cc:276
+#: gtk2_ardour/tempo_dialog.cc:291
+msgid "Location"
+msgstr "Położenie"
+
+#: gtk2_ardour/tempo_dialog.cc:77
+#: gtk2_ardour/tempo_dialog.cc:94
+#: gtk2_ardour/tempo_dialog.cc:304
+#: gtk2_ardour/tempo_dialog.cc:322
+msgid "whole (1)"
+msgstr "cała nuta (1)"
+
+#: gtk2_ardour/tempo_dialog.cc:78
+#: gtk2_ardour/tempo_dialog.cc:96
+#: gtk2_ardour/tempo_dialog.cc:305
+#: gtk2_ardour/tempo_dialog.cc:324
+msgid "second (2)"
+msgstr "półnuta (2)"
+
+#: gtk2_ardour/tempo_dialog.cc:79
+#: gtk2_ardour/tempo_dialog.cc:98
+#: gtk2_ardour/tempo_dialog.cc:306
+#: gtk2_ardour/tempo_dialog.cc:326
+msgid "third (3)"
+msgstr "trzecia część nuty (3)"
+
+#: gtk2_ardour/tempo_dialog.cc:80
+#: gtk2_ardour/tempo_dialog.cc:100
+#: gtk2_ardour/tempo_dialog.cc:108
+#: gtk2_ardour/tempo_dialog.cc:307
+#: gtk2_ardour/tempo_dialog.cc:328
+#: gtk2_ardour/tempo_dialog.cc:336
+msgid "quarter (4)"
+msgstr "ćwierćnuta (4)"
+
+#: gtk2_ardour/tempo_dialog.cc:81
+#: gtk2_ardour/tempo_dialog.cc:102
+#: gtk2_ardour/tempo_dialog.cc:308
+#: gtk2_ardour/tempo_dialog.cc:330
+msgid "eighth (8)"
+msgstr "ósemka (8)"
+
+#: gtk2_ardour/tempo_dialog.cc:82
+#: gtk2_ardour/tempo_dialog.cc:104
+#: gtk2_ardour/tempo_dialog.cc:309
+#: gtk2_ardour/tempo_dialog.cc:332
+msgid "sixteenth (16)"
+msgstr "szesnastka (16)"
+
+#: gtk2_ardour/tempo_dialog.cc:83
+#: gtk2_ardour/tempo_dialog.cc:106
+#: gtk2_ardour/tempo_dialog.cc:310
+#: gtk2_ardour/tempo_dialog.cc:334
+msgid "thirty-second (32)"
+msgstr "trzydziestodwójka (32)"
+
+#: gtk2_ardour/tempo_dialog.cc:110
+msgid "Beats Per Minute:"
+msgstr "Uderzeń na minutę:"
+
+#: gtk2_ardour/tempo_dialog.cc:150
+msgid "Tempo Begins at:"
+msgstr ""
+
+#: gtk2_ardour/tempo_dialog.cc:246
+#: gtk2_ardour/tempo_dialog.cc:478
+msgid "garbaged note type entry (%1)"
+msgstr ""
+
+#: gtk2_ardour/tempo_dialog.cc:256
+#: gtk2_ardour/tempo_dialog.cc:488
+msgid "incomprehensible note type entry (%1)"
+msgstr ""
+
+#: gtk2_ardour/tempo_dialog.cc:317
+msgid "thirtq-second (32)"
+msgstr "trzydziestodwójka (32)"
+
+#: gtk2_ardour/tempo_dialog.cc:338
+msgid "Note Value:"
+msgstr "Wartość nuty:"
+
+#: gtk2_ardour/tempo_dialog.cc:339
+msgid "Beats Per Bar:"
+msgstr "Uderzeń na takt:"
+
+#: gtk2_ardour/tempo_dialog.cc:357
+msgid "Meter Begins at Bar:"
+msgstr "PoczÄ…tek metrum w takcie:"
+
+#: gtk2_ardour/theme_manager.cc:52
+msgid "Object"
+msgstr "Obiekt"
+
+#: gtk2_ardour/theme_manager.cc:185
+msgid "Unable to find UI style file %1. Ardour will look strange"
+msgstr ""
+
+#: gtk2_ardour/time_axis_view.cc:112
+msgid "gTortnam"
+msgstr ""
+
+#: gtk2_ardour/time_axis_view.cc:943
+msgid "unknown track height name \"%1\" in XML GUI information"
+msgstr ""
+
+#: gtk2_ardour/time_axis_view_item.cc:80
+msgid "TimeAxisViewItemName"
+msgstr ""
+
+#: gtk2_ardour/time_axis_view_item.cc:332
+msgid "new duration %1 frames is out of bounds for %2"
+msgstr ""
+
+#: gtk2_ardour/time_selection.cc:40
+msgid "programming error: request for non-existent audio range (%1)!"
+msgstr ""
+
+#: gtk2_ardour/ui_config.cc:76
+msgid "loading default ui configuration file %1"
+msgstr ""
+
+#: gtk2_ardour/ui_config.cc:79
+msgid "Ardour: cannot read default ui configuration file \"%1\""
+msgstr ""
+
+#: gtk2_ardour/ui_config.cc:84
+msgid "Ardour: default ui configuration file \"%1\" not loaded successfully."
+msgstr ""
+
+#: gtk2_ardour/ui_config.cc:102
+msgid "loading user ui configuration file %1"
+msgstr ""
+
+#: gtk2_ardour/ui_config.cc:105
+msgid "Ardour: cannot read ui configuration file \"%1\""
+msgstr ""
+
+#: gtk2_ardour/ui_config.cc:110
+msgid "Ardour: user ui configuration file \"%1\" not loaded successfully."
+msgstr ""
+
+#: gtk2_ardour/ui_config.cc:134
+msgid "UI config file %1 not saved"
+msgstr ""
+
+#: gtk2_ardour/utils.cc:138
+#: gtk2_ardour/utils.cc:181
+msgid "bad XPM header %1"
+msgstr ""
+
+#: gtk2_ardour/utils.cc:320
+msgid "missing RGBA style for \"%1\""
+msgstr ""
+
+#: gtk2_ardour/utils.cc:343
+msgid "no style found for %1, using red"
+msgstr ""
+
+#: gtk2_ardour/utils.cc:382
+msgid "unknown style attribute %1 requested for color; using \"red\""
+msgstr ""
+
+#: gtk2_ardour/utils.cc:606
+msgid "cannot find icon image for %1"
+msgstr ""
+
+#: gtk2_ardour/visual_time_axis.cc:280
+msgid ""
+"Do you really want to remove track \"%1\" ?\n"
+"(cannot be undone)"
+msgstr ""
+
+#: gtk2_ardour/visual_time_axis.cc:329
+msgid "new name: "
+msgstr "nazwa:"
+
+#: gtk2_ardour/connection_editor.cc:50
+msgid "ardour: connections"
+msgstr "Połączenia"
+
+#: gtk2_ardour/connection_editor.cc:51
+msgid "Input Connections"
+msgstr "Połączenia wejściowe"
+
+#: gtk2_ardour/connection_editor.cc:52
+msgid "Output Connections"
+msgstr "Połączenia wyjściowe"
+
+#: gtk2_ardour/connection_editor.cc:53
+msgid "New Input"
+msgstr "Nowe wejście"
+
+#: gtk2_ardour/connection_editor.cc:54
+msgid "New Output"
+msgstr "Nowe wyjście"
+
+#: gtk2_ardour/connection_editor.cc:57
+#: gtk2_ardour/connection_editor.cc:100
+msgid "Add Port"
+msgstr "Dodaj port"
+
+#: gtk2_ardour/connection_editor.cc:105
+msgid "Available Ports"
+msgstr "Dostępne porty"
+
+#: gtk2_ardour/connection_editor.cc:500
+msgid "Connection \""
+msgstr "Połączenie \""
+
+#: gtk2_ardour/connection_editor.cc:502
+msgid "\""
+msgstr ""
+
+#: gtk2_ardour/connection_editor.cc:531
+#, c-format
+msgid "in %d"
+msgstr "wejście %d"
+
+#: gtk2_ardour/connection_editor.cc:533
+#, c-format
+msgid "out %d"
+msgstr "wyjście %d"
+
+#: gtk2_ardour/connection_editor.cc:657
+msgid "Name for new connection:"
+msgstr "Nazwa nowego połączenia:"
+
+#: gtk2_ardour/analysis_window.cc:46
+msgid "Signal source"
+msgstr "Źródło sygnału"
+
+#: gtk2_ardour/analysis_window.cc:47
+msgid "Selected ranges"
+msgstr "Zaznaczone zakresy"
+
+#: gtk2_ardour/analysis_window.cc:48
+msgid "Selected regions"
+msgstr "Zaznaczone obszary"
+
+#: gtk2_ardour/analysis_window.cc:50
+msgid "Display model"
+msgstr "Tryb wyświetlania"
+
+#: gtk2_ardour/analysis_window.cc:51
+msgid "Composite graphs for each track"
+msgstr ""
+
+#: gtk2_ardour/analysis_window.cc:52
+msgid "Composite graph of all tracks"
+msgstr ""
+
+#: gtk2_ardour/analysis_window.cc:54
+msgid "Show frequency power range"
+msgstr ""
+
+#: gtk2_ardour/analysis_window.cc:55
+msgid "Normalize values"
+msgstr "Normalizacja wartości"
+
+#: gtk2_ardour/analysis_window.cc:59
+#: gtk2_ardour/analysis_window.cc:60
+msgid "FFT analysis window"
+msgstr "Okno analizy FFT"
+
+#: gtk2_ardour/analysis_window.cc:135
+msgid "Re-analyze data"
+msgstr "Analizuj ponownie"
+
+#~ msgid "KeyMouse Actions"
+#~ msgstr "Czynności myszy i klawiatury"
+#~ msgid "to Center"
+#~ msgstr "Do środka"
+#~ msgid "to Playhead"
+#~ msgstr "Do głowicy"
+#~ msgid "Set Playhead"
+#~ msgstr "Ustaw głowicę"
+#~ msgid "Set Edit Point"
+#~ msgstr "Ustaw punkt edycji"
+#~ msgid "Reverse Region"
+#~ msgstr "Odwróć obszar"
+#~ msgid "Add Existing Audio"
+#~ msgstr "Dodaj istniejący plik dźwiękowy"
+#~ msgid "Add External Audio"
+#~ msgstr "Dodaj zewnętrzne audio"
+#~ msgid "Analyze region"
+#~ msgstr "Analizuj obszar"
+#~ msgid "Analyze range"
+#~ msgstr "Analizuj zakres"
+#~ msgid "Copyright (C) 1999-2007 Paul Davis"
+#~ msgstr "Prawa autorskie (C) 1999-2007 Paul Davis"
+#~ msgid "Could not connect to JACK server as \"%1\""
+#~ msgstr "Nie można się połączyć z serwerem JACK jako \"%1\""
+#~ msgid ""
+#~ "\n"
+#~ "\n"
+#~ "No session named \"%1\" exists.\n"
+#~ "To create it from the command line, start ardour as \"ardour --new %1"
+#~ msgstr ""
+#~ "\n"
+#~ "\n"
+#~ "Sesja o nazwie \"%1\" nie istnieje.\n"
+#~ "By utworzyć ją z linii komend, uruchom ardoura poprzez polecenie: "
+#~ "\"ardour --new %1"
+#~ msgid "Files"
+#~ msgstr "Pliki"
+#~ msgid "Setup"
+#~ msgstr "Ustawienia"
+#~ msgid "Audio Frames"
+#~ msgstr "Klatki audio"
+#~ msgid "Edit Cursor"
+#~ msgstr "Wskaźnik"
+#~ msgid "Frames"
+#~ msgstr "Klatki"
+#~ msgid "Select all between cursors"
+#~ msgstr "Zaznacz wszystko między głowicą a wskaźnikiem"
+#~ msgid "Paste at edit cursor"
+#~ msgstr "Wklej w położeniu wskaźnika"
+#~ msgid "Paste at mouse"
+#~ msgstr "Wklej w położeniu kursora"
+#~ msgid "Duplicate how many times?"
+#~ msgstr "Ile razy powielić?"
+#~ msgid "Move edit cursor"
+#~ msgstr "Przesuń wskaźnik"
+#~ msgid "Edit Cursor to Next Region Start"
+#~ msgstr "Wskaźnik do początku następnego obszaru"
+#~ msgid "Edit Cursor to Next Region End"
+#~ msgstr "Wskaźnik do końca następnego obszaru"
+#~ msgid "Edit Cursor to Next Region Sync"
+#~ msgstr "Wskaźnik do następnej synchronizacji obszaru"
+#~ msgid "Edit Cursor to Previous Region Start"
+#~ msgstr "Wskaźnik do początku poprzedniego obszaru"
+#~ msgid "Edit Cursor to Previous Region End"
+#~ msgstr "Wskaźnik do końca poprzedniego obszaru"
+#~ msgid "Edit Cursor to Previous Region Sync"
+#~ msgstr "Wskaźnik do poprzedniej synchronizacji obszaru"
+#~ msgid "Edit Cursor to Range Start"
+#~ msgstr "Wskaźnik do początku zakresu"
+#~ msgid "Edit Cursor to Range End"
+#~ msgstr "Wskaźnik do końca zakresu"
+#~ msgid "Select All Between Cursors"
+#~ msgstr "Zaznacz wszystko między głowicą a wskaźnikiem"
+#~ msgid "Center Edit Cursor"
+#~ msgstr "Wyśrodkuj wskaźnik"
+#~ msgid "Edit to Playhead"
+#~ msgstr "Kursor edycji do głowicy"
+#~ msgid "crop"
+#~ msgstr "Przytnij"
+#~ msgid "Snap to frame"
+#~ msgstr "PrzyciÄ…gaj do klatek"
+#~ msgid "Snap to edit cursor"
+#~ msgstr "Przyciągaj do wskaźnika"
+#~ msgid "Hide Mark"
+#~ msgstr "Ukryj znak"
+#~ msgid "Remove Mark"
+#~ msgstr "Usuń znak"
+#~ msgid "cancel selection"
+#~ msgstr "anuluj zaznaczenie"
+#~ msgid "set region sync position"
+#~ msgstr "ustaw pozycjÄ™ synchronizacji obszaru"
+#~ msgid "Place the edit cursor at the desired sync point"
+#~ msgstr "Umieść wskaźnik w pożądanym punkcie synchronizacji"
+#~ msgid "set sync from edit cursor"
+#~ msgstr "ustaw synchronizację wg położenia wskaźnika"
+#~ msgid "could not start JACK server: "
+#~ msgstr "nie można było uruchomić serwera JACK: "
+#~ msgid "Available LADSPA Plugins"
+#~ msgstr "Dostępne wtyczki LADSPA"
+#~ msgid "LADSPA"
+#~ msgstr "LADSPA"
+#~ msgid "VST"
+#~ msgstr "VST"
+#~ msgid "AudioUnit"
+#~ msgstr "Jednostka audio"
+
diff --git a/gtk2_ardour/po/sv_SE.po b/gtk2_ardour/po/sv_SE.po
index b6c4a01b1b..d870c203fe 100644
--- a/gtk2_ardour/po/sv_SE.po
+++ b/gtk2_ardour/po/sv_SE.po
@@ -6214,7 +6214,7 @@ msgstr "Använd FlushToZero"
#: gtk2_ardour/ardour_ui_ed.cc:433
msgid "Use DenormalsAreZero"
-msgstr "Använda DenormalsAreZero"
+msgstr "Använd DenormalsAreZero"
#: gtk2_ardour/ardour_ui_ed.cc:437
msgid "Use FlushToZero & DenormalsAreZero"
@@ -6941,6 +6941,10 @@ msgstr "Sätt loop från region"
msgid "Set Punch From Edit Range"
msgstr "Sätt inslag från redigeringsomfång"
+#: gtk2_ardour/editor_actions.cc:311
+msgid "Set Punch From Region"
+msgstr "Sätt inslag från region"
+
#: gtk2_ardour/editor_actions.cc:298
msgid "Play From Edit Point"
msgstr "Spela från redigeringspunkten"
@@ -7098,3 +7102,343 @@ msgstr "EJ tonhöjdsändrat soloslagverk"
#: gtk2_ardour/editor_timefx.cc:73
msgid "Contents:"
msgstr "Innehåll"
+
+
+#: gtk2_ardour/editor_actions.cc:359
+msgid "Playhead to Mouse"
+msgstr "Startmarkören till mus"
+
+#: gtk2_ardour/editor_actions.cc:277
+msgid "Playhead To Active Mark"
+msgstr "Startmarkören till aktiv markör"
+
+#: gtk2_ardour/editor_actions.cc:231
+msgid "Nudge Playhead Forward"
+msgstr "Knuffa startmarkören framåt"
+
+#: gtk2_ardour/editor_actions.cc:233
+msgid "Nudge Playhead Backward"
+msgstr "Knuffa startmarkören bakåt"
+
+#: gtk2_ardour/editor_actions.cc:475
+msgid "Move Forward to Transient"
+msgstr "Gå framåt till transient"
+
+#: gtk2_ardour/editor_actions.cc:477
+msgid "Move Backwards to Transient"
+msgstr "Gå bakåt till transient"
+
+#: gtk2_ardour/editor_actions.cc:235
+msgid "Forward To Grid"
+msgstr "Framåt till rutnät"
+
+#: gtk2_ardour/editor_actions.cc:237
+msgid "Backward To Grid"
+msgstr "Bakåt till rutnät"
+
+#: gtk2_ardour/editor_actions.cc:66 gtk2_ardour/editor.cc:151
+#: gtk2_ardour/editor.cc:3446
+msgid "Active Mark"
+msgstr "Aktiv markör"
+
+#: gtk2_ardour/editor_actions.cc:137
+msgid "to Next Region Boundary"
+msgstr "till nästa regionsgränsen"
+
+#: gtk2_ardour/editor_actions.cc:139
+msgid "to Previous Region Boundary"
+msgstr "till förra regionsgränsen"
+
+#: gtk2_ardour/editor_actions.cc:279
+msgid "Active Mark To Playhead"
+msgstr "Aktiv markör till startmarkören"
+
+#: gtk2_ardour/editor_actions.cc:361
+msgid "Active Marker to Mouse"
+msgstr "Aktiv markör till musen"
+
+#: gtk2_ardour/editor_actions.cc:61 gtk2_ardour/editor_actions.cc:613
+msgid "Markers"
+msgstr "Markörer"
+
+#: gtk2_ardour/ardour_ui_ed.cc:333
+msgid "Punch In/Out"
+msgstr "Inslag/utslag"
+
+#: gtk2_ardour/editor_actions.cc:177
+msgid "Select All Overlapping Edit Range"
+msgstr "Välj allt som överlappar redigeringsomfånget"
+
+#: gtk2_ardour/editor_actions.cc:179
+msgid "Select All Inside Edit Range"
+msgstr "Välj allt inom redigeringsomfånget"
+
+#: gtk2_ardour/editor_actions.cc:182
+msgid "Select Edit Range"
+msgstr "Välj redigeringsomfång"
+
+
+#: gtk2_ardour/editor_actions.cc:444
+msgid "Separate Using Punch Range"
+msgstr "Separera utifrån in-/utslagsomfånget"
+
+#: gtk2_ardour/editor_actions.cc:447
+msgid "Separate Using Loop Range"
+msgstr "Separera utifrån loopomfånget"
+
+#: gtk2_ardour/editor_actions.cc:469
+msgid "Split Regions At Percussion Onsets"
+msgstr "Dela regioner vid perkussiva anslag"
+
+#: gtk2_ardour/editor_actions.cc:282
+msgid "Trim Start At Edit Point"
+msgstr "Beskär början vid redigeringspunkten"
+
+#: gtk2_ardour/editor_actions.cc:285
+msgid "Trim End At Edit Point"
+msgstr "Beskär slutet vid redigeringspunkten"
+
+#: gtk2_ardour/ardour_ui_ed.cc:95
+msgid "Misc. Shortcuts"
+msgstr "Diverse kortkommandon"
+
+#: gtk2_ardour/editor_actions.cc:385
+msgid "Boost Region Gain"
+msgstr "Öka regionens volym"
+
+#: gtk2_ardour/editor_actions.cc:388
+msgid "Cut Region Gain"
+msgstr "Sänk regionens volym"
+
+#: gtk2_ardour/editor_actions.cc:99
+msgid "Break drag"
+msgstr "Avbryt dragning"
+
+
+#: gtk2_ardour/editor_actions.cc:400
+msgid "Raise Region"
+msgstr "Höj regionen"
+
+#: gtk2_ardour/editor_actions.cc:403
+msgid "Lower Region"
+msgstr "Sänk regionen"
+
+#: gtk2_ardour/editor_actions.cc:415
+msgid "Move To Original Position"
+msgstr "Flytta till ursprunglig position"
+
+#: gtk2_ardour/editor_actions.cc:409
+msgid "Lock Region"
+msgstr "LÃ¥s region"
+
+#: gtk2_ardour/editor_actions.cc:397
+msgid "Remove Region Sync"
+msgstr "Ta bort regionsynk.-punkt"
+
+#: gtk2_ardour/editor_actions.cc:505 gtk2_ardour/editor_ops.cc:5651
+msgid "Insert Time"
+msgstr "Infoga tid"
+
+#: gtk2_ardour/editor_actions.cc:93
+msgid "Waveforms"
+msgstr "VÃ¥gformer"
+
+#: gtk2_ardour/editor_actions.cc:509
+msgid "Toggle Active"
+msgstr "Växla aktiv"
+
+#: gtk2_ardour/editor_actions.cc:547
+msgid "Zoom Focus Mouse"
+msgstr "Zoomfokus: mus"
+
+#: gtk2_ardour/editor_actions.cc:582
+msgid "Next Snap Mode"
+msgstr "Nästa fästläge"
+
+#: gtk2_ardour/editor_actions.cc:583
+msgid "Next Snap Choice"
+msgstr "Nästa fästlägealternativ"
+
+#: gtk2_ardour/editor_actions.cc:70
+msgid "Primary Clock"
+msgstr "Primär klocka"
+
+#: gtk2_ardour/editor_actions.cc:77
+msgid "Secondary Clock"
+msgstr "Sekundär klocka"
+
+#: gtk2_ardour/ardour_ui_ed.cc:309 gtk2_ardour/ardour_ui_ed.cc:318
+#: gtk2_ardour/editor_actions.cc:616
+msgid "Bars & Beats"
+msgstr "Takter & slag"
+
+#: gtk2_ardour/ardour_ui_ed.cc:311 gtk2_ardour/ardour_ui_ed.cc:320
+msgid "Minutes & Seconds"
+msgstr "Minuter & sekunder"
+
+#: gtk2_ardour/editor_actions.cc:75
+msgid "Rulers"
+msgstr "Tidslinjevisning"
+
+#: gtk2_ardour/editor_actions.cc:619
+msgid "Min:Sec"
+msgstr "Min:sek"
+
+#: gtk2_ardour/editor_actions.cc:615
+msgid "Loop/Punch"
+msgstr "Loop-/inslagsmarkörer"
+
+#: gtk2_ardour/editor_actions.cc:76
+msgid "Scroll"
+msgstr "Skrollning"
+
+#: gtk2_ardour/rhythm_ferret.cc:40
+msgid "Analysis"
+msgstr "Analys"
+
+#: gtk2_ardour/rhythm_ferret.cc:30
+msgid "Percussive Onset"
+msgstr "Perkussivt anslag"
+
+#: gtk2_ardour/rhythm_ferret.cc:31
+msgid "Note Onset"
+msgstr "Notanslag"
+
+#: gtk2_ardour/rhythm_ferret.cc:48
+msgid "Threshold"
+msgstr "Tröskel"
+
+#: gtk2_ardour/rhythm_ferret.cc:51
+msgid "Sensitivity"
+msgstr "Känslighet"
+
+#: gtk2_ardour/rhythm_ferret.cc:52
+msgid "Analyze"
+msgstr "Analysera"
+
+#: gtk2_ardour/rhythm_ferret.cc:55
+msgid "Trigger gap (msecs)"
+msgstr "Utlösningsmellanrum (msek)"
+
+#: gtk2_ardour/rhythm_ferret.cc:43
+msgid "Set Tempo Map"
+msgstr "Sätt tempokarta"
+
+#: gtk2_ardour/rhythm_ferret.cc:44
+msgid "Conform Region"
+msgstr "Anpassa region"
+
+#: gtk2_ardour/rhythm_ferret.cc:39
+msgid "Selection"
+msgstr "Markering"
+
+
+#: gtk2_ardour/editor_actions.cc:463
+msgid "Set Tempo from Region=Bar"
+msgstr "Sätt tempo från region=takt"
+
+#: gtk2_ardour/editor_actions.cc:466
+msgid "Set Tempo from Edit Range=Bar"
+msgstr "Sätt tempo från redigeringsomfång=takt"
+
+
+#: gtk2_ardour/ardour_ui_ed.cc:548
+msgid "JACK does monitoring"
+msgstr "JACK sköter medhörning"
+
+#: gtk2_ardour/ardour_ui_ed.cc:552
+msgid "Ardour does monitoring"
+msgstr "Ardour sköter medhörning"
+
+#: gtk2_ardour/ardour_ui_ed.cc:553
+msgid "Audio Hardware does monitoring"
+msgstr "Ljudhårdvaran sköter medhörning"
+
+#: gtk2_ardour/ardour_ui_ed.cc:438
+msgid "Tape Machine mode"
+msgstr "Bandmaskinläge"
+
+#: gtk2_ardour/editor_actions.cc:64
+msgid "Misc Options"
+msgstr "Diverse inställningar"
+
+#: gtk2_ardour/ardour_ui_ed.cc:446
+msgid "Create marker at xrun location"
+msgstr "Skapa markör vid xrun-förekomst"
+
+#: gtk2_ardour/ardour_ui_ed.cc:455
+msgid "Rubberbanding Snaps to Grid"
+msgstr "Gummibandning fäster mot rutnätet"
+
+#: gtk2_ardour/ardour_ui_ed.cc:456
+msgid "Auto-analyse new audio"
+msgstr "Autoanalysera nya ljud"
+
+#: gtk2_ardour/editor_actions.cc:689
+msgid "Import to Region List"
+msgstr "Importera till regionslistan"
+
+#: gtk2_ardour/mixer_strip.cc:984
+msgid "Protect against denormals"
+msgstr "Skydda mot denormals"
+
+#: gtk2_ardour/option_editor.cc:1242
+msgid "Keyboard layout"
+msgstr "Tangentbordslayout"
+
+#: gtk2_ardour/option_editor.cc:275
+msgid "Font Scaling"
+msgstr "Typsnittsskalning"
+
+#: gtk2_ardour/option_editor.cc:97
+msgid "Add new MIDI port"
+msgstr "Lägg till ny MIDI-port"
+
+
+#: gtk2_ardour/editor.cc:1779 gtk2_ardour/editor.cc:1948
+msgid "Spectral Analysis"
+msgstr "Spektralanalys"
+
+#: gtk2_ardour/editor.cc:1793
+msgid "Glue to Bars&Beats"
+msgstr "Klistra mot takt&slag"
+
+#: gtk2_ardour/analysis_window.cc:46
+msgid "Signal source"
+msgstr "Signalkälla"
+
+#: gtk2_ardour/analysis_window.cc:47
+msgid "Selected ranges"
+msgstr "Valda omfång"
+
+#: gtk2_ardour/analysis_window.cc:48
+msgid "Selected regions"
+msgstr "Valda regioner"
+
+#: gtk2_ardour/analysis_window.cc:50
+msgid "Display model"
+msgstr "Visningsmodell"
+
+#: gtk2_ardour/analysis_window.cc:51
+msgid "Composite graphs for each track"
+msgstr ""
+
+#: gtk2_ardour/analysis_window.cc:52
+msgid "Composite graph of all tracks"
+msgstr "Sammansatt graf för alla spår"
+
+#: gtk2_ardour/analysis_window.cc:54
+msgid "Show frequency power range"
+msgstr "Visa frekvenskraftsomfång"
+
+#: gtk2_ardour/analysis_window.cc:55
+msgid "Normalize values"
+msgstr "Normalisera värden"
+
+#: gtk2_ardour/analysis_window.cc:59 gtk2_ardour/analysis_window.cc:60
+msgid "FFT analysis window"
+msgstr "FFT-analysfönster"
+
+#: gtk2_ardour/analysis_window.cc:135
+msgid "Re-analyze data"
+msgstr "Ã…teranalysera data"
diff --git a/gtk2_ardour/region_view.cc b/gtk2_ardour/region_view.cc
index 4251df344c..fff7243f53 100644
--- a/gtk2_ardour/region_view.cc
+++ b/gtk2_ardour/region_view.cc
@@ -94,6 +94,23 @@ RegionView::RegionView (const RegionView& other)
_pixel_width = other._pixel_width;
}
+RegionView::RegionView (const RegionView& other, boost::shared_ptr<Region> other_region)
+ : TimeAxisViewItem (other)
+{
+ /* this is a pseudo-copy constructor used when dragging regions
+ around on the canvas.
+ */
+
+ /* derived concrete type will call init () */
+
+ _region = other_region;
+ editor = other.editor;
+ current_visible_sync_position = other.current_visible_sync_position;
+ valid = false;
+ _pixel_width = other._pixel_width;
+ _height = other._height;
+}
+
RegionView::RegionView (ArdourCanvas::Group* parent,
TimeAxisView& tv,
boost::shared_ptr<ARDOUR::Region> r,
diff --git a/gtk2_ardour/region_view.h b/gtk2_ardour/region_view.h
index a83010c490..19d13ccf03 100644
--- a/gtk2_ardour/region_view.h
+++ b/gtk2_ardour/region_view.h
@@ -48,6 +48,7 @@ class RegionView : public TimeAxisViewItem
Gdk::Color& basic_color);
RegionView (const RegionView& other);
+ RegionView (const RegionView& other, boost::shared_ptr<ARDOUR::Region> other_region);
~RegionView ();
@@ -135,6 +136,7 @@ class RegionView : public TimeAxisViewItem
bool valid; ///< see StreamView::redisplay_diskstream()
bool _enable_display; ///< see StreamView::redisplay_diskstream()
double _pixel_width;
+ double _height;
bool in_destructor;
bool wait_for_data;
diff --git a/gtk2_ardour/route_time_axis.cc b/gtk2_ardour/route_time_axis.cc
index 9e955e4345..384e3e5538 100644
--- a/gtk2_ardour/route_time_axis.cc
+++ b/gtk2_ardour/route_time_axis.cc
@@ -467,7 +467,8 @@ RouteTimeAxisView::playlist_click ()
playlist_action_menu->set_name ("ArdourContextMenu");
build_playlist_menu (playlist_action_menu);
- editor.set_selected_track (*this, Selection::Add);
+
+ conditionally_add_to_selection ();
playlist_action_menu->popup (1, gtk_get_current_event_time());
}
@@ -480,7 +481,7 @@ RouteTimeAxisView::automation_click ()
*/
build_display_menu ();
}
- editor.set_selected_track (*this, Selection::Add);
+ conditionally_add_to_selection ();
automation_action_menu->popup (1, gtk_get_current_event_time());
}
@@ -854,6 +855,7 @@ RouteTimeAxisView::set_height (TrackHeight h)
show_name_entry ();
hide_name_label ();
+ gain_slider->show();
mute_button->show();
solo_button->show();
if (rec_enable_button)
@@ -875,6 +877,7 @@ RouteTimeAxisView::set_height (TrackHeight h)
show_name_entry ();
hide_name_label ();
+ gain_slider->hide();
mute_button->show();
solo_button->show();
if (rec_enable_button)
@@ -895,6 +898,7 @@ RouteTimeAxisView::set_height (TrackHeight h)
hide_name_entry ();
show_name_label ();
+ gain_slider->hide();
mute_button->hide();
solo_button->hide();
if (rec_enable_button)
diff --git a/gtk2_ardour/route_ui.cc b/gtk2_ardour/route_ui.cc
index 659d3a04fe..9c88bec37c 100644
--- a/gtk2_ardour/route_ui.cc
+++ b/gtk2_ardour/route_ui.cc
@@ -135,6 +135,10 @@ RouteUI::~RouteUI()
bool
RouteUI::mute_press(GdkEventButton* ev)
{
+ if (ev->type == GDK_2BUTTON_PRESS) {
+ return true;
+ }
+
if (!ignore_toggle) {
if (Keyboard::is_context_menu_event (ev)) {
@@ -212,6 +216,12 @@ RouteUI::mute_release(GdkEventButton* ev)
bool
RouteUI::solo_press(GdkEventButton* ev)
{
+ /* ignore double clicks */
+
+ if (ev->type == GDK_2BUTTON_PRESS) {
+ return true;
+ }
+
if (!ignore_toggle) {
if (Keyboard::is_context_menu_event (ev)) {
@@ -281,7 +291,6 @@ RouteUI::solo_press(GdkEventButton* ev)
} else {
/* click: solo this route */
-
reversibly_apply_route_boolean ("solo change", &Route::set_solo, !_route->soloed(), this);
}
}
@@ -310,6 +319,10 @@ RouteUI::solo_release(GdkEventButton* ev)
bool
RouteUI::rec_enable_press(GdkEventButton* ev)
{
+ if (ev->type == GDK_2BUTTON_PRESS) {
+ return true;
+ }
+
if (!_session.engine().connected()) {
MessageDialog msg (_("Not connected to JACK - cannot engage record"));
msg.run ();
@@ -378,7 +391,7 @@ RouteUI::update_solo_display ()
ignore_toggle = true;
solo_button->set_active(x);
ignore_toggle = false;
- }
+ }
if (_route->solo_safe()) {
solo_button->set_visual_state (2);
diff --git a/gtk2_ardour/sfdb_freesound_mootcher.cc b/gtk2_ardour/sfdb_freesound_mootcher.cc
new file mode 100644
index 0000000000..6c62939493
--- /dev/null
+++ b/gtk2_ardour/sfdb_freesound_mootcher.cc
@@ -0,0 +1,502 @@
+/* sfdb_freesound_mootcher.cpp **********************************************************************
+
+ Adapted for Ardour by Ben Loftis, March 2008
+
+ Mootcher 23-8-2005
+
+ Mootcher Online Access to thefreesoundproject website
+ http://freesound.iua.upf.edu/
+
+ GPL 2005 Jorn Lemon
+ mail for questions/remarks: mootcher@twistedlemon.nl
+ or go to the freesound website forum
+
+ -----------------------------------------------------------------
+
+ Includes:
+ curl.h (version 7.14.0)
+ Librarys:
+ libcurl.lib
+
+ -----------------------------------------------------------------
+ Licence GPL:
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License
+ as published by the Free Software Foundation; either version 2
+ of the License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+
+*************************************************************************************/
+#include "sfdb_freesound_mootcher.h"
+
+#include <pbd/xml++.h>
+
+#include <sys/stat.h>
+#include <sys/types.h>
+
+#include <ardour/audio_library.h>
+
+#define TRUE 1
+
+//------------------------------------------------------------------------
+Mootcher:: Mootcher(const char *saveLocation)
+ : curl( NULL )
+ , connection( 0 )
+{
+ changeWorkingDir(saveLocation);
+};
+//------------------------------------------------------------------------
+Mootcher:: ~Mootcher()
+{
+ remove( "cookiejar.txt" );
+}
+//------------------------------------------------------------------------
+const char* Mootcher::changeWorkingDir(const char *saveLocation)
+{
+ basePath = saveLocation;
+#ifdef __WIN32__
+ std::string replace = "/";
+ int pos = (int)basePath.find("\\");
+ while( pos != std::string::npos ){
+ basePath.replace(pos, 1, replace);
+ pos = (int)basePath.find("\\");
+ }
+#endif
+ //
+ int pos2 = basePath.find_last_of("/");
+ if(basePath.length() != (pos2+1)) basePath += "/";
+
+ // create Freesound directory and sound dir
+ std::string sndLocation = basePath;
+ mkdir(sndLocation.c_str(), 0777);
+ sndLocation += "snd";
+ mkdir(sndLocation.c_str(), 0777);
+
+ return basePath.c_str();
+}
+
+//------------------------------------------------------------------------
+size_t Mootcher::WriteMemoryCallback(void *ptr, size_t size, size_t nmemb, void *data)
+{
+ register int realsize = (int)(size * nmemb);
+ struct MemoryStruct *mem = (struct MemoryStruct *)data;
+
+ // There might be a realloc() out there that doesn't like
+ // reallocing NULL pointers, so we take care of it here
+ if(mem->memory) mem->memory = (char *)realloc(mem->memory, mem->size + realsize + 1);
+ else mem->memory = (char *)malloc(mem->size + realsize + 1);
+
+ if (mem->memory) {
+ memcpy(&(mem->memory[mem->size]), ptr, realsize);
+ mem->size += realsize;
+ mem->memory[mem->size] = 0;
+ }
+ return realsize;
+}
+
+
+//------------------------------------------------------------------------
+void Mootcher::toLog(std::string input)
+{
+printf("%s\n", input.c_str());// for debugging
+}
+
+
+//------------------------------------------------------------------------
+void Mootcher::setcUrlOptions()
+{
+ // basic init for curl
+ curl_global_init(CURL_GLOBAL_ALL);
+ // some servers don't like requests that are made without a user-agent field, so we provide one
+ curl_easy_setopt(curl, CURLOPT_USERAGENT, "libcurl-agent/1.0");
+ // setup curl error buffer
+ CURLcode res = curl_easy_setopt(curl, CURLOPT_ERRORBUFFER, errorBuffer);
+ // always use the cookie with session id which is received at the login
+ curl_easy_setopt(curl, CURLOPT_COOKIEFILE, "cookiejar.txt");
+ // Allow redirection
+ curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1);
+}
+
+//------------------------------------------------------------------------
+int Mootcher::doLogin(std::string login, std::string password)
+{
+ if(connection==1)
+ return 1;
+
+ struct MemoryStruct xml_page;
+ xml_page.memory = NULL;
+ xml_page.size = 0;
+
+ // create the post message from the login and password
+ std::string postMessage;
+ postMessage += "username=";
+ postMessage += curl_escape(login.c_str(), 0);
+ postMessage += "&password=";
+ postMessage += curl_escape(password.c_str(), 0);
+ postMessage += "&login=";
+ postMessage += curl_escape("1", 0);
+ postMessage += "&redirect=";
+ postMessage += curl_escape("../tests/login.php", 0);
+
+ // Do the setup for libcurl
+ curl = curl_easy_init();
+
+ if(curl)
+ {
+ setcUrlOptions();
+ curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteMemoryCallback);
+ curl_easy_setopt(curl, CURLOPT_WRITEDATA, (void *)&xml_page);
+ // save the sessoin id that is given back by the server in a cookie
+ curl_easy_setopt(curl, CURLOPT_COOKIEJAR, "cookiejar.txt");
+ // use POST for login variables
+ curl_easy_setopt(curl, CURLOPT_POST, TRUE);
+ curl_easy_setopt(curl, CURLOPT_POSTFIELDS, postMessage.c_str());
+ curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, -1);
+
+ // the url to get
+ std::string login_url = "http://freesound.iua.upf.edu/forum/login.php";
+ curl_easy_setopt(curl, CURLOPT_URL, login_url.c_str() );
+
+ // perform online request
+ connection = 1;
+ CURLcode res = curl_easy_perform(curl);
+ if( res != 0 ) {
+ toLog("curl login error\n");
+ toLog(curl_easy_strerror(res));
+ connection = 0;
+ }
+
+ if (connection == 1){
+ std::string check_page = xml_page.memory;
+ int test = (int)check_page.find("login"); //logged
+ if( strcmp(xml_page.memory, "login") == 0 )
+ toLog("Logged in.\n");
+ else {
+ toLog("Login failed: Check username and password.\n");
+ connection = 0;
+ }
+ }
+
+ // free the memory
+ if(xml_page.memory){
+ free( xml_page.memory );
+ xml_page.memory = NULL;
+ xml_page.size = 0;
+ }
+
+ std::cerr << "Login was cool, connection = " << connection << std::endl;
+ return connection;
+ }
+ else return 3; // will be returned if a curl related problem ocurrs
+}
+//------------------------------------------------------------------------
+std::string Mootcher::searchText(std::string word)
+{
+ struct MemoryStruct xml_page;
+ xml_page.memory = NULL;
+ xml_page.size = 0;
+
+ std::string result;
+
+ if(connection != 0)
+ {
+ // create a url encoded post message
+ std::string postMessage;
+ char tempString[ 128 ];
+ char *tempPointer = &tempString[0];
+
+ postMessage = "search=";
+ postMessage += curl_escape(word.c_str(), 0);
+ sprintf( tempPointer, "&searchDescriptions=1");
+ postMessage += tempPointer;
+ sprintf( tempPointer, "&searchtags=1");
+ postMessage += tempPointer;
+
+ if(curl)
+ {
+ // basic init for curl
+ setcUrlOptions();
+ curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteMemoryCallback);
+ curl_easy_setopt(curl, CURLOPT_WRITEDATA, (void *)&xml_page);
+ // setup the post message
+ curl_easy_setopt(curl, CURLOPT_POST, TRUE);
+ curl_easy_setopt(curl, CURLOPT_POSTFIELDS, postMessage.c_str());
+ curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, -1);
+
+ // the url to get
+ std::string search_url = "http://freesound.iua.upf.edu/searchTextXML.php";
+ curl_easy_setopt(curl, CURLOPT_URL, search_url.c_str());
+
+ // perform the online search
+ connection = 1;
+ CURLcode res = curl_easy_perform(curl);
+ if( res != 0 ) {
+ toLog("curl login error\n");
+ toLog(curl_easy_strerror(res));
+ connection = 0;
+ }
+
+ result = xml_page.memory;
+ toLog( result.c_str() );
+
+ // free the memory
+ if(xml_page.memory){
+ free( xml_page.memory );
+ xml_page.memory = NULL;
+ xml_page.size = 0;
+ }
+
+ }
+ }
+
+ return result;
+}
+
+//------------------------------------------------------------------------
+std::string Mootcher::changeExtension(std::string filename)
+{
+ std::string aiff = ".aiff";
+ std::string aif = ".aif";
+ std::string wav = ".wav";
+ std::string mp3 = ".mp3";
+ std::string ogg = ".ogg";
+ std::string flac = ".flac";
+
+ std::string replace = ".xml";
+ int pos = 0;
+
+ pos = (int)filename.find(aiff);
+ if(pos != std::string::npos) filename.replace(pos, aiff.size(), replace);
+ pos = (int)filename.find(aif);
+ if(pos != std::string::npos) filename.replace(pos, aif.size(), replace);
+ pos = (int)filename.find(wav);
+ if(pos != std::string::npos) filename.replace(pos, wav.size(), replace);
+ pos = (int)filename.find(mp3);
+ if(pos != std::string::npos) filename.replace(pos, mp3.size(), replace);
+ pos = (int)filename.find(ogg);
+ if(pos != std::string::npos) filename.replace(pos, ogg.size(), replace);
+ pos = (int)filename.find(flac);
+ if(pos != std::string::npos) filename.replace(pos, flac.size(), replace);
+
+ return filename;
+}
+//------------------------------------------------------------------------
+void Mootcher::GetXml(std::string ID, struct MemoryStruct &xml_page)
+{
+
+ if(curl) {
+ setcUrlOptions();
+ curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteMemoryCallback);
+ curl_easy_setopt(curl, CURLOPT_WRITEDATA, (void *)&xml_page);
+
+ // URL to get
+ std::string getxml_url = "http://freesound.iua.upf.edu/samplesViewSingleXML.php?id=";
+ getxml_url += ID;
+
+ curl_easy_setopt(curl, CURLOPT_URL, getxml_url.c_str() );
+
+ // get it!
+ connection = 1;
+ CURLcode res = curl_easy_perform(curl);
+ if( res != 0 ) {
+ toLog("curl login error\n");
+ toLog(curl_easy_strerror(res));
+ connection = 0;
+ }
+ }
+}
+//------------------------------------------------------------------------
+std::string Mootcher::getXmlFile(std::string ID, int &length)
+{
+ struct MemoryStruct xml_page;
+ xml_page.memory = NULL;
+ xml_page.size = NULL;
+
+ std::string xmlFileName;
+ std::string audioFileName;
+ std::string filename;
+
+ if(connection != 0) {
+ // download the xmlfile into xml_page
+ GetXml(ID, xml_page);
+
+ // if sample ID does not exist on the freesound website
+ if(strcmp(xml_page.memory, "sample non existant") == 0){
+ free( xml_page.memory );
+ sprintf(message, "getXmlFile: sample with ID:%s does not exist!\n", ID.c_str() );
+ toLog(message);
+ return filename;
+ } else {
+ XMLTree doc;
+ doc.read_buffer( xml_page.memory );
+ XMLNode *freesound = doc.root();
+
+ // if the page is not a valid xml document with a 'freesound' root
+ if( freesound == NULL){
+ sprintf(message, "getXmlFile: There is no valid root in the xml file");
+ toLog(message);
+ } else {
+ XMLNode *sample = freesound->child("sample");
+ XMLNode *name = NULL;
+ XMLNode *filesize = NULL;
+ if (sample) {
+ name = sample->child("originalFilename");
+ filesize = sample->child("filesize");
+ }
+
+ // get the file name and size from xml file
+ if (sample && name && filesize) {
+
+ audioFileName = name->child("text")->content();
+ sprintf( message, "getXmlFile: %s needs to be downloaded\n", audioFileName.c_str() );
+ toLog(message);
+
+ length = atoi(filesize->child("text")->content().c_str());
+
+ // create new filename with the ID number
+ filename = basePath;
+ filename += "snd/";
+ filename += sample->property("id")->value();
+ filename += "-";
+ filename += audioFileName;
+ // change the extention into .xml
+ xmlFileName = changeExtension( filename );
+
+ sprintf(message, "getXmlFile: saving XML: %s\n", xmlFileName.c_str() );
+ toLog(message);
+
+ // save the xml file to disk
+ doc.write(xmlFileName.c_str());
+
+ //store all the tags in the database
+ XMLNode *tags = sample->child("tags");
+ if (tags) {
+ XMLNodeList children = tags->children();
+ XMLNodeConstIterator niter;
+ vector<string> strings;
+ for (niter = children.begin(); niter != children.end(); ++niter) {
+ XMLNode *node = *niter;
+ if( strcmp( node->name().c_str(), "tag") == 0 ) {
+ XMLNode *text = node->child("text");
+ if (text) strings.push_back(text->content());
+ }
+ }
+ ARDOUR::Library->set_tags (string("//")+filename, strings);
+ ARDOUR::Library->save_changes ();
+ }
+ }
+
+ // clear the memory
+ if(xml_page.memory){
+ free( xml_page.memory );
+ xml_page.memory = NULL;
+ xml_page.size = 0;
+ }
+ return audioFileName;
+ }
+ }
+ }
+ else {
+ return audioFileName;
+ }
+
+}
+
+int audioFileWrite(void *buffer, size_t size, size_t nmemb, void *file)
+{
+ return (int)fwrite(buffer, size, nmemb, (FILE*) file);
+};
+
+//------------------------------------------------------------------------
+std::string Mootcher::getFile(std::string ID)
+{
+ CURLcode result_curl;
+
+ std::string audioFileName;
+
+ if(connection != 0)
+ {
+ int length;
+ std::string name = getXmlFile(ID, length);
+ if( name != "" ){
+
+ // create new filename with the ID number
+ audioFileName += basePath;
+ audioFileName += "snd/";
+ audioFileName += ID;
+ audioFileName += "-";
+ audioFileName += name;
+
+ //check to see if audio file already exists
+ FILE *testFile = fopen(audioFileName.c_str(), "r");
+ if (testFile) { //TODO: should also check length to see if file is complete
+ fseek (testFile , 0 , SEEK_END);
+ if (ftell (testFile) == length) {
+ sprintf(message, "%s already exists\n", audioFileName.c_str() );
+ toLog(message);
+ fclose (testFile);
+ return audioFileName;
+ } else {
+ remove( audioFileName.c_str() ); //file was not correct length, delete it and try again
+ }
+ }
+
+
+ //now download the actual file
+ if (curl) {
+
+ FILE* theFile;
+ theFile = fopen( audioFileName.c_str(), "wb" );
+
+ // create the download url, this url will also update the download statics on the site
+ std::string audioURL;
+ audioURL += "http://freesound.iua.upf.edu/samplesDownload.php?id=";
+ audioURL += ID;
+
+ setcUrlOptions();
+ curl_easy_setopt(curl, CURLOPT_URL, audioURL.c_str() );
+ curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, audioFileWrite);
+ curl_easy_setopt(curl, CURLOPT_WRITEDATA, theFile);
+
+ connection = 1;
+ CURLcode res = curl_easy_perform(curl);
+ if( res != 0 ) {
+ toLog("curl login error\n");
+ toLog(curl_easy_strerror(res));
+ connection = 0;
+ }
+
+ fclose(theFile);
+ }
+
+/*
+ bar.dlnowMoo = 0;
+ bar.dltotalMoo = 0;
+ curl_easy_setopt (curl, CURLOPT_NOPROGRESS, 0); // turn on the process bar thingy
+ curl_easy_setopt (curl, CURLOPT_PROGRESSFUNCTION, progress_callback);
+ curl_easy_setopt (curl, CURLOPT_PROGRESSDATA, &bar);
+*/
+ }
+ }
+
+ return audioFileName;
+}
+
+//---------
+int Mootcher::progress_callback(void *bar, double dltotal, double dlnow, double ultotal, double ulnow)
+{
+ struct dlprocess *lbar = (struct dlprocess *) bar;
+ lbar->dltotalMoo = dltotal;
+ lbar->dlnowMoo = dlnow;
+ return 0;
+}
diff --git a/gtk2_ardour/sfdb_freesound_mootcher.h b/gtk2_ardour/sfdb_freesound_mootcher.h
new file mode 100644
index 0000000000..3cfbd414d4
--- /dev/null
+++ b/gtk2_ardour/sfdb_freesound_mootcher.h
@@ -0,0 +1,78 @@
+/*sfdb_freesound_mootcher.h****************************************************************************
+
+ Adapted for Ardour by Ben Loftis, March 2008
+
+ Mootcher Online Access to thefreesoundproject website
+ http://freesound.iua.upf.edu/
+
+ GPL 2005 Jorn Lemon
+ mail for questions/remarks: mootcher@twistedlemon.nl
+ or go to the freesound website forum
+
+*****************************************************************************/
+
+#include <string>
+#include <fstream>
+#include <iostream>
+#include <stdio.h>
+#include <cstring>
+#include <string>
+#include <sstream>
+#include <vector>
+//#include <ctime>
+
+#include "curl/curl.h"
+
+
+// mootcher version
+#define ___VERSION___ 1.3
+
+//--- struct to store XML file
+struct MemoryStruct {
+ char *memory;
+ size_t size;
+};
+
+//--- for download process viewing
+struct dlprocess {
+ double dltotalMoo;
+ double dlnowMoo;
+};
+
+class Mootcher
+{
+public:
+ Mootcher(const char *saveLocation);
+ ~Mootcher();
+
+ int doLogin(std::string login, std::string password);
+ std::string getFile(std::string ID);
+ std::string searchText(std::string word);
+
+
+ struct dlprocess bar;
+
+private:
+
+ const char* changeWorkingDir(const char *saveLocation);
+
+ std::string getXmlFile(std::string ID, int &length);
+ void GetXml(std::string ID, struct MemoryStruct &xml_page);
+ std::string changeExtension(std::string filename);
+
+ void toLog(std::string input);
+
+ void setcUrlOptions();
+
+ static size_t WriteMemoryCallback(void *ptr, size_t size, size_t nmemb, void *data);
+ static int progress_callback(void *clientp, double dltotal, double dlnow, double ultotal, double ulnow);
+
+ CURL *curl;
+ char errorBuffer[CURL_ERROR_SIZE]; // storage for cUrl error message
+
+ int connection; // is 0 if no connection
+ char message[128]; // storage for messages that are send to the logfile
+
+ std::string basePath;
+ std::string xmlLocation;
+};
diff --git a/gtk2_ardour/sfdb_ui.cc b/gtk2_ardour/sfdb_ui.cc
index 6f7f655d8e..6fa74e986c 100644
--- a/gtk2_ardour/sfdb_ui.cc
+++ b/gtk2_ardour/sfdb_ui.cc
@@ -32,6 +32,8 @@
#include <pbd/convert.h>
#include <pbd/tokenizer.h>
#include <pbd/enumwriter.h>
+#include <pbd/pthread_utils.h>
+#include <pbd/xml++.h>
#include <gtkmm2ext/utils.h>
@@ -56,6 +58,10 @@
#include "utils.h"
#include "gain_meter.h"
+#ifdef FREESOUND
+#include "sfdb_freesound_mootcher.h"
+#endif
+
#include "i18n.h"
using namespace ARDOUR;
@@ -72,13 +78,13 @@ ustring SoundFileBrowser::persistent_folder;
static ImportMode
string2importmode (string str)
{
- if (str == "as new tracks") {
+ if (str == _("as new tracks")) {
return ImportAsTrack;
- } else if (str == "to selected tracks") {
+ } else if (str == _("to selected tracks")) {
return ImportToTrack;
- } else if (str == "to region list") {
+ } else if (str == _("to region list")) {
return ImportAsRegion;
- } else if (str == "as new tape tracks") {
+ } else if (str == _("as new tape tracks")) {
return ImportAsTapeTrack;
}
@@ -391,74 +397,143 @@ SoundFileBox::save_tags (const vector<string>& tags)
SoundFileBrowser::SoundFileBrowser (Gtk::Window& parent, string title, ARDOUR::Session* s, bool persistent)
: ArdourDialog (parent, title, false, false),
found_list (ListStore::create(found_list_columns)),
+ freesound_list (ListStore::create(freesound_list_columns)),
chooser (FILE_CHOOSER_ACTION_OPEN),
found_list_view (found_list),
+ freesound_list_view (freesound_list),
preview (persistent),
- found_search_btn (_("Search"))
+ found_search_btn (_("Search")),
+ freesound_search_btn (_("Start Downloading"))
{
+ resetting_ourselves = false;
+ gm = 0;
+
if (ARDOUR::Profile->get_sae()) {
chooser.add_shortcut_folder_uri("file:///Library/GarageBand/Apple Loops");
chooser.add_shortcut_folder_uri("file:///Library/Application Support/GarageBand/Instrument Library/Sampler/Sampler Files");
}
- VBox* vbox;
- HBox* hbox;
+ //add the file chooser
+ {
+ chooser.set_border_width (12);
- gm = 0;
-
- set_session (s);
- resetting_ourselves = false;
+ audio_filter.add_custom (FILE_FILTER_FILENAME, mem_fun(*this, &SoundFileBrowser::on_audio_filter));
+ audio_filter.set_name (_("Audio files"));
+
+ midi_filter.add_custom (FILE_FILTER_FILENAME, mem_fun(*this, &SoundFileBrowser::on_midi_filter));
+ midi_filter.set_name (_("MIDI files"));
+
+ matchall_filter.add_pattern ("*.*");
+ matchall_filter.set_name (_("All files"));
+
+ chooser.add_filter (audio_filter);
+ chooser.add_filter (midi_filter);
+ chooser.add_filter (matchall_filter);
+ chooser.set_select_multiple (true);
+ chooser.signal_update_preview().connect(mem_fun(*this, &SoundFileBrowser::update_preview));
+ chooser.signal_file_activated().connect (mem_fun (*this, &SoundFileBrowser::chooser_file_activated));
+
+ if (!persistent_folder.empty()) {
+ chooser.set_current_folder (persistent_folder);
+ }
+ notebook.append_page (chooser, _("Browse Files"));
+ }
- hpacker.set_spacing (6);
- hpacker.pack_start (notebook, true, true);
- hpacker.pack_start (preview, false, false);
+ //add tag search
+ {
+ VBox* vbox;
+ HBox* hbox;
- get_vbox()->pack_start (hpacker, true, true);
+ hpacker.set_spacing (6);
+ hpacker.pack_start (notebook, true, true);
+ hpacker.pack_start (preview, false, false);
- hbox = manage(new HBox);
- hbox->pack_start (found_entry);
- hbox->pack_start (found_search_btn);
-
- vbox = manage(new VBox);
- vbox->pack_start (*hbox, PACK_SHRINK);
- vbox->pack_start (found_list_view);
- found_list_view.append_column(_("Paths"), found_list_columns.pathname);
-
- chooser.set_border_width (12);
+ get_vbox()->pack_start (hpacker, true, true);
- notebook.append_page (chooser, _("Browse Files"));
- notebook.append_page (*vbox, _("Search Tags"));
+ hbox = manage(new HBox);
+ hbox->pack_start (found_entry);
+ hbox->pack_start (found_search_btn);
+
+ Gtk::ScrolledWindow *scroll = manage(new ScrolledWindow);
+ scroll->add(found_list_view);
+ scroll->set_policy(Gtk::POLICY_AUTOMATIC, Gtk::POLICY_AUTOMATIC);
- notebook.set_size_request (500, -1);
+ vbox = manage(new VBox);
+ vbox->pack_start (*hbox, PACK_SHRINK);
+ vbox->pack_start (*scroll);
+
+ found_list_view.append_column(_("Paths"), found_list_columns.pathname);
+
+ found_list_view.get_selection()->signal_changed().connect(mem_fun(*this, &SoundFileBrowser::found_list_view_selected));
+
+ found_list_view.signal_row_activated().connect (mem_fun (*this, &SoundFileBrowser::found_list_view_activated));
- found_list_view.get_selection()->set_mode (SELECTION_MULTIPLE);
- found_list_view.signal_row_activated().connect (mem_fun (*this, &SoundFileBrowser::found_list_view_activated));
+ found_search_btn.signal_clicked().connect(mem_fun(*this, &SoundFileBrowser::found_search_clicked));
+ found_entry.signal_activate().connect(mem_fun(*this, &SoundFileBrowser::found_search_clicked));
- audio_filter.add_custom (FILE_FILTER_FILENAME, mem_fun(*this, &SoundFileBrowser::on_audio_filter));
- audio_filter.set_name (_("Audio files"));
+ notebook.append_page (*vbox, _("Search Tags"));
+ }
- midi_filter.add_custom (FILE_FILTER_FILENAME, mem_fun(*this, &SoundFileBrowser::on_midi_filter));
- midi_filter.set_name (_("MIDI files"));
- matchall_filter.add_pattern ("*.*");
- matchall_filter.set_name (_("All files"));
+ //add freesound search
+#ifdef FREESOUND
+ {
+ VBox* vbox;
+ HBox* passbox;
+ Label* label;
+
+ hpacker.set_spacing (6);
+ hpacker.pack_start (notebook, true, true);
+ hpacker.pack_start (preview, false, false);
+
+ get_vbox()->pack_start (hpacker, true, true);
+
+ passbox = manage(new HBox);
+ passbox->set_border_width (12);
+ passbox->set_spacing (6);
+
+ label = manage (new Label);
+ label->set_text (_("User:"));
+ passbox->pack_start (*label, false, false);
+ passbox->pack_start (freesound_name_entry);
+ label = manage (new Label);
+ label->set_text (_("Password:"));
+ passbox->pack_start (*label, false, false);
+ passbox->pack_start (freesound_pass_entry);
+ label = manage (new Label);
+ label->set_text (_("Tags:"));
+ passbox->pack_start (*label, false, false);
+ passbox->pack_start (freesound_entry, false, false);
+ passbox->pack_start (freesound_search_btn, false, false);
+
+ Gtk::ScrolledWindow *scroll = manage(new ScrolledWindow);
+ scroll->add(freesound_list_view);
+ scroll->set_policy(Gtk::POLICY_AUTOMATIC, Gtk::POLICY_AUTOMATIC);
+
+ vbox = manage(new VBox);
+ vbox->pack_start (*passbox, PACK_SHRINK);
+ vbox->pack_start(*scroll);
+
+ //vbox->pack_start (freesound_list_view);
- chooser.add_filter (audio_filter);
- chooser.add_filter (midi_filter);
- chooser.add_filter (matchall_filter);
- chooser.set_select_multiple (true);
- chooser.signal_update_preview().connect(mem_fun(*this, &SoundFileBrowser::update_preview));
- chooser.signal_file_activated().connect (mem_fun (*this, &SoundFileBrowser::chooser_file_activated));
+ freesound_list_view.append_column(_("Paths"), freesound_list_columns.pathname);
+ freesound_list_view.get_selection()->signal_changed().connect(mem_fun(*this, &SoundFileBrowser::freesound_list_view_selected));
+
+ //freesound_list_view.get_selection()->set_mode (SELECTION_MULTIPLE);
+ freesound_list_view.signal_row_activated().connect (mem_fun (*this, &SoundFileBrowser::freesound_list_view_activated));
- if (!persistent_folder.empty()) {
- chooser.set_current_folder (persistent_folder);
- }
+ freesound_search_btn.signal_clicked().connect(mem_fun(*this, &SoundFileBrowser::freesound_search_clicked));
+ freesound_entry.signal_activate().connect(mem_fun(*this, &SoundFileBrowser::freesound_search_clicked));
- found_list_view.get_selection()->signal_changed().connect(mem_fun(*this, &SoundFileBrowser::found_list_view_selected));
+ notebook.append_page (*vbox, _("Search Freesound"));
+ }
+#endif
- found_search_btn.signal_clicked().connect(mem_fun(*this, &SoundFileBrowser::found_search_clicked));
- found_entry.signal_activate().connect(mem_fun(*this, &SoundFileBrowser::found_search_clicked));
+
+ notebook.set_size_request (500, -1);
+
+ set_session (s);
add_button (Stock::CANCEL, RESPONSE_CANCEL);
add_button (Stock::APPLY, RESPONSE_APPLY);
@@ -499,6 +574,12 @@ SoundFileBrowser::found_list_view_activated (const TreeModel::Path& path, TreeVi
}
void
+SoundFileBrowser::freesound_list_view_activated (const TreeModel::Path& path, TreeViewColumn* col)
+{
+ preview.audition ();
+}
+
+void
SoundFileBrowser::set_session (Session* s)
{
ArdourDialog::set_session (s);
@@ -603,6 +684,29 @@ SoundFileBrowser::found_list_view_selected ()
}
void
+SoundFileBrowser::freesound_list_view_selected ()
+{
+ if (!reset_options ()) {
+ set_response_sensitive (RESPONSE_OK, false);
+ } else {
+ ustring file;
+
+ TreeView::Selection::ListHandle_Path rows = freesound_list_view.get_selection()->get_selected_rows ();
+
+ if (!rows.empty()) {
+ TreeIter iter = freesound_list->get_iter(*rows.begin());
+ file = (*iter)[freesound_list_columns.pathname];
+ chooser.set_filename (file);
+ set_response_sensitive (RESPONSE_OK, true);
+ } else {
+ set_response_sensitive (RESPONSE_OK, false);
+ }
+
+ preview.setup_labels (file);
+ }
+}
+
+void
SoundFileBrowser::found_search_clicked ()
{
string tag_string = found_entry.get_text ();
@@ -626,6 +730,88 @@ SoundFileBrowser::found_search_clicked ()
}
}
+void*
+freesound_search_thread_entry (void* arg)
+{
+ PBD::ThreadCreated (pthread_self(), X_("Freesound Search"));
+
+ static_cast<SoundFileBrowser*>(arg)->freesound_search_thread ();
+
+ return 0;
+}
+
+bool searching = false;
+bool canceling = false;
+
+void
+SoundFileBrowser::freesound_search_clicked ()
+{
+ if (canceling) //already canceling, button does nothing
+ return;
+
+ if ( searching ) {
+ freesound_search_btn.set_label(_("Cancelling.."));
+ canceling = true;
+ } else {
+ searching = true;
+ freesound_search_btn.set_label(_("Cancel"));
+ pthread_t freesound_thr;
+ pthread_create_and_store ("freesound_search", &freesound_thr, 0, freesound_search_thread_entry, this);
+ }
+}
+
+void
+SoundFileBrowser::freesound_search_thread()
+{
+#ifdef FREESOUND
+ freesound_list->clear();
+
+ string path;
+ path = Glib::get_home_dir();
+ path += "/Freesound/";
+ Mootcher theMootcher(path.c_str());
+
+ string name_string = freesound_name_entry.get_text ();
+ string pass_string = freesound_pass_entry.get_text ();
+ string search_string = freesound_entry.get_text ();
+
+ if ( theMootcher.doLogin( name_string, pass_string ) ) {
+
+ string theString = theMootcher.searchText(search_string);
+
+ XMLTree doc;
+ doc.read_buffer( theString );
+ XMLNode *root = doc.root();
+
+ if (root==NULL) return;
+
+ if ( strcmp(root->name().c_str(), "freesound") == 0) {
+
+ XMLNode *node = 0;
+ XMLNodeList children = root->children();
+ XMLNodeConstIterator niter;
+ for (niter = children.begin(); niter != children.end() && !canceling; ++niter) {
+ node = *niter;
+ if( strcmp( node->name().c_str(), "sample") == 0 ){
+ XMLProperty *prop=node->property ("id");
+ string filename = theMootcher.getFile( prop->value().c_str() );
+ if ( filename != "" ) {
+ TreeModel::iterator new_row = freesound_list->append();
+ TreeModel::Row row = *new_row;
+ string path = Glib::filename_from_uri (string ("file:") + filename);
+ row[freesound_list_columns.pathname] = path;
+ }
+ }
+ }
+ }
+ }
+
+ searching = false;
+ canceling = false;
+ freesound_search_btn.set_label(_("Start Downloading"));
+#endif
+}
+
vector<ustring>
SoundFileBrowser::get_paths ()
{
@@ -644,7 +830,7 @@ SoundFileBrowser::get_paths ()
}
}
- } else {
+ } else if (n==1){
typedef TreeView::Selection::ListHandle_Path ListPath;
@@ -655,6 +841,17 @@ SoundFileBrowser::get_paths ()
results.push_back (str);
}
+ } else {
+
+ typedef TreeView::Selection::ListHandle_Path ListPath;
+
+ ListPath rows = freesound_list_view.get_selection()->get_selected_rows ();
+ for (ListPath::iterator i = rows.begin() ; i != rows.end(); ++i) {
+ TreeIter iter = freesound_list->get_iter(*i);
+ ustring str = (*iter)[freesound_list_columns.pathname];
+
+ results.push_back (str);
+ }
}
return results;
@@ -963,6 +1160,7 @@ SoundFileChooser::SoundFileChooser (Gtk::Window& parent, string title, ARDOUR::S
{
chooser.set_select_multiple (false);
found_list_view.get_selection()->set_mode (SELECTION_SINGLE);
+ freesound_list_view.get_selection()->set_mode (SELECTION_SINGLE);
}
void
diff --git a/gtk2_ardour/sfdb_ui.h b/gtk2_ardour/sfdb_ui.h
index 6565178bc6..a0be66493c 100644
--- a/gtk2_ardour/sfdb_ui.h
+++ b/gtk2_ardour/sfdb_ui.h
@@ -117,6 +117,9 @@ class SoundFileBrowser : public ArdourDialog
FoundTagColumns found_list_columns;
Glib::RefPtr<Gtk::ListStore> found_list;
+ FoundTagColumns freesound_list_columns;
+ Glib::RefPtr<Gtk::ListStore> freesound_list;
+
public:
SoundFileBrowser (Gtk::Window& parent, std::string title, ARDOUR::Session* _s, bool persistent);
virtual ~SoundFileBrowser ();
@@ -127,21 +130,31 @@ class SoundFileBrowser : public ArdourDialog
void clear_selection ();
Gtk::FileChooserWidget chooser;
+
+ SoundFileBox preview;
+
+ Gtk::Entry found_entry;
+ Gtk::Button found_search_btn;
Gtk::TreeView found_list_view;
+ Gtk::Entry freesound_name_entry;
+ Gtk::Entry freesound_pass_entry;
+ Gtk::Entry freesound_entry;
+ Gtk::Button freesound_search_btn;
+ Gtk::TreeView freesound_list_view;
+
+ void freesound_search_thread();
+
protected:
bool resetting_ourselves;
Gtk::FileFilter audio_filter;
Gtk::FileFilter midi_filter;
Gtk::FileFilter matchall_filter;
- SoundFileBox preview;
Gtk::HBox hpacker;
static Glib::ustring persistent_folder;
- Gtk::Entry found_entry;
- Gtk::Button found_search_btn;
Gtk::Notebook notebook;
GainMeter* gm;
@@ -154,10 +167,15 @@ class SoundFileBrowser : public ArdourDialog
sigc::connection metering_connection;
void update_preview ();
+
void found_list_view_selected ();
void found_list_view_activated (const Gtk::TreeModel::Path& path, Gtk::TreeViewColumn*);
void found_search_clicked ();
+ void freesound_list_view_selected ();
+ void freesound_list_view_activated (const Gtk::TreeModel::Path& path, Gtk::TreeViewColumn*);
+ void freesound_search_clicked ();
+
void chooser_file_activated ();
bool on_audio_filter (const Gtk::FileFilter::Info& filter_info);
diff --git a/gtk2_ardour/time_axis_view.cc b/gtk2_ardour/time_axis_view.cc
index e5205069a3..3259ac8a28 100644
--- a/gtk2_ardour/time_axis_view.cc
+++ b/gtk2_ardour/time_axis_view.cc
@@ -544,20 +544,32 @@ TimeAxisView::name_entry_button_release (GdkEventButton *ev)
}
void
+TimeAxisView::conditionally_add_to_selection ()
+{
+ Selection& s (editor.get_selection());
+
+ if (!s.selected (this)) {
+ cerr << "set selected track\n";
+ editor.set_selected_track (*this, Selection::Set);
+ }
+}
+
+
+void
TimeAxisView::popup_display_menu (guint32 when)
{
if (display_menu == 0) {
build_display_menu ();
}
- editor.set_selected_track (*this, Selection::Add);
+ conditionally_add_to_selection ();
display_menu->popup (1, when);
}
gint
TimeAxisView::size_click (GdkEventButton *ev)
{
- editor.set_selected_track (*this, Selection::Add);
+ conditionally_add_to_selection ();
popup_size_menu (ev->time);
return TRUE;
}
diff --git a/gtk2_ardour/time_axis_view.h b/gtk2_ardour/time_axis_view.h
index 5649c0150a..96db8aba93 100644
--- a/gtk2_ardour/time_axis_view.h
+++ b/gtk2_ardour/time_axis_view.h
@@ -334,6 +334,8 @@ class TimeAxisView : public virtual AxisView
ARDOUR::AnalysisFeatureList analysis_features;
void reshow_feature_lines ();
+ void conditionally_add_to_selection ();
+
}; /* class TimeAxisView */
#endif /* __ardour_gtk_time_axis_h__ */
diff --git a/libs/ardour/ardour/audio_unit.h b/libs/ardour/ardour/audio_unit.h
index bdeac0477b..dc9a52d5d3 100644
--- a/libs/ardour/ardour/audio_unit.h
+++ b/libs/ardour/ardour/audio_unit.h
@@ -60,6 +60,7 @@ class AUPlugin : public ARDOUR::Plugin
{
public:
AUPlugin (AudioEngine& engine, Session& session, boost::shared_ptr<CAComponent> comp);
+ AUPlugin (const AUPlugin& other);
virtual ~AUPlugin ();
std::string unique_id () const;
@@ -106,7 +107,7 @@ class AUPlugin : public ARDOUR::Plugin
uint32_t input_streams() const;
boost::shared_ptr<CAAudioUnit> get_au () { return unit; }
- boost::shared_ptr<CAComponent> get_comp () { return comp; }
+ boost::shared_ptr<CAComponent> get_comp () const { return comp; }
OSStatus render_callback(AudioUnitRenderActionFlags *ioActionFlags,
const AudioTimeStamp *inTimeStamp,
@@ -140,6 +141,7 @@ class AUPlugin : public ARDOUR::Plugin
nframes_t frames_processed;
std::vector<AUParameterDescriptor> descriptors;
+ void init ();
};
typedef boost::shared_ptr<AUPlugin> AUPluginPtr;
diff --git a/libs/ardour/ardour/audioengine.h b/libs/ardour/ardour/audioengine.h
index 88f1111a6c..e1d5e50cc2 100644
--- a/libs/ardour/ardour/audioengine.h
+++ b/libs/ardour/ardour/audioengine.h
@@ -133,6 +133,8 @@ class AudioEngine : public sigc::trackable
uint32_t n_physical_outputs () const;
uint32_t n_physical_inputs () const;
+ bool can_request_hardware_monitoring ();
+
void get_physical_outputs (std::vector<std::string>&);
void get_physical_inputs (std::vector<std::string>&);
diff --git a/libs/ardour/ardour/automation_event.h b/libs/ardour/ardour/automation_event.h
index 1831f5ca4d..4f8406bd9b 100644
--- a/libs/ardour/ardour/automation_event.h
+++ b/libs/ardour/ardour/automation_event.h
@@ -27,6 +27,9 @@
#include <sigc++/signal.h>
#include <glibmm/thread.h>
+#include <boost/pool/pool.hpp>
+#include <boost/pool/pool_alloc.hpp>
+
#include <pbd/undo.h>
#include <pbd/xml++.h>
#include <pbd/statefuldestructible.h>
@@ -67,12 +70,21 @@ struct ControlEvent {
double* coeff; ///< double[4] allocated by Curve as needed
};
+/* automation lists use a pool allocator that does not use a lock and
+ allocates 8k of new pointers at a time
+*/
+
+typedef boost::fast_pool_allocator<ControlEvent*,
+ boost::default_user_allocator_new_delete,
+ boost::details::pool::null_mutex,
+ 8192> ControlEventAllocator;
class AutomationList : public PBD::StatefulDestructible
{
public:
- typedef std::list<ControlEvent*> EventList;
+ typedef std::list<ControlEvent*,ControlEventAllocator> EventList;
typedef EventList::iterator iterator;
+ typedef EventList::reverse_iterator reverse_iterator;
typedef EventList::const_iterator const_iterator;
AutomationList (Parameter id, double min_val, double max_val, double default_val);
diff --git a/libs/ardour/ardour/configuration_vars.h b/libs/ardour/ardour/configuration_vars.h
index 732585982d..95313b5b9b 100644
--- a/libs/ardour/ardour/configuration_vars.h
+++ b/libs/ardour/ardour/configuration_vars.h
@@ -53,7 +53,7 @@ CONFIG_VARIABLE (float, track_buffer_seconds, "track-buffer-seconds", 5.0)
CONFIG_VARIABLE (uint32_t, disk_choice_space_threshold, "disk-choice-space-threshold", 57600000)
CONFIG_VARIABLE (SampleFormat, native_file_data_format, "native-file-data-format", ARDOUR::FormatFloat)
CONFIG_VARIABLE (HeaderFormat, native_file_header_format, "native-file-header-format", ARDOUR::WAVE)
-CONFIG_VARIABLE (bool, auto_analyse_audio, "auto-analyse-audio", true)
+CONFIG_VARIABLE (bool, auto_analyse_audio, "auto-analyse-audio", false)
/* OSC */
diff --git a/libs/ardour/ardour/playlist.h b/libs/ardour/ardour/playlist.h
index 4640a8e32f..ad7210f48f 100644
--- a/libs/ardour/ardour/playlist.h
+++ b/libs/ardour/ardour/playlist.h
@@ -92,6 +92,8 @@ class Playlist : public SessionObject, public boost::enable_shared_from_this<Pla
void get_region_list_equivalent_regions (boost::shared_ptr<Region>, std::vector<boost::shared_ptr<Region> >&);
void replace_region (boost::shared_ptr<Region> old, boost::shared_ptr<Region> newr, nframes_t pos);
void split_region (boost::shared_ptr<Region>, nframes_t position);
+ void split (nframes64_t at);
+ void shift (nframes64_t at, nframes64_t distance, bool move_intersected, bool ignore_music_glue);
void partition (nframes_t start, nframes_t end, bool just_top_level);
void duplicate (boost::shared_ptr<Region>, nframes_t position, float times);
void nudge_after (nframes_t start, nframes_t distance, bool forwards);
@@ -274,6 +276,8 @@ class Playlist : public SessionObject, public boost::enable_shared_from_this<Pla
void unset_freeze_child (Playlist*);
void timestamp_layer_op (boost::shared_ptr<Region>);
+
+ void _split_region (boost::shared_ptr<Region>, nframes_t position);
};
} /* namespace ARDOUR */
diff --git a/libs/ardour/ardour/region.h b/libs/ardour/ardour/region.h
index 4196aac886..fb1220e996 100644
--- a/libs/ardour/ardour/region.h
+++ b/libs/ardour/ardour/region.h
@@ -138,6 +138,7 @@ class Region : public Automatable, public boost::enable_shared_from_this<Region>
PositionLockStyle positional_lock_style() const { return _positional_lock_style; }
void set_position_lock_style (PositionLockStyle ps);
+ void recompute_position_from_lock_style ();
virtual bool should_save_state () const { return !(_flags & DoNotSaveState); };
diff --git a/libs/ardour/ardour/region_factory.h b/libs/ardour/ardour/region_factory.h
index 59749613ac..12437ba998 100644
--- a/libs/ardour/ardour/region_factory.h
+++ b/libs/ardour/ardour/region_factory.h
@@ -41,6 +41,12 @@ class RegionFactory {
*/
static sigc::signal<void,boost::shared_ptr<Region> > CheckNewRegion;
+ static boost::shared_ptr<Region> create (boost::shared_ptr<const Region>);
+
+ /* note: both of the first two should use const shared_ptr as well, but
+ gcc 4.1 doesn't seem to be able to disambiguate them if they do.
+ */
+
static boost::shared_ptr<Region> create (boost::shared_ptr<Region>, nframes_t start,
nframes_t length, std::string name,
layer_t = 0, Region::Flag flags = Region::DefaultFlags, bool announce = true);
@@ -49,7 +55,6 @@ class RegionFactory {
layer_t = 0, Region::Flag flags = Region::DefaultFlags, bool announce = true);
static boost::shared_ptr<Region> create (boost::shared_ptr<Source>, nframes_t start, nframes_t length, const string& name, layer_t = 0, Region::Flag flags = Region::DefaultFlags, bool announce = true);
static boost::shared_ptr<Region> create (const SourceList &, nframes_t start, nframes_t length, const string& name, layer_t = 0, Region::Flag flags = Region::DefaultFlags, bool announce = true);
- static boost::shared_ptr<Region> create (boost::shared_ptr<Region>);
static boost::shared_ptr<Region> create (Session&, XMLNode&, bool);
static boost::shared_ptr<Region> create (SourceList &, const XMLNode&);
};
diff --git a/libs/ardour/ardour/session.h b/libs/ardour/ardour/session.h
index a2380357d3..325b164c8d 100644
--- a/libs/ardour/ardour/session.h
+++ b/libs/ardour/ardour/session.h
@@ -261,6 +261,14 @@ class Session : public PBD::StatefulDestructible
const SessionDirectory& session_directory () const { return *(_session_dir.get()); }
+ static sigc::signal<void> AutoBindingOn;
+ static sigc::signal<void> AutoBindingOff;
+
+ static sigc::signal<void,std::string> Dialog;
+
+ std::string sound_dir (bool with_path = true) const;
+ std::string peak_dir () const;
+ std::string dead_sound_dir () const;
std::string automation_dir () const;
std::string analysis_dir() const;
diff --git a/libs/ardour/audio_diskstream.cc b/libs/ardour/audio_diskstream.cc
index e1853e557c..059fed8752 100644
--- a/libs/ardour/audio_diskstream.cc
+++ b/libs/ardour/audio_diskstream.cc
@@ -1570,7 +1570,9 @@ AudioDiskstream::transport_stopped (struct tm& when, time_t twhen, bool abort_ca
s->update_header (capture_info.front()->start, when, twhen);
s->set_captured_for (_name);
s->mark_immutable ();
- Analyser::queue_source_for_analysis (s, true);
+ if (Config->get_auto_analyse_audio()) {
+ Analyser::queue_source_for_analysis (s, true);
+ }
}
}
diff --git a/libs/ardour/audio_unit.cc b/libs/ardour/audio_unit.cc
index e517964024..b941bc10bb 100644
--- a/libs/ardour/audio_unit.cc
+++ b/libs/ardour/audio_unit.cc
@@ -55,17 +55,49 @@ _render_callback(void *userData,
}
AUPlugin::AUPlugin (AudioEngine& engine, Session& session, boost::shared_ptr<CAComponent> _comp)
- :
- Plugin (engine, session),
- comp (_comp),
- unit (new CAAudioUnit),
- initialized (false),
- buffers (0),
- current_maxbuf (0),
- current_offset (0),
- current_buffers (0),
+ : Plugin (engine, session),
+ comp (_comp),
+ unit (new CAAudioUnit),
+ initialized (false),
+ buffers (0),
+ current_maxbuf (0),
+ current_offset (0),
+ current_buffers (0),
frames_processed (0)
{
+ init ();
+}
+
+AUPlugin::AUPlugin (const AUPlugin& other)
+ : Plugin (other)
+ , comp (other.get_comp())
+ , unit (new CAAudioUnit)
+ , initialized (false)
+ , buffers (0)
+ , current_maxbuf (0)
+ , current_offset (0)
+ , current_buffers (0)
+ , frames_processed (0)
+
+{
+ init ();
+}
+
+AUPlugin::~AUPlugin ()
+{
+ if (unit) {
+ unit->Uninitialize ();
+ }
+
+ if (buffers) {
+ free (buffers);
+ }
+}
+
+
+void
+AUPlugin::init ()
+{
OSErr err = CAAudioUnit::Open (*(comp.get()), *unit);
if (err != noErr) {
@@ -90,7 +122,7 @@ AUPlugin::AUPlugin (AudioEngine& engine, Session& session, boost::shared_ptr<CAC
// set up the basic stream format. these fields do not change
- streamFormat.mSampleRate = session.frame_rate();
+ streamFormat.mSampleRate = _session.frame_rate();
streamFormat.mFormatID = kAudioFormatLinearPCM;
streamFormat.mFormatFlags = kAudioFormatFlagIsFloat|kAudioFormatFlagIsPacked|kAudioFormatFlagIsNonInterleaved;
@@ -121,17 +153,6 @@ AUPlugin::AUPlugin (AudioEngine& engine, Session& session, boost::shared_ptr<CAC
Plugin::setup_controls ();
}
-AUPlugin::~AUPlugin ()
-{
- if (unit) {
- unit->Uninitialize ();
- }
-
- if (buffers) {
- free (buffers);
- }
-}
-
void
AUPlugin::discover_parameters ()
{
@@ -281,7 +302,7 @@ AUPlugin::signal_latency () const
return _user_latency;
}
- return unit->Latency ();
+ return unit->Latency() * _session.frame_rate();
}
void
diff --git a/libs/ardour/audioengine.cc b/libs/ardour/audioengine.cc
index 886bb4a61f..9f7d67fb6d 100644
--- a/libs/ardour/audioengine.cc
+++ b/libs/ardour/audioengine.cc
@@ -899,6 +899,25 @@ AudioEngine::halted (void *arg)
}
}
+bool
+AudioEngine::can_request_hardware_monitoring ()
+{
+ const char ** ports;
+
+ if (!_jack) {
+ return 0;
+ }
+
+ if ((ports = jack_get_ports (_jack, NULL, JACK_DEFAULT_AUDIO_TYPE, JackPortCanMonitor)) == 0) {
+ return false;
+ }
+
+ free (ports);
+
+ return true;
+}
+
+
uint32_t
AudioEngine::n_physical_outputs () const
{
@@ -913,10 +932,9 @@ AudioEngine::n_physical_outputs () const
return 0;
}
- if (ports) {
- for (i = 0; ports[i]; ++i);
- free (ports);
- }
+ for (i = 0; ports[i]; ++i);
+ free (ports);
+
return i;
}
diff --git a/libs/ardour/audiofilesource.cc b/libs/ardour/audiofilesource.cc
index 268c4e18bb..026cb3e7c0 100644
--- a/libs/ardour/audiofilesource.cc
+++ b/libs/ardour/audiofilesource.cc
@@ -692,29 +692,39 @@ AudioFileSource::setup_peakfile ()
bool
AudioFileSource::safe_file_extension(ustring file)
{
- return !(file.rfind(".wav") == ustring::npos &&
- file.rfind(".aiff")== ustring::npos &&
- file.rfind(".caf")== ustring::npos &&
- file.rfind(".aif") == ustring::npos &&
- file.rfind(".amb") == ustring::npos &&
- file.rfind(".snd") == ustring::npos &&
- file.rfind(".au") == ustring::npos &&
- file.rfind(".raw") == ustring::npos &&
- file.rfind(".sf") == ustring::npos &&
- file.rfind(".cdr") == ustring::npos &&
- file.rfind(".smp") == ustring::npos &&
- file.rfind(".maud")== ustring::npos &&
- file.rfind(".vwe") == ustring::npos &&
- file.rfind(".paf") == ustring::npos &&
+ const char* suffixes[] = {
+ ".wav", ".WAV",
+ ".aiff", ".AIFF",
+ ".caf", ".CAF",
+ ".aif", ".AIF",
+ ".amb", ".AMB",
+ ".snd", ".SND",
+ ".au", ".AU",
+ ".raw", ".RAW",
+ ".sf", ".SF",
+ ".cdr", ".CDR",
+ ".smp", ".SMP",
+ ".maud", ".MAUD",
+ ".vwe", ".VWE",
+ ".paf", ".PAF",
+ ".voc", ".VOC",
#ifdef HAVE_FLAC
- file.rfind(".flac")== ustring::npos &&
+ ".flac", ".FLAC",
#endif // HAVE_FLAC
#ifdef HAVE_COREAUDIO
- file.rfind(".mp3") == ustring::npos &&
- file.rfind(".aac") == ustring::npos &&
- file.rfind(".mp4") == ustring::npos &&
+ ".mp3", ".MP3",
+ ".aac", ".AAC",
+ ".mp4", ".MP4",
#endif // HAVE_COREAUDIO
- file.rfind(".voc") == ustring::npos);
+ };
+
+ for (size_t n = 0; n < sizeof(suffixes)/sizeof(suffixes[0]); ++n) {
+ if (file.rfind (suffixes[n]) == file.length() - strlen (suffixes[n])) {
+ return true;
+ }
+ }
+
+ return false;
}
void
diff --git a/libs/ardour/audioregion.cc b/libs/ardour/audioregion.cc
index 7c0893f288..f5f04eac6d 100644
--- a/libs/ardour/audioregion.cc
+++ b/libs/ardour/audioregion.cc
@@ -1316,7 +1316,17 @@ AudioRegion::get_transients (AnalysisFeatureList& results, bool force_new)
return 0;
}
- cerr << "startup analysis of " << _name << endl;
+ /* no existing/complete transient info */
+
+ if (!Config->get_auto_analyse_audio()) {
+ pl->session().Dialog (_("\
+You have requested an operation that requires audio analysis.\n\n\
+You currently have \"auto-analyse-audio\" disabled, which means\n\
+that transient data must be generated every time it is required.\n\n\
+If you are doing work that will require transient data on a\n\
+regular basis, you should probably enable \"auto-analyse-audio\"\n\
+then quit ardour and restart."));
+ }
TransientDetector t (pl->session().frame_rate());
bool existing_results = !results.empty();
@@ -1330,14 +1340,10 @@ AudioRegion::get_transients (AnalysisFeatureList& results, bool force_new)
t.reset ();
- cerr << "working on channel " << i << endl;
-
if (t.run ("", this, i, these_results)) {
return -1;
}
- cerr << "done\n";
-
/* translate all transients to give absolute position */
for (AnalysisFeatureList::iterator i = these_results.begin(); i != these_results.end(); ++i) {
diff --git a/libs/ardour/automation_event.cc b/libs/ardour/automation_event.cc
index ccf3c35104..99e44340c5 100644
--- a/libs/ardour/automation_event.cc
+++ b/libs/ardour/automation_event.cc
@@ -685,7 +685,7 @@ AutomationList::truncate_end (double last_coordinate)
{
Glib::Mutex::Lock lm (_lock);
ControlEvent cp (last_coordinate, 0);
- list<ControlEvent*>::reverse_iterator i;
+ AutomationList::reverse_iterator i;
double last_val;
if (_events.empty()) {
@@ -754,7 +754,7 @@ AutomationList::truncate_end (double last_coordinate)
uint32_t sz = _events.size();
while (i != _events.rend() && sz > 2) {
- list<ControlEvent*>::reverse_iterator tmp;
+ AutomationList::reverse_iterator tmp;
tmp = i;
++tmp;
@@ -851,7 +851,7 @@ AutomationList::truncate_start (double overall_length)
i = _events.begin();
while (i != _events.end() && !_events.empty()) {
- list<ControlEvent*>::iterator tmp;
+ AutomationList::iterator tmp;
tmp = i;
++tmp;
@@ -948,6 +948,9 @@ AutomationList::unlocked_eval (double x) const
return multipoint_eval (x);
break;
}
+
+ /*NOTREACHED*/ /* stupid gcc */
+ return 0.0;
}
double
diff --git a/libs/ardour/import.cc b/libs/ardour/import.cc
index 104bef35c3..9bf7033c0b 100644
--- a/libs/ardour/import.cc
+++ b/libs/ardour/import.cc
@@ -469,7 +469,9 @@ Session::import_audiofiles (import_status& status)
/* now that there is data there, requeue the file for analysis */
- Analyser::queue_source_for_analysis (boost::static_pointer_cast<Source>(*x), false);
+ if (Config->get_auto_analyse_audio()) {
+ Analyser::queue_source_for_analysis (boost::static_pointer_cast<Source>(*x), false);
+ }
}
/* save state so that we don't lose these new Sources */
diff --git a/libs/ardour/io.cc b/libs/ardour/io.cc
index cb9fedd7a3..71c051733e 100644
--- a/libs/ardour/io.cc
+++ b/libs/ardour/io.cc
@@ -728,7 +728,7 @@ IO::add_input_port (string source, void* src, DataType type)
{
Glib::Mutex::Lock lm (io_lock);
-
+
if (n_inputs() >= _input_maximum) {
return -1;
}
diff --git a/libs/ardour/playlist.cc b/libs/ardour/playlist.cc
index f1818420ed..0b0d5ecc22 100644
--- a/libs/ardour/playlist.cc
+++ b/libs/ardour/playlist.cc
@@ -857,10 +857,6 @@ Playlist::partition_internal (nframes_t start, nframes_t end, bool cutting, Regi
}
}
- if (current->first_frame() >= current->last_frame()) {
- PBD::stacktrace (cerr);
- }
-
in_partition = false;
}
@@ -1025,10 +1021,67 @@ Playlist::duplicate (boost::shared_ptr<Region> region, nframes_t position, float
}
void
+Playlist::shift (nframes64_t at, nframes64_t distance, bool move_intersected, bool ignore_music_glue)
+{
+ RegionLock rlock (this);
+ RegionList copy (regions);
+ RegionList fixup;
+
+ for (RegionList::iterator r = copy.begin(); r != copy.end(); ++r) {
+
+ if ((*r)->last_frame() < at) {
+ /* too early */
+ continue;
+ }
+
+ if (at > (*r)->first_frame() && at < (*r)->last_frame()) {
+ /* intersected region */
+ if (!move_intersected) {
+ continue;
+ }
+ }
+
+ /* do not move regions glued to music time - that
+ has to be done separately.
+ */
+
+ if (!ignore_music_glue && (*r)->positional_lock_style() != Region::AudioTime) {
+ fixup.push_back (*r);
+ continue;
+ }
+
+ (*r)->set_position ((*r)->position() + distance, this);
+ }
+
+ for (RegionList::iterator r = fixup.begin(); r != fixup.end(); ++r) {
+ (*r)->recompute_position_from_lock_style ();
+ }
+}
+
+void
+Playlist::split (nframes64_t at)
+{
+ RegionLock rlock (this);
+ RegionList copy (regions);
+
+ /* use a copy since this operation can modify the region list
+ */
+
+ for (RegionList::iterator r = copy.begin(); r != copy.end(); ++r) {
+ _split_region (*r, at);
+ }
+}
+
+void
Playlist::split_region (boost::shared_ptr<Region> region, nframes_t playlist_position)
{
RegionLock rl (this);
+ _split_region (region, playlist_position);
+}
+void
+Playlist::_split_region (boost::shared_ptr<Region> region, nframes_t playlist_position)
+{
if (!region->covers (playlist_position)) {
return;
}
diff --git a/libs/ardour/po/pl_PL.po b/libs/ardour/po/pl_PL.po
new file mode 100644
index 0000000000..3a39989f02
--- /dev/null
+++ b/libs/ardour/po/pl_PL.po
@@ -0,0 +1,2063 @@
+# translation of libardour2.po to Polish
+# Copyright (C) YEAR "Paul Davis"
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Piotr Zaryk <pzaryk@gmail.com>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: libardour2\n"
+"Report-Msgid-Bugs-To: Piotr Zaryk <pzaryk@gmail.com>\n"
+"POT-Creation-Date: 2008-04-03 16:16+0200\n"
+"PO-Revision-Date: 2008-04-10 10:51+0100\n"
+"Last-Translator: Piotr Zaryk <pzaryk@gmail.com>\n"
+"Language-Team: Polish <pl@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: libs/ardour/audioanalyser.cc:26
+msgid "cannot load VAMP plugin \"%1\""
+msgstr ""
+
+#: libs/ardour/audioanalyser.cc:46
+msgid "VAMP Plugin \"%1\" could not be loaded"
+msgstr ""
+
+#: libs/ardour/audio_diskstream.cc:249
+msgid "AudioDiskstream: Playlist \"%1\" isn't an audio playlist"
+msgstr ""
+
+#: libs/ardour/audio_diskstream.cc:302
+msgid "AudioDiskstream %1: there is no existing playlist to make a copy of!"
+msgstr ""
+
+#: libs/ardour/audio_diskstream.cc:937
+#: libs/ardour/audio_diskstream.cc:948
+msgid "AudioDiskstream %1: when refilling, cannot read %2 from playlist at frame %3"
+msgstr ""
+
+#: libs/ardour/audio_diskstream.cc:1096
+msgid "AudioDiskstream %1: cannot read %2 from playlist at frame %3"
+msgstr ""
+
+#: libs/ardour/audio_diskstream.cc:1138
+msgid "AudioDiskstream %1: cannot read xfade samples %2 from playlist at frame %3"
+msgstr ""
+
+#: libs/ardour/audio_diskstream.cc:1491
+#: libs/ardour/audio_diskstream.cc:1508
+msgid "AudioDiskstream %1: cannot write to disk"
+msgstr ""
+
+#: libs/ardour/audio_diskstream.cc:1553
+msgid "AudioDiskstream \"%1\": cannot flush captured data to disk!"
+msgstr ""
+
+#: libs/ardour/audio_diskstream.cc:1641
+msgid "%1: could not create region for complete audio file"
+msgstr ""
+
+#: libs/ardour/audio_diskstream.cc:1666
+msgid "AudioDiskstream: could not create region for captured audio!"
+msgstr ""
+
+#: libs/ardour/audio_diskstream.cc:1774
+msgid "programmer error: %1"
+msgstr "błąd programisty: %1"
+
+#: libs/ardour/audio_diskstream.cc:2051
+msgid "AudioDiskstream: channel %1 out of range"
+msgstr ""
+
+#: libs/ardour/audio_diskstream.cc:2070
+msgid "%1:%2 new capture file not initialized correctly"
+msgstr ""
+
+#: libs/ardour/audio_diskstream.cc:2322
+msgid "%1: cannot restore pending capture source file %2"
+msgstr ""
+
+#: libs/ardour/audio_diskstream.cc:2344
+msgid "%1: incorrect number of pending sources listed - ignoring them all"
+msgstr ""
+
+#: libs/ardour/audio_diskstream.cc:2359
+msgid "%1: cannot create whole-file region from pending capture sources"
+msgstr ""
+
+#: libs/ardour/audio_diskstream.cc:2371
+msgid "%1: cannot create region from pending capture sources"
+msgstr ""
+
+#: libs/ardour/audioengine.cc:114
+msgid "Connect session to engine"
+msgstr ""
+
+#: libs/ardour/audioengine.cc:498
+msgid "a port with this name already exists: check for duplicated track/bus names"
+msgstr ""
+
+#: libs/ardour/audioengine.cc:500
+msgid "unknown error"
+msgstr ""
+
+#: libs/ardour/audioengine.cc:503
+msgid "AudioEngine: cannot register port \"%1\": %2"
+msgstr ""
+
+#: libs/ardour/audioengine.cc:511
+msgid "register input port called before engine was started"
+msgstr ""
+
+#: libs/ardour/audioengine.cc:545
+msgid "register output port called before engine was started"
+msgstr ""
+
+#: libs/ardour/audioengine.cc:625
+msgid "connect called before engine was started"
+msgstr ""
+
+#: libs/ardour/audioengine.cc:641
+msgid "AudioEngine: connection already exists: %1 (%2) to %3 (%4)"
+msgstr ""
+
+#: libs/ardour/audioengine.cc:645
+msgid "AudioEngine: cannot connect %1 (%2) to %3 (%4)"
+msgstr ""
+
+#: libs/ardour/audioengine.cc:658
+#: libs/ardour/audioengine.cc:687
+msgid "disconnect called before engine was started"
+msgstr ""
+
+#: libs/ardour/audioengine.cc:745
+msgid "get_port_by_name() called before engine was started"
+msgstr ""
+
+#: libs/ardour/audioengine.cc:789
+msgid "get_ports called before engine was started"
+msgstr ""
+
+#: libs/ardour/audioengine.cc:911
+msgid "get_nth_physical called before engine was started"
+msgstr ""
+
+#: libs/ardour/audioengine.cc:939
+msgid "get_port_total_latency() called with no JACK client connection"
+msgstr ""
+
+#: libs/ardour/audioengine.cc:945
+msgid "get_port_total_latency() called before engine was started"
+msgstr ""
+
+#: libs/ardour/audioengine.cc:1134
+msgid "failed to connect to JACK"
+msgstr "nie udało się połączyć z JACK"
+
+#: libs/ardour/audioengine.cc:1152
+msgid "could not reregister %1"
+msgstr "nie można było zarejestrować %1"
+
+#: libs/ardour/audioengine.cc:1211
+msgid "could not reconnect %1 and %2 (err = %3)"
+msgstr "nie można było połączyć ponownie %1 i %2 (błąd = %3)"
+
+#: libs/ardour/audiofilesource.cc:408
+#: libs/ardour/session_state.cc:2881
+msgid "there are already 1000 files with names like %1; versioning discontinued"
+msgstr ""
+
+#: libs/ardour/audiofilesource.cc:422
+#: libs/ardour/session_state.cc:2895
+msgid "cannot rename audio file source from %1 to %2 (%3)"
+msgstr ""
+
+#: libs/ardour/audiofilesource.cc:429
+#: libs/ardour/session_state.cc:2909
+msgid "cannot remove peakfile %1 for %2 (%3)"
+msgstr ""
+
+#: libs/ardour/audiofilesource.cc:465
+msgid "FileSource: search path not set"
+msgstr ""
+
+#: libs/ardour/audiofilesource.cc:537
+msgid ""
+"FileSource: \"%1\" is ambigous when searching %2\n"
+"\t"
+msgstr ""
+
+#: libs/ardour/audiofilesource.cc:543
+msgid "Filesource: cannot find required file (%1): while searching %2"
+msgstr ""
+
+#: libs/ardour/audiofilesource.cc:583
+msgid "Filesource: cannot find required file (%1): %2"
+msgstr ""
+
+#: libs/ardour/audiofilesource.cc:588
+msgid "Filesource: cannot check for existing file (%1): %2"
+msgstr ""
+
+#: libs/ardour/audiofilesource.cc:651
+#: libs/ardour/audiosource.cc:876
+#: libs/ardour/automation_event.cc:636
+#: libs/ardour/insert.cc:547
+#: libs/ardour/session.cc:2172
+#: libs/ardour/session.cc:3576
+#: libs/ardour/session.cc:3615
+#: libs/ardour/session_command.cc:432
+#: libs/ardour/sndfilesource.cc:111
+msgid "programming error: %1"
+msgstr ""
+
+#: libs/ardour/audiofilesource.cc:657
+msgid "Programming error! Ardour tried to rename a file over another file! It's safe to continue working, but please report this to the developers."
+msgstr ""
+
+#: libs/ardour/audiofilesource.cc:662
+msgid "cannot rename audio file %1 to %2"
+msgstr ""
+
+#: libs/ardour/audiofilter.cc:43
+msgid ""
+"This is an old Ardour session that does not have\n"
+"sufficient information for rendered FX"
+msgstr ""
+
+#: libs/ardour/audiofilter.cc:66
+msgid "audiofilter: error creating name for new audio file based on %1"
+msgstr ""
+
+#: libs/ardour/audiofilter.cc:77
+msgid "audiofilter: error creating new audio file %1 (%2)"
+msgstr ""
+
+#: libs/ardour/audio_library.cc:57
+msgid "Could not open %1. Audio Library not saved"
+msgstr ""
+
+#: libs/ardour/audio_playlist.cc:226
+#: libs/ardour/audio_playlist.cc:615
+msgid "programming error: non-audio Region passed to remove_overlap in audio playlist"
+msgstr ""
+
+#: libs/ardour/audio_playlist.cc:356
+msgid "programming error: non-audio Region tested for overlap in audio playlist"
+msgstr ""
+
+#: libs/ardour/audioregion.cc:1596
+msgid ""
+"You have requested an operation that requires audio analysis.\n"
+"\n"
+"You currently have \"auto-analyse-audio\" disabled, which means\n"
+"that transient data must be generated every time it is required.\n"
+"\n"
+"If you are doing work that will require transient data on a\n"
+"regular basis, you should probably enable \"auto-analyse-audio\"\n"
+"then quit ardour and restart."
+msgstr ""
+
+#: libs/ardour/audiosource.cc:178
+msgid "cannot rename peakfile for %1 from %2 to %3 (%4)"
+msgstr ""
+
+#: libs/ardour/audiosource.cc:205
+msgid "AudioSource: cannot stat peakfile \"%1\""
+msgstr ""
+
+#: libs/ardour/audiosource.cc:329
+msgid "cannot read sample data for unscaled peak computation"
+msgstr ""
+
+#: libs/ardour/audiosource.cc:349
+msgid "AudioSource: cannot open peakpath (a) \"%1\" (%2)"
+msgstr ""
+
+#: libs/ardour/audiosource.cc:423
+msgid "AudioSource: cannot open peakpath (b) \"%1\" (%2)"
+msgstr ""
+
+#: libs/ardour/audiosource.cc:537
+msgid "AudioSource[%1]: peak read - cannot read %2 samples at offset %3 of %4 (%5)"
+msgstr ""
+
+#: libs/ardour/audiosource.cc:624
+msgid "%1: could not write read raw data for peak computation (%2)"
+msgstr ""
+
+#: libs/ardour/audiosource.cc:670
+msgid "AudioSource: cannot open peakpath (c) \"%1\" (%2)"
+msgstr ""
+
+#: libs/ardour/audiosource.cc:736
+#: libs/ardour/audiosource.cc:848
+msgid "%1: could not write peak file data (%2)"
+msgstr ""
+
+#: libs/ardour/audio_track.cc:140
+#: libs/ardour/io.cc:1797
+#: libs/ardour/io.cc:1863
+msgid "Unknown connection \"%1\" listed for input of %2"
+msgstr ""
+
+#: libs/ardour/audio_track.cc:145
+msgid "in 1+2"
+msgstr "wejście 1+2"
+
+#: libs/ardour/audio_track.cc:147
+#: libs/ardour/io.cc:1799
+#: libs/ardour/io.cc:1865
+msgid "in 1"
+msgstr "wejście 1"
+
+#: libs/ardour/audio_track.cc:151
+#: libs/ardour/io.cc:1800
+#: libs/ardour/io.cc:1866
+msgid "No input connections available as a replacement"
+msgstr ""
+
+#: libs/ardour/audio_track.cc:155
+msgid "Connection %1 was not available - \"%2\" used instead"
+msgstr ""
+
+#: libs/ardour/audio_track.cc:164
+#: libs/ardour/io.cc:1879
+msgid "improper input channel list in XML node (%1)"
+msgstr ""
+
+#: libs/ardour/audio_track.cc:205
+#: libs/ardour/audio_track.cc:218
+msgid "AudioTrack: audio diskstream \"%1\" not known by session"
+msgstr ""
+
+#: libs/ardour/audio_track.cc:260
+msgid "programming error: AudioTrack given state without diskstream!"
+msgstr ""
+
+#: libs/ardour/auditioner.cc:56
+msgid "no outputs available for auditioner - manual connection required"
+msgstr ""
+
+#: libs/ardour/auditioner.cc:127
+msgid "Auditioning of non-audio regions not yet supported"
+msgstr ""
+
+#: libs/ardour/automation_event.cc:782
+#: libs/ardour/panner.cc:833
+msgid "programming error:"
+msgstr ""
+
+#: libs/ardour/automation_event.cc:1305
+msgid "automation list: cannot load coordinates from XML, all points ignored"
+msgstr ""
+
+#: libs/ardour/automation_event.cc:1351
+msgid "automation list: no x-coordinate stored for control point (point ignored)"
+msgstr ""
+
+#: libs/ardour/automation_event.cc:1357
+msgid "automation list: no y-coordinate stored for control point (point ignored)"
+msgstr ""
+
+#: libs/ardour/automation_event.cc:1371
+msgid "AutomationList: passed XML node called %1, not \"AutomationList\" - ignored"
+msgstr ""
+
+#: libs/ardour/configuration.cc:97
+msgid "loading system configuration file %1"
+msgstr ""
+
+#: libs/ardour/configuration.cc:100
+msgid "Ardour: cannot read system configuration file \"%1\""
+msgstr ""
+
+#: libs/ardour/configuration.cc:107
+msgid "Ardour: system configuration file \"%1\" not loaded successfully."
+msgstr ""
+
+#: libs/ardour/configuration.cc:111
+msgid "your system Ardour configuration file is empty. This probably means that there as an error installing Ardour"
+msgstr ""
+
+#: libs/ardour/configuration.cc:131
+msgid "loading user configuration file %1"
+msgstr ""
+
+#: libs/ardour/configuration.cc:134
+msgid "Ardour: cannot read configuration file \"%1\""
+msgstr ""
+
+#: libs/ardour/configuration.cc:141
+msgid "Ardour: user configuration file \"%1\" not loaded successfully."
+msgstr ""
+
+#: libs/ardour/configuration.cc:145
+msgid "your Ardour configuration file is empty. This is not normal."
+msgstr ""
+
+#: libs/ardour/configuration.cc:164
+msgid "Config file %1 not saved"
+msgstr "Plik konfiguracji %1 nie zapisany"
+
+#: libs/ardour/configuration.cc:253
+msgid "ill-formed MIDI port specification in ardour rcfile (ignored)"
+msgstr ""
+
+#: libs/ardour/connection.cc:182
+msgid "Node for Connection has no \"name\" property"
+msgstr ""
+
+#: libs/ardour/connection.cc:190
+msgid "Node for Connection has no \"connections\" property"
+msgstr ""
+
+#: libs/ardour/connection.cc:226
+#: libs/ardour/io.cc:1939
+msgid "IO: badly formed string in XML node for inputs \"%1\""
+msgstr ""
+
+#: libs/ardour/connection.cc:231
+#: libs/ardour/io.cc:1944
+msgid "bad input string in XML node \"%1\""
+msgstr ""
+
+#: libs/ardour/control_protocol_manager.cc:117
+msgid "control protocol name \"%1\" has no descriptor"
+msgstr ""
+
+#: libs/ardour/control_protocol_manager.cc:122
+msgid "control protocol name \"%1\" could not be initialized"
+msgstr ""
+
+#: libs/ardour/control_protocol_manager.cc:189
+msgid "Instantiating mandatory control protocol %1"
+msgstr ""
+
+#: libs/ardour/control_protocol_manager.cc:201
+msgid "looking for control protocols in %1"
+msgstr ""
+
+#: libs/ardour/control_protocol_manager.cc:223
+msgid "Control protocol %1 not usable"
+msgstr ""
+
+#: libs/ardour/control_protocol_manager.cc:237
+msgid "Control surface protocol discovered: \"%1\""
+msgstr ""
+
+#: libs/ardour/control_protocol_manager.cc:255
+msgid "ControlProtocolManager: cannot load module \"%1\" (%2)"
+msgstr ""
+
+#: libs/ardour/control_protocol_manager.cc:263
+msgid "ControlProtocolManager: module \"%1\" has no descriptor function."
+msgstr ""
+
+#: libs/ardour/control_protocol_manager.cc:380
+msgid "control protocol XML node has no name property. Ignored."
+msgstr ""
+
+#: libs/ardour/control_protocol_manager.cc:387
+msgid "control protocol \"%1\" is not known. Ignored"
+msgstr ""
+
+#: libs/ardour/crossfade.cc:124
+msgid "Crossfade: no \"in\" region in state"
+msgstr ""
+
+#: libs/ardour/crossfade.cc:131
+msgid "Crossfade: no \"in\" region %1 found in playlist %2"
+msgstr ""
+
+#: libs/ardour/crossfade.cc:141
+msgid "Crossfade: no \"out\" region in state"
+msgstr ""
+
+#: libs/ardour/crossfade.cc:148
+msgid "Crossfade: no \"out\" region %1 found in playlist %2"
+msgstr ""
+
+#: libs/ardour/crossfade.cc:684
+msgid "old-style crossfade information - no position information"
+msgstr ""
+
+#: libs/ardour/curve.cc:116
+#: libs/ardour/globals.cc:394
+#: libs/ardour/insert.cc:461
+#: libs/ardour/session.cc:2655
+#: libs/ardour/session.cc:2741
+msgid "programming error: "
+msgstr ""
+
+#: libs/ardour/cycle_timer.cc:36
+msgid "CycleTimer::get_mhz(): can't open /proc/cpuinfo"
+msgstr ""
+
+#: libs/ardour/cycle_timer.cc:48
+msgid "CycleTimer::get_mhz(): cannot locate cpu MHz in /proc/cpuinfo"
+msgstr ""
+
+#: libs/ardour/cycle_timer.cc:71
+msgid "cannot locate cpu MHz in /proc/cpuinfo"
+msgstr "nie można zlokalizować taktowania CPU w /proc/cpuinfo"
+
+#: libs/ardour/diskstream.cc:253
+msgid "Location \"%1\" not valid for track loop (start >= end)"
+msgstr ""
+
+#: libs/ardour/globals.cc:112
+msgid "Starting OSC"
+msgstr ""
+
+#: libs/ardour/globals.cc:124
+msgid "no MIDI ports specified: no MMC or MTC control possible"
+msgstr ""
+
+#: libs/ardour/globals.cc:128
+msgid "Configuring MIDI ports"
+msgstr ""
+
+#: libs/ardour/globals.cc:143
+#: libs/ardour/globals.cc:147
+#: libs/ardour/globals.cc:151
+msgid "default"
+msgstr "domyślnie"
+
+#: libs/ardour/globals.cc:181
+msgid "No MMC control (MIDI port \"%1\" not available)"
+msgstr ""
+
+#: libs/ardour/globals.cc:187
+msgid "No MTC support (MIDI port \"%1\" not available)"
+msgstr ""
+
+#: libs/ardour/globals.cc:192
+msgid "No MIDI parameter support (MIDI port \"%1\" not available)"
+msgstr ""
+
+#: libs/ardour/globals.cc:273
+msgid "Could not set system open files limit to \"unlimited\""
+msgstr ""
+
+#: libs/ardour/globals.cc:275
+msgid "Could not set system open files limit to %1"
+msgstr ""
+
+#: libs/ardour/globals.cc:279
+msgid "Removed open file count limit. Excellent!"
+msgstr ""
+
+#: libs/ardour/globals.cc:281
+msgid "Ardour will be limited to %1 open files"
+msgstr ""
+
+#: libs/ardour/globals.cc:285
+msgid "Could not get system open files limit (%1)"
+msgstr ""
+
+#: libs/ardour/globals.cc:304
+msgid "Loading configuration"
+msgstr ""
+
+#: libs/ardour/import.cc:179
+msgid "Could not find a source for %1 even though we are updating this file!"
+msgstr ""
+
+#: libs/ardour/import.cc:208
+msgid "Unable to create file %1 during import"
+msgstr ""
+
+#: libs/ardour/import.cc:225
+msgid ""
+"converting %1\n"
+"(resample from %2KHz to %3KHz)\n"
+"(%4 of %5)"
+msgstr ""
+
+#: libs/ardour/import.cc:232
+msgid ""
+"converting %1\n"
+"(%2 of %3)"
+msgstr ""
+
+#: libs/ardour/import.cc:318
+msgid "Import: cannot open input sound file \"%1\""
+msgstr ""
+
+#: libs/ardour/insert.cc:680
+#: libs/ardour/insert.cc:1005
+msgid "XML node describing insert is missing the `type' field"
+msgstr ""
+
+#: libs/ardour/insert.cc:693
+msgid "unknown plugin type %1 in plugin insert state"
+msgstr ""
+
+#: libs/ardour/insert.cc:713
+msgid "Plugin has no unique ID field"
+msgstr ""
+
+#: libs/ardour/insert.cc:723
+msgid ""
+"Found a reference to a plugin (\"%1\") that is unknown.\n"
+"Perhaps it was removed or moved since it was last used."
+msgstr ""
+
+#: libs/ardour/insert.cc:754
+msgid "XML node describing a plugin insert is missing the `%1' information"
+msgstr ""
+
+#: libs/ardour/insert.cc:766
+#: libs/ardour/insert.cc:1033
+msgid "XML node describing insert is missing a Redirect node"
+msgstr ""
+
+#: libs/ardour/insert.cc:818
+msgid "PluginInsert: Auto: no ladspa port number"
+msgstr ""
+
+#: libs/ardour/insert.cc:825
+msgid "PluginInsert: Auto: port id out of range"
+msgstr ""
+
+#: libs/ardour/insert.cc:856
+msgid "XML node describing a port automation is missing the `%1' information"
+msgstr ""
+
+#: libs/ardour/insert.cc:911
+#: libs/ardour/insert.cc:919
+msgid "insert %1"
+msgstr ""
+
+#: libs/ardour/insert.cc:1010
+msgid "non-port insert XML used for port plugin insert"
+msgstr ""
+
+#: libs/ardour/io.cc:638
+msgid "IO: cannot disconnect input port %1 from %2"
+msgstr ""
+
+#: libs/ardour/io.cc:706
+msgid "IO: cannot disconnect output port %1 from %2"
+msgstr ""
+
+#: libs/ardour/io.cc:860
+#: libs/ardour/io.cc:1189
+#: libs/ardour/io.cc:1308
+msgid "IO: cannot register output port %1"
+msgstr ""
+
+#: libs/ardour/io.cc:967
+#: libs/ardour/io.cc:1066
+#: libs/ardour/io.cc:1164
+msgid "IO: cannot register input port %1"
+msgstr ""
+
+#: libs/ardour/io.cc:1558
+msgid "incorrect XML node \"%1\" passed to IO object"
+msgstr ""
+
+#: libs/ardour/io.cc:1686
+msgid "%1: cannot open automation event file \"%2\""
+msgstr ""
+
+#: libs/ardour/io.cc:1701
+msgid "badly formed version number in automation event file \"%1\""
+msgstr ""
+
+#: libs/ardour/io.cc:1705
+msgid "no version information in automation event file \"%1\""
+msgstr ""
+
+#: libs/ardour/io.cc:1713
+msgid "badly formatted automation event record at line %1 of %2 (ignored)"
+msgstr ""
+
+#: libs/ardour/io.cc:1733
+msgid "dubious automation event found (and ignored)"
+msgstr ""
+
+#: libs/ardour/io.cc:1746
+msgid "IO::connecting_became_legal() called without a pending state node"
+msgstr ""
+
+#: libs/ardour/io.cc:1768
+msgid "IO::ports_became_legal() called without a pending state node"
+msgstr ""
+
+#: libs/ardour/io.cc:1804
+#: libs/ardour/io.cc:1870
+msgid "Connection %1 was not available - \"in 1\" used instead"
+msgstr ""
+
+#: libs/ardour/io.cc:1820
+#: libs/ardour/io.cc:1888
+msgid "Unknown connection \"%1\" listed for output of %2"
+msgstr ""
+
+#: libs/ardour/io.cc:1822
+#: libs/ardour/io.cc:1890
+msgid "out 1"
+msgstr ""
+
+#: libs/ardour/io.cc:1823
+#: libs/ardour/io.cc:1891
+msgid "No output connections available as a replacement"
+msgstr ""
+
+#: libs/ardour/io.cc:1827
+#: libs/ardour/io.cc:1895
+msgid "Connection %1 was not available - \"out 1\" used instead"
+msgstr ""
+
+#: libs/ardour/io.cc:1841
+msgid "%1: cannot create I/O ports"
+msgstr ""
+
+#: libs/ardour/io.cc:1904
+msgid "improper output channel list in XML node (%1)"
+msgstr ""
+
+#: libs/ardour/io.cc:1989
+msgid "IO: badly formed string in XML node for outputs \"%1\""
+msgstr ""
+
+#: libs/ardour/io.cc:1994
+msgid "IO: bad output string in XML node \"%1\""
+msgstr ""
+
+#: libs/ardour/io.cc:2078
+msgid "you cannot use colons to name objects with I/O connections"
+msgstr ""
+
+#: libs/ardour/io.cc:2642
+msgid "in"
+msgstr "wejście"
+
+#: libs/ardour/io.cc:2645
+msgid "out"
+msgstr "wyjście"
+
+#: libs/ardour/io.cc:2697
+#: libs/ardour/io.cc:2730
+#, c-format
+msgid "%s %u"
+msgstr "%s %u"
+
+#: libs/ardour/ladspa_plugin.cc:86
+msgid "LADSPA: module has no descriptor function."
+msgstr ""
+
+#: libs/ardour/ladspa_plugin.cc:91
+msgid "LADSPA: plugin has gone away since discovery!"
+msgstr ""
+
+#: libs/ardour/ladspa_plugin.cc:98
+msgid "LADSPA: \"%1\" cannot be used, since it cannot do inplace processing"
+msgstr ""
+
+#: libs/ardour/ladspa_plugin.cc:306
+msgid "illegal parameter number used with plugin \"%1\". This mayindicate a change in the plugin design, and presets may beinvalid"
+msgstr ""
+
+#: libs/ardour/ladspa_plugin.cc:389
+msgid "Bad node sent to LadspaPlugin::set_state"
+msgstr ""
+
+#: libs/ardour/ladspa_plugin.cc:402
+msgid "LADSPA: no ladspa port number"
+msgstr ""
+
+#: libs/ardour/ladspa_plugin.cc:409
+msgid "LADSPA: no ladspa port data"
+msgstr ""
+
+#: libs/ardour/ladspa_plugin.cc:648
+msgid "LADSPA: cannot load module from \"%1\""
+msgstr ""
+
+#: libs/ardour/location.cc:213
+msgid "You cannot put a CD marker at this position"
+msgstr ""
+
+#: libs/ardour/location.cc:342
+msgid "incorrect XML node passed to Location::set_state"
+msgstr ""
+
+#: libs/ardour/location.cc:347
+msgid "XML node for Location has no ID information"
+msgstr ""
+
+#: libs/ardour/location.cc:353
+msgid "XML node for Location has no name information"
+msgstr ""
+
+#: libs/ardour/location.cc:360
+msgid "XML node for Location has no start information"
+msgstr ""
+
+#: libs/ardour/location.cc:371
+msgid "XML node for Location has no end information"
+msgstr ""
+
+#: libs/ardour/location.cc:378
+msgid "XML node for Location has no flags information"
+msgstr ""
+
+#: libs/ardour/location.cc:495
+msgid "Locations: attempt to use unknown location as selected location"
+msgstr ""
+
+#: libs/ardour/location.cc:663
+msgid "incorrect XML mode passed to Locations::set_state"
+msgstr ""
+
+#: libs/ardour/location.cc:684
+msgid "could not load location from session file - ignored"
+msgstr ""
+
+#: libs/ardour/mtc_slave.cc:123
+msgid "Unknown rate/drop value in incoming MTC stream, session values used instead"
+msgstr ""
+
+#: libs/ardour/mtc_slave.cc:229
+msgid "MTC Slave: atomic read of current time failed, sleeping!"
+msgstr ""
+
+#: libs/ardour/named_selection.cc:88
+msgid "Chunk %1 uses an unknown playlist \"%2\""
+msgstr ""
+
+#: libs/ardour/named_selection.cc:91
+msgid "Chunk %1 contains misformed playlist information"
+msgstr ""
+
+#: libs/ardour/panner.cc:253
+msgid "badly formatted pan automation event record at line %1 of %2 (ignored) [%3]"
+msgstr ""
+
+#: libs/ardour/panner.cc:749
+msgid "badly-formed positional data for Multi2dPanner - ignored"
+msgstr ""
+
+#: libs/ardour/panner.cc:1138
+msgid "Unknown panner plugin \"%1\" found in pan state - ignored"
+msgstr ""
+
+#: libs/ardour/panner.cc:1144
+msgid "panner plugin node has no type information!"
+msgstr ""
+
+#: libs/ardour/panner.cc:1354
+msgid "cannot open pan automation file %1 (%2)"
+msgstr ""
+
+#: libs/ardour/panner.cc:1367
+msgid "badly formed version number in pan automation event file \"%1\""
+msgstr ""
+
+#: libs/ardour/panner.cc:1371
+msgid "no version information in pan automation event file \"%1\" (first line = %2)"
+msgstr ""
+
+#: libs/ardour/panner.cc:1386
+msgid "too many panner states found in pan automation file %1"
+msgstr ""
+
+#: libs/ardour/playlist.cc:250
+msgid "playlist const copy constructor called"
+msgstr ""
+
+#: libs/ardour/playlist.cc:256
+msgid "playlist non-const copy constructor called"
+msgstr ""
+
+#: libs/ardour/playlist.cc:1217
+msgid "%1: bounds changed received for region (%2)not in playlist"
+msgstr ""
+
+#: libs/ardour/playlist.cc:1750
+msgid "region state node has no ID, ignored"
+msgstr ""
+
+#: libs/ardour/playlist.cc:1761
+msgid "Playlist: cannot reset region state from XML"
+msgstr ""
+
+#: libs/ardour/playlist.cc:1766
+msgid "Playlist: cannot create region from XML"
+msgstr ""
+
+#: libs/ardour/plugin.cc:281
+msgid "Could not locate HOME. Preset not saved."
+msgstr ""
+
+#: libs/ardour/plugin.cc:291
+#: libs/ardour/plugin.cc:297
+msgid "Could not create %1. Preset not saved. (%2)"
+msgstr ""
+
+#: libs/ardour/plugin.cc:302
+msgid "Error saving presets file %1."
+msgstr ""
+
+#: libs/ardour/plugin_manager.cc:223
+msgid "Could not parse rdf file: %1"
+msgstr ""
+
+#: libs/ardour/plugin_manager.cc:263
+msgid "LADSPA: cannot load module \"%1\" (%2)"
+msgstr ""
+
+#: libs/ardour/plugin_manager.cc:270
+msgid "LADSPA: module \"%1\" has no descriptor function."
+msgstr ""
+
+#: libs/ardour/plugin_manager.cc:454
+msgid "VST plugin %1 does not support processReplacing, and so cannot be used in ardour at this time"
+msgstr ""
+
+#: libs/ardour/recent_sessions.cc:44
+msgid "cannot open recent session file %1 (%2)"
+msgstr ""
+
+#: libs/ardour/redirect.cc:78
+msgid "programming error: unknown Redirect type in Redirect::Clone!\n"
+msgstr ""
+
+#: libs/ardour/redirect.cc:128
+msgid "%2: badly formatted node name in XML automation state, ignored"
+msgstr ""
+
+#: libs/ardour/redirect.cc:141
+msgid "%1: cannot load automation data from XML"
+msgstr ""
+
+#: libs/ardour/redirect.cc:219
+msgid "incorrect XML node \"%1\" passed to Redirect object"
+msgstr ""
+
+#: libs/ardour/redirect.cc:267
+msgid "XML node describing an IO is missing an IO node"
+msgstr ""
+
+#: libs/ardour/redirect.cc:272
+msgid "XML node describing a redirect is missing the `active' field"
+msgstr ""
+
+#: libs/ardour/redirect.cc:285
+msgid "XML node describing a redirect is missing the `placement' field"
+msgstr ""
+
+#: libs/ardour/redirect.cc:315
+msgid "%1: Automation node has no path property"
+msgstr ""
+
+#: libs/ardour/redirect.cc:351
+msgid "%1: cannot open %2 to load automation data (%3)"
+msgstr ""
+
+#: libs/ardour/redirect.cc:376
+msgid "%1: cannot load automation data from %2"
+msgstr ""
+
+#: libs/ardour/region.cc:923
+msgid "XMLNode describing a Region is incomplete (no name)"
+msgstr ""
+
+#: libs/ardour/region.cc:1068
+msgid "Session: XMLNode describing a Region is incomplete (no id)"
+msgstr ""
+
+#: libs/ardour/region_factory.cc:52
+#: libs/ardour/region_factory.cc:69
+msgid "programming error: RegionFactory::create() called with unknown Region type"
+msgstr ""
+
+#: libs/ardour/resampled_source.cc:61
+msgid "Import: src_new() failed : %1"
+msgstr ""
+
+#: libs/ardour/resampled_source.cc:113
+msgid "Import: %1"
+msgstr ""
+
+#: libs/ardour/route.cc:83
+#: libs/ardour/session.cc:1560
+#: libs/ardour/session.cc:1566
+#: libs/ardour/session.cc:1871
+#: libs/ardour/session.cc:3369
+msgid "signal"
+msgstr ""
+
+#: libs/ardour/route.cc:1573
+msgid "Send construction failed"
+msgstr ""
+
+#: libs/ardour/route.cc:1601
+msgid "unknown Insert type \"%1\"; ignored"
+msgstr ""
+
+#: libs/ardour/route.cc:1609
+msgid "Insert XML node has no type property"
+msgstr ""
+
+#: libs/ardour/route.cc:1614
+msgid "insert could not be created. Ignored."
+msgstr ""
+
+#: libs/ardour/route.cc:1636
+msgid "Bad node sent to Route::set_state() [%1]"
+msgstr ""
+
+#: libs/ardour/route.cc:1698
+msgid "Route %1: unknown edit group \"%2 in saved state (ignored)"
+msgstr ""
+
+#: libs/ardour/route.cc:1714
+#: libs/ardour/route.cc:1718
+msgid "badly formed order key string in state file! [%1] ... ignored."
+msgstr ""
+
+#: libs/ardour/route.cc:1784
+#: libs/ardour/route.cc:2001
+msgid "[control]"
+msgstr ""
+
+#: libs/ardour/route.cc:1823
+msgid "Route %1: unknown mix group \"%2 in saved state (ignored)"
+msgstr ""
+
+#: libs/ardour/route.cc:2019
+msgid "could not connect %1 to %2"
+msgstr ""
+
+#: libs/ardour/send.cc:34
+#: libs/ardour/send.cc:57
+msgid "send %1"
+msgstr ""
+
+#: libs/ardour/send.cc:117
+msgid "XML node describing a send is missing a Redirect node"
+msgstr ""
+
+#: libs/ardour/session_butler.cc:80
+#: libs/ardour/session_midi.cc:1085
+msgid "Cannot create transport request signal pipe (%1)"
+msgstr ""
+
+#: libs/ardour/session_butler.cc:85
+#: libs/ardour/session_butler.cc:90
+msgid "UI: cannot set O_NONBLOCK on butler request pipe (%1)"
+msgstr ""
+
+#: libs/ardour/session_butler.cc:95
+msgid "Session: could not create butler thread"
+msgstr ""
+
+#: libs/ardour/session_butler.cc:184
+msgid "poll on butler request pipe failed (%1)"
+msgstr ""
+
+#: libs/ardour/session_butler.cc:191
+msgid "Error on butler thread request pipe: fd=%1 err=%2"
+msgstr ""
+
+#: libs/ardour/session_butler.cc:232
+msgid "Error reading from butler request pipe"
+msgstr ""
+
+#: libs/ardour/session_butler.cc:277
+msgid "Butler read ahead failure on dstream %1"
+msgstr ""
+
+#: libs/ardour/session_butler.cc:323
+msgid "Butler write-behind failure on dstream %1"
+msgstr ""
+
+#: libs/ardour/session.cc:130
+msgid "Could not resolve path: %1 (%2)"
+msgstr ""
+
+#: libs/ardour/session.cc:142
+msgid "cannot check session path %1 (%2)"
+msgstr ""
+
+#: libs/ardour/session.cc:172
+msgid "cannot check statefile %1 (%2)"
+msgstr ""
+
+#: libs/ardour/session.cc:208
+msgid "%1 is not an Ardour snapshot file"
+msgstr ""
+
+#: libs/ardour/session.cc:225
+msgid "cannot determine current working directory (%1)"
+msgstr ""
+
+#: libs/ardour/session.cc:242
+msgid "unknown file type for session %1"
+msgstr ""
+
+#: libs/ardour/session.cc:387
+msgid "monitor"
+msgstr "monitor"
+
+#: libs/ardour/session.cc:394
+#: libs/ardour/session.cc:1900
+msgid "master"
+msgstr "główna"
+
+#: libs/ardour/session.cc:674
+msgid "Set block size and sample rate"
+msgstr ""
+
+#: libs/ardour/session.cc:679
+msgid "Using configuration"
+msgstr ""
+
+#: libs/ardour/session.cc:712
+msgid "could not setup Click I/O"
+msgstr "nie można było ustawić I/O metronomu"
+
+#: libs/ardour/session.cc:733
+msgid "cannot setup Click I/O"
+msgstr "nie można ustawić I/O metronomu"
+
+#: libs/ardour/session.cc:736
+msgid "Compute I/O Latencies"
+msgstr ""
+
+#: libs/ardour/session.cc:748
+msgid "Set up standard connections"
+msgstr ""
+
+#: libs/ardour/session.cc:754
+#, c-format
+msgid "out %<PRIu32>"
+msgstr "wyjście %<PRIu32>"
+
+#: libs/ardour/session.cc:766
+#, c-format
+msgid "in %<PRIu32>"
+msgstr "wejście %<PRIu32>"
+
+#: libs/ardour/session.cc:780
+#, c-format
+msgid "out %<PRIu32>+%<PRIu32>"
+msgstr "wyjście %<PRIu32>+%<PRIu32>"
+
+#: libs/ardour/session.cc:794
+#, c-format
+msgid "in %<PRIu32>+%<PRIu32>"
+msgstr "wejście %<PRIu32>+%<PRIu32>"
+
+#: libs/ardour/session.cc:827
+msgid "cannot setup master inputs"
+msgstr "nie można ustawić głównych wejść"
+
+#: libs/ardour/session.cc:835
+msgid "cannot setup master outputs"
+msgstr "nie można ustawić głównych wyjść"
+
+#: libs/ardour/session.cc:846
+msgid "Master Out"
+msgstr "Główne wyjście"
+
+#: libs/ardour/session.cc:855
+msgid "Setup signal flow and plugins"
+msgstr ""
+
+#: libs/ardour/session.cc:861
+msgid "Catch up with send/insert state"
+msgstr ""
+
+#: libs/ardour/session.cc:892
+msgid "Connect to engine"
+msgstr ""
+
+#: libs/ardour/session.cc:899
+msgid "OSC startup"
+msgstr "poczÄ…tek OSC"
+
+#: libs/ardour/session.cc:928
+msgid "cannot create Auditioner: no auditioning of regions possible"
+msgstr ""
+
+#: libs/ardour/session.cc:942
+msgid "cannot setup control inputs"
+msgstr ""
+
+#: libs/ardour/session.cc:950
+msgid "cannot set up master outputs"
+msgstr ""
+
+#: libs/ardour/session.cc:1153
+msgid "Session: you can't use that location for auto punch (start <= end)"
+msgstr ""
+
+#: libs/ardour/session.cc:1194
+msgid "Session: you can't use a mark for auto loop"
+msgstr ""
+
+#: libs/ardour/session.cc:1578
+msgid "feedback loop setup between %1 and %2"
+msgstr ""
+
+#: libs/ardour/session.cc:1765
+#: libs/ardour/session.cc:1931
+msgid "cannot configure %1 in/%2 out configuration for new audio track"
+msgstr ""
+
+#: libs/ardour/session.cc:1817
+msgid "Session: could not create new audio track."
+msgstr ""
+
+#: libs/ardour/session.cc:1835
+#: libs/ardour/session.cc:1980
+msgid "No more JACK ports are available. You will need to stop Ardour and restart JACK with ports if you need this many tracks."
+msgstr ""
+
+#: libs/ardour/session.cc:1874
+msgid "editor"
+msgstr ""
+
+#: libs/ardour/session.cc:1975
+msgid "Session: could not create new audio route."
+msgstr ""
+
+#: libs/ardour/session.cc:2526
+msgid "cannot create new name for region \"%1\""
+msgstr ""
+
+#: libs/ardour/session.cc:2590
+msgid "too many regions with names like %1"
+msgstr ""
+
+#: libs/ardour/session.cc:2621
+#: libs/ardour/session.cc:2682
+msgid "Session::add_region() ignored a null region. Warning: you might have lost a region."
+msgstr ""
+
+#: libs/ardour/session.cc:3159
+msgid "There are already %1 recordings for %2, which I consider too many."
+msgstr ""
+
+#: libs/ardour/session.cc:3390
+msgid "Cannot compile tape track regexp for use (%1)"
+msgstr ""
+
+#: libs/ardour/session.cc:3543
+msgid "programming error: unknown type of Insert created!"
+msgstr ""
+
+#: libs/ardour/session.cc:3549
+msgid "programming error: unknown type of Redirect created!"
+msgstr ""
+
+#: libs/ardour/session.cc:3588
+msgid "programming error: unknown type of Redirect deleted!"
+msgstr ""
+
+#: libs/ardour/session.cc:3708
+#: libs/ardour/session.cc:3722
+#: libs/ardour/session.cc:4122
+msgid "Memory allocation error: posix_memalign (%1 * %2) failed (%3)"
+msgstr ""
+
+#: libs/ardour/session.cc:3792
+msgid "send ID %1 appears to be in use already"
+msgstr ""
+
+#: libs/ardour/session.cc:3804
+msgid "insert ID %1 appears to be in use already"
+msgstr ""
+
+#: libs/ardour/session.cc:3986
+msgid "too many bounced versions of playlist \"%1\""
+msgstr ""
+
+#: libs/ardour/session.cc:3995
+msgid "cannot create new audio file \"%1\" for %2"
+msgstr ""
+
+#: libs/ardour/session.cc:4107
+msgid "Programming error: get_silent_buffers() called for %1 buffers but only %2 exist"
+msgstr ""
+
+#: libs/ardour/session_click.cc:160
+msgid "cannot open click soundfile %1 (%2)"
+msgstr "nie można otworzyć pliku dźwiękowego metronomu %1 (%2)"
+
+#: libs/ardour/session_click.cc:169
+msgid "cannot read data from click soundfile"
+msgstr "nie można odczytać danych z pliku dźwiękowego metronomu"
+
+#: libs/ardour/session_click.cc:196
+msgid "cannot open click emphasis soundfile %1 (%2)"
+msgstr "nie można otworzyć pliku dźwiękowego akcentowanego uderzenia metronomu %1 (%2)"
+
+#: libs/ardour/session_click.cc:204
+msgid "cannot read data from click emphasis soundfile"
+msgstr "nie można odczytać danych z pliku dźwiękowego akcentowanego uderzenia metronomu"
+
+#: libs/ardour/session_command.cc:75
+msgid "Tried to reconstitute a MementoCommand with no contents, failing. id="
+msgstr ""
+
+#: libs/ardour/session_command.cc:111
+msgid "could not reconstitute MementoCommand from XMLNode. object type = %1 id = %2"
+msgstr ""
+
+#: libs/ardour/session_command.cc:123
+msgid "GlobalRouteStateCommand has no \"type\" node, ignoring"
+msgstr ""
+
+#: libs/ardour/session_command.cc:138
+msgid "unknown type of GlobalRouteStateCommand (%1), ignored"
+msgstr ""
+
+#: libs/ardour/session_command.cc:186
+msgid "global route state command has no \"%1\" node, ignoring entire command"
+msgstr ""
+
+#: libs/ardour/session_command.cc:202
+#: libs/ardour/session_command.cc:515
+msgid "cannot find track/bus \"%1\" while rebuilding a global route state command, ignored"
+msgstr ""
+
+#: libs/ardour/session_command.cc:499
+msgid "global route meter state command has no \"%1\" node, ignoring entire command"
+msgstr ""
+
+#: libs/ardour/session_events.cc:161
+msgid "Session: cannot have two events of type %1 at the same frame (%2)."
+msgstr ""
+
+#: libs/ardour/session_events.cc:437
+msgid "Programming error: illegal event type in process_event (%1)"
+msgstr ""
+
+#: libs/ardour/session_export.cc:62
+msgid "Export: no output file specified"
+msgstr ""
+
+#: libs/ardour/session_export.cc:163
+#: libs/ardour/session_export.cc:168
+msgid "illegal frame range in export specification"
+msgstr ""
+
+#: libs/ardour/session_export.cc:173
+msgid "Bad data width size. Report me!"
+msgstr ""
+
+#: libs/ardour/session_export.cc:203
+msgid "Export: cannot open output file \"%1\" (%2)"
+msgstr ""
+
+#: libs/ardour/session_export.cc:213
+msgid "cannot initialize sample rate conversion: %1"
+msgstr ""
+
+#: libs/ardour/session_export.cc:315
+msgid "an error occured during sample rate conversion: %1"
+msgstr ""
+
+#: libs/ardour/session_export.cc:326
+msgid "warning, leftover frames overflowed, glitches might occur in output"
+msgstr ""
+
+#: libs/ardour/session_export.cc:417
+msgid "Export: could not write data to output file (%1)"
+msgstr ""
+
+#: libs/ardour/session_export.cc:484
+msgid "%1: cannot seek to %2 for export"
+msgstr ""
+
+#: libs/ardour/session_midi.cc:94
+msgid "Ardour is slaved to MTC - port cannot be reset"
+msgstr ""
+
+#: libs/ardour/session_midi.cc:109
+msgid "unknown port %1 requested for MTC"
+msgstr ""
+
+#: libs/ardour/session_midi.cc:446
+msgid "Error reading from MIDI port %1"
+msgstr ""
+
+#: libs/ardour/session_midi.cc:816
+msgid "Session: could not send full MIDI time code"
+msgstr ""
+
+#: libs/ardour/session_midi.cc:875
+msgid "Session: cannot send quarter-frame MTC message (%1)"
+msgstr ""
+
+#: libs/ardour/session_midi.cc:983
+msgid "MMC: cannot send command %1%2%3"
+msgstr ""
+
+#: libs/ardour/session_midi.cc:1090
+msgid "UI: cannot set O_NONBLOCK on signal read pipe (%1)"
+msgstr ""
+
+#: libs/ardour/session_midi.cc:1095
+msgid "UI: cannot set O_NONBLOCK on signal write pipe (%1)"
+msgstr ""
+
+#: libs/ardour/session_midi.cc:1100
+msgid "Session: could not create transport thread"
+msgstr ""
+
+#: libs/ardour/session_midi.cc:1131
+msgid "cannot send signal to midi thread! (%1)"
+msgstr ""
+
+#: libs/ardour/session_midi.cc:1226
+msgid "MIDI thread poll failed (%1)"
+msgstr ""
+
+#: libs/ardour/session_midi.cc:1238
+msgid "Error on transport thread request pipe"
+msgstr ""
+
+#: libs/ardour/session_midi.cc:1265
+msgid "Error reading from transport request pipe"
+msgstr ""
+
+#: libs/ardour/session_process.cc:105
+msgid "Session: error in no roll for %1"
+msgstr ""
+
+#: libs/ardour/session_state.cc:109
+msgid "Could not use path %1 (%s)"
+msgstr ""
+
+#: libs/ardour/session_state.cc:145
+#: libs/ardour/session_state.cc:1050
+msgid "end"
+msgstr "koniec"
+
+#: libs/ardour/session_state.cc:146
+#: libs/ardour/session_state.cc:1049
+msgid "start"
+msgstr "poczÄ…tek"
+
+#: libs/ardour/session_state.cc:338
+msgid "Reset Remote Controls"
+msgstr ""
+
+#: libs/ardour/session_state.cc:345
+msgid "Reset Control Protocols"
+msgstr ""
+
+#: libs/ardour/session_state.cc:365
+msgid "Session loading complete"
+msgstr ""
+
+#: libs/ardour/session_state.cc:484
+#: libs/ardour/session_state.cc:2857
+msgid "Session: cannot create session peakfile folder \"%1\" (%2)"
+msgstr ""
+
+#: libs/ardour/session_state.cc:495
+msgid "Session: cannot create session sounds folder \"%1\" (%2)"
+msgstr "Nie można utworzyć folderu dźwięków sesji \"%1\" (%2)"
+
+#: libs/ardour/session_state.cc:503
+msgid "Session: cannot create session dead sounds folder \"%1\" (%2)"
+msgstr ""
+
+#: libs/ardour/session_state.cc:510
+msgid "Session: cannot create session export folder \"%1\" (%2)"
+msgstr ""
+
+#: libs/ardour/session_state.cc:517
+msgid "Session: cannot create session analysis folder \"%1\" (%2)"
+msgstr ""
+
+#: libs/ardour/session_state.cc:529
+msgid "Session: cannot create session folder \"%1\" (%2)"
+msgstr ""
+
+#: libs/ardour/session_state.cc:561
+msgid "Could not open %1 for writing mix template"
+msgstr ""
+
+#: libs/ardour/session_state.cc:567
+msgid "Could not open mix template %1 for reading"
+msgstr ""
+
+#: libs/ardour/session_state.cc:606
+msgid "Session: could not load diskstream via XML state"
+msgstr ""
+
+#: libs/ardour/session_state.cc:649
+msgid "could not rename snapshot %1 to %2"
+msgstr ""
+
+#: libs/ardour/session_state.cc:688
+msgid "Ardour's audio engine is not connected and state saving would lose all I/O connections. Session not saved"
+msgstr ""
+
+#: libs/ardour/session_state.cc:732
+msgid "state could not be saved to %1"
+msgstr ""
+
+#: libs/ardour/session_state.cc:739
+msgid "could not rename temporary session file %1 to %2"
+msgstr ""
+
+#: libs/ardour/session_state.cc:809
+msgid "%1: session state information file \"%2\" doesn't exist!"
+msgstr ""
+
+#: libs/ardour/session_state.cc:818
+msgid "Could not understand ardour file %1"
+msgstr ""
+
+#: libs/ardour/session_state.cc:827
+msgid "Session file %1 is not an Ardour session"
+msgstr ""
+
+#: libs/ardour/session_state.cc:858
+msgid ""
+"Copying old session file %1 to %2\n"
+"Use %2 with Ardour versions before 2.0 from now on"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1168
+msgid "programming error: Session: incorrect XML node sent to set_state()"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1237
+msgid "Session: XML state has no options section"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1241
+msgid "Session: XML state has no locations section"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1274
+msgid "Session: XML state has no sources section"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1281
+msgid "Session: XML state has no Regions section"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1288
+msgid "Session: XML state has no playlists section"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1307
+msgid "Session: XML state has no diskstreams section"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1314
+msgid "Session: XML state has no connections section"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1321
+msgid "Session: XML state has no edit groups section"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1328
+msgid "Session: XML state has no mix groups section"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1335
+msgid "Session: XML state has no Tempo Map section"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1342
+msgid "Session: XML state has no routes section"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1349
+msgid "Session: XML state has no click section"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1384
+msgid "Session: cannot create Route from XML description."
+msgstr ""
+
+#: libs/ardour/session_state.cc:1388
+msgid "Loaded track/bus %1"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1427
+msgid "Session: cannot create Region from XML description."
+msgstr ""
+
+#: libs/ardour/session_state.cc:1431
+msgid "Can not load state for region '%1'"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1468
+msgid "Session: XMLNode describing a AudioRegion is incomplete (no source)"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1476
+#: libs/ardour/session_state.cc:1497
+#: libs/ardour/session_state.cc:1517
+msgid "Session: XMLNode describing a AudioRegion references an unknown source id =%1"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1482
+#: libs/ardour/session_state.cc:1503
+#: libs/ardour/session_state.cc:1523
+msgid "Session: XMLNode describing a AudioRegion references a non-audio source id =%1"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1546
+msgid "Session: XMLNode describing an AudioRegion is missing some master sources; ignored"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1597
+msgid "cannot create new file from region name \"%1\" with ident = \"%2\": too many existing files with similar names"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1620
+msgid "Session: cannot create Source from XML description."
+msgstr ""
+
+#: libs/ardour/session_state.cc:1625
+msgid "A sound file is missing. It will be replaced by silence."
+msgstr ""
+
+#: libs/ardour/session_state.cc:1646
+msgid "Found a sound file that cannot be used by Ardour. Talk to the progammers."
+msgstr ""
+
+#: libs/ardour/session_state.cc:1668
+msgid "Could not create mix templates directory \"%1\" (%2)"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1682
+msgid "Template \"%1\" already exists - new version not created"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1689
+msgid "mix template not saved"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1748
+msgid "cannot create session directory \"%1\"; ignored"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1759
+msgid "cannot create sounds directory \"%1\"; ignored"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1768
+msgid "cannot create dead sounds directory \"%1\"; ignored"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1777
+msgid "cannot create peak file directory \"%1\"; ignored"
+msgstr ""
+
+#: libs/ardour/session_state.cc:1909
+#: libs/ardour/session_state.cc:1930
+msgid "Session: cannot create Playlist from XML description."
+msgstr ""
+
+#: libs/ardour/session_state.cc:1969
+msgid "Session: cannot create Named Selection from XML description."
+msgstr ""
+
+#: libs/ardour/session_state.cc:2171
+msgid "Unknown node \"%1\" found in Connections list from state file"
+msgstr ""
+
+#: libs/ardour/session_state.cc:2982
+msgid "cannot remove dead sound file %1 (%2)"
+msgstr ""
+
+#: libs/ardour/session_state.cc:3098
+msgid "could not backup old history file, current history not saved."
+msgstr ""
+
+#: libs/ardour/session_state.cc:3110
+msgid "history could not be saved to %1"
+msgstr ""
+
+#: libs/ardour/session_state.cc:3117
+msgid "could not remove corrupt history file %1"
+msgstr ""
+
+#: libs/ardour/session_state.cc:3121
+msgid "could not restore history file from backup %1"
+msgstr ""
+
+#: libs/ardour/session_state.cc:3143
+msgid "Loading history from '%1'."
+msgstr ""
+
+#: libs/ardour/session_state.cc:3150
+msgid "Could not understand session history file \"%1\""
+msgstr ""
+
+#: libs/ardour/session_state.cc:3193
+msgid "Couldn't figure out how to make a Command out of a %1 XMLNode."
+msgstr ""
+
+#: libs/ardour/session_time.cc:483
+msgid "Unknown JACK transport state %1 in sync callback"
+msgstr ""
+
+#: libs/ardour/session_transport.cc:119
+msgid "Cannot loop - no loop range defined"
+msgstr ""
+
+#: libs/ardour/session_transport.cc:537
+msgid ""
+"Seamless looping cannot be supported while Ardour is using JACK transport.\n"
+"Recommend changing the configured options"
+msgstr ""
+
+#: libs/ardour/session_transport.cc:822
+msgid "Global varispeed cannot be supported while Ardour is connected to JACK transport control"
+msgstr ""
+
+#: libs/ardour/session_transport.cc:1015
+msgid "please stop the transport before adjusting slave settings"
+msgstr ""
+
+#: libs/ardour/session_transport.cc:1048
+msgid "No MTC port defined: MTC slaving is impossible."
+msgstr ""
+
+#: libs/ardour/sndfile_helpers.cc:34
+msgid "WAV"
+msgstr "WAV"
+
+#: libs/ardour/sndfile_helpers.cc:35
+msgid "AIFF"
+msgstr "AIFF"
+
+#: libs/ardour/sndfile_helpers.cc:36
+msgid "CAF"
+msgstr "CAF"
+
+#: libs/ardour/sndfile_helpers.cc:37
+msgid "W64 (64 bit WAV)"
+msgstr "W64 (64 bit WAV)"
+
+#: libs/ardour/sndfile_helpers.cc:38
+msgid "raw (no header)"
+msgstr "raw (brak nagłówka)"
+
+#: libs/ardour/sndfile_helpers.cc:43
+msgid ".wav"
+msgstr ".wav"
+
+#: libs/ardour/sndfile_helpers.cc:44
+msgid ".aiff"
+msgstr ".aiff"
+
+#: libs/ardour/sndfile_helpers.cc:45
+msgid ".caf"
+msgstr ".caf"
+
+#: libs/ardour/sndfile_helpers.cc:46
+msgid ".w64"
+msgstr ".w64"
+
+#: libs/ardour/sndfile_helpers.cc:47
+msgid ".raw"
+msgstr ".raw"
+
+#: libs/ardour/sndfile_helpers.cc:60
+msgid "16 bit"
+msgstr "16 bit"
+
+#: libs/ardour/sndfile_helpers.cc:61
+msgid "24 bit"
+msgstr "24 bit"
+
+#: libs/ardour/sndfile_helpers.cc:62
+msgid "32 bit"
+msgstr "32 bit"
+
+#: libs/ardour/sndfile_helpers.cc:63
+msgid "8 bit"
+msgstr "8 bit"
+
+#: libs/ardour/sndfile_helpers.cc:64
+msgid "float"
+msgstr "float"
+
+#: libs/ardour/sndfile_helpers.cc:77
+msgid "Little-endian (Intel)"
+msgstr "Little-endian (Intel)"
+
+#: libs/ardour/sndfile_helpers.cc:78
+msgid "Big-endian (Mac)"
+msgstr "Big-endian (Mac)"
+
+#: libs/ardour/sndfilesource.cc:149
+msgid "FileSource: cannot get host information for BWF header (%1)"
+msgstr ""
+
+#: libs/ardour/sndfilesource.cc:173
+msgid "cannot set broadcast info for audio file %1 (%2); dropping broadcast info for this file"
+msgstr ""
+
+#: libs/ardour/sndfilesource.cc:226
+msgid "SndFileSource: cannot open file \"%1\" for %2 (%3)"
+msgstr ""
+
+#: libs/ardour/sndfilesource.cc:234
+msgid "SndFileSource: file only contains %1 channels; %2 is invalid as a channel number"
+msgstr ""
+
+#: libs/ardour/sndfilesource.cc:332
+msgid "SndFileSource: could not seek to frame %1 within %2 (%3)"
+msgstr ""
+
+#: libs/ardour/sndfilesource.cc:377
+#: libs/ardour/sndfilesource.cc:412
+msgid "attempt to write a non-writable audio file source (%1)"
+msgstr ""
+
+#: libs/ardour/sndfilesource.cc:382
+#: libs/ardour/utils.cc:523
+#: libs/ardour/utils.cc:547
+#: libs/ardour/utils.cc:561
+#: libs/ardour/utils.cc:580
+msgid "programming error: %1 %2"
+msgstr ""
+
+#: libs/ardour/sndfilesource.cc:516
+msgid "attempt to flush a non-writable audio file source (%1)"
+msgstr ""
+
+#: libs/ardour/sndfilesource.cc:526
+msgid "attempt to store broadcast info in a non-writable audio file source (%1)"
+msgstr ""
+
+#: libs/ardour/sndfilesource.cc:562
+#: libs/ardour/sndfilesource.cc:583
+msgid "cannot set broadcast info for audio file %1; Dropping broadcast info for this file"
+msgstr ""
+
+#: libs/ardour/sndfilesource.cc:596
+msgid "%1: cannot seek to %2 (libsndfile error: %3"
+msgstr ""
+
+#: libs/ardour/sndfilesource.cc:705
+msgid "SndFileSource: \"%1\" bad read retval: %2 of %5 (%3: %4)"
+msgstr ""
+
+#: libs/ardour/sndfilesource.cc:718
+#: libs/ardour/sndfilesource.cc:768
+#: libs/ardour/sndfilesource.cc:775
+msgid "SndFileSource: \"%1\" bad write (%2)"
+msgstr ""
+
+#: libs/ardour/sndfilesource.cc:798
+msgid "Filesource: start time is already set for existing file (%1): Cannot change start time."
+msgstr ""
+
+#: libs/ardour/tempo.cc:71
+msgid "TempoSection XML node has no \"start\" property"
+msgstr ""
+
+#: libs/ardour/tempo.cc:79
+msgid "TempoSection XML node has an illegal \"start\" value"
+msgstr ""
+
+#: libs/ardour/tempo.cc:86
+msgid "TempoSection XML node has no \"beats-per-minute\" property"
+msgstr ""
+
+#: libs/ardour/tempo.cc:91
+msgid "TempoSection XML node has an illegal \"beats_per_minute\" value"
+msgstr ""
+
+#: libs/ardour/tempo.cc:100
+msgid "TempoSection XML node has an illegal \"note-type\" value"
+msgstr ""
+
+#: libs/ardour/tempo.cc:106
+msgid "TempoSection XML node has no \"movable\" property"
+msgstr ""
+
+#: libs/ardour/tempo.cc:147
+msgid "MeterSection XML node has no \"start\" property"
+msgstr ""
+
+#: libs/ardour/tempo.cc:155
+msgid "MeterSection XML node has an illegal \"start\" value"
+msgstr ""
+
+#: libs/ardour/tempo.cc:162
+msgid "MeterSection XML node has no \"beats-per-bar\" property"
+msgstr ""
+
+#: libs/ardour/tempo.cc:167
+msgid "MeterSection XML node has an illegal \"beats-per-bar\" value"
+msgstr ""
+
+#: libs/ardour/tempo.cc:172
+msgid "MeterSection XML node has no \"note-type\" property"
+msgstr ""
+
+#: libs/ardour/tempo.cc:177
+msgid "MeterSection XML node has an illegal \"note-type\" value"
+msgstr ""
+
+#: libs/ardour/tempo.cc:182
+msgid "MeterSection XML node has no \"movable\" property"
+msgstr ""
+
+#: libs/ardour/tempo.cc:561
+msgid "no tempo sections defined in tempo map - cannot change tempo @ %1"
+msgstr ""
+
+#: libs/ardour/tempo.cc:585
+#: libs/ardour/tempo.cc:601
+msgid "programming error: no tempo section in tempo map!"
+msgstr ""
+
+#: libs/ardour/tempo.cc:644
+#: libs/ardour/tempo.cc:702
+msgid "programming error: unhandled MetricSection type"
+msgstr ""
+
+#: libs/ardour/tempo.cc:1461
+#: libs/ardour/tempo.cc:1473
+msgid "Tempo map: could not set new state, restoring old one."
+msgstr ""
+
+#: libs/ardour/utils.cc:300
+msgid "illegal or badly-formed string used for path (%1)"
+msgstr ""
+
+#: libs/ardour/utils.cc:305
+msgid "path (%1) is ambiguous"
+msgstr ""
+
+#: libs/ardour/utils.cc:367
+#: libs/ardour/utils.cc:391
+msgid "Splice Edit"
+msgstr "Edycja klockowa"
+
+#: libs/ardour/utils.cc:369
+#: libs/ardour/utils.cc:384
+msgid "Slide Edit"
+msgstr "Edycja ślizgowa"
+
+#: libs/ardour/utils.cc:371
+#: libs/ardour/utils.cc:387
+msgid "Lock Edit"
+msgstr "Edycja zablokowana"
+
+#: libs/ardour/utils.cc:374
+msgid "programming error: unknown edit mode string \"%1\""
+msgstr ""
+
+#: libs/ardour/utils.cc:398
+#: libs/ardour/utils.cc:427
+msgid "Internal"
+msgstr "Wew."
+
+#: libs/ardour/utils.cc:402
+#: libs/ardour/utils.cc:423
+msgid "MTC"
+msgstr "MTC"
+
+#: libs/ardour/utils.cc:406
+#: libs/ardour/utils.cc:420
+msgid "JACK"
+msgstr "JACK"
+
+#: libs/ardour/utils.cc:410
+msgid "programming error: unknown slave source string \"%1\""
+msgstr ""
+
+#: libs/ardour/vst_plugin.cc:167
+msgid "cannot create VST chunk directory: %1"
+msgstr ""
+
+#: libs/ardour/vst_plugin.cc:175
+msgid "cannot check VST chunk directory: %1"
+msgstr ""
+
+#: libs/ardour/vst_plugin.cc:181
+msgid "%1 exists but is not a directory"
+msgstr ""
+
+#: libs/ardour/vst_plugin.cc:219
+msgid "Bad node sent to VSTPlugin::set_state"
+msgstr ""
+
+#: libs/ardour/vst_plugin.cc:323
+#: libs/ardour/vst_plugin.cc:334
+msgid "no support for presets using chunks at this time"
+msgstr ""
+
+#: libs/ardour/vst_plugin.cc:486
+msgid "VST: cannot load module from \"%1\""
+msgstr ""
+
+#: libs/ardour/vst_plugin.cc:491
+msgid "You asked ardour to not use any VST plugins"
+msgstr ""
+
+#: libs/ardour/coreaudiosource.cc:80
+msgid "CoreAudioSource: cannot open file \"%1\" for %2"
+msgstr ""
+
+#: libs/ardour/rb_effect.cc:155
+#: libs/ardour/rb_effect.cc:193
+msgid "tempoize: error reading data from %1 at %2 (wanted %3, got %4)"
+msgstr ""
+
+#: libs/ardour/rb_effect.cc:218
+#: libs/ardour/rb_effect.cc:235
+msgid "error writing tempo-adjusted data to %1"
+msgstr ""
+
+#: libs/ardour/rb_effect.cc:242
+msgid "timefx code failure. please notify ardour-developers."
+msgstr ""
+
+#: libs/ardour/audio_unit.cc:104
+msgid "AudioUnit: Could not convert CAComponent to CAAudioUnit"
+msgstr ""
+
+#: libs/ardour/audio_unit.cc:147
+msgid "AUPlugin: cannot set processing block size"
+msgstr ""
+
+#: libs/ardour/audio_unit.cc:351
+msgid "AUPlugin: %1 cannot initialize plugin (err = %2)"
+msgstr ""
+
+#: libs/ardour/audio_unit.cc:431
+msgid "AUPlugin: could not set stream format for %1/%2 (err = %3)"
+msgstr ""
+
+#: libs/ardour/audio_unit.cc:476
+msgid "AUPlugin: %1 output_streams() called without any format set!"
+msgstr ""
+
+#: libs/ardour/audio_unit.cc:488
+msgid "AUPlugin: input_streams() called without any format set!"
+msgstr ""
+
+#: libs/ardour/audio_unit.cc:504
+msgid "AUPlugin: render callback called illegally!"
+msgstr ""
+
+#~ msgid "%s/out %u"
+#~ msgstr "%s/wyjście %u"
+#~ msgid "%s/in"
+#~ msgstr "%s/wejście"
+
diff --git a/libs/ardour/region.cc b/libs/ardour/region.cc
index 508f09a480..456fc15235 100644
--- a/libs/ardour/region.cc
+++ b/libs/ardour/region.cc
@@ -316,6 +316,9 @@ Region::~Region ()
for (SourceList::const_iterator i = _sources.begin(); i != _sources.end(); ++i) {
(*i)->remove_playlist (pl);
}
+ for (SourceList::const_iterator i = _master_sources.begin(); i != _master_sources.end(); ++i) {
+ (*i)->remove_playlist (pl);
+ }
}
notify_callbacks ();
@@ -341,16 +344,26 @@ Region::set_playlist (boost::weak_ptr<Playlist> wpl)
(*i)->remove_playlist (_playlist);
(*i)->add_playlist (pl);
}
+ for (SourceList::const_iterator i = _master_sources.begin(); i != _master_sources.end(); ++i) {
+ (*i)->remove_playlist (_playlist);
+ (*i)->add_playlist (pl);
+ }
} else {
for (SourceList::const_iterator i = _sources.begin(); i != _sources.end(); ++i) {
(*i)->add_playlist (pl);
}
+ for (SourceList::const_iterator i = _master_sources.begin(); i != _master_sources.end(); ++i) {
+ (*i)->add_playlist (pl);
+ }
}
} else {
if (old_playlist) {
for (SourceList::const_iterator i = _sources.begin(); i != _sources.end(); ++i) {
(*i)->remove_playlist (old_playlist);
}
+ for (SourceList::const_iterator i = _master_sources.begin(); i != _master_sources.end(); ++i) {
+ (*i)->remove_playlist (old_playlist);
+ }
}
}
}
@@ -532,11 +545,8 @@ Region::set_position_internal (nframes_t pos, bool allow_bbt_recompute)
_length = max_frames - _position;
}
- if (allow_bbt_recompute && _positional_lock_style == MusicTime) {
- boost::shared_ptr<Playlist> pl (playlist());
- if (pl) {
- pl->session().tempo_map().bbt_time (_position, _bbt_time);
- }
+ if (allow_bbt_recompute) {
+ recompute_position_from_lock_style ();
}
invalidate_transients ();
@@ -575,6 +585,17 @@ Region::set_position_on_top (nframes_t pos, void *src)
}
void
+Region::recompute_position_from_lock_style ()
+{
+ if (_positional_lock_style == MusicTime) {
+ boost::shared_ptr<Playlist> pl (playlist());
+ if (pl) {
+ pl->session().tempo_map().bbt_time (_position, _bbt_time);
+ }
+ }
+}
+
+void
Region::nudge_position (nframes64_t n, void *src)
{
if (_flags & Locked) {
diff --git a/libs/ardour/region_factory.cc b/libs/ardour/region_factory.cc
index bd4b0873a7..84d8167240 100644
--- a/libs/ardour/region_factory.cc
+++ b/libs/ardour/region_factory.cc
@@ -37,8 +37,8 @@ sigc::signal<void,boost::shared_ptr<Region> > RegionFactory::CheckNewRegion;
boost::shared_ptr<Region>
RegionFactory::create (boost::shared_ptr<Region> region, nframes_t start,
- nframes_t length, std::string name,
- layer_t layer, Region::Flag flags, bool announce)
+ nframes_t length, std::string name,
+ layer_t layer, Region::Flag flags, bool announce)
{
boost::shared_ptr<const AudioRegion> other_a;
boost::shared_ptr<const MidiRegion> other_m;
@@ -68,16 +68,16 @@ RegionFactory::create (boost::shared_ptr<Region> region, nframes_t start,
}
boost::shared_ptr<Region>
-RegionFactory::create (boost::shared_ptr<Region> region)
+RegionFactory::create (boost::shared_ptr<const Region> region)
{
- boost::shared_ptr<AudioRegion> ar;
- boost::shared_ptr<MidiRegion> mr;
+ boost::shared_ptr<const AudioRegion> ar;
+ boost::shared_ptr<const MidiRegion> mr;
- if ((ar = boost::dynamic_pointer_cast<AudioRegion>(region)) != 0) {
+ if ((ar = boost::dynamic_pointer_cast<const AudioRegion>(region)) != 0) {
boost::shared_ptr<Region> ret (new AudioRegion (ar));
/* pure copy constructor - no CheckNewRegion emitted */
return ret;
- } else if ((mr = boost::dynamic_pointer_cast<MidiRegion>(region)) != 0) {
+ } else if ((mr = boost::dynamic_pointer_cast<const MidiRegion>(region)) != 0) {
boost::shared_ptr<Region> ret (new MidiRegion (mr));
/* pure copy constructor - no CheckNewRegion emitted */
return ret;
@@ -91,8 +91,8 @@ RegionFactory::create (boost::shared_ptr<Region> region)
boost::shared_ptr<Region>
RegionFactory::create (boost::shared_ptr<AudioRegion> region, nframes_t start,
- nframes_t length, std::string name,
- layer_t layer, Region::Flag flags, bool announce)
+ nframes_t length, std::string name,
+ layer_t layer, Region::Flag flags, bool announce)
{
return create (boost::static_pointer_cast<Region> (region), start, length, name, layer, flags, announce);
}
diff --git a/libs/ardour/route.cc b/libs/ardour/route.cc
index 85e849de2e..e655efedb2 100644
--- a/libs/ardour/route.cc
+++ b/libs/ardour/route.cc
@@ -24,6 +24,7 @@
#include <sigc++/bind.h>
#include <pbd/xml++.h>
#include <pbd/enumwriter.h>
+#include <pbd/stacktrace.h>
#include <ardour/timestamps.h>
#include <ardour/audioengine.h>
diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc
index 0c5a4453e6..8357b7e901 100644
--- a/libs/ardour/session.cc
+++ b/libs/ardour/session.cc
@@ -107,6 +107,7 @@ Session::apply_gain_to_buffer_t Session::apply_gain_to_buffer = 0;
Session::mix_buffers_with_gain_t Session::mix_buffers_with_gain = 0;
Session::mix_buffers_no_gain_t Session::mix_buffers_no_gain = 0;
+sigc::signal<void,std::string> Session::Dialog;
sigc::signal<int> Session::AskAboutPendingState;
sigc::signal<int,nframes_t,nframes_t> Session::AskAboutSampleRateMismatch;
sigc::signal<void> Session::SendFeedback;
@@ -115,6 +116,9 @@ sigc::signal<void> Session::SMPTEOffsetChanged;
sigc::signal<void> Session::StartTimeChanged;
sigc::signal<void> Session::EndTimeChanged;
+sigc::signal<void> Session::AutoBindingOn;
+sigc::signal<void> Session::AutoBindingOff;
+
Session::Session (AudioEngine &eng,
const string& fullpath,
const string& snapshot_name,
@@ -957,7 +961,6 @@ Session::auto_loop_changed (Location* location)
}
last_loopend = location->end();
-
}
void
@@ -995,6 +998,10 @@ Session::set_auto_punch_location (Location* location)
auto_punch_changed_connection = location->changed.connect (mem_fun (this, &Session::auto_punch_changed));
location->set_auto_punch (true, this);
+
+
+ auto_punch_changed (location);
+
auto_punch_location_changed (location);
}
@@ -1034,6 +1041,13 @@ Session::set_auto_loop_location (Location* location)
auto_loop_changed_connection = location->changed.connect (mem_fun (this, &Session::auto_loop_changed));
location->set_auto_loop (true, this);
+
+ /* take care of our stuff first */
+
+ auto_loop_changed (location);
+
+ /* now tell everyone else */
+
auto_loop_location_changed (location);
}
@@ -2835,8 +2849,6 @@ Session::remove_source (boost::weak_ptr<Source> src)
return;
}
- cerr << "remove source for " << source->name() << endl;
-
{
Glib::Mutex::Lock lm (source_lock);
diff --git a/libs/ardour/utils.cc b/libs/ardour/utils.cc
index 99a6dbbc88..50b9ff320e 100644
--- a/libs/ardour/utils.cc
+++ b/libs/ardour/utils.cc
@@ -66,25 +66,6 @@ legalize_for_path (ustring str)
return legal;
}
-#if 0
-string
-legalize_for_path (string str)
-{
- string::size_type pos;
- string legal_chars = "abcdefghijklmnopqrtsuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_+=: ";
- string legal;
-
- legal = str;
- pos = 0;
-
- while ((pos = legal.find_first_not_of (legal_chars, pos)) != string::npos) {
- legal.replace (pos, 1, "_");
- pos += 1;
- }
-
- return legal;
-}
-#endif
string bump_name_once(std::string name)
{
diff --git a/libs/gtkmm2ext/gtkmm2ext/barcontroller.h b/libs/gtkmm2ext/gtkmm2ext/barcontroller.h
index ba2e1f3f7b..fe67e9ecec 100644
--- a/libs/gtkmm2ext/gtkmm2ext/barcontroller.h
+++ b/libs/gtkmm2ext/gtkmm2ext/barcontroller.h
@@ -63,6 +63,7 @@ class BarController : public Gtk::Frame
/* export this to allow direct connection to button events */
Gtk::Widget& event_widget() { return darea; }
+ PBD::Controllable* get_controllable() { return binding_proxy.get_controllable(); }
protected:
Gtk::Adjustment& adjustment;
diff --git a/libs/gtkmm2ext/gtkmm2ext/bindable_button.h b/libs/gtkmm2ext/gtkmm2ext/bindable_button.h
index 2ddd3628fc..1cde32c5ba 100644
--- a/libs/gtkmm2ext/gtkmm2ext/bindable_button.h
+++ b/libs/gtkmm2ext/gtkmm2ext/bindable_button.h
@@ -47,7 +47,8 @@ class BindableToggleButton : public Gtkmm2ext::StatefulToggleButton
return true;
}
}
-
+
+ PBD::Controllable* get_controllable() { return binding_proxy.get_controllable(); }
private:
BindingProxy binding_proxy;
};
@@ -71,6 +72,8 @@ class BindableButton : public Gtkmm2ext::StatefulButton
}
}
+ PBD::Controllable* get_controllable() { return binding_proxy.get_controllable(); }
+
private:
BindingProxy binding_proxy;
};
diff --git a/libs/gtkmm2ext/gtkmm2ext/binding_proxy.h b/libs/gtkmm2ext/gtkmm2ext/binding_proxy.h
index d8f37c7649..dd9b94319d 100644
--- a/libs/gtkmm2ext/gtkmm2ext/binding_proxy.h
+++ b/libs/gtkmm2ext/gtkmm2ext/binding_proxy.h
@@ -40,6 +40,7 @@ class BindingProxy : public sigc::trackable
bool button_press_handler (GdkEventButton *);
+ PBD::Controllable* get_controllable() { return &controllable; }
protected:
Gtkmm2ext::PopUp* prompter;
diff --git a/libs/gtkmm2ext/po/pl_PL.po b/libs/gtkmm2ext/po/pl_PL.po
new file mode 100644
index 0000000000..df2414d7ba
--- /dev/null
+++ b/libs/gtkmm2ext/po/pl_PL.po
@@ -0,0 +1,53 @@
+# translation of libgtkmm2ext.po to Polish
+# Copyright (C) YEAR "Paul Davis"
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Piotr Zaryk <pzaryk@gmail.com>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: libgtkmm2ext\n"
+"Report-Msgid-Bugs-To: Piotr Zaryk <pzaryk@gmail.com>\n"
+"POT-Creation-Date: 2008-04-03 16:17+0200\n"
+"PO-Revision-Date: 2008-04-10 10:54+0100\n"
+"Last-Translator: Piotr Zaryk <pzaryk@gmail.com>\n"
+"Language-Team: Polish <pl@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: libs/gtkmm2ext/binding_proxy.cc:69
+msgid "operate controller now"
+msgstr "Teraz operuj kontrolerem"
+
+#: libs/gtkmm2ext/gtk_ui.cc:95
+msgid "Log"
+msgstr "Log"
+
+#: libs/gtkmm2ext/gtk_ui.cc:536
+msgid "Press To Exit"
+msgstr "Wciśnij by zakończyć"
+
+#: libs/gtkmm2ext/gtk_ui.cc:570
+msgid "Error"
+msgstr "BÅ‚Ä…d"
+
+#: libs/gtkmm2ext/pathlist.cc:29
+msgid "+"
+msgstr "+"
+
+#: libs/gtkmm2ext/pathlist.cc:30
+msgid "-"
+msgstr "-"
+
+#: libs/gtkmm2ext/pathlist.cc:35
+msgid "Paths"
+msgstr "Położenia"
+
+#: libs/gtkmm2ext/pathlist.cc:87
+msgid "Path Chooser"
+msgstr "Wybór położenia"
+
+#: libs/gtkmm2ext/textviewer.cc:34
+msgid "Close"
+msgstr "Zamknij"
+
diff --git a/libs/libgnomecanvasmm/libgnomecanvasmm/line.cc b/libs/libgnomecanvasmm/libgnomecanvasmm/line.cc
index 5b12c69ba6..9c3bf6f4a5 100644
--- a/libs/libgnomecanvasmm/libgnomecanvasmm/line.cc
+++ b/libs/libgnomecanvasmm/libgnomecanvasmm/line.cc
@@ -40,7 +40,9 @@ Points::Points(size_type nbpoints)
Points::Points(GnomeCanvasPoints *castitem)
: points_(castitem),owned_(false)
{
- reserve(points_->num_points);
+ while (size() < points_->num_points) {
+ push_back (Art::Point());
+ }
//GnomeCanvasPoints has an array of doubles, used 2 at a time:
int i = 0;
diff --git a/libs/pbd/controllable.cc b/libs/pbd/controllable.cc
index 039eb43e3a..c15b7a8cf2 100644
--- a/libs/pbd/controllable.cc
+++ b/libs/pbd/controllable.cc
@@ -28,6 +28,8 @@ using namespace PBD;
sigc::signal<void,Controllable*> Controllable::Destroyed;
sigc::signal<bool,Controllable*> Controllable::StartLearning;
sigc::signal<void,Controllable*> Controllable::StopLearning;
+sigc::signal<void,Controllable*,int,int> Controllable::CreateBinding;
+sigc::signal<void,Controllable*> Controllable::DeleteBinding;
Glib::Mutex* Controllable::registry_lock = 0;
Controllable::Controllables Controllable::registry;
diff --git a/libs/pbd/pbd/controllable.h b/libs/pbd/pbd/controllable.h
index 6dc421cfd9..dbb23fdff4 100644
--- a/libs/pbd/pbd/controllable.h
+++ b/libs/pbd/pbd/controllable.h
@@ -43,6 +43,8 @@ class Controllable : public PBD::StatefulDestructible {
virtual bool can_send_feedback() const { return true; }
sigc::signal<void> LearningFinished;
+ static sigc::signal<void,PBD::Controllable*,int,int> CreateBinding;
+ static sigc::signal<void,PBD::Controllable*> DeleteBinding;
static sigc::signal<bool,PBD::Controllable*> StartLearning;
static sigc::signal<void,PBD::Controllable*> StopLearning;
diff --git a/libs/surfaces/generic_midi/generic_midi_control_protocol.cc b/libs/surfaces/generic_midi/generic_midi_control_protocol.cc
index 93cbf088c7..a76eedcbcd 100644
--- a/libs/surfaces/generic_midi/generic_midi_control_protocol.cc
+++ b/libs/surfaces/generic_midi/generic_midi_control_protocol.cc
@@ -59,9 +59,17 @@ GenericMidiControlProtocol::GenericMidiControlProtocol (Session& s)
_feedback_interval = 10000; // microseconds
last_feedback_time = 0;
+ auto_binding = FALSE;
+
Controllable::StartLearning.connect (mem_fun (*this, &GenericMidiControlProtocol::start_learning));
Controllable::StopLearning.connect (mem_fun (*this, &GenericMidiControlProtocol::stop_learning));
Session::SendFeedback.connect (mem_fun (*this, &GenericMidiControlProtocol::send_feedback));
+
+ Controllable::CreateBinding.connect (mem_fun (*this, &GenericMidiControlProtocol::create_binding));
+ Controllable::DeleteBinding.connect (mem_fun (*this, &GenericMidiControlProtocol::delete_binding));
+
+ Session::AutoBindingOn.connect (mem_fun (*this, &GenericMidiControlProtocol::auto_binding_on));
+ Session::AutoBindingOff.connect (mem_fun (*this, &GenericMidiControlProtocol::auto_binding_off));
}
GenericMidiControlProtocol::~GenericMidiControlProtocol ()
@@ -229,6 +237,71 @@ GenericMidiControlProtocol::stop_learning (Controllable* c)
}
}
+void
+GenericMidiControlProtocol::delete_binding ( PBD::Controllable* control )
+{
+ if( control != 0 ) {
+ Glib::Mutex::Lock lm2 (controllables_lock);
+
+ for( MIDIControllables::iterator iter = controllables.begin(); iter != controllables.end(); ++iter) {
+ MIDIControllable* existingBinding = (*iter);
+
+ if( control == &(existingBinding->get_controllable()) ) {
+ delete existingBinding;
+ controllables.erase (iter);
+ }
+
+ } // end for midi controllables
+ } // end null check
+}
+void
+GenericMidiControlProtocol::create_binding (PBD::Controllable* control, int pos, int control_number)
+{
+ if( control != NULL ) {
+ Glib::Mutex::Lock lm2 (controllables_lock);
+
+ MIDI::channel_t channel = (pos & 0xf);
+ MIDI::byte value = control_number;
+
+ // Create a MIDIControllable::
+ MIDIControllable* mc = new MIDIControllable (*_port, *control);
+
+ // Remove any old binding for this midi channel/type/value pair
+ // Note: can't use delete_binding() here because we don't know the specific controllable we want to remove, only the midi information
+ for( MIDIControllables::iterator iter = controllables.begin(); iter != controllables.end(); ++iter) {
+ MIDIControllable* existingBinding = (*iter);
+
+ if( (existingBinding->get_control_channel() & 0xf ) == channel &&
+ existingBinding->get_control_additional() == value &&
+ (existingBinding->get_control_type() & 0xf0 ) == MIDI::controller ) {
+
+ delete existingBinding;
+ controllables.erase (iter);
+ }
+
+ } // end for midi controllables
+
+
+ // Update the MIDI Controllable based on the the pos param
+ // Here is where a table lookup for user mappings could go; for now we'll just wing it...
+ mc->bind_midi( channel, MIDI::controller, value );
+
+ controllables.insert (mc);
+ } // end null test
+}
+
+void
+GenericMidiControlProtocol::auto_binding_on()
+{
+ auto_binding = TRUE;
+}
+
+void
+GenericMidiControlProtocol::auto_binding_off()
+{
+ auto_binding = FALSE;
+}
+
XMLNode&
GenericMidiControlProtocol::get_state ()
{
@@ -273,46 +346,47 @@ GenericMidiControlProtocol::set_state (const XMLNode& node)
_feedback_interval = 10000;
}
- Controllable* c;
-
- {
- Glib::Mutex::Lock lm (pending_lock);
- pending_controllables.clear ();
- }
-
- Glib::Mutex::Lock lm2 (controllables_lock);
-
- controllables.clear ();
-
- nlist = node.children(); // "controls"
-
- if (nlist.empty()) {
- return 0;
- }
-
- nlist = nlist.front()->children ();
-
- for (niter = nlist.begin(); niter != nlist.end(); ++niter) {
-
- if ((prop = (*niter)->property ("id")) != 0) {
-
- ID id = prop->value ();
-
- c = Controllable::by_id (id);
+ // Are we using the autobinding feature? If so skip this part
+ if ( !auto_binding ) {
+
+ Controllable* c;
+
+ {
+ Glib::Mutex::Lock lm (pending_lock);
+ pending_controllables.clear ();
+ }
+
+ Glib::Mutex::Lock lm2 (controllables_lock);
+ controllables.clear ();
+ nlist = node.children(); // "controls"
+
+ if (nlist.empty()) {
+ return 0;
+ }
+
+ nlist = nlist.front()->children ();
+
+ for (niter = nlist.begin(); niter != nlist.end(); ++niter) {
- if (c) {
- MIDIControllable* mc = new MIDIControllable (*_port, *c);
- if (mc->set_state (**niter) == 0) {
- controllables.insert (mc);
- }
+ if ((prop = (*niter)->property ("id")) != 0) {
+
+ ID id = prop->value ();
+ c = session->controllable_by_id (id);
- } else {
- warning << string_compose (_("Generic MIDI control: controllable %1 not found (ignored)"), id)
- << endmsg;
+ if (c) {
+ MIDIControllable* mc = new MIDIControllable (*_port, *c);
+ if (mc->set_state (**niter) == 0) {
+ controllables.insert (mc);
+ }
+
+ } else {
+ warning << string_compose (_("Generic MIDI control: controllable %1 not found in session (ignored)"),
+ id)
+ << endmsg;
+ }
}
}
- }
-
+ } // end autobinding check
return 0;
}
diff --git a/libs/surfaces/generic_midi/generic_midi_control_protocol.h b/libs/surfaces/generic_midi/generic_midi_control_protocol.h
index 95aeb77cdb..dfff8810d1 100644
--- a/libs/surfaces/generic_midi/generic_midi_control_protocol.h
+++ b/libs/surfaces/generic_midi/generic_midi_control_protocol.h
@@ -44,6 +44,7 @@ class GenericMidiControlProtocol : public ARDOUR::ControlProtocol {
ARDOUR::microseconds_t last_feedback_time;
bool do_feedback;
+ bool auto_binding;
void _send_feedback ();
void send_feedback ();
@@ -59,6 +60,13 @@ class GenericMidiControlProtocol : public ARDOUR::ControlProtocol {
void stop_learning (PBD::Controllable*);
void learning_stopped (MIDIControllable*);
+
+ void create_binding (PBD::Controllable*, int, int);
+ void delete_binding (PBD::Controllable*);
+
+ void auto_binding_on();
+ void auto_binding_off();
+
};
#endif /* ardour_generic_midi_control_protocol_h */
diff --git a/libs/surfaces/generic_midi/midicontrollable.h b/libs/surfaces/generic_midi/midicontrollable.h
index c1ee8c1bb1..976c2d00fb 100644
--- a/libs/surfaces/generic_midi/midicontrollable.h
+++ b/libs/surfaces/generic_midi/midicontrollable.h
@@ -63,6 +63,10 @@ class MIDIControllable : public PBD::Stateful
XMLNode& get_state (void);
int set_state (const XMLNode&);
+ void bind_midi (MIDI::channel_t, MIDI::eventType, MIDI::byte);
+ MIDI::channel_t get_control_channel () { return control_channel; }
+ MIDI::eventType get_control_type () { return control_type; }
+ MIDI::byte get_control_additional () { return control_additional; }
private:
PBD::Controllable& controllable;
MIDI::Port& _port;
@@ -86,8 +90,6 @@ class MIDIControllable : public PBD::Stateful
void midi_sense_controller (MIDI::Parser &, MIDI::EventTwoBytes *);
void midi_sense_program_change (MIDI::Parser &, MIDI::byte);
void midi_sense_pitchbend (MIDI::Parser &, MIDI::pitchbend_t);
-
- void bind_midi (MIDI::channel_t, MIDI::eventType, MIDI::byte);
};
#endif // __gm_midicontrollable_h__
diff --git a/manual/xml/using_existing_audio.xml b/manual/xml/using_existing_audio.xml
index 1aba2db49d..e3ab54d40a 100644
--- a/manual/xml/using_existing_audio.xml
+++ b/manual/xml/using_existing_audio.xml
@@ -1,46 +1,43 @@
-<?xml version="1.0" standalone="no"?>
-
-<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
-
-]>
-
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
+"http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
<chapter id="ch-using-existing-audio">
<title>Using Existing Audio</title>
- <para>
- There are two primary ways to bring data into Ardour: recording it
- within a session from a live sound source or importing pre-existing
- audio files. This section covers the various ways to import audio into a
- session.
- </para>
+
+ <para>There are two primary ways to bring data into Ardour: recording it
+ within a session from a live sound source or importing pre-existing audio
+ files. This section covers the various ways to import audio into a
+ session.</para>
<section id="importing-and-embedding">
<title>Importing and Embedding</title>
- <para>
- Importing and embedding are two different methods of using existing
- audio files on your computer (or network file system) within a
- session. They differ in one key respect:
- </para>
+
+ <para>Importing and embedding are two different methods of using existing
+ audio files on your computer (or network file system) within a session.
+ They differ in one key respect:</para>
<variablelist>
- <title></title>
<varlistentry>
<term>Importing</term>
+
<listitem>
- <para>
- An existing audio file is copied to the session's sounds folder,
- and is converted into the session's native format (WAVE or
- Broadcast WAVE depending on your choice) and sample rate.
- </para>
+ <para>An existing audio file is copied to the session's sounds
+ folder, and is converted into the session's native format (WAVE or
+ Broadcast WAVE depending on your choice) and sample rate. At this
+ time, no control over the conversion process is offered. If sample
+ rate conversion is required, it will be carried out at the highest
+ quality that Ardour can provide. This means that it can be rather
+ slow (many minutes to import an audio file lasting a few
+ minutes).</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Embedding</term>
+
<listitem>
- <para>
- An existing audio file is used as a the source for a region, but
- is not copied or modified in any way.
- </para>
+ <para>An existing audio file is used as a the source for a region,
+ but is not copied or modified in any way.</para>
</listitem>
</varlistentry>
</variablelist>
@@ -48,395 +45,267 @@
<section id="supported-external-audio-file-formats">
<title>Supported External Audio File Formats</title>
- <para>
- The list of audio file formats that Ardour can import/embed is quite
- long. It is based on the functionality offered by libsndfile, an
- excellent and widely used software library by Australian programmer
- Erik de Castro Lopo. As libsndfile's capabilities expand, so will
- Ardour's abilities to import (and export) new formats. Ogg/Vorbis (an
- excellent, unpatented and license free audio compression format
- similar to MP3) is planned for the near future. Currently, supported
- formats include:
- </para>
+
+ <para>The list of audio file formats that Ardour can import/embed is quite
+ long. It is based on the functionality offered by libsndfile, an excellent
+ and widely used software library by Australian programmer Erik de Castro
+ Lopo. As libsndfile's capabilities expand, so will Ardour's abilities to
+ import (and export) new formats. Ogg/Vorbis (an excellent, unpatented and
+ license free audio compression format similar to MP3) is planned for the
+ near future. Currently, supported formats include:</para>
<itemizedlist>
<listitem>
- <para>
- Microsoft WAV
- </para>
+ <para>Microsoft WAV</para>
</listitem>
<listitem>
- <para>
- SGI/Apple AIFF/AIFC
- </para>
+ <para>SGI/Apple AIFF/AIFC</para>
</listitem>
<listitem>
- <para>
- Sun AU/Snd
- </para>
+ <para>Sun AU/Snd</para>
</listitem>
<listitem>
- <para>
- Raw (headerless)
- </para>
+ <para>Raw (headerless)</para>
</listitem>
<listitem>
- <para>
- Paris Audio File (PAF)
- </para>
+ <para>Paris Audio File (PAF)</para>
</listitem>
<listitem>
- <para>
- Commodore IFF/SVX
- </para>
+ <para>Commodore IFF/SVX</para>
</listitem>
<listitem>
- <para>
- Sphere/NIST WAV
- </para>
+ <para>Sphere/NIST WAV</para>
</listitem>
<listitem>
- <para>
- IRCAM SF
- </para>
+ <para>IRCAM SF</para>
</listitem>
<listitem>
- <para>
- Creative VOC
- </para>
+ <para>Creative VOC</para>
</listitem>
<listitem>
- <para>
- SoundForge W64
- </para>
+ <para>SoundForge W64</para>
</listitem>
<listitem>
- <para>
- GNU Octave MAT4.4
- </para>
+ <para>GNU Octave MAT4.4</para>
</listitem>
<listitem>
- <para>
- Portable Voice Format
- </para>
+ <para>Portable Voice Format</para>
</listitem>
<listitem>
- <para>
- Fasttracker 2 XI
- </para>
+ <para>Fasttracker 2 XI</para>
</listitem>
<listitem>
- <para>
- HMM Tool Kit HTK
- </para>
+ <para>HMM Tool Kit HTK</para>
</listitem>
</itemizedlist>
- <para>
- Sample encodings supported include:
- </para>
+ <para>Sample encodings supported include:</para>
<itemizedlist>
<listitem>
- <para>
- Unsigned and signed 8, 16, 24 and 32 bit PCM
- </para>
+ <para>Unsigned and signed 8, 16, 24 and 32 bit PCM</para>
</listitem>
<listitem>
- <para>
- IEEE 32 and 64 floating point
- </para>
+ <para>IEEE 32 and 64 floating point</para>
</listitem>
<listitem>
- <para>
- U-LAW
- </para>
+ <para>U-LAW</para>
</listitem>
<listitem>
- <para>
- A-LAW
- </para>
+ <para>A-LAW</para>
</listitem>
<listitem>
- <para>
- IMA ADPCM
- </para>
+ <para>IMA ADPCM</para>
</listitem>
<listitem>
- <para>
- MS ADPCM
- </para>
+ <para>MS ADPCM</para>
</listitem>
<listitem>
- <para>
- GSM 6.10
- </para>
+ <para>GSM 6.10</para>
</listitem>
<listitem>
- <para>
- G721/723 ADPCM
- </para>
+ <para>G721/723 ADPCM</para>
</listitem>
<listitem>
- <para>
- 12/16/24 bit DWVW
- </para>
+ <para>12/16/24 bit DWVW</para>
</listitem>
<listitem>
- <para>
- OK Dialogic ADPCM
- </para>
+ <para>OK Dialogic ADPCM</para>
</listitem>
<listitem>
- <para>
- 8/16 DPCM
- </para>
+ <para>8/16 DPCM</para>
</listitem>
</itemizedlist>
</section>
<section id="using-audio-files">
- <title> Using audio files as tracks or regions? </title>
- <para>
- When you want to use existing audio files in an Ardour session, the
- first choice you need to make is whether you want to bring the files
- in as tracks or as new regions. Consider the two following scenarios:
- </para>
+ <title>Using audio files as tracks or regions?</title>
+
+ <para>When you want to use existing audio files in an Ardour session, the
+ first choice you need to make is whether you want to bring the files in as
+ tracks or as new regions. Consider the two following scenarios:</para>
<itemizedlist>
<listitem>
- <para>
- you have an 8 track recording of existing material, with 1 audio
- file per track
- </para>
+ <para>you have an 8 track recording of existing material, with 1 audio
+ file per track</para>
</listitem>
<listitem>
- <para>
- you have a sample library containing 500 small audio files
- </para>
+ <para>you have a sample library containing 500 small audio
+ files</para>
</listitem>
</itemizedlist>
- <para>
- In the first case, your goal is probably to have 8 tracks (at least),
- with each track containing a single audio file. In the second case,
- its a lot more likely that you simply want to be able to use any of
- the samples easily, but do not want any tracks created as a direct
- result of the import/embed. It is very important that you understand
- this distinction: many new users think there should be a "simple" way
- to import existing audio without understanding that the goal of
- importing/embedding is not always the same.
- </para>
-
- <para>
- Ardour provides two different options when importing. You can
- import/embed audio files as new tracks, or you can import/embed them
- into the region list, where they will be available as regions to put
- into new or existing tracks. You can also insert import/embed audio
- files directly into an existing track.
- </para>
- </section>
-
- <section id="importing-an-audio-file-as-a-new-track">
- <title> How to import an audio file as a new track </title>
- <para>
- Click on the <guimenuitem>Edit</guimenuitem> item in the editor's menu
- bar. From the popup menu that appears, choose <menuchoice>
- <guimenu>Import</guimenu> <guisubmenu>...as new tracks</guisubmenu>
- </menuchoice>. The Audio Library/File Chooser window will appear.
- After you have made your selection of files to import, click the
- button at the bottom of that window (it will say something like
- "Import selected regions as new tracks").
- </para>
- </section>
-
- <section id="embedding-an-audio-file-as-a-new-track">
- <title> How to embed an audio file as a new track </title>
- <section id="embedding-an-audio-file-drag-and-drop">
- <title> Drag-n-Drop </title>
- <para>
- If you use a file manager such as Nautilus or Konqueror ((basically,
- any tool that uses standard "list-of-URL's" encoding for
- drag-n-drop)), the simplest method to import files as tracks is to
- drag-n-drop. Select the files you want to embed in the file manager,
- drag the selection into Ardour and drop it over an area of the
- editor's track/arrange display where there are no tracks. The files
- will be embedded as 1 new track per file.
- </para>
- </section>
-
- <section id="embedding-audio-file-using-edit-menu">
- <title> Edit menu </title>
- <para>
- Click on the <guimenuitem>Edit</guimenuitem> item in the editor's
- menu bar. From the popup menu that appears, choose <menuchoice>
- <guimenu>Embed</guimenu> <guisubmenu>...as new tracks</guisubmenu>
- </menuchoice>. The Audio Library/File Chooser window will appear.
- After you have made your selection of files to embed, click the
- button at the bottom of that window (it will say something like
- "Embed selected regions as new tracks"). 1 new track will be created
- for each file.
- </para>
- </section>
- </section>
-
- <section id="importing-audio-as-a-new-region">
- <title> Importing as a new region </title>
- <para></para>
- </section>
-
- <section id="embedding-audio-as-a-new-region">
- <title> Embedding as a new region </title>
- <para></para>
-
- <section id="embedding-audio-drag-and-drop">
- <title> Drag-n-Drop </title>
- <para></para>
- </section>
-
- <section id="embedding-audio-region-list-menu">
- <title> Region List Menu </title>
- <para></para>
- </section>
+ <para>In the first case, your goal is probably to have 8 tracks (at
+ least), with each track containing a single audio file. In the second
+ case, its a lot more likely that you simply want to be able to use any of
+ the samples easily, but do not want any tracks created as a direct result
+ of the import/embed. It is very important that you understand this
+ distinction: many new users think there should be a "simple" way to import
+ existing audio without understanding that the goal of importing/embedding
+ is not always the same.</para>
+
+ <para>Ardour provides two different options when importing. You can
+ import/embed audio files as new tracks, or you can import/embed them into
+ the region list, where they will be available as regions to put into new
+ or existing tracks. You can also insert import/embed audio files directly
+ into an existing track.</para>
</section>
<section id="how-to-import-embed">
<title>How to import/embed</title>
- <para>
- Begin by clicking on the titlebar of the region list in the editor
- window. Select <guimenuitem>Import</guimenuitem> from the menu that
- appears, and the Sound File Database will be displayed. See sfdb for
- more details on using this dialog.
- </para>
-
- <para>
- Once you have found and selected the files you want to import, click
- the "Import Selected" button on the SFDB dialog. Each selected audio
- file will be copied into the session's sounds folder, converted into
- the session's native format and sample rate. One or more new regions
- will be placed in the "External" section of the region list, either
- one per channel of each file or, if "create multichannel regions" was
- selected in the SFBD dialog, one per file.
- </para>
-
- <para>
- If you use Nautilus as your file manager, you can easily import files
- into your project by dragging them onto the desired track, then
- releasing the mouse button. The file will then be
- <link linkend="gt-embed">embedded</link> into your session.
- </para>
-
- <para>
- At this time, no control over the conversion process is offered. If
- sample rate conversion is required, it will be carried out at the
- highest quality that Ardour can provide. This means that it can be
- rather slow (many minutes to import an audio file lasting a few
- minutes).
- </para>
+
+ <para>There are three pathways for importing/embedding an audio file into
+ a session. One is initiated from the File menu, one is initiated from the
+ track context menu, and one is initiated from the region list. These
+ methods are all equivalent: they open the file import dialog. Once the
+ dialog is open, you can choose to add new audio as new tracks, as regions
+ in the region list, or as audio in the selected track. You can change this
+ behavior once the dialog is opened.</para>
+
+ <para><caution>
+ <para>If you want to import a file directly into an existing track,
+ you must have the track selected in the editor before beginning the
+ import. </para>
+ </caution>If you use Nautilus as your file manager, you can easily
+ import files into your project by dragging them onto the desired track,
+ then releasing the mouse button. The file will then be <link
+ linkend="gt-embed">embedded</link> into your session.</para>
</section>
<section id="how-to-embed-a-file">
- <title> How to embed a file </title>
- <para>
- There are two pathways for embedding an audio file into a session. One
- is initiated from the region list, and simply creates one or more new
- regions. The other is initiated from a specific track, and not only
- adds regions to the region list, but also inserts them into the
- track's playlist.
- </para>
+ <title>Working with Tags</title>
+
+ <para>A "tag" is bit of information, or <emphasis>metadata</emphasis>,
+ that is associated with a data file. Specifically, tags are keywords or
+ terms that you feel have some relevance to a particular soundfile. Ardour
+ can store these tags in a seachable database so that you can quickly
+ search for sounds based on the tags that you have assigned to them. For
+ example you can assign the term "120bpm" to a sound, and then when you
+ search for this tag, the file will appear in the search list. Tags are
+ independent of the filename or anything else about the file. Tags, and the
+ file paths that they are associated with, are stored in a file called
+ "sfdb" in your Ardour user folder. </para>
<section id="embedding-via-the-region-list">
- <title>Embedding via the region list</title>
+ <title>Adding tags to a file</title>
+
<orderedlist>
<listitem>
- <para>
- click with 1 on the region list title bar.
- </para>
- </listitem>
- <listitem>
- <para>
- Select Import audio file from the menu that appears.
- </para>
- </listitem>
- <listitem>
- <para>
- The SFDB dialog appears.
- </para>
- </listitem>
- <listitem>
- <para>
- Select the files you want to import
- </para>
+ <para>Select a file in the import dialog.</para>
</listitem>
+
<listitem>
- <para>
- then click on the <guibutton>Embed Selected</guibutton> button.
- </para>
+ <para>Enter the tags in the box to the right labeled "Tags".</para>
</listitem>
</orderedlist>
- <para>
- New regions are added to the External section of the region list.
- </para>
+
+ <para>Tags are stored when the input box loses focus, there is no reason
+ to explicitly "save" them.</para>
</section>
<section id="embedding-from-a-track">
- <title>Embedding from a track</title>
+ <title>Searching for files using tags</title>
+
<orderedlist>
<listitem>
- <para>
- in the track you want to add the audiofile to.The track context
- menu will appear.
- </para>
- </listitem>
- <listitem>
- <para>
- Select EditInsert external sndfile from this menu. The SFDB
- dialog appears.
- </para>
- </listitem>
- <listitem>
- <para>
- Select the files you want to import
- </para>
+ <para>Select the "Search Tags" tab on the import dialog.</para>
</listitem>
+
<listitem>
- <para>
- then click on the <guibutton>Embed Selected</guibutton> button.
- </para>
+ <para>Enter the tag(s) to search for and press "Search".</para>
</listitem>
</orderedlist>
- <para>
- New regions are added to the "External" section of the region list,
- and one is inserted into the track from which the embed was started.
- </para>
+
+ <para>Files which have been "tagged" with the input terms will appear in
+ the results window. You can audition these files and apply tags to them
+ from this window.</para>
</section>
</section>
-<!--
+
+ <section id="how-to-embed-a-file">
+ <title>Searching Freesound for soundfiles (optional)</title>
+
+ <para>Freesound (http://freesound.iua.upf.edu/) is an online database with
+ thousands of soundfiles which can be freely used in many projects (visit
+ Freesound for the exact licensing terms). Ardour has an option to download
+ files directly from freesound directly from the import dialog. Freesound
+ files are tagged with metadata which you can use to search for relevant
+ sounds.</para>
+
+ <para>To enable the Freesound search engine inside Ardour, you must build
+ Ardour with the option FREESOUND=yes, and you must have the "curl" library
+ installed. This is currently optional but may later become a standard
+ feature of Ardour.</para>
+
+ <para>To download files from Freesound, you must first register for a
+ username and password on the freesound website. Enter this information
+ into the text entry boxes, enter your tags to search for, and then click
+ "Start Downloading". Ardour will begin downloading files, and the "Start
+ Downloading" button will change to say "Cancel". Clicking the "Cancel"
+ button will wait until the currently downloading file is finished, then
+ the button will switch back to "Start Downloading". The button will also
+ say "Start Downloading" once Ardour has downloaded all of the files that
+ match the given tag. In the future there may be better indication of the
+ file progress and better filtering on the filetypes that are
+ downloaded.</para>
+
+ <para>If you later search for the same terms, you will see that the files
+ appear in the list more quickly, because any files in the search set that
+ are already downloaded won't have to be downloaded again.</para>
+
+ <para>Sounds that are downloaded from Freesound will automatically be
+ given tags in Ardour that match their tags in the Freesound database. This
+ means that once they are downloaded, Ardour can search for the local files
+ very quickly using the "Search Tags" tab.</para>
+ </section>
+
+ <!--
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="Some_Subsection.xml" />
-->
-</chapter>
+</chapter> \ No newline at end of file
diff --git a/svn_revision.h b/svn_revision.h
index b7d9af4dc7..35346c9267 100644
--- a/svn_revision.h
+++ b/svn_revision.h
@@ -1,4 +1,4 @@
#ifndef __ardour_svn_revision_h__
#define __ardour_svn_revision_h__
-static const char* ardour_svn_revision = "3142";
+static const char* ardour_svn_revision = "3201";
#endif